OpenMW
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
view.hpp
Go to the documentation of this file.
1 #ifndef CSV_DOC_VIEW_H
2 #define CSV_DOC_VIEW_H
3 
4 #include <vector>
5 #include <map>
6 
7 #include <QMainWindow>
8 
9 #include "subviewfactory.hpp"
10 
11 class QAction;
12 class QDockWidget;
13 class QScrollArea;
14 
15 namespace CSMDoc
16 {
17  class Document;
18 }
19 
20 namespace CSMWorld
21 {
22  class UniversalId;
23 }
24 
25 namespace CSMPrefs
26 {
27  class Setting;
28 }
29 
30 namespace CSVDoc
31 {
32  class ViewManager;
33  class Operations;
34  class GlobalDebugProfileMenu;
35 
36  class View : public QMainWindow
37  {
38  Q_OBJECT
39 
44  QList<SubView *> mSubViews;
52  std::vector<QAction *> mEditingActions;
55  QMainWindow mSubViewWindow;
59 
60 
61  // not implemented
62  View (const View&);
63  View& operator= (const View&);
64 
65  private:
66 
67  void closeEvent (QCloseEvent *event);
68 
69  QAction* createMenuEntry(CSMWorld::UniversalId::Type type, QMenu* menu, const char* shortcutName);
70  QAction* createMenuEntry(const std::string& title, const std::string& iconName, QMenu* menu, const char* shortcutName);
71 
72  void setupFileMenu();
73 
74  void setupEditMenu();
75 
76  void setupViewMenu();
77 
78  void setupWorldMenu();
79 
80  void setupMechanicsMenu();
81 
82  void setupCharacterMenu();
83 
84  void setupAssetsMenu();
85 
86  void setupDebugMenu();
87 
88  void setupUi();
89 
90  void setupShortcut(const char* name, QAction* action);
91 
92  void updateActions();
93 
94  void exitApplication();
95 
97  void resizeViewWidth (int width);
98 
100  void resizeViewHeight (int height);
101 
102  void updateScrollbar();
103  void updateWidth(bool isGrowLimit, int minSubViewWidth);
104  void createScrollArea();
105  public:
106 
107  View (ViewManager& viewManager, CSMDoc::Document *document, int totalViews);
108 
110 
111  virtual ~View();
112 
113  const CSMDoc::Document *getDocument() const;
114 
116 
117  void setIndex (int viewIndex, int totalViews);
118 
119  void updateDocumentState();
120 
121  void updateProgress (int current, int max, int type, int threads);
122 
123  void toggleStatusBar(bool checked);
124 
125  Operations *getOperations() const;
126 
127  signals:
128 
129  void newGameRequest();
130 
131  void newAddonRequest();
132 
133  void loadDocumentRequest();
134 
136 
137  void editSettingsRequest();
138 
139  void mergeDocument (CSMDoc::Document *document);
140 
141  public slots:
142 
143  void addSubView (const CSMWorld::UniversalId& id, const std::string& hint = "");
146 
147  void abortOperation (int type);
148 
149  void updateTitle();
150 
151  // called when subviews are added or removed
152  void updateSubViewIndices (SubView *view = NULL);
153 
154  private slots:
155 
156  void settingChanged (const CSMPrefs::Setting *setting);
157 
158  void undoActionChanged();
159 
160  void redoActionChanged();
161 
162  void newView();
163 
164  void save();
165 
166  void exit();
167 
168  void verify();
169 
170  void addGlobalsSubView();
171 
172  void addGmstsSubView();
173 
174  void addSkillsSubView();
175 
176  void addClassesSubView();
177 
178  void addFactionsSubView();
179 
180  void addRacesSubView();
181 
182  void addSoundsSubView();
183 
184  void addScriptsSubView();
185 
186  void addRegionsSubView();
187 
188  void addBirthsignsSubView();
189 
190  void addSpellsSubView();
191 
192  void addCellsSubView();
193 
195 
196  void addReferencesSubView();
197 
198  void addRegionMapSubView();
199 
200  void addFiltersSubView();
201 
202  void addTopicsSubView();
203 
204  void addJournalsSubView();
205 
206  void addTopicInfosSubView();
207 
208  void addJournalInfosSubView();
209 
210  void addEnchantmentsSubView();
211 
212  void addBodyPartsSubView();
213 
214  void addSoundGensSubView();
215 
216  void addMagicEffectsSubView();
217 
218  void addMeshesSubView();
219 
220  void addIconsSubView();
221 
222  void addMusicsSubView();
223 
224  void addSoundsResSubView();
225 
226  void addTexturesSubView();
227 
228  void addVideosSubView();
229 
231 
232  void addRunLogSubView();
233 
234  void addLandsSubView();
235 
236  void addLandTexturesSubView();
237 
238  void addPathgridSubView();
239 
240  void addStartScriptsSubView();
241 
242  void addSearchSubView();
243 
244  void addMetaDataSubView();
245 
246  void toggleShowStatusBar (bool show);
247 
248  void loadErrorLog();
249 
250  void run (const std::string& profile, const std::string& startupInstruction = "");
251 
252  void stop();
253 
254  void closeRequest (SubView *subView);
255 
256  void moveScrollBarToEnd(int min, int max);
257 
258  void merge();
259  };
260 }
261 
262 #endif
void merge()
Definition: view.cpp:965
void closeEvent(QCloseEvent *event)
Definition: view.cpp:35
QScrollArea * mScroll
Definition: view.hpp:57
Definition: viewmanager.hpp:30
void addMetaDataSubView()
Definition: view.cpp:867
void addJournalInfosSubView()
Definition: view.cpp:777
void loadDocumentRequest()
void addMeshesSubView()
Definition: view.cpp:797
void setupDebugMenu()
Definition: view.cpp:277
void addTopicInfosSubView()
Definition: view.cpp:772
void save()
Definition: view.cpp:672
void addRacesSubView()
Definition: view.cpp:707
void setupUi()
Definition: view.cpp:332
void addIconsSubView()
Definition: view.cpp:802
void addReferencesSubView()
Definition: view.cpp:747
Definition: subviewfactory.hpp:33
void closeRequest(SubView *subView)
Definition: view.cpp:929
void mergeDocument(CSMDoc::Document *document)
QAction * mVerify
Definition: view.hpp:48
std::vector< QAction * > mEditingActions
Definition: view.hpp:52
void addFactionsSubView()
Definition: view.cpp:702
Operations * mOperations
Definition: view.hpp:53
void addFiltersSubView()
Definition: view.cpp:757
Operations * getOperations() const
Definition: view.cpp:878
static const struct @8 signals[]
Definition: globaldebugprofilemenu.hpp:16
Definition: operations.hpp:14
void resizeViewHeight(int height)
User preference function.
Definition: view.cpp:894
QAction * mShowStatusBar
Definition: view.hpp:49
void addBodyPartsSubView()
Definition: view.cpp:787
Type
Definition: universalid.hpp:40
void addScriptsSubView()
Definition: view.cpp:717
QAction * mSave
Definition: view.hpp:47
void exitApplication()
void addPathgridSubView()
Definition: view.cpp:852
void addClassesSubView()
Definition: view.cpp:697
void addReferenceablesSubView()
Definition: view.cpp:742
void loadErrorLog()
Definition: view.cpp:914
void addStartScriptsSubView()
Definition: view.cpp:857
void run(const std::string &profile, const std::string &startupInstruction="")
Definition: view.cpp:919
void addTopicsSubView()
Definition: view.cpp:762
void settingChanged(const CSMPrefs::Setting *setting)
Definition: view.cpp:631
void updateTitle()
Definition: view.cpp:350
virtual ~View()
Definition: view.cpp:474
void setupCharacterMenu()
Definition: view.cpp:206
QAction * mMerge
Definition: view.hpp:51
void addSpellsSubView()
Definition: view.cpp:732
void setupFileMenu()
Definition: view.cpp:46
int mViewTotal
Definition: view.hpp:43
GlobalDebugProfileMenu * mGlobalDebugProfileMenu
Definition: view.hpp:56
void stop()
Definition: view.cpp:924
void setupShortcut(const char *name, QAction *action)
Definition: view.cpp:344
void addLandsSubView()
Definition: view.cpp:842
bool mScrollbarOnly
Definition: view.hpp:58
void createScrollArea()
Definition: view.cpp:1000
void updateSubViewIndices(SubView *view=NULL)
Definition: view.cpp:373
QList< SubView * > mSubViews
Definition: view.hpp:44
void addDebugProfilesSubView()
Definition: view.cpp:832
void addRunLogSubView()
Definition: view.cpp:837
void updateActions()
Definition: view.cpp:409
void addRegionsSubView()
Definition: view.cpp:722
ViewManager & mViewManager
Definition: view.hpp:40
void setIndex(int viewIndex, int totalViews)
Definition: view.cpp:488
void setupViewMenu()
Definition: view.cpp:131
Definition: view.hpp:36
Definition: subview.hpp:23
void newGameRequest()
void undoActionChanged()
Definition: view.cpp:98
void abortOperation(int type)
Definition: view.cpp:872
Definition: setting.hpp:22
void verify()
Definition: view.cpp:677
void addSoundsResSubView()
Definition: view.cpp:812
void addCellsSubView()
Definition: view.cpp:737
void moveScrollBarToEnd(int min, int max)
Definition: view.cpp:620
void exitApplicationRequest(CSVDoc::View *view)
void toggleShowStatusBar(bool show)
Definition: view.cpp:900
void addGlobalsSubView()
Definition: view.cpp:682
Definition: document.hpp:57
void exit()
Definition: view.cpp:883
QMainWindow mSubViewWindow
Definition: view.hpp:55
QAction * mRedo
Definition: view.hpp:46
void addMagicEffectsSubView()
Definition: view.cpp:817
void addSoundsSubView()
Definition: view.cpp:712
void addTexturesSubView()
Definition: view.cpp:822
void setupAssetsMenu()
Definition: view.cpp:241
QAction * mUndo
Definition: view.hpp:45
int mViewIndex
Definition: view.hpp:42
void updateWidth(bool isGrowLimit, int minSubViewWidth)
Definition: view.cpp:970
void addMusicsSubView()
Definition: view.cpp:807
void addSoundGensSubView()
Definition: view.cpp:792
const CSMDoc::Document * getDocument() const
Definition: view.cpp:478
void editSettingsRequest()
void addSubView(const CSMWorld::UniversalId &id, const std::string &hint="")
Definition: view.cpp:524
void setupWorldMenu()
Definition: view.cpp:149
CSMDoc::Document * mDocument
Definition: view.hpp:41
void addBirthsignsSubView()
Definition: view.cpp:727
void addGmstsSubView()
Definition: view.cpp:687
void toggleStatusBar(bool checked)
Definition: view.cpp:909
void resizeViewWidth(int width)
User preference function.
Definition: view.cpp:888
void setupEditMenu()
Definition: view.cpp:108
void newView()
Definition: view.cpp:667
QAction * createMenuEntry(CSMWorld::UniversalId::Type type, QMenu *menu, const char *shortcutName)
Definition: view.cpp:306
void addJournalsSubView()
Definition: view.cpp:767
void addSkillsSubView()
Definition: view.cpp:692
View & operator=(const View &)
void updateScrollbar()
Definition: view.cpp:942
void updateProgress(int current, int max, int type, int threads)
Definition: view.cpp:519
QAction * mStopDebug
Definition: view.hpp:50
void addLandTexturesSubView()
Definition: view.cpp:847
SubViewFactoryManager mSubViewFactory
Definition: view.hpp:54
void newAddonRequest()
void addRegionMapSubView()
Definition: view.cpp:752
void setupMechanicsMenu()
Definition: view.cpp:180
void addVideosSubView()
Definition: view.cpp:827
void updateDocumentState()
Definition: view.cpp:495
View(const View &)
void addSearchSubView()
Definition: view.cpp:862
void addEnchantmentsSubView()
Definition: view.cpp:782
void redoActionChanged()
Definition: view.cpp:103
const char * name
Definition: crashcatcher.cpp:67
Definition: universalid.hpp:12