15 #ifndef BORNAGAIN_MVVM_MODEL_MVVM_INTERFACES_ITEMLISTENERINTERFACE_H
16 #define BORNAGAIN_MVVM_MODEL_MVVM_INTERFACES_ITEMLISTENERINTERFACE_H
Interface to subscribe to various events happening with specific SessionItem.
virtual void setOnDataChange(Callbacks::item_int_t f, Callbacks::slot_t owner)=0
Sets callback to be notified on item's data change.
virtual void setOnItemDestroy(Callbacks::item_t f, Callbacks::slot_t owner)=0
virtual void setOnItemInserted(Callbacks::item_tagrow_t f, Callbacks::slot_t owner)=0
Sets callback to be notified on child insertion.
virtual void setOnAboutToRemoveItem(Callbacks::item_tagrow_t f, Callbacks::slot_t owner)=0
Sets callback to be notified when row is about to be removed.
virtual void unsubscribe(Callbacks::slot_t client)=0
Removes given client from all subscriptions.
virtual void setOnPropertyChange(Callbacks::item_str_t f, Callbacks::slot_t owner)=0
Sets callback to be notified on item's property change.
virtual ~ItemListenerInterface()=default
virtual void setOnItemRemoved(Callbacks::item_tagrow_t f, Callbacks::slot_t owner)=0
Sets callback to be notified on child removal.
virtual void setOnChildPropertyChange(Callbacks::item_str_t f, Callbacks::slot_t owner)=0
Sets callback to be notified on item's children property change.
std::function< void(SessionItem *, std::string)> item_str_t
std::function< void(SessionItem *, TagRow)> item_tagrow_t
std::function< void(SessionItem *, int)> item_int_t
std::function< void(SessionItem *)> item_t
materialitems.h Collection of materials to populate MaterialModel.