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

# dockdialog.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_STUDIO_DOCK_DIALOG_H
    00026 #define __SYNFIG_STUDIO_DOCK_DIALOG_H
    00027
    00028 /* === H E A D E R S ======================================================= */
    00029
    00030 #include <gtkmm/stockid.h>
    00031 #include <gtkmm/button.h>
    00032 #include "dialogsettings.h"
    00033 #include <synfig/string.h>
    00034 #include <gtkmm/dialog.h>
    00035 #include <gtkmm/tooltips.h>
    00036 #include <gtkmm/label.h>
    00037 #include <gtkmm/frame.h>
    00038 #include <gtkmm/handlebox.h>
    00039 #include <gtkmm/scrolledwindow.h>
    00040 #include <gtkmm/accelgroup.h>
    00041
    00042 /* === M A C R O S ========================================================= */
    00043
    00044 /* === T Y P E D E F S ===================================================== */
    00045
    00046 /* === C L A S S E S & S T R U C T S ======================================= */
    00047
    00048 namespace Gtk { class Box; class Paned;  };
    00049 namespace studio {
    00050
    00051 class DockManager;
    00052 class DockBook;
    00053 class Dockable;
    00054 class Widget_CompSelect;
    00055 class CanvasView;
    00056
    00057 class DockDialog : public Gtk::Window
    00058 {
    00059     friend class DockManager;
    00060     friend class DockBook;
    00061     friend class Dockable;
    00062     sigc::connection empty_sig;
    00063
    00064     bool composition_selector_;
    00065
    00066     bool is_deleting;
    00067
    00068     bool is_horizontal;
    00069
    00070 private:
    00071     std::list<DockBook*> dock_book_list;
    00072
    00073     std::vector<Gtk::Paned*>    panels_;
    00074     std::vector<int>            dock_book_sizes_;
    00075
    00076
    00077     DockBook* last_dock_book;
    00078
    00079     Widget_CompSelect* widget_comp_select;
    00080     Gtk::Box *box;
    00081
    00082     int id_;
    00083
    00084     void on_hide();
    00085
    00086     void refresh();
    00087
    00088     void refresh_title();
    00089
    00090     void set_id(int x) { id_=x; }
    00091
    00092     void refresh_accel_group();
    00093
    00094     void drop_on_append(const Glib::RefPtr<Gdk::DragContext>& context, int, int, const Gtk::SelectionData& selection_data, guint, guint time);
    00095     void drop_on_prepend(const Glib::RefPtr<Gdk::DragContext>& context, int, int, const Gtk::SelectionData& selection_data, guint, guint time);
    00096
    00097 public:
    00098
    00099     const std::vector<int>& get_dock_book_sizes()const { return dock_book_sizes_;}
    00100     void set_dock_book_sizes(const std::vector<int>&);
    00101     void rebuild_sizes();
    00102
    00103     bool close();
    00104
    00105     int get_id()const { return id_; }
    00106
    00107     DockBook* append_dock_book();
    00108     DockBook* prepend_dock_book();
    00109     void erase_dock_book(DockBook*);
    00110
    00111     void set_composition_selector(bool x);
    00112     bool get_composition_selector()const { return composition_selector_; }
    00113
    00114     DockDialog();
    00115     ~DockDialog();
    00116
    00117     DockBook& get_dock_book();
    00118     const DockBook& get_dock_book()const;
    00119
    00120     synfig::String get_contents()const;
    00121     void set_contents(const synfig::String& x);
    00122 }; // END of studio::DockDialog
    00123
    00124 }; // END of namespace studio
    00125
    00126 /* === E N D =============================================================== */
    00127
    00128 #endif