4 MapWin::MapWin(const std::string& title, MapStorage & mapst, GraphDisplayerCanvas & grdispc):gdc(grdispc),ms(mapst)
7 //most nem kommentezem fel, mert ugyis valtozik
10 set_default_size(400, 200);
12 rb_array=new Gtk::RadioButton * [PROPERTY_NUM];
13 vbox_r1=new Gtk::VBox[PROPERTY_NUM];
14 vbox_r2=new Gtk::VBox[PROPERTY_NUM];
15 radios=new Gtk::HBox[PROPERTY_NUM];
16 for(int i=0;i<PROPERTY_NUM;i++)
18 rb_array[i]=new Gtk::RadioButton[ms.numOfEdgeMaps()+1];
20 Gtk::RadioButton::Group group;
22 std::map< std::string,Graph::EdgeMap<double> * >::iterator emsi=ms.beginOfEdgeMaps();
26 for(int j=0;j<ms.numOfEdgeMaps();j++)
29 if(emsi->second==&(ms.default_edgemaps[i]))
33 for(int k=0;k<PROPERTY_NUM;k++)
35 if(emsi->second==&(ms.default_edgemaps[k]))
43 rb_array[i][0].set_group(group);
44 rb_array[i][0].set_label("Default");
45 rb_array[i][0].signal_clicked().connect( sigc::bind( sigc::bind( sigc::mem_fun(*this, &MapWin::radio_click), 0), i) );
46 vbox_r1[i].pack_start(rb_array[i][0]);
49 emsi=ms.beginOfEdgeMaps();
51 for(int j=0;j<ms.numOfEdgeMaps();j++)
53 if( ( props.find(j) )==( props.end() ) )
55 rb_array[i][actpos].set_group(group);
56 rb_array[i][actpos].set_label(emsi->first);
57 rb_array[i][actpos].signal_clicked().connect
61 sigc::mem_fun(*this, &MapWin::radio_click),
68 if(actpos<(ms.numOfEdgeMaps()-PROPERTY_NUM+1)/2)
70 vbox_r1[i].pack_start(rb_array[i][actpos]);
74 vbox_r2[i].pack_start(rb_array[i][actpos]);
80 radios[i].pack_start(vbox_r1[i]);
81 radios[i].pack_start(vbox_r2[i]);
82 notebook.append_page(radios[i], property_strings[i]);
86 vbox_b.pack_start(notebook);
92 void MapWin::radio_click(int prop, int actpos)
95 //most nem kommentezem fel, mert ugyis valtozik
97 if(rb_array[prop][actpos].get_active())
100 std::string mapname=rb_array[prop][actpos].get_label();
102 if(mapname=="Default")
104 mapname=property_strings[prop];
110 gdc.changeLineWidth(mapname);
113 gdc.changeColor(mapname);
116 gdc.changeText(mapname);
119 std::cout<<"Error\n";