source: synfigstudio/trunk/fuentes/src/gui/mainwindow.h @ 481

Last change on this file since 481 was 481, checked in by jrpelegrina, 4 years ago

First release to xenial

File size: 2.3 KB
Line 
1/* === S Y N F I G ========================================================= */
2/*!     \file mainwindow.h
3**      \brief MainWindow
4**
5**      $Id$
6**
7**      \legal
8**      ......... ... 2013 Ivan Mahonin
9**
10**      This package is free software; you can redistribute it and/or
11**      modify it under the terms of the GNU General Public License as
12**      published by the Free Software Foundation; either version 2 of
13**      the License, or (at your option) any later version.
14**
15**      This package is distributed in the hope that it will be useful,
16**      but WITHOUT ANY WARRANTY; without even the implied warranty of
17**      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18**      General Public License for more details.
19**      \endlegal
20*/
21/* ========================================================================= */
22
23/* === S T A R T =========================================================== */
24
25#ifndef __SYNFIG_STUDIO_MAINWINDOW_H
26#define __SYNFIG_STUDIO_MAINWINDOW_H
27
28/* === H E A D E R S ======================================================= */
29
30#include <ETL/handle>
31#include <gtkmm/window.h>
32#include <gtkmm/box.h>
33#include <gtkmm/notebook.h>
34#include <gtkmm/actiongroup.h>
35#include <gtkmm/toggleaction.h>
36
37/* === M A C R O S ========================================================= */
38
39/* === T Y P E D E F S ===================================================== */
40
41/* === C L A S S E S & S T R U C T S ======================================= */
42
43namespace studio {
44        class Dockable;
45        class DockBook;
46
47        class MainWindow: public Gtk::Window
48        {
49        private:
50                Gtk::Bin *bin_;
51                DockBook *main_dock_book_;
52                Glib::RefPtr<Gtk::ActionGroup> window_action_group;
53
54                //! Constructor Helper - Initializes all of the menus
55                void init_menus();
56
57                static void show_dialog_input();
58                void on_recent_files_changed();
59                void on_dockable_registered(Dockable* dockable);
60                void on_dockable_unregistered(Dockable* dockable);
61                void toggle_show_menubar();
62
63                Glib::RefPtr<Gtk::ToggleAction> toggle_menubar;
64                bool toggling_show_menubar;
65
66
67        public:
68                MainWindow();
69                virtual ~MainWindow();
70
71                Gtk::Bin& root() { return *bin_; }
72                const Gtk::Bin& root() const { return *bin_; }
73
74                DockBook& main_dock_book() { return *main_dock_book_; }
75                const DockBook& main_dock_book() const { return *main_dock_book_; }
76        };
77}; // END of namespace studio
78
79/* === E N D =============================================================== */
80
81#endif
Note: See TracBrowser for help on using the repository browser.