umbrello  2.31.70
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  * 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) 2003-2020 *
8  * Umbrello UML Modeller Authors <umbrello-devel@kde.org> *
9  ***************************************************************************/
10 
11 #ifndef CLASSIFIERLISTPAGE_H
12 #define CLASSIFIERLISTPAGE_H
13 
14 //app includes
15 #include "dialogpagebase.h"
17 #include "umlobject.h"
18 
19 class CodeTextEdit;
20 class UMLClassifier;
21 class UMLDoc;
22 class KTextEdit;
23 class QGroupBox;
24 class QHBoxLayout;
25 class QListWidget;
26 class QListWidgetItem;
27 class QPushButton;
28 class QToolButton;
29 class QVBoxLayout;
30 
40 {
41  Q_OBJECT
42 public:
43 
44  ClassifierListPage(QWidget* parent,
45  UMLClassifier* classifier, UMLDoc* doc, UMLObject::ObjectType type);
46  virtual ~ClassifierListPage();
47 
48  void apply();
49 
50 private:
51 
52  void setupPage();
53 
54  void setupListGroup(int margin);
55  void setupDocumentationGroup(int margin);
56  void setupMoveButtons(QHBoxLayout* parentLayout);
57  void setupActionButtons(const QString& itemType, QVBoxLayout* parentLayout);
58 
59  void enableWidgets(bool state);
60 
62 
64 
65  bool addClassifier(UMLClassifierListItem* classifier, int position = -1);
66 
67  bool takeItem(UMLClassifierListItem* listitem,
68  bool seekPeerBefore, int &peerIndex);
69 
70  void deleteMenu();
71 
72  void printItemList(const QString &prologue);
73 
74  QGroupBox* m_docGB;
75  QGroupBox* m_pItemListGB;
76  KTextEdit* m_docTE;
78  QListWidget* m_pItemListLB;
79 
80  QToolButton* m_pTopArrowB;
81  QToolButton* m_pUpArrowB;
82  QToolButton* m_pDownArrowB;
83  QToolButton* m_pBottomArrowB;
84 
87 
88 protected:
89 
90  void reloadItemListBox();
91 
92  void hideArrowButtons(bool hide);
93 
97 
100  QPushButton* m_pPropertiesButton;
101 
103 
104 protected slots:
105 
106  void slotActivateItem(QListWidgetItem* item);
107 
108  void slotMenuSelection(QAction* action);
109 
110  void slotListItemCreated(UMLObject* object);
111  void slotListItemModified();
112  void slotRightButtonPressed(const QPoint& p);
113 
114  void slotDoubleClick(QListWidgetItem* item);
115 
116  void slotTopClicked();
117  void slotUpClicked();
118  void slotDownClicked();
119  void slotBottomClicked();
120 
121  void slotNewListItem();
122 
123  void slotDelete();
124 
125  void slotProperties();
126 };
127 
128 #endif
void printItemList(const QString &prologue)
Definition: classifierlistpage.cpp:538
Definition: codetextedit.h:39
ClassifierListPage(QWidget *parent, UMLClassifier *classifier, UMLDoc *doc, UMLObject::ObjectType type)
Definition: classifierlistpage.cpp:54
void slotListItemCreated(UMLObject *object)
Definition: classifierlistpage.cpp:402
Definition: umlclassifierlistitemlist.h:26
void saveCurrentItemDocumentation()
Definition: classifierlistpage.cpp:773
Information for a non-graphical Concept/Class.
Definition: classifier.h:39
Definition: dialogpagebase.h:24
void hideArrowButtons(bool hide)
Definition: classifierlistpage.cpp:916
A base class for classifier list items (e.g. attributes)
Definition: classifierlistitem.h:29
void slotUpClicked()
Definition: classifierlistpage.cpp:591
UMLClassifierListItem * m_pLastObjectCreated
Definition: classifierlistpage.h:96
void slotRightButtonPressed(const QPoint &p)
Definition: classifierlistpage.cpp:448
void slotListItemModified()
Definition: classifierlistpage.cpp:434
void setupPage()
Definition: classifierlistpage.cpp:76
CodeTextEdit * m_pCodeTE
Definition: classifierlistpage.h:77
void slotBottomClicked()
Definition: classifierlistpage.cpp:664
QToolButton * m_pTopArrowB
Definition: classifierlistpage.h:80
KTextEdit * m_docTE
Definition: classifierlistpage.h:76
bool takeItem(UMLClassifierListItem *listitem, bool seekPeerBefore, int &peerIndex)
Definition: classifierlistpage.cpp:883
UMLDoc * m_doc
Definition: classifierlistpage.h:85
The base class for UML objects.
Definition: umlobject.h:73
void slotActivateItem(QListWidgetItem *item)
Definition: classifierlistpage.cpp:336
QGroupBox * m_pItemListGB
Definition: classifierlistpage.h:75
QToolButton * m_pBottomArrowB
Definition: classifierlistpage.h:83
QPushButton * m_pDeleteListItemButton
Definition: classifierlistpage.h:99
void slotMenuSelection(QAction *action)
Definition: classifierlistpage.cpp:493
void slotTopClicked()
Definition: classifierlistpage.cpp:557
void setupActionButtons(const QString &itemType, QVBoxLayout *parentLayout)
Definition: classifierlistpage.cpp:209
void slotDoubleClick(QListWidgetItem *item)
Definition: classifierlistpage.cpp:698
void setupListGroup(int margin)
Definition: classifierlistpage.cpp:112
void slotNewListItem()
Definition: classifierlistpage.cpp:759
A dialog page to display classifier properties.
Definition: classifierlistpage.h:39
QToolButton * m_pUpArrowB
Definition: classifierlistpage.h:81
void setupDocumentationGroup(int margin)
Definition: classifierlistpage.cpp:234
void setupMoveButtons(QHBoxLayout *parentLayout)
Definition: classifierlistpage.cpp:174
bool addClassifier(UMLClassifierListItem *classifier, int position=-1)
Definition: classifierlistpage.cpp:806
QToolButton * m_pDownArrowB
Definition: classifierlistpage.h:82
void enableWidgets(bool state)
Definition: classifierlistpage.cpp:280
void slotDelete()
Definition: classifierlistpage.cpp:728
UMLClassifierListItem * m_pOldListItem
Definition: classifierlistpage.h:86
virtual UMLClassifierListItemList getItemList()
Definition: classifierlistpage.cpp:794
void slotProperties()
Definition: classifierlistpage.cpp:750
ObjectType
Definition: umlobject.h:79
void reloadItemListBox()
Definition: classifierlistpage.cpp:261
void slotDownClicked()
Definition: classifierlistpage.cpp:628
QGroupBox * m_docGB
Definition: classifierlistpage.h:74
void apply()
Definition: classifierlistpage.cpp:395
bool m_bSigWaiting
Definition: classifierlistpage.h:102
UMLClassifier * m_pClassifier
Definition: classifierlistpage.h:95
QListWidget * m_pItemListLB
Definition: classifierlistpage.h:78
QPushButton * m_pNewClassifierListItemButton
Definition: classifierlistpage.h:98
QPushButton * m_pPropertiesButton
Definition: classifierlistpage.h:100
UMLObject::ObjectType m_itemType
Definition: classifierlistpage.h:94
Definition: umldoc.h:74
virtual ~ClassifierListPage()
Definition: classifierlistpage.cpp:69