|
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 |
|
13 class MapStorage; |
|
14 |
|
15 class 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 |