8 #include "all_include.h"
9 #include "graph_displayer_canvas.h"
10 #include "mapstorage.h"
11 #include <libgnomecanvasmm.h>
12 #include <libgnomecanvasmm/polygon.h>
14 ///This class is responsible for creating a window,
15 ///on which the visualization attributes can be
17 class MapWin : public Gtk::Window
20 ///The \ref GraphDisplayerCanvas on which the graph will be drawn.
21 ///It has to be known for this class, because
22 ///when a map assigned to a certain attribute
23 ///a function of the \ref GraphDisplayerCanvas will be called.
24 GraphDisplayerCanvas & gdc;
26 ///The \ref MapStorage in which the visualizable maps are stored
31 Gtk::Combo * e_combo_array, * n_combo_array;
38 ///Constructor of MapWin creates the widgets shown in MapWin.
39 MapWin(const std::string& title, MapStorage &, GraphDisplayerCanvas &);
41 ///If a radiobutton is clicked, this function determines
42 ///which button was that and after that calls the
43 ///appropriate function of the \ref GraphDisplayerCanvas
44 ///to change the visible values of that attribute.
45 virtual void eComboChanged(int);
46 ///If a radiobutton is clicked, this function determines
47 ///which button was that and after that calls the
48 ///appropriate function of the \ref GraphDisplayerCanvas
49 ///to change the visible values of that attribute.
50 virtual void nComboChanged(int);
52 ///This function is created to set the appropriate maps on the newly created node
53 void updateNode(Graph::Node);
55 ///This function is created to set the appropriate maps on the newly created edge
56 void updateEdge(Graph::Edge);
58 ///This function inserts name of the new edgemap in the list in the combo box
59 void registerNewEdgeMap(std::string);
61 ///This function inserts name of the new nodemap in the list in the combo box
62 void registerNewNodeMap(std::string);
64 virtual bool closeIfEscapeIsPressed(GdkEventKey*);