aboutsummaryrefslogtreecommitdiff
path: root/graphics/VectorRendererSpec.cpp
AgeCommit message (Collapse)Author
2017-08-06JANITORIAL: Silence some more GCC 7 fallthrough warningsTorbjörn Andersson
These weren't explicitly flagged as deliberate, but I recognize Duff's Device when I see it.
2016-10-09JANITORIAL: Remove more trailing spacesEugene Sandulenko
2016-08-24GUI: Added transparency to PicWidgetsEugene Sandulenko
2016-08-24GUI: Implemented centering of dialog backgroundEugene Sandulenko
2016-08-24GUI: Added possibility to specify scale mode for AlphaBitmapsEugene Sandulenko
2016-08-24GUI: Plug NinePatch bitmaps into parserEugene Sandulenko
2016-08-24GUI: Implemented more modes to autoscaleEugene Sandulenko
2016-08-24GUI: Implemented alphabitmap autoscaleEugene Sandulenko
2016-08-24GUI: Implemented possibility to use alphabitmaps in GraphicsWidgetEugene Sandulenko
2016-08-24GUI: Added new alphabitmap image typeEugene Sandulenko
2016-07-11GRAPHICS: Fix copy/paste error in blitAlphaBitmapClip() (CID 1357410)Torbjörn Andersson
2016-07-11GRAPHICS: Fix copy/paste error in blitSurfaceClip (CID 1357411)Torbjörn Andersson
2016-07-03JANITORIAL: Fix a few warningsAlexander Tkachev
2016-07-03JANITORIAL: Remove trailing spacesAlexander Tkachev
2016-07-03GUI: Fix blitAlphaBitmapClip()Alexander Tkachev
2016-07-03GUI: Add blitAlphaBitmapClip()Alexander Tkachev
2016-07-03GUI: Add fillSurfaceClip()Alexander Tkachev
2016-07-03GUI: Fix drawRoundedSquareClip()Alexander Tkachev
2016-07-03GUI: Add drawTabClip()Alexander Tkachev
2016-07-03GUI: Add drawBeveledSquareClip()Alexander Tkachev
2016-07-03GUI: Add drawLineClip()Alexander Tkachev
2016-07-03GUI: Add drawCircle()Alexander Tkachev
2016-07-03GUI: Add drawSquareClip()Alexander Tkachev
2016-07-03GUI: Add VectorRendererSpec::drawTriangleClip()Alexander Tkachev
2016-07-03GUI: Add drawRoundedSquareShadowClip()Alexander Tkachev
2016-07-03GUI: Remove unnecessary debug outputAlexander Tkachev
2016-07-03GUI: Fix ThemeItemTextData's dirty rectangleAlexander Tkachev
2016-07-03GUI: drawRoundedSquareClip()Alexander Tkachev
2016-07-03GUI: clippingRect propagated deeperAlexander Tkachev
2016-03-26GRAPHICS: Prevent crash when drawing 0-height rounded cornersOri Avtalion
Opening/closing the console when scroll bars were visible caused occasional crashes. Fixes #7089.
2016-02-21GRAPHICS: Remove superfluous ABS usage to silence a warning.Johannes Schickel
2016-02-21GRAPHICS: Skip empty rects and empty shadows in ↵Johannes Schickel
VectorRendererSpec::drawSquareShadow.
2016-02-21GRAPHICS: Skip empty rects in VectorRenderer*'s drawInteriorRoundedSquareAlg.Johannes Schickel
2016-02-21GRAPHICS: Skip empty rects in VectorRendererSpec::drawTriangleFast.Johannes Schickel
2016-02-21GRAPHICS: Skip empty rects in VectorRendererSpec::drawSquareAlg.Johannes Schickel
2016-02-21GRAPHICS: Skip empty rects in VectorRender*'s drawTabAlg.Johannes Schickel
2016-02-21GRAPHICS: Make VectorRendererAA::drawLineAlg never divide by zero.Johannes Schickel
It won't crash any longer in the case dx = dy = 0.
2016-02-21GRAPHICS: Let drawLineAlg in VectorRenderer code take unsigned dx, dy.Johannes Schickel
2016-02-21GRAPHICS: Skip empty rects in VectorRendererSpec::drawTriangleVertAlg.Johannes Schickel
2016-02-21GRAPHICS: Add comments about safe divisions in VectorRendererSpec.cpp.Johannes Schickel
2014-10-28GRAPHICS: Remove trailing whitespaceFilippos Karapetis
2014-05-27GRAPHICS: colour -> color in VectorRendererSpec code.Johannes Schickel
2014-01-10GRAPHICS: Fix dest alpha formula in blendPixelPtrMarcus Comstedt
The original alpha computation formula had a problem: If something was drawn on top of a pixel that was already fully opaque, there would be an overflow in the computed alpha, and the destination alpha would be truncated to 0 (fully transparent). In commit 264ba4a9 this formula was replaced with another one, which did not have overflows but also was not correct. This commits introduces a new formula, where the rounding errors have been turned in another direction; drawing a fully opaque pixel on top of a transparent one would result in a pixel which is almost, but not fully, opaque. However, this is no problem in practice, since drawing fully opaque pixels can be achieved with much less code as a special case, so add that (also improves rendering speed).
2014-01-10GRAPHICS: Fix computation of addA in darkenFill()Marcus Comstedt
The old computation had rounding issues, causing alpha to leak into the red (usually) component. There's a much easier way to compute it that does not lead to such problems: What should really happen is that the two top bits of the A component should be set to 1 (thus adding 75% alpha). So compute it that way for speed and precision.
2013-12-13GRAPHICS: Minor readability fixes to drawBevelSquareAlg method.D G Turner
No functional change.
2013-08-22Merge pull request #361 from rundfunk47/guiimprovementsEugene Sandulenko
GUI: Various GUI Improvements
2013-08-22GRAPHICS: Increase robustness of VectorRendererSpec::drawString.Johannes Schickel
2013-08-22GRAPHICS: Unify drawing paths in VectorRendererSpec::drawString.Johannes Schickel
Formerly, the behavior between when a drawable area was specified and when not was different in a sense which is not expected. For example, when an empty textDrawableArea was passed and the text could be drawn outside the 'area' specified. While when a textDrawableArea covering the whole screen was passed the text was clipped inside 'area'. Now, the code does follow the latter logic in both cases. I am not sure whether this will cause any issues, but a quick check of the launcher and options menu didn't reveal anything...
2013-08-22GRAPHICS: Simplify VectorRendererSpec::drawString.Johannes Schickel
This removes the two additional copy steps for rendering when a drawable text area is specified. Instead it uses Surface::getSubArea to draw directly onto _activeSurface.
2013-08-19GRAPHICS: Add missing "break"s in switch, CID 1063214Torbjörn Andersson
This won't actually make any difference, since the fall through would do nothing and then reach the break in the default case. But I think it's less error-prone this way if the code is ever modified.