src/gui/main_win.cc
changeset 1435 8e85e6bbefdf
equal deleted inserted replaced
0:f03020d3f1c0 -1:000000000000
     1 #include <main_win.h>
       
     2 
       
     3 MainWin::MainWin(const std::string& title, Graph & graph, CoordinatesMap & cm, MapStorage & ms):mapwin("Map Setup", ms, gd_canvas),gd_canvas(graph, cm, ms)
       
     4 {
       
     5   set_title (title);
       
     6   set_default_size(WIN_WIDTH,WIN_HEIGHT);
       
     7   add(vbox);
       
     8 
       
     9   ag=Gtk::ActionGroup::create();
       
    10   ag->add( Gtk::Action::create("ShowMenu", "_Show") );
       
    11   ag->add( Gtk::Action::create("ShowMaps", "_Maps"), sigc::mem_fun(*this, &MainWin::showMaps));
       
    12   ag->add( Gtk::Action::create("FileMenu", "_File") );
       
    13   ag->add( Gtk::Action::create("FileQuit", "_Quit"), sigc::mem_fun(*this, &MainWin::quit));
       
    14   ag->add( Gtk::Action::create("ZoomMenu", "_Zoom") );
       
    15   ag->add( Gtk::Action::create("ZoomRezoom", "_Rezoom"), sigc::mem_fun(*this, &MainWin::rezoom)); //!!!!!!
       
    16 
       
    17   uim=Gtk::UIManager::create();
       
    18   uim->insert_action_group(ag);
       
    19   add_accel_group(uim->get_accel_group());
       
    20 
       
    21   try
       
    22   {
       
    23 
       
    24     Glib::ustring ui_info =
       
    25       "<ui>"
       
    26       "  <menubar name='MenuBar'>"
       
    27       "    <menu action='FileMenu'>"
       
    28       "      <menuitem action='FileQuit'/>"
       
    29       "    </menu>"
       
    30       "    <menu action='ShowMenu'>"
       
    31       "      <menuitem action='ShowMaps'/>"
       
    32       "    </menu>"
       
    33       "    <menu action='ZoomMenu'>"
       
    34       "      <menuitem action='ZoomRezoom'/>"
       
    35       "    </menu>"
       
    36       "  </menubar>"
       
    37       "</ui>";
       
    38 
       
    39     uim->add_ui_from_string(ui_info);
       
    40 
       
    41   }
       
    42   catch(const Glib::Error& ex)
       
    43   {
       
    44     std::cerr << "building menus failed: " <<  ex.what();
       
    45   }
       
    46 
       
    47   Gtk::Widget* menubar = uim->get_widget("/MenuBar");
       
    48   if(menubar)vbox.pack_start(*menubar, Gtk::PACK_SHRINK);
       
    49 
       
    50   vbox.pack_start(gd_canvas);
       
    51 
       
    52   show_all_children();
       
    53 }
       
    54 
       
    55 void MainWin::showMaps()
       
    56 {
       
    57   mapwin.show();
       
    58 }
       
    59 
       
    60 void MainWin::quit()
       
    61 {
       
    62   hide();
       
    63 }
       
    64 
       
    65 void MainWin::rezoom()
       
    66 {
       
    67   gd_canvas.rezoom();
       
    68 }
       
    69