cppcodegenerationpolicypage.cpp
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #include "cppcodegenerationpolicypage.h"
00019
00020 #include <kdebug.h>
00021 #include <klocale.h>
00022 #include <qlabel.h>
00023 #include <kcombobox.h>
00024 #include <qcheckbox.h>
00025
00026 #include "cppcodegenerationformbase.h"
00027 #include "../uml.h"
00028
00029 CPPCodeGenerationPolicyPage::CPPCodeGenerationPolicyPage( QWidget *parent, const char *name, CPPCodeGenerationPolicy * policy )
00030 : CodeGenerationPolicyPage(parent, name, policy)
00031 {
00032 CodeGenerationPolicy *common = UMLApp::app()->getCommonPolicy();
00033 form = new CPPCodeGenerationForm(this);
00034 form->m_SelectCommentStyle->setCurrentItem((int)(common->getCommentStyle()));
00035 form->setPackageIsANamespace(policy->getPackageIsNamespace());
00036 form->setVirtualDestructors(policy->getDestructorsAreVirtual());
00037 form->setGenerateAccessorMethods(policy->getAutoGenerateAccessors());
00038 form->setGenerateEmptyConstructors(common->getAutoGenerateConstructors());
00039 form->setOperationsAreInline(policy->getOperationsAreInline());
00040 form->setAccessorsAreInline(policy->getAccessorsAreInline());
00041 form->setAccessorsArePublic(policy->getAccessorsArePublic());
00042
00043 form->m_stringClassHCombo->setCurrentItem(policy->getStringClassName(),true);
00044 form->m_listClassHCombo->setCurrentItem(policy->getVectorClassName(),true);
00045
00046 form->m_stringIncludeFileHistoryCombo->setCurrentItem(policy->getStringClassNameInclude(),true);
00047 form->m_listIncludeFileHistoryCombo->setCurrentItem(policy->getVectorClassNameInclude(),true);
00048
00049 form->m_globalStringCheckBox->setChecked(policy->stringIncludeIsGlobal());
00050 form->m_globalListCheckBox->setChecked(policy->vectorIncludeIsGlobal());
00051 }
00052
00053 CPPCodeGenerationPolicyPage::~CPPCodeGenerationPolicyPage()
00054 {
00055 }
00056
00057 void CPPCodeGenerationPolicyPage::apply()
00058 {
00059 CodeGenerationPolicy *common = UMLApp::app()->getCommonPolicy();
00060
00061
00062 CPPCodeGenerationPolicy * parent = (CPPCodeGenerationPolicy*) m_parentPolicy;
00063
00064
00065
00066 parent->blockSignals(true);
00067
00068 common->setCommentStyle((CodeGenerationPolicy::CommentStyle ) form->m_SelectCommentStyle->currentItem());
00069 common->setAutoGenerateConstructors(form->getGenerateEmptyConstructors());
00070 parent->setAutoGenerateAccessors(form->getGenerateAccessorMethods());
00071
00072 parent->setDestructorsAreVirtual(form->getVirtualDestructors());
00073 parent->setPackageIsNamespace(form->getPackageIsANamespace());
00074 parent->setAccessorsAreInline(form->getAccessorsAreInline());
00075 parent->setOperationsAreInline(form->getOperationsAreInline());
00076 parent->setAccessorsArePublic(form->getAccessorsArePublic());
00077
00078 parent->setStringClassName(form->m_stringClassHCombo->currentText());
00079 parent->setStringClassNameInclude(form->m_stringIncludeFileHistoryCombo->currentText());
00080 parent->setStringIncludeIsGlobal(form->m_globalStringCheckBox->isChecked());
00081
00082 parent->setVectorClassName(form->m_listClassHCombo->currentText());
00083 parent->setVectorClassNameInclude(form->m_listIncludeFileHistoryCombo->currentText());
00084 parent->setVectorIncludeIsGlobal(form->m_globalListCheckBox->isChecked());
00085
00086 parent->blockSignals(false);
00087
00088
00089 common->emitModifiedCodeContentSig();
00090
00091 }
00092
00093
00094 #include "cppcodegenerationpolicypage.moc"
This file is part of the documentation for umbrello Version 3.1.0.