save_details_widget.h
author Peter Hegyi <hegyi@tmit.bme.hu>
Mon, 07 Jul 2008 08:10:39 -0500
changeset 1 67188bd752db
permissions -rw-r--r--
SVN revision 3500 made compilable with Lemon 1.0.
     1 #ifndef SAVE_DETAILS_WIDGET
     2 #define SAVE_DETAILS_WIDGET
     3 
     4 #include <gtkmm/entry.h>
     5 #include <gtkmm/box.h>
     6 #include <gtkmm/radiobutton.h>
     7 #include <gtkmm/label.h>
     8 #include <gtkmm/notebook.h>
     9 #include <gtkmm/treemodel.h>
    10 #include <gtkmm/liststore.h>
    11 #include <gtkmm/treeview.h>
    12 #include <gtkmm/scrolledwindow.h>
    13 
    14 class MapStorage;
    15 
    16 class SaveDetailsWidget : public Gtk::VBox
    17 {
    18   public:
    19     struct MapModelColumns : public Gtk::TreeModel::ColumnRecord
    20     {
    21       MapModelColumns()
    22       {
    23         add(colName);
    24         add(colSaveToMainSect);
    25         add(colSaveToGuiSect);
    26       }
    27       Gtk::TreeModelColumn<Glib::ustring> colName;
    28       Gtk::TreeModelColumn<bool> colSaveToMainSect;
    29       Gtk::TreeModelColumn<bool> colSaveToGuiSect;
    30     };
    31   private:
    32     Gtk::RadioButton rbLgfFile;
    33     Gtk::RadioButton rbConfFile;
    34 
    35     Gtk::TreeView twNodeMaps;
    36     Gtk::TreeView twArcMaps;
    37 
    38     MapModelColumns NodeMapColumns;
    39     MapModelColumns ArcMapColumns;
    40 
    41     Glib::RefPtr<Gtk::ListStore> refNodeMapStore;
    42     Glib::RefPtr<Gtk::ListStore> refArcMapStore;
    43 
    44     Gtk::RadioButton rblueCoordGuiSection;
    45     Gtk::RadioButton rblueCoordNodesetSection;
    46     Gtk::RadioButton rblueCoordOneMap;
    47     Gtk::RadioButton rblueCoordTwoMaps;
    48     Gtk::Entry entNodeCoordsOneMap;
    49     Gtk::Entry entNodeCoordsTwoMaps1;
    50     Gtk::Entry entNodeCoordsTwoMaps2;
    51 
    52     Gtk::RadioButton rbArrowCoordGuiSection;
    53     Gtk::RadioButton rbArrowCoordArcsetSection;
    54     Gtk::RadioButton rbArrowCoordOneMap;
    55     Gtk::RadioButton rbArrowCoordTwoMaps;
    56     Gtk::Entry entArrowCoordsOneMap;
    57     Gtk::Entry entArrowCoordsTwoMaps1;
    58     Gtk::Entry entArrowCoordsTwoMaps2;
    59 
    60     MapStorage* pMapStorage;
    61 
    62     void onGuiSectSaveDestChanged();
    63 
    64     void onNodeCoordSaveDestChanged();
    65     void onNodeCoordMapNumChanged();
    66 
    67     void onNodeCoordsOneMapName();
    68     void onNodeCoordsTwoMaps1Name();
    69     void onNodeCoordsTwoMaps2Name();
    70 
    71     void onArrowCoordSaveDestChanged();
    72     void onArrowCoordMapNumChanged();
    73 
    74     void onArrowCoordsOneMapName();
    75     void onArrowCoordsTwoMaps1Name();
    76     void onArrowCoordsTwoMaps2Name();
    77 
    78     void onArcMapRowChanged(const Gtk::TreeModel::Path& path,
    79         const Gtk::TreeModel::iterator& iter);
    80     void onNodeMapRowChanged(const Gtk::TreeModel::Path& path,
    81         const Gtk::TreeModel::iterator& iter);
    82   public:
    83     SaveDetailsWidget(MapStorage* ms);
    84     ~SaveDetailsWidget();
    85 };
    86 
    87 #endif