GObject property notify before change



I've implemented several GObject derived types that I would like to
track property changes on, for undo/redo history and queuing for
synchronization to GTK+ gui.

I'm assuming g_signal_add_emission_hook is for attaching a callback to a
signal (which is what I want) but found that the GObject "notify" signal
does not allow HOOKS. So I override the ->notify method in my base
object and chain to a new signal "item-notify".

Unfortunately I just found that there is no way (as far as I can tell)
to get signaled before the property changes, as I need to get the old
value to store in undo/redo state history.

Is there any clean way to do this or do I need to resort to my own
_get()/_set() functions?  Thanks in advance for any help :)

        Josh Green




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]