- Main Page
- Related Pages
- Namespaces
- Classes
- Files

# groupactionmanager.h

Go to the documentation of this file.

    00001 /* === S Y N F I G ========================================================= */
    00021 /* ========================================================================= */
    00022
    00023 /* === S T A R T =========================================================== */
    00024
    00025 #ifndef __SYNFIG_GROUP_ACTION_MANAGER_H
    00026 #define __SYNFIG_GROUP_ACTION_MANAGER_H
    00027
    00028 /* === H E A D E R S ======================================================= */
    00029
    00030 #include <gtkmm/uimanager.h>
    00031 #include <gtkmm/treeview.h>
    00032 #include <synfigapp/canvasinterface.h>
    00033
    00034 /* === M A C R O S ========================================================= */
    00035
    00036 /* === T Y P E D E F S ===================================================== */
    00037
    00038 /* === C L A S S E S & S T R U C T S ======================================= */
    00039
    00040 namespace studio {
    00041
    00042 class LayerGroupTree;
    00043
    00044 class GroupActionManager
    00045 {
    00046     Glib::RefPtr<Gtk::UIManager> ui_manager_;
    00047     LayerGroupTree* group_tree_;
    00048     etl::handle<synfigapp::CanvasInterface> canvas_interface_;
    00049
    00050     Glib::RefPtr<Gtk::ActionGroup>  action_group_;
    00051     Gtk::UIManager::ui_merge_id     popup_id_;
    00052
    00053     sigc::connection selection_changed_connection;
    00054
    00055     bool queued;
    00056     sigc::connection queue_refresh_connection;
    00057
    00058 private:
    00059
    00060     void on_action_add();
    00061
    00062 public:
    00063     void queue_refresh();
    00064
    00065     GroupActionManager();
    00066     ~GroupActionManager();
    00067
    00068     void set_ui_manager(const Glib::RefPtr<Gtk::UIManager> &x);
    00069     Glib::RefPtr<Gtk::UIManager> get_ui_manager()const { return ui_manager_; }
    00070
    00071     void set_group_tree(LayerGroupTree* x);
    00072     LayerGroupTree* get_group_tree()const { return group_tree_; }
    00073
    00074     void set_canvas_interface(const etl::handle<synfigapp::CanvasInterface> &x);
    00075     etl::handle<synfigapp::CanvasInterface> get_canvas_interface()const { return canvas_interface_; }
    00076
    00077     void refresh();
    00078     void clear();
    00079 }; // END of GroupActionManager
    00080
    00081 }; // END of namespace studio
    00082
    00083 /* === E N D =============================================================== */
    00084
    00085 #endif