[Uml-devel] KDE/kdesdk/umbrello/umbrello
Andi Fischer
andi.fischer at hispeed.ch
Sun Apr 22 19:23:35 UTC 2012
SVN commit 1291008 by fischer:
Difference to gsoc-branch reduced.
M +24 -17 dialogs/classgenpage.cpp
M +24 -8 dialogs/umlwidgetstylepage.cpp
M +1 -2 widgets/classifierwidget.h
--- trunk/KDE/kdesdk/umbrello/umbrello/dialogs/classgenpage.cpp #1291007:1291008
@@ -44,8 +44,11 @@
#include <QtGui/QGridLayout>
ClassGenPage::ClassGenPage(UMLDoc* d, QWidget* parent, UMLObject* o)
- : QWidget(parent), m_pObject(o), m_pWidget(0), m_pInstanceWidget(0), m_pUmldoc(d)
+ : QWidget(parent),
+ m_pObject(o), m_pWidget(0), m_pInstanceWidget(0), m_pUmldoc(d)
{
+ Q_ASSERT_X(m_pObject, "ClassGenPage::ClassGenPage", "Given UMLObject is NULL.");
+
int margin = fontMetrics().height();
setMinimumSize(310,330);
@@ -54,7 +57,7 @@
// setup name
QString name;
- UMLObject::ObjectType t = o->baseType();
+ UMLObject::ObjectType t = m_pObject->baseType();
switch (t) {
case UMLObject::ot_Class:
name = i18n("Class &name:");
@@ -116,7 +119,7 @@
m_pStereoTypeCB = new KComboBox(true, this);
m_pNameLayout->addWidget(m_pStereoTypeCB, 1, 1);
- m_pStereoTypeCB->setItemText( m_pStereoTypeCB->currentIndex(), o->stereotype() );
+ m_pStereoTypeCB->setItemText( m_pStereoTypeCB->currentIndex(), m_pObject->stereotype() );
m_pStereoTypeL->setBuddy(m_pStereoTypeCB);
if (t == UMLObject::ot_Interface || t == UMLObject::ot_Datatype || t == UMLObject::ot_Enum) {
@@ -138,8 +141,8 @@
}
packages.sort();
m_pPackageCB->insertItems(-1, packages);
- QString packagePath = o->package();
- UMLPackage* parentPackage = o->umlPackage();
+ QString packagePath = m_pObject->package();
+ UMLPackage* parentPackage = m_pObject->umlPackage();
// if parent package == NULL
// or if the parent package is the Logical View folder
@@ -158,7 +161,7 @@
abstractCaption = i18n("A&bstract use case");
}
m_pAbstractCB = new QCheckBox( abstractCaption, this );
- m_pAbstractCB->setChecked( o->isAbstract() );
+ m_pAbstractCB->setChecked( m_pObject->isAbstract() );
m_pNameLayout->addWidget( m_pAbstractCB, 3, 0 );
}
@@ -231,9 +234,9 @@
topLayout->addWidget(m_docGB);
// setup fields
- m_pClassNameLE->setText(o->name());
- m_doc->setText(o->doc());
- Uml::Visibility s = o->visibility();
+ m_pClassNameLE->setText(m_pObject->name());
+ m_doc->setText(m_pObject->doc());
+ Uml::Visibility s = m_pObject->visibility();
if (s == Uml::Visibility::Public)
m_pPublicRB->setChecked(true);
else if (s == Uml::Visibility::Private)
@@ -252,8 +255,11 @@
}
ClassGenPage::ClassGenPage(UMLDoc* d, QWidget* parent, ObjectWidget* o)
- : QWidget(parent), m_pObject(0), m_pWidget(o), m_pInstanceWidget(0), m_pUmldoc(d)
+ : QWidget(parent),
+ m_pObject(0), m_pWidget(o), m_pInstanceWidget(0), m_pUmldoc(d)
{
+ Q_ASSERT_X(m_pWidget, "ClassGenPage::ClassGenPage", "Given ObjectWidget is NULL.");
+
m_pDeconCB = 0;
m_pMultiCB = 0;
@@ -272,7 +278,7 @@
m_pNameLayout->addWidget(m_pNameL, 0, 0);
m_pClassNameLE = new KLineEdit(this);
- m_pClassNameLE->setText(o->name());
+ m_pClassNameLE->setText(m_pWidget->name());
m_pNameLayout->addWidget(m_pClassNameLE, 0, 1);
m_pInstanceL = new QLabel(this);
@@ -280,23 +286,23 @@
m_pNameLayout->addWidget(m_pInstanceL, 1, 0);
m_pInstanceLE = new KLineEdit(this);
- m_pInstanceLE->setText(o->instanceName());
+ m_pInstanceLE->setText(m_pWidget->instanceName());
m_pNameLayout->addWidget(m_pInstanceLE, 1, 1);
UMLView *view = UMLApp::app()->currentView();
m_pDrawActorCB = new QCheckBox( i18n( "Draw as actor" ) , this );
- m_pDrawActorCB->setChecked( o->drawAsActor() );
+ m_pDrawActorCB->setChecked(m_pWidget->drawAsActor());
m_pNameLayout->addWidget( m_pDrawActorCB, 2, 0 );
if (view->umlScene()->type() == Uml::DiagramType::Collaboration) {
m_pMultiCB = new QCheckBox(i18n("Multiple instance"), this);
- m_pMultiCB->setChecked(o->multipleInstance());
+ m_pMultiCB->setChecked(m_pWidget->multipleInstance());
m_pNameLayout->addWidget(m_pMultiCB, 2,1);
if ( m_pDrawActorCB->isChecked() )
m_pMultiCB->setEnabled( false );
} else { // sequence diagram
m_pDeconCB = new QCheckBox(i18n("Show destruction"), this);
- m_pDeconCB->setChecked(o->showDestruction());
+ m_pDeconCB->setChecked(m_pWidget->showDestruction());
m_pNameLayout->addWidget(m_pDeconCB, 2,1);
}
// setup documentation
@@ -308,7 +314,7 @@
m_doc = new KTextEdit(m_docGB);
m_doc->setLineWrapMode(QTextEdit::WidgetWidth);
- m_doc->setText(o->documentation());
+ m_doc->setText(m_pWidget->documentation());
docLayout->addWidget(m_doc);
if (m_pMultiCB) {
connect( m_pDrawActorCB, SIGNAL(toggled(bool)), this, SLOT(slotActorToggled(bool)));
@@ -316,7 +322,8 @@
}
ClassGenPage::ClassGenPage(UMLDoc* d, QWidget* parent, UMLWidget* widget)
- : QWidget(parent), m_pObject(0), m_pWidget(0), m_pInstanceWidget(widget), m_pUmldoc(d)
+ : QWidget(parent),
+ m_pObject(0), m_pWidget(0), m_pInstanceWidget(widget), m_pUmldoc(d)
{
m_pDeconCB = 0;
m_pMultiCB = 0;
--- trunk/KDE/kdesdk/umbrello/umbrello/dialogs/umlwidgetstylepage.cpp #1291007:1291008
@@ -10,6 +10,7 @@
#include "umlwidgetstylepage.h"
+#include "debug_utils.h"
#include "optionstate.h"
#include "uml.h"
#include "umlscene.h"
@@ -32,10 +33,10 @@
* Constructor - Observe a UMLWidget.
*/
UMLWidgetStylePage::UMLWidgetStylePage( QWidget *pParent, WidgetBase *pWidget )
- : QWidget( pParent )
+ : QWidget(pParent),
+ m_pUMLWidget(pWidget),
+ m_options(0)
{
- m_pUMLWidget = pWidget;
- m_options = 0;
init();
m_pTextColorB->setColor( pWidget->textColor() );
m_pLineColorB->setColor( pWidget->lineColor() );
@@ -46,20 +47,23 @@
if (!m_pUMLWidget) { // when we are on the diagram
UMLView * view = UMLApp::app()->currentView();
if (view) {
- m_BackgroundColorB->setColor(view->umlScene()->backgroundColor());
- m_GridDotColorB->setColor(view->umlScene()->gridDotColor());
+ UMLScene* scene = view->umlScene();
+ if (scene) {
+ m_BackgroundColorB->setColor(scene->backgroundColor());
+ m_GridDotColorB->setColor(scene->gridDotColor());
}
}
}
+}
/**
* Constructor - Observe an OptionState structure.
*/
UMLWidgetStylePage::UMLWidgetStylePage( QWidget * pParent, Settings::OptionState *options )
- : QWidget( pParent )
+ : QWidget(pParent),
+ m_pUMLWidget(0),
+ m_options(options)
{
- m_options = options;
- m_pUMLWidget = 0;
init();
m_pTextColorB->setColor( m_options->uiState.textColor );
m_pLineColorB->setColor( m_options->uiState.lineColor );
@@ -250,6 +254,18 @@
m_options->uiState.lineWidth = m_lineWidthB->value();
UMLApp::app()->currentView()->umlScene()->setOptionState(*m_options);
}
+
+ if (!m_pUMLWidget) { // when we are on the diagram
+ UMLView * view = UMLApp::app()->currentView();
+ if (view) {
+ UMLScene* scene = view->umlScene();
+ if (scene) {
+ uDebug() << "Setting background and grid dot color.";
+ scene->setBackgroundColor(m_BackgroundColorB->color());
+ scene->setGridDotColor(m_GridDotColorB->color());
}
+ }
+ }
+}
#include "umlwidgetstylepage.moc"
--- trunk/KDE/kdesdk/umbrello/umbrello/widgets/classifierwidget.h #1291007:1291008
@@ -100,6 +100,7 @@
void slotShowOperations(bool state);
private:
+ void updateSignatureTypes();
QSize calculateTemplatesBoxSize();
UMLSceneSize minimumSize();
@@ -107,8 +108,6 @@
void drawAsCircle(QPainter& p, int offsetX, int offsetY);
QSize calculateAsCircleSize();
- void updateSignatureTypes();
-
int displayedMembers(UMLObject::ObjectType ot);
void drawMembers(QPainter & p, UMLObject::ObjectType ot, Uml::SignatureType sigType,
int x, int y, int fontHeight);
More information about the umbrello-devel
mailing list