umbrello  2.34.3
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 
22 
32 {
33  Q_OBJECT
34 public:
35 
36  explicit RubyClassifierCodeDocument(UMLClassifier * classifier);
38 
39  //CodeDocumentDialog getDialog();
40 
42 
43  QString getRubyClassName(const QString &name) const;
44 
45  QString getPath() const;
46 
48 
49  void updateContent();
50 
51 protected:
52 
53  void resetTextBlocks();
54 
55  virtual void loadChildTextBlocksFromNode(QDomElement & root);
56 
58 
59  bool forceDoc();
60 
61 private:
62 
66 
70 
71 // HierarchicalCodeBlock * namespaceBlock;
72 
76 
80 
81  void init();
83 
84 };
85 
86 #endif // RUBYCLASSIFIERCODEDOCUMENT_H
CodeClassField::Composition
@ Composition
Definition: codeclassfield.h:30
RubyClassifierCodeDocument::getRubyClassName
QString getRubyClassName(const QString &name) const
Definition: rubyclassifiercodedocument.cpp:84
rubyclassdeclarationblock.h
RubyClassifierCodeDocument::resetTextBlocks
void resetTextBlocks()
Definition: rubyclassifiercodedocument.cpp:294
RubyClassifierCodeDocument::privateBlock
HierarchicalCodeBlock * privateBlock
Definition: rubyclassifiercodedocument.h:68
RubyCodeOperation
Definition: rubycodeoperation.h:17
DEBUG_REGISTER
#define DEBUG_REGISTER(src)
Definition: debug_utils.h:129
RubyClassifierCodeDocument::protectedBlock
HierarchicalCodeBlock * protectedBlock
Definition: rubyclassifiercodedocument.h:69
rubycodeclassfield.h
ClassifierCodeDocument::getParentClassifier
UMLClassifier * getParentClassifier() const
Definition: classifiercodedocument.cpp:278
CodeDocument::resetTextBlocks
void resetTextBlocks()
Definition: codedocument.cpp:335
logDebug1
#define logDebug1(s, a)
Definition: uml.h:539
RubyClassifierCodeDocument::pubOperationsBlock
HierarchicalCodeBlock * pubOperationsBlock
Definition: rubyclassifiercodedocument.h:77
RubyClassifierCodeDocument::protConstructorBlock
HierarchicalCodeBlock * protConstructorBlock
Definition: rubyclassifiercodedocument.h:74
CodeDocument::newHierarchicalCodeBlock
virtual HierarchicalCodeBlock * newHierarchicalCodeBlock()
Definition: codedocument.cpp:474
HierarchicalCodeBlock::setStartText
void setStartText(const QString &text)
Definition: hierarchicalcodeblock.cpp:197
codeclassfieldlist.h
CodeClassField::parentIsAttribute
bool parentIsAttribute() const
Definition: codeclassfield.cpp:124
CodeGenerator::cleanName
static QString cleanName(const QString &name)
Definition: codegenerator.cpp:548
hierarchicalcodeblock.h
rubycodeoperation.h
RubyClassifierCodeDocument::addCodeOperation
bool addCodeOperation(CodeOperation *op)
Definition: rubyclassifiercodedocument.cpp:121
CodeComment
Definition: codecomment.h:19
TextBlock::setWriteOutText
void setWriteOutText(bool write)
Definition: textblock.cpp:127
logError0
#define logError0(s)
Definition: uml.h:537
CodeDocument::setFileExtension
void setFileExtension(const QString &new_var)
Definition: codedocument.cpp:69
UMLApp::commonPolicy
CodeGenerationPolicy * commonPolicy() const
Definition: uml.cpp:2383
CodeGenObjectWithTextBlocks::addTextBlock
virtual bool addTextBlock(TextBlock *add_object)
Definition: codegenobjectwithtextblocks.cpp:56
RubyClassifierCodeDocument::constructorBlock
HierarchicalCodeBlock * constructorBlock
Definition: rubyclassifiercodedocument.h:64
CodeClassField::Aggregation
@ Aggregation
Definition: codeclassfield.h:30
CodeClassField::PlainAssociation
@ PlainAssociation
Definition: codeclassfield.h:30
CodeClassField::Attribute
@ Attribute
Definition: codeclassfield.h:30
CodeBlockWithComments::getComment
CodeComment * getComment() const
Definition: codeblockwithcomments.cpp:46
TextBlock::setTag
void setTag(const QString &value)
Definition: textblock.cpp:117
CodeClassField
Definition: codeclassfield.h:25
RubyClassifierCodeDocument::RubyClassifierCodeDocument
RubyClassifierCodeDocument(UMLClassifier *classifier)
Definition: rubyclassifiercodedocument.cpp:30
RubyClassifierCodeDocument::publicBlock
HierarchicalCodeBlock * publicBlock
Definition: rubyclassifiercodedocument.h:67
CodeGenPolicyExt
Definition: codegenpolicyext.h:22
UMLObject
The base class for UML objects.
Definition: umlobject.h:69
RubyClassifierCodeDocument::privConstructorBlock
HierarchicalCodeBlock * privConstructorBlock
Definition: rubyclassifiercodedocument.h:75
UMLObject::asUMLOperation
UMLOperation * asUMLOperation()
Definition: umlobject.cpp:1435
CodeOperation::loadFromXMI
virtual void loadFromXMI(QDomElement &root)
Definition: codeoperation.cpp:82
RubyClassDeclarationBlock::loadFromXMI
virtual void loadFromXMI(QDomElement &root)
Definition: rubyclassdeclarationblock.cpp:39
CodeBlock
Definition: codeblock.h:16
ClassifierCodeDocument
Definition: classifiercodedocument.h:28
CodeDocument::getPackage
QString getPackage() const
Definition: codedocument.cpp:120
HierarchicalCodeBlock::addCodeClassFieldMethods
void addCodeClassFieldMethods(CodeClassFieldList &list)
Definition: hierarchicalcodeblock.cpp:213
rubyclassifiercodedocument.h
rubycodecomment.h
Uml::Visibility::Public
@ Public
Definition: basictypes.h:46
Uml::ID::fromString
ID::Type fromString(const QString &id)
Definition: basictypes.cpp:1311
Codegen_Utils::capitalizeFirstLetter
QString capitalizeFirstLetter(const QString &string)
Definition: codegen_utils.cpp:425
RubyClassifierCodeDocument::getPath
QString getPath() const
Definition: rubyclassifiercodedocument.cpp:66
RubyClassifierCodeDocument::addOrUpdateCodeClassFieldMethodsInCodeBlock
void addOrUpdateCodeClassFieldMethodsInCodeBlock(CodeClassFieldList &list, RubyClassDeclarationBlock *codeBlock)
CodeBlock::loadFromXMI
virtual void loadFromXMI(QDomElement &root)
Definition: codeblock.cpp:85
UMLObject::visibility
Uml::Visibility::Enum visibility() const
Definition: umlobject.cpp:462
it
and that you know you can do these things To protect your we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights These restrictions translate to certain responsibilities for you if you distribute copies of the or if you modify it For if you distribute copies of such a whether gratis or for a you must give the recipients all the rights that you have You must make sure that receive or can get the source code And you must show them these terms so they know their rights We protect your rights with two distribute and or modify the software for each author s protection and we want to make certain that everyone understands that there is no warranty for this free software If the software is modified by someone else and passed we want its recipients to know that what they have is not the so that any problems introduced by others will not reflect on the original authors reputations any free program is threatened constantly by software patents We wish to avoid the danger that redistributors of a free program will individually obtain patent in effect making the program proprietary To prevent we have made it clear that any patent must be licensed for everyone s free use or not licensed at all The precise terms and conditions for distribution and modification follow TERMS AND CONDITIONS FOR DISTRIBUTION AND MODIFICATION This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License The refers to any such program or and a work based on the Program means either the Program or any derivative work under copyright a work containing the Program or a portion of it
Definition: GPL-2.0-only.txt:64
UMLDoc::findObjectById
UMLObject * findObjectById(Uml::ID::Type id)
Definition: umldoc.cpp:1051
ClassifierCodeDocument::findCodeClassFieldTextBlockByTag
TextBlock * findCodeClassFieldTextBlockByTag(const QString &tag)
Definition: classifiercodedocument.cpp:773
RubyClassifierCodeDocument::classDeclCodeBlock
RubyClassDeclarationBlock * classDeclCodeBlock
Definition: rubyclassifiercodedocument.h:63
RubyClassifierCodeDocument::~RubyClassifierCodeDocument
virtual ~RubyClassifierCodeDocument()
Definition: rubyclassifiercodedocument.cpp:39
RubyClassifierCodeDocument::operationsBlock
HierarchicalCodeBlock * operationsBlock
Definition: rubyclassifiercodedocument.h:65
HierarchicalCodeBlock::loadFromXMI
virtual void loadFromXMI(QDomElement &root)
Definition: hierarchicalcodeblock.cpp:267
UMLApp::generator
CodeGenerator * generator() const
Definition: uml.cpp:2455
classifiercodedocument.h
ClassifierCodeDocument::synchronize
virtual void synchronize()
Definition: classifiercodedocument.cpp:482
CodeGenerationPolicy
Definition: codegenerationpolicy.h:25
ClassifierCodeDocument::parentIsInterface
bool parentIsInterface() const
Definition: classifiercodedocument.cpp:421
CodeGenerationPolicy::getCodeVerboseDocumentComments
bool getCodeVerboseDocumentComments() const
Definition: codegenerationpolicy.cpp:148
RubyClassifierCodeDocument::init
void init()
Definition: rubyclassifiercodedocument.cpp:91
HierarchicalCodeBlock::addTextBlock
bool addTextBlock(TextBlock *add_object)
Definition: hierarchicalcodeblock.cpp:92
CodeClassField::setWriteOutMethods
void setWriteOutMethods(bool val)
Definition: codeclassfield.cpp:208
RubyClassDeclarationBlock::updateContent
void updateContent()
Definition: rubyclassdeclarationblock.cpp:47
logWarn1
#define logWarn1(s, a)
Definition: uml.h:542
ClassifierCodeDocument::getCodeClassFieldList
CodeClassFieldList * getCodeClassFieldList()
Definition: classifiercodedocument.cpp:269
c
type show c for details The hypothetical commands show w and show c should show the appropriate parts of the General Public License Of the commands you use may be called something other than show w and show c
Definition: GPL-2.0-only.txt:301
CodeBlockWithComments
Definition: codeblockwithcomments.h:19
UMLApp::app
static UMLApp * app()
Definition: uml.cpp:276
CodeBlockWithComments::loadFromXMI
virtual void loadFromXMI(QDomElement &root)
Definition: codeblockwithcomments.cpp:96
RubyClassifierCodeDocument::loadChildTextBlocksFromNode
virtual void loadChildTextBlocksFromNode(QDomElement &root)
Definition: rubyclassifiercodedocument.cpp:163
CodeDocument::newCodeBlock
virtual CodeBlock * newCodeBlock()
Definition: codedocument.cpp:456
UniqueID::gen
Uml::ID::Type gen()
Definition: uniqueid.cpp:21
CodeGenObjectWithTextBlocks::getHierarchicalCodeBlock
virtual HierarchicalCodeBlock * getHierarchicalCodeBlock(const QString &tag, const QString &comment, int indentLevel)
Definition: codegenobjectwithtextblocks.cpp:176
RubyClassifierCodeDocument::forceDoc
bool forceDoc()
Uml::Visibility::Enum
Enum
Definition: basictypes.h:45
RubyClassifierCodeDocument::getRubyPolicy
RubyCodeGenerationPolicy * getRubyPolicy() const
Definition: rubyclassifiercodedocument.cpp:46
RubyCodeGenerationPolicy
Definition: rubycodegenerationpolicy.h:18
HierarchicalCodeBlock
Definition: hierarchicalcodeblock.h:20
ClassifierCodeDocument::hasClassFields
bool hasClassFields() const
Definition: classifiercodedocument.cpp:154
classifier.h
CodeOperation::getParentOperation
UMLOperation * getParentOperation()
Definition: codeoperation.cpp:63
UMLOperation::isConstructorOperation
bool isConstructorOperation() const
Definition: operation.cpp:369
UMLOperation
Definition: operation.h:19
CodeOperation
Definition: codeoperation.h:19
CodeDocument::getFileName
QString getFileName() const
Definition: codedocument.cpp:60
UMLApp::policyExt
CodeGenPolicyExt * policyExt() const
Definition: uml.cpp:2399
uml.h
RubyClassifierCodeDocument::getClassDecl
RubyClassDeclarationBlock * getClassDecl()
Definition: rubyclassifiercodedocument.cpp:280
RubyClassifierCodeDocument::pubConstructorBlock
HierarchicalCodeBlock * pubConstructorBlock
Definition: rubyclassifiercodedocument.h:73
CodeGenerationPolicy::getNewLineEndingChars
QString getNewLineEndingChars() const
Definition: codegenerationpolicy.cpp:249
UMLClassifier
Information for a non-graphical Concept/Class.
Definition: classifier.h:34
debug_utils.h
CodeDocument::newCodeBlockWithComments
virtual CodeBlockWithComments * newCodeBlockWithComments()
Definition: codedocument.cpp:465
RubyClassifierCodeDocument
Definition: rubyclassifiercodedocument.h:31
RubyCodeGenerator
Definition: rubycodegenerator.h:22
ClassifierCodeDocument::getSpecificClassFields
CodeClassFieldList getSpecificClassFields(CodeClassField::ClassFieldType cfType) const
Definition: classifiercodedocument.cpp:52
CodeClassFieldList
QList< CodeClassField * > CodeClassFieldList
Definition: codeclassfieldlist.h:12
TextBlock
Definition: textblock.h:22
CodeGenerator
Definition: codegenerator.h:53
RubyClassifierCodeDocument::protOperationsBlock
HierarchicalCodeBlock * protOperationsBlock
Definition: rubyclassifiercodedocument.h:79
Uml::Visibility::Private
@ Private
Definition: basictypes.h:47
rubycodeclassfielddeclarationblock.h
RubyClassDeclarationBlock
Definition: rubyclassdeclarationblock.h:16
Uml::Visibility::Protected
@ Protected
Definition: basictypes.h:48
CodeGenerationPolicy::getAutoGenerateConstructors
bool getAutoGenerateConstructors()
Definition: codegenerationpolicy.cpp:361
UMLOperationList
QList< UMLOperation * > UMLOperationList
Definition: umloperationlist.h:12
rubycodegenerator.h
RubyCodeComment
Definition: rubycodecomment.h:22
UMLApp::document
UMLDoc * document() const
Definition: uml.cpp:1063
RubyClassifierCodeDocument::updateContent
void updateContent()
Definition: rubyclassifiercodedocument.cpp:312
codegen_utils.h
RubyClassifierCodeDocument::privOperationsBlock
HierarchicalCodeBlock * privOperationsBlock
Definition: rubyclassifiercodedocument.h:78
CodeComment::loadFromXMI
virtual void loadFromXMI(QDomElement &root)
Definition: codecomment.cpp:38