gui/algobox.h
author hegyi
Thu, 05 Jan 2006 12:30:09 +0000
changeset 1878 409a31271efd
parent 1876 5ad84ad1b68f
child 1879 01d41844ef46
permissions -rw-r--r--
Several changes. \n If new map is added to mapstorage it emits signal with the name of the new map. This was important, because from now on not only tha mapwin should be updated. \n Furthermore algobox gets a pointer to mapstorage instead of only the mapnames from it. This is important because without it it would be complicated to pass all of the required maps to algobox.
     1 // -*- C++ -*- //
     2 
     3 #ifndef ALGOBOX_H
     4 #define ALGOBOX_H
     5 
     6 class AlgoBox;
     7 
     8 #include <all_include.h>
     9 #include <mapstorage.h>
    10 #include <libgnomecanvasmm.h>
    11 #include <libgnomecanvasmm/polygon.h>
    12 
    13 class AlgoBox : public Gtk::VBox
    14 {
    15   sigc::signal<void, std::string> signal_maplist_need;  
    16   
    17   Gtk::ComboBoxText tabcbt;
    18 
    19 protected:
    20   Gtk::Label * label;
    21   std::vector<Gtk::ComboBoxText *> nodemapcbts;
    22   std::vector<Gtk::ComboBoxText *> edgemapcbts;
    23 
    24   MapStorage * mapstorage;
    25 
    26 public:
    27   AlgoBox(){};
    28   AlgoBox(std::vector<std::string>);
    29 
    30   virtual void init(std::vector<std::string>);
    31 
    32   sigc::signal<void, std::string> signal_maplist_needed();  
    33   void emit_tab_change();
    34 
    35   void update_tablist( std::vector< std::string > tl );
    36   void update_maplist( void * );
    37 
    38   void nodemaplist_changed(std::string);
    39   void edgemaplist_changed(std::string);
    40 
    41   void update_cbt( std::vector< std::string > tl, Gtk::ComboBoxText &);
    42   
    43   virtual void run();
    44   
    45   virtual void build_box();
    46 };
    47 #endif //ALGOBOX_H