umbrello 2.39.0
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
codegenobjectwithtextblocks.h
Go to the documentation of this file.
1/*
2 SPDX-License-Identifier: GPL-2.0-or-later
3
4 SPDX-FileCopyrightText: 2003 Brian Thomas <thomas@mail630.gsfc.nasa.gov>
5 SPDX-FileCopyrightText: 2004-2020 Umbrello UML Modeller Authors <umbrello-devel@kde.org>
6*/
7
8#ifndef CODEGENOBJECTWITHTEXTBLOCKS_H
9#define CODEGENOBJECTWITHTEXTBLOCKS_H
10
11#include "codeaccessormethod.h"
12#include "textblocklist.h"
13
14#include <QMap>
15
16class CodeBlock;
18class CodeClassField;
19class CodeComment;
20class CodeDocument;
23class TextBlock;
24
29{
30public:
31
34
35 virtual bool addTextBlock(TextBlock * add_object);
36
38
44
46
48
50
52
54 (const QString &tag, const QString &text, const QString &ctext,
56
58
63 virtual QString getUniqueTag(const QString& prefix = QString()) = 0;
64
68 virtual CodeBlock * newCodeBlock() = 0;
71
73
74protected:
75
77
79
81
83
84 virtual void resetTextBlocks();
85
91
94
95private:
96
97 // needed in order to use findTextBlocksByTag
99
100};
101
102#endif // CODEGENOBJECTWITHTEXTBLOCKS_H
Definition codeblockwithcomments.h:20
Definition codeblock.h:17
Definition codeclassfield.h:26
Definition codecomment.h:20
Definition codedocument.h:30
Definition codegenobjectwithtextblocks.h:29
CodeGenObjectWithTextBlocks(CodeDocument *parent)
Definition codegenobjectwithtextblocks.cpp:28
virtual bool insertTextBlock(TextBlock *newBlock, TextBlock *existingBlock, bool after)=0
virtual bool addTextBlock(TextBlock *add_object)
Definition codegenobjectwithtextblocks.cpp:56
virtual ~CodeGenObjectWithTextBlocks()
Definition codegenobjectwithtextblocks.cpp:36
virtual CodeBlockWithComments * newCodeBlockWithComments()=0
virtual CodeBlock * newCodeBlock()=0
CodeComment * addOrUpdateTaggedCodeComment(const QString &tag=QString(), const QString &text=QString(), int indentationLevel=0)
Definition codegenobjectwithtextblocks.cpp:239
CodeBlockWithComments * addOrUpdateTaggedCodeBlockWithComments(const QString &tag, const QString &text, const QString &ctext, int indentLevel, bool forceUserBlockUpdate)
Definition codegenobjectwithtextblocks.cpp:279
void setAttributesFromObject(CodeGenObjectWithTextBlocks *obj)
Definition codegenobjectwithtextblocks.cpp:338
virtual HierarchicalCodeBlock * getHierarchicalCodeBlock(const QString &tag, const QString &comment, int indentLevel)
Definition codegenobjectwithtextblocks.cpp:176
virtual void resetTextBlocks()
Definition codegenobjectwithtextblocks.cpp:322
virtual void setAttributesFromNode(QDomElement &element)
Definition codegenobjectwithtextblocks.cpp:372
TextBlockList m_textblockVector
Definition codegenobjectwithtextblocks.h:93
virtual TextBlock * findCodeClassFieldTextBlockByTag(const QString &tag)=0
TextBlock * findTextBlockByTag(const QString &tag)
Definition codegenobjectwithtextblocks.cpp:121
CodeGenObjectWithTextBlocks * findParentObjectForTaggedTextBlock(const QString &tag)
Definition codegenobjectwithtextblocks.cpp:141
virtual void setAttributesOnNode(QXmlStreamWriter &writer)
Definition codegenobjectwithtextblocks.cpp:354
virtual QString getUniqueTag(const QString &prefix=QString())=0
virtual CodeBlockWithComments * getCodeBlockWithComments(const QString &tag, const QString &comment, int indentLevel)
Definition codegenobjectwithtextblocks.cpp:208
QMap< QString, TextBlock * > m_textBlockTagMap
Definition codegenobjectwithtextblocks.h:92
virtual HierarchicalCodeBlock * newHierarchicalCodeBlock()=0
virtual void loadChildTextBlocksFromNode(QDomElement &root)
Definition codegenobjectwithtextblocks.cpp:389
virtual bool removeTextBlock(TextBlock *remove_object)
Definition codegenobjectwithtextblocks.cpp:91
CodeDocument * m_pCodeDoc
Definition codegenobjectwithtextblocks.h:98
TextBlockList * getTextBlockList() const
Definition codegenobjectwithtextblocks.cpp:45
Definition hierarchicalcodeblock.h:21
Definition textblock.h:23
QList< TextBlock * > TextBlockList
Definition textblocklist.h:14
#define vector
Definition moc_predefs.h:100