Summary: | Modifying the name of a function makes sequence diagram to freeze | ||
---|---|---|---|
Product: | [Applications] umbrello | Reporter: | Nicolas Brechet <nicolasbrechet> |
Component: | general | Assignee: | Umbrello Development Group <umbrello-devel> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | finex, ralf.habacker |
Priority: | NOR | Keywords: | triaged |
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | unspecified | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: |
Description
Nicolas Brechet
2006-02-13 14:41:57 UTC
SVN commit 509132 by okellogg: setOperation(): Connect the operation's modified() to the m_pFText's setMessageText(). This is the basic precondition for operation renaming to be propgated from the list view to the sequence diagram but I haven't been able to reproduce the reported freezing. CCBUG:121886 M +8 -2 messagewidget.cpp --- branches/KDE/3.5/kdesdk/umbrello/umbrello/messagewidget.cpp #509131:509132 @@ -484,7 +484,11 @@ } void MessageWidget::setOperation(UMLOperation *op) { + if (m_pObject && m_pFText) + disconnect(m_pObject, SIGNAL(modified()), m_pFText, SLOT(setMessageText())); m_pObject = op; + if (m_pObject && m_pFText) + connect(m_pObject, SIGNAL(modified()), m_pFText, SLOT(setMessageText())); } QString MessageWidget::getCustomOpText() { @@ -815,9 +819,10 @@ updateResizability(); UMLClassifier *c = dynamic_cast<UMLClassifier*>( pWB->getUMLObject() ); + UMLOperation *op = NULL; if (c) { Uml::IDType opId = STR2ID(m_CustomOp); - UMLOperation *op = dynamic_cast<UMLOperation*>( c->findChildObjectById(opId, true) ); + op = dynamic_cast<UMLOperation*>( c->findChildObjectById(opId, true) ); if (op) { // If the UMLOperation is set, m_CustomOp isn't used anyway. // Just setting it empty for the sake of sanity. @@ -839,7 +844,6 @@ m_CustomOp = QString::null; } } - setOperation(op); } Uml::IDType textId = STR2ID(textid); @@ -878,6 +882,8 @@ << tag << endl; } } + if (op) // Do it here and not earlier because now we have the + setOperation(op); // m_pFText and setOperation() can make connections. // always need this setLinkAndTextPos(); Can we close this? Can we close this? I can still confirm this problem in Umbrello 1.5.2 > I can still confirm this problem in Umbrello 1.5.2
Since it doesn't happen for me, any further info would be
helpful (for example, a gdb backtrace that shows the calls
involved in the lockup)
@Jonathan: can you still reproduce this bug? I've not understand how to reproduce in current trunk. works at least with version 2.15.3 |