Axel Dörfler
fe9bc5ae27
Added sqrt() and sqrtf() assembly versions.
...
Still they are not yet really used.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12731 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-19 14:13:22 +00:00
Axel Dörfler
d6fad1d006
Changes due to Adi's insight:
...
- there can only be one _UPDATE_ message at a time in the queue so we
can stop searching after we hit the first one
- mouse coordinates are always send in screen coordinates (unlike R5,
which means this is a compatibility problem), so we need to convert
them even for the current view.
Apps should now work with the old synchronous controls method (even
though their drawing updates look clumsy and are slow compared to
asynchronous controls for whatever reason).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12730 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-19 14:12:02 +00:00
Andrew Bachmann
84987c7ad5
it is now
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12729 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-19 00:01:56 +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
Axel Dörfler
62f9753de5
Added public domain versions of sin() and cos() (taken from glibc).
...
Not yet used, though - we probably need to rearrange the source files a bit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12727 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 22:19:35 +00:00
Andrew Bachmann
f789e6b332
all tests now passing, print table entries only in case of failures
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12726 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 21:41:22 +00:00
Andrew Bachmann
42b25a64ad
for libroot's trig functions we need PI2 = 2*pi, so undef the math definitions. this affects only this private header (trig.h) and the files that include it from libroot (sincos.c, tan.c). fixes sin/cos/tan problems.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12725 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 21:39:36 +00:00
Andrew Bachmann
00b424f83a
test more values, add sin2+cos2=1 check
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12724 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 21:12:16 +00:00
Axel Dörfler
bcd8a1fad9
Converted Window.cpp to our coding style guide and (unfortunately) fixed a
...
myriad of small bugs here and there, as well as some very odd coding techniques:
- the "Minimize" property was not handled
- the "Minimize" property was not settable
- the property/scripting stuff was horrible, anyway
- there are more and better error codes than B_ERROR (could someone tell the
app_server guys? :))
- added some ToDo items here and there
- and much more I don't remember
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12723 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 20:53:21 +00:00
Adi Oanca
fd5fe00cb1
Got scrolling to work properly
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12722 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 20:47:13 +00:00
Andrew Bachmann
ba2286a9a9
add test for drem, expand testing for and supress table output for copysign, drem
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12721 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 20:45:02 +00:00
Andrew Bachmann
dfdc5e411e
use "national" math (fixes copysign/drem)
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12720 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 20:43:52 +00:00
Andrew Bachmann
a3344504d0
add copysign test, formatting changes
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12719 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 19:59:38 +00:00
Andrew Bachmann
5c8563d142
add some math tests
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12718 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 19:38:10 +00:00
Adi Oanca
e3b75692e9
implemented ScrollBy
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12717 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 17:17:06 +00:00
Axel Dörfler
3405fff2a9
Implemented private function BWindow::DequeueAll() which reads all pending
...
messages from the port.
BView::GetMouse() now calls this function if it was called from the window's
thread and thus blocking the message loop.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12716 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 16:54:56 +00:00
Axel Dörfler
25b0ec461d
Now, GetMouse() processes and removes all _UPDATE_ messages, not
...
just those before the first mouse message.
This should be more correct and look better.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12715 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 15:47:49 +00:00
Axel Dörfler
c66f958bb6
Corrected BView::GetMouse(), untested though:
...
- it returned on _UPDATE_ messages without a mouse position
- it no longer calls DispatchMessage() for everything anymore,
however, it will still call BWindow::DispatchMessage() directly
for _UPDATE_ messages
- it didn't care for B_MOUSE_DOWN messages
- it didn't unlock the queue in case it found a message.
(this message actually reflects the differences to r12683 of this
file, but the newer one r12705 was even more broken, but in other
ways)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12714 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 15:40:29 +00:00
Axel Dörfler
c1fc0493cb
Added missing wctype.h header - R5 does not include this header, but its
...
libroot.so exports the functions declared therein.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12713 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 15:02:09 +00:00
Jérôme Duval
6005071a1c
Patch from John [Beta]
Drinkwater
...
Fix for 3 misbehaviors compared to R5
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12712 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 13:00:16 +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
Stefano Ceccherini
91b84c7729
Some initial code for async mouse tracking. Just playing around actually.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12709 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 10:45:36 +00:00
DarkWyrm
d73474eee9
Removed an infinite recursion bug in StrokePolygon
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12708 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 10:01:52 +00:00
DarkWyrm
585fe26c42
Added OutlineListView to build and fixed an include problem
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12707 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 09:24:59 +00:00
DarkWyrm
2763f978ce
Small tweak to make window IDs good when running as an R5 Terminal replacement
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12706 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 08:22:39 +00:00
Stefano Ceccherini
898289a3f1
Improved a bit BView::GetMouse(). Added more ToDOs
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12705 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 07:02:25 +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
Adi Oanca
4a95e83357
Implemented some support for moving and reziving Layers. It works too. :-)
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12701 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-17 17:24:50 +00:00
Stefano Ceccherini
e3c6cec42e
Fixed a bad typo
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12700 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-17 15:53:17 +00:00
Stefano Ceccherini
335b47697c
Added a small test for GetMouse().
...
Looks like that, when called with "true" as third parameter,
it "eats" all the input messages like B_MOUSE_UP/B_MOUSE_MOVED. That means our implementation isn't correct.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12699 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-17 13:47:30 +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
Axel Dörfler
62d6961672
Renamed vm.c to vm.cpp and made all the changes to let it compile without
...
errors. Also made the VM headers C++ safe.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12694 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-16 23:17:45 +00:00
Axel Dörfler
8f8d46a3ff
vm_put_area() now gives feedback wether it deleted the area or not (it
...
will return true in the former case).
vm_delete_areas() is now using this information to print out a warning
in this case (so that a missing vm_put_area() can now be found easier).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12693 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-16 22:37:34 +00:00
Axel Dörfler
4393552b4d
The heap is now located at 384 MB, and creates a reserved range that spans over the
...
following 1152 MB - that area only guarantees that the heap can grow this much before
the application need the memory for something else. And even then, the heap range
is reused from top-to-bottom, allowing for maximum heap usage. Of course, if the
memory after the heap range is not claimed yet, it can still be claimed by the heap,
too. Added new syscall to create the reserved range.
Fixed a bug in vm_delete_areas(): when it removed reserved areas, the area list
could get messed up.
Fixed a bug in resize_area(): resized areas could never be deleted (missing vm_put_area())!
resize_area() now supports reserved regions (but not perfectly yet, see ToDo items).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12692 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-16 22:15:13 +00:00
Adi Oanca
4bdd131ac5
my test app for new clipping code
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12691 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-16 18:31:01 +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