Stephan Aßmus
|
38c5a7b7fa
|
Implemented StringWidth in ServerFont, updated ServerApp to use it, and removed a -1 from TextView in the char location calculation, which I didn't understand and without which the cursor location and related stuff now finally work.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12744 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-20 17:36:55 +00:00 |
|
Stephan Aßmus
|
9962b67e5f
|
DisplayDriver::DrawBitmap() takes no more region, the clipping is expected to be already set, as with all other drawing functions. Moved bitmap drawing message dispatching in the drawing messages area, where the correct clipping is set too. Moved cases for messages that don't need clipping applied, ie which don't draw anything, into the normal dispatch function. This means SetHighColor() and so on will no longer rebuild the clipping in Painter. Would be interesting to know how much performance this had cost...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12741 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-20 00:09:59 +00:00 |
|
Stephan Aßmus
|
746d7f54e5
|
better visualization and more comfortable editing of the Bitmap frame
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12740 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-20 00:04:38 +00:00 |
|
Stephan Aßmus
|
0fa7031a26
|
A test for drawing bitmaps. Surprisingly, it worked out of the box. Though the clipping inside the view works, we segfault when moving the window outside the frame buffer bounds so that the bitmap is drawn outside the frame buffer. Should be an easy fix though...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12738 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-19 20:54:05 +00:00 |
|
Stephan Aßmus
|
9f602781bf
|
Added a check for single buffered mode when reporting available HW acceleration, because it clearly won't work in double buffered mode.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12737 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-19 17:39:58 +00:00 |
|
Stephan Aßmus
|
1fd87770e9
|
added scrolling with the right mouse button
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12728 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-18 23:42:58 +00:00 |
|
Stephan Aßmus
|
c7694b4ac7
|
Make the dot a dynamic size and improve the rendering for anti-aliasing under Haiku. Confirmed to look good with different font sizes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12711 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-18 12:18:11 +00:00 |
|
Stephan Aßmus
|
3eaf632305
|
improve smoothnes of arcs rendering in Painter, fix a warning
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12710 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-18 12:16:15 +00:00 |
|
Stephan Aßmus
|
e803c97c34
|
pen size text control is now enabled in the correct situations
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12704 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-18 00:51:15 +00:00 |
|
Stephan Aßmus
|
987f7a0a18
|
Updated Painter to produce the exact same results for stroked round rects and ellipses. R5 is kind of strange... I didn't reproduce some obvious R5 round rect defects though. Added a remark in ServerScreen about deleting the DisplayDriver, I left it commented, because the obos_registrar is not quitting when the app_server is closing, this should be fixed first.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12703 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-18 00:22:49 +00:00 |
|
Stephan Aßmus
|
78c1c29baf
|
Playground is now a little drawing app. Fully functional under Haiku, but with some strange defects in arc calculation within AGG.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12702 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-18 00:15:58 +00:00 |
|
Stephan Aßmus
|
82450360bb
|
updated build for playground
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12698 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-17 10:22:31 +00:00 |
|
Stephan Aßmus
|
6cb79662a5
|
renamed windows to playground
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12697 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-17 10:21:21 +00:00 |
|
Stephan Aßmus
|
53bb64e469
|
The current playground. Eventually, this will transform into the demo program.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12696 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-17 10:11:21 +00:00 |
|
Stephan Aßmus
|
0b6fe6d3a9
|
Reverted my change for the INFORM define.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12695 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-17 08:50:53 +00:00 |
|
Stephan Aßmus
|
fef11f270b
|
The registrar was always in debug mode, no matter what was defined.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12690 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-16 17:49:19 +00:00 |
|
Stephan Aßmus
|
ad6b480400
|
Work in Progress. The server keeps the client window up to date on layer movement/resizing. This fixes quite a few problems and brings support for FrameMoved and Resized hooks. But implementing it this way has its own set of problem, most importantly: When a BView calles Window()->CurrentMessage() in its FrameMoved/Resized hooks, it will see something very different from what it would see in R5. This needs to be fixed, but I have not had a good idea how to do this other than faking the current message in BWindow, which I didn't look into.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12689 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-16 15:39:58 +00:00 |
|
Stephan Aßmus
|
a1c5fb3432
|
Added a note in GetEscapements
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12688 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-16 15:02:20 +00:00 |
|
Stephan Aßmus
|
67f6c84d16
|
since we depend on FrameResized() to be called, we should make sure that our flags contain B_FRAME_EVENTS.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12687 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-16 15:01:47 +00:00 |
|
Stephan Aßmus
|
5f50ffd65c
|
The real fix for taking anti-aliasing into account, though what my previous commit said was true as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12686 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-16 13:28:59 +00:00 |
|
Stephan Aßmus
|
6d8d6cad9d
|
Work in progress to improve BTextView and BTextControl. I don't know what _BTextInput_::AlignTextRect() was thought to do. Some of the fixes are Haiku specific and we need to make sure that we don't need them later on (flushing drawing commands).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12685 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-16 12:02:23 +00:00 |
|
Stephan Aßmus
|
3c2fddee4e
|
cosmetic
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12684 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-16 12:00:15 +00:00 |
|
Stephan Aßmus
|
d557af5b96
|
Fixes to my fixes of BView::MakeFocus(), the previous focus BView needs to be unfocused of course so the derived classes implementation gets called. Simplified BWindow::setFocus(). BView calls FrameResized() and FrameMoved() if it has no parent, I don't know how R5 handles it, but I added a TODO...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12683 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-16 11:59:42 +00:00 |
|
Stephan Aßmus
|
dcf0c6ebd6
|
The anti-aliasing in Haiku requires the same carefulness with B_OP_COPY for line drawing as text drawing does in R5
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12682 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-16 11:57:13 +00:00 |
|
Stephan Aßmus
|
1f738c5b4e
|
Used other font metrics members in the GetEscapement implementation in order to support white spaces. As suggested by DarkWyrm. It seems to work better now, but I realised that DisplayDriverPainter::StringWidth() is broken in the same way. Will be fixed next.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12681 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-16 11:03:28 +00:00 |
|
Stephan Aßmus
|
92acca78db
|
Finally nailed a graphics bug I was looking for for quite some time. The only one I'm still seeing is with text. Sometimes the last line of text is not drawn.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12680 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-16 11:00:50 +00:00 |
|
Stephan Aßmus
|
afd1024aef
|
fixed build, thanks to [Beta] for the patches.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12672 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-15 14:11:48 +00:00 |
|
Stephan Aßmus
|
85e7619148
|
added syncing to HW acceleration, so that nothing gets drawn by the CPU before the HW commands have been executed. Works here with Radeon. Removed a debugger call from app_server when the mouse position changed in UP/DOWN events compared to the last MOVED event. replaced it with an fprintf and updated the on-screen mouse position. IMHO, all debugger calls should be replaced with fprintf when compiling for Haiku.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12670 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-15 11:59:14 +00:00 |
|
Stephan Aßmus
|
151ebb14dd
|
just a little cleanup, made PNG screenshots work
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12665 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-15 00:22:55 +00:00 |
|
Stephan Aßmus
|
1db49f8a7a
|
added a function to count the bytes in a string if the number of UTF8 chars is already known
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12661 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-13 17:30:59 +00:00 |
|
Stephan Aßmus
|
7a70a2d6d6
|
This fixes the child text view re-layout, I didn't test on R5, but my changes make sense to me and are much simpler than what was there before. The BTextControl works now on Haiku, with some problems in the redraw code, that I'm pretty sure are related to our app_server.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12648 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-12 16:32:03 +00:00 |
|
Stephan Aßmus
|
55354b0f60
|
This change makes libopenbeos.so update in the home folder when it was rebuild for some reason.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12647 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-12 16:29:21 +00:00 |
|
Stephan Aßmus
|
9bdb0522c1
|
Implemented BFont::GetEscapments() float version. It is pretty rough yet, but appears to handle UTF8 correctly. The optional escapement_delta is currently ignored. I didn't touch other functionality too much, until I know more about it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12645 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-12 15:09:30 +00:00 |
|
Stephan Aßmus
|
2309ba4c1f
|
my current playground
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12644 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-12 15:04:11 +00:00 |
|
Stephan Aßmus
|
b3d3da708d
|
more cleanup, fixed a bug in AS_GET_ESCAPEMENTS_AS_FLOATS that caused a lockup. DarkWyrm - I'm looking at you. :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12640 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-12 10:31:48 +00:00 |
|
Stephan Aßmus
|
8b0aee9f12
|
MiniTerminal can redraw itself.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12630 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-11 10:26:35 +00:00 |
|
Stephan Aßmus
|
3c6c2f8adb
|
Found the problem in my hardware acceleration code (pretty lame bug...), now we have hardware accelerated single buffer mode (still with a software cursor) under Haiku, and it feels quite nice already. For me, this is the right direction to go. That being said, I still have no clue how the sync_token should work, so if someone can point me to some documentation about accelerants, particularly the cursor related stuff now, I'd be grateful!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12623 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-10 12:52:13 +00:00 |
|
Stephan Aßmus
|
1f112d2ae0
|
removed forgotten printf
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12622 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-10 12:11:27 +00:00 |
|
Stephan Aßmus
|
a13cbaabe5
|
fixed grammar
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12621 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-10 11:35:09 +00:00 |
|
Stephan Aßmus
|
f6f44f5538
|
incorporated fix from AGG mailing list, the problem only showed on Sun hardware though...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12620 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-10 11:34:26 +00:00 |
|
Stephan Aßmus
|
587d699c28
|
It seemed to me that the MakeFocus() implementation was overly complicated and even incorrect (cyclic) if the view in question already had focus.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12619 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-10 11:33:14 +00:00 |
|
Stephan Aßmus
|
5b5e713f82
|
Skip synchronous mouse polling if the window has B_ASYNCHRONOUS_CONTROLS in its flags. Added a TODO comment
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12618 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-10 11:31:44 +00:00 |
|
Stephan Aßmus
|
f571c4aee6
|
fixed typo
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12616 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-10 11:30:17 +00:00 |
|
Stephan Aßmus
|
65d5fe56f6
|
found some obsolete stuff when looking through code
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12615 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-10 11:28:21 +00:00 |
|
Stephan Aßmus
|
90d6295906
|
Ingo spotted this when we tried to make Haiku boot on my machine some time ago.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12614 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-10 11:27:01 +00:00 |
|
Stephan Aßmus
|
fbf48e6437
|
Enabled HW acceleration for CopyRegion(). Tested on Haiku and it works. I also implemented FillRegion and InvertRegion. But using different acceleration hooks after one another freezes Haiku, app_server, the accelerant or whatever. I have no clue about accelerants, so if a knowledgable someone would have a look at AccelerantHWInterface.cpp, that'd be great. The software cursor stuff has a cosmetical bug with regards to CopyRegion() too, I don't understand it yet. I also tried to improve StringWidth() and DrawString() preformance. I confirmed that the glyph cache is actually used, but AGGTextRenderer::RenderString() is a dog.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12573 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-04 23:48:19 +00:00 |
|
Stephan Aßmus
|
a3b4fd6b87
|
update the playground to my local changes, the textview test isintegrated with the build now
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12566 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-04 00:38:14 +00:00 |
|
Stephan Aßmus
|
fc72699071
|
added some safety checks, cosmetic changes - please note that it is safe to call delete with a NULL pointer, unlike free(), so please don't clutter the code
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12564 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-03 21:54:44 +00:00 |
|
Stephan Aßmus
|
25ad8b2c74
|
replaced direct calling of Draw() with Invalidate() where appropriate
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12563 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-03 21:51:29 +00:00 |
|
Stephan Aßmus
|
dd3b1653a0
|
rearranged some functions, removed unused ones
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12562 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-03 21:50:14 +00:00 |
|
Stephan Aßmus
|
d3194176a3
|
added support for software cursor needed for single buffered mode
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12561 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-03 21:48:22 +00:00 |
|
Stephan Aßmus
|
9c796f60c2
|
rearranged some functions, removed unused ones
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12560 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-03 21:47:08 +00:00 |
|
Stephan Aßmus
|
b060f5e1eb
|
more correct implementation of B_OP_COPY, in that it blends against the current low color (as seen in text rendering on BeOS), of course this extends to anti-aliased lines on Haiku
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12559 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-03 21:45:16 +00:00 |
|
Stephan Aßmus
|
24bc7597eb
|
cosmetic
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12558 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-03 21:43:51 +00:00 |
|
Stephan Aßmus
|
265db80516
|
added a timeout for sending messages down to the client, it keeps app_server from hanging, though of course it doesn't fix the real problem, I have not had time to investigate the messaging, but this work around shows that the hang ups that I was seeing indeed happen in the messaging code
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12557 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-03 21:42:37 +00:00 |
|
Stephan Aßmus
|
48c0335055
|
added a small safety check
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12556 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-05-03 21:40:29 +00:00 |
|
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 |
|