[haiku-commits] r38831 - haiku/trunk/src/servers/app/drawing/Painter

  • From: superstippi@xxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Tue, 28 Sep 2010 12:33:51 +0200 (CEST)

Author: stippi
Date: 2010-09-28 12:33:51 +0200 (Tue, 28 Sep 2010)
New Revision: 38831
Changeset: http://dev.haiku-os.org/changeset/38831

Modified:
   haiku/trunk/src/servers/app/drawing/Painter/AGGTextRenderer.cpp
Log:
 * Removed a line of long-dead code.
 * Make sure that turning off anti-aliased font rendering
   also works when subpixel-anti-aliasing is used.


Modified: haiku/trunk/src/servers/app/drawing/Painter/AGGTextRenderer.cpp
===================================================================
--- haiku/trunk/src/servers/app/drawing/Painter/AGGTextRenderer.cpp     
2010-09-27 20:44:17 UTC (rev 38830)
+++ haiku/trunk/src/servers/app/drawing/Painter/AGGTextRenderer.cpp     
2010-09-28 10:33:51 UTC (rev 38831)
@@ -88,7 +88,6 @@
 AGGTextRenderer::SetHinting(bool hinting)
 {
        fHinted = hinting;
-//     fFontEngine.hinting(fEmbeddedTransformation.IsIdentity() && fHinted);
 }
 
 
@@ -97,6 +96,8 @@
 {
        if (fAntialias != antialiasing) {
                fAntialias = antialiasing;
+               // NOTE: The fSubpixRasterizer is not used when anti-aliasing is
+               // disbaled.
                if (!fAntialias)
                        fRasterizer.gamma(agg::gamma_threshold(0.5));
                else
@@ -116,6 +117,7 @@
 class AGGTextRenderer::StringRenderer {
 public:
        StringRenderer(const IntRect& clippingFrame, bool dryRun,
+                       bool subpixelAntiAliased,
                        FontCacheEntry::TransformedOutline& transformedGlyph,
                        FontCacheEntry::TransformedContourOutline& 
transformedContour,
                        const Transformable& transform,
@@ -127,9 +129,10 @@
                fTransformOffset(transformOffset),
                fClippingFrame(clippingFrame),
                fDryRun(dryRun),
+               fSubpixelAntiAliased(subpixelAntiAliased),
+               fVector(false),
                fBounds(LONG_MAX, LONG_MAX, LONG_MIN, LONG_MIN),
                fNextCharPos(nextCharPos),
-               fVector(false),
 
                fTransformedGlyph(transformedGlyph),
                fTransformedContour(transformedContour),
@@ -146,7 +149,7 @@
        void Finish(double x, double y)
        {
                if (fVector) {
-                       if (gSubpixelAntialiasing) {
+                       if (fSubpixelAntiAliased) {
                                
agg::render_scanlines(fRenderer.fSubpixRasterizer,
                                        fRenderer.fSubpixScanline, 
fRenderer.fSubpixRenderer);
                        } else {
@@ -242,7 +245,7 @@
 
                                        case glyph_data_outline: {
                                                fVector = true;
-                                               if (gSubpixelAntialiasing) {
+                                               if (fSubpixelAntiAliased) {
                                                        if 
(fRenderer.fContour.width() == 0.0) {
                                                                
fRenderer.fSubpixRasterizer.add_path(
                                                                        
fTransformedGlyph);
@@ -268,7 +271,7 @@
        p.close_polygon();
        agg::conv_stroke<agg::path_storage> ps(p);
        ps.width(1.0);
-       if (gSubpixelAntialiasing) {
+       if (fSubpixelAntiAliased) {
                fRenderer.fSubpixRasterizer.add_path(ps);
        } else {
                fRenderer.fRasterizer.add_path(ps);
@@ -295,9 +298,10 @@
        const BPoint&           fTransformOffset;
        const IntRect&          fClippingFrame;
        bool                            fDryRun;
+       bool                            fSubpixelAntiAliased;
+       bool                            fVector;
        IntRect                         fBounds;
        BPoint*                         fNextCharPos;
-       bool                            fVector;
 
        FontCacheEntry::TransformedOutline& fTransformedGlyph;
        FontCacheEntry::TransformedContourOutline& fTransformedContour;
@@ -331,6 +335,7 @@
        transform.Transform(&transformOffset);
 
        StringRenderer renderer(clippingFrame, dryRun,
+               gSubpixelAntialiasing && fAntialias,
                transformedOutline, transformedContourOutline,
                transform, transformOffset, nextCharPos, *this);
 
@@ -365,6 +370,7 @@
        transform.Transform(&transformOffset);
 
        StringRenderer renderer(clippingFrame, dryRun,
+               gSubpixelAntialiasing && fAntialias,
                transformedOutline, transformedContourOutline,
                transform, transformOffset, nextCharPos, *this);
 


Other related posts:

  • » [haiku-commits] r38831 - haiku/trunk/src/servers/app/drawing/Painter - superstippi