umbrello  2.30.80
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 
20 namespace Settings {
21 
22 enum Page
23 {
24  page_general = 0,
25  page_font,
26  page_UI,
27  page_class,
31 };
32 
33 //public structs
34 class GeneralState {
35 public:
36  GeneralState()
37  : undo(false),
38  tabdiagrams(false),
39  newcodegen(false),
40  angularlines(false),
43  autosave(false),
44  time(0),
46  loadlast(false),
49  uml2(false)
50  {
51  }
52 
53  void load();
54  void save();
55 
56  bool undo;
57  bool tabdiagrams;
58  bool newcodegen;
59  bool angularlines;
61  bool footerPrinting;
62  bool autosave;
63  int time;
65  QString autosavesuffix;
66  bool loadlast;
69  QString lastFile;
70  bool uml2;
71 };
72 
73 class UIState {
74 public:
76  : useFillColor(false),
78  {
79  }
80 
81  void load();
82  void save();
83 
84  void saveToXMI1(QDomElement& element);
85  bool loadFromXMI1(QDomElement& element);
86 
87  bool useFillColor;
88  QColor fillColor;
89  QColor lineColor;
90  uint lineWidth;
91  QColor textColor;
92  QFont font;
93  QColor backgroundColor;
94  QColor gridDotColor;
95 };
96 
97 class ClassState {
98 public:
100  : showVisibility(false),
101  showAtts(false),
102  showOps(false),
103  showStereoType(false),
104  showAttSig(false),
105  showOpSig(false),
106  showPackage(false),
108  showDocumentation(false),
109  showPublicOnly(false),
110  defaultAttributeScope(Uml::Visibility::Public),
111  defaultOperationScope(Uml::Visibility::Public)
112  {
113  }
114 
115  void load();
116  void save();
117 
118  void saveToXMI1(QDomElement& element);
119  bool loadFromXMI1(QDomElement& element);
120 
121  bool showVisibility;
122  bool showAtts;
123  bool showOps;
124  bool showStereoType;
125  bool showAttSig;
126  bool showOpSig;
127  bool showPackage;
128  bool showAttribAssocs;
133 };
134 
136 public:
142  forceDoc(false),
144  includeHeadings(false),
147 #ifdef Q_OS_WIN
149 #elif defined(Q_OS_MAC)
151 #else
153 #endif
156  {
157  }
158 
159  void load();
160  void save();
161 
166  bool forceDoc;
167  bool forceSections;
168  QDir headingsDirectory;
169  bool includeHeadings;
176 
178  public:
182  inlineOps(false),
184  publicAccessors(false),
186  vectorIncludeIsGlobal(false),
188  getterWithGetPrefix(false),
191  {
192  }
193 
194  bool autoGenAccessors;
195  bool inlineAccessors;
196  bool inlineOps;
197  bool packageIsNamespace;
198  bool publicAccessors;
199  QString stringClassName;
200  QString stringClassNameInclude;
205  QString docToolTag;
211  };
212 
214  public:
219  {
220  }
221 
224  bool buildANTDocument;
225  };
226 
228  public:
233  {
234  }
235 
238  bool buildANTDocument;
239  };
240 
242  public:
246  {
247  }
248 
251  };
252 
257 };
258 
259 class CodeImportState {
260 public:
262  : createArtifacts(false),
265  {
266  }
267 
268  void load();
269  void save();
270 
271  void saveToXMI1(QDomElement& element);
272  bool loadFromXMI1(QDomElement& element);
273 
274  bool createArtifacts;
275  bool resolveDependencies;
276  bool supportCPP11;
277 };
278 
279 class AutoLayoutState {
280 public:
282  : autoDotPath(false),
284  {
285  }
286 
287  void load();
288  void save();
289 
290  void saveToXMI1(QDomElement& element);
291  bool loadFromXMI1(QDomElement& element);
292 
293  bool autoDotPath;
294  QString dotPath;
295  bool showExportLayout;
296 };
297 
298 class LayoutTypeState {
299 public:
301  : showExportLayout(Uml::LayoutType::Enum::Direct)
302  {
303  }
304 
305  void load();
306  void save();
307 
308  void saveToXMI1(QDomElement& element);
309  bool loadFromXMI1(QDomElement& element);
310 
312 };
313 
314 class OptionState {
315 public:
316  OptionState();
317 
318  void load();
319  void save();
320 
321  void saveToXMI1(QDomElement& element);
322  bool loadFromXMI1(QDomElement& element);
323 
324  static OptionState &instance();
325 
334 };
335 
337 void setOptionState(const OptionState& optstate);
338 
339 } // namespace Settings
340 
341 #endif
Settings::OptionState::uiState
UIState uiState
Definition: optionstate.h:336
Settings::ClassState::showVisibility
bool showVisibility
Definition: optionstate.h:129
Settings::setOptionState
void setOptionState(const OptionState &optstate)
Definition: optionstate.cpp:375
Uml::ModelType::Enum
Enum
Definition: basictypes.h:75
Settings::ClassState::showAttribAssocs
bool showAttribAssocs
Definition: optionstate.h:136
Settings::CodeGenerationState::RubyCodeGenerationState::RubyCodeGenerationState
RubyCodeGenerationState()
Definition: optionstate.h:251
Settings::CodeGenerationState::CPPCodeGenerationState::accessorMethodsStartWithUpperCase
bool accessorMethodsStartWithUpperCase
Definition: optionstate.h:218
Uml::ProgrammingLanguage::Enum
Enum
Definition: basictypes.h:288
Settings::ClassState::load
void load()
Definition: optionstate.cpp:77
Settings::GeneralState::tabdiagrams
bool tabdiagrams
Definition: optionstate.h:65
Settings::UIState::font
QFont font
Definition: optionstate.h:100
Settings::ClassState::showAttSig
bool showAttSig
Definition: optionstate.h:133
Settings::CodeGenerationState::javaCodeGenerationState
JavaCodeGenerationState javaCodeGenerationState
Definition: optionstate.h:263
Settings::CodeGenerationState::indentationType
CodeGenerationPolicy::IndentationType indentationType
Definition: optionstate.h:179
Uml::LayoutType::Enum
Enum
Definition: basictypes.h:161
Settings::CodeImportState::createArtifacts
bool createArtifacts
Definition: optionstate.h:282
Settings::ClassState::showPackage
bool showPackage
Definition: optionstate.h:135
Settings::CodeGenerationState
Definition: optionstate.h:143
Settings::ClassState::showDocumentation
bool showDocumentation
Definition: optionstate.h:137
CodeGenerationPolicy::IndentationType
IndentationType
Definition: codegenerationpolicy.h:49
Settings::page_codegen
@ page_codegen
Definition: optionstate.h:45
Settings::CodeGenerationState::CPPCodeGenerationState
Definition: optionstate.h:185
Settings::ClassState::saveToXMI1
void saveToXMI1(QDomElement &element)
Definition: optionstate.cpp:111
Settings::CodeGenerationState::lineEndingType
CodeGenerationPolicy::NewLineType lineEndingType
Definition: optionstate.h:180
Settings::page_class
@ page_class
Definition: optionstate.h:43
Settings::ClassState::defaultOperationScope
Uml::Visibility::Enum defaultOperationScope
Definition: optionstate.h:140
Settings::ClassState::showPublicOnly
bool showPublicOnly
Definition: optionstate.h:138
Settings::OptionState::layoutTypeState
LayoutTypeState layoutTypeState
Definition: optionstate.h:335
Settings::CodeGenerationState::CPPCodeGenerationState::inlineOps
bool inlineOps
Definition: optionstate.h:204
Settings::UIState::save
void save()
Definition: optionstate.cpp:172
Settings::UIState::textColor
QColor textColor
Definition: optionstate.h:99
Settings::AutoLayoutState::saveToXMI1
void saveToXMI1(QDomElement &element)
Settings::OptionState::loadFromXMI1
bool loadFromXMI1(QDomElement &element)
Definition: optionstate.cpp:422
Settings::CodeGenerationState::CPPCodeGenerationState::publicAccessors
bool publicAccessors
Definition: optionstate.h:206
Settings::CodeGenerationState::CPPCodeGenerationState::classMemberPrefix
QString classMemberPrefix
Definition: optionstate.h:212
Settings::CodeImportState::load
void load()
Definition: optionstate.cpp:236
Settings::LayoutTypeState::saveToXMI1
void saveToXMI1(QDomElement &element)
Settings::AutoLayoutState::load
void load()
Definition: optionstate.cpp:356
Settings::CodeImportState::loadFromXMI1
bool loadFromXMI1(QDomElement &element)
Definition: optionstate.cpp:268
Settings::AutoLayoutState::showExportLayout
bool showExportLayout
flag for display export layout
Definition: optionstate.h:303
Uml::DiagramType::Enum
Enum
Definition: basictypes.h:94
Settings::ClassState::defaultAttributeScope
Uml::Visibility::Enum defaultAttributeScope
Definition: optionstate.h:139
Settings::GeneralState::layoutType
Uml::LayoutType::Enum layoutType
Definition: optionstate.h:68
Settings::CodeGenerationState::indentationAmount
int indentationAmount
Definition: optionstate.h:178
Settings::ClassState::ClassState
ClassState()
Definition: optionstate.h:107
Settings::ClassState::loadFromXMI1
bool loadFromXMI1(QDomElement &element)
Definition: optionstate.cpp:133
Settings::CodeGenerationState::overwritePolicy
CodeGenerationPolicy::OverwritePolicy overwritePolicy
Definition: optionstate.h:183
Settings::CodeImportState::saveToXMI1
void saveToXMI1(QDomElement &element)
Definition: optionstate.cpp:255
Settings::GeneralState::newcodegen
bool newcodegen
Definition: optionstate.h:66
Settings::GeneralState::diagram
Uml::DiagramType::Enum diagram
Definition: optionstate.h:75
Settings::CodeGenerationState::CPPCodeGenerationState::autoGenAccessors
bool autoGenAccessors
Definition: optionstate.h:202
Settings::OptionState::generalState
GeneralState generalState
Definition: optionstate.h:334
Settings::page_font
@ page_font
Definition: optionstate.h:41
Settings::CodeGenerationState::forceSections
bool forceSections
Definition: optionstate.h:175
Settings::OptionState::save
void save()
Definition: optionstate.cpp:395
Settings::CodeGenerationState::JavaCodeGenerationState
Definition: optionstate.h:235
Settings::CodeGenerationState::DCodeGenerationState::autoGenerateAttributeAccessors
bool autoGenerateAttributeAccessors
Definition: optionstate.h:230
Settings::UIState::backgroundColor
QColor backgroundColor
Definition: optionstate.h:101
Settings::GeneralState::load
void load()
Definition: optionstate.cpp:28
Settings::CodeGenerationState::defaultAttributeAccessorScope
Uml::Visibility::Enum defaultAttributeAccessorScope
Definition: optionstate.h:173
Settings::page_UI
@ page_UI
Definition: optionstate.h:42
Uml::LayoutType::Undefined
@ Undefined
Definition: basictypes.h:162
optionstate.h
Settings::CodeGenerationState::CPPCodeGenerationState::stringClassName
QString stringClassName
Definition: optionstate.h:207
Settings::OptionState::codeGenerationState
CodeGenerationState codeGenerationState
Definition: optionstate.h:339
CodeGenerationPolicy::CommentStyle
CommentStyle
Definition: codegenerationpolicy.h:50
Settings::optionState
OptionState & optionState()
Definition: optionstate.cpp:370
Settings::OptionState::OptionState
OptionState()
Definition: optionstate.cpp:380
Settings::CodeGenerationState::RubyCodeGenerationState::autoGenerateAssocAccessors
bool autoGenerateAssocAccessors
Definition: optionstate.h:258
Settings::CodeGenerationState::CPPCodeGenerationState::packageIsNamespace
bool packageIsNamespace
Definition: optionstate.h:205
Settings::AutoLayoutState::dotPath
QString dotPath
path to dot executable
Definition: optionstate.h:302
Settings::UIState::lineColor
QColor lineColor
Definition: optionstate.h:97
Settings::LayoutTypeState::save
void save()
Settings::CodeImportState::CodeImportState
CodeImportState()
Definition: optionstate.h:269
Settings::CodeGenerationState::CPPCodeGenerationState::stringClassNameInclude
QString stringClassNameInclude
Definition: optionstate.h:208
Settings::UIState::gridDotColor
QColor gridDotColor
Definition: optionstate.h:102
Uml::Visibility::Public
@ Public
Definition: basictypes.h:77
Settings::CodeGenerationState::outputDirectory
QDir outputDirectory
Definition: optionstate.h:182
Settings::CodeGenerationState::CPPCodeGenerationState::docToolTag
QString docToolTag
Definition: optionstate.h:213
Settings::GeneralState::GeneralState
GeneralState()
Definition: optionstate.h:44
Settings::GeneralState::angularlines
bool angularlines
Definition: optionstate.h:67
Settings::GeneralState::autosave
bool autosave
Definition: optionstate.h:70
Settings::CodeGenerationState::DCodeGenerationState::buildANTDocument
bool buildANTDocument
Definition: optionstate.h:232
Settings::CodeGenerationState::RubyCodeGenerationState::autoGenerateAttributeAccessors
bool autoGenerateAttributeAccessors
Definition: optionstate.h:257
Settings::OptionState::saveToXMI1
void saveToXMI1(QDomElement &element)
Definition: optionstate.cpp:410
Settings::OptionState::autoLayoutState
AutoLayoutState autoLayoutState
Definition: optionstate.h:341
Uml::LayoutType::Direct
@ Direct
Definition: basictypes.h:163
Settings::CodeGenerationState::load
void load()
Definition: optionstate.cpp:280
Settings::CodeGenerationState::modnamePolicy
CodeGenerationPolicy::ModifyNamePolicy modnamePolicy
Definition: optionstate.h:181
Settings::UIState
Definition: optionstate.h:81
Settings::UIState::useFillColor
bool useFillColor
Definition: optionstate.h:95
Settings::ClassState::showOpSig
bool showOpSig
Definition: optionstate.h:134
Settings::UIState::loadFromXMI1
bool loadFromXMI1(QDomElement &element)
Definition: optionstate.cpp:206
basictypes.h
Settings::LayoutTypeState::load
void load()
codegenerationpolicy.h
Settings::AutoLayoutState::autoDotPath
bool autoDotPath
determine path to dot executable automatically
Definition: optionstate.h:301
CodeGenerationPolicy::OverwritePolicy
OverwritePolicy
Definition: codegenerationpolicy.h:46
CodeGenerationPolicy
Definition: codegenerationpolicy.h:29
Settings::GeneralState::uml2
bool uml2
Definition: optionstate.h:78
Settings::UIState::saveToXMI1
void saveToXMI1(QDomElement &element)
Definition: optionstate.cpp:188
Uml::ProgrammingLanguage::Cpp
@ Cpp
Definition: basictypes.h:291
Settings::ClassState::showOps
bool showOps
Definition: optionstate.h:131
Settings::AutoLayoutState
Definition: optionstate.h:287
Settings::CodeGenerationState::CPPCodeGenerationState::getterWithGetPrefix
bool getterWithGetPrefix
Definition: optionstate.h:216
Settings::ClassState::showStereoType
bool showStereoType
Definition: optionstate.h:132
Settings::UIState::lineWidth
uint lineWidth
Definition: optionstate.h:98
Settings::GeneralState::autosavetime
int autosavetime
Definition: optionstate.h:72
Settings::CodeGenerationState::includeHeadings
bool includeHeadings
Definition: optionstate.h:177
Settings::CodeGenerationState::CPPCodeGenerationState::CPPCodeGenerationState
CPPCodeGenerationState()
Definition: optionstate.h:187
Settings::GeneralState::footerPrinting
bool footerPrinting
Definition: optionstate.h:69
Settings::CodeImportState
Definition: optionstate.h:267
Settings::UIState::load
void load()
Definition: optionstate.cpp:160
Settings::CodeGenerationState::autoGenEmptyConstructors
bool autoGenEmptyConstructors
Definition: optionstate.h:170
Settings::CodeGenerationState::CPPCodeGenerationState::removePrefixFromAccessorMethods
bool removePrefixFromAccessorMethods
Definition: optionstate.h:217
CodeGenerationPolicy::ModifyNamePolicy
ModifyNamePolicy
Definition: codegenerationpolicy.h:47
Settings::GeneralState::lastFile
QString lastFile
Definition: optionstate.h:77
Uml
Definition: basictypes.cpp:36
Settings::CodeGenerationState::RubyCodeGenerationState
Definition: optionstate.h:249
Settings::page_general
@ page_general
Definition: optionstate.h:40
Settings::CodeGenerationState::DCodeGenerationState
Definition: optionstate.h:221
Settings::CodeViewerState::save
void save()
Definition: codeviewerstate.cpp:41
Settings::CodeGenerationState::commentStyle
CodeGenerationPolicy::CommentStyle commentStyle
Definition: optionstate.h:171
Uml::Visibility::Enum
Enum
Definition: basictypes.h:76
Settings
Definition: codeviewerstate.cpp:15
Settings::LayoutTypeState
Definition: optionstate.h:306
Settings::OptionState
Definition: optionstate.h:322
Settings::CodeGenerationState::DCodeGenerationState::DCodeGenerationState
DCodeGenerationState()
Definition: optionstate.h:223
Uml::DiagramType::Class
@ Class
Definition: basictypes.h:98
Settings::GeneralState::autosavesuffix
QString autosavesuffix
Text input field for suffix of autosave.
Definition: optionstate.h:73
Settings::OptionState::classState
ClassState classState
Definition: optionstate.h:337
Settings::CodeGenerationState::CPPCodeGenerationState::inlineAccessors
bool inlineAccessors
Definition: optionstate.h:203
Settings::CodeGenerationState::CPPCodeGenerationState::vectorClassNameInclude
QString vectorClassNameInclude
Definition: optionstate.h:211
Settings::CodeGenerationState::cppCodeGenerationState
CPPCodeGenerationState cppCodeGenerationState
Definition: optionstate.h:261
Settings::AutoLayoutState::AutoLayoutState
AutoLayoutState()
Definition: optionstate.h:289
Settings::AutoLayoutState::loadFromXMI1
bool loadFromXMI1(QDomElement &element)
Settings::OptionState::load
void load()
Definition: optionstate.cpp:384
Settings::GeneralState
Definition: optionstate.h:42
Settings::page_codeimport
@ page_codeimport
Definition: optionstate.h:44
CodeGenerationPolicy::NewLineType
NewLineType
Definition: codegenerationpolicy.h:48
Settings::CodeGenerationState::CPPCodeGenerationState::vectorIncludeIsGlobal
bool vectorIncludeIsGlobal
Definition: optionstate.h:214
codeviewerstate.h
Settings::GeneralState::defaultLanguage
Uml::ProgrammingLanguage::Enum defaultLanguage
Definition: optionstate.h:76
Settings::page_codeview
@ page_codeview
Definition: optionstate.h:46
Settings::OptionState::instance
static OptionState & instance()
Definition: optionstate.cpp:430
Settings::CodeGenerationState::JavaCodeGenerationState::buildANTDocument
bool buildANTDocument
Definition: optionstate.h:246
Settings::GeneralState::save
void save()
Definition: optionstate.cpp:60
Settings::CodeGenerationState::defaultAssocFieldScope
Uml::Visibility::Enum defaultAssocFieldScope
Definition: optionstate.h:172
Settings::GeneralState::time
int time
old autosave time, kept for compatibility
Definition: optionstate.h:71
Settings::CodeGenerationState::JavaCodeGenerationState::autoGenerateAttributeAccessors
bool autoGenerateAttributeAccessors
Definition: optionstate.h:244
Settings::CodeGenerationState::CPPCodeGenerationState::stringIncludeIsGlobal
bool stringIncludeIsGlobal
Definition: optionstate.h:209
Settings::AutoLayoutState::save
void save()
Definition: optionstate.cpp:363
Settings::Page
Page
Definition: optionstate.h:30
Settings::CodeGenerationState::forceDoc
bool forceDoc
Definition: optionstate.h:174
Settings::OptionState::codeViewerState
CodeViewerState codeViewerState
Definition: optionstate.h:338
Settings::GeneralState::undo
bool undo
Definition: optionstate.h:64
Settings::GeneralState::loadlast
bool loadlast
Definition: optionstate.h:74
Settings::UIState::fillColor
QColor fillColor
Definition: optionstate.h:96
Settings::ClassState::showAtts
bool showAtts
Definition: optionstate.h:130
Settings::CodeImportState::supportCPP11
bool supportCPP11
Definition: optionstate.h:284
Settings::CodeViewerState
configurable params for the code viewer tool
Definition: codeviewerstate.h:28
Settings::LayoutTypeState::loadFromXMI1
bool loadFromXMI1(QDomElement &element)
Settings::LayoutTypeState::LayoutTypeState
LayoutTypeState()
Definition: optionstate.h:308
Settings::CodeViewerState::load
void load()
Definition: codeviewerstate.cpp:25
Settings::ClassState::save
void save()
Definition: optionstate.cpp:92
Settings::CodeGenerationState::CPPCodeGenerationState::virtualDestructors
bool virtualDestructors
Definition: optionstate.h:215
Settings::LayoutTypeState::showExportLayout
Uml::LayoutType::Enum showExportLayout
flag for display export layout
Definition: optionstate.h:319
Settings::CodeImportState::save
void save()
Definition: optionstate.cpp:244
Settings::UIState::UIState
UIState()
Definition: optionstate.h:83
Settings::CodeGenerationState::dCodeGenerationState
DCodeGenerationState dCodeGenerationState
Definition: optionstate.h:262
Settings::CodeGenerationState::rubyCodeGenerationState
RubyCodeGenerationState rubyCodeGenerationState
Definition: optionstate.h:264
Settings::CodeImportState::resolveDependencies
bool resolveDependencies
Definition: optionstate.h:283
Settings::CodeGenerationState::DCodeGenerationState::autoGenerateAssocAccessors
bool autoGenerateAssocAccessors
Definition: optionstate.h:231
Settings::ClassState
Definition: optionstate.h:105
Settings::CodeGenerationState::headingsDirectory
QDir headingsDirectory
Definition: optionstate.h:176
Settings::CodeGenerationState::JavaCodeGenerationState::autoGenerateAssocAccessors
bool autoGenerateAssocAccessors
Definition: optionstate.h:245
Settings::OptionState::codeImportState
CodeImportState codeImportState
Definition: optionstate.h:340
Settings::CodeGenerationState::JavaCodeGenerationState::JavaCodeGenerationState
JavaCodeGenerationState()
Definition: optionstate.h:237
Settings::CodeGenerationState::save
void save()
Definition: optionstate.cpp:313
Settings::CodeGenerationState::CPPCodeGenerationState::vectorClassName
QString vectorClassName
Definition: optionstate.h:210
Settings::CodeGenerationState::CodeGenerationState
CodeGenerationState()
Definition: optionstate.h:145