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

List:       kde-commits
Subject:    koffice/karbon/widgets
From:       Tomislav Lukman <tomislav.lukman () ck ! t-com ! hr>
Date:       2005-03-08 19:58:45
Message-ID: 20050308195845.15720103CB () office ! kde ! org
[Download RAW message or body]

CVS commit by lukman: 

More accurate gradient previews


  M +29 -0     vsmallpreview.cc   1.6


--- koffice/karbon/widgets/vsmallpreview.cc  #1.5:1.6
@@ -89,4 +89,5 @@ VSmallPreview::drawFill( const VFill &f 
 {
         VFill fill;
+        fill = f;
         VStroke stroke;
 
@@ -122,4 +123,16 @@ VSmallPreview::drawFill( const VFill &f 
                         fill.setType( VFill::grad );
                         m_fillLabel->setText( i18n( "Fill: Gradient") );
+                        if( f.gradient().type() == VGradient::linear )
+                        {
+                                fill.gradient().setOrigin( KoPoint( \
m_fillFrame->width() * 0.5, 0 ) ); +                                \
fill.gradient().setVector( KoPoint( m_fillFrame->width() * 0.5, m_fillFrame->height() \
) ); +                        }
+                        else if( f.gradient().type() == VGradient::radial ||
+                                f.gradient().type() == VGradient::conic )
+                        {
+                                fill.gradient().setOrigin( KoPoint( \
m_fillFrame->width() * 0.5, m_fillFrame->height() * 0.5 ) ); +                        \
fill.gradient().setFocalPoint( KoPoint( m_fillFrame->width() * 0.5, \
m_fillFrame->height() * 0.5 ) ); +                                \
fill.gradient().setVector( KoPoint( m_fillFrame->width() * 0.5, m_fillFrame->height() \
) ); +                        }
                         break;
 
@@ -128,4 +141,6 @@ VSmallPreview::drawFill( const VFill &f 
                 {
                         fill.pattern() = f.pattern();
+                        fill.pattern().setOrigin( KoPoint( 0, 0 ) );
+                        fill.pattern().setVector( KoPoint( m_fillFrame->width() * \
0.5, 0 ) );  fill.setType( VFill::patt );
                         m_fillLabel->setText( i18n( "Fill: Pattern") );
@@ -198,4 +213,16 @@ VSmallPreview::drawStroke( const VStroke
                         fill.setType( VFill::grad );
                         m_strokeLabel->setText( i18n( "Stroke: Gradient") );
+                        if( s.gradient().type() == VGradient::linear )
+                        {
+                                fill.gradient().setOrigin( KoPoint( \
m_strokeFrame->width() * 0.5, 0 ) ); +                                \
fill.gradient().setVector( KoPoint( m_strokeFrame->width() * 0.5, \
m_strokeFrame->height() ) ); +                        }
+                        else if( s.gradient().type() == VGradient::radial ||
+                                s.gradient().type() == VGradient::conic )
+                        {
+                                fill.gradient().setOrigin( KoPoint( \
m_strokeFrame->width() * 0.5, m_strokeFrame->height() * 0.5 ) ); +                    \
fill.gradient().setFocalPoint( KoPoint( m_strokeFrame->width() * 0.5, \
m_strokeFrame->height() * 0.5 ) ); +                                \
fill.gradient().setVector( KoPoint( m_strokeFrame->width() * 0.5, \
m_strokeFrame->height() ) ); +                        }
                         break;
                 }
@@ -203,4 +230,6 @@ VSmallPreview::drawStroke( const VStroke
                 {
                         fill.pattern() = s.pattern();
+                        fill.pattern().setOrigin( KoPoint( 0, 0 ) );
+                        fill.pattern().setVector( KoPoint( m_strokeFrame->width() * \
0.5, 0 ) );  fill.setType( VFill::patt );
                         m_strokeLabel->setText( i18n( "Stroke: Pattern") );


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

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