hegyi@1731: // -*- C++ -*- // hegyi@1731: hegyi@1731: #ifndef MAP_SELECTOR_H hegyi@1731: #define MAP_SELECTOR_H hegyi@1731: hegyi@1731: class MapSelector; hegyi@1731: hegyi@1731: #include "all_include.h" hegyi@1731: #include "mapstorage.h" hegyi@1733: #include "new_map_win.h" hegyi@1731: #include "graph_displayer_canvas.h" hegyi@1731: #include hegyi@1731: #include hegyi@1731: hegyi@1731: class MapSelector : public Gtk::HBox hegyi@1731: { hegyi@1731: protected: hegyi@1731: GraphDisplayerCanvas & gdc; hegyi@1731: ///The \ref MapStorage in which the visualizable maps are stored hegyi@1731: MapStorage & ms; hegyi@1733: NewMapWin & nmw; hegyi@1731: hegyi@1731: int id; hegyi@1731: hegyi@1731: bool itisedge; hegyi@1731: hegyi@1731: bool default_state; hegyi@1731: hegyi@1737: bool set_new_map; hegyi@1737: hegyi@1731: Gtk::ComboBoxText cbt; hegyi@1731: hegyi@1731: Gtk::Button * newbut, * defbut; hegyi@1731: hegyi@1731: Gtk::HBox hbox; hegyi@1731: hegyi@1731: Gtk::Label * label; hegyi@1731: hegyi@1731: Node node_to_update; hegyi@1731: Edge edge_to_update; hegyi@1731: hegyi@1731: hegyi@1731: public: hegyi@1731: hegyi@1733: MapSelector(GraphDisplayerCanvas &, MapStorage &, NewMapWin &, int, bool); hegyi@1731: hegyi@1731: void update_list(); hegyi@1731: hegyi@1731: ///If a radiobutton is clicked, this function determines hegyi@1731: ///which button was that and after that calls the hegyi@1731: ///appropriate function of the \ref GraphDisplayerCanvas hegyi@1731: ///to change the visible values of that attribute. hegyi@1731: virtual void comboChanged(); hegyi@1731: hegyi@1737: virtual void new_but_pressed(); hegyi@1737: hegyi@1731: virtual void reset(); hegyi@1731: hegyi@1731: virtual void update(Node node); hegyi@1731: virtual void update(Edge edge); hegyi@1731: hegyi@1731: Glib::ustring get_active_text(); hegyi@1731: void set_active_text(Glib::ustring); hegyi@1731: void append_text(Glib::ustring); hegyi@1731: }; hegyi@1731: hegyi@1731: #endif