[prev in list] [next in list] [prev in thread] [next in thread]
List: koffice
Subject: kpresenter Patch
From: Thorsten Zachmann <t.zachmann () zagge ! de>
Date: 2002-08-12 20:23:53
[Download RAW message or body]
Hello all
I have made a patch for bug
#45989: lines jump around when changing ends (arrow)
Is it ok to commit?
Thorsten
PS. How is it possible to use linebegin/lineend in autoformobjects as it is
used there but I did't not find a way to do it?
["line.patch" (text/x-diff)]
? .kplineobject.cc.swp
? .kpresenter_utils.cc.swp
? .kpresenter_utils.h.swp
Index: kpcubicbeziercurveobject.cc
===================================================================
RCS file: /home/kde/koffice/kpresenter/kpcubicbeziercurveobject.cc,v
retrieving revision 1.32
diff -u -3 -p -r1.32 kpcubicbeziercurveobject.cc
--- kpcubicbeziercurveobject.cc 2002/07/01 19:56:36 1.32
+++ kpcubicbeziercurveobject.cc 2002/08/12 20:11:49
@@ -180,7 +180,10 @@ void KPCubicBezierCurveObject::paint( QP
QPoint point = (*it1);
if ( startPoint != point ) {
float angle = KoPoint::getAngle( startPoint, point );
- drawFigure( lineBegin, _painter, _zoomHandler->unzoomPoint( \
startPoint ), pen.color(), _w, angle,_zoomHandler ); + KoSize diff = \
getOffset( lineBegin, _w, angle ); + KoPoint tmpPoint(diff.width(), \
diff.height()); + tmpPoint += _zoomHandler->unzoomPoint( startPoint );
+ drawFigure( lineBegin, _painter, tmpPoint, pen2.color(), _w, \
angle,_zoomHandler );
break;
}
@@ -200,7 +203,10 @@ void KPCubicBezierCurveObject::paint( QP
QPoint point = (*it2);
if ( endPoint != point ) {
float angle = KoPoint::getAngle( endPoint, point );
- drawFigure( lineEnd, _painter, _zoomHandler->unzoomPoint( endPoint \
), pen.color(), _w, angle, _zoomHandler); + KoSize diff = getOffset( \
lineEnd, _w, angle ); + KoPoint tmpPoint(diff.width(), diff.height());
+ tmpPoint += _zoomHandler->unzoomPoint( endPoint );
+ drawFigure( lineEnd, _painter, tmpPoint, pen2.color(), _w, \
angle,_zoomHandler );
break;
}
Index: kpfreehandobject.cc
===================================================================
RCS file: /home/kde/koffice/kpresenter/kpfreehandobject.cc,v
retrieving revision 1.33
diff -u -3 -p -r1.33 kpfreehandobject.cc
--- kpfreehandobject.cc 2002/07/01 19:56:36 1.33
+++ kpfreehandobject.cc 2002/08/12 20:11:49
@@ -173,7 +173,10 @@ void KPFreehandObject::paint( QPainter*
QPoint point = (*it1);
if ( startPoint != point ) {
float angle = KoPoint::getAngle( startPoint, point );
- drawFigure( lineBegin, _painter, _zoomHandler->unzoomPoint( \
startPoint ), pen2.color(), _w, angle,_zoomHandler ); + KoSize diff = \
getOffset( lineBegin, _w, angle ); + KoPoint tmpPoint(diff.width(), \
diff.height()); + tmpPoint += _zoomHandler->unzoomPoint( startPoint );
+ drawFigure( lineBegin, _painter, tmpPoint, pen2.color(), _w, \
angle,_zoomHandler );
break;
}
@@ -193,7 +196,10 @@ void KPFreehandObject::paint( QPainter*
QPoint point = (*it2);
if ( endPoint != point ) {
float angle = KoPoint::getAngle( endPoint, point );
- drawFigure( lineEnd, _painter, _zoomHandler->unzoomPoint( endPoint \
), pen2.color(), _w, angle,_zoomHandler ); + KoSize diff = getOffset( \
lineEnd, _w, angle ); + KoPoint tmpPoint(diff.width(), diff.height());
+ tmpPoint += _zoomHandler->unzoomPoint( endPoint );
+ drawFigure( lineEnd, _painter, tmpPoint, pen2.color(), _w, \
angle,_zoomHandler );
break;
}
Index: kplineobject.cc
===================================================================
RCS file: /home/kde/koffice/kpresenter/kplineobject.cc,v
retrieving revision 1.51
diff -u -3 -p -r1.51 kplineobject.cc
--- kplineobject.cc 2002/07/12 16:50:57 1.51
+++ kplineobject.cc 2002/08/12 20:11:49
@@ -127,111 +127,117 @@ void KPLineObject::paint( QPainter* _pai
KoSize diff1( 0, 0 ), diff2( 0, 0 );
+ float _angle = 0;
+ switch ( lineType )
+ {
+ case LT_HORZ: {
+ _angle = 0;
+ } break;
+ case LT_VERT: {
+ _angle = 90 ;
+ } break;
+ case LT_LU_RD: {
+ KoRect _rect = KoRect( orig, ext );
+ KoPoint pnt1 = _rect.topLeft();
+ KoPoint pnt2 = _rect.bottomRight();
+
+ _angle = KoPoint::getAngle( pnt1, pnt2 ) - 180.0;
+ } break;
+ case LT_LD_RU: {
+ KoRect _rect = KoRect( orig, ext );
+ KoPoint pnt1 = _rect.bottomLeft();
+ KoPoint pnt2 = _rect.topRight();
+
+ _angle = KoPoint::getAngle( pnt1, pnt2 ) - 180.0;
+ } break;
+ }
+
if ( lineBegin != L_NORMAL )
- diff1 = getBoundingSize( lineBegin, _w, _zoomHandler );
+ diff1 = getOffset( lineBegin, _w, _angle + 180.0);
if ( lineEnd != L_NORMAL )
- diff2 = getBoundingSize( lineEnd, _w, _zoomHandler );
+ diff2 = getOffset( lineEnd, _w, _angle );
- double unzoom_diff1_width = _zoomHandler->unzoomItX( (int)diff1.width() );
- double unzoom_diff1_height = _zoomHandler->unzoomItX( (int)diff1.height() );
- double unzoom_diff2_width = _zoomHandler->unzoomItX( (int)diff2.width() );
- double unzoom_diff2_height = _zoomHandler->unzoomItX( (int)diff2.height() );
-
switch ( lineType )
{
case LT_HORZ: {
if ( lineBegin != L_NORMAL && !drawContour )
drawFigure( lineBegin, _painter,
- KoPoint( unzoom_diff1_width / 2.0, oh / 2.0 ),
+ KoPoint( 0, oh / 2.0 ),
pen2.color(), _w, 180.0, _zoomHandler );
if ( lineEnd != L_NORMAL && !drawContour )
drawFigure( lineEnd, _painter,
- KoPoint( ow - unzoom_diff2_width / 2.0, oh / 2.0 ),
+ KoPoint( ow , oh / 2.0),
pen2.color(), _w, 0.0, _zoomHandler );
- _painter->drawLine( (int)diff1.width() / 2,
+ _painter->drawLine( _zoomHandler->zoomItX( - diff1.width() ),
_zoomHandler->zoomItY( oh / 2 ),
- _zoomHandler->zoomItX( ow - unzoom_diff2_width / 2 ),
+ _zoomHandler->zoomItX( ow - diff2.width() ),
_zoomHandler->zoomItY( oh / 2) );
} break;
case LT_VERT: {
if ( lineBegin != L_NORMAL && !drawContour )
drawFigure( lineBegin, _painter,
- KoPoint( ow / 2.0, unzoom_diff1_width / 2.0 ),
+ KoPoint( ow / 2.0, 0 ),
pen2.color(), _w, 270.0, _zoomHandler );
if ( lineEnd != L_NORMAL && !drawContour )
drawFigure( lineEnd, _painter,
- KoPoint( ow / 2.0, oh - unzoom_diff2_width / 2.0 ),
+ KoPoint( ow / 2.0, oh ),
pen2.color(), _w, 90.0, _zoomHandler );
_painter->drawLine( _zoomHandler->zoomItX( ow / 2 ),
- (int)diff1.width() / 2,
+ _zoomHandler->zoomItX( - diff1.height() ),
_zoomHandler->zoomItX( ow / 2 ),
- _zoomHandler->zoomItY( oh - unzoom_diff2_width / 2 ) );
+ _zoomHandler->zoomItY( oh - diff2.height() ) );
} break;
case LT_LU_RD: {
- KoRect _rect = KoRect( orig, ext );
- KoPoint pnt1 = _rect.topLeft();
- KoPoint pnt2 = _rect.bottomRight();
-
- float _angle = KoPoint::getAngle( pnt1, pnt2 );
-
if ( lineBegin != L_NORMAL && !drawContour ) {
_painter->save();
- _painter->translate( _zoomHandler->zoomItX( unzoom_diff1_height / 2 ),
- _zoomHandler->zoomItY( unzoom_diff1_width / 2 ) );
drawFigure( lineBegin, _painter,
KoPoint( 0, 0 ), pen2.color(),
- _w, _angle, _zoomHandler );
+ _w, _angle + 180, _zoomHandler );
_painter->restore();
}
if ( lineEnd != L_NORMAL && !drawContour ) {
_painter->save();
- _painter->translate( _zoomHandler->zoomItX( ow - unzoom_diff2_height / 2 \
),
- _zoomHandler->zoomItY( oh - unzoom_diff2_width / 2 \
) ); + _painter->translate( _zoomHandler->zoomItX( ow ),
+ _zoomHandler->zoomItY( oh ) );
drawFigure( lineEnd, _painter,
KoPoint( 0, 0 ), pen2.color(),
- _w, _angle - 180, _zoomHandler );
+ _w, _angle, _zoomHandler );
_painter->restore();
}
- _painter->drawLine( _zoomHandler->zoomItX( unzoom_diff1_height / 2 + _w / 2 \
),
- _zoomHandler->zoomItY( unzoom_diff1_width / 2 + _w / 2 \
),
- _zoomHandler->zoomItX( ow - unzoom_diff2_height / 2 - _w \
/ 2 ),
- _zoomHandler->zoomItY( oh - unzoom_diff2_width / 2 - _w \
/ 2 ) ); + _painter->drawLine( _zoomHandler->zoomItX( - diff1.width() ),
+ _zoomHandler->zoomItY( - diff1.height() ),
+ _zoomHandler->zoomItX( ow - diff2.width() ),
+ _zoomHandler->zoomItY( oh - diff2.height() ) );
} break;
case LT_LD_RU: {
- KoRect _rect = KoRect( orig, ext );
- KoPoint pnt1 = _rect.topRight();
- KoPoint pnt2 = _rect.bottomLeft();
-
- float _angle = KoPoint::getAngle( pnt1, pnt2 );
-
if ( lineBegin != L_NORMAL && !drawContour ) {
_painter->save();
- _painter->translate( _zoomHandler->zoomItX( unzoom_diff1_height / 2),
- _zoomHandler->zoomItY( oh - unzoom_diff1_width / 2 \
) ); + _painter->translate( _zoomHandler->zoomItX( 0 ),
+ _zoomHandler->zoomItY( oh ) );
drawFigure( lineBegin, _painter,
KoPoint( 0, 0 ), pen2.color(),
- _w, _angle - 180,_zoomHandler );
+ _w, _angle + 180,_zoomHandler );
_painter->restore();
}
if ( lineEnd != L_NORMAL && !drawContour ) {
_painter->save();
- _painter->translate( _zoomHandler->zoomItX( ow - unzoom_diff2_height / 2 \
),
- _zoomHandler->zoomItY( unzoom_diff2_width / 2) );
+ _painter->translate( _zoomHandler->zoomItX( ow ),
+ _zoomHandler->zoomItY( 0 ) );
drawFigure( lineEnd, _painter,
KoPoint( 0, 0 ), pen2.color(),
_w, _angle,_zoomHandler );
_painter->restore();
}
- _painter->drawLine( _zoomHandler->zoomItX( unzoom_diff1_height / 2 + _w / 2 \
),
- _zoomHandler->zoomItY( oh - unzoom_diff1_width / 2 - _w \
/ 2 ),
- _zoomHandler->zoomItX( ow - unzoom_diff2_height / 2 - _w \
/ 2 ),
- _zoomHandler->zoomItY( unzoom_diff2_width / 2 + _w / 2 ) \
); + _painter->drawLine( _zoomHandler->zoomItX( - diff1.width() ),
+ _zoomHandler->zoomItY( oh - diff1.height() ),
+ _zoomHandler->zoomItX( ow - diff2.width() ),
+ _zoomHandler->zoomItY( - diff2.height() ));
} break;
}
}
Index: kppolylineobject.cc
===================================================================
RCS file: /home/kde/koffice/kpresenter/kppolylineobject.cc,v
retrieving revision 1.30
diff -u -3 -p -r1.30 kppolylineobject.cc
--- kppolylineobject.cc 2002/07/01 19:56:36 1.30
+++ kppolylineobject.cc 2002/08/12 20:11:50
@@ -173,7 +173,10 @@ void KPPolylineObject::paint( QPainter*
QPoint point = (*it1);
if ( startPoint != point ) {
float angle = KoPoint::getAngle( startPoint, point );
- drawFigure( lineBegin, _painter, _zoomHandler->unzoomPoint( \
startPoint ), pen2.color(), _w, angle,_zoomHandler ); + KoSize diff = \
getOffset( lineBegin, _w, angle ); + KoPoint tmpPoint(diff.width(), \
diff.height()); + tmpPoint += _zoomHandler->unzoomPoint( startPoint );
+ drawFigure( lineBegin, _painter, tmpPoint, pen2.color(), _w, \
angle,_zoomHandler );
break;
}
@@ -193,7 +196,10 @@ void KPPolylineObject::paint( QPainter*
QPoint point = (*it2);
if ( endPoint != point ) {
float angle = KoPoint::getAngle( endPoint, point );
- drawFigure( lineEnd, _painter, _zoomHandler->unzoomPoint( endPoint \
), pen2.color(), _w, angle,_zoomHandler ); + KoSize diff = getOffset( \
lineEnd, _w, angle ); + KoPoint tmpPoint(diff.width(), diff.height());
+ tmpPoint += _zoomHandler->unzoomPoint( endPoint );
+ drawFigure( lineEnd, _painter, tmpPoint, pen2.color(), _w, \
angle,_zoomHandler );
break;
}
Index: kpquadricbeziercurveobject.cc
===================================================================
RCS file: /home/kde/koffice/kpresenter/kpquadricbeziercurveobject.cc,v
retrieving revision 1.32
diff -u -3 -p -r1.32 kpquadricbeziercurveobject.cc
--- kpquadricbeziercurveobject.cc 2002/07/01 19:56:36 1.32
+++ kpquadricbeziercurveobject.cc 2002/08/12 20:11:50
@@ -180,7 +180,10 @@ void KPQuadricBezierCurveObject::paint(
QPoint point = (*it1);
if ( startPoint != point ) {
float angle = KoPoint::getAngle( startPoint, point );
- drawFigure( lineBegin, _painter, _zoomHandler->unzoomPoint( \
startPoint ), pen.color(), _w, angle,_zoomHandler ); + KoSize diff = \
getOffset( lineBegin, _w, angle ); + KoPoint tmpPoint(diff.width(), \
diff.height()); + tmpPoint += _zoomHandler->unzoomPoint( startPoint );
+ drawFigure( lineBegin, _painter, tmpPoint, pen2.color(), _w, \
angle,_zoomHandler );
break;
}
@@ -200,7 +203,10 @@ void KPQuadricBezierCurveObject::paint(
QPoint point = (*it2);
if ( endPoint != point ) {
float angle = KoPoint::getAngle( endPoint, point );
- drawFigure( lineEnd, _painter, _zoomHandler->unzoomPoint( endPoint \
), pen.color(), _w, angle, _zoomHandler ); + KoSize diff = getOffset( \
lineEnd, _w, angle ); + KoPoint tmpPoint(diff.width(), diff.height());
+ tmpPoint += _zoomHandler->unzoomPoint( endPoint );
+ drawFigure( lineEnd, _painter, tmpPoint, pen2.color(), _w, \
angle,_zoomHandler );
break;
}
Index: kpresenter_utils.cc
===================================================================
RCS file: /home/kde/koffice/kpresenter/kpresenter_utils.cc,v
retrieving revision 1.29
diff -u -3 -p -r1.29 kpresenter_utils.cc
--- kpresenter_utils.cc 2002/07/16 05:57:42 1.29
+++ kpresenter_utils.cc 2002/08/12 20:11:51
@@ -44,19 +44,20 @@ void drawFigure( LineEnd figure, QPainte
painter->translate( _zoomHandler->zoomItX(coord.x()), _zoomHandler->zoomItY( \
coord.y()) ); painter->rotate( angle );
painter->scale( 1, 1 );
- painter->fillRect( _zoomHandler->zoomItX(-3 - _w / 2),_zoomHandler->zoomItY( \
-3 - _h / 2),_zoomHandler->zoomItX( 6 + _w),_zoomHandler->zoomItY( 6 + _h), color ); \
+ painter->fillRect( _zoomHandler->zoomItX( -6 - _w ),_zoomHandler->zoomItY( \
-3 - _h / 2),_zoomHandler->zoomItX( 6 + _w),_zoomHandler->zoomItY( 6 + _h), color ); \
} break; case L_CIRCLE:
{
painter->translate( _zoomHandler->zoomItX(coord.x()), \
_zoomHandler->zoomItY(coord.y()) ); + painter->rotate( angle );
painter->setBrush( color );
- painter->drawEllipse( _zoomHandler->zoomItX(-3 - _w / 2), \
_zoomHandler->zoomItY(-3 - _w / 2),_zoomHandler->zoomItX( 6 + _w), \
_zoomHandler->zoomItY(6 + _w) ); + painter->drawEllipse( \
_zoomHandler->zoomItX( -6 - _w ), _zoomHandler->zoomItY( -3 - _w / 2 \
),_zoomHandler->zoomItX( 6 + _w), _zoomHandler->zoomItY(6 + _w) ); } break;
case L_ARROW:
{
- QPoint p1( -5 - _w / 2, -3 - _w / 2 );
- QPoint p2( 5 + _w / 2, 0 );
- QPoint p3( -5 - _w / 2, 3 + _w / 2 );
+ QPoint p1( -10 - _w, -3 - _w / 2 );
+ QPoint p2( 0 , 0 );
+ QPoint p3( -10 - _w, 3 + _w / 2 );
QPointArray pArray( 3 );
pArray.setPoint( 0, _zoomHandler->zoomPoint(p1) );
pArray.setPoint( 1, _zoomHandler->zoomPoint(p2) );
@@ -74,9 +75,9 @@ void drawFigure( LineEnd figure, QPainte
painter->setPen( QPen(color , _zoomHandler->zoomItX( _w )) );
painter->rotate( angle );
painter->scale( 1, 1 );
- QPoint p1( _zoomHandler->zoomItX(-5 - _w / 2), _zoomHandler->zoomItY(-3 - _w \
/ 2) );
- QPoint p2( _zoomHandler->zoomItX(5 + _w / 2), _zoomHandler->zoomItY(0) );
- QPoint p3( _zoomHandler->zoomItX(-5 - _w / 2), _zoomHandler->zoomItY(3 + _w \
/ 2) ); + QPoint p1( _zoomHandler->zoomItX(-10 - _w), _zoomHandler->zoomItY(-3 \
- _w / 2) ); + QPoint p2( _zoomHandler->zoomItX(0), _zoomHandler->zoomItY(0) \
); + QPoint p3( _zoomHandler->zoomItX(-10 - _w), _zoomHandler->zoomItY(3 + _w \
/ 2) ); painter->drawLine( p2, p1);
painter->drawLine( p2, p3);
}break;
@@ -86,8 +87,8 @@ void drawFigure( LineEnd figure, QPainte
painter->setPen( QPen(color , _zoomHandler->zoomItX( _w )) );
painter->rotate( angle );
painter->scale( 1, 1 );
- QPoint p1( _zoomHandler->zoomItX(0), _zoomHandler->zoomItY(-5 - _w / 2) );
- QPoint p2( _zoomHandler->zoomItX(0), _zoomHandler->zoomItY(5 + _w / 2 ) );
+ QPoint p1( _zoomHandler->zoomItX(- _w / 2), _zoomHandler->zoomItY(-5 - _w / \
2) ); + QPoint p2( _zoomHandler->zoomItX(- _w / 2), _zoomHandler->zoomItY(5 + \
_w / 2 ) ); painter->drawLine( p1, p2);
}break;
case L_DOUBLE_ARROW:
@@ -97,13 +98,13 @@ void drawFigure( LineEnd figure, QPainte
painter->scale( 1, 1 );
painter->setBrush( color );
- QPoint p1( -5 - _w / 2, -3 - _w / 2 );
- QPoint p2( 5 + _w / 2, 0 );
- QPoint p3( -5 - _w / 2, 3 + _w / 2 );
-
- QPoint p4( -15 - _w / 2, -3 - _w / 2 );
- QPoint p5( -5 + _w / 2, 0 );
- QPoint p6( -15 - _w / 2, 3 + _w / 2 );
+ QPoint p1( -10 - _w , -3 - _w / 2 );
+ QPoint p2( 0, 0 );
+ QPoint p3( -10 - _w, 3 + _w / 2 );
+
+ QPoint p4( -20 - _w, -3 - _w / 2 );
+ QPoint p5( -10, 0 );
+ QPoint p6( -20 - _w, 3 + _w / 2 );
QPointArray pArray( 3 );
pArray.setPoint( 0, _zoomHandler->zoomPoint(p1) );
@@ -122,15 +123,15 @@ void drawFigure( LineEnd figure, QPainte
painter->setPen( QPen(color , _zoomHandler->zoomItX( _w )) );
painter->rotate( angle );
painter->scale( 1, 1 );
- QPoint p1( _zoomHandler->zoomItX(-5 - _w / 2), _zoomHandler->zoomItY(-3 - _w \
/ 2) );
- QPoint p2( _zoomHandler->zoomItX(5 + _w / 2), _zoomHandler->zoomItY(0) );
- QPoint p3( _zoomHandler->zoomItX(-5 - _w / 2), _zoomHandler->zoomItY(3 + _w \
/ 2) ); + QPoint p1( _zoomHandler->zoomItX(-10 - _w), _zoomHandler->zoomItY(-3 \
- _w / 2) ); + QPoint p2( _zoomHandler->zoomItX(0), _zoomHandler->zoomItY(0) \
); + QPoint p3( _zoomHandler->zoomItX(-10 - _w), _zoomHandler->zoomItY(3 + _w \
/ 2) ); painter->drawLine( p2, p1);
painter->drawLine( p2, p3);
- p1.setX( _zoomHandler->zoomItX(-15 - _w / 2));
- p2.setX( _zoomHandler->zoomItX(-5 + _w / 2));
- p3.setX( _zoomHandler->zoomItX(-15 - _w / 2));
+ p1.setX( _zoomHandler->zoomItX(-20 - _w));
+ p2.setX( _zoomHandler->zoomItX(-10));
+ p3.setX( _zoomHandler->zoomItX(-20 - _w));
painter->drawLine( p2, p1);
painter->drawLine( p2, p3);
}break;
@@ -172,6 +173,45 @@ KoSize getBoundingSize( LineEnd figure,
}
return KoSize( 0, 0 );
+}
+
+KoSize getOffset( LineEnd figure, int _w, float angle )
+{
+ double x = 0;
+ double y = 0;
+ switch ( figure )
+ {
+ case L_ARROW:
+ case L_DOUBLE_ARROW:
+ {
+ x = _w * 2;
+ y = _w * 2;
+ break;
+ }
+ case L_SQUARE:
+ case L_CIRCLE:
+ {
+ x = _w + 3;
+ y = _w + 3;
+ break;
+ }
+ case L_LINE_ARROW:
+ case L_DOUBLE_LINE_ARROW:
+ {
+ x = _w + 1;
+ y = _w + 1;
+ break;
+ }
+ case L_DIMENSION_LINE:
+ {
+ x = _w / 2;
+ y = _w / 2;
+ break;
+ }
+ default: break;
+ }
+
+ return KoSize( x * cos( angle * M_PI / 180.0 ), y * sin( angle * M_PI / 180 ) );
}
QString lineEndBeginName( LineEnd type )
Index: kpresenter_utils.h
===================================================================
RCS file: /home/kde/koffice/kpresenter/kpresenter_utils.h,v
retrieving revision 1.19
diff -u -3 -p -r1.19 kpresenter_utils.h
--- kpresenter_utils.h 2002/07/16 05:57:42 1.19
+++ kpresenter_utils.h 2002/08/12 20:11:51
@@ -32,6 +32,7 @@ class KoPoint;
void drawFigure( LineEnd figure, QPainter* painter, const KoPoint &coord, const \
QColor & color, int _w, float angle, KoZoomHandler*_zoomHandler ); KoSize \
getBoundingSize( LineEnd figure, int _w, const KoZoomHandler*_zoomHandler ); +KoSize \
getOffset( LineEnd figure, int _w, float angle ); QString lineEndBeginName( LineEnd \
type ); LineEnd lineEndBeginFromString( const QString & name );
KoPointArray getCloseObject( KoPointArray points, bool close, bool objClosed );
Index: styledia.cc
===================================================================
RCS file: /home/kde/koffice/kpresenter/styledia.cc,v
retrieving revision 1.94
diff -u -3 -p -r1.94 styledia.cc
--- styledia.cc 2002/08/04 14:32:05 1.94
+++ styledia.cc 2002/08/12 20:11:53
@@ -97,27 +97,24 @@ void PBPreview::drawContents( QPainter *
int _w = pen.width();
if ( lineBegin != L_NORMAL )
- diff1 = getBoundingSize( lineBegin, _w, _zoomHandler );
+ diff1 = getOffset( lineBegin, _w, + 180.0 );
if ( lineEnd != L_NORMAL )
- diff2 = getBoundingSize( lineEnd, _w, _zoomHandler );
+ diff2 = getOffset( lineEnd, _w, 0 );
- double unzoom_diff1_width = _zoomHandler->unzoomItX( (int)diff1.width() );
- double unzoom_diff2_width = _zoomHandler->unzoomItX( (int)diff2.width() );
-
if ( lineBegin != L_NORMAL )
- drawFigure( lineBegin, painter, KoPoint( unzoom_diff1_width / 2, \
_zoomHandler->unzoomItY( contentsRect().height() ) / 2 ), + drawFigure( \
lineBegin, painter, KoPoint( 5, _zoomHandler->unzoomItY( contentsRect().height() ) / \
2 ), pen.color(), _w, 180.0, _zoomHandler );
if ( lineEnd != L_NORMAL )
- drawFigure( lineEnd, painter, KoPoint( _zoomHandler->unzoomItX( \
contentsRect().width() ) - unzoom_diff2_width / 2, + drawFigure( lineEnd, \
painter, KoPoint( _zoomHandler->unzoomItX( contentsRect().width() - 7 \
) ,
_zoomHandler->unzoomItY( \
contentsRect().height() ) / 2 ), pen.color(), _w, 0.0, _zoomHandler );
painter->setPen( pen );
- painter->drawLine( (int)unzoom_diff1_width / 2,
+ painter->drawLine( - (int)diff1.width() + 8,
contentsRect().height() / 2,
- contentsRect().width() - (int)unzoom_diff2_width / 2,
+ contentsRect().width() - (int)diff2.width() - 7,
contentsRect().height() / 2 );
} else if ( paintType == Brush ) {
____________________________________
koffice mailing list
koffice@mail.kde.org
To unsubscribe please visit:
http://mail.kde.org/mailman/listinfo/koffice
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic