umbrello  2.35.1
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
settingsdialog.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 #ifndef SETTINGSDIALOG_H
6 #define SETTINGSDIALOG_H
7 
8 // app includes
9 #include "multipagedialogbase.h"
10 #include "optionstate.h"
11 
12 // kde includes
13 #include <kcombobox.h>
14 #include <kcolorbutton.h>
15 #include <klineedit.h>
16 
18 class ClassOptionsPage;
20 class CodeGenOptionsPage;
22 class DontAskAgainWidget;
23 class GeneralOptionPage;
24 class KColorButton;
25 class KFontChooser;
26 #if QT_VERSION < 0x050000
27 class KIntSpinBox;
28 #endif
29 class UIOptionsPage;
30 
31 class QCheckBox;
32 #if QT_VERSION >= 0x050000
33 class QFontDialog;
34 #endif
35 class QGroupBox;
36 #if QT_VERSION >= 0x050000
37 class QSpinBox;
38 #endif
39 class UMLWidgetStylePage;
40 
47 {
48  Q_OBJECT
49 
50 public:
51  SettingsDialog(QWidget * parent, Settings::OptionState *state);
53 
54  void setCurrentPage(PageType page);
55 
56  //public methods
57  bool getChangesApplied() const {
58  return m_bChangesApplied;
59  }
60 
61  QString getCodeGenerationLanguage();
62 
63 protected:
64 
65 private:
66  //private structs
67  struct UIWidgets {
68  QCheckBox * rightToLeftUI;
69  QGroupBox * colorGB;
70 
71  QCheckBox * textColorCB;
72  QCheckBox * lineColorCB;
73  QCheckBox * fillColorCB;
74  QCheckBox * lineWidthCB;
75  QCheckBox * gridColorCB;
76  QCheckBox * bgColorCB;
77 
78  KColorButton * textColorB;
79  KColorButton * lineColorB;
80  KColorButton * fillColorB;
81  KColorButton * gridColorB;
82  KColorButton * bgColorB;
83 #if QT_VERSION >= 0x050000
84  QSpinBox * lineWidthB;
85 #else
86  KIntSpinBox * lineWidthB;
87 #endif
88  QCheckBox * useFillColorCB;
89  }
90  ;//end struct UIWidgets
91 
92  //private methods
93  void setupUIPage();
94  void setupGeneralPage();
95  void setupClassPage();
96  void setupCodeImportPage();
97  void setupCodeGenPage();
99  void setupAutoLayoutPage();
100  void applyPage(KPageWidgetItem*);
101 
102  //private attributes
113 
117 
118 private slots:
119  void slotApply();
120  void slotOk();
121  void slotDefault();
122 };
123 
124 #endif
DontAskAgainWidget
Definition: dontaskagain.h:61
settingsdialog.h
Settings::OptionState::uiState
UIState uiState
Definition: optionstate.h:324
SettingsDialog::m_pCodeImportPage
CodeImportOptionsPage * m_pCodeImportPage
Definition: settingsdialog.h:107
Icon_Utils::it_Properties_Class
@ it_Properties_Class
Definition: icon_utils.h:62
UIOptionsPage::setDefaults
void setDefaults()
Definition: uioptionspage.cpp:155
SettingsDialog::setupUIPage
void setupUIPage()
Definition: settingsdialog.cpp:106
SettingsDialog::UIWidgets::lineWidthCB
QCheckBox * lineWidthCB
Definition: settingsdialog.h:74
Icon_Utils::it_Properties_UserInterface
@ it_Properties_UserInterface
Definition: icon_utils.h:61
SettingsDialog::m_pCodeGenPage
CodeGenOptionsPage * m_pCodeGenPage
Definition: settingsdialog.h:108
SettingsDialog::UIWidgets::lineWidthB
KIntSpinBox * lineWidthB
Definition: settingsdialog.h:86
SettingsDialog::pageFont
KPageWidgetItem * pageFont
Definition: settingsdialog.h:115
Icon_Utils::it_Properties_CodeImport
@ it_Properties_CodeImport
Definition: icon_utils.h:63
Settings::UIState::font
QFont font
Definition: optionstate.h:88
SettingsDialog
Definition: settingsdialog.h:46
SettingsDialog::setupCodeImportPage
void setupCodeImportPage()
Definition: settingsdialog.cpp:129
SettingsDialog::UIWidgets
Definition: settingsdialog.h:67
MultiPageDialogBase::UserInterfacePage
@ UserInterfacePage
Definition: multipagedialogbase.h:60
SettingsDialog::getCodeGenerationLanguage
QString getCodeGenerationLanguage()
Definition: settingsdialog.cpp:263
UMLWidgetStylePage
Definition: umlwidgetstylepage.h:32
MultiPageDialogBase::setCurrentPage
void setCurrentPage(KPageWidgetItem *page)
Definition: multipagedialogbase.cpp:201
CodeImportOptionsPage::setDefaults
void setDefaults()
Definition: codeimportoptionspage.cpp:39
DontAskAgainHandler::createWidget
DontAskAgainWidget * createWidget()
Definition: dontaskagain.cpp:128
ClassOptionsPage::setDefaults
void setDefaults()
Definition: classoptionspage.cpp:90
ClassOptionsPage::apply
void apply()
Definition: classoptionspage.cpp:110
AutoLayoutOptionPage
Definition: autolayoutoptionpage.h:19
GeneralOptionPage::apply
void apply()
Definition: generaloptionpage.cpp:193
classoptionspage.h
SettingsDialog::m_bChangesApplied
bool m_bChangesApplied
Definition: settingsdialog.h:114
multipagedialogbase.h
SettingsDialog::pageAutoLayout
KPageWidgetItem * pageAutoLayout
Definition: settingsdialog.h:116
SettingsDialog::setupClassPage
void setupClassPage()
Definition: settingsdialog.cpp:122
ClassOptionsPage
A dialog page to display the class related options.
Definition: classoptionspage.h:34
SettingsDialog::UIWidgets::textColorB
KColorButton * textColorB
Definition: settingsdialog.h:78
SettingsDialog::pageGeneral
KPageWidgetItem * pageGeneral
Definition: settingsdialog.h:116
MultiPageDialogBase::FontPage
@ FontPage
Definition: multipagedialogbase.h:58
umbrellosettings.h
codegenoptionspage.h
codevieweroptionspage.h
SettingsDialog::UIWidgets::fillColorCB
QCheckBox * fillColorCB
Definition: settingsdialog.h:73
SettingsDialog::m_dontAskAgainWidget
DontAskAgainWidget * m_dontAskAgainWidget
Definition: settingsdialog.h:103
SettingsDialog::setupGeneralPage
void setupGeneralPage()
Definition: settingsdialog.cpp:113
SettingsDialog::m_pAutoLayoutPage
AutoLayoutOptionPage * m_pAutoLayoutPage
Definition: settingsdialog.h:106
MultiPageDialogBase::accept
void accept()
Definition: multipagedialogbase.cpp:168
SettingsDialog::pageCodeViewer
KPageWidgetItem * pageCodeViewer
Definition: settingsdialog.h:115
Icon_Utils::it_Properties_CodeGeneration
@ it_Properties_CodeGeneration
Definition: icon_utils.h:64
CodeViewerOptionsPage::getOptions
Settings::CodeViewerState getOptions()
Definition: codevieweroptionspage.cpp:52
Settings::OptionState::save
void save()
Definition: optionstate.cpp:382
CodeViewerOptionsPage::apply
void apply()
Definition: codevieweroptionspage.cpp:38
MultiPageDialogBase::resetFontPage
void resetFontPage(QWidget *widget)
Definition: multipagedialogbase.cpp:426
MultiPageDialogBase::CodeImportPage
@ CodeImportPage
Definition: multipagedialogbase.h:55
CodeImportOptionsPage::apply
void apply()
Definition: codeimportoptionspage.cpp:51
MultiPageDialogBase::createPage
QFrame * createPage(const QString &name, const QString &header, Icon_Utils::IconType icon)
Definition: multipagedialogbase.cpp:320
SettingsDialog::SettingsDialog
SettingsDialog(QWidget *parent, Settings::OptionState *state)
Definition: settingsdialog.cpp:41
Icon_Utils::it_Properties_CodeViewer
@ it_Properties_CodeViewer
Definition: icon_utils.h:65
uioptionspage.h
optionstate.h
MultiPageDialogBase::currentPage
KPageWidgetItem * currentPage() const
Definition: multipagedialogbase.cpp:180
Icon_Utils::it_Properties_AutoLayout
@ it_Properties_AutoLayout
Definition: icon_utils.h:218
MultiPageDialogBase::applyClicked
void applyClicked()
Definition: moc_multipagedialogbase.cpp:191
SettingsDialog::pageUserInterface
KPageWidgetItem * pageUserInterface
Definition: settingsdialog.h:116
SettingsDialog::m_pClassPage
ClassOptionsPage * m_pClassPage
Definition: settingsdialog.h:111
MultiPageDialogBase::applyFontPage
void applyFontPage(AssociationWidget *widget)
Definition: multipagedialogbase.cpp:436
MultiPageDialogBase::CodeViewerPage
@ CodeViewerPage
Definition: multipagedialogbase.h:57
SettingsDialog::m_pCodeViewerPage
CodeViewerOptionsPage * m_pCodeViewerPage
Definition: settingsdialog.h:109
AutoLayoutOptionPage::apply
void apply()
Definition: autolayoutoptionpage.cpp:63
UIOptionsPage
A dialog page to display the user interface options.
Definition: uioptionspage.h:36
CodeGenOptionsPage
Definition: codegenoptionspage.h:30
SettingsDialog::setupAutoLayoutPage
void setupAutoLayoutPage()
Definition: settingsdialog.cpp:153
SettingsDialog::UIWidgets::rightToLeftUI
QCheckBox * rightToLeftUI
Definition: settingsdialog.h:68
CodeGenOptionsPage::apply
void apply()
Definition: codegenoptionspage.cpp:215
CodeViewerOptionsPage
Definition: codevieweroptionspage.h:17
AutoLayoutOptionPage::setDefaults
void setDefaults()
Definition: autolayoutoptionpage.cpp:53
MultiPageDialogBase::okClicked
void okClicked()
Definition: moc_multipagedialogbase.cpp:185
SettingsDialog::UIWidgets::useFillColorCB
QCheckBox * useFillColorCB
Definition: settingsdialog.h:88
SettingsDialog::pageCodeImport
KPageWidgetItem * pageCodeImport
Definition: settingsdialog.h:115
SettingsDialog::slotApply
void slotApply()
Definition: settingsdialog.cpp:160
SettingsDialog::UIWidgets::textColorCB
QCheckBox * textColorCB
Definition: settingsdialog.h:71
MultiPageDialogBase
Definition: multipagedialogbase.h:46
DontAskAgainWidget::apply
bool apply()
Definition: dontaskagain.cpp:69
SettingsDialog::m_pUserInterfacePage
UMLWidgetStylePage * m_pUserInterfacePage
Definition: settingsdialog.h:105
i18n
#define i18n
Definition: main.cpp:35
SettingsDialog::slotOk
void slotOk()
Definition: settingsdialog.cpp:167
MultiPageDialogBase::ClassPage
@ ClassPage
Definition: multipagedialogbase.h:54
MultiPageDialogBase::setupFontPage
KPageWidgetItem * setupFontPage(const QFont &font)
Definition: multipagedialogbase.cpp:395
SettingsDialog::m_pOptionState
Settings::OptionState * m_pOptionState
Definition: settingsdialog.h:104
MyProject\connect
connect()
Definition: namespaces-multiple.php:5
SettingsDialog::UIWidgets::colorGB
QGroupBox * colorGB
Definition: settingsdialog.h:69
SettingsDialog::applyPage
void applyPage(KPageWidgetItem *)
Definition: settingsdialog.cpp:224
SettingsDialog::m_pGeneralPage
GeneralOptionPage * m_pGeneralPage
Definition: settingsdialog.h:110
GeneralOptionPage::setDefaults
void setDefaults()
Definition: generaloptionpage.cpp:179
SettingsDialog::m_uiOptionsPage
UIOptionsPage * m_uiOptionsPage
Definition: settingsdialog.h:112
Icon_Utils::it_Properties_General
@ it_Properties_General
Definition: icon_utils.h:47
Settings::OptionState
Definition: optionstate.h:310
MultiPageDialogBase::AutoLayoutPage
@ AutoLayoutPage
Definition: multipagedialogbase.h:53
SettingsDialog::setupCodeGenPage
void setupCodeGenPage()
Definition: settingsdialog.cpp:136
SettingsDialog::~SettingsDialog
~SettingsDialog()
Definition: settingsdialog.cpp:62
UmbrelloSettings::self
static UmbrelloSettings * self()
Definition: umbrellosettings.cpp:19
MultiPageDialogBase::defaultClicked
void defaultClicked()
Definition: moc_multipagedialogbase.cpp:197
CodeImportOptionsPage
Definition: codeimportoptionspage.h:19
umlwidgetstylepage.h
debug_utils.h
icon_utils.h
MultiPageDialogBase::setCaption
void setCaption(const QString &caption)
Definition: multipagedialogbase.cpp:157
autolayoutoptionpage.h
SettingsDialog::slotDefault
void slotDefault()
Definition: settingsdialog.cpp:186
SettingsDialog::UIWidgets::gridColorCB
QCheckBox * gridColorCB
Definition: settingsdialog.h:75
CodeGenOptionsPage::getLanguage
QString getLanguage()
Definition: codegenoptionspage.cpp:344
SettingsDialog::UIWidgets::bgColorB
KColorButton * bgColorB
Definition: settingsdialog.h:82
dontaskagain.h
SettingsDialog::UIWidgets::lineColorCB
QCheckBox * lineColorCB
Definition: settingsdialog.h:72
Settings::OptionState::codeViewerState
CodeViewerState codeViewerState
Definition: optionstate.h:326
DontAskAgainHandler::instance
static DontAskAgainHandler & instance()
Definition: dontaskagain.cpp:133
SettingsDialog::UIWidgets::bgColorCB
QCheckBox * bgColorCB
Definition: settingsdialog.h:76
SettingsDialog::pageCodeGen
KPageWidgetItem * pageCodeGen
Definition: settingsdialog.h:115
SettingsDialog::setCurrentPage
void setCurrentPage(PageType page)
Definition: settingsdialog.cpp:71
generaloptionpage.h
SettingsDialog::UIWidgets::lineColorB
KColorButton * lineColorB
Definition: settingsdialog.h:79
Settings::CodeViewerState
configurable params for the code viewer tool
Definition: codeviewerstate.h:15
DontAskAgainWidget::setDefaults
void setDefaults()
Definition: dontaskagain.cpp:88
SettingsDialog::UIWidgets::gridColorB
KColorButton * gridColorB
Definition: settingsdialog.h:81
SettingsDialog::UIWidgets::fillColorB
KColorButton * fillColorB
Definition: settingsdialog.h:80
SettingsDialog::pageClass
KPageWidgetItem * pageClass
Definition: settingsdialog.h:116
MultiPageDialogBase::GeneralPage
@ GeneralPage
Definition: multipagedialogbase.h:59
SettingsDialog::setupCodeViewerPage
void setupCodeViewerPage(Settings::CodeViewerState options)
Definition: settingsdialog.cpp:145
UIOptionsPage::apply
void apply()
Definition: uioptionspage.cpp:178
codeimportoptionspage.h
GeneralOptionPage
Definition: generaloptionpage.h:32
MultiPageDialogBase::CodeGenerationPage
@ CodeGenerationPage
Definition: multipagedialogbase.h:56
SettingsDialog::getChangesApplied
bool getChangesApplied() const
Definition: settingsdialog.h:57
MultiPageDialogBase::PageType
PageType
Available page types.
Definition: multipagedialogbase.h:52
layoutgenerator.h