diff options
Diffstat (limited to 'umbrello/umbrello/dialogs/classgenpage.h')
-rw-r--r-- | umbrello/umbrello/dialogs/classgenpage.h | 109 |
1 files changed, 109 insertions, 0 deletions
diff --git a/umbrello/umbrello/dialogs/classgenpage.h b/umbrello/umbrello/dialogs/classgenpage.h new file mode 100644 index 00000000..6fd0f7d3 --- /dev/null +++ b/umbrello/umbrello/dialogs/classgenpage.h @@ -0,0 +1,109 @@ +/*************************************************************************** + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + * copyright (C) 2002-2006 * + * Umbrello UML Modeller Authors <uml-devel@uml.sf.net> * + ***************************************************************************/ + +#ifndef CLASSGENPAGE_H +#define CLASSGENPAGE_H + +#include <qwidget.h> + +class QGroupBox; +class QLabel; +class QLineEdit; +class QButtonGroup; +class QMultiLineEdit; +class QRadioButton; +class QCheckBox; +class KComboBox; + +class UMLObject; +class UMLWidget; +class ObjectWidget; +class UMLDoc; + +/** + * Displays properties of a UMLObject in a dialog box. This is not usually directly + * called. The class @ref ClassPropDlg will set this up for you. + * + * @short Display properties on a UMLObject. + * @author Paul Hensgen <phensgen@techie.com> + * Bugs and comments to uml-devel@lists.sf.net or http://bugs.kde.org + */ +class ClassGenPage : public QWidget { + Q_OBJECT +public: + + /** + * Sets up the ClassGenPage. + * + * @param d The UMLDoc which controls controls object creation. + * @param parent The parent to the ClassGenPage. + * @param o The UMLObject to display the properties of. + */ + ClassGenPage(UMLDoc *d, QWidget *parent, UMLObject * o); + + /** + * Sets up the ClassGenPage for an ObjectWidget + * + * @param d The UMLDoc which controls controls object creation. + * @param parent The parent to the ClassGenPage. + * @param o The ObjectWidget to display the properties of. + */ + ClassGenPage(UMLDoc *d, QWidget *parent, ObjectWidget * o); + + /** + * Sets up the ClassGenPage for a UMLWidget instance (used + * for component instances on deployment diagrams) + * + * @param d The UMLDoc which controls controls object creation. + * @param parent The parent to the ClassGenPage. + * @param widget The UMLWidget to display the properties of. + */ + ClassGenPage(UMLDoc* d, QWidget* parent, UMLWidget* widget); + + /** + * Standard deconstructor. + */ + ~ClassGenPage(); + + /** + * Will move information from the dialog into the object. + * Call when the ok or apply button is pressed. + */ + void updateObject(); +private: + QGroupBox *m_pDocGB; + QButtonGroup * m_pButtonBG; + QLabel * m_pNameL, * m_pInstanceL, * m_pStereoTypeL, * m_pPackageL; + QLineEdit * m_pClassNameLE, *m_pInstanceLE, * m_pPackageLE; + KComboBox * m_pStereoTypeCB; + QRadioButton *m_pPublicRB, *m_pPrivateRB, *m_pProtectedRB, *m_pImplementationRB; + QCheckBox * m_pMultiCB, * m_pDrawActorCB, * m_pAbstractCB, * m_pDeconCB; + QMultiLineEdit * m_pDoc; + UMLObject * m_pObject; + UMLDoc * m_pUmldoc; + ObjectWidget * m_pWidget; + UMLWidget* m_pInstanceWidget; + QButtonGroup* m_pDrawAsBG; + QRadioButton* m_pDefaultRB,* m_pFileRB,* m_pLibraryRB,* m_pTableRB; + QCheckBox* m_pExecutableCB; + + void insertStereotype(const QString& type, int index = -1); + +public slots: + /** + * When the draw as actor check box is toggled, the draw + * as multi instance need to be enabled/disabled. They + * both can't be available at the same time. + */ + void slotActorToggled( bool state ); +}; + +#endif |