1.1 --- a/src/gui/map_win.cc Sat May 21 21:04:57 2005 +0000
1.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
1.3 @@ -1,116 +0,0 @@
1.4 -#include <map_win.h>
1.5 -#include <set>
1.6 -
1.7 -MapWin::MapWin(const std::string& title, MapStorage & mapst, GraphDisplayerCanvas & grdispc):gdc(grdispc),ms(mapst)
1.8 -{
1.9 - set_title(title);
1.10 - set_default_size(400, 200);
1.11 -
1.12 - rb_array=new Gtk::RadioButton * [PROPERTY_NUM];
1.13 - vbox_r1=new Gtk::VBox[PROPERTY_NUM];
1.14 - vbox_r2=new Gtk::VBox[PROPERTY_NUM];
1.15 - radios=new Gtk::HBox[PROPERTY_NUM];
1.16 - for(int i=0;i<PROPERTY_NUM;i++)
1.17 - {
1.18 - rb_array[i]=new Gtk::RadioButton[ms.numOfEdgeMaps()+1];
1.19 -
1.20 - Gtk::RadioButton::Group group;
1.21 -
1.22 - std::map< std::string,Graph::EdgeMap<double> * >::iterator emsi=ms.beginOfEdgeMaps();
1.23 - std::set<int> props;
1.24 -
1.25 - int actprop;
1.26 - for(int j=0;j<ms.numOfEdgeMaps();j++)
1.27 - {
1.28 -
1.29 - if(emsi->second==&(ms.default_edgemaps[i]))
1.30 - {
1.31 - actprop=j;
1.32 - }
1.33 - for(int k=0;k<PROPERTY_NUM;k++)
1.34 - {
1.35 - if(emsi->second==&(ms.default_edgemaps[k]))
1.36 - {
1.37 - props.insert(j);
1.38 - }
1.39 - }
1.40 - emsi++;
1.41 - }
1.42 -
1.43 - rb_array[i][0].set_group(group);
1.44 - rb_array[i][0].set_label("Default");
1.45 - rb_array[i][0].signal_clicked().connect( sigc::bind( sigc::bind( sigc::mem_fun(*this, &MapWin::radio_click), 0), i) );
1.46 - vbox_r1[i].pack_start(rb_array[i][0]);
1.47 -
1.48 -
1.49 - emsi=ms.beginOfEdgeMaps();
1.50 - int actpos=1;
1.51 - for(int j=0;j<ms.numOfEdgeMaps();j++)
1.52 - {
1.53 - if( ( props.find(j) )==( props.end() ) )
1.54 - {
1.55 - rb_array[i][actpos].set_group(group);
1.56 - rb_array[i][actpos].set_label(emsi->first);
1.57 - rb_array[i][actpos].signal_clicked().connect
1.58 - (
1.59 - sigc::bind(
1.60 - sigc::bind(
1.61 - sigc::mem_fun(*this, &MapWin::radio_click),
1.62 - actpos
1.63 - ),
1.64 - i
1.65 - )
1.66 - );
1.67 -
1.68 - if(actpos<(ms.numOfEdgeMaps()-PROPERTY_NUM+1)/2)
1.69 - {
1.70 - vbox_r1[i].pack_start(rb_array[i][actpos]);
1.71 - }
1.72 - else
1.73 - {
1.74 - vbox_r2[i].pack_start(rb_array[i][actpos]);
1.75 - }
1.76 - actpos++;
1.77 - }
1.78 - emsi++;
1.79 - }
1.80 - radios[i].pack_start(vbox_r1[i]);
1.81 - radios[i].pack_start(vbox_r2[i]);
1.82 - notebook.append_page(radios[i], property_strings[i]);
1.83 - }
1.84 -
1.85 - add(vbox_b);
1.86 - vbox_b.pack_start(notebook);
1.87 -
1.88 - show_all_children();
1.89 -
1.90 -}
1.91 -
1.92 -void MapWin::radio_click(int prop, int actpos)
1.93 -{
1.94 - if(rb_array[prop][actpos].get_active())
1.95 - {
1.96 -
1.97 - std::string mapname=rb_array[prop][actpos].get_label();
1.98 -
1.99 - if(mapname=="Default")
1.100 - {
1.101 - mapname=property_strings[prop];
1.102 - }
1.103 -
1.104 - switch(prop)
1.105 - {
1.106 - case WIDTH:
1.107 - gdc.changeLineWidth(mapname);
1.108 - break;
1.109 - case COLOR:
1.110 - gdc.changeColor(mapname);
1.111 - break;
1.112 - case TEXT:
1.113 - gdc.changeText(mapname);
1.114 - break;
1.115 - default:
1.116 - std::cout<<"Error\n";
1.117 - }
1.118 - }
1.119 -};