umbrello/umbrello
package.h
Go to the documentation of this file.00001 /*************************************************************************** 00002 * This program is free software; you can redistribute it and/or modify * 00003 * it under the terms of the GNU General Public License as published by * 00004 * the Free Software Foundation; either version 2 of the License, or * 00005 * (at your option) any later version. * 00006 * * 00007 * copyright (C) 2003-2009 * 00008 * Umbrello UML Modeller Authors <uml-devel@uml.sf.net> * 00009 ***************************************************************************/ 00010 00011 #ifndef PACKAGE_H 00012 #define PACKAGE_H 00013 00014 #include "umlcanvasobject.h" 00015 #include "umlclassifierlist.h" 00016 #include "umlentitylist.h" 00017 00018 // forward declarations 00019 class UMLAssociation; 00020 00032 class UMLPackage : public UMLCanvasObject 00033 { 00034 Q_OBJECT 00035 public: 00036 explicit UMLPackage(const QString & name = QString(), Uml::IDType id = Uml::id_None); 00037 virtual ~UMLPackage(); 00038 00039 virtual void copyInto(UMLObject *lhs) const; 00040 00041 virtual UMLObject* clone() const; 00042 00043 bool addObject(UMLObject *pObject); 00044 void removeObject(UMLObject *pObject); 00045 00046 virtual void removeAllObjects(); 00047 00048 UMLObjectList containedObjects(); 00049 00050 void addAssocToConcepts(UMLAssociation* assoc); 00051 void removeAssocFromConcepts(UMLAssociation *assoc); 00052 00053 UMLObject * findObject(const QString &name); 00054 UMLObject * findObjectById(Uml::IDType id); 00055 00056 void appendPackages(UMLPackageList& packages, bool includeNested = true); 00057 void appendClassifiers( UMLClassifierList& classifiers, 00058 bool includeNested = true ); 00059 void appendClasses( UMLClassifierList& classes, bool includeNested = true ); 00060 void appendClassesAndInterfaces(UMLClassifierList& classifiers, 00061 bool includeNested = true); 00062 void appendEntities(UMLEntityList& entities, 00063 bool includeNested = true); 00064 void appendInterfaces(UMLClassifierList& interfaces, 00065 bool includeNested = true ); 00066 00067 virtual bool resolveRef(); 00068 00069 virtual void saveToXMI(QDomDocument& qDoc, QDomElement& qElement); 00070 00071 protected: 00072 virtual bool load(QDomElement& element); 00073 00078 UMLObjectList m_objects; 00079 00080 }; 00081 00082 #endif
KDE 4.4 API Reference