classpropdlg.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef CLASSPROPDLG_H
00013 #define CLASSPROPDLG_H
00014
00015
00016 #include <kdialogbase.h>
00017 #include <kfontdialog.h>
00018
00019 #include "../umlnamespace.h"
00020
00021 class ClassGenPage;
00022 class ClassifierListPage;
00023 class ClassOpsPage;
00024 class ClassTemplatePage;
00025 class PkgContentsPage;
00026 class AssocPage;
00027 class ClassOptionsPage;
00028 class UMLWidgetColorPage;
00029
00030 class ComponentWidget;
00031 class ObjectWidget;
00032 class UMLDoc;
00033 class UMLObject;
00034 class UMLWidget;
00035
00041 class ClassPropDlg : public KDialogBase {
00042 Q_OBJECT
00043 public:
00052 ClassPropDlg(QWidget *parent, UMLObject *c, int pageNum = 0, bool assoc = false);
00053
00060 ClassPropDlg(QWidget *parent, ObjectWidget * o);
00061
00068 ClassPropDlg(QWidget *parent, UMLWidget * o);
00069
00070
00074 ~ClassPropDlg();
00075
00076 enum Page{page_gen = 0, page_att, page_op, page_template,
00077 page_assoc, page_options, page_color, page_font};
00078
00079 protected slots:
00083 void slotOk();
00084
00088 void slotApply();
00089
00090 protected:
00094 void setupPages(UMLObject * c, bool assoc = false);
00095
00099 void setupInstancePages(UMLWidget* widget);
00100
00104 void setupFontPage();
00105 private:
00106 KFontChooser * m_pChooser;
00107 ClassGenPage * m_pGenPage;
00108 ClassifierListPage* m_pAttPage;
00109 ClassifierListPage* m_pOpsPage;
00110 ClassifierListPage* m_pTemplatePage;
00111 ClassifierListPage* m_pEnumLiteralPage;
00112 ClassifierListPage* m_pEntityAttributePage;
00113 PkgContentsPage * m_pPkgContentsPage;
00114 AssocPage * m_pAssocPage;
00115 ClassOptionsPage * m_pOptionsPage;
00116 UMLWidgetColorPage * m_pColorPage;
00117 UMLDoc *m_pDoc;
00118
00119 UMLObject *m_pObject;
00120 UMLWidget * m_pWidget;
00121
00122 enum Page_Type{ pt_Object = 1,
00123 pt_ObjectWidget,
00124 pt_Widget
00125 };
00126 Page_Type m_Type;
00127 };
00128
00129 #endif
This file is part of the documentation for umbrello Version 3.1.0.