summaryrefslogtreecommitdiffstats
path: root/umbrello/umbrello/ownedhierarchicalcodeblock.h
diff options
context:
space:
mode:
Diffstat (limited to 'umbrello/umbrello/ownedhierarchicalcodeblock.h')
-rw-r--r--umbrello/umbrello/ownedhierarchicalcodeblock.h98
1 files changed, 98 insertions, 0 deletions
diff --git a/umbrello/umbrello/ownedhierarchicalcodeblock.h b/umbrello/umbrello/ownedhierarchicalcodeblock.h
new file mode 100644
index 00000000..af5ade94
--- /dev/null
+++ b/umbrello/umbrello/ownedhierarchicalcodeblock.h
@@ -0,0 +1,98 @@
+
+/***************************************************************************
+ * *
+ * 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. *
+ * *
+ ***************************************************************************/
+
+/* This code generated by:
+ * Author : thomas
+ * Date : Fri Aug 07 2003
+ */
+
+#ifndef OWNEDHIERARCHICALCODEBLOCK_H
+#define OWNEDHIERARCHICALCODEBLOCK_H
+
+#include "hierarchicalcodeblock.h"
+
+class UMLObject;
+class CodeDocument;
+
+/**
+ * class OwnedHierarchicalCodeBlock
+ * A "chunk" of code within the code document that is "owned" by some
+ * umlobject. This is an abstract class that should be inherited.
+ */
+
+class OwnedHierarchicalCodeBlock : public HierarchicalCodeBlock, public OwnedCodeBlock
+{
+ Q_OBJECT
+public:
+
+ // Constructors/Destructors
+ //
+
+ /** constructor with QString so we can create & populate it in
+ * one step.
+ */
+ OwnedHierarchicalCodeBlock ( UMLObject * parent, CodeDocument * parentDoc, const QString &start="", const QString &end="", const QString &comment="" );
+
+ /**
+ * Empty Destructor
+ */
+ virtual ~OwnedHierarchicalCodeBlock ( );
+
+ // Public attributes
+ //
+
+ // Return the parent code document
+ CodeDocument * getParentDocument();
+
+ // these next 2 methods should be supplied by inheriting classes
+ /**
+ * Save the XMI representation of this object
+ */
+ virtual void saveToXMI ( QDomDocument & doc, QDomElement & root ) = 0;
+
+ /**
+ * load params from the appropriate XMI element node.
+ */
+ virtual void loadFromXMI ( QDomElement & root ) = 0;
+
+protected:
+
+ /** causes the text block to release all of its connections
+ * and any other text blocks that it 'owns'.
+ * needed to be called prior to deletion of the textblock.
+ */
+ virtual void release ();
+
+ /** set attributes of the node that represents this class
+ * in the XMI document.
+ */
+ virtual void setAttributesOnNode ( QDomDocument & doc, QDomElement & blockElement);
+
+ /** set the class attributes of this object from
+ * the passed element node.
+ */
+ virtual void setAttributesFromNode ( QDomElement & element);
+
+ /** set the class attributes from a passed object
+ */
+ virtual void setAttributesFromObject (TextBlock * obj);
+
+ virtual void updateContent ( ) = 0;
+
+private:
+
+public slots:
+
+ void syncToParent ( );
+
+
+};
+
+#endif // OWNEDHIERARCHICALCODEBLOCK_H