Walls And Holes  1
tiletemplatesetsview.h
Go to the documentation of this file.
1 #ifndef TILETEMPLATESETSVIEW_H
2 #define TILETEMPLATESETSVIEW_H
3 
6 #include "propertybrowser.h"
7 
8 #include <QAction>
9 #include <QWidget>
10 #include <QTabWidget>
11 #include <QListView>
12 #include <QSplitter>
13 
20 class TileTemplateSetsView : public QWidget
21 {
22  Q_OBJECT
23 
24 public:
25  explicit TileTemplateSetsView(TileTemplateSetsManager *tileTemplateSetsManage,
26  QWidget *parent = nullptr);
27 
28  void setDefaultTileTemplateSet(TileTemplateSet *tileTemplateSet);
29 
30  void saveState();
31  void restoreState();
32 
33 signals:
34  void tileTemplateChanged(TileTemplate *tileTemplate);
35 
36 private slots:
37  void tileTemplateSetAdded(SavableTileTemplateSet *tileTemplateSet);
38  void tileTemplateSetAboutToBeRemoved(SavableTileTemplateSet *tileTemplateSet);
39 
40  void selectedTileTemplateChanged();
41  void defaultTileTemplateSelected(const QModelIndex &current);
42 
43  void addTemplate();
44  void removeTemplate();
45 
46  void addTemplateSet();
47  void removeTemplateSet();
48  void saveTemplateSet();
49  void loadTemplateSet();
50 
51  void tileTemplateChangedSlot(TileTemplate *tileTemplate);
52 
53 private:
54  void tileTemplateSetSaveStatusChanged(SavableTileTemplateSet *tileTemplateSet, bool status);
55 
56  TileTemplateSet *mDefaultTemplateSet;
57  QListView *mDefaultTemplateView;
58  TileTemplateSetsManager *mTileTemplateSetsManager;
59  QList<QListView *> mListViews;
60  PropertyBrowser *mTemplatePropertyBrowser;
61 
62  QTabWidget *mTabs;
63 
64  QAction *mNewTemplate;
65  QAction *mRemoveTemplate;
66 
67  QAction *mRemoveTemplateSet;
68  QAction *mSaveTemplateSet;
69 
70  QSplitter *mSplitter;
71 };
72 
73 #endif // TILETEMPLATESETSVIEW_H
void setDefaultTileTemplateSet(TileTemplateSet *tileTemplateSet)
Definition: tiletemplatesetsview.cpp:85
The TileTemplateSetsView class Stores and displays all open TileTemplateSets. Has a tool bar for savi...
Definition: tiletemplatesetsview.h:20
void saveState()
Definition: tiletemplatesetsview.cpp:105
void tileTemplateChanged(TileTemplate *tileTemplate)
The TileTemplateSet class Stores a list of tile templates. Also implements the item model for them...
Definition: tiletemplateset.h:14
The PropertyBrowser class.
Definition: propertybrowser.h:17
void restoreState()
Definition: tiletemplatesetsview.cpp:112
The TileTemplateSetsManager class Handles the active tileTemplateSets of the application. Can create dialogs to interact with the user. May modify the attached TileMap when removing templateSets.
Definition: tiletemplatesetsmanager.h:16
TileTemplateSetsView(TileTemplateSetsManager *tileTemplateSetsManage, QWidget *parent=nullptr)
Definition: tiletemplatesetsview.cpp:12
Definition: tiletemplate.h:13
The SavableTileTemplateSet class A TileTemplateSet which is tightly bound to a file. Needs to be used with any custom TileTemplateSet (anything other that default map tileTemplates).
Definition: savabletiletemplateset.h:12