COIN-OR::LEMON - Graph Library

source: glemon-0.x/save_details_widget.h @ 201:879e47e5b731

Last change on this file since 201:879e47e5b731 was 201:879e47e5b731, checked in by Akos Ladanyi, 11 years ago

Merge branches/akos to trunk.

File size: 2.3 KB
Line 
1#ifndef SAVE_DETAILS_WIDGET
2#define SAVE_DETAILS_WIDGET
3
4#include <gtkmm/box.h>
5#include <gtkmm/radiobutton.h>
6#include <gtkmm/label.h>
7#include <gtkmm/notebook.h>
8#include <gtkmm/treemodel.h>
9#include <gtkmm/liststore.h>
10#include <gtkmm/treeview.h>
11#include <gtkmm/scrolledwindow.h>
12
13class MapStorage;
14
15class SaveDetailsWidget : public Gtk::VBox
16{
17  public:
18    struct MapModelColumns : public Gtk::TreeModel::ColumnRecord
19    {
20      MapModelColumns()
21      {
22        add(colName);
23        add(colSaveToMainSect);
24        add(colSaveToGuiSect);
25      }
26      Gtk::TreeModelColumn<Glib::ustring> colName;
27      Gtk::TreeModelColumn<bool> colSaveToMainSect;
28      Gtk::TreeModelColumn<bool> colSaveToGuiSect;
29    };
30  private:
31    Gtk::RadioButton rbLgfFile;
32    Gtk::RadioButton rbConfFile;
33
34    Gtk::TreeView twNodeMaps;
35    Gtk::TreeView twEdgeMaps;
36
37    MapModelColumns NodeMapColumns;
38    MapModelColumns EdgeMapColumns;
39
40    Glib::RefPtr<Gtk::ListStore> refNodeMapStore;
41    Glib::RefPtr<Gtk::ListStore> refEdgeMapStore;
42
43    Gtk::RadioButton rbNodeCoordGuiSection;
44    Gtk::RadioButton rbNodeCoordNodesetSection;
45    Gtk::RadioButton rbNodeCoordOneMap;
46    Gtk::RadioButton rbNodeCoordTwoMaps;
47    Gtk::Entry entNodeCoordsOneMap;
48    Gtk::Entry entNodeCoordsTwoMaps1;
49    Gtk::Entry entNodeCoordsTwoMaps2;
50
51    Gtk::RadioButton rbArrowCoordGuiSection;
52    Gtk::RadioButton rbArrowCoordEdgesetSection;
53    Gtk::RadioButton rbArrowCoordOneMap;
54    Gtk::RadioButton rbArrowCoordTwoMaps;
55    Gtk::Entry entArrowCoordsOneMap;
56    Gtk::Entry entArrowCoordsTwoMaps1;
57    Gtk::Entry entArrowCoordsTwoMaps2;
58
59    MapStorage* pMapStorage;
60
61    void onGuiSectSaveDestChanged();
62
63    void onNodeCoordSaveDestChanged();
64    void onNodeCoordMapNumChanged();
65
66    void onNodeCoordsOneMapName();
67    void onNodeCoordsTwoMaps1Name();
68    void onNodeCoordsTwoMaps2Name();
69
70    void onArrowCoordSaveDestChanged();
71    void onArrowCoordMapNumChanged();
72
73    void onArrowCoordsOneMapName();
74    void onArrowCoordsTwoMaps1Name();
75    void onArrowCoordsTwoMaps2Name();
76
77    void onEdgeMapRowChanged(const Gtk::TreeModel::Path& path,
78        const Gtk::TreeModel::iterator& iter);
79    void onNodeMapRowChanged(const Gtk::TreeModel::Path& path,
80        const Gtk::TreeModel::iterator& iter);
81  public:
82    SaveDetailsWidget(MapStorage* ms);
83    ~SaveDetailsWidget();
84};
85
86#endif
Note: See TracBrowser for help on using the repository browser.