ladanyi@6: // -*- C++ -*- // ladanyi@6: ladanyi@6: #ifndef MAIN_WIN_H ladanyi@6: #define MAIN_WIN_H ladanyi@6: ladanyi@6: #include ladanyi@6: #include ladanyi@6: #include hegyi@9: #include 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@6: ///\param graph is the graph that will be drawn here. It will be given further to the \ref GraphDisplayerCanvas ladanyi@6: ///\param cm stores the coordinates of the nodes of the graph ladanyi@6: ///\param ms is the \ref MapStorage in which the different visualizable maps are stored ladanyi@6: MainWin(const std::string& title, Graph &, CoordinatesMap &, MapStorage &); ladanyi@6: ladanyi@6: protected: ladanyi@6: ///Window of map-showing setup. Its type is \ref MapWin ladanyi@6: MapWin mapwin; ladanyi@6: hegyi@9: ///Window of editorial tools. Its type is \ref EditWin hegyi@9: EditWin editwin; hegyi@9: 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: ladanyi@6: ///This function makes map-setup window popped up. ladanyi@6: virtual void showMaps(); hegyi@9: ///This function makes editorial window popped up. hegyi@9: virtual void showEditorials(); 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@6: ///Callback for 'Quit' action. ladanyi@6: virtual void quit(); ladanyi@6: }; ladanyi@6: ladanyi@6: #endif //MAIN_WIN_H