[Uml-devel] KDE/kdesdk/umbrello
Oliver Kellogg
okellogg at users.sourceforge.net
Wed Jun 20 22:06:10 UTC 2007
SVN commit 678217 by okellogg:
merge r677223:677847 from branches/KDE/3.5
M +1 -0 ChangeLog
M +2 -1 make-umbrello-release.sh
M +4 -3 umbrello/floatingtextwidgetcontroller.cpp
M +25 -4 umbrello/umlwidgetcontroller.cpp
--- trunk/KDE/kdesdk/umbrello/ChangeLog #678216:678217
@@ -1,6 +1,7 @@
Version 1.5.72
* Bugs/wishes from http://bugs.kde.org:
+* Cannot move text and label correctly after enabling snap to grid (137041)
* Wrong pascal code generation (146676)
* Crash when linking to undefined xmi.id (146748)
* End Activity Symbol gets invalid when line thickness is increased (146925)
--- trunk/KDE/kdesdk/umbrello/make-umbrello-release.sh #678216:678217
@@ -41,7 +41,8 @@
perl -p -e 's at umbrello/VERSION at VERSION@g' -i `find umbrello -name Makefile.am`
cd /tmp
log=/tmp/kdesdk/svn2dist.log
-kdesdk/scripts/svn2dist kdesdk $udir -n umbrello --admin-dir kdesdk/$udir/admin --log=$log -o
+kdesdk/scripts/svn2dist kdesdk $udir -n umbrello --admin-dir kdesdk/$udir/admin \
+ --svn-root svn://anonsvn.kde.org/home/kde/branches/stable --log=$log -o
mv umbrello/po kdesdk/$udir/
rm -rf umbrello
cd kdesdk/$udir
--- trunk/KDE/kdesdk/umbrello/umbrello/floatingtextwidgetcontroller.cpp #678216:678217
@@ -9,8 +9,11 @@
* Umbrello UML Modeller Authors <uml-devel at uml.sf.net> *
***************************************************************************/
+// own header
+#include "floatingtextwidgetcontroller.h"
+// qt/kde includes
+#include <kdebug.h>
// app includes
-#include "floatingtextwidgetcontroller.h"
#include "floatingtextwidget.h"
#include "messagewidget.h"
#include "objectwidget.h"
@@ -74,8 +77,6 @@
(m_movementDirectionY > 0 && m_unconstrainedPositionY < m_floatingTextWidget->getY()) ) {
newY = m_unconstrainedPositionY;
m_movementDirectionY = 0;
- } else {
- return;
}
m_floatingTextWidget->setX(newX);
--- trunk/KDE/kdesdk/umbrello/umbrello/umlwidgetcontroller.cpp #678216:678217
@@ -144,10 +144,10 @@
if ((me->modifiers() & Qt::ShiftModifier) && (me->modifiers() & Qt::ControlModifier)) {
//Move in Y axis
- diffX = m_oldX - m_widget->getX();
+ diffX = 0;
} else if ((me->modifiers() & Qt::ShiftModifier) || (me->modifiers() & Qt::ControlModifier)) {
//Move in X axis
- diffY = m_oldY - m_widget->getY();
+ diffY = 0;
}
/* Commands
@@ -155,7 +155,12 @@
doc->executeCommand(new cmdMoveWidget(this,diffX,diffY));*/
// moveWidget(diffX,diffY);
+
+ // kDebug() << "UMLWidgetController::mouseMoveEvent before constrainMovementForAllWidgets:"
+ // << " diffX=" << diffX << ", diffY=" << diffY << endl;
constrainMovementForAllWidgets(diffX, diffY);
+ // kDebug() << "UMLWidgetController::mouseMoveEvent after constrainMovementForAllWidgets:"
+ // << " diffX=" << diffX << ", diffY=" << diffY << endl;
//Nothing to move
if (diffX == 0 && diffY == 0) {
@@ -185,6 +190,7 @@
//m_doc->executeCommand(new cmdMoveWidgetBy(widget,diffX,diffY));
widget->getWidgetController()->moveWidgetBy(diffX, diffY);
}
+ // kDebug() << endl;
// Move any selected associations.
AssociationWidgetList awl = m_widget->m_pView->getSelectedAssocs();
@@ -529,21 +535,36 @@
}
QPoint UMLWidgetController::getPositionDifference(QMouseEvent* me) {
- int newX = me->x() - m_pressOffsetX;
- int newY = me->y() - m_pressOffsetY;
+ /*
+ kDebug() << "UMLWidgetController::getPositionDifference: me->x=" << me->x()
+ << " m_widget->getX=" << m_widget->getX() << ", m_oldX=" << m_oldX
+ << ", m_pressOffsetX=" << m_pressOffsetX << endl;
+ kDebug() << "UMLWidgetController::getPositionDifference: me->y=" << me->y()
+ << " m_widget->getY=" << m_widget->getY() << ", m_oldY=" << m_oldY
+ << ", m_pressOffsetY=" << m_pressOffsetY << endl;
+ */
+ int newX = me->x() + m_widget->getX() - m_oldX - m_pressOffsetX;
+ int newY = me->y() + m_widget->getY() - m_oldY - m_pressOffsetY;
int maxX = m_widget->m_pView->canvas()->width();
int maxY = m_widget->m_pView->canvas()->height();
+ m_oldX = newX;
+ m_oldY = newY;
+
if (newX + (m_minSelectedX - m_widget->getX()) < 0) {
+ //kDebug() << "UMLWidgetController::getPositionDifference: got into cond.1" << endl;
newX = m_widget->getX() - m_minSelectedX;
}
if (newY + (m_minSelectedY - m_widget->getY()) < 0) {
+ //kDebug() << "UMLWidgetController::getPositionDifference: got into cond.2" << endl;
newY = m_widget->getY() - m_minSelectedY;
}
if (newX + (m_maxSelectedX - m_widget->getX()) > maxX) {
+ //kDebug() << "UMLWidgetController::getPositionDifference: got into cond.3" << endl;
newX = maxX - (m_maxSelectedX - m_widget->getX());
}
if (newY + (m_maxSelectedY - m_widget->getY()) > maxY) {
+ //kDebug() << "UMLWidgetController::getPositionDifference: got into cond.4" << endl;
newY = maxY - (m_maxSelectedY - m_widget->getY());
}
More information about the umbrello-devel
mailing list