umbrello 2.34.70-5524f40e1
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
classifierlistpage.h
Go to the documentation of this file.
1/*
2 SPDX-License-Identifier: GPL-2.0-or-later
3 SPDX-FileCopyrightText: 2003-2022 Umbrello UML Modeller Authors <umbrello-devel@kde.org>
4*/
5
6#ifndef CLASSIFIERLISTPAGE_H
7#define CLASSIFIERLISTPAGE_H
8
9//app includes
10#include "dialogpagebase.h"
12#include "umlobject.h"
13
14class CodeTextEdit;
15class UMLClassifier;
16class UMLDoc;
17class KTextEdit;
18class QGroupBox;
19class QHBoxLayout;
20class QListWidget;
21class QListWidgetItem;
22class QPushButton;
23class QToolButton;
24class QVBoxLayout;
25
35{
36 Q_OBJECT
37public:
38
39 ClassifierListPage(QWidget* parent,
40 UMLClassifier* classifier, UMLDoc* doc, UMLObject::ObjectType type);
41 virtual ~ClassifierListPage();
42
43 void apply();
44
45private:
46
47 void setupPage();
48
49 void setupListGroup(int margin);
50 void setupDocumentationGroup(int margin);
51 void setupMoveButtons(QHBoxLayout* parentLayout);
52 void setupActionButtons(const QString& itemType, QVBoxLayout* parentLayout);
53
54 void enableWidgets(bool state);
55
57
59
60 bool addToClassifier(UMLClassifierListItem* classifier, int position = -1);
61
62 bool takeItem(UMLClassifierListItem* listItem,
63 bool seekPeerBefore, int &peerIndex);
64
65 void deleteMenu();
66
67 void printItemList(const QString &prologue);
68
69 QGroupBox* m_docGB;
70 QGroupBox* m_pItemListGB;
71 KTextEdit* m_docTE;
73 QListWidget* m_pItemListLB;
74
75 QToolButton* m_pTopArrowB;
76 QToolButton* m_pUpArrowB;
77 QToolButton* m_pDownArrowB;
78 QToolButton* m_pBottomArrowB;
79
82
83protected:
84
85 void reloadItemListBox();
86
87 void hideArrowButtons(bool hide);
88
92
95 QPushButton* m_pPropertiesButton;
96
98
99protected slots:
100
101 void slotActivateItem(QListWidgetItem* item);
102
103 void slotMenuSelection(QAction* action);
104
105 void slotListItemCreated(UMLObject* object);
107 void slotRightButtonPressed(const QPoint& p);
108
109 void slotDoubleClick(QListWidgetItem* item);
110
111 void slotTopClicked();
112 void slotUpClicked();
113 void slotDownClicked();
114 void slotBottomClicked();
115
116 void slotNewListItem();
117
118 void slotDelete();
119
120 void slotProperties();
121};
122
123#endif
A dialog page to display classifier properties.
Definition: classifierlistpage.h:35
QPushButton * m_pNewClassifierListItemButton
Definition: classifierlistpage.h:93
void apply()
Definition: classifierlistpage.cpp:396
UMLObject::ObjectType m_itemType
Definition: classifierlistpage.h:89
void setupPage()
Definition: classifierlistpage.cpp:75
void setupMoveButtons(QHBoxLayout *parentLayout)
Definition: classifierlistpage.cpp:174
bool addToClassifier(UMLClassifierListItem *classifier, int position=-1)
Definition: classifierlistpage.cpp:814
void slotTopClicked()
Definition: classifierlistpage.cpp:559
QToolButton * m_pDownArrowB
Definition: classifierlistpage.h:77
UMLClassifierListItem * m_pOldListItem
Definition: classifierlistpage.h:81
QPushButton * m_pDeleteListItemButton
Definition: classifierlistpage.h:94
void setupListGroup(int margin)
Definition: classifierlistpage.cpp:111
QListWidget * m_pItemListLB
Definition: classifierlistpage.h:73
void slotProperties()
Definition: classifierlistpage.cpp:758
ClassifierListPage(QWidget *parent, UMLClassifier *classifier, UMLDoc *doc, UMLObject::ObjectType type)
Definition: classifierlistpage.cpp:53
void saveCurrentItemDocumentation()
Definition: classifierlistpage.cpp:781
void slotRightButtonPressed(const QPoint &p)
Definition: classifierlistpage.cpp:449
QToolButton * m_pBottomArrowB
Definition: classifierlistpage.h:78
void slotNewListItem()
Definition: classifierlistpage.cpp:767
void slotDoubleClick(QListWidgetItem *item)
Definition: classifierlistpage.cpp:704
virtual ~ClassifierListPage()
Definition: classifierlistpage.cpp:68
UMLDoc * m_doc
Definition: classifierlistpage.h:80
QPushButton * m_pPropertiesButton
Definition: classifierlistpage.h:95
void slotDownClicked()
Definition: classifierlistpage.cpp:632
KTextEdit * m_docTE
Definition: classifierlistpage.h:71
void enableWidgets(bool state)
Definition: classifierlistpage.cpp:280
QToolButton * m_pTopArrowB
Definition: classifierlistpage.h:75
void printItemList(const QString &prologue)
Definition: classifierlistpage.cpp:540
void slotListItemCreated(UMLObject *object)
Definition: classifierlistpage.cpp:403
virtual UMLClassifierListItemList getItemList()
Definition: classifierlistpage.cpp:802
bool m_bSigWaiting
Definition: classifierlistpage.h:97
void slotActivateItem(QListWidgetItem *item)
Definition: classifierlistpage.cpp:336
void reloadItemListBox()
Definition: classifierlistpage.cpp:261
void slotListItemModified()
Definition: classifierlistpage.cpp:435
UMLClassifier * m_pClassifier
Definition: classifierlistpage.h:90
void hideArrowButtons(bool hide)
Definition: classifierlistpage.cpp:931
UMLClassifierListItem * m_pLastObjectCreated
Definition: classifierlistpage.h:91
void slotUpClicked()
Definition: classifierlistpage.cpp:594
void slotDelete()
Definition: classifierlistpage.cpp:736
QToolButton * m_pUpArrowB
Definition: classifierlistpage.h:76
void setupDocumentationGroup(int margin)
Definition: classifierlistpage.cpp:234
void slotMenuSelection(QAction *action)
Definition: classifierlistpage.cpp:494
bool takeItem(UMLClassifierListItem *listItem, bool seekPeerBefore, int &peerIndex)
Definition: classifierlistpage.cpp:898
CodeTextEdit * m_pCodeTE
Definition: classifierlistpage.h:72
QGroupBox * m_docGB
Definition: classifierlistpage.h:69
QGroupBox * m_pItemListGB
Definition: classifierlistpage.h:70
void setupActionButtons(const QString &itemType, QVBoxLayout *parentLayout)
Definition: classifierlistpage.cpp:209
void slotBottomClicked()
Definition: classifierlistpage.cpp:669
Definition: codetextedit.h:26
Definition: dialogpagebase.h:20
Definition: umlclassifierlistitemlist.h:22
A base class for classifier list items (e.g. attributes)
Definition: classifierlistitem.h:25
Information for a non-graphical Concept/Class.
Definition: classifier.h:35
Definition: umldoc.h:70
The base class for UML objects.
Definition: umlobject.h:70
ObjectType
Definition: umlobject.h:76