|
|
|
@ -47,7 +47,7 @@ public:
|
|
|
|
|
KoChild::Gadget gadget, const TQPoint& point ) :
|
|
|
|
|
m_gadget(gadget), m_view(view), m_child(child), m_parentMatrix(matrix) {
|
|
|
|
|
|
|
|
|
|
m_tqgeometryStart = child->tqgeometry();
|
|
|
|
|
m_geometryStart = child->tqgeometry();
|
|
|
|
|
m_matrix = child->matrix() * matrix;
|
|
|
|
|
m_invertParentMatrix = matrix.invert();
|
|
|
|
|
|
|
|
|
@ -60,7 +60,7 @@ public:
|
|
|
|
|
|
|
|
|
|
KoChild::Gadget m_gadget;
|
|
|
|
|
TQPoint m_mouseStart;
|
|
|
|
|
TQRect m_tqgeometryStart;
|
|
|
|
|
TQRect m_geometryStart;
|
|
|
|
|
KoView* m_view;
|
|
|
|
|
KoChild* m_child;
|
|
|
|
|
TQWMatrix m_invert;
|
|
|
|
@ -123,77 +123,77 @@ bool KoPartResizeHandler::eventFilter( TQObject*, TQEvent* ev )
|
|
|
|
|
{
|
|
|
|
|
case KoChild::TopLeft:
|
|
|
|
|
{
|
|
|
|
|
x = TQMIN( d->m_tqgeometryStart.width() - 1, x );
|
|
|
|
|
y = TQMIN( d->m_tqgeometryStart.height() - 1, y );
|
|
|
|
|
x = TQMIN( d->m_geometryStart.width() - 1, x );
|
|
|
|
|
y = TQMIN( d->m_geometryStart.height() - 1, y );
|
|
|
|
|
|
|
|
|
|
d->m_child->setGeometry( TQRect( d->m_tqgeometryStart.x() + x, d->m_tqgeometryStart.y() + y,
|
|
|
|
|
d->m_tqgeometryStart.width() - x, d->m_tqgeometryStart.height() - y ) );
|
|
|
|
|
d->m_child->setGeometry( TQRect( d->m_geometryStart.x() + x, d->m_geometryStart.y() + y,
|
|
|
|
|
d->m_geometryStart.width() - x, d->m_geometryStart.height() - y ) );
|
|
|
|
|
tqrepaint(rgn);
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case KoChild::TopMid:
|
|
|
|
|
{
|
|
|
|
|
y = TQMIN( d->m_tqgeometryStart.height() - 1, y );
|
|
|
|
|
y = TQMIN( d->m_geometryStart.height() - 1, y );
|
|
|
|
|
|
|
|
|
|
d->m_child->setGeometry( TQRect( d->m_tqgeometryStart.x(), d->m_tqgeometryStart.y() + y,
|
|
|
|
|
d->m_tqgeometryStart.width(), d->m_tqgeometryStart.height() - y ) );
|
|
|
|
|
d->m_child->setGeometry( TQRect( d->m_geometryStart.x(), d->m_geometryStart.y() + y,
|
|
|
|
|
d->m_geometryStart.width(), d->m_geometryStart.height() - y ) );
|
|
|
|
|
tqrepaint(rgn);
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case KoChild::TopRight:
|
|
|
|
|
{
|
|
|
|
|
x = TQMAX( -d->m_tqgeometryStart.width() + 1, x );
|
|
|
|
|
y = TQMIN( d->m_tqgeometryStart.height() - 1, y );
|
|
|
|
|
x = TQMAX( -d->m_geometryStart.width() + 1, x );
|
|
|
|
|
y = TQMIN( d->m_geometryStart.height() - 1, y );
|
|
|
|
|
|
|
|
|
|
d->m_child->setGeometry( TQRect( d->m_tqgeometryStart.x(), d->m_tqgeometryStart.y() + y,
|
|
|
|
|
d->m_tqgeometryStart.width() + x, d->m_tqgeometryStart.height() - y ) );
|
|
|
|
|
d->m_child->setGeometry( TQRect( d->m_geometryStart.x(), d->m_geometryStart.y() + y,
|
|
|
|
|
d->m_geometryStart.width() + x, d->m_geometryStart.height() - y ) );
|
|
|
|
|
tqrepaint(rgn);
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case KoChild::MidLeft:
|
|
|
|
|
{
|
|
|
|
|
x = TQMIN( d->m_tqgeometryStart.width() - 1, x );
|
|
|
|
|
x = TQMIN( d->m_geometryStart.width() - 1, x );
|
|
|
|
|
|
|
|
|
|
d->m_child->setGeometry( TQRect( d->m_tqgeometryStart.x() + x, d->m_tqgeometryStart.y(),
|
|
|
|
|
d->m_tqgeometryStart.width() - x, d->m_tqgeometryStart.height() ) );
|
|
|
|
|
d->m_child->setGeometry( TQRect( d->m_geometryStart.x() + x, d->m_geometryStart.y(),
|
|
|
|
|
d->m_geometryStart.width() - x, d->m_geometryStart.height() ) );
|
|
|
|
|
tqrepaint(rgn);
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case KoChild::MidRight:
|
|
|
|
|
{
|
|
|
|
|
x = TQMAX( -d->m_tqgeometryStart.width() + 1, x );
|
|
|
|
|
x = TQMAX( -d->m_geometryStart.width() + 1, x );
|
|
|
|
|
|
|
|
|
|
d->m_child->setGeometry( TQRect( d->m_tqgeometryStart.x(), d->m_tqgeometryStart.y(),
|
|
|
|
|
d->m_tqgeometryStart.width() + x, d->m_tqgeometryStart.height() ) );
|
|
|
|
|
d->m_child->setGeometry( TQRect( d->m_geometryStart.x(), d->m_geometryStart.y(),
|
|
|
|
|
d->m_geometryStart.width() + x, d->m_geometryStart.height() ) );
|
|
|
|
|
tqrepaint(rgn);
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case KoChild::BottomLeft:
|
|
|
|
|
{
|
|
|
|
|
x = TQMIN( d->m_tqgeometryStart.width() - 1, x );
|
|
|
|
|
y = TQMAX( -d->m_tqgeometryStart.height() + 1, y );
|
|
|
|
|
x = TQMIN( d->m_geometryStart.width() - 1, x );
|
|
|
|
|
y = TQMAX( -d->m_geometryStart.height() + 1, y );
|
|
|
|
|
|
|
|
|
|
d->m_child->setGeometry( TQRect( d->m_tqgeometryStart.x() + x, d->m_tqgeometryStart.y(),
|
|
|
|
|
d->m_tqgeometryStart.width() - x, d->m_tqgeometryStart.height() + y ) );
|
|
|
|
|
d->m_child->setGeometry( TQRect( d->m_geometryStart.x() + x, d->m_geometryStart.y(),
|
|
|
|
|
d->m_geometryStart.width() - x, d->m_geometryStart.height() + y ) );
|
|
|
|
|
tqrepaint(rgn);
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case KoChild::BottomMid:
|
|
|
|
|
{
|
|
|
|
|
y = TQMAX( -d->m_tqgeometryStart.height() + 1, y );
|
|
|
|
|
y = TQMAX( -d->m_geometryStart.height() + 1, y );
|
|
|
|
|
|
|
|
|
|
d->m_child->setGeometry( TQRect( d->m_tqgeometryStart.x(), d->m_tqgeometryStart.y(),
|
|
|
|
|
d->m_tqgeometryStart.width(), d->m_tqgeometryStart.height() + y ) );
|
|
|
|
|
d->m_child->setGeometry( TQRect( d->m_geometryStart.x(), d->m_geometryStart.y(),
|
|
|
|
|
d->m_geometryStart.width(), d->m_geometryStart.height() + y ) );
|
|
|
|
|
tqrepaint(rgn);
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case KoChild::BottomRight:
|
|
|
|
|
{
|
|
|
|
|
x = TQMAX( -d->m_tqgeometryStart.width() + 1, x );
|
|
|
|
|
y = TQMAX( -d->m_tqgeometryStart.height() + 1, y );
|
|
|
|
|
x = TQMAX( -d->m_geometryStart.width() + 1, x );
|
|
|
|
|
y = TQMAX( -d->m_geometryStart.height() + 1, y );
|
|
|
|
|
|
|
|
|
|
d->m_child->setGeometry( TQRect( d->m_tqgeometryStart.x(), d->m_tqgeometryStart.y(),
|
|
|
|
|
d->m_tqgeometryStart.width() + x, d->m_tqgeometryStart.height() + y ) );
|
|
|
|
|
d->m_child->setGeometry( TQRect( d->m_geometryStart.x(), d->m_geometryStart.y(),
|
|
|
|
|
d->m_geometryStart.width() + x, d->m_geometryStart.height() + y ) );
|
|
|
|
|
tqrepaint(rgn);
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
@ -214,7 +214,7 @@ public:
|
|
|
|
|
m_parentMatrix(matrix) {
|
|
|
|
|
m_invertParentMatrix = matrix.invert();
|
|
|
|
|
m_mouseDragStart = m_invertParentMatrix.map( point );
|
|
|
|
|
m_tqgeometryDragStart = m_dragChild->tqgeometry();
|
|
|
|
|
m_geometryDragStart = m_dragChild->tqgeometry();
|
|
|
|
|
m_rotationDragStart = m_dragChild->rotationPoint();
|
|
|
|
|
}
|
|
|
|
|
~KoPartMoveHandlerPrivate() {}
|
|
|
|
@ -222,7 +222,7 @@ public:
|
|
|
|
|
KoView* m_view;
|
|
|
|
|
KoChild* m_dragChild;
|
|
|
|
|
TQPoint m_mouseDragStart;
|
|
|
|
|
TQRect m_tqgeometryDragStart;
|
|
|
|
|
TQRect m_geometryDragStart;
|
|
|
|
|
TQPoint m_rotationDragStart;
|
|
|
|
|
TQWMatrix m_invertParentMatrix;
|
|
|
|
|
TQWMatrix m_parentMatrix;
|
|
|
|
@ -256,9 +256,9 @@ bool KoPartMoveHandler::eventFilter( TQObject*, TQEvent* ev )
|
|
|
|
|
|
|
|
|
|
TQRegion bound = d->m_dragChild->frameRegion( d->m_parentMatrix, true );
|
|
|
|
|
TQPoint pos = d->m_invertParentMatrix.map( e->pos() /* + TQPoint(d->m_view->canvasXOffset(), d->m_view->canvasYOffset()) */ );
|
|
|
|
|
d->m_dragChild->setGeometry( TQRect( d->m_tqgeometryDragStart.x() + pos.x() - d->m_mouseDragStart.x(),
|
|
|
|
|
d->m_tqgeometryDragStart.y() + pos.y() - d->m_mouseDragStart.y(),
|
|
|
|
|
d->m_tqgeometryDragStart.width(), d->m_tqgeometryDragStart.height() ) );
|
|
|
|
|
d->m_dragChild->setGeometry( TQRect( d->m_geometryDragStart.x() + pos.x() - d->m_mouseDragStart.x(),
|
|
|
|
|
d->m_geometryDragStart.y() + pos.y() - d->m_mouseDragStart.y(),
|
|
|
|
|
d->m_geometryDragStart.width(), d->m_geometryDragStart.height() ) );
|
|
|
|
|
d->m_dragChild->setRotationPoint( TQPoint( d->m_rotationDragStart.x() + pos.x() - d->m_mouseDragStart.x(),
|
|
|
|
|
d->m_rotationDragStart.y() + pos.y() - d->m_mouseDragStart.y() ) );
|
|
|
|
|
bound = bound.unite( d->m_dragChild->frameRegion( d->m_parentMatrix, false ) );
|
|
|
|
|