haiku/src/servers/app/drawing
Axel Dörfler b66d753712 * Prepared the BScreen and BPrivateScreen class to be used with multiple monitors.
* BPrivateScreen now buffers its frame for 0.1 seconds (so that calling it several
  times in a row is both consistent and cheap).
* Added GetFrameBufferConfig() call to the HW interface (and implemented it).
* Added server commands AS_VALID_SCREEN_ID, AS_GET_NEXT_SCREEN_ID, and
  AS_GET_FRAME_BUFFER_CONFIG.
* BPrivateScreen::BaseAddress() and BPrivateScreen::BytesPerRow() are now working.
* minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14915 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-14 14:36:12 +00:00
..
old_but_informative removed no longer used stuff 2005-05-20 19:54:12 +00:00
Painter Moved the declaration of roundf() to HaikuBuildCompatibility.h - it's missing from 2005-11-13 19:43:42 +00:00
AccelerantBuffer.cpp The Painter now uses a special version of the agg_font_engine that uses the FontServer ftlib and the already loaded FT_Facees from ServerFont/FontStyle instead of doing it all again. 2005-03-31 06:08:37 +00:00
AccelerantBuffer.h Accelerant based implementations of HWInterface and RenderingBuffer. Untested. 2005-03-29 16:31:46 +00:00
AccelerantHWInterface.cpp * Prepared the BScreen and BPrivateScreen class to be used with multiple monitors. 2005-11-14 14:36:12 +00:00
AccelerantHWInterface.h * Prepared the BScreen and BPrivateScreen class to be used with multiple monitors. 2005-11-14 14:36:12 +00:00
BBitmapBuffer.cpp made room for a new meaning of BitmapBuffer, it will be used for a RenderingBuffer class that wraps arround a ServerBitmap. BBitmapBuffer on the other side is handy as well and wraps arround a BBitmap, as BitmapBuffer did before. 2005-06-27 22:11:27 +00:00
BBitmapBuffer.h made room for a new meaning of BitmapBuffer, it will be used for a RenderingBuffer class that wraps arround a ServerBitmap. BBitmapBuffer on the other side is handy as well and wraps arround a BBitmap, as BitmapBuffer did before. 2005-06-27 22:11:27 +00:00
BitmapBuffer.cpp offscreen bitmaps work, tested on Haiku as well, supports all colorspaces that BBitmap::ImportBits() supports. It uses a fallback for non-B_RGB(A)32 bitmaps. Added support for B_SUB_PIXEL_PRECISION view flags, though it is a bit hacky, since I had to add it to LayerData, even though it is not a true part of stack data. Added Layer::SetFlags() to enforce code path and update fLayerData. Cleaned up DisplayDriverPainter and DisplayDriver API (changed some const BRect& rect to simply BRect rect in order to be able to reuse it in the code), moved Painter.h, the test environment only draws the changed part of the frame buffer again - this causes a lot less CPU overhead, Painter special cases stroke width of 1.0 to use square caps, which is similar to R5 implementation and removes a lot of problems with non-straight line drawing, ServerWindow uses the DisplayDriver from it's WinBorder instead of the one from the Desktop (needed for offscreen windows, which have their own DisplayDriverPainter), it also checks for GetRootLayer() == NULL, because offscreen layers are not attached to a RootLayer, there was a fix for scrolling which worked at least in the test environment, it is now defunced, because Adi moved _CopyBits to Layer... I need to reenable it later, LayerData has no more fEscapementDelta, also fixed fFontAliasing (which was thought to overriding the font flags, and now works as such again), Desktop initialises the menu_info and scroll_bar_info stuff, which makes ScrollBars work actually... hope I didn't forget something. 2005-07-05 16:17:16 +00:00
BitmapBuffer.h offscreen bitmaps work, tested on Haiku as well, supports all colorspaces that BBitmap::ImportBits() supports. It uses a fallback for non-B_RGB(A)32 bitmaps. Added support for B_SUB_PIXEL_PRECISION view flags, though it is a bit hacky, since I had to add it to LayerData, even though it is not a true part of stack data. Added Layer::SetFlags() to enforce code path and update fLayerData. Cleaned up DisplayDriverPainter and DisplayDriver API (changed some const BRect& rect to simply BRect rect in order to be able to reuse it in the code), moved Painter.h, the test environment only draws the changed part of the frame buffer again - this causes a lot less CPU overhead, Painter special cases stroke width of 1.0 to use square caps, which is similar to R5 implementation and removes a lot of problems with non-straight line drawing, ServerWindow uses the DisplayDriver from it's WinBorder instead of the one from the Desktop (needed for offscreen windows, which have their own DisplayDriverPainter), it also checks for GetRootLayer() == NULL, because offscreen layers are not attached to a RootLayer, there was a fix for scrolling which worked at least in the test environment, it is now defunced, because Adi moved _CopyBits to Layer... I need to reenable it later, LayerData has no more fEscapementDelta, also fixed fFontAliasing (which was thought to overriding the font flags, and now works as such again), Desktop initialises the menu_info and scroll_bar_info stuff, which makes ScrollBars work actually... hope I didn't forget something. 2005-07-05 16:17:16 +00:00
BitmapHWInterface.cpp * Prepared the BScreen and BPrivateScreen class to be used with multiple monitors. 2005-11-14 14:36:12 +00:00
BitmapHWInterface.h * Prepared the BScreen and BPrivateScreen class to be used with multiple monitors. 2005-11-14 14:36:12 +00:00
DrawingEngine.cpp now updates BView::PenLocation() correctly after DrawString(), stuff like DrawChar('a') is working nicely now, for rotated text much better then in BeOS in fact because of subpixel precision in pen location 2005-11-09 16:55:08 +00:00
fake_input_server.cpp Incorrectly used real_time_clock() instead of system_time() for the message time stamps 2005-07-06 02:48:13 +00:00
fake_input_server.h Renamed BAppServerLink to AppServerLink, BPortLink to PortLink, LinkMsgReader 2005-06-14 21:28:56 +00:00
HaikuLogo.h The Haiku Logo is displayed on the Desktop. :-) Of course this will be removed as soon as Tracker runs. If you don't want it, you can disable it in RootLayer.h. Fixed a clipping bug with text rendering. 2005-06-11 13:00:17 +00:00
HaikuSystemCursor.h workarround for bug in WonderBrush drop shadow filter... how lame is that... 2005-04-15 17:44:13 +00:00
HWInterface.cpp fixed B_CMAP8 back to front buffer conversion (blue was missing) 2005-07-18 23:13:42 +00:00
HWInterface.h * Prepared the BScreen and BPrivateScreen class to be used with multiple monitors. 2005-11-14 14:36:12 +00:00
Jamfile Changed the way the app_server is built: 2005-11-13 15:40:21 +00:00
MallocBuffer.cpp AccelerantHWInterface now uses a MallocBuffer as RenderingBuffer for the back buffer instead of a BitmapBuffer, which under Haiku does not work. 2005-04-01 10:36:23 +00:00
MallocBuffer.h AccelerantHWInterface now uses a MallocBuffer as RenderingBuffer for the back buffer instead of a BitmapBuffer, which under Haiku does not work. 2005-04-01 10:36:23 +00:00
PatternHandler.cpp started to move files arround for better source structure, app_server still builds and runs fine, in case you were worried... 2005-03-25 17:48:49 +00:00
UpdateQueue.cpp Assigned names to "some BLocker"s to aid debugging. 2005-11-04 16:56:15 +00:00
UpdateQueue.h Assigned names to "some BLocker"s to aid debugging. 2005-11-04 16:56:15 +00:00
ViewHWInterface.cpp * Prepared the BScreen and BPrivateScreen class to be used with multiple monitors. 2005-11-14 14:36:12 +00:00
ViewHWInterface.h * Prepared the BScreen and BPrivateScreen class to be used with multiple monitors. 2005-11-14 14:36:12 +00:00