As requested, I went through all changes in https://github.com/tim-janik/beast/pull/78 and used APPLY_IDL_PROPERTY() where possible. In some cases it wasn't possible, so there are a few handwritten setters. I also avoid any fancy new features in the code or ui, this is an 1:1 port.
This also fixes the C++ property loader code in bsestorage.cc so that make check passes. >From my perspective the only thing that could be controversial is that you >used g_object_set(...property...value...) to avoid undo recording for some >setter calls. I added a function to block undo manually so ``` g_object_set (self, /* no undo */ "sync", self->saved_sync, NULL); ``` now looks somewhat like this ``` bus->block_property_undo(); bus->sync (self->saved_sync); bus->unblock_property_undo(); ``` This should work in the same way for setters that use APPLY_IDL_PROPERTY() and for hand-written setters that use push_property_undo(). If you have a better suggestion feel free to either change this after merging or letting me know how it should be done. You can view, comment on, or merge this pull request online at: https://github.com/tim-janik/beast/pull/105 -- Commit Summary -- * BSE: Bus::mute: port property to C++ * BEAST-GTK: bstbuseditor: support both, aida and old style properties * BSE: Bus::solo: port property to C++ * BSE: bseitem: provide API to temporarily disable property undo recording * BSE: Bus::sync: port property to C++ * BSE: Bus::left_volume: port property to C++ * BEAST-GTK: bstbuseditor: use left_volume C++ property * BSE: Bus::right_volume: port property to C++ * BEAST-GTK: bstbuseditor: use right_volume C++ property * BSE: Bus::master_output: port property to C++ * SFI: provide scanner double/int64 parsing code * BSE: fix C++ property loading (float64) * BSE: bsebus: minor cosmetic changes * BSE: Song: port remaining Bus::master-output set calls -- File Changes -- M beast-gtk/bstbuseditor.cc (33) M bse/bseapi.idl (23) M bse/bsebus.cc (335) M bse/bsebus.hh (28) M bse/bseitem.cc (14) M bse/bseitem.hh (3) M bse/bsesong.cc (6) M bse/bsestorage.cc (10) M bse/sfiserial.cc (2) M bse/sfiserial.hh (3) -- Patch Links -- https://github.com/tim-janik/beast/pull/105.patch https://github.com/tim-janik/beast/pull/105.diff -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/tim-janik/beast/pull/105
_______________________________________________ beast mailing list beast@gnome.org https://mail.gnome.org/mailman/listinfo/beast