[prev in list] [next in list] [prev in thread] [next in thread] 

List:       koffice
Subject:    Bug fix patch of KPresenter (Text Object)
From:       Toshitaka Fujioka <toshitaka () kde ! gr ! jp>
Date:       2001-03-09 10:39:24
[Download RAW message or body]

Hello,

The patch which I attached fixes a bug of pen style in text object.
(CVS of 09/03)

"Screen shot"
Before a patch apply:
 http://www.kde.gr.jp/~toshitaka/Kde/KOffice/KPresenter/kpresenter1.jpg

After a patch apply:
 http://www.kde.gr.jp/~toshitaka/Kde/KOffice/KPresenter/kpresenter2.jpg


Text mode: NoPen Style is grey collar and DotLine Style.

Presentation mode: NoPen Style is NoPen Style.

Please review. :-)
If my patch is wrong, please advice.


 






["koffice-kpresenter-textopject-bugfix-20010309.diff" (text/plain)]

diff -ur koffice.orig/kpresenter/kpobject.cc koffice/kpresenter/kpobject.cc
--- koffice.orig/kpresenter/kpobject.cc	Fri Mar  9 19:17:31 2001
+++ koffice/kpresenter/kpobject.cc	Fri Mar  9 19:18:03 2001
@@ -347,7 +347,7 @@
     _painter->save();
     Qt::RasterOp rop = _painter->rasterOp();
 
-    _painter->setRasterOp( Qt::NotROP );
+    _painter->setRasterOp( Qt::NotXorROP );
 
     if ( getType() == OT_TEXT && dynamic_cast<KPTextObject*>( this \
)->getDrawEditRect() )  {
@@ -372,9 +372,11 @@
             _painter->setWorldMatrix( m, true );
         }
 
-        _painter->setPen( QPen( Qt::black, 1, Qt::DotLine ) );
-        _painter->setBrush( Qt::NoBrush );
-        _painter->drawRect( 0, 0, ext.width(), ext.height() );
+        if ( noPenJudgment ) {
+            _painter->setPen( QPen( "grey", 1, Qt::DotLine ) );
+            _painter->setBrush( Qt::NoBrush );
+            _painter->drawRect( 0, 0, ext.width(), ext.height() );
+        }
 
         _painter->restore();
     }
diff -ur koffice.orig/kpresenter/kpobject.h koffice/kpresenter/kpobject.h
--- koffice.orig/kpresenter/kpobject.h	Fri Mar  9 19:17:31 2001
+++ koffice/kpresenter/kpobject.h	Fri Mar  9 19:18:03 2001
@@ -206,6 +206,8 @@
 
     DCOPObject *dcop;
 
+    bool noPenJudgment;
+
 };
 
 #endif
diff -ur koffice.orig/kpresenter/kptextobject.cc koffice/kpresenter/kptextobject.cc
--- koffice.orig/kpresenter/kptextobject.cc	Fri Mar  9 19:17:31 2001
+++ koffice/kpresenter/kptextobject.cc	Fri Mar  9 19:18:03 2001
@@ -460,6 +460,11 @@
         else
             _painter->drawPixmap( penw, penw, *gradient->getGradient(), 0, 0, ow - 2 \
* penw, oh - 2 * penw );  
+        if ( pen.style() == Qt::NoPen )
+            noPenJudgment = TRUE;
+        else
+            noPenJudgment = FALSE;
+
         _painter->setPen( pen );
         _painter->setBrush( Qt::NoBrush );
         _painter->drawRect( penw, penw, ow - 2 * penw, oh - 2 * penw );



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic