Commit Graph

1000 Commits

Author SHA1 Message Date
Stephan Aßmus
a52667ee9c added a comment about how it would be nice if ServerFont could be guaranteed to be valid (ie it doesn't crash if you call one of it's functions from outside code, I like it when a C++ class is an encapsulated object, maintaining a valid internal state, and whatever client code does, it should just never crash)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12390 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-14 00:22:01 +00:00
Stephan Aßmus
53ca92129f code is more correct
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12389 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-14 00:12:44 +00:00
Stephan Aßmus
8fdfa137d6 don't crash if the system fonts are not initialized
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12388 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-14 00:12:06 +00:00
Stephan Aßmus
bd841e3cd4 fall back fonts are actually used now if you didn't install the Vera fonts on R5
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12387 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-14 00:11:33 +00:00
Stephan Aßmus
d3665bb866 mostly cosmetic changes, nothing of substance
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12386 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-14 00:10:41 +00:00
Stephan Aßmus
d78aea1846 hides a bug where we appearently read from the cursor out of bounds because of float to int converting issues... need to investigate that. In any case, I got the cursor position thing completely wrong, my intentions of setting it to 0.5, 0.5 were something else...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12385 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-14 00:09:03 +00:00
Stephan Aßmus
ec668ad701 Cosmetical changes and quite a few bug fixes along the way - B_RGB24 is definitely not supposed to be 32 bits per pixel. For example. Added another constructor to take on bitmap data from somewhere else
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12384 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-14 00:06:01 +00:00
Stephan Aßmus
9afc50fd98 cosmetical changes and some bug fixes along the way, added another constructor to take on bitmap data from somewhere else
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12383 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-14 00:04:26 +00:00
Adi Oanca
49ea5b1684 Yeah, I can't imagine how I could forget to insert this line...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12379 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-13 21:47:44 +00:00
Adi Oanca
ea44b0bc79 Made BWindow::WorkspaceActivated() and BWindow::WorkspacesChanged() work.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12378 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-13 21:32:23 +00:00
Stephan Aßmus
6697162d5c just a slightly more robust default font handling... should now work on Haiku even if you didn't install fonts from BeOS.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12347 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-12 13:15:38 +00:00
Stephan Aßmus
b176b6b493 The DisplayDriverPainter is now also the default on Haiku. The DisplayDriverImpl stuff is left out for now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12340 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-12 08:22:16 +00:00
Stephan Aßmus
5eec899752 added a TODO comment
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12339 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-12 08:15:53 +00:00
Stephan Aßmus
a53e726400 StrokeLine takes a non-const DrawData, penlocation is altered.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12338 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-12 08:15:25 +00:00
Stephan Aßmus
a11f3c21fd StrokeLine takes now a DrawData, but it is only work in progress. The changes will be more drastic in the end.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12337 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-12 08:14:29 +00:00
Stephan Aßmus
80ed6173ec Hinting works now and is enabled, the support for transformed text is probably completely broken now. To reenable it, the font loading needs to ask for vector glyphs when there will be a transformation.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12335 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-12 08:12:59 +00:00
Stephan Aßmus
0858a6fca1 The freetype hinter only works correctly if the embedded transformation is the identity matrix. The AGG freetype font engine has a flip_y method to make it easier to work with coordinates where y points down. Since it changes the embedded transformation, hinting was messed up. Therefor, this is a workarround to be able to keep using the identity matrix and still have y pointing down. It just flips the generated raster glyphs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12334 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-12 08:11:09 +00:00
Stephan Aßmus
764683a939 StrokeLine alters the pen location, DrawData needs to be non-const. I didn't make this change in the DisplayDriverImpl stuff, and it is left out of the build for now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12333 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-12 08:07:20 +00:00
Stephan Aßmus
bd6b1617ec a few cosmetic changes
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12332 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-12 08:05:03 +00:00
Adi Oanca
4038d58146 Fixed a bug where a modal subset on some occasions did not change workspaces when its main window did. Initializing workspaces is a bit different now, they are initialized when are needed. Some work on adding support for BWindow::WorkspaceActived()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12299 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-11 22:46:48 +00:00
Michael Lotz
7544c9f03b Implemented DumpToFile() from AccelerantDriver so that screenshots can be taken.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12296 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-11 20:15:43 +00:00
Michael Lotz
f0b7006ca0 We lost one pixel there.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12295 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-11 20:13:34 +00:00
Michael Lotz
d7b4d4119c This is a temporary implementation of ctrl-tab/switching between windows. It can be removed when we can use Twitcher (if we really want to use it in the end).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12294 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-11 20:11:46 +00:00
Adi Oanca
9d88881f9c Added support for setting a window's workspaces from BWindow::SetWorkspaces(). Added a new method in RootLayer to have the new window list, invalidate, set new focus and send activate messages in a single command. Did that because there were many places where the same sequence was executed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12287 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-10 19:04:06 +00:00
Adi Oanca
8476051c04 One can change a (B_NORMAL_WINDOW_FEEL only, as in R5) window's workspace by holding its tab and switching workspaces with keyboard
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12281 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-10 11:30:51 +00:00
Adi Oanca
d137bc62e8 Removed a friend, a printf and a blank line. :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12280 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-10 11:26:59 +00:00
Adi Oanca
81d71c74c8 Update requests are sent only after the last one has been received an processsed
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12268 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-06 20:56:46 +00:00
Adi Oanca
2f6d87a6c5 Removed some commented code of mine as it's no longer needed
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12267 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-06 20:54:00 +00:00
Adi Oanca
ddc9feb406 Added a member to know when an update request has been sent
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12266 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-06 20:52:58 +00:00
Adi Oanca
75efbbb3ed if region is not NULL but invalid, draw nothing
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12265 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-06 20:51:38 +00:00
Adi Oanca
0cb3fdda93 Nothing special. Just some cleanup to the update code. There is still a problem with layers not being properly updated sometimes when you move windows arround. The same problem occurs a lot more often when resizing windows. I'm traking it... :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12259 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-05 20:03:07 +00:00
Stephan Aßmus
8940f93c1d AccelerantHWInterface now uses a MallocBuffer as RenderingBuffer for the back buffer instead of a BitmapBuffer, which under Haiku does not work.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12217 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-01 10:36:23 +00:00
Michael Lotz
7d5778defa Added support for GetEscapements() too. Still unfinished. Maybe this should be moved elsewhere?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12216 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-01 09:18:25 +00:00
Michael Lotz
c2da902f2e Implemented BPortLink::AttachShape and BPortLink::ReadShape and used them for passing the shapes in AS_GET_GLYPH_SHAPES.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12215 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-01 07:29:04 +00:00
Michael Lotz
ebf8af66c9 Added support for BFont::GetGlyphShapes. Not finished yet and untested, delivery method as to be changed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12214 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-01 07:00:32 +00:00
Michael Lotz
3661cae99c Aren't these supposed to be chars?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12213 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-01 04:03:11 +00:00
Michael Lotz
54f7283aa0 Appearantly StrokeLineArray is used in BButton rendering.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12210 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-01 02:06:07 +00:00
Ingo Weinhold
c6ba97963c We didn't Unlock(), if setting the display mode failed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12209 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-01 01:11:38 +00:00
Adi Oanca
a2bc7be9ed This fixes up the last known remaining issues with the update code. It works perfectly now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12197 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-31 16:48:51 +00:00
Stephan Aßmus
a356096dba massive performance improvements. On my ancient 2xPII 350, the DisplayDriverPainter with the ViewHWInteface is pretty much usable now. It could be even better if app_server culmulated update requests more.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12180 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-31 10:46:02 +00:00
Michael Lotz
bb72ccac74 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.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12177 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-31 06:08:37 +00:00
Stephan Aßmus
89b3c19c8a ViewHWInterface updates are a bit smoother now
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12175 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-30 23:02:44 +00:00
Stephan Aßmus
15b391f607 more correct implementation, forgot header again
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12173 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-30 22:24:40 +00:00
Adi Oanca
4c6f8b572e This fixes up those update request being lost.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12172 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-30 22:13:26 +00:00
Stephan Aßmus
fbdc6c450d ups, forgot this one, but it doesn't help. views seem to have no clipping applied to them at all now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12171 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-30 22:11:48 +00:00
Stephan Aßmus
03339b3565 added Adis changes, started to return BRect in Painter drawing functions, this will be the area enclosing all pixels that were touched by an operation, so that the DisplayDriverPainter knows exactly what region to copy from back to front buffer, it calculates that by itself for all other functions, which is not as robust.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12170 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-30 22:10:42 +00:00
Adi Oanca
f694c0e30e This may be a quick and dirty fix to the problems we've been having with the update code. However this requires something from DisplayDriver. I'll write about this in a moment on app_server list.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12165 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-30 20:06:50 +00:00
Stephan Aßmus
45c0cd28d8 scrolling BViews now works, tested with MiniTerminal, added lots of TODO stuff, maybe Adi or DarkWyrm should have a look, maybe they can clear some stuff up for me.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12161 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-30 16:05:05 +00:00
Stephan Aßmus
6283b1c6dd removed leftover code
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12157 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-30 11:11:17 +00:00
Axel Dörfler
97d05e6652 Even if it's probably outdated soon: fixed a crashing but in Shutdown() if
no card could be found.
Note, the replacement does not suffer from this anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12152 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-30 00:17:12 +00:00
Stephan Aßmus
d324aa8386 fixed MiniTerminal rendering, for real now
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12151 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-30 00:12:24 +00:00
Stephan Aßmus
bf72c9e259 fixed MiniTerminal rendering
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12149 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 23:56:42 +00:00
Stephan Aßmus
d01b623805 some improvements to font handling, but Miniterminal still renders only black blocks
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12148 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 23:42:52 +00:00
Michael Lotz
507c1efe07 I didn't want to mess with the screen resolution, sorry.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12147 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 23:04:26 +00:00
Michael Lotz
73fc67136c Choose headers according to DISPLAYDRIVER, too.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12146 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 23:00:58 +00:00
Stephan Aßmus
d3b0b7b979 fixed some font related problems, Painter should now rely on the app_server font manager. maybe I fixed some compile problems too. Sorry if that was the case.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12144 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 22:57:43 +00:00
Michael Lotz
a4f89893df Added the input_server port to the AccelerantHWInterface - again.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12143 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 22:44:13 +00:00
Stephan Aßmus
3f537e5fa7 moved more of the old stuff from DisplayDriver into DisplayDriverImpl
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12141 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 22:22:28 +00:00
Stephan Aßmus
13066bfea1 it belongs here
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12140 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 22:01:21 +00:00
Stephan Aßmus
b3b4f48527 removed const declaration to allow locking in DisplayDriverPainter, as I think access to this needs to be serialized
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12137 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 21:45:52 +00:00
Stephan Aßmus
7940a07172 DisplayDriverPainter should now use the new AccelerantHWInterface when compiled for Haiku, added locking to the rest of the functions which access HWInterface instance
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12135 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 21:26:58 +00:00
Axel Dörfler
d19337ad86 The previous change overwrote the $defines variable, although both defines should
be there at the same time.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12133 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 20:37:30 +00:00
Michael Lotz
da4526cdcf TEST_MODE is now disabled on Haiku too. So app_server is not a BApplication anymore and doesn't depend on itself.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12132 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 19:50:39 +00:00
Michael Lotz
9775bf33cf TEST_MODE is now disabled on Haiku too. So app_server is not a BApplication anymore and doesn't depend on itself.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12131 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 19:49:55 +00:00
Stephan Aßmus
9c59f2f207 fixed app_server build, though I don't exactly know why that fixes it
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12130 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 18:32:43 +00:00
Stephan Aßmus
d3db964ed0 code refactoring, moved common stuff into the base class
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12129 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 17:36:38 +00:00
Michael Lotz
b87be17fc8 Fixed the last remaining warning.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12128 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 17:31:31 +00:00
Axel Dörfler
86e150e821 app_server.rsrc is no longer used (we already have the .rdef file).
Fixed the application signature in the .rdef file.
Removed some "how to write an .rdef file" comments.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12124 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 16:38:17 +00:00
Michael Lotz
b2c9e18270 Accelerant based implementations of HWInterface and RenderingBuffer. Untested.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12123 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 16:31:46 +00:00
Axel Dörfler
82aa535b3f Updated app_server Jamfile to be able to build a server that runs under Haiku
if $TARGET_PLATFORM requires this.
Note, "jam app_server" for R5 did not work for me before and does not work now
although the number of errors are reduced - whoever knows the requirements for
the app_server under R5 better than me, please fix this.
Added the app_server as well as some more drivers to the Haiku HD image. Since
RUN_WITHOUT_APP_SERVER is still defined, it won't work correctly, though.
For the time being, you need to manually alter this and the Bootscript in order
to run it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12121 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 16:21:55 +00:00
Axel Dörfler
b2b5acff33 Made DISPLAYDRIVER a true compile time option.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12119 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 15:39:08 +00:00
Stephan Aßmus
1a7fc52717 added some functions with optimized implementation, optimizes most frequent usage
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12113 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 01:43:04 +00:00
Adi Oanca
eb6bc5d5ff Started to implement workspace support. Surprisingly, with this small change changing workspaces actualy works. An it works quite well I may add. :-) So happy the new window manager which I heavily tested actualy works inside app_server. :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12109 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 21:32:24 +00:00
Adi Oanca
256c1b1502 Insignifican change. Read uint32 instead of int32.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12108 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 21:26:35 +00:00
Stephan Aßmus
e33b90ea35 implemented cursor support in the DisplayDriverPainter
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12107 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 18:03:45 +00:00
Stephan Aßmus
e0bb2421ea whoa - how did this even work?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12094 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 14:29:18 +00:00
Stephan Aßmus
181a984e2a implemented the rest of the drawing calls save for Stroke/FillShape, since I would have to ask what kind of data this function is being passed
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12092 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 13:39:35 +00:00
Stephan Aßmus
02ec6ae825 Implemented and tested the color spaces B_RGB16, B_RGB15, B_CMAP8 and B_GRAY8. The trick is this: The Painter based implementation will most likely always use a double buffered approach. I simply made the back buffer, into which Painter draws, always B_RGBA32, while the front buffer can have any other format the drawing backend is supposed to support. In CopyBackToFront, the format conversion is handled. This gets us pretty far without actually doing very much, and I am not even sure if there should/can be a better implementation.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12091 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 13:38:11 +00:00
Stephan Aßmus
c3bfa6fec9 avoid a crash if used without attached buffer
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12090 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 13:33:15 +00:00
Stephan Aßmus
9543470f44 RootLayer thread can busy loop, and with this change, its easier to shoot app_server whereever it hurts most
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12089 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 11:13:19 +00:00
Stephan Aßmus
f6939eb1e1 more correct implementation, but still exhibits problems, usage turned off in ViewHWInterface::Invalidate
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12088 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 11:11:33 +00:00
Stephan Aßmus
94b3e6bfd0 ignore the pattern passed to the drawing functions, keep using the one from SetDrawData
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12087 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 11:08:10 +00:00
Stephan Aßmus
55a56d8b0e added fake_input_server.cpp to the build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12086 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 11:04:44 +00:00
Stephan Aßmus
022badfd34 extracted the fake input_server communication into an extra file used by ViewDriver and ViewHWInterface
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12085 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 11:04:00 +00:00
Stephan Aßmus
53115c9920 moved the place of implementation of locking in DisplayDriver, because the Painter version has it elsewhere. the DisplayDriver locking API is now abstract, the same locking is now in DisplayDriverImpl, Painter version uses HWInterface for locking
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12084 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 22:02:19 +00:00
Adi Oanca
d9bbe07efa When the active window (the one who has both, focus and front states) changes, messages are sent to the client side. This makes BWindow::WindowActivated to be called on such am event.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12077 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 13:52:26 +00:00
Adi Oanca
80cbe2b0f3 2 new methods
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12076 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 13:48:30 +00:00
Adi Oanca
2401f93d84 Added FrontWinBorder(). Made FocusWinBorder() and a few other methods inline.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12075 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 12:58:27 +00:00
Adi Oanca
ab88eaf2ad BWindows are notified when they are moved or resized.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12074 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 12:19:37 +00:00
Adi Oanca
867b420067 get_workspace_windows() new returns true if there was a change in window hierarchy. Improved performance a bit by avoiding an invalidate call.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12072 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 10:51:28 +00:00
Adi Oanca
aa498a5f03 get_workspace_windows() now returns bool
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12071 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 10:49:42 +00:00
Adi Oanca
9e358400f5 Sending windows into background works now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12070 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 10:00:37 +00:00
Michael Lotz
6109122c9b Implemented screen to screen blit and cleaned up header.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12067 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 05:29:56 +00:00
Michael Lotz
65369afd6d Implement AS_LAYER_COPY_BITS.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12066 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 05:25:59 +00:00
Michael Lotz
f43d1e849d Implement AS_LAYER_SET_PATTERN.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12065 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 04:08:33 +00:00
Michael Lotz
a2a622616f Some cleanup to make it easier to read.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12064 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 03:33:23 +00:00
Michael Lotz
d5373f593a Minor cleanup and a small fix
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12061 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 01:57:28 +00:00
Stephan Aßmus
c3314ff5eb added DPMS functions to HWInterface as well as Initatialze and Shutdown, added a couple of TODO comments
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12058 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 23:23:40 +00:00
Stephan Aßmus
4594032d1a got this added\?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12057 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 22:26:42 +00:00
Stephan Aßmus
3294d07b15 abstract base class and implementation using BView and BWindow of an interface to a graphics card, UpdateQueue doesn't work yet, it was going to be used to decouple frame buffer transfers to the front buffer from the drawing in the back buffer
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12056 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 22:16:29 +00:00
Stephan Aßmus
5cdd702901 use a DisplayDriverPainter version if config says so
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12055 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 22:13:23 +00:00
Stephan Aßmus
1b52d7cf9c include my new stuff in the build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12054 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 22:12:37 +00:00
Stephan Aßmus
3d07835f2a init display mode
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12053 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 22:11:52 +00:00
Stephan Aßmus
517e54d0d9 added more support functions
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12052 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 22:10:54 +00:00
Stephan Aßmus
80547db1f2 added some support functions for string bounding box
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12051 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 22:09:58 +00:00
Stephan Aßmus
4157339be2 started to implement stuff, it can actually be used and renders my test app almost like the old implementation, plus clipping
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12050 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 22:09:02 +00:00
Stephan Aßmus
e56d7bd374 fixed type in RootLayer, which I found because I triggered a bug
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12049 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 22:05:40 +00:00
Stephan Aßmus
e2408620c3 disable the build of agg_font_freetype.cpp for now
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12041 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 16:49:40 +00:00
Michael Lotz
0f1414c791 Add Jamfile for libpainter.a to fix the build of app_server.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12020 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 10:51:07 +00:00
Michael Lotz
2f45e7ed71 Update inline documentation to reflect the removal of the strlength field
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12019 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 10:40:13 +00:00
Adi Oanca
61c1519f03 Small fix to send B_MOUSE_MOVE/UP messages to the BView which acquired the mouse
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12018 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 09:18:27 +00:00
Adi Oanca
40b3f1e1ec * clicking inside the active window no longer gets you into debugger. :-P
* Updated KeyboardEventHandler to use the new focus method.
* don't read strlength on B_KEY_DOWN/UP as this gets you into debugger when using ViewDriver.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12017 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 08:55:27 +00:00
Adi Oanca
07fdbe8f67 Moved app_server window a bit to the left.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12016 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 08:41:46 +00:00
Stephan Aßmus
80141c9fc5 libagg is now build as static
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12013 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 23:34:35 +00:00
Stephan Aßmus
1fc2bd8922 the beginnings of the Painter version of DisplayDriver, I don't know what I'm doing yet, so just ignore this for now
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12011 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 22:46:10 +00:00
Stephan Aßmus
a850bd1d8f added Painter to the app_server build and fixed the Jamfile to include the drawing subfolder for header search path
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12010 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 22:44:18 +00:00
Michael Lotz
b1530ab8e8 When sending native keydown/keyup events the delivery of the string was broken.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12009 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 21:51:02 +00:00
Michael Lotz
96b832ac57 No need to endless loop here.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12008 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 21:39:53 +00:00
Michael Lotz
d31e3b8e27 Use FTFace() function to get the face instead of always creating a new one.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12007 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 21:11:46 +00:00
Michael Lotz
6d495dfc26 FT_New_Face is a quite heavy function and shouldn't be called for every StringWidth, StringHeight and DrawString call. We now keep it open in FontStyle and destroy it there too.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12006 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 21:02:40 +00:00
Michael Lotz
c98108eee3 The monitoring thread should be called "picasso" (lower case) as in BeOS R5.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12005 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 20:39:43 +00:00
Michael Lotz
22cf66212c Update AccelerantDriver to the new API and implement all necessary functions.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12001 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 19:59:10 +00:00
Michael Lotz
0653d45f5b Adapt to new location of display drivers
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12000 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 19:46:28 +00:00
Stephan Aßmus
c0fe8a07c9 moved Painter into drawing
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11989 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 17:55:49 +00:00
Stephan Aßmus
3ddd2fc70f started to move files arround for better source structure, app_server still builds and runs fine, in case you were worried...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11988 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 17:48:49 +00:00
Stephan Aßmus
10612543aa step 3, exracted code from DisplayDriver into DisplayDriverImpl, adjusted the existing implementations to derive from the new class, got rid of some "friend" stuff along the way, essentially I made room for the new Painter based DisplayDriver implementation.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11986 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 17:29:20 +00:00
Stephan Aßmus
cd9401a70b second step, all unused stuff is actually removed from DisplayDriver.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11983 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 13:27:20 +00:00
Stephan Aßmus
f595ecf898 as a first step, all appearently unused calls are commented outfrom DisplayDriver and derived classes, I moved many implementations arround to match the order of the declaration in the header, makes it easier to find stuff
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11980 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 13:14:59 +00:00
Axel Dörfler
89501e16b9 Forgot to update fonts Jamfiles - ideally, these should be moved somewhere else,
maybe into the data/ directory.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11974 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-24 14:51:25 +00:00
Axel Dörfler
33bbe22391 Moved app_server files to app/.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11972 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-24 14:45:52 +00:00
Axel Dörfler
7abf63d292 Moved app directory out of the way to ease moving.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11971 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-24 14:43:40 +00:00
Axel Dörfler
13b81f062e Removed old app_server files. server/ will be moved on layer up next.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11970 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-24 14:31:53 +00:00
Stephan Aßmus
bdef3a8ede spotted some potetial segfault bugs
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11969 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-24 12:59:13 +00:00
Stephan Aßmus
592bc7d4a3 updated
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11968 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-23 23:13:29 +00:00
Stephan Aßmus
a0ee6395cd updated
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11967 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-23 23:10:43 +00:00
Stephan Aßmus
6fb68b835c added missing string rendering functions, on Haiku, there should be support for drawing bitmaps in all colorspaces that BBitmap::ImportBits knows how to convert to B_RGB32
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11965 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-23 22:34:45 +00:00
Stephan Aßmus
8df0e71d06 support rendering strings up to a certain length, ie less then strlen
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11964 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-23 22:33:06 +00:00
Stephan Aßmus
a0c67cdb39 refactored DrawBitmap to support a version BBitmaps and one for ServerBitmaps, implemented InvertRect, but that was a while ago, and I didn't test it
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11960 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-23 20:31:33 +00:00
Adi Oanca
165177a105 Added support for Layers capturing the mouse (Mouse events). Changed WinBorder to use mouse events.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11946 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-21 20:29:24 +00:00
Adi Oanca
464ebc06c7 Some extra locking when adding a WinBorder
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11919 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-19 19:08:19 +00:00
Adi Oanca
07bde8ab89 * solved that damn bug that run me into debugger. yuppyyy.
* removed some comments
* mouse down messages go only to the view that has focus. Yeah, they didn't. :p
* solved a bug where some windows did not redraw when hiding a modal.
* another bug where a floating window would not come in front for gaining focus.
* added client's team_id into window title.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11918 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-19 18:58:47 +00:00
Adi Oanca
48e72f82e6 Removing subset windows works now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11907 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-18 19:00:45 +00:00
Adi Oanca
ddf57545a2 Improved locking. A bit. :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11879 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-17 17:41:00 +00:00
Adi Oanca
211de495df Keyboard and Mouse handlers went private.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11878 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-17 17:37:56 +00:00
Adi Oanca
943ba1b132 MoveToFront() returned 'invalidate' for a floating window when it shouldn't; window was already in front as possible.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11877 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-17 17:36:30 +00:00
Adi Oanca
89bdde9df1 There was too much debug output for regions rebuilding
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11742 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-14 20:59:00 +00:00
Adi Oanca
8b4cf1c373 Fixed a problem with floating subset windows not being shown when their main window became active. (Cleared visible regions for it and its children when automatically being removed from workspace)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11739 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-14 19:25:15 +00:00
Adi Oanca
c14d3fc9bd Some progress on supporting subset windows.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11711 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-13 22:54:01 +00:00
Adi Oanca
8866e7b709 RootLayer.h: introduced a method for highlighting window tab when focus
changes.
RootLayer.cpp: window tab was properly lit only when changing focus with
the mouse. Now the same happens when showing or hidding windows.
Desktop.cpp: normal windows created after floating windows did not had
B_FLOATING_APP_WINDOW_FEEL windows in their internal list, thus when such
a window was selected to become the front most it did not show floating
app windows in front of it. Fixed that now.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11710 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-13 19:53:44 +00:00
Adi Oanca
9015d08261 .
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11709 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-13 17:07:40 +00:00
Adi Oanca
c9df3905a8 Improved performance when getting windows list from the active workspace. no more call malloc() every time the list was needed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11708 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-12 23:26:05 +00:00
Adi Oanca
a6fa470989 Window tab is highlighted/grayed when changing between windows
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11665 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-10 22:07:44 +00:00
Adi Oanca
d3beb2a46c Window moving and resizing resumed
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11661 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-10 21:34:04 +00:00
Adi Oanca
d29c4f5287 Some objects must be destroyed on server quit.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11613 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-07 21:52:41 +00:00
Adi Oanca
74d5a8f70e Fixed a couple of crashes. app_server nicely quits now.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11564 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 23:21:36 +00:00
Adi Oanca
e438905abd New window manager comming in.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11513 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-28 20:23:51 +00:00
DarkWyrm
348f28e773 Removed the locking from RootLayer::Buttons -- caused a hang in the one place it is called. (doh!)
Implemented ServerApp handler for BFont::CountTuned and added a standby handler for BFont::Direction
Tweaked the ServerWindow debug output


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11457 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-23 01:45:48 +00:00
Adi Oanca
0b9056c784 BMessages which reach BWindow now take full advantage of application_kit's power in sending BMessages to BHandlers
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11282 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-07 00:45:59 +00:00
DarkWyrm
a7870927a4 Implemented AS_SET_FAMILY_AND_STYLE_FROM_ID. One more thing that works better than R5. ;)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11266 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-05 22:46:54 +00:00
DarkWyrm
ee1240b38e RootLayer now tracks which mouse buttons are down
Implemented ServerWindow code for GetMouse


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11265 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-05 21:39:39 +00:00
DarkWyrm
fac4ccbae7 Made Layer::RequestDraw actually request a screen update
Added a second method for ServerFont::SetFamilyAndStyle and added return codes
Removed a couple memory leaks


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11262 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-05 20:12:05 +00:00
Stephan Aßmus
6c1ebb0fcb huge cleanup and more style guide conformance, removed agg namespace, used marcos for inlined blending functions to avoid dereferencing, which gives a small speedup
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11249 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-04 15:52:46 +00:00
Stephan Aßmus
2902c1573a a little clean up, usage of unpacked scanline container gives a small speedup
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11248 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-04 15:45:12 +00:00
Stephan Aßmus
033e1e690c DrawingMode is no longer in agg namespace, an ellipse is drawn with a minimum of 12 sections
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11247 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-04 15:43:23 +00:00
Adi Oanca
998521f78d Helped BWindow for calling the apropriate BView hook methods on some mouse and keyboard events
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11242 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-03 22:50:48 +00:00
Adi Oanca
0a09721a2c Added a private field to B_MOUSE_DOWN message to know whose BView::MouseDown() method to call
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11238 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-03 21:31:42 +00:00
DarkWyrm
f3721fd1d7 Tweaked the GetSystem font calls to prevent memory leaks
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11184 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-01 23:23:45 +00:00
shadow303
b9717a7150 Long overdue fixes for internal API change, now if I could just unbork my system enough to test them...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11115 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-29 00:19:38 +00:00
Stephan Aßmus
aaea96798d the version for B_OP_COPY that ignores the pattern and uses the color from the AGG renderer directly, thus the renderer color needs to be set up correctly, which Painter does take care of
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11113 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-28 21:49:00 +00:00
Stephan Aßmus
884e8bc6b5 flag for using a solid version of a DrawingMode, currently only B_OP_COPY actually has an implementation
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11112 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-28 21:45:59 +00:00
Stephan Aßmus
597841da50 trying to optimize for B_SOLID_XXXX, implemented separate _SetPattern function, which encourages usage of a special DrawinMode instance, but it is currently not used, because it didn't give much speedup.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11111 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-28 21:44:38 +00:00
Stephan Aßmus
4f6cd6ef55 some additional status information
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11101 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-28 13:10:06 +00:00
Stephan Aßmus
d4734e04d1 support for switching the alpha drawing mode when the blending mode changes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11100 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-28 13:07:21 +00:00
Stephan Aßmus
8eca754bfd support for the rest of the drawing modes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11099 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-28 13:05:37 +00:00
Stephan Aßmus
3741b755dc huge clean up
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11098 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-28 13:02:27 +00:00
Stephan Aßmus
681c4b3ba5 rest of the drawing modes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11097 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-28 12:59:17 +00:00
haydentech
c0e4d12489 AS_LAYER_POP_STATE was inadvertantly deleting the entire layerdata stack instead of just popping the top one off
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11096 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-27 23:16:28 +00:00
Adi Oanca
faa0ed6a33 s/(c) 2001-2002, OpenBeOS./(c) 2001-2005, Haiku, Inc.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11039 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-25 20:44:09 +00:00
Adi Oanca
574540edd2 Removed a redundant BMessage when mouse button was pressed. This message is already sent by WinBorder::MouseDown(). Window content was redraw when a window became active. Removed some code that anyway was not used. It will be replaced by the new window manager which is comming soon.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11012 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-24 21:04:23 +00:00
Adi Oanca
c4e214743d All 'Invalidate' methods are now private, intended for RootLayer's use only.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11011 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-24 20:59:27 +00:00
Adi Oanca
304feb8ad5 RebuildAndForceRedraw() is not needed anymore
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11010 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-24 20:57:51 +00:00
Adi Oanca
bd1ede2ae9 Yes... I really don't remember why I haven't subclassed FMWList from BList...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11007 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-24 17:34:47 +00:00
Adi Oanca
383461c7ee 3 global variables (gRedrawReg, gCopyRegList, gCopyList) went into RootLayer's property
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11006 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-24 17:18:19 +00:00
DarkWyrm
c0dc91fc00 Since last checkin version had no description:
Huge amounts more debug output available
Resolved several timing issues
Fixed a major problem with sending mouse messages to the server when emulating the input server
There are still stability issues with initial startup
Still some drawing problems
It *works*!


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10981 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-23 18:59:50 +00:00
DarkWyrm
2471ba9f3d Cleaned up driver init section of Desktop -- worry about multiple drivers only with AccelerantDriver
RootLayer: debug output fixes and removed a compiler complaint


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10980 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-23 18:22:48 +00:00
DarkWyrm
c36b4a4409 messaging fixes to RootLayer and ViewDriver
minor tweaks to ServerWindow


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10977 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-23 15:39:01 +00:00
DarkWyrm
7605e77d21 Added GetFamilyAndStyle
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10975 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-23 13:40:11 +00:00
Adi Oanca
63f09583e3 Oups. Layer::MoveBy/ResizeBy() escaped me. :-) The actions they used to perform are now executed only by RootLayer's thread.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10972 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-22 23:25:41 +00:00
Adi Oanca
b4fe86df56 Yes... B_FULL_UPDATE_ON_RESIZE on Layer resize not with every redraw. :-D
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10966 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-22 21:51:39 +00:00
Adi Oanca
ed446d324d ServerWindow.cpp:
* made MonitorWin thread wait until associated WinBorder is hidden
and RootLayer's lock is acquired.
RootLayer.cpp:
	* added 2 public methods for calculating visible regions.
ALL:
	* all previous 'Invalidate' methods now call RootLayer's ones.

	That's it, all region calculations are done in the context of the
high priority thread: WorkingThread.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10961 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-22 20:51:12 +00:00
Adi Oanca
864a2c6456 Window showing/hiding is now done in RootLayer::WorkingThread's context
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10938 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-21 21:18:25 +00:00
Adi Oanca
f6e53a25ec No need to lock anymore when calling ServerWindow::SendMessageToClient()
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10937 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-21 21:16:15 +00:00
Adi Oanca
6a257c30a9 Moved window moving code from ServerWindow. CPU consuming operations now run win WorkingThread's context. Added locking mechanism for WorkingThread. Removed locking arround ServerWindow::SendMessageToClient().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10936 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-21 21:13:00 +00:00
Adi Oanca
1cd22df0dc Added 2 private methods for showing/hiding WinBorders. Added a BLocker member.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10935 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-21 21:09:06 +00:00
Adi Oanca
fde7aed2ee Moved 'Invalidate' calls in RootLayer.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10934 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-21 21:06:59 +00:00
DarkWyrm
56bead3235 Implemented ServerFont::SetFamilyAndStyle(id,id)
Other API tweaks to ServerFont
Style changes in ServerFont


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10928 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-21 13:13:08 +00:00
DarkWyrm
de48335a77 Added handlers for a few unhandled and unimplemented BView calls
BView::GetMouse won't block the app for now, at least


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10923 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-21 02:01:28 +00:00
Stephan Aßmus
08f1d3c965 refactoring and cleanup
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10921 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 23:26:13 +00:00
Stephan Aßmus
34651df507 extracted general blending function
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10920 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 23:24:02 +00:00
Stephan Aßmus
f71ffba994 implemented more drawing modes, refactored a little, still work left to do...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10918 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 23:07:07 +00:00
Stephan Aßmus
95ff0e4fe8 Maybe I have actually nailed bitmap scaling, though I would think that the BView implementation doesn't exactly follow the Be Book. Could be I'm overlooking something. Anyways, Painter seems to behave like the original now. The previous revision had a compile error too for aliased drawing.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10917 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 22:57:17 +00:00
Adi Oanca
84b62fccc0 * closing a window no longer takes you to debugger
* send mouse_[move/up/weel] only if the cursor is inside a window(not
above decorator)
* added WinBorder::MouseWheel()


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10912 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 18:39:08 +00:00
Adi Oanca
8357c93db5 Fixed that annoying cursor bug where the window dissapeared on moving
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10907 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 17:30:37 +00:00
Stephan Aßmus
30fd3eb18a line profile is now cached by being a member of Painter, as was suggested by Maxim, it's too heavy an object for being created on the fly
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10905 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 15:23:23 +00:00
Stephan Aßmus
db94952b4f updated info
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10904 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 14:54:42 +00:00
Stephan Aßmus
8cd6385cfe adopted for different PatternHandler version
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10903 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 14:27:08 +00:00
Stephan Aßmus
cb8e43abdf now integrated with Haiku build system, so no more need for this
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10902 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 14:23:07 +00:00
Stephan Aßmus
2e4822e67d new B_OP_ADD drawing mode
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10901 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 14:15:58 +00:00
Stephan Aßmus
9e89de2ca6 adopted to different PatternHandler version
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10900 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 14:14:50 +00:00
Stephan Aßmus
1b837c4b6b there can only be one
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10899 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 14:13:10 +00:00
Stephan Aßmus
7ca3c69091 added some convinience functions to handle rgb_color additionally to RGBColor
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10898 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 14:10:11 +00:00
Stephan Aßmus
0a86682dd0 this code is part of the Painter testing framework, and thus doesn't belong here
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10893 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 12:53:26 +00:00
Stephan Aßmus
ba35b5d77d this file has been moved to headers/private/servers/app
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10891 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 12:44:07 +00:00
DarkWyrm
7a5829aab1 Made modifications to send keyboard messages to client applications
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10888 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-19 18:59:41 +00:00
Adi Oanca
aea21365e7 Cursor operations are made through RootLayer's(ATM, the only one) CursorManager and visible settings directly call RootLayer's DisplayDriver.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10887 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-19 18:00:05 +00:00
Adi Oanca
3b5df3c151 'cursormanager' not global anymore
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10886 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-19 17:55:50 +00:00
Adi Oanca
eb7b20d820 RootLayer now has a stack allocated CursorManager
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10885 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-19 17:54:03 +00:00
Adi Oanca
f9ef06250c FindCursor is now public
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10884 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-19 17:52:53 +00:00
DarkWyrm
4e9042b685 Fix build
Remove a NULL pointer reference in debug code


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10883 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-19 17:35:17 +00:00
Adi Oanca
4431e07a3a a BList member is allocated on stack now
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10878 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-19 16:46:36 +00:00
DarkWyrm
0d9d87e7f2 Debug output tweaks and changed temporary cursor-related debugger calls to printf's to make other development less annoying
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10876 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-19 15:12:35 +00:00
Ingo Weinhold
1f071637ed Don't link against the libfreetype.so in ~/config/lib as we don't build it
anymore. If you want to have a symlink there, just create it.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10874 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-19 14:23:43 +00:00
DarkWyrm
b8fb69518c Reintegrating Bill Hayden's changes to FontStyle::ConvertToUnicode in some currently-disabled code
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10858 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-18 23:18:37 +00:00
Adi Oanca
fe93751f01 Moved CursorData.cpp into libappserver.so
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10853 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-18 22:31:08 +00:00
Adi Oanca
e32785759f Fixed cursor bug; made some cursor handlers temporaly unavailable. :-D - this is part of moving PollerThread into RootLayer class.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10852 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-18 22:23:34 +00:00
haydentech
9e711e9327 malloc.h is deprecated, use stdlib.h
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10850 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-18 19:45:22 +00:00
DarkWyrm
d86ffbc9c4 Changed keyboard nav color to match R5 even though we use Dano's attributes
BFont::GetHeight now works properly


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10806 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-17 20:08:40 +00:00
DarkWyrm
80b0522e29 Fixed style name -> face translation
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10790 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-17 02:20:57 +00:00
DarkWyrm
4bd87f4887 Retooled the API and implemented some of the message handlers
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10789 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-17 02:05:50 +00:00
Adi Oanca
f4687e882c * moved input handling code from Desktop class to RootLayer
* PollerThread was replaced by WorkingThread(RootLayerX)  thread which is created every time a RootLayer object is created and destroyed when deleted.
* ViewDriver now initializes the "inputServer" port because it is one of the first objects instantiated by the server.
* changed the way a RootLayer(ex Poller) quits. The thread is not killed anymore, it is been asked to quit nicely. This prevents (future) deadlocks.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10780 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-16 21:35:02 +00:00
Stephan Aßmus
9f3445e1bf added tests for using the pen location version of DrawString
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10722 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-14 02:22:26 +00:00
Stephan Aßmus
6303609fca added support for retrieving the position of the virtual next char, for some reason the kerning is handled correctly across multiple calls to RenderString, it must somehow make sense from looking at the code, but I don't follow it this late in the night...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10721 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-14 02:19:23 +00:00
Stephan Aßmus
8837f9f78d DrawString now modifies the pen position
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10720 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-14 02:16:44 +00:00
DarkWyrm
d9558e8396 Sync with stippi's version of PatternHandler with integration tweaks
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10719 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-14 01:34:20 +00:00
Stephan Aßmus
36351e2d44 cosmetic changes, and removal of some unnecessary vector conversion pipelines in Stroke and FillRoundRect
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10604 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-07 02:43:24 +00:00
Stephan Aßmus
4569b90da0 Initial version of the Painter framework, which should be usable as a drawing backend.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10603 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-07 01:58:36 +00:00
haydentech
e25d0ac8e6 Change FT cache manager calls to conform to the new FreeType 2.1.8 API
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10595 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-06 18:29:02 +00:00
DarkWyrm
9655bd6c06 Removed a couple of deadlocks caused by missing DisplayDriver unlocks
remove possible NULL pointer crash in LayerData
Added low-level clipping to ViewDriver
Some minor UI tweaks to WinBorder


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10216 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-24 20:07:41 +00:00
DarkWyrm
49de8aa416 Moving to the headers/private/servers/app because of DisplayDriver dependency
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9948 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-12 22:33:53 +00:00
DarkWyrm
b5602a834c fixed a bug in ViewDriver which caused it to not send mouse wheel messages
Added a method to CursorHandler to get the mouse position
Mouse messages are now sent to the client window


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9814 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-06 20:04:39 +00:00
DarkWyrm
929bab19c4 Fixed a long-standing bug with displaying focus and some tweaks to Desktop focus code
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9809 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-06 16:54:05 +00:00
haydentech
f260cedb5a Implement bare-bones AS_SYNC message handling - this fixes a problem whereby app_server<->client communications would come to a stop since the client expected a reply from this message and would never get one because it was unimplemented
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9711 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-01 16:18:44 +00:00
DarkWyrm
134d6bb787 Removed a couple stupid cursor-related bugs
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9403 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-18 21:31:15 +00:00
DarkWyrm
720dc8a4d1 DrawString updates the pen position
Removed a bug preventing use of antialiasing in DrawString
StrokeLine updates the pen position now
Added a couple forgotten break statements to a few cases in DispatchMessage


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9383 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-16 22:42:08 +00:00
DarkWyrm
37aec728fa Updated the various drivers to match the DisplayDriver::StrokeLineArray changes
Removed dead code from ServerApp.h
Added to ServerWindow support for area-based messages and implemented code for AS_STROKE_LINEARRAY


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9378 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-16 02:02:27 +00:00
DarkWyrm
8fd1ad6fb0 Dead code removal from BGet++
API modifications for ServerApp to support PortLink messages sent via an area
Added a RAM-based PortLink message reader to handle reading from an area


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9336 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-14 01:23:00 +00:00
DarkWyrm
76d4213d60 Removed a couple of unnecessary includes
(Hopefully) patched a crash under the BApplication Quit2 test
Speedup for CursorManager::RemoveAppCursors


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9216 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-05 23:00:47 +00:00
DarkWyrm
e841a5da12 Making some headway on the cursor redraw problems when moving windows. Not quite fixed yet, though
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9027 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-21 23:10:23 +00:00
DarkWyrm
8dd37bd51b s/OpenBeOS/Haiku/
Bugfixes to graphics cases in ServerWindow
Added assignment operator to GraphicsBuffer
Style fixes for ServerCursor and ServerBitmap
Implemented and integrated CursorHandler to clean up DisplayDriver code some
Hotspot bugfix for ServerCursor(cursordata *)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9019 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-20 22:50:02 +00:00
DarkWyrm
98ecc9715d Added to Utils a function to compute polygon boundaries
Moved Utils to libappserver - DisplaySupport needs it
Tweaked PicturePlayer to match polygon function tweaks
Added Shape, Region, and Polygon handling to ServerWindow
Removed ServerWindow::DispatchGraphicsMessage
Numerous small tweaks to DisplayDriver


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8991 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-17 10:27:58 +00:00
DarkWyrm
82cd90d8c9 Added support for stroking and filling rectangles, roundrects, arcs, beziers, and ellipses
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8954 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-14 22:21:26 +00:00
DarkWyrm
a3d34bb143 Added a couple of conversion methods for BPoints
Did some serious playing with update code in ServerWindow and Layer
BView::StrokeLine calls draw to the screen(!!!)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8935 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-14 00:51:51 +00:00
DarkWyrm
b5eb4481e8 Some minor API cleanups
Documented quite a few functions while refamiliarizing myself with the desktop code


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8896 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-09 00:54:21 +00:00
DarkWyrm
8a715d82f6 turned off debug output in AppServer.cpp and ServerApp.cpp
system palette is now hardcoded using Ingo's BBitmap code for a speedup and the ability to reference the server's system palette without the server actually running
Added some utility classes to make finishing DisplayDriver easier and cleaner
Removed a stray debugger call in DisplayDriver
Added a display mode conversion function to Utils.cpp
Began conversion of BitmapDriver to utilize PixelRenderer class where appropriate


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8855 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-05 00:52:45 +00:00
DarkWyrm
30f5b3138d Converted BGet memory pool manager to a class. Now we have the foundation for sending large objects (BRegion, BShape, etc) to the server
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8836 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-04 00:55:05 +00:00
DarkWyrm
8436893ffd Remove a couple desktop-related files no longer needed
More specific TODO comments so we can use grep to understand in a general sense what still needs done


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8708 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-08-29 15:01:44 +00:00
haydentech
54b32ef066 Fixed crashing bug related to incorrect bounds checking
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8669 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-08-26 20:29:03 +00:00
haydentech
22b5b23866 Initial implementation of CopyBitmap - more work is needed
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8667 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-08-26 18:42:48 +00:00
DarkWyrm
49de2e8b4f server no longer turn into a zombie if closed with an app running
ServerApp now supports workspace activation along with client notification


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8623 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-08-22 22:33:57 +00:00
DarkWyrm
478bbd8507 Cruft removal -- server replies should be SERVER_TRUE if function call was successful and SERVER_FALSE if not
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8621 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-08-22 00:27:15 +00:00
DarkWyrm
3a340a8613 Messaging fixes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8542 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-08-08 22:34:36 +00:00
DarkWyrm
4a10a4f0ea Fixed a quit bug in ViewDriver
Slightly improved ServerScreen::SupportsResolution
Implemented a DPMS hack for ViewDriver and DirectDriver
Moved various supporting classes from DisplayDriver.cpp to DisplaySupport.cpp
Added server-side support for BWindow::SetSizeLimits


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8541 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-08-07 20:30:58 +00:00
haydentech
d0eca0f8aa One of the ServerBitmap constructors was ignoring the flags parameter
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8535 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-08-03 15:25:03 +00:00
haydentech
8af8de70ab Some of the recent improvements Adi made were inadvertantly removed by the BPortLink patch
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8534 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-08-03 15:17:44 +00:00
DarkWyrm
842c3caec8 Minor header tweak
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8521 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-30 15:38:38 +00:00
DarkWyrm
ad56ce66a3 Pahtz's changes to use BPortLink systemwide, with a few minor other changes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8520 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-30 15:16:59 +00:00
Stefano Ceccherini
f7021a391f Fixed a nasty bug
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8482 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-27 07:15:43 +00:00
haydentech
5a97e40589 Some double-buffered drivers cannot Invalidate when the buffer is held
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8453 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-22 15:36:15 +00:00
haydentech
b2af3a1973 Fixed an errant line draw that occurred with titled and floating windows
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8447 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-21 16:52:55 +00:00
haydentech
66950a7925 Quick fix to conform BitmapDirver to the new DisplayDriver function prototypes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8442 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-20 15:31:39 +00:00
haydentech
052e575afa Fix font drawing when using a double-buffered driver
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8441 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-20 15:29:24 +00:00
haydentech
c4eb8432a3 Remove duplicated code
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8440 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-20 15:28:03 +00:00
Adi Oanca
5ff9c0d972 there was a compile error
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8396 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-14 16:56:43 +00:00
Adi Oanca
b0a5df7a0f app_server, sometimes needs to hide some windows without affecting a window's original hidden state. For that I introduced 2 new methods in WinBorder and made Layer::IsHidden() virtual.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8375 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-11 11:08:36 +00:00
Adi Oanca
038d30aae7 Removed locking from Workspace class. Rootlayer should be the only one who uses this class. Also changed Workspace::AddLayerPtr() into AddWinBorder.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8374 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-11 10:01:01 +00:00
Adi Oanca
eac978a987 Cleanp continues. Removed 2 methods from Workspace class because were related to rebuild/redraw stuff. Workspace should only care about corect window placement and order.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8366 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-10 10:54:20 +00:00
Adi Oanca
0732418e3b Cleanup started in Workspace and RootLayer classes. Some 'Invalidat' code moved from Workspace to Desktop class.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8365 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-10 06:28:41 +00:00
Adi Oanca
30d6c7b854 Damaged decorator redrawing with previous CI. Got that repaired now.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8357 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-08 21:12:53 +00:00
Adi Oanca
826375885f Umm, decorator was fully redrawn if another window went over it. This should happen in resizing only. Fixed that now.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8356 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-08 19:15:57 +00:00
Adi Oanca
eb93dd6e36 Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8335 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-06 20:51:16 +00:00
Adi Oanca
16039b760a This is it. Update code is ready. At leat I think so. Testing is next. Uh, didn't thought this could be this easy. :-)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8320 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-05 20:37:13 +00:00
Adi Oanca
eebc640361 Update code start.
I know we are in a feature freeze moment, but I thought about update_code and concluded it is not that hard to
implement. Shoud be ready shortly. IMO, it is very good if this code would be ready for this FF. It would make
the app_server more... tight. :-)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8303 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-05 15:23:29 +00:00
Adi Oanca
cebad2e20f Fixed window selection with the mouse. Works fine only for normal windows. Next: same thing for modal and floating windows.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8254 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-01 20:01:32 +00:00
Adi Oanca
1e367fecba Used the new RebuildAndForceRedraw() method. Just that. Sorry, cannot concentrate this late. :-(
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8227 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-28 21:38:16 +00:00
Adi Oanca
357cfe11c2 added RebuildAndForceRedraw() method
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8226 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-28 21:01:36 +00:00
DarkWyrm
a596e677c7 AppServer.cpp: removed a memory leak from new_decorator
decorators now set appropriate fonts for their context
WinBorder: tweaked some debug output settings
Layer: tweaked some debug output settings
PicturePlayer: added some tentative code and notes for escapements in DrawString case for player
CursorManager: update to resemble OT style
RootLayer: removed testing-purposes-only Draw() function
	Implemented methods to read in workspace data
Workspace: Janitorial work
	Added methods for packing and unpacking settings
	Added some members for holding basic settings
Desktop: Moved workspace data functions to RootLayer
Other files: Janitorial work


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8172 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-26 02:15:48 +00:00
Adi Oanca
a635ede332 Same as before. Some code for window selection/moving with the mouse.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8131 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-22 21:43:24 +00:00
DarkWyrm
91032d1ca0 Disabled some code until I can figure out the changes in FT2's font cache subsys
tem from 2.1.4 to 2.1.8


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8129 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-22 14:43:34 +00:00
Adi Oanca
a68bab127c I'm in the middle of corect window drawing while using the mouse.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8083 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-20 20:02:32 +00:00
Adi Oanca
c233705d66 semaphore related work. ServerWindow has a few methods guarded by a semaphore. Same for WinBorder.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8061 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-19 13:04:50 +00:00
Adi Oanca
8491b62602 Cleanup for ServerWindow object
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8060 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-19 10:23:14 +00:00
Adi Oanca
e26d667afe Fixed window focus state drawing in ServerWindow::Show(). Changing focus with the mouse does not work, yet. Tomorrow, I'll fix that.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8058 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-18 22:27:46 +00:00
Adi Oanca
c7ad7fe18e Some imprudence for me. All decorators got (re)drawn instead of the one in question. Fixed that.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8055 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-18 19:13:06 +00:00
Adi Oanca
54d800ec02 Commented a line because it made app_server crash on window resize. DefaultDecorator needs to be rewriten.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8053 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-18 17:16:41 +00:00
Adi Oanca
ead47553f2 Decorator-resize redrawing fixed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8047 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-18 15:24:36 +00:00
Adi Oanca
560a22494e Windows properly displayed. I mean, both, its border and top_layer are
shown. Some redrawing problems remain while resizing... They will be
fixed soon.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8039 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-18 11:50:17 +00:00
Adi Oanca
0573400f8a Damn vi. I'll use nano next time. Sorry about my previous blank message.
Trying to make windows visible again. :-)) Made decorator until now.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8033 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-17 14:39:21 +00:00
Adi Oanca
d754f1a3d6 *** empty log message ***
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8000 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-16 06:40:26 +00:00
DarkWyrm
a3031ab19b Added cases for Minimize buttons in decorators
Buttons on up-to-date decorators now work properly


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7957 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-14 20:32:21 +00:00
DarkWyrm
4f4af1fe79 Janitorial work -- mostly moving style closer to OT guidelines
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7912 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-11 18:21:57 +00:00
DarkWyrm
8988c68b1d Plugged a couple memory leaks and code fix to WindowBroadcast()
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7908 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-11 14:58:24 +00:00
DarkWyrm
70e337a0b4 Janitorial work and minor ServerWindow tweaks
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7907 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-11 14:47:36 +00:00
DarkWyrm
a64bba1208 Janitorial work, mostly
API tweaks in WinBorder
Removal of some unnecessary TODO comments
Decorators now draw buttons when clicked


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7899 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-11 02:46:48 +00:00
Adi Oanca
885eed5c44 a little cleanup
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7744 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-02 20:44:46 +00:00
haydentech
759fcf143d FontStyle::Name() was returning the path, not the name. It looked like an unfinished cut-n-paste from Path().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7657 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-26 16:41:29 +00:00
haydentech
5c210a480b gcc3 warning and error fixes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7656 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-26 16:38:58 +00:00
shadow303
43404a847e Rename clippReg to clipReg
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
2004-05-20 01:31:28 +00:00
Adi Oanca
e81b5ee3a8 window resizing support
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7605 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-16 19:27:59 +00:00
Adi Oanca
d312bebc4c a little member we need for resizing
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7604 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-16 19:26:28 +00:00
Adi Oanca
31776f9842 resize support
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7603 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-16 19:24:18 +00:00
Adi Oanca
385e94dbf4 modified a little how the _full region is built for the top_layer
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7602 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-16 19:21:51 +00:00
Adi Oanca
37811ae65e little fix for the cursor to be displayed better
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7601 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-16 19:19:45 +00:00
Adi Oanca
766a6dfd11 modified resize methods
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7600 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-16 19:17:34 +00:00
Adi Oanca
56f043ed2d modified Resize methods
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7599 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-16 19:15:36 +00:00
DarkWyrm
bcb8907775 I'm baaaaaack! :P
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7538 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-12 10:55:47 +00:00
DarkWyrm
da08bdd09d Checkin for Caz (without pain, even!) which adds rudimentary DrawBitmap support
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7223 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-16 17:52:31 +00:00
Adi Oanca
0029e79802 added a small but important comment
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7163 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-04 20:32:23 +00:00
Adi Oanca
24cbcac721 added support for moving with the help of the mouse.
added preliminary support for DEcorator buttons


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7162 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-04 20:30:20 +00:00
Adi Oanca
4251c0e465 added a memeber to know the WinBorder wich received the mouse down event
used that memeber to move the window arroud - with the help of the mouse


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7161 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-04 20:28:14 +00:00
Adi Oanca
9baac8ab74 small fix to make a WinBorder unhidden
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7160 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-04 20:26:17 +00:00
Adi Oanca
cf00cb08ee fixed some bugs and workarrounds
added support for resolution change - in fact, fixed it


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7159 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-04 20:24:59 +00:00
Adi Oanca
faf78a3ae0 removed fBackColor member
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7152 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-03 15:09:10 +00:00
Adi Oanca
950e269c8e modified PrintToStream method
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7151 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-03 15:08:09 +00:00
Adi Oanca
009bee6435 nothing important . Really! :-)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7150 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-03 15:06:45 +00:00
Adi Oanca
3350f57dd7 modified the way BView data is received.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7149 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-03 15:05:49 +00:00
Adi Oanca
979f50e101 added a PrintToStream method
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7146 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-03 15:01:10 +00:00
Adi Oanca
51adcc8405 consted a few parameters
modified line functions - made them work


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7145 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-03 15:00:16 +00:00
Adi Oanca
be76d636d4 small fix
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7092 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-28 15:04:01 +00:00
Adi Oanca
1610897948 * rewritten big parts to blend with the new clipping code
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7091 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-28 15:03:34 +00:00
Adi Oanca
82cc45c032 * made the desturctor virtual
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7090 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-28 15:03:15 +00:00
Adi Oanca
cd916e88f6 * little fixes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7089 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-28 15:02:53 +00:00
Adi Oanca
76f9576971 * added a temporaly method for constraining the clipping region.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7088 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-28 15:02:31 +00:00
Adi Oanca
47e76f9bba * added 2 methods:...
* made one virtual


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7087 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-28 15:01:46 +00:00
Adi Oanca
8a725f55d1 * fixes for region rebuiding
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7086 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-28 15:01:27 +00:00
Adi Oanca
7f788bd639 * fixes to the redrawing code
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7085 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-28 15:01:08 +00:00
Adi Oanca
4b97b66984 * added a call to ServerWindow::Init();
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7084 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-28 15:00:48 +00:00
Adi Oanca
c125512504 * lots of fixes mainly to region rebuilding, because WinBorder and is a bit special Layer subclass.
* clarified Layer creating process.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7083 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-28 15:00:31 +00:00
Adi Oanca
293c278ef5 * added 3 methods for more clearty in Layer buiding process, also for easier attribute seting.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7082 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-28 15:00:08 +00:00
Adi Oanca
5e9ce9fe93 * added/implemented void ViewDriver::ConstrainClippingRegion(BRegion *reg) defined by DisplayDriver.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7081 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-28 14:59:11 +00:00
Adi Oanca
e9c79f8def * fixes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7080 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-28 14:58:39 +00:00
Adi Oanca
9599477715 * made RebuildFullREgion virtual
* added some friends... temporaly


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7079 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-28 14:58:19 +00:00
shadow303
f0446088b3 Begin transfering implementations to the new API functions
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6836 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-01 02:21:14 +00:00
Adi Oanca
6cb226fd44 small shnages because of the new redrawing code
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6726 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-24 12:03:51 +00:00
Adi Oanca
296a7f991d completely rewritten!
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
2004-02-24 12:02:47 +00:00
Adi Oanca
6844f6d0eb small changes because of the new redrawing code
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6724 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-24 11:59:11 +00:00
Adi Oanca
91cf2bda4a Modified a few constrctors so this is the actualized version
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6723 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-24 11:58:25 +00:00
Adi Oanca
e0947c82c8 small fixes because of the new redrawing code
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6722 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-24 11:56:43 +00:00
Adi Oanca
01f14b6c8c reduced to a minimum. It's the next on my TODO list to make redrawing code work it also.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6721 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-24 11:56:03 +00:00
Adi Oanca
8fca004965 replaced PortLink with BSession as the default hanlding system in DispatchMessage()
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6720 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-24 11:54:44 +00:00
Adi Oanca
a00a89d9c6 fixed a virtual method to method to return properly
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6719 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-24 11:53:35 +00:00
DarkWyrm
67387a90b7 Removed the crash in ViewDriver when moving the cursor off the bottom edge of the screen
Replaced LayerData component of Decorator with DrawData
Fixed unfocused draw bug in DefaultDecorator::DrawBlendedRect
Added some copying methods to FBBitmap and ServerBitmap
Removed a lot of disabled code from ViewDriver file
Implemented and fixed font functions in DisplayDriver
Updates to the BitmapDriver to the reflect changes in DisplayDriver


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6602 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-15 20:27:26 +00:00
DarkWyrm
9e7c0e5d01 Removed unnecessary methods in ServerScreen and DisplayDriver
Bugfixes - cursor now works under new DisplayDriver cursor management
Currently still searching for a clipping bug in ViewDriver::CopyToBitmap


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6563 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-12 01:25:41 +00:00
DarkWyrm
b7af05771d Added UtilityBitmap class for general-purpose bitmaps in the server
Implemented  blit methods in ViewDriver - doesn't quite work yet :(
Implmemented cursor methods in DisplayDriver - doesn't quite work yet, but wil be fixed later
Color tweak to DefaultDecorator


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6520 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-07 13:50:36 +00:00
DarkWyrm
e56432f3cd More work done on ViewDriver - most stuff implemented, but not yet done.
Same for DisplayDriver
Moved Angle to libappserver for DisplayDriver code


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6478 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-03 00:52:40 +00:00
DarkWyrm
5d0cc8ac2e Implmented a couple more methods
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6386 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-28 02:20:12 +00:00
DarkWyrm
dfd2e47c90 Updated sources to remove Pattern parameter from DisplayDriver function calls
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6384 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-28 02:07:28 +00:00
DarkWyrm
b4fe4d74fe Major overhaul of DisplayDriver API
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6335 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-27 00:39:01 +00:00
DarkWyrm
06d841d5ea Major overhaul of DisplayDriver API - fewer virtual functions and less duplicated code
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
2004-01-27 00:38:14 +00:00
DarkWyrm
da1903328a Updated look so inactive window tabs look right
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6224 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-22 02:23:08 +00:00
DarkWyrm
dbd08f22ac Moved keyboard message handling from AppServer to Desktop class
Moved style to more like OpenTracker in Deskbar class


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6221 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-22 00:32:07 +00:00
DarkWyrm
31b34533a7 Converted numerous printf() calls to STRACE(()) calls
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
2004-01-21 02:58:39 +00:00
DarkWyrm
2120f0b38d Eliminated a crash because of a race condition on server shutdown
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6206 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-21 01:17:12 +00:00
DarkWyrm
dd82cdacbb Fix from Adi to display a window only on the current workspace
Finished converting ServerWindow::DispatchMessage() to PortMessage use
removed a forgotten breakpoint from ServerApp


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6174 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-20 02:02:01 +00:00
DarkWyrm
247a93434e ViewDriver functions won't do anything if not initialized
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
2004-01-19 22:18:37 +00:00
DarkWyrm
43c4c1eead Added header and credits to some files
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
2004-01-17 18:37:57 +00:00
Adi Oanca
0a8120dd1c * fixed some bugs, and improved some things.
* rendered BWindow::RemoveFromSubset operationable
That's it! I seems regular windows NORMAL/FLOATING/MODAL windows are shown when and how they should be.
There are other kind of windows, to be precise B_SYSTEM_LAST and B_SYSTEM_FIRST, with witch I played very little. I'll be back on them 2 weks from now when I hope I'll start codeing again. Till then... happy coding! :-)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6114 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-17 16:33:22 +00:00
Adi Oanca
34168867a4 solved some problems with floating subset windows
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6108 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-16 16:09:36 +00:00
Adi Oanca
fa554b7dd8 Fixed focusing problem
some optimizations to "drawing code"(not the real one) because of more efficient locking.
... other improvements.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6074 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-14 15:55:10 +00:00
DarkWyrm
7d09d0620c Removed a couple of warnings from Accelerant, Screen, and BitmapDrivers
Beginning style changes to resemble OpenTracker guidelines
Added header to some files
Removed temporary code from ViewDriver and re-enabled cursor movement in Desktopmouse message handler


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6069 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-14 00:54:45 +00:00
Adi Oanca
47007fb071 MANY improvements since yesterday!
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
2004-01-14 00:26:15 +00:00
Adi Oanca
79cc4c5ae6 just #include "ServerScreen.h" instead of #include "Screen.h"
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6062 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-13 11:58:41 +00:00
Adi Oanca
ab8297f827 remove
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6061 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-13 11:01:19 +00:00
Adi Oanca
8ee0c850de I put all that was found in Screen.h and Screen.cpp because there is another Screen.h on the system. BScren's one!
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6060 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-13 11:00:22 +00:00
Adi Oanca
037eadad77 new desktop management code
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6059 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-13 01:03:29 +00:00
Adi Oanca
158c46331a new desktop management code
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6057 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-13 00:56:36 +00:00
Adi Oanca
67e7217c89 new desktop management code
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6056 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-13 00:38:42 +00:00
Adi Oanca
6b19651048 new desktop management code
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6053 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-13 00:29:47 +00:00
Adi Oanca
155cec7523 addapted it to use the new desktop management code
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6052 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-13 00:25:54 +00:00
Adi Oanca
d1ae1e49ae modified a little to make the cursor appear.
should be revised later to use internal cursor emulation(software cursor)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6050 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-13 00:23:21 +00:00
DarkWyrm
a0f01f6cba Integrated Adi's new desktop code into the server
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
2004-01-11 22:12:55 +00:00
DarkWyrm
49916ae455 Minor API tweak - RGBColor &color -> const RGBColor &color
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6003 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-10 13:39:22 +00:00
haydentech
1a4e801adc Minor cleanup of comments and duplicate includes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5838 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-30 22:43:46 +00:00
haydentech
bdfe7cf5d2 Minor cleanup of erroneous comments
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5837 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-30 22:41:50 +00:00
mahlzeit
4c20e0e8ad Simplified app_flags.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5728 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-22 17:51:32 +00:00
DarkWyrm
ab21b1ec0c Messaging fixes - removed inappropriate BSession use and converted to PortMessage and PortLink as necessary.
Life sucks when you can't sleep. :(


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5601 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-07 05:40:51 +00:00
shadow303
4106b3dbdc Convert to LayerData independent drawing API
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
2003-12-07 03:22:15 +00:00
DarkWyrm
2d6fb9b82d Added methods for DPMS and device capabilities
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5440 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-22 00:47:01 +00:00
Philippe Houdoin
9842b3ba58 Keep moving from binary resource format to source resource (.rdef) files.
Fix midi_server.rdef file.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5418 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-20 01:40:54 +00:00
Adi Oanca
e9c5b47ef4 changed code for mouse input funtions.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5364 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-15 00:29:14 +00:00
Adi Oanca
5580db514e very small changes: ordered code and liminated error because of the change if Decorator.h
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5363 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-15 00:28:40 +00:00
Adi Oanca
cfc7b758e0 Changed the names for some constants in Decorator.h so... here too
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5362 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-15 00:27:26 +00:00
DarkWyrm
98a70bba4b Converted all BSessions used for replies to PortLinks
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5359 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-14 01:41:04 +00:00
Adi Oanca
7052fe60fa new optinized clipping code
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
2003-11-14 00:15:29 +00:00
DarkWyrm
a7ec3bbbea Added reader class for BSession message streams
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5339 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-12 23:57:14 +00:00
haydentech
2ef7083364 Janitorial work
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5302 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-10 19:50:27 +00:00
shadow303
a8cb43fea1 Reduce redundant code in drivers (we can unvirtualize stuff as speed requires after implementation is complete)
Fix some color handling for 15/16 bit.
Implement HLine functions for BitmapDriver.
I forget what I did to Clipper.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5243 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-03 01:51:50 +00:00
shadow303
922ec7f318 clean up some warnings
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5174 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-27 00:47:01 +00:00
DarkWyrm
d6e461f029 Added system color, system font, and decorator update notification
Added a little server-side code to handle system color updates


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5088 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-19 00:03:06 +00:00
DarkWyrm
7d4ebd1ef0 Implemented some more handler code for different BPicture opcodes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5081 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-18 22:44:44 +00:00
shadow303
a9af2b0df0 Add GetDrawData function
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5060 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-16 22:25:06 +00:00
shadow303
4c4cad9f02 Add clipping wrapper for display drivers.
Fix minor bug with AccelerantDriver opening the stub device


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5039 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-15 00:25:24 +00:00
DarkWyrm
40b7eb39b2 Tweaks to handle the changes in messaging protocol formats
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5014 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-13 23:34:54 +00:00
shadow303
3ed46bec8c Disable screen mode change when not in TEST_MODE
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4985 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-10 20:29:39 +00:00
DarkWyrm
836656bf86 API tweaks
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4984 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-10 02:33:38 +00:00
DarkWyrm
a93fbc5951 Added handler code for AppServer::PollerThread to handle messages to get/set UI colors and decorators
Added a color_which lookup to ColorSet - will be necessary to look up system colors via ui_color()


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4981 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-08 23:18:30 +00:00
DarkWyrm
e735d45a6a Removed a stupid typo bug
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4977 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-08 00:19:24 +00:00
DarkWyrm
68b266bbe6 ColorSet API improvements
AppServer now handles Decorator and System Color messsages - dummy handler code is in place, though


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4952 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-05 21:52:54 +00:00
DarkWyrm
b3d31bdb1a Another LayerData-related crash fix
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4950 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-05 17:51:13 +00:00
DarkWyrm
3e6296ae57 Cruft removal and a tweak to prevent crashes when LayerData is used by things other than the server
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4948 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-05 17:39:12 +00:00
DarkWyrm
5c26d5df06 Removed some dependencies from old pattern-passing method
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4947 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-04 22:12:18 +00:00
DarkWyrm
b02917dae8 BitmapManager sets the _initialized flag to true when allocation is successful
Added a forgotten opcode in DispatchMessage::AS_CREATE_BITMAP
We can now allocate (and use) BBitmaps in applications!


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4946 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-04 21:53:09 +00:00
DarkWyrm
e8f20f30c4 8 and 16-bit color lookups are now done only when needed. Very useful when only working in 32-bit color
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4944 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-04 19:57:54 +00:00
DarkWyrm
e42a5b2650 Added message queuing (sp?) to ServerApp
Removed a memory bug in ServerCursor
Tweaked message-reading code to reflect changes in the messaging classes
BCursors work now!


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4943 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-04 19:10:11 +00:00
DarkWyrm
e90ddf96b4 Numerous messaging fixes to coincide with the recent updates to PortLink, BSession, PortQueue, and PortMessage
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4940 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-04 00:56:43 +00:00
DarkWyrm
041e26d578 ServerApp - conversion of message protocols to using BSession
AppServer - tweaks from moving BSession messaging code to ServerProtocol.h


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4932 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-03 00:41:40 +00:00
DarkWyrm
2dd8f56272 "Borrowed" a few functions from AccelerantDriver for BitmapDriver
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4922 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-02 00:12:08 +00:00
Adi Oanca
153d03aa0b 4 new message handlers
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4824 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-25 17:25:38 +00:00
Adi Oanca
30879229e7 _resize_mode was initialized
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4823 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-25 17:25:14 +00:00
Adi Oanca
cae8519232 added a new member: _resize_mode
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4822 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-25 17:24:42 +00:00
Adi Oanca
6a740855a9 *added handlers for AS_LAYER_(MOVE/RESIZE)TO messages
* added AS_LAYER_GET_COORD handler
* changed some methods to use BMessage class for sending messages to BWindow
* ALL handlers for BView State Functions. They wotk too! :-)))


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4807 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-25 12:31:11 +00:00
Adi Oanca
479547dbeb * added Layer as a friend.
* added a new member: port_id winLooperPort; We'll use it to send flattened BMessages(like _UPDATE_ / B_VIEW_RESIZED(MOVED)) to our BWindow counterpart.
* SendMessageToClient( BMessage ) sends that message BWindow's looper port.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4806 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-25 12:28:08 +00:00
Adi Oanca
58db25dc6c small changes. added a new parameter to ServerWindow's constructor
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4805 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-25 12:27:31 +00:00
Adi Oanca
f593251b36 * added a new member, BPoint _boundsLeftTop. Beside other uses, (DW don't forget!)it will be needed in redraw code.
* _flags is now declared as uint32


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4804 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-25 12:25:38 +00:00
Adi Oanca
d77e0cdb4c added 2 new methods - DoMoveTo and DoResizeTo. They move/resize the frame rectangle of Layer class.
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
2003-09-25 12:25:13 +00:00
DarkWyrm
46ec4904d3 Added Layer functions for mouse transit events and for view cursors
Added app cursor support


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4736 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-17 19:28:31 +00:00
DarkWyrm
3231b95ed8 Un-kludged Decorator::GetFootprint. Much more elegant now. :)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4732 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-17 17:14:22 +00:00
DarkWyrm
ec50f74f8d StrokeLineArray now uses the BView LineArray API internally
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4730 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-17 16:55:06 +00:00
DarkWyrm
af7ed6dda5 Removed a few compiler warnings
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4723 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-17 12:41:33 +00:00
DarkWyrm
2399b2c59a tweaks to get server to build under R5 without using jam
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4716 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-17 00:03:47 +00:00
Adi Oanca
87bcd8f415 * Added a handler for AS_LAYER_SET_FONT_STATE message
* Modified a bit AS_LAYER_CREATE handler 'cause I forgot about AS_LAYER_SET_FONT_STATE and hidden state.
* Added a handler for AS_LAYER_GET_STATE message
* Added a handler for AS_LAYER_DELETE message
* Modified FindLayer() - now it works OK
* added debugging code for AS_LAYER_CREATE handler.
*** Tree structure is in place and working.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4691 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-15 19:14:45 +00:00
Adi Oanca
ffb9ea55f5 * added initialization in contructor to (0.0, 0.0) for _boundsLeftTop member.
* 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
2003-09-15 19:11:52 +00:00
Adi Oanca
4a60209dc7 * added ServerFont::operator=(const ServerFont& font).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4689 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-15 19:09:13 +00:00
Adi Oanca
b6577e4da8 * added a new member, BPoint _boundsLeftTop. Beside other uses, (DW don't forget!)it will be needed in redraw code.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4688 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-15 19:08:44 +00:00
Adi Oanca
260ec753f4 * changed SetFont to acomodate(eng?) with LayerData's 'font' member witch is now allocated on stack.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4687 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-15 19:08:07 +00:00
Adi Oanca
957320d114 * Minor changes due to the fact that LayerData::font member is allocated on stack now...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4686 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-15 19:07:45 +00:00
Ingo Weinhold
7cc4564205 Always put SubIncludes at the very end of a Jamfile.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4628 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-11 21:44:29 +00:00
DarkWyrm
3b7457281b Moved font server header to private app_server headers location - unbroke the build
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4606 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-09 10:26:11 +00:00
DarkWyrm
9670d865c3 Re-fixing the jamfile to allow builds from the current directory
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4605 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-09 10:16:17 +00:00
Adi Oanca
b2a5444427 Moved FontServer.cpp into libappserver.so to avoid a linker error caused by modifications made in LayerData.h
... the line with: fontserver->GetSystemPlain().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4583 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-08 22:20:29 +00:00
Adi Oanca
32a9b6b6e2 debug code looks nicer...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4581 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-08 22:09:10 +00:00
Adi Oanca
3ecfa8e102 debug code looks nicer...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4580 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-08 21:48:35 +00:00
Adi Oanca
1f0ca0978a debug code looks nicer... + others, use diff!!
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4579 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-08 21:45:26 +00:00
Adi Oanca
92e26ba96d new code. use diff to see differences
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4577 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-08 21:18:39 +00:00
Adi Oanca
dacd6a469b simplified debug code
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4575 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-08 21:08:27 +00:00
DarkWyrm
23d3981b3b Size is now initialized before use in method Play
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4531 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-07 22:16:26 +00:00
DarkWyrm
c7c8500780 Tweak to fix building from the current directory
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4518 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-06 21:13:38 +00:00
DarkWyrm
d7f34b0231 Minor tweaks and improvements to the DefaultDecorator
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
2003-09-06 21:09:11 +00:00
Adi Oanca
67f4247f6c Now, a window properly displays and moves across screen. Yupyyy! That was possible before... but now the new window is drawn arround the rect passed by BWindow. I also made some changes in update mechanim of Winborder/Layer/RootLayer.
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
2003-09-03 21:43:09 +00:00
Adi Oanca
7641924e66 Modified some classes to succesfully comunicate with BWindow/BView. the default decorator has been impoved. From now borders are build ARROUND the window area.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4432 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-31 17:38:34 +00:00
shadow303
17e6de7a37 gcc 3 fixes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4227 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-04 00:46:53 +00:00