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