• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdesdk API Reference
  • KDE Home
  • Contact Us
 

umbrello/umbrello

  • sources
  • kde-4.12
  • kdesdk
  • umbrello
  • umbrello
  • codegenerators
  • java
javacodegenerationpolicy.cpp
Go to the documentation of this file.
1 /***************************************************************************
2  * This program is free software; you can redistribute it and/or modify *
3  * it under the terms of the GNU General Public License as published by *
4  * the Free Software Foundation; either version 2 of the License, or *
5  * (at your option) any later version. *
6  * *
7  * copyright (C) 2003 Brian Thomas <thomas@mail630.gsfc.nasa.gov> *
8  * copyright (C) 2004-2013 *
9  * Umbrello UML Modeller Authors <umbrello-devel@kde.org> *
10  ***************************************************************************/
11 
12 // own header
13 #include "javacodegenerationpolicy.h"
14 
15 // app includes
16 #include "javacodegenerationpolicypage.h"
17 #include "javacodegenerator.h"
18 #include "optionstate.h"
19 #include "uml.h"
20 #include "umbrellosettings.h"
21 
22 // kde includes
23 #include <kconfig.h>
24 
25 /*
26 JavaCodeGenerationPolicy::JavaCodeGenerationPolicy(CodeGenerationPolicy *defaults)
27  : CodeGenerationPolicy(defaults)
28 {
29  init();
30  setDefaults(defaults, false);
31 }
32  */
33 
37 JavaCodeGenerationPolicy::JavaCodeGenerationPolicy()
38  // : CodeGenerationPolicy()
39 {
40  m_commonPolicy = UMLApp::app()->commonPolicy();
41  init();
42 }
43 
47 JavaCodeGenerationPolicy::~JavaCodeGenerationPolicy()
48 {
49 }
50 
55 void JavaCodeGenerationPolicy::setAutoGenerateAttribAccessors(bool var)
56 {
57  Settings::optionState().codeGenerationState.javaCodeGenerationState.autoGenerateAttributeAccessors = var;
58  m_commonPolicy->emitModifiedCodeContentSig();
59 }
60 
65 void JavaCodeGenerationPolicy::setAutoGenerateAssocAccessors(bool var)
66 {
67  Settings::optionState().codeGenerationState.javaCodeGenerationState.autoGenerateAssocAccessors = var;
68  m_commonPolicy->emitModifiedCodeContentSig();
69 }
70 
75 bool JavaCodeGenerationPolicy::getAutoGenerateAttribAccessors()
76 {
77  return Settings::optionState().codeGenerationState.javaCodeGenerationState.autoGenerateAttributeAccessors;
78 }
79 
84 bool JavaCodeGenerationPolicy::getAutoGenerateAssocAccessors()
85 {
86  return Settings::optionState().codeGenerationState.javaCodeGenerationState.autoGenerateAssocAccessors;
87 }
88 
94 void JavaCodeGenerationPolicy::setDefaults (CodeGenPolicyExt * defaults, bool emitUpdateSignal)
95 {
96  JavaCodeGenerationPolicy * jclone;
97  if (!defaults)
98  return;
99 
100  // NOW block signals for java param setting
101  blockSignals(true); // we need to do this because otherwise most of these
102  // settors below will each send the modifiedCodeContent() signal
103  // needlessly (we can just make one call at the end).
104 
105  // now do java-specific stuff IF our clone is also a JavaCodeGenerationPolicy object
106  if((jclone = dynamic_cast<JavaCodeGenerationPolicy*>(defaults)))
107  {
108  setAutoGenerateAttribAccessors(jclone->getAutoGenerateAttribAccessors());
109  setAutoGenerateAssocAccessors(jclone->getAutoGenerateAssocAccessors());
110  }
111 
112  blockSignals(false); // "as you were citizen"
113 
114  if(emitUpdateSignal)
115  m_commonPolicy->emitModifiedCodeContentSig();
116 }
117 
122 void JavaCodeGenerationPolicy::setDefaults(bool emitUpdateSignal)
123 {
124  // call method at the common policy to init default stuff
125  m_commonPolicy->setDefaults(false);
126 
127  // NOW block signals (because call to super-class method will leave value at "true")
128  blockSignals(true); // we need to do this because otherwise most of these
129  // settors below will each send the modifiedCodeContent() signal
130  // needlessly (we can just make one call at the end).
131 
132  setAutoGenerateAttribAccessors(UmbrelloSettings::autoGenerateAttributeAccessorsJava());
133  setAutoGenerateAssocAccessors(UmbrelloSettings::autoGenerateAssocAccessorsJava());
134 
135  CodeGenerator *codegen = UMLApp::app()->generator();
136  JavaCodeGenerator *javacodegen = dynamic_cast<JavaCodeGenerator*>(codegen);
137  if (javacodegen) {
138  bool mkant = UmbrelloSettings::buildANTDocumentJava();
139  javacodegen->setCreateANTBuildFile(mkant);
140  }
141 
142  blockSignals(false); // "as you were citizen"
143 
144  if(emitUpdateSignal)
145  m_commonPolicy->emitModifiedCodeContentSig();
146 }
147 
154 CodeGenerationPolicyPage * JavaCodeGenerationPolicy::createPage (QWidget *parent, const char *name)
155 {
156  return new JavaCodeGenerationPolicyPage (parent, name, this);
157 }
158 
162 void JavaCodeGenerationPolicy::init()
163 {
164  blockSignals(true);
165 
166  Settings::OptionState optionState = Settings::optionState();
167  setAutoGenerateAttribAccessors(optionState.codeGenerationState.javaCodeGenerationState.autoGenerateAttributeAccessors);
168  setAutoGenerateAssocAccessors(optionState.codeGenerationState.javaCodeGenerationState.autoGenerateAssocAccessors);
169 
170  blockSignals(false);
171 }
172 
173 #include "javacodegenerationpolicy.moc"
UmbrelloSettings::buildANTDocumentJava
static bool buildANTDocumentJava()
Get Build ANT Document (Java)
Definition: umbrellosettings.h:1618
JavaCodeGenerationPolicyPage
Definition: javacodegenerationpolicypage.h:33
Settings::CodeGenerationState::JavaCodeGenerationState::autoGenerateAttributeAccessors
bool autoGenerateAttributeAccessors
Definition: optionstate.h:114
Settings::optionState
OptionState & optionState()
Definition: optionstate.cpp:25
UmbrelloSettings::autoGenerateAttributeAccessorsJava
static bool autoGenerateAttributeAccessorsJava()
Get Auto Generate Attribute Accessors (Java)
Definition: umbrellosettings.h:1580
umbrellosettings.h
CodeGenerationPolicy::emitModifiedCodeContentSig
void emitModifiedCodeContentSig()
Emits the signal 'ModifiedCodeContent'.
Definition: codegenerationpolicy.cpp:420
JavaCodeGenerationPolicy::setAutoGenerateAssocAccessors
void setAutoGenerateAssocAccessors(bool var)
Set the value of m_autoGenerateAssocAccessors.
Definition: javacodegenerationpolicy.cpp:65
QWidget
UMLApp::app
static UMLApp * app()
Get the last created instance of this class.
Definition: uml.cpp:206
CodeGenerationPolicy::setDefaults
virtual void setDefaults(CodeGenerationPolicy *defaults, bool emitUpdateSignal=true)
set the defaults from a config file
Definition: codegenerationpolicy.cpp:429
JavaCodeGenerationPolicy::createPage
CodeGenerationPolicyPage * createPage(QWidget *parent=0, const char *name=0)
Create a new dialog interface for this object.
Definition: javacodegenerationpolicy.cpp:154
Settings::OptionState
Definition: optionstate.h:141
JavaCodeGenerationPolicy
Definition: javacodegenerationpolicy.h:23
optionstate.h
javacodegenerationpolicy.h
JavaCodeGenerationPolicy::setAutoGenerateAttribAccessors
void setAutoGenerateAttribAccessors(bool var)
Set the value of m_autoGenerateAttribAccessors.
Definition: javacodegenerationpolicy.cpp:55
JavaCodeGenerationPolicy::getAutoGenerateAttribAccessors
bool getAutoGenerateAttribAccessors()
Get the value of m_autoGenerateAttribAccessors.
Definition: javacodegenerationpolicy.cpp:75
javacodegenerationpolicypage.h
UmbrelloSettings::autoGenerateAssocAccessorsJava
static bool autoGenerateAssocAccessorsJava()
Get Auto Generate Assoc Accessors (Java)
Definition: umbrellosettings.h:1599
UMLApp::commonPolicy
CodeGenerationPolicy * commonPolicy() const
Returns the default code generation policy.
Definition: uml.cpp:2132
Settings::CodeGenerationState::JavaCodeGenerationState::autoGenerateAssocAccessors
bool autoGenerateAssocAccessors
Definition: optionstate.h:115
javacodegenerator.h
Settings::OptionState::codeGenerationState
CodeGenerationState codeGenerationState
Definition: optionstate.h:146
JavaCodeGenerator::setCreateANTBuildFile
void setCreateANTBuildFile(bool buildIt)
Set the value of m_createANTBuildFile.
Definition: javacodegenerator.cpp:224
Settings::CodeGenerationState::javaCodeGenerationState
JavaCodeGenerationState javaCodeGenerationState
Definition: optionstate.h:126
JavaCodeGenerationPolicy::JavaCodeGenerationPolicy
JavaCodeGenerationPolicy()
Constructor.
Definition: javacodegenerationpolicy.cpp:37
CodeGenerator
This class collects together all of the code documents which form this project, and generates code fo...
Definition: codegenerator.h:68
JavaCodeGenerator
Definition: javacodegenerator.h:27
JavaCodeGenerationPolicy::getAutoGenerateAssocAccessors
bool getAutoGenerateAssocAccessors()
Get the value of m_autoGenerateAssocAccessors.
Definition: javacodegenerationpolicy.cpp:84
CodeGenerationPolicyPage
Definition: codegenerationpolicypage.h:30
JavaCodeGenerationPolicy::setDefaults
virtual void setDefaults(CodeGenPolicyExt *defaults, bool emitUpdateSignal=true)
Set the defaults for this code generator from the passed generator.
Definition: javacodegenerationpolicy.cpp:94
CodeGenPolicyExt
Base class for programming language specific code generation policy extensions.
Definition: codegenpolicyext.h:28
UMLApp::generator
CodeGenerator * generator() const
Gets the appropriate CodeGenerator.
Definition: uml.cpp:2196
JavaCodeGenerationPolicy::~JavaCodeGenerationPolicy
virtual ~JavaCodeGenerationPolicy()
Empty Destructor.
Definition: javacodegenerationpolicy.cpp:47
uml.h
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 23:06:00 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

umbrello/umbrello

Skip menu "umbrello/umbrello"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Modules
  • Related Pages

kdesdk API Reference

Skip menu "kdesdk API Reference"
  • kapptemplate
  • kcachegrind
  • kompare
  • lokalize
  • okteta
  • umbrello
  •   umbrello

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal