Stephan Aßmus
|
924b7ab22c
|
the clipping BRegion is now always allocated, added shortcut for determining if there is a valid clipping
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12555 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-03 21:39:03 +00:00 |
|
Stephan Aßmus
|
1596a167c0
|
work around for layers not being moved that have not yet been added to the tree. See WinBorder::MoveTo for the explaination. The same problem should be at other places and most likely for normal views as well. This fixes BWindow::MoveXX() when it is not yet Show()n
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12500 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-28 23:56:40 +00:00 |
|
Stephan Aßmus
|
879fd19be5
|
this has become playground...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12499 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-28 23:20:18 +00:00 |
|
Stephan Aßmus
|
9715a3e1bf
|
fixed BWindow::MoveXX(), BWindow::ResizeXX() and BView::ConvertToScreen()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12491 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-28 12:31:25 +00:00 |
|
Stephan Aßmus
|
8f6b562ad5
|
fixed border style not applied in constructor, changed drawing to use line arrays
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12490 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-28 12:29:47 +00:00 |
|
Stephan Aßmus
|
609b465638
|
fixed BView::MoveTo() and BView::ResizeTo(), fixed typo
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12487 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-28 09:44:29 +00:00 |
|
Stephan Aßmus
|
3505574164
|
Added some TODO comments in Window.cpp, improved coordinate conversion in View.cpp. I'm not sure if this really works correctly, I need to write more tests. The scrolling test actually does more of what it is supposed to. At least the scrolling properly follows the mouse now. Missing are the movement of child views, the rebuilding of clipping, and I think that the scrolling needs to be synced to update requests having been fullfilled, or else some parts of the View will be CopyBits()ed which have not been drawn after having been scrolled into view by previous calls to ScrollBy(). Any insights appreciated.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12485 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-27 23:27:37 +00:00 |
|
Stephan Aßmus
|
4828a7251f
|
I'm not 100% sure, but I think I fixed a confusion in sending the current view position and size to the client. Note that BView::originX and BView::originY are poorly named, because they are not the local coordinate system origin, but the offset within the parent at which the view is located.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12484 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-27 23:20:29 +00:00 |
|
Stephan Aßmus
|
50581a7c0a
|
fixed a bug with drawing ellipses and invalidating the correct area for stroking paths, taking the stroke width into account
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12483 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-27 23:17:39 +00:00 |
|
Stephan Aßmus
|
dd55678524
|
test app for scrolling, link for running on R5 to see how it should behave
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12482 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-27 17:30:18 +00:00 |
|
Stephan Aßmus
|
db7226db9d
|
work in progress to get scrolling working, so Adi can have a look, no changes to existing functionality, cleanup in Layer.cpp
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12481 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-27 17:26:57 +00:00 |
|
Stephan Aßmus
|
28930a1240
|
small changes and fixes here and there
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12480 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-27 17:25:29 +00:00 |
|
Stephan Aßmus
|
93a2cfd43c
|
Correct implementation of BView::CopyBits() in ServerWindow, implementation of CopyRegion in DisplayDriverPainter that sorts the rects topologically depending on direction and does the copy in place, obtaining a speedup of about 250%. TODO: extract the sorting algorithm so that it can be reused for the hardware accelerated version later.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12468 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-26 13:50:34 +00:00 |
|
Stephan Aßmus
|
3934e7037e
|
forgot another important detail...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12451 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-20 10:36:05 +00:00 |
|
Stephan Aßmus
|
f8bbbd8332
|
it helps reading my own commit messages
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12450 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-20 10:12:54 +00:00 |
|
Stephan Aßmus
|
ded5874ea2
|
Implemented changes necessary for single buffered mode, it is turned off for now, because the soft cursor is currently not being taken care of. We will still use double buffering if the screen color space is not 32 bits, too.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12449 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-20 09:27:15 +00:00 |
|
Stephan Aßmus
|
0999749164
|
experimented with BView::CopyBits(), found out how it should work, but didn't do the changes yet for a correct implementation
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12444 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-19 18:55:46 +00:00 |
|
Stephan Aßmus
|
e742e3e106
|
refactoring and cleanup in LayerData and friends, it shows what I mean by "forced code paths" for example in coupled font size and view scale, added a couple TODOs, disabled decoupled frame buffer transfers, it is buggy and deadlocks for some reason...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12441 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-19 00:42:42 +00:00 |
|
Stephan Aßmus
|
387242437d
|
moved more old stuff which isn't used anymore
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12439 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-18 19:16:11 +00:00 |
|
Stephan Aßmus
|
3dea4bb659
|
cleanup the defines, move old DisplayDriver implementations out because they are currently unused and won't build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12438 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-18 18:48:19 +00:00 |
|
Stephan Aßmus
|
74b3612ac3
|
refactoring, speedup by decoupling back to front transferes from drawing and usage of special memcpy routine, minor speedups in Painter
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12437 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-18 16:09:43 +00:00 |
|
Stephan Aßmus
|
af1a2a015b
|
draw a check box, too
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12423 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 17:46:37 +00:00 |
|
Stephan Aßmus
|
a4365bfe01
|
support drawing invalid rects
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12422 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 17:45:10 +00:00 |
|
Stephan Aßmus
|
961efda06b
|
workarround for bug in WonderBrush drop shadow filter... how lame is that...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12421 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 17:44:13 +00:00 |
|
Stephan Aßmus
|
a415a09a32
|
Adi told me a quick fix to get BView::Invalidate() working, it doesn't work correctly yet (invalidates child views as well), but it is a start.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12420 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 16:03:16 +00:00 |
|
Stephan Aßmus
|
8877eb5444
|
sorry
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12419 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 15:32:21 +00:00 |
|
Stephan Aßmus
|
1e1b1675de
|
really implement BitsLength() inline, I have no idea why it compiled for me...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12418 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 15:31:57 +00:00 |
|
Stephan Aßmus
|
5cf27f9b8d
|
fix bug with internal AGG renderer color not being updated when a special solid drawing mode is used
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12417 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 15:22:20 +00:00 |
|
Stephan Aßmus
|
99d36ad1d1
|
remove support for line breaks
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12416 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 15:21:36 +00:00 |
|
Stephan Aßmus
|
babce6c921
|
some clean up and reuse of member variables for more efficiency
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12415 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 12:41:32 +00:00 |
|
Stephan Aßmus
|
3809998c83
|
I'm not sure this is needed, because inherited DrawingModes don't have any data and do nothing in their constructor, but I'll rather be on the safe side
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12414 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 12:27:34 +00:00 |
|
Stephan Aßmus
|
00802b496b
|
even more convenience functions
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12413 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 12:26:10 +00:00 |
|
Stephan Aßmus
|
0c926a191f
|
reuse DrawingMode instances
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12412 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 12:25:25 +00:00 |
|
Stephan Aßmus
|
18f3859aed
|
cosmetical change
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12411 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 11:53:22 +00:00 |
|
Stephan Aßmus
|
a3fa31559c
|
fixed DrawString problem, there can only be one way to set the pattern, MiniTerminal works with my latest changes, and DrawString should be more efficient, because a special pattern-ignorant drawing mode class can be used
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12410 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 11:52:22 +00:00 |
|
Stephan Aßmus
|
2b9de7c55a
|
whoops, I broke MiniTerminal, temporary fix until I find the real problem.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12409 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 10:30:18 +00:00 |
|
Stephan Aßmus
|
4da1508aa9
|
added convenience functions to PatternHandler and refactored the setting of the DrawingMode in Painter
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12408 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 10:20:53 +00:00 |
|
Stephan Aßmus
|
3d16cf4bce
|
Painter drawing functions now return the BRect enclosing all pixels that have changed, use this for invalidating the correct area in the backbuffer
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12407 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 09:55:15 +00:00 |
|
Stephan Aßmus
|
94176e0118
|
fixed typo
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12406 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 09:29:02 +00:00 |
|
Stephan Aßmus
|
2c4812801c
|
We're now a fun little drawing app
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12405 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 09:26:38 +00:00 |
|
Stephan Aßmus
|
8efa2a5dbc
|
fixed one moree clipping bug with StrokeLine
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12404 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 09:01:07 +00:00 |
|
Stephan Aßmus
|
5e33f6e551
|
pattern is not passed to the drawing functions anymore, it is expected to be set in SetDrawData
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12403 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 08:53:28 +00:00 |
|
Stephan Aßmus
|
026470a78c
|
no more fOrigin and fScale in Painter, everything is now expected in absolute (screen) coordinates
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12402 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 08:37:52 +00:00 |
|
Stephan Aßmus
|
87e0d62446
|
define the use of the new BRegion AGG renderer
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12401 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 08:17:18 +00:00 |
|
Stephan Aßmus
|
17360617d2
|
fixed a really lame bug in the StrokeLine call that caused all these problems with line drawing and or invalidation afterwards, avoid transforming the clipping region into another format used by AGG by using a special BRegion based renderer
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12400 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 08:15:04 +00:00 |
|
Stephan Aßmus
|
519c55739f
|
an agg renderer that uses a (reference to a) BRegion for storing clipping information, this avoids transforming the clipping from Painter to the agg world
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12399 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 08:12:29 +00:00 |
|
Stephan Aßmus
|
8770be761d
|
convert the invalid rect to the top layer coords, Adi, an update message is only sent when a layer is the top layer in Layer::RequestDraw, I don't know how to fix this, but it would be nice to have BView::Invalidate working.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12398 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 00:31:39 +00:00 |
|
Stephan Aßmus
|
6359ecc258
|
just a temporary thing... I couldn't resist
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12391 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-14 00:24:42 +00:00 |
|
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 |
|
Stephan Aßmus
|
1f9c8f7df0
|
I must compile before I commit. I must compile before I commit. I must compile before I commit...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12376 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-13 19:38:25 +00:00 |
|
Stephan Aßmus
|
4c90b41029
|
If you don't declare the destructor virtual in the base class, you will leak memory and the destructor of an inherited class might not be called at all. Removed unnecessary comments. Enhanced readability, because I felt like it...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12375 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-13 19:31:24 +00:00 |
|
Stephan Aßmus
|
c9ceeec23c
|
Reverted some changes by Adi, because the way it works now is more helpful in finding bugs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12348 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-12 13:16:58 +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
|
8a92263232
|
I _think_ the global system default fonts were never set. I added that to the _init_interface_kit_ function, and it fixes the system fonts under R5. It might have looked like it worked on Haiku before, but I think the be_fixed_font was just the first font found by the scanner in either Haiku and BeOS, while on Haiku, this was Courier just by chance. If this is not the right place to call _init_global_fonts, please tell me or just fix it. I tested under Haiku and BeOS and it looks like it works...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12346 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-12 13:02:20 +00:00 |
|
Stephan Aßmus
|
643d10bb64
|
Added a big TODO comment, StrokeLine takes now non-const DrawData.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12341 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-12 08:28:25 +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 |
|
Stephan Aßmus
|
30f5afc8a9
|
I'm keeping the version which can be used as a BView replacement here. The API for the one used in app_server will change for it to be come more efficient.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12236 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-04 17:47:41 +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 |
|
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 |
|
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 |
|
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 |
|
Stephan Aßmus
|
e18f9c5e67
|
with the optimization for solid horizontal and vertical one pixel wide lines, and for solid rectangles, the performs gap between Painter and original BView closes, with BView being 0.12 times faster drawing lines and 1.4 times faster drawing rectangles... into a BBitmap
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12169 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-03-30 22:05:22 +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 |
|
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 |
|
Stephan Aßmus
|
0cabce17c3
|
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@12145 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-03-29 22:58:09 +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 |
|
Stephan Aßmus
|
127b4b0a4b
|
moved more of the old stuff from DisplayDriver into DisplayDriverImpl
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12142 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-03-29 22:22:44 +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
|
e33b8950a0
|
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@12139 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-03-29 22:00:48 +00:00 |
|
Stephan Aßmus
|
a91f954cd8
|
this does not belong here
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12138 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-03-29 22:00: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
|
7ad3536bb5
|
remove some views, the more we use, the more problems...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12136 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-03-29 21:27:35 +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 |
|
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 |
|
Stephan Aßmus
|
0985210969
|
added this very useful compare function
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12122 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-03-29 16:30:46 +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 |
|
Stephan Aßmus
|
74516f2ac3
|
added some functions with optimized implementation
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12112 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-03-29 01:40:38 +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
|
31f3fbc45c
|
moved original cursor stuff into DisplayDriverImpl, now DisplayDriver is pretty much all abstract
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12106 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-03-28 18:03:04 +00:00 |
|