umbrello API Documentation

classpropdlg.h

00001 /***************************************************************************
00002  *                                                                         *
00003  *   This program is free software; you can redistribute it and/or modify  *
00004  *   it under the terms of the GNU General Public License as published by  *
00005  *   the Free Software Foundation; either version 2 of the License, or     *
00006  *   (at your option) any later version.                                   *
00007  *                                                                         *
00008  *   copyright (C) 2003-2007                                               *
00009  *   Umbrello UML Modeller Authors <uml-devel@uml.sf.net>                  *
00010  ***************************************************************************/
00011 
00012 #ifndef CLASSPROPDLG_H
00013 #define CLASSPROPDLG_H
00014 
00015 //kde class includes
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,    //Show General page + Assoc. page if Class i.e. no colours page
00123                      pt_ObjectWidget,  //Shows pages needed for an ObjectWidget
00124                      pt_Widget         //Shows pages needed for any other widget
00125                   };
00126     Page_Type m_Type;
00127 };
00128 
00129 #endif
KDE Logo
This file is part of the documentation for umbrello Version 3.1.0.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Tue Jun 26 08:07:55 2007 by doxygen 1.4.1 written by Dimitri van Heesch, © 1997-2003