umbrello  2.31.90
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
optionstate.h
Go to the documentation of this file.
1 /***************************************************************************
2  * This program is free software; you can redistribute it and/or modify *
3  * it under the terms of the GNU General Public License as published by *
4  * the Free Software Foundation; either version 2 of the License, or *
5  * (at your option) any later version. *
6  * *
7  * copyright (C) 2002-2020 *
8  * Umbrello UML Modeller Authors <umbrello-devel@kde.org> *
9  ***************************************************************************/
10 
11 #ifndef OPTIONSTATE_H
12 #define OPTIONSTATE_H
13 
14 #include "basictypes.h"
15 #include "codeviewerstate.h"
16 #include "codegenerationpolicy.h"
17 
18 #include <QDomElement>
19 #include <QXmlStreamWriter>
20 
21 namespace Settings {
22 
23 enum Page
24 {
32 };
33 
34 //public structs
35 class GeneralState {
36 public:
38  : undo(false),
39  tabdiagrams(false),
40  newcodegen(false),
41  angularlines(false),
42  layoutType(Uml::LayoutType::Undefined),
43  footerPrinting(false),
44  autosave(false),
45  time(0),
46  autosavetime(0),
47  loadlast(false),
48  diagram(Uml::DiagramType::Class),
49  defaultLanguage(Uml::ProgrammingLanguage::Cpp),
50  uml2(false)
51  {
52  }
53 
54  void load();
55  void save();
56 
57  bool undo;
59  bool newcodegen;
63  bool autosave;
64  int time;
66  QString autosavesuffix;
67  bool loadlast;
70  QString lastFile;
71  bool uml2;
72 };
73 
74 class UIState {
75 public:
77  : useFillColor(false),
78  lineWidth(0)
79  {
80  }
81 
82  void load();
83  void save();
84 
85  void saveToXMI1(QXmlStreamWriter& writer);
86  bool loadFromXMI1(QDomElement& element);
87 
89  QColor fillColor;
90  QColor lineColor;
91  uint lineWidth;
92  QColor textColor;
93  QFont font;
95  QColor gridDotColor;
96 };
97 
98 class ClassState {
99 public:
101  : showVisibility(false),
102  showAtts(false),
103  showOps(false),
104  showStereoType(Uml::ShowStereoType::None),
105  showAttSig(false),
106  showOpSig(false),
107  showPackage(false),
108  showAttribAssocs(false),
109  showDocumentation(false),
110  showPublicOnly(false),
111  defaultAttributeScope(Uml::Visibility::Public),
112  defaultOperationScope(Uml::Visibility::Public)
113  {
114  }
115 
116  void load();
117  void save();
118 
119  void saveToXMI1(QXmlStreamWriter& writer);
120  bool loadFromXMI1(QDomElement& element);
121 
123  bool showAtts;
124  bool showOps;
127  bool showOpSig;
134 };
135 
137 public:
139  : autoGenEmptyConstructors(false),
140  commentStyle(CodeGenerationPolicy::SingleLine),
141  defaultAssocFieldScope(Uml::Visibility::Public),
143  forceDoc(false),
144  forceSections(false),
145  includeHeadings(false),
146  indentationAmount(false),
148 #ifdef Q_OS_WIN
150 #elif defined(Q_OS_MAC)
152 #else
154 #endif
157  {
158  }
159 
160  void load();
161  void save();
162 
167  bool forceDoc;
177 
179  public:
181  : autoGenAccessors(false),
182  inlineAccessors(false),
183  inlineOps(false),
184  packageIsNamespace(false),
185  publicAccessors(false),
186  stringIncludeIsGlobal(false),
187  vectorIncludeIsGlobal(false),
188  virtualDestructors(false),
189  getterWithGetPrefix(false),
192  {
193  }
194 
197  bool inlineOps;
206  QString docToolTag;
212  };
213 
215  public:
219  buildANTDocument(false)
220  {
221  }
222 
226  };
227 
229  public:
233  buildANTDocument(false)
234  {
235  }
236 
240  };
241 
243  public:
247  {
248  }
249 
252  };
253 
258 };
259 
261 public:
263  : createArtifacts(false),
264  resolveDependencies(false),
265  supportCPP11(true)
266  {
267  }
268 
269  void load();
270  void save();
271 
272  void saveToXMI1(QXmlStreamWriter& writer);
273  bool loadFromXMI1(QDomElement& element);
274 
278 };
279 
281 public:
283  : autoDotPath(false),
284  showExportLayout(false)
285  {
286  }
287 
288  void load();
289  void save();
290 
291  void saveToXMI1(QXmlStreamWriter& writer);
292  bool loadFromXMI1(QDomElement& element);
293 
294  bool autoDotPath;
295  QString dotPath;
297 };
298 
300 public:
302  : showExportLayout(Uml::LayoutType::Enum::Direct)
303  {
304  }
305 
306  void load();
307  void save();
308 
309  void saveToXMI1(QXmlStreamWriter& writer);
310  bool loadFromXMI1(QDomElement& element);
311 
313 };
314 
315 class OptionState {
316 public:
317  OptionState();
318 
319  void load();
320  void save();
321 
322  void saveToXMI1(QXmlStreamWriter& writer);
323  bool loadFromXMI1(QDomElement& element);
324 
325  static OptionState &instance();
326 
335 };
336 
338 void setOptionState(const OptionState& optstate);
339 
340 } // namespace Settings
341 
342 #endif
Definition: codegenerationpolicy.h:30
ModifyNamePolicy
Definition: codegenerationpolicy.h:47
NewLineType
Definition: codegenerationpolicy.h:48
IndentationType
Definition: codegenerationpolicy.h:49
OverwritePolicy
Definition: codegenerationpolicy.h:46
CommentStyle
Definition: codegenerationpolicy.h:50
Definition: optionstate.h:280
bool autoDotPath
determine path to dot executable automatically
Definition: optionstate.h:294
QString dotPath
path to dot executable
Definition: optionstate.h:295
void save()
Definition: optionstate.cpp:355
void saveToXMI1(QXmlStreamWriter &writer)
bool showExportLayout
flag for display export layout
Definition: optionstate.h:296
AutoLayoutState()
Definition: optionstate.h:282
bool loadFromXMI1(QDomElement &element)
void load()
Definition: optionstate.cpp:348
Definition: optionstate.h:98
bool showAttribAssocs
Definition: optionstate.h:129
bool showDocumentation
Definition: optionstate.h:130
bool showPublicOnly
Definition: optionstate.h:131
void load()
Definition: optionstate.cpp:69
bool showVisibility
Definition: optionstate.h:122
Uml::Visibility::Enum defaultAttributeScope
Definition: optionstate.h:132
bool showAtts
Definition: optionstate.h:123
bool showAttSig
Definition: optionstate.h:126
Uml::Visibility::Enum defaultOperationScope
Definition: optionstate.h:133
bool showOpSig
Definition: optionstate.h:127
bool showOps
Definition: optionstate.h:124
ClassState()
Definition: optionstate.h:100
void saveToXMI1(QXmlStreamWriter &writer)
Definition: optionstate.cpp:103
bool loadFromXMI1(QDomElement &element)
Definition: optionstate.cpp:125
void save()
Definition: optionstate.cpp:84
Uml::ShowStereoType::Enum showStereoType
Definition: optionstate.h:125
bool showPackage
Definition: optionstate.h:128
QString vectorClassName
Definition: optionstate.h:203
bool autoGenAccessors
Definition: optionstate.h:195
CPPCodeGenerationState()
Definition: optionstate.h:180
bool accessorMethodsStartWithUpperCase
Definition: optionstate.h:211
bool vectorIncludeIsGlobal
Definition: optionstate.h:207
bool publicAccessors
Definition: optionstate.h:199
QString vectorClassNameInclude
Definition: optionstate.h:204
QString stringClassNameInclude
Definition: optionstate.h:201
bool virtualDestructors
Definition: optionstate.h:208
QString classMemberPrefix
Definition: optionstate.h:205
bool packageIsNamespace
Definition: optionstate.h:198
bool stringIncludeIsGlobal
Definition: optionstate.h:202
bool inlineOps
Definition: optionstate.h:197
QString stringClassName
Definition: optionstate.h:200
bool inlineAccessors
Definition: optionstate.h:196
bool removePrefixFromAccessorMethods
Definition: optionstate.h:210
QString docToolTag
Definition: optionstate.h:206
bool getterWithGetPrefix
Definition: optionstate.h:209
bool buildANTDocument
Definition: optionstate.h:225
DCodeGenerationState()
Definition: optionstate.h:216
bool autoGenerateAttributeAccessors
Definition: optionstate.h:223
bool autoGenerateAssocAccessors
Definition: optionstate.h:224
bool autoGenerateAttributeAccessors
Definition: optionstate.h:237
bool autoGenerateAssocAccessors
Definition: optionstate.h:238
JavaCodeGenerationState()
Definition: optionstate.h:230
bool buildANTDocument
Definition: optionstate.h:239
bool autoGenerateAssocAccessors
Definition: optionstate.h:251
bool autoGenerateAttributeAccessors
Definition: optionstate.h:250
RubyCodeGenerationState()
Definition: optionstate.h:244
Definition: optionstate.h:136
JavaCodeGenerationState javaCodeGenerationState
Definition: optionstate.h:256
CodeGenerationPolicy::NewLineType lineEndingType
Definition: optionstate.h:173
bool autoGenEmptyConstructors
Definition: optionstate.h:163
CodeGenerationState()
Definition: optionstate.h:138
RubyCodeGenerationState rubyCodeGenerationState
Definition: optionstate.h:257
bool forceSections
Definition: optionstate.h:168
QDir headingsDirectory
Definition: optionstate.h:169
int indentationAmount
Definition: optionstate.h:171
bool forceDoc
Definition: optionstate.h:167
DCodeGenerationState dCodeGenerationState
Definition: optionstate.h:255
void load()
Definition: optionstate.cpp:272
QDir outputDirectory
Definition: optionstate.h:175
bool includeHeadings
Definition: optionstate.h:170
Uml::Visibility::Enum defaultAssocFieldScope
Definition: optionstate.h:165
CodeGenerationPolicy::ModifyNamePolicy modnamePolicy
Definition: optionstate.h:174
Uml::Visibility::Enum defaultAttributeAccessorScope
Definition: optionstate.h:166
CodeGenerationPolicy::CommentStyle commentStyle
Definition: optionstate.h:164
CodeGenerationPolicy::IndentationType indentationType
Definition: optionstate.h:172
CPPCodeGenerationState cppCodeGenerationState
Definition: optionstate.h:254
CodeGenerationPolicy::OverwritePolicy overwritePolicy
Definition: optionstate.h:176
void save()
Definition: optionstate.cpp:305
Definition: optionstate.h:260
bool createArtifacts
Definition: optionstate.h:275
bool loadFromXMI1(QDomElement &element)
Definition: optionstate.cpp:260
void save()
Definition: optionstate.cpp:236
void load()
Definition: optionstate.cpp:228
bool supportCPP11
Definition: optionstate.h:277
bool resolveDependencies
Definition: optionstate.h:276
void saveToXMI1(QXmlStreamWriter &writer)
Definition: optionstate.cpp:247
CodeImportState()
Definition: optionstate.h:262
configurable params for the code viewer tool
Definition: codeviewerstate.h:20
Definition: optionstate.h:35
bool undo
Definition: optionstate.h:57
int autosavetime
Definition: optionstate.h:65
bool angularlines
Definition: optionstate.h:60
QString autosavesuffix
Text input field for suffix of autosave.
Definition: optionstate.h:66
bool autosave
Definition: optionstate.h:63
QString lastFile
Definition: optionstate.h:70
bool newcodegen
Definition: optionstate.h:59
void save()
Definition: optionstate.cpp:52
bool tabdiagrams
Definition: optionstate.h:58
Uml::LayoutType::Enum layoutType
Definition: optionstate.h:61
bool loadlast
Definition: optionstate.h:67
int time
old autosave time, kept for compatibility
Definition: optionstate.h:64
void load()
Definition: optionstate.cpp:20
bool uml2
Definition: optionstate.h:71
Uml::ProgrammingLanguage::Enum defaultLanguage
Definition: optionstate.h:69
GeneralState()
Definition: optionstate.h:37
bool footerPrinting
Definition: optionstate.h:62
Uml::DiagramType::Enum diagram
Definition: optionstate.h:68
Definition: optionstate.h:299
LayoutTypeState()
Definition: optionstate.h:301
bool loadFromXMI1(QDomElement &element)
Uml::LayoutType::Enum showExportLayout
flag for display export layout
Definition: optionstate.h:312
void saveToXMI1(QXmlStreamWriter &writer)
Definition: optionstate.h:315
ClassState classState
Definition: optionstate.h:330
CodeImportState codeImportState
Definition: optionstate.h:333
CodeViewerState codeViewerState
Definition: optionstate.h:331
bool loadFromXMI1(QDomElement &element)
Definition: optionstate.cpp:414
void saveToXMI1(QXmlStreamWriter &writer)
Definition: optionstate.cpp:402
CodeGenerationState codeGenerationState
Definition: optionstate.h:332
LayoutTypeState layoutTypeState
Definition: optionstate.h:328
GeneralState generalState
Definition: optionstate.h:327
void load()
Definition: optionstate.cpp:376
static OptionState & instance()
Definition: optionstate.cpp:422
AutoLayoutState autoLayoutState
Definition: optionstate.h:334
OptionState()
Definition: optionstate.cpp:372
UIState uiState
Definition: optionstate.h:329
void save()
Definition: optionstate.cpp:387
Definition: optionstate.h:74
QColor gridDotColor
Definition: optionstate.h:95
QColor lineColor
Definition: optionstate.h:90
UIState()
Definition: optionstate.h:76
uint lineWidth
Definition: optionstate.h:91
QColor backgroundColor
Definition: optionstate.h:94
void load()
Definition: optionstate.cpp:152
QColor textColor
Definition: optionstate.h:92
bool loadFromXMI1(QDomElement &element)
Definition: optionstate.cpp:198
QColor fillColor
Definition: optionstate.h:89
bool useFillColor
Definition: optionstate.h:88
void saveToXMI1(QXmlStreamWriter &writer)
Definition: optionstate.cpp:180
void save()
Definition: optionstate.cpp:164
QFont font
Definition: optionstate.h:93
Definition: codeviewerstate.cpp:15
OptionState & optionState()
Definition: optionstate.cpp:362
void setOptionState(const OptionState &optstate)
Definition: optionstate.cpp:367
Page
Definition: optionstate.h:24
@ page_UI
Definition: optionstate.h:27
@ page_codeimport
Definition: optionstate.h:29
@ page_codegen
Definition: optionstate.h:30
@ page_class
Definition: optionstate.h:28
@ page_codeview
Definition: optionstate.h:31
@ page_font
Definition: optionstate.h:26
@ page_general
Definition: optionstate.h:25
Enum
Definition: basictypes.h:77
@ Undefined
Definition: basictypes.h:80
@ Class
Definition: basictypes.h:81
Enum
Definition: basictypes.h:144
@ Direct
Definition: basictypes.h:146
Enum
Definition: basictypes.h:41
Enum
Definition: basictypes.h:305
@ Cpp
Definition: basictypes.h:308
Enum
Definition: basictypes.h:162
@ None
no display of stereotype
Definition: basictypes.h:163
Enum
Definition: basictypes.h:59
@ Public
Definition: basictypes.h:60
Definition: basictypes.cpp:37