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