umbrello  2.32.2
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
multipagedialogbase.h
Go to the documentation of this file.
1 /*
2  SPDX-License-Identifier: GPL-2.0-or-later
3  SPDX-FileCopyrightText: 2012-2021 Umbrello UML Modeller Authors <umbrello-devel@kde.org>
4 */
5 
6 #ifndef MULTIPAGEDIALOGBASE_H
7 #define MULTIPAGEDIALOGBASE_H
8 
9 #include "icon_utils.h"
10 
11 #include <kpagewidget.h>
12 
13 // qt class includes
14 #include <QDialog>
15 #include <QWidget>
16 
17 //forward declarations
18 class AssociationWidget;
21 class KFontChooser;
22 class KPageDialog;
23 class QAbstractButton;
24 class QFrame;
25 class NotePage;
26 class NoteWidget;
27 class MessageWidget;
28 class UMLWidget;
30 class UMLWidgetStylePage;
31 class WidgetBase;
32 class UMLScene;
33 namespace Settings { class OptionState; }
34 
46 class MultiPageDialogBase : public QWidget
47 {
48  Q_OBJECT
49 
50 public:
52  typedef enum {
61  } PageType;
62 
63  explicit MultiPageDialogBase(QWidget *parent, bool withDefaultButton=false);
64  virtual ~MultiPageDialogBase();
65 
66  void apply();
67 
68  void setCaption(const QString &caption);
69  void accept();
70  void reject();
71  KPageWidgetItem *currentPage() const;
72  void addPage(KPageWidgetItem *page);
73  void setCurrentPage(KPageWidgetItem *page);
74  static int spacingHint();
75  int exec();
76 
77  virtual bool isModified() const;
78 
79 signals:
80  void okClicked();
81  void applyClicked();
82  void defaultClicked();
83 
84 protected slots:
85  void slotEnableButtonOk(bool state);
86 
87 private slots:
88  void slotOkClicked();
89  void slotApplyClicked();
90  void slotDefaultClicked();
91 #if QT_VERSION >= 0x050000
92  void slotHelpClicked();
93  void slotButtonClicked(QAbstractButton *button);
94 #endif
95 protected:
100  KFontChooser *m_fontChooser;
102  KPageWidgetItem *m_pageItem;
103  KPageDialog *m_pageDialog;
104  KPageWidget *m_pageWidget;
107  virtual void keyPressEvent(QKeyEvent *event);
108 
109  QFrame* createPage(const QString& name, const QString& header, Icon_Utils::IconType icon);
110  KPageWidgetItem *createPage(const QString &name, const QString &header, Icon_Utils::IconType icon, QWidget *widget);
111 
112  void setupGeneralPage(AssociationWidget *widget);
113  void applyGeneralPage(AssociationWidget *widget);
114 
115  void setupGeneralPage(NoteWidget *widget);
116  KPageWidgetItem *setupGeneralPage(MessageWidget *widget);
117  void applyGeneralPage(MessageWidget *widget);
118 
119  KPageWidgetItem *setupFontPage(const QFont &font);
120  KPageWidgetItem *setupFontPage(UMLWidget *widget);
121  KPageWidgetItem *setupFontPage(AssociationWidget *widget);
122  void resetFontPage(QWidget *widget);
123  void applyFontPage(AssociationWidget *widget);
125  void applyFontPage(UMLScene *scene);
126  void applyFontPage(UMLWidget *widget);
127 
128  KPageWidgetItem *setupStylePage(WidgetBase *widget);
129  KPageWidgetItem *setupStylePage(AssociationWidget *widget);
130  void applyStylePage();
131 
132  KPageWidgetItem *setupAssociationRolePage(AssociationWidget *widget);
134 };
135 
136 #endif
MultiPageDialogBase::slotOkClicked
void slotOkClicked()
Definition: multipagedialogbase.cpp:240
Settings::OptionState::uiState
UIState uiState
Definition: optionstate.h:324
Icon_Utils::DesktopIcon
QPixmap DesktopIcon(IconType type)
Definition: icon_utils.cpp:82
MultiPageDialogBase::m_fontChooser
KFontChooser * m_fontChooser
Definition: multipagedialogbase.h:100
AssociationRolePage
Display properties on a UMLObject.
Definition: associationrolepage.h:29
DEBUG_REGISTER
#define DEBUG_REGISTER(src)
Definition: debug_utils.h:117
AssociationWidget
This class represents an association inside a diagram. Bugs and comments to umbrello-devel@kde....
Definition: associationwidget.h:46
MultiPageDialogBase::setupStylePage
KPageWidgetItem * setupStylePage(WidgetBase *widget)
Definition: multipagedialogbase.cpp:472
NotePage
Definition: notepage.h:18
Settings::UIState::font
QFont font
Definition: optionstate.h:88
UMLWidget::setFont
virtual void setFont(const QFont &font)
Definition: umlwidget.cpp:2009
MultiPageDialogBase::m_pAssocGeneralPage
AssociationGeneralPage * m_pAssocGeneralPage
Definition: multipagedialogbase.h:96
MultiPageDialogBase::applyStylePage
void applyStylePage()
Definition: multipagedialogbase.cpp:493
UMLWidget
The base class for graphical UML objects.
Definition: umlwidget.h:35
MultiPageDialogBase::UserInterfacePage
@ UserInterfacePage
Definition: multipagedialogbase.h:60
UMLWidgetStylePage
Definition: umlwidgetstylepage.h:32
MultiPageDialogBase::setCurrentPage
void setCurrentPage(KPageWidgetItem *page)
Definition: multipagedialogbase.cpp:201
UMLScene::activeView
UMLView * activeView() const
Definition: umlscene.cpp:344
MultiPageDialogBase::addPage
void addPage(KPageWidgetItem *page)
Definition: multipagedialogbase.cpp:188
MultiPageDialogBase::slotEnableButtonOk
void slotEnableButtonOk(bool state)
Definition: multipagedialogbase.cpp:121
WidgetBase::umlScene
UMLScene * umlScene() const
Definition: widgetbase.cpp:169
AssociationRolePage::apply
void apply()
Definition: associationrolepage.cpp:239
multipagedialogbase.h
MultiPageDialogBase::slotApplyClicked
void slotApplyClicked()
Definition: multipagedialogbase.cpp:248
UMLScene::setFont
void setFont(QFont font, bool changeAllWidgets=false)
Definition: umlscene.cpp:3437
MultiPageDialogBase::FontPage
@ FontPage
Definition: multipagedialogbase.h:58
MultiPageDialogBase::m_useDialog
bool m_useDialog
Definition: multipagedialogbase.h:105
MultiPageDialogBase::accept
void accept()
Definition: multipagedialogbase.cpp:168
SelectOperationPage::apply
bool apply()
Definition: selectoperationpage.cpp:298
MultiPageDialogBase::~MultiPageDialogBase
virtual ~MultiPageDialogBase()
Definition: multipagedialogbase.cpp:115
UMLWidgetStylePage::apply
void apply()
Definition: umlwidgetstylepage.cpp:282
MultiPageDialogBase::resetFontPage
void resetFontPage(QWidget *widget)
Definition: multipagedialogbase.cpp:426
MultiPageDialogBase::CodeImportPage
@ CodeImportPage
Definition: multipagedialogbase.h:55
MultiPageDialogBase::createPage
QFrame * createPage(const QString &name, const QString &header, Icon_Utils::IconType icon)
Definition: multipagedialogbase.cpp:320
MultiPageDialogBase::currentPage
KPageWidgetItem * currentPage() const
Definition: multipagedialogbase.cpp:180
MultiPageDialogBase::applyClicked
void applyClicked()
Definition: moc_multipagedialogbase.cpp:191
MultiPageDialogBase::applyFontPage
void applyFontPage(AssociationWidget *widget)
Definition: multipagedialogbase.cpp:436
SelectOperationPage
A dialog page to select an operation.
Definition: selectoperationpage.h:30
MultiPageDialogBase::CodeViewerPage
@ CodeViewerPage
Definition: multipagedialogbase.h:57
AssociationGeneralPage::apply
void apply()
Definition: associationgeneralpage.cpp:206
WidgetBase::font
virtual QFont font() const
Definition: widgetbase.cpp:550
MultiPageDialogBase::m_operationGeneralPage
SelectOperationPage * m_operationGeneralPage
Definition: multipagedialogbase.h:98
MultiPageDialogBase::m_pStylePage
UMLWidgetStylePage * m_pStylePage
Definition: multipagedialogbase.h:101
MultiPageDialogBase::m_notePage
NotePage * m_notePage
Definition: multipagedialogbase.h:97
MultiPageDialogBase::okClicked
void okClicked()
Definition: moc_multipagedialogbase.cpp:185
umlwidget.h
MultiPageDialogBase::setupAssociationRolePage
KPageWidgetItem * setupAssociationRolePage(AssociationWidget *widget)
Definition: multipagedialogbase.cpp:503
MultiPageDialogBase
Definition: multipagedialogbase.h:46
MultiPageDialogBase::applyAssociationRolePage
void applyAssociationRolePage()
Definition: multipagedialogbase.cpp:513
i18n
#define i18n
Definition: main.cpp:34
messagewidget.h
Icon_Utils::it_Properties_Roles
@ it_Properties_Roles
Definition: icon_utils.h:63
MultiPageDialogBase::slotDefaultClicked
void slotDefaultClicked()
Definition: multipagedialogbase.cpp:256
MultiPageDialogBase::m_pageWidget
KPageWidget * m_pageWidget
Definition: multipagedialogbase.h:104
MultiPageDialogBase::ClassPage
@ ClassPage
Definition: multipagedialogbase.h:54
MultiPageDialogBase::MultiPageDialogBase
MultiPageDialogBase(QWidget *parent, bool withDefaultButton=false)
Definition: multipagedialogbase.cpp:80
MultiPageDialogBase::setupFontPage
KPageWidgetItem * setupFontPage(const QFont &font)
Definition: multipagedialogbase.cpp:395
MultiPageDialogBase::applyGeneralPage
void applyGeneralPage(AssociationWidget *widget)
associationgeneralpage.h
MyProject\connect
connect()
Definition: namespaces-multiple.php:5
AssociationGeneralPage
Display properties on a UMLObject.
Definition: associationgeneralpage.h:34
MultiPageDialogBase::setupGeneralPage
void setupGeneralPage(AssociationWidget *widget)
Definition: multipagedialogbase.cpp:359
associationrolepage.h
NoteWidget
Displays a note box.
Definition: notewidget.h:25
notepage.h
MultiPageDialogBase::apply
void apply()
Definition: multipagedialogbase.cpp:135
WidgetBase
Common base class for UMLWidget and AssociationWidget.
Definition: widgetbase.h:100
MultiPageDialogBase::keyPressEvent
virtual void keyPressEvent(QKeyEvent *event)
Definition: multipagedialogbase.cpp:303
Icon_Utils::it_Properties_General
@ it_Properties_General
Definition: icon_utils.h:50
selectoperationpage.h
associationwidget.h
Settings
Definition: codeviewerstate.cpp:10
Settings::OptionState
Definition: optionstate.h:310
MultiPageDialogBase::AutoLayoutPage
@ AutoLayoutPage
Definition: multipagedialogbase.h:53
DEBUG
#define DEBUG(src)
Definition: debug_utils.h:115
Icon_Utils::IconType
IconType
Definition: icon_utils.h:32
MultiPageDialogBase::m_pageDialog
KPageDialog * m_pageDialog
Definition: multipagedialogbase.h:103
uml.h
MultiPageDialogBase::reject
void reject()
Definition: multipagedialogbase.cpp:174
MultiPageDialogBase::defaultClicked
void defaultClicked()
Definition: moc_multipagedialogbase.cpp:197
umlwidgetstylepage.h
MessageWidget::lwClassifier
virtual UMLClassifier * lwClassifier()
Definition: messagewidget.cpp:1046
Icon_Utils::it_Properties_Font
@ it_Properties_Font
Definition: icon_utils.h:61
MultiPageDialogBase::exec
int exec()
Definition: multipagedialogbase.cpp:218
debug_utils.h
icon_utils.h
UMLScene
Definition: umlscene.h:64
DBG_SRC
#define DBG_SRC
Definition: import_utils.cpp:38
MultiPageDialogBase::m_pageItem
KPageWidgetItem * m_pageItem
Definition: multipagedialogbase.h:102
MultiPageDialogBase::setCaption
void setCaption(const QString &caption)
Definition: multipagedialogbase.cpp:157
AssociationWidget::font
QFont font() const
Definition: associationwidget.cpp:3106
MultiPageDialogBase::spacingHint
static int spacingHint()
Definition: multipagedialogbase.cpp:209
Icon_Utils::it_Properties_Color
@ it_Properties_Color
Definition: icon_utils.h:51
MultiPageDialogBase::m_isModified
bool m_isModified
Definition: multipagedialogbase.h:106
MultiPageDialogBase::m_pRolePage
AssociationRolePage * m_pRolePage
Definition: multipagedialogbase.h:99
AssociationWidget::lwSetFont
virtual void lwSetFont(QFont font)
Definition: associationwidget.cpp:265
NotePage::apply
bool apply()
Definition: notepage.cpp:39
MultiPageDialogBase::isModified
virtual bool isModified() const
Definition: multipagedialogbase.cpp:232
MultiPageDialogBase::GeneralPage
@ GeneralPage
Definition: multipagedialogbase.h:59
MessageWidget
Displays a message.
Definition: messagewidget.h:35
MultiPageDialogBase::CodeGenerationPage
@ CodeGenerationPage
Definition: multipagedialogbase.h:56
MultiPageDialogBase::PageType
PageType
Available page types.
Definition: multipagedialogbase.h:52