aboutsummaryrefslogtreecommitdiff
path: root/graphics
AgeCommit message (Collapse)Author
2013-10-26ALL: Mark off common code used by ZVisionMatthew Hoops
2013-10-26GRAPHICS: do not reset the extra parameters of IFFDecoder on destroy().peres
The two properties that control pixel packing and the size of the surface need to be preserved for loadStream() to work correctly. They are now under complete responsibility of the client.
2013-10-26Revert "GRAPHICS: do not clear the internal state of IFFDecoder on ↵peres
loadStream()." This reverts commit 92c1ff31d6d8d78e58caa4d123ceb0fea43a48ed.
2013-10-26GRAPHICS: Have TGA's loadStream() call destroy()Matthew Hoops
2013-10-26GRAPHICS: Clarify implicit destroy() usageMatthew Hoops
2013-10-26GRAPHICS: do not clear the internal state of IFFDecoder on loadStream().peres
This decoder needs to keep track of client parameters that control how the pixels are going to be packaged, so the responsibility for clearing the state has been moved on the client (using the destroy() method on ImageDecoder). As no client uses the IFFDecoder for more than one image at a time, this change does not require updates to the engines. The only effect is on Parallaction (BRA-Amiga), which can now control the way pixels are packaged in mask and path bitmaps.
2013-10-17Merge branch 'zvision'Willem Jan Palenstijn
This merges pull request 395 for the ZVision engine developed during GSoC2013.
2013-09-30GRAPHICS: Fix uninitialised field in PNG decoder. CID 1002280.D G Turner
2013-09-30GRAPHICS: Fix uninitialized cursor visibility variable. CID 1002283.D G Turner
The default at cursor construction has been set to not visible. This now requires an explicit call to setVisible(true) to show the cursor, but a basic test shows that this seems to be OK and engines which fail to do this would have been intermittently broken before.
2013-09-29Merge branch 'master' into zvisionRichieSams
2013-09-22GRAPHICS: Remove variable shadowingRichieSams
2013-09-16Merge pull request #376 from lordhoto/libjpegJohannes Schickel
GRAPHICS: Implement JPEGDecoder based on libjpeg.
2013-09-16GRAPHICS: Add some paranoia asserts in JPEGDecoder.Johannes Schickel
2013-09-16GRAPHICS: Make JPEGDecoder request RGB output from libjpeg by default.Johannes Schickel
This fixes loading of JPEG files which contain RGB color space instead of YUV. It is a pretty odd extension of JPEG files by Adobe which is indicated by this: http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/JPEG.html#Adobe To still support Groovie's need for YUV data I added some possibility to request direct YUV output.
2013-09-16GRAPHICS: Implement JPEGDecoder based on libjpeg.Johannes Schickel
2013-09-12ZVISION: Add wrapper function for copyRectToSurfaceRichieSams
Also rename some arguments to make them more clear
2013-09-24Merge branch 'master' into zvisionWillem Jan Palenstijn
Conflicts: video/avi_decoder.cpp
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.
2013-08-16GRAPHICS: Gradient blending on borders of rounded squaresNarek Mailian
2013-08-16GRAPHICS: Change soft-shadow calculation to not use doublesNarek Mailian
2013-08-16GRAPHICS: Shadows on tabsNarek Mailian
2013-08-16GRAPHICS: Add support for Soft Shadows with rounded squaresNarek Mailian
2013-08-16GRAPHICS: Added changes and improved code from inisider/scummvm (partial text)Narek Mailian
Includes code from https://github.com/inisider/scummvm/ , which has been squashed and bugfixed
2013-08-15GRAPHICS: Create copyRectToSurface member functionrichiesams
2013-08-12GRAPHICS: Fix warnings about mismatching format arguments.Johannes Schickel
2013-08-08GRAPHICS: Allow VectorRenderer and ThemeEngine to init with 4BPPNarek Mailian
2013-08-08GUI: Change name of GUI-renderers to remove "16-bit"Narek Mailian
2013-08-08GRAPHICS: Fix fonts/bdf.cpp to allow for 32bpp to be usedNarek Mailian
2013-08-08GRAPHICS: Add error-checking in blendPixelPtr for invalid BPPsNarek Mailian
2013-08-08GRAPHICS: Fix VectorRendererSpec for RGBA8888.Johannes Schickel
Formerly values in the gradient and blending code overflowed and thus caused incorrect colors. Now there's some special case for 32bpp modes, which needs slightly more operations but assures a correct output.
2013-08-08GRAPHICS: Fix incorrect parameter order for getBasePtr.Torbjörn Andersson
This caused createThumbnail() to crash, e.g. when saving in the Kyrandia engine. Probably other engines as well.
2013-08-07Merge pull request #365 from lordhoto/protected-pixelsJohannes Schickel
Make Graphics::Surface::pixels protected.
2013-08-06GRAPHICS: Make Surface::pixels protected.Johannes Schickel
2013-08-04GRAPHICS: Fix typo.Johannes Schickel
2013-08-03GRAPHICS: Add two new methods to change 'pixels' of a Surface.Johannes Schickel
One method is a simpler setter for 'pixels'. The other one can be used to setup a Surface with custom data.
2013-08-03GRAPHICS: Take advantage of Surface::getPixels.Johannes Schickel
2013-08-03GRAPHICS: Add an easy way to query 'pixels' of Surface.Johannes Schickel
This introduced getPixels which is a shortcut for getBasePtr(0, 0).
2013-08-03GRAPHICS: Prefer getBasePtr over direct Surface::pixels access.Johannes Schickel
2013-08-03GRAPHICS: Prefer getBasePtr over direct Surface::pixels access.Johannes Schickel
2013-08-02GRAPHICS: Allow to query a Surface describing a subarea in Surface.Johannes Schickel
2013-08-02GRAPHICS: Slight formatting fixes in thumbnail_intern.cpp.Johannes Schickel
2013-08-02GRAPHICS: Silence conversion warnings by using an explicit cast.Johannes Schickel
2013-08-01GRAPHICS: Make Surface::copyFrom work for any src pitch.Johannes Schickel
Formerly we assumed that the newly created surface has the same pitch as the source surface. This is a assumption that might be invalid (for example in case of the Surface returned by OSystem::lockScreen.)
2013-07-13GRAPHICS: Allow arbitrary input sizes for thumbnail scaling.Johannes Schickel
Instead of a fixed 1/2 or 1/4 scaling we do a two step scaling now: 1) Scale image to width < 160*2 && height < [100,120]*2 with 1/4 or 1/2 nearest-neighbor. 2) Use a bilinear scaler to scale aspect preserving to 160x[100,120] This fixes bug #3614568 "GRAPHICS: Odd thumbnail sizes crash".
2013-07-12GRAPHICS: Be more robust with broken/unsupported thumbnail headers.Johannes Schickel
This fixes future issues like bug #3614654: "ALL: ScummVM 1.5.0 can't read newer saved games". There are a few behavior changes introduced with this commit: - checkThumbnailHeader will now also report the presence of unsupported/broken (but skippable) headers. - skipThumbnail will also try to skip the data for broken/unsupported thumbnail data. - loadThumbnail will skip over broken/unsupported thumbnail data but still return 0 in this case.
2013-07-04Merge pull request #331 from sev-/gsoc2012-eventsrecorderEugene Sandulenko
GSoC2012: Event Recorder (reworked)