umbrello: umbrello/codegenerators/ruby/rubyclassifiercodedocument.h Source File

umbrello 25.08.0 Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology

rubyclassifiercodedocument.h
Go to the documentation of this file.
1/*
2 SPDX-License-Identifier: GPL-2.0-or-later
3
4 SPDX-FileCopyrightText: 2005 Richard Dale <Richard_Dale@tipitina.demon.co.uk>
5 SPDX-FileCopyrightText: 2006-2021 Umbrello UML Modeller Authors <umbrello-devel@kde.org>
6*/
7
8#ifndef RUBYCLASSIFIERCODEDOCUMENT_H
9#define RUBYCLASSIFIERCODEDOCUMENT_H
10
11#include "codeclassfieldlist.h"
12#include "classifiercodedocument.h"
13#include "classifier.h"
14#include "hierarchicalcodeblock.h"
15#include "rubycodeclassfield.h"
16#include "rubycodeoperation.h"
17
18#include <QString>
19
20class RubyClassDeclarationBlock;
21class RubyCodeGenerationPolicy;
22
31 class RubyClassifierCodeDocument : public ClassifierCodeDocument
32{
33 Q_OBJECT
34public:
35
36 explicit RubyClassifierCodeDocument(UMLClassifier * classifier);
37 virtual ~RubyClassifierCodeDocument();
38
39 //CodeDocumentDialog getDialog();
40
41 RubyCodeGenerationPolicy * getRubyPolicy() const;
42
43 QString getRubyClassName(const QString &name) const;
44
45 QString getPath() const;
46
47 bool addCodeOperation(CodeOperation * op);
48
49 void updateContent();
50
51protected:
52
53 void resetTextBlocks();
54
55 virtual void loadChildTextBlocksFromNode(QDomElement & root);
56
57 void addOrUpdateCodeClassFieldMethodsInCodeBlock(CodeClassFieldList &list, RubyClassDeclarationBlock * codeBlock);
58
59 bool forceDoc();
60
61private:
62
63 RubyClassDeclarationBlock * classDeclCodeBlock;
64 HierarchicalCodeBlock * constructorBlock;
65 HierarchicalCodeBlock * operationsBlock;
66
67 HierarchicalCodeBlock * publicBlock;
68 HierarchicalCodeBlock * privateBlock;
69 HierarchicalCodeBlock * protectedBlock;
70
71// HierarchicalCodeBlock * namespaceBlock;
72
73 HierarchicalCodeBlock * pubConstructorBlock;
74 HierarchicalCodeBlock * protConstructorBlock;
75 HierarchicalCodeBlock * privConstructorBlock;
76
77 HierarchicalCodeBlock * pubOperationsBlock;
78 HierarchicalCodeBlock * privOperationsBlock;
79 HierarchicalCodeBlock * protOperationsBlock;
80
81 void init();
82 RubyClassDeclarationBlock * getClassDecl();
83
84};
85
86#endif // RUBYCLASSIFIERCODEDOCUMENT_H
ClassifierCodeDocument::ClassifierCodeDocument
ClassifierCodeDocument(UMLClassifier *parent)
Definition classifiercodedocument.cpp:34
ClassifierCodeDocument::HierarchicalCodeBlock
friend class HierarchicalCodeBlock
Definition classifiercodedocument.h:30
CodeOperation
Definition codeoperation.h:20
RubyClassDeclarationBlock
Definition rubyclassdeclarationblock.h:17
RubyClassifierCodeDocument::protectedBlock
HierarchicalCodeBlock * protectedBlock
Definition rubyclassifiercodedocument.h:69
RubyClassifierCodeDocument::addOrUpdateCodeClassFieldMethodsInCodeBlock
void addOrUpdateCodeClassFieldMethodsInCodeBlock(CodeClassFieldList &list, RubyClassDeclarationBlock *codeBlock)
RubyClassifierCodeDocument::addCodeOperation
bool addCodeOperation(CodeOperation *op)
Definition rubyclassifiercodedocument.cpp:121
RubyClassifierCodeDocument::classDeclCodeBlock
RubyClassDeclarationBlock * classDeclCodeBlock
Definition rubyclassifiercodedocument.h:63
RubyClassifierCodeDocument::loadChildTextBlocksFromNode
virtual void loadChildTextBlocksFromNode(QDomElement &root)
Definition rubyclassifiercodedocument.cpp:163
RubyClassifierCodeDocument::protOperationsBlock
HierarchicalCodeBlock * protOperationsBlock
Definition rubyclassifiercodedocument.h:79
RubyClassifierCodeDocument::publicBlock
HierarchicalCodeBlock * publicBlock
Definition rubyclassifiercodedocument.h:67
RubyClassifierCodeDocument::privOperationsBlock
HierarchicalCodeBlock * privOperationsBlock
Definition rubyclassifiercodedocument.h:78
RubyClassifierCodeDocument::getRubyPolicy
RubyCodeGenerationPolicy * getRubyPolicy() const
Definition rubyclassifiercodedocument.cpp:46
RubyClassifierCodeDocument::privConstructorBlock
HierarchicalCodeBlock * privConstructorBlock
Definition rubyclassifiercodedocument.h:75
RubyClassifierCodeDocument::operationsBlock
HierarchicalCodeBlock * operationsBlock
Definition rubyclassifiercodedocument.h:65
RubyClassifierCodeDocument::constructorBlock
HierarchicalCodeBlock * constructorBlock
Definition rubyclassifiercodedocument.h:64
RubyClassifierCodeDocument::getPath
QString getPath() const
Definition rubyclassifiercodedocument.cpp:66
RubyClassifierCodeDocument::pubConstructorBlock
HierarchicalCodeBlock * pubConstructorBlock
Definition rubyclassifiercodedocument.h:73
RubyClassifierCodeDocument::RubyClassifierCodeDocument
RubyClassifierCodeDocument(UMLClassifier *classifier)
Definition rubyclassifiercodedocument.cpp:30
RubyClassifierCodeDocument::privateBlock
HierarchicalCodeBlock * privateBlock
Definition rubyclassifiercodedocument.h:68
RubyClassifierCodeDocument::init
void init()
Definition rubyclassifiercodedocument.cpp:91
RubyClassifierCodeDocument::resetTextBlocks
void resetTextBlocks()
Definition rubyclassifiercodedocument.cpp:294
RubyClassifierCodeDocument::~RubyClassifierCodeDocument
virtual ~RubyClassifierCodeDocument()
Definition rubyclassifiercodedocument.cpp:39
RubyClassifierCodeDocument::forceDoc
bool forceDoc()
RubyClassifierCodeDocument::getClassDecl
RubyClassDeclarationBlock * getClassDecl()
Definition rubyclassifiercodedocument.cpp:280
RubyClassifierCodeDocument::protConstructorBlock
HierarchicalCodeBlock * protConstructorBlock
Definition rubyclassifiercodedocument.h:74
RubyClassifierCodeDocument::getRubyClassName
QString getRubyClassName(const QString &name) const
Definition rubyclassifiercodedocument.cpp:84
RubyClassifierCodeDocument::updateContent
void updateContent()
Definition rubyclassifiercodedocument.cpp:312
RubyClassifierCodeDocument::pubOperationsBlock
HierarchicalCodeBlock * pubOperationsBlock
Definition rubyclassifiercodedocument.h:77
RubyCodeGenerationPolicy
Definition rubycodegenerationpolicy.h:19
UMLClassifier
Information for a non-graphical Concept/Class.
Definition classifier.h:35
classifier.h
classifiercodedocument.h
codeclassfieldlist.h
CodeClassFieldList
QList< CodeClassField * > CodeClassFieldList
Definition codeclassfieldlist.h:14
hierarchicalcodeblock.h
rubycodeclassfield.h
rubycodeoperation.h