Searched +hist:42 +hist:a2db36 (Results 1 - 2 of 2) sorted by relevance
/haiku/src/servers/app/drawing/Painter/ | ||
H A D | Painter.h | diff f08d5477 Tue Jan 28 07:42:21 MST 2014 Adrien Destugues <pulkomandy@pulkomandy.tk> Add Alpha Masking support in ClipToPicture Use AGG to implement ClipToPicture in a faster and better way. There are things missing in this initial implementation: * No support for PushState/PopState saving and restoring the picture. * No support for nested clipping through PushState * The clipping doesn't happen where you expect it when using SetScale() * There are artifacts when scrolling and resizing clipped views * The implementation uses more memory than it needs, as the clipping bitmap is stored as RGBA32, yet only the alpha channel is used * The clipping bitmap is rendered more times than it needs to. We need some caching here. diff 991547ef Tue Oct 14 15:27:42 MDT 2008 Stephan Aßmus <superstippi@gmx.de> Patch by Artur Wyszynski: * Implemented BGradient, BGradientLinear, BGradientRadial, BGradientDiamond, BGradientConic and BGradientRadialFocus new Interface Kit classes. * Implemented all the (AGG-based) backend necessary in the app_server to render gradients (Painter, DrawingEngine) * app_server/View can convert a BGradient layout to screen coordinates. * Added BGradient methods of the Fill* methods in BView. * Implemented a test app and added it to the image as a demo. * Adopted Icon-O-Matic and libs/icon in order to avoid clashing with the new BGradient class. Re-use some parts where possible. Awesome work, Artur! Thanks a lot. Now a more modern looking GUI has just become much easier to implement! :-) TODO: * Remove the need to have gradient type twice in the app_server protocol. * Refactor some parts of the patch to remove duplicated code (Painter, DrawingEngine). * Adopt the BPicture protocol to know about BGradients. * Review some parts of the BArchivable implementation. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28109 a95241bf-73f2-0310-859d-f6bbb57e9c96 diff 42a2db36 Fri Oct 26 09:31:27 MDT 2007 Stephan Aßmus <superstippi@gmx.de> * track the fact if Painter is attached to a frame buffer, incorporate this information in the fValidClipping flag... which should prevent any drawing code to run if Painter is not attached properly git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22736 a95241bf-73f2-0310-859d-f6bbb57e9c96 diff 42a2db36 Fri Oct 26 09:31:27 MDT 2007 Stephan Aßmus <superstippi@gmx.de> * track the fact if Painter is attached to a frame buffer, incorporate this information in the fValidClipping flag... which should prevent any drawing code to run if Painter is not attached properly git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22736 a95241bf-73f2-0310-859d-f6bbb57e9c96 diff 16ed1e1d Sat Mar 18 09:42:14 MST 2006 Axel Dörfler <axeld@pinc-software.de> * Removed headers/private/servers/app - everything is in src/servers/app now. * Removed DisplaySupport.h, wasn't needed anymore. * Removed private color set functions from InterfaceDefs.cpp - we might want something similar, but definitely not like that. * Minor cleanup, added some missing licenses. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16831 a95241bf-73f2-0310-859d-f6bbb57e9c96 diff 7f74cecd Wed Aug 31 08:50:42 MDT 2005 Jérôme Duval <korli@users.berlios.de> added escapement_delta to AGGTextRenderer::RenderString and Painter git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14095 a95241bf-73f2-0310-859d-f6bbb57e9c96 diff f08d5477d8b854d8ae33801ad4aaf3c78008df11 Tue Jan 28 07:42:21 MST 2014 Adrien Destugues <pulkomandy@pulkomandy.tk> Add Alpha Masking support in ClipToPicture Use AGG to implement ClipToPicture in a faster and better way. There are things missing in this initial implementation: * No support for PushState/PopState saving and restoring the picture. * No support for nested clipping through PushState * The clipping doesn't happen where you expect it when using SetScale() * There are artifacts when scrolling and resizing clipped views * The implementation uses more memory than it needs, as the clipping bitmap is stored as RGBA32, yet only the alpha channel is used * The clipping bitmap is rendered more times than it needs to. We need some caching here. diff 991547ef6c1fca650f0fba855206296ef54bc441 Tue Oct 14 15:27:42 MDT 2008 Stephan Aßmus <superstippi@gmx.de> Patch by Artur Wyszynski: * Implemented BGradient, BGradientLinear, BGradientRadial, BGradientDiamond, BGradientConic and BGradientRadialFocus new Interface Kit classes. * Implemented all the (AGG-based) backend necessary in the app_server to render gradients (Painter, DrawingEngine) * app_server/View can convert a BGradient layout to screen coordinates. * Added BGradient methods of the Fill* methods in BView. * Implemented a test app and added it to the image as a demo. * Adopted Icon-O-Matic and libs/icon in order to avoid clashing with the new BGradient class. Re-use some parts where possible. Awesome work, Artur! Thanks a lot. Now a more modern looking GUI has just become much easier to implement! :-) TODO: * Remove the need to have gradient type twice in the app_server protocol. * Refactor some parts of the patch to remove duplicated code (Painter, DrawingEngine). * Adopt the BPicture protocol to know about BGradients. * Review some parts of the BArchivable implementation. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28109 a95241bf-73f2-0310-859d-f6bbb57e9c96 diff 42a2db36026dcd7414b82247b25c53e5176fab34 Fri Oct 26 09:31:27 MDT 2007 Stephan Aßmus <superstippi@gmx.de> * track the fact if Painter is attached to a frame buffer, incorporate this information in the fValidClipping flag... which should prevent any drawing code to run if Painter is not attached properly git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22736 a95241bf-73f2-0310-859d-f6bbb57e9c96 diff 16ed1e1d15aac69c945890e5d5990bb41d9f4303 Sat Mar 18 09:42:14 MST 2006 Axel Dörfler <axeld@pinc-software.de> * Removed headers/private/servers/app - everything is in src/servers/app now. * Removed DisplaySupport.h, wasn't needed anymore. * Removed private color set functions from InterfaceDefs.cpp - we might want something similar, but definitely not like that. * Minor cleanup, added some missing licenses. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16831 a95241bf-73f2-0310-859d-f6bbb57e9c96 |
H A D | Painter.cpp | diff f4f05935 Sat Aug 15 03:14:42 MDT 2015 Julian Harnath <julian.harnath@rwth-aachen.de> app_server: give Painter direct access to alpha masks * To use alpha masks in optimized drawing code outside of the AGG renderer pipeline, we need to allow access to the alpha mask's underlying buffer: - AlphaMask gets another method which returns its clipped_alpha_mask - clipped_alpha_mask gets a get_hspan() method which returns a span of alpha values without combining it with anything - Painter/PainterAggInterface store a pointer to the clipped_alpha_mask (in addition to the AlphaMask's scanline container) diff f08d5477 Tue Jan 28 07:42:21 MST 2014 Adrien Destugues <pulkomandy@pulkomandy.tk> Add Alpha Masking support in ClipToPicture Use AGG to implement ClipToPicture in a faster and better way. There are things missing in this initial implementation: * No support for PushState/PopState saving and restoring the picture. * No support for nested clipping through PushState * The clipping doesn't happen where you expect it when using SetScale() * There are artifacts when scrolling and resizing clipped views * The implementation uses more memory than it needs, as the clipping bitmap is stored as RGBA32, yet only the alpha channel is used * The clipping bitmap is rendered more times than it needs to. We need some caching here. diff 991547ef Tue Oct 14 15:27:42 MDT 2008 Stephan Aßmus <superstippi@gmx.de> Patch by Artur Wyszynski: * Implemented BGradient, BGradientLinear, BGradientRadial, BGradientDiamond, BGradientConic and BGradientRadialFocus new Interface Kit classes. * Implemented all the (AGG-based) backend necessary in the app_server to render gradients (Painter, DrawingEngine) * app_server/View can convert a BGradient layout to screen coordinates. * Added BGradient methods of the Fill* methods in BView. * Implemented a test app and added it to the image as a demo. * Adopted Icon-O-Matic and libs/icon in order to avoid clashing with the new BGradient class. Re-use some parts where possible. Awesome work, Artur! Thanks a lot. Now a more modern looking GUI has just become much easier to implement! :-) TODO: * Remove the need to have gradient type twice in the app_server protocol. * Refactor some parts of the patch to remove duplicated code (Painter, DrawingEngine). * Adopt the BPicture protocol to know about BGradients. * Review some parts of the BArchivable implementation. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28109 a95241bf-73f2-0310-859d-f6bbb57e9c96 diff 42a2db36 Fri Oct 26 09:31:27 MDT 2007 Stephan Aßmus <superstippi@gmx.de> * track the fact if Painter is attached to a frame buffer, incorporate this information in the fValidClipping flag... which should prevent any drawing code to run if Painter is not attached properly git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22736 a95241bf-73f2-0310-859d-f6bbb57e9c96 diff 42a2db36 Fri Oct 26 09:31:27 MDT 2007 Stephan Aßmus <superstippi@gmx.de> * track the fact if Painter is attached to a frame buffer, incorporate this information in the fValidClipping flag... which should prevent any drawing code to run if Painter is not attached properly git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22736 a95241bf-73f2-0310-859d-f6bbb57e9c96 diff 16ed1e1d Sat Mar 18 09:42:14 MST 2006 Axel Dörfler <axeld@pinc-software.de> * Removed headers/private/servers/app - everything is in src/servers/app now. * Removed DisplaySupport.h, wasn't needed anymore. * Removed private color set functions from InterfaceDefs.cpp - we might want something similar, but definitely not like that. * Minor cleanup, added some missing licenses. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16831 a95241bf-73f2-0310-859d-f6bbb57e9c96 diff 8bd2c11f Sun Nov 13 12:43:42 MST 2005 Axel Dörfler <axeld@pinc-software.de> Moved the declaration of roundf() to HaikuBuildCompatibility.h - it's missing from math.h but exported by libroot.so. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14903 a95241bf-73f2-0310-859d-f6bbb57e9c96 diff 7f74cecd Wed Aug 31 08:50:42 MDT 2005 Jérôme Duval <korli@users.berlios.de> added escapement_delta to AGGTextRenderer::RenderString and Painter git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14095 a95241bf-73f2-0310-859d-f6bbb57e9c96 diff e742e3e1 Mon Apr 18 18:42:42 MDT 2005 Stephan Aßmus <superstippi@gmx.de> refactoring and cleanup in LayerData and friends, it shows what I mean by "forced code paths" for example in coupled font size and view scale, added a couple TODOs, disabled decoupled frame buffer transfers, it is buggy and deadlocks for some reason... git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12441 a95241bf-73f2-0310-859d-f6bbb57e9c96 diff e742e3e1 Mon Apr 18 18:42:42 MDT 2005 Stephan Aßmus <superstippi@gmx.de> refactoring and cleanup in LayerData and friends, it shows what I mean by "forced code paths" for example in coupled font size and view scale, added a couple TODOs, disabled decoupled frame buffer transfers, it is buggy and deadlocks for some reason... git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12441 a95241bf-73f2-0310-859d-f6bbb57e9c96 |
Completed in 134 milliseconds