Changeset 4141


Ignore:
Timestamp:
2012-04-04 17:41:57 (2 years ago)
Author:
drobilla
Message:

Fix wonky controls when plugin GUI is open (fix #822).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ingen/src/gui/Port.cpp

    r4113 r4141  
    148148    const Glib::Variant<double>& fvalue = Glib::VariantBase::cast_dynamic 
    149149        < Glib::Variant<double> >(value); 
    150     const float fval = fvalue.get(); 
    151     Ingen::Shared::World* const world = _app.world(); 
    152     _app.engine()->set_property(model()->path(), 
    153                                 world->uris()->ingen_value, 
    154                                 _app.forge().make(fval)); 
     150 
     151    const Raul::Atom atom = _app.forge().make((float)fvalue.get()); 
     152    if (atom != model()->value()) { 
     153        Ingen::Shared::World* const world = _app.world(); 
     154        _app.engine()->set_property(model()->path(), 
     155                                    world->uris()->ingen_value, 
     156                                    atom); 
     157    } 
    155158 
    156159    PatchBox* box = get_patch_box(); 
    157160    if (box) { 
    158         box->show_port_status(model().get(), _app.forge().make(fval)); 
     161        box->show_port_status(model().get(), atom); 
    159162    } 
    160163} 
Note: See TracChangeset for help on using the changeset viewer.