ladanyi@6: // -*- C++ -*- // ladanyi@6: ladanyi@6: #ifndef MAIN_WIN_H ladanyi@6: #define MAIN_WIN_H ladanyi@6: ladanyi@53: #include "all_include.h" ladanyi@53: #include "mapstorage.h" ladanyi@53: #include "map_win.h" ladanyi@53: #include "new_map_win.h" ladanyi@53: #include "graph_displayer_canvas.h" ladanyi@6: #include ladanyi@6: #include ladanyi@6: ladanyi@6: ///This class is the main window of GUI. ladanyi@6: ///It has menus, but the main part of it is the canvas. ladanyi@6: class MainWin : public Gtk::Window ladanyi@6: { ladanyi@6: public: ladanyi@6: ///Constructor of the \ref MainWin. It creates the menu and the \ref GraphDisplayerCanvas on which the graph will be drawn. ladanyi@6: ///\param title is the title of the window ladanyi@53: MainWin(const std::string& title); ladanyi@53: ladanyi@53: MapStorage mapstorage; ladanyi@6: ladanyi@57: void readFile(const std::string &); ladanyi@57: ladanyi@6: protected: ladanyi@6: ///Window of map-showing setup. Its type is \ref MapWin ladanyi@6: MapWin mapwin; ladanyi@6: hegyi@41: ///We need to store newmapwin, to be able to set the appropriate values for properties of new map. hegyi@41: NewMapWin newmapwin; hegyi@41: ladanyi@6: ///The graph will be drawn on this \ref GraphDisplayerCanvas ladanyi@6: GraphDisplayerCanvas gd_canvas; ladanyi@6: ladanyi@6: ///ActionGroup for menu ladanyi@6: Glib::RefPtr ag; ladanyi@6: ladanyi@6: ///UIManager for menu ladanyi@6: Glib::RefPtr uim; ladanyi@6: ladanyi@6: ///Container ladanyi@6: Gtk::VBox vbox; ladanyi@6: hegyi@50: ///Tooltips hegyi@50: Gtk::Tooltips tooltips; hegyi@50: ladanyi@6: ///Callback for 'FileNew' action. ladanyi@6: virtual void newFile(); ladanyi@6: ///Callback for 'FileOpen' action. ladanyi@6: virtual void openFile(); ladanyi@6: ///Callback for 'FileSave' action. ladanyi@6: virtual void saveFile(); ladanyi@6: ///Callback for 'FileSaveAs' action. ladanyi@6: virtual void saveFileAs(); ladanyi@53: ///Callback for 'Close' action. ladanyi@53: virtual void close(); ladanyi@6: }; ladanyi@6: ladanyi@6: #endif //MAIN_WIN_H