With enabled -Woverloaded-virtual gcc warning (see
http://lists.freedesktop.org/archives/libreoffice/2011-March/009567.html),
canvas exposed a nasty clash between WeakComponentImplHelper::disposing
and XEventListener::disposing. Fixed by overriding *once* in baseclass,
and then calling disambiguated, renamed methods.
2008/04/21 07:27:58 thb 1.12.26.4: RESYNC: (1.13-1.14); FILE MERGED
2007/12/20 22:18:59 thb 1.12.26.3: #i81092# #i78888# #i78925# #i79258# #i79437# #i84784# Large canvas rework, completing various areas such as color spaces, bitmap data access, true sprite and non-sprite implementations, and upstreaming the canvas parts of rodos emf+ rendering
2007/11/06 12:36:52 thb 1.12.26.2: RESYNC: (1.12-1.13); FILE MERGED
2007/10/01 13:02:03 thb 1.12.26.1: #i78888# #i78925# #i79258# #i79437# Merge from CWS picom
2005/10/08 12:53:51 thb 1.8.2.6: RESYNC: (1.8-1.9); FILE MERGED
2005/09/27 09:22:14 thb 1.8.2.5: #i48939# Removed alpha VDev option from BackBuffer (wasn't used since ages); correctly setting backbuffer size (rounded _up_, like the sprite size itself is calculated, too)
2005/09/22 21:00:53 thb 1.8.2.4: #i48939# Employing faster XOR masking for the special case nontransparent, non-alpha bitmap redraw in backbuffer (incidently, that matches the typical slide transition sprite update)
2005/07/21 14:52:47 thb 1.8.2.3: #i48939# Factored out round up/down to integer; removed backend specific methods from base Sprite interface; removed updateScreen overwrite from SpriteCanvasBase (too much backend specifics need to be passed to HW canvases); now passing the target OutputDevice directly via Sprite::redraw() method in VCL canvas; made XFont -> impl font conversion dynamic cast, too; removed the getSpriteTargetSurface crap from SpriteCanvas
2005/07/03 20:25:14 thb 1.8.2.2: #i48939# Reworked ParametricPolyPolygon, to extract state in an atomic operation; added more state checking 'isXDirty()' methods to canvascustomspritehelper; added various comments and notes
2005/06/17 23:49:49 thb 1.8.2.1: #i48939# Huge refactoring of canvas; as much functionality as possible is now common in a bunch of shared base classes (input checking, locking, sprite redraw, etc.); added scroll update optimization, transparently to all canvas implementations
2005/04/30 23:56:16 thb 1.7.2.2: #i43238# Largely reworked the update area optimization; now also serving the needs of the RedrawManager to determine whether we can update without backbuffer output preparation; En passant, also fixed a bug that output pos and scale where calculated wrong, if a shape transformation was set but not changed for a sprite redraw
2005/04/26 12:17:24 mbu 1.7.2.1: update area now handled smarter while clip is set
2005/04/12 03:21:23 thb 1.6.2.4: #i44807# Added preliminary version for VCL canvas transformed sprites (taking the slow Set/GetPixel affine transformater from impltools for the time being)
2005/04/11 15:08:47 thb 1.6.2.3: #i36190# Now fully dumped storing of sprite positions (was kinda redundant anyway), because the nominal sprite position has nothing to do with the bound rect's top left edge anymore (due to the transformations); made order of setting/Sprite interface calls more coherent; corrected XSprite::move() semantics (now passes on the bound rect's position and size); changed getSpriteRect() to look similar to dx canvas'
2005/04/08 11:23:23 thb 1.6.2.2: #i36190# Sprite-transform support made it necessary to track update area also for moves (because the sprite size is no longer fixed, but can vary between the enqueuing of the sprite record and the actual repaint; slightly adapted getSpriteRect(), to match bounds actually attained during sprite transform
2005/04/07 10:28:27 thb 1.6.2.1: #i36190# Preparations for full sprite transform support at VCL canvas; safe-guarding against zero-sized sprites; corrected queryTextBounds() to handle baseline offset right.
2005/02/16 11:14:05 fs 1.4.2.4: #i42558# drafts.com.sun.star.drawing/rendering/geometry moved to com.sun.star.*
2005/02/15 12:24:18 thb 1.4.2.3: #i42440# Now filling polygons 'inclusive', i.e. with one additional pixel to the right and the bottom. Along the same lines, moved sprite-growing code to slideshow, we already handle the case there for update areas of antialiased shapes
2005/02/10 04:23:59 thb 1.4.2.2: #i38960# Added opacity detection code, which, according to the drawBitmap() call, determines whether the sprite's content is fully opaque. In that case, we can use the _much_ faster OutputDevice::DrawBitmap() method, instead of the slow mask version
2005/02/07 18:26:15 pl 1.4.2.1: #i42218# use Region::GetRegionFromPolyPolygon as performance shortcut
2004/11/17 17:00:28 thb 1.2.2.20: #118514# Canvas module reorg
2004/10/26 23:36:58 thb 1.2.2.19: #110496# Added dedicated alpha bitmap support: factory methods at the XGraphicDevice, and optimized handling internally
2004/10/25 19:07:44 thb 1.2.2.18: #i20518# Improved canvas performance for sprite rendering
2004/10/11 00:00:05 thb 1.2.2.17: #i34997# Added new method XCanvas::drawBitmapModulated(), to facilitate global alpha channel changes when rendering bitmaps
2004/09/09 14:44:31 thb 1.2.2.16: #110496# Fixed minor map file issues; changed order of canvas instantiations in canvas factory; added sprite clipping to DirectX canvas
2004/09/06 13:33:45 thb 1.2.2.15: #110496# Improved documentation
2004/09/01 10:50:36 thb 1.2.2.14: #110496# Optimized sprite repaint (for static sprite content)
2004/08/27 18:46:16 thb 1.2.2.13: #110496# Adapted to recent canvas API changes (XSpriteCanvas::updateScreen and sprite clip semantics
2004/08/26 12:23:40 thb 1.2.2.12: #110496# Fixed a nasty update bug (hidden sprites where not cleared, when not part of other update areas by chance)
2004/08/20 00:27:10 thb 1.2.2.11: #110496# Added TODO comment
2004/08/06 14:00:09 thb 1.2.2.10: #110496# Adapted XSprite API to match reality (the way it was simply wasn't logical). Implemented sprite clipping
2004/08/02 17:50:59 thb 1.2.2.9: #110496# Adapted to recent XCanvas API changes, streamlined and factored out common code with directxcanvas
2004/07/22 20:38:27 thb 1.2.2.8: #110496# Adapted to setData/setPixel API change
2004/07/22 18:40:42 thb 1.2.2.7: #110496# Overhauled sprite redraw algo, to also respect overlapping sprites
2004/07/20 19:23:55 thb 1.2.2.6: #110496# Removed self-references to various interface implementations, along the lines, factored out common base implementation for all c++ canvases
2004/06/17 10:33:25 thb 1.2.2.5: #110496# Handle huge shrinks correctly for font scaling; added some more debug code
2004/05/27 20:51:24 thb 1.2.2.4: #110496#
Added classification code to all TODO/HACK/FIXME comments.
There are four categories:
- code quality (C)
- performance (P)
- missing functionality (F)
- and missing/incomplete error handling (E)
Furthermore, every category has a severity number between
1 and 3 associated, where 1 is lowest and 3 highest
severity
2004/05/27 14:36:52 thb 1.2.2.3: #110496# verbose tracing is now guarded also with DBG_UTIL. Unified verbose trace output between directx and VCL canvas
2004/04/12 15:12:24 thb 1.2.2.2: #110496# Adaptions after canvas01 merge
2004/04/05 15:57:57 thb 1.2.2.1: Resync with canvas01 changes