Implement drawing and clipping for display driver - drawing and clipping should work including pensizes. Drawmodes, line caps, and line joins aren't supported yet. Some implementations will need to be revamped.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7622 a95241bf-73f2-0310-859d-f6bbb57e9c96
This is the CORE of the NEW drawing code, which WORKS very well! :-)
ATM, only WinBorder remains to be rewritten, but that would be an easy job, because the core is here in Layer class and WinBorder is just a subclass of it...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6725 a95241bf-73f2-0310-859d-f6bbb57e9c96
Removed Clipper from build
Removed ScreenDriver from build for the moment
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6334 a95241bf-73f2-0310-859d-f6bbb57e9c96
Added some mouse click handling code to WinBorder
Made WinBorder mouse hooks simpler
Added some mouse handling code to ServerWindow
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6207 a95241bf-73f2-0310-859d-f6bbb57e9c96
Style tweaks to a number of files to better match OT guidelines
Added MsgCodeToBString to Utils.cpp
Removed a crash on new_decorator
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6157 a95241bf-73f2-0310-859d-f6bbb57e9c96
made debug printfs in RootLayer to STRACE calls
Minor ServerApp and AppServer tweaks
comment fixes in many places
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6119 a95241bf-73f2-0310-859d-f6bbb57e9c96
Now, we can have EVERY kind of window properly displayed in the *right* order!
You can even use BWindow::AddToSubset and - it works!
Also Mouse click works to change front/focus state between windows.
Unfortunately window movement hasn''t yet been implemented and there are *minor* problems with the focus.
That's all! If you want to see something... construct a project and use:
* new BWindow()
*BWindow::Show()
*BWindow::AddToSubset[Of]()
and link against libopenbeos.so.
Ok now, bye!
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6068 a95241bf-73f2-0310-859d-f6bbb57e9c96
Implemented a bunch of BScreen-related functions in ViewDriver
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6023 a95241bf-73f2-0310-859d-f6bbb57e9c96
Implement clipping routines for Lines and Rectangles
Fix workspace initialization problem
it's saturday night and I am writing code... bummer
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5599 a95241bf-73f2-0310-859d-f6bbb57e9c96
new optimized redrawing code
changes in some handlers in ServerWindow.
other minor changes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5355 a95241bf-73f2-0310-859d-f6bbb57e9c96
In DoResizeTo() I added some code for autoresizing(based on BView's resizeMask parameter) of children. Still, the effective code for resizing need to be written. :-) I could do that, but other things have greater priority. :-)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4803 a95241bf-73f2-0310-859d-f6bbb57e9c96
* modified Bounds() to use that member.
* some changes into RemoveChild()
* added a debugging method: void PrintTree()
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4690 a95241bf-73f2-0310-859d-f6bbb57e9c96
Made toggle for RootLayer debug output
Optimization for ViewDriver::CopyRegion with 1-rectangle regions
Fixes and tweaks to WinBorder::MouseMoved()
Toggled debug output in ServerApp
More useful comments in code in general
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4517 a95241bf-73f2-0310-859d-f6bbb57e9c96
also made some methods virtual 'cause I think DW forgot about that! It's normal, app_server is SOOOO big! :-)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4489 a95241bf-73f2-0310-859d-f6bbb57e9c96
StrokeLineArray fixes for ViewDriver
Fixes to display multiple overlapping windows properly
Layer::RebuildRegions works right now. :)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4116 a95241bf-73f2-0310-859d-f6bbb57e9c96
System cursor API and infrastructure largely implemented
Added Decorator::SetFont
Removed unnecessary parameter copying in WinBorder class API
Optimized screen updates when a decorator button is clicked
Moved TokenHandler and BitmapManager to libappserver to allow decorators to use bitmaps
Began reworking of DefaultDecorator::_DrawFrame to draw only what it is asked to
Partly implemented ViewDriver::StrokeLineArray - calls StrokeLine
Fixed a Layer init bug - visibility regions were initialized to Bounds() and not Frame()
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4060 a95241bf-73f2-0310-859d-f6bbb57e9c96
Added a couple more empty message handlers to ServerWindow
Improved DefaultDecorator - works better now
DisplayDriver::CopyRegion added and implemented it for ViewDriver
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3637 a95241bf-73f2-0310-859d-f6bbb57e9c96
Added debug code to a number of files
Enabled ServerWindow and WinBorder mouse-handling code
ScreenDriver is now double-buffered (exceedingly useful for testing)
I'm trying to think, but nothing happens! :D
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3052 a95241bf-73f2-0310-859d-f6bbb57e9c96
app_server will now display a window. Can't do anything with it, at least not yet.
GUI colors are also used now
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3047 a95241bf-73f2-0310-859d-f6bbb57e9c96
SendMessage allows for target specification
Included BMessage friend classes to allow building whilst they are absent from BMessage.cpp
More window-related code added
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3004 a95241bf-73f2-0310-859d-f6bbb57e9c96
Implemented most of and documented all of ServerWindow
Miscellaneous necessary tweaks to other classes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2833 a95241bf-73f2-0310-859d-f6bbb57e9c96
More work on Desktop and DesktopClasses
minor API tweak to DisplayDriver
Added conditional compilation stuff to AppServer.cpp for debugging purposes
TokenHandler now uses BLockers instead of semaphores for locking
Can now run the server and see something
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2717 a95241bf-73f2-0310-859d-f6bbb57e9c96
Uncommented most ServerWindow dependencies in other files
Implemented and documented almost all of Layer class
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2646 a95241bf-73f2-0310-859d-f6bbb57e9c96