Horizon
Loading...
Searching...
No Matches
property_panels.hpp
1#pragma once
2#include <gtkmm.h>
3#include "core/core.hpp"
4#include "canvas/selectables.hpp"
5#include <deque>
6
7namespace horizon {
8class PropertyPanels : public Gtk::Box {
9 friend class PropertyPanel;
10
11public:
13 void update_objects(const std::set<SelectableRef> &selection);
14 void reload();
15 typedef sigc::signal<void> type_signal_update;
16 type_signal_update signal_update()
17 {
18 return s_signal_update;
19 }
20 type_signal_update signal_activate()
21 {
22 return s_signal_activate;
23 }
24
25 typedef sigc::signal<void, bool> type_signal_throttled;
26 type_signal_throttled signal_throttled()
27 {
28 return s_signal_throttled;
29 }
30
31 const std::set<SelectableRef> &get_selection() const
32 {
33 return selection_stored;
34 }
35
36private:
37 Core *core;
38 type_signal_update s_signal_update;
39 type_signal_update s_signal_activate;
40 type_signal_throttled s_signal_throttled;
41 std::set<SelectableRef> selection_stored;
42
43 void set_property(ObjectType ty, const std::deque<UUID> &uus, ObjectProperty::ID property,
44 const class PropertyValue &value);
45 sigc::connection throttle_connection;
46 void force_commit();
47};
48} // namespace horizon
Where Tools and and documents meet.
Definition core.hpp:42
Definition property_panel.hpp:10
Definition property_panels.hpp:8
Definition core_properties.hpp:8