Stephan Aßmus
4f34cedfba
also contains code and ideas from Stefano
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14737 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-07 01:33:09 +00:00
Stephan Aßmus
5083a8d56d
stunning improvements to drawing, completely removed flickering, only minor visual problems remain, maybe needs testing with regard to targeted views being removed or the scrollbar being removed etc
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14736 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-07 01:26:13 +00:00
Stephan Aßmus
0118ad76e1
* Painter uses the line_cap and join_mode settings of DrawState
...
* Painter implements DrawShape for stroking and filling BShape data
* Painter uses clipping to avoid problems with huge coordinates, the R5 app_server can be crashed by this.
-> this should be added to more places as well like text rendering
* DrawingEngine uses the Painter to draw BShape data
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14735 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-07 01:23:40 +00:00
Stephan Aßmus
b5f439b668
seems like the BShape implementation was never tested, this update brings it into working condition, but the code could use more refactoring... duplication all over the place
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14734 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-07 01:19:36 +00:00
Stephan Aßmus
b574c74121
opList is uint32
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14733 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-07 01:17:40 +00:00
Stephan Aßmus
c325acedde
just a bit of clean up and added const where appropriate
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14732 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-07 01:16:50 +00:00
Stephan Aßmus
7dd038f405
calling _ResizeBy with zero offset doesn't do anything
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14731 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-07 01:16:12 +00:00
Stephan Aßmus
19ae7ecce0
sorry, forgotten in previous commit
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14730 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-07 01:14:47 +00:00
Stephan Aßmus
a38aedd980
no longer needed, moved to painter test folder
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14729 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-07 01:13:12 +00:00
Stephan Aßmus
f9129d56a7
updated license header
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14728 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-07 01:11:58 +00:00
Stephan Aßmus
c00fc4e31a
default to B_MITER_JOIN too
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14727 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-07 01:11:02 +00:00
Stephan Aßmus
72b26b5956
* line join defaults to B_MITER_JOIN. The BeBook says that the line join and
...
cap mode affect all Stroke* functions. If B_BEVEL_JOIN was indeed the
default, then StrokeRect() with a pen size of > 1 would have beveled corners.
* fixed sending op code and point data in Stroke/FillShape()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14726 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-07 01:07:19 +00:00
Stephan Aßmus
5ac57aebfb
improved look and applied style guide, fixed redrawing in BWindows with synchronous controls, it wouldn't have mattered if Haiku didn't have anti-aliasing, override B_RETURN on keydown to disallow turning the control off
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14715 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-05 16:46:36 +00:00
Stephan Aßmus
e1ab68c612
implemented disabled look for triangle thumb
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14714 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-05 16:44:17 +00:00
Stephan Aßmus
b2f2cb6203
simplified coordinate conversion from/to screen by removing duplicated code, Adi was there a reason to check for RootLayer before conversion or was this left-over?
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14709 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-04 19:51:38 +00:00
Stephan Aßmus
d79939116c
fixed build for old clipping
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14708 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-04 19:50:34 +00:00
Stephan Aßmus
e7869c4c74
renamed DisplayDriverPainter to DrawingEngine, removed tons of duplicated code, and - guess what - found some bugs while doing so... but nothing critical. This patch removes the former DisplayDriver API from libappserver.so, which I think breaks Decorator plug-ins for now
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14707 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-04 18:22:22 +00:00
Stephan Aßmus
fcd75d6357
renamed DisplayDriverPainter.* to DrawingEngine.*
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14696 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-04 15:55:53 +00:00
Stephan Aßmus
6ed894182f
renamed DisplayDriverPainter.* to DrawingEngine.*
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14695 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-04 15:54:16 +00:00
Stephan Aßmus
58468dfed0
first step of geting rid of abstract DisplayDriver base class for less development overhead, DisplayDriverPainter is renamed to DrawingEngine
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14694 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-04 15:23:54 +00:00
Stephan Aßmus
13cff625f0
cleanup and removable of large portions of code duplication, fCurrentLayer and fCurrentLayer->CurrentState() are checked in _DispatchMessage already, so _DispatchGraphicsMessage() assumes they are valid
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14691 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-04 13:45:16 +00:00
Stephan Aßmus
55e764c7f6
update license
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14690 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-04 13:41:44 +00:00
Stephan Aßmus
e422da6973
fix build for old clipping
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14688 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-04 13:39:12 +00:00
Stephan Aßmus
0f6436373e
removed bogus install-libs script, updated NOTES and Playground run script to use the pseudo target install-test-apps
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14686 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-04 12:44:23 +00:00
Stephan Aßmus
d05a172192
fixes for the new build system, added script to install some libs, currently only run script of Playground is fixed, jam haiku_registrar (run_haiku_registrar) does not work do to SimpleTests being currently broken, the run scripts needs to be fixed again for the new location of run_haiku_registrar
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14641 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-02 13:20:26 +00:00
Stephan Aßmus
382049ca6f
fix build of server for test environment
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14640 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-02 13:15:36 +00:00
Stephan Aßmus
26a2be8ba5
less overhead when byte count of string is already known
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14639 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-02 13:14:03 +00:00
Stephan Aßmus
ecf92c7e4b
cleaner version of RemoveItems, more error checking
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14638 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-02 13:10:33 +00:00
Stephan Aßmus
2544aac3eb
asynchronous version of Alert should have been broken, this looks more correct (not tested)
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14637 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-02 13:09:21 +00:00
Stephan Aßmus
dbc61d6cf2
implemented real GetPreferredSize() which calculates the minimum size given border_style and label, fixed FrameResized() to invalidate the correct areas of the border
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14636 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-02 13:07:18 +00:00
Stephan Aßmus
1ce9b0cb59
fix build of rc under ZETA
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14613 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-01 12:44:40 +00:00
Stephan Aßmus
09b3f55cb1
replaced the NOTES files in each subfolder with a single NOTES file in the parent folder, and updates the NOTES to the current information
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14452 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-20 13:17:18 +00:00
Stephan Aßmus
dd79576b10
* fixed scrolling for the current clipping code, it brings
...
up a new problem, maybe Adi has an idea for the fix, see
comment in the code
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14451 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-20 13:06:38 +00:00
Stephan Aßmus
9949213a25
removed the redundant "translator" from the folder names, fixed some warnings in the JPEG2000Translator
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14449 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-20 12:15:56 +00:00
Stephan Aßmus
a405a49e82
* cleaned up and applied coding style to FontStyle
...
* got rid of bogus member variables in FontStyle (which were
already flags in the underlying FT_Face structure)
* disabled using the FreeType font cache -> I think from
my earlier tests, I can conclude that the cache was not
actually working. At least not giving any speed improvements.
The AGG engine contains a caching system, for now, it works ok.
I have no idea if this has anything to do with crashes in the
freetype code, but at least I have not seen any since this
change. But I have not tested much...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14448 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-20 10:01:49 +00:00
Stephan Aßmus
2b8347c0d8
don't use potentially stall freetype font face handles. The code is
...
more correct now, but it doesn't actually fix anything, since FT_Face
handles are nowhere freed in the app_server code.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14447 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-20 09:51:56 +00:00
Stephan Aßmus
00e0821ffd
Use a ServerFont instance which is assigned to the currently
...
used font, so that the FontStyle reference count reflects the
fact that the AGG engine might still use the font
-> I think this "fix" is valid, but I have still seen crashes
in the freetype code.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14446 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-20 09:44:46 +00:00
Stephan Aßmus
ccdfe4055f
Jerome is encoded in UTF8
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14445 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-20 09:39:12 +00:00
Stephan Aßmus
c0a539ccec
Jerome is encoded in UTF8
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14444 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-20 09:37:40 +00:00
Stephan Aßmus
c8292991d2
applied coding style
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14443 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-20 09:37:04 +00:00
Stephan Aßmus
8e742b91ba
fixed build
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14394 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-15 22:13:37 +00:00
Stephan Aßmus
994ae14bb5
a couple of fixes for determining transparent pixels with regard to dithering, new auto transparency mode (from alpha channel) replaces nonsense index mode (the index mode is nonsense, because there is no control over which color gets which index, therefor, the user is better of specifying the specific color, which is supported)
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14334 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-06 23:22:41 +00:00
Stephan Aßmus
8061ab77fa
* fixed a bug with setting the transparent color
...
* changed behaviour when searching for the
index of the specified to be transparent color:
if there is no direct hit, the closest match
is found and adjusted to the specified color,
so that the transparency always works out
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14296 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-02 23:40:21 +00:00
Stephan Aßmus
3647107a2e
* reworked GUI to have better layout and be more font-sensitive
...
* added option to specify max number of colors
* improved palette creation (quite an improvement with my test images,
but a better color reduction algorithm surely exist)
* more to come with regards to transparency (for examply, being able to
specify the transparent index seems like complete bogus to me)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14294 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-02 16:59:06 +00:00
Stephan Aßmus
b4d0e9b546
removed stupid and non working constructor, a little clean up
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14086 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-30 09:49:12 +00:00
Stephan Aßmus
15ae8872f7
hacking session with Ingo part2: in the R5 test environment, the app_server links no longer against libbe.so, the classes which need it, ViewHWInterface + friends, are extracted into their own library, but we need a bridge library as well for HWInterface + friends. The AppServer is consequently no BApplication in the test environment anymore, the BApplication that is needed to display the frame buffer window is handled in ViewHWInterface. No functional change, except that our BRegion implementation is now used in the test environment, and who knows what else... luckily we are so extremely binary compatible, that passing a Haiku BRegion to the R5 app_server actually works.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13848 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-28 23:48:46 +00:00
Stephan Aßmus
87799a3a85
hacking session with Ingo part 1: add syslog() to libopenbeos.so to remove the last dependency on libbe.so
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13847 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-28 23:39:18 +00:00
Stephan Aßmus
217a8117cd
fixed typo
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13846 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-28 23:35:19 +00:00
Stephan Aßmus
7b4cc5a1c7
this has come in handy several times now
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13818 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-24 18:35:52 +00:00
Stephan Aßmus
be85e14208
initializing the system palette before creating the desktop and driver fixes the bug that the desktop is first shown in the wrong colors on 8 bit screens
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13817 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-24 18:32:05 +00:00
Stephan Aßmus
e4b3b04f99
Appearantly, there is a race condition when setting preferences, this fixes (one of) the crash(es?), but we should really fix the race condition, but I have no energy to get to know the code more. I'm thinking the PrefHandler class needs locking, since it is used everywhere, it is probably best to put the locking directly into the PrefHandler methods.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13789 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-21 12:59:23 +00:00
Stephan Aßmus
6acca385f0
source is a BControl pointer, so we need to dynamic_cast, no?
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13788 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-21 12:56:24 +00:00
Stephan Aßmus
05988bd35f
inactive workspaces are drawn with darker colors
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13787 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-21 11:43:11 +00:00
Stephan Aßmus
b23f4579af
fixed a debug message
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13786 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-21 11:42:26 +00:00
Stephan Aßmus
0d02a8aaba
fixed B_CMAP8 back to front buffer conversion (blue was missing)
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13757 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-18 23:13:42 +00:00
Stephan Aßmus
5fb214d470
The Deskbar can now shutdown or reboot Haiku, but we should have a way to shutdown asynchronously, see TODO
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13712 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-17 11:07:55 +00:00
Stephan Aßmus
f67fe71e9e
MiniTerminal deserves at least a mini icon, but I've given it a large one too
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13711 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-17 09:33:58 +00:00
Stephan Aßmus
8fbbd48760
added icons
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13710 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-17 09:22:57 +00:00
Stephan Aßmus
d461b955a1
fixed my previous commit, it helps to read the diffs again... but this fallback needs to move somewhere else, as commented by the TODO
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13706 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-16 23:43:30 +00:00
Stephan Aßmus
bcdb0e9460
some useful leftovers from debugging, use new with nothrow for it to make sense to test the returned pointer
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13704 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-16 23:34:23 +00:00
Stephan Aßmus
657ff50ca9
fall back to double buffered mode was already workingif mode was not 32-bit, only that IsDoubleBuffered() was not implemented, so that HWInterface::DrawingBuffer() returned the front buffer, which had the non-32-bit format... so this fixes non-32 bit modes, IAW, Vesa is working now
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13703 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-16 22:54:25 +00:00
Stephan Aßmus
95e42caf13
tried to find the bug that causes the wrong area underneath the software cursor to be restored, but failed, the only accomplishment is that the cursor is now showing right from the beginning, not only after one moves the mouse
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13702 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-16 22:52:28 +00:00
Stephan Aßmus
c18d3059b4
added icons needed for BAlerts
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13701 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-16 22:50:43 +00:00
Stephan Aßmus
05ffbfbc24
_FindMode is now more robust and really tries everything it can to find a mode...
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13700 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-16 22:50:17 +00:00
Stephan Aßmus
821426f66e
forgot to remove debug output
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13699 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-16 22:49:17 +00:00
Stephan Aßmus
e8a110090c
make sure the mouse settings are initialized with default values
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13695 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-16 14:33:18 +00:00
Stephan Aßmus
642467d077
renamed the tree parsing/child iteration functions, I think it is much clearer now what they do, more likely to find bugs too
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13572 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-10 17:16:31 +00:00
Stephan Aßmus
39e4b4ada6
quick fix to have Tracker display icons, hope this still reaches you, Axel
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13555 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-08 08:48:24 +00:00
Stephan Aßmus
e3aa5a9a9e
simplified the arrow look, still needs improvements, but I think they are better than before, some small display bugs remain, as well as some flickering, but no show-stopper
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13546 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-07 16:45:32 +00:00
Stephan Aßmus
7dc436d8dd
usability improvements to scrollbar, sorry had no time to include all of Stefanos drawing code yet, other visual improvements
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13535 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-07 14:33:19 +00:00
Stephan Aßmus
a5ca645e49
when a Layer or WinBorder is deleted, the RootLayer gets a chance to set some important pointers it keeps arround to NULL. It is not unlikely that this improves stability a bit.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13534 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-07 14:04:29 +00:00
Stephan Aßmus
4ed0f43872
checks rootLayer Pointer, since offscreen windows are not attached to RootLayer. This shouldn't have been a problem though since Offscreen windows were never Show()n
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13515 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-06 23:24:03 +00:00
Stephan Aßmus
2d5d475ef5
another logo variation, of course open for discussion, is available in different color-schemes on request, or I could also commit the other versions too.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13513 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-06 22:50:53 +00:00
Stephan Aßmus
9c910f9e80
first draft of a Haiku logo for the Deskbar, link against Haiku libs when building for Haiku
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13508 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-06 20:14:16 +00:00
Stephan Aßmus
6c3f99cf46
the clipping in fLayerData is in screen space, so when getting/setting the user defined clipping, we need to convert to/from view space
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13505 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-06 18:05:56 +00:00
Stephan Aßmus
72fab80539
another quick change for Tracker which allows to click on the Deskbar window, for some reason the window manager implementation does not allow a B_SYSTEM_LAST window to become the focus, but this is clearly possible on R5. I tried to track the real problem, but it needs to at least appear to work tomorrow... so double clicking on the Haiku volume indeed opens a Tracker window, though there is nothing in there. Axel, when I launch Tracker, I'm getting a bunch of KDLs with PANIC: BFS where I can continue until finally seeing Tracker. Deskbar works even better, though displaying the BeOS Logo is IMHO unacceptable for the representation, so I'm intending to make a Haiku Deskbar logo ASAP.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13492 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-06 13:31:41 +00:00
Stephan Aßmus
25685e7e5f
this quick change will make sure the Tracker Desktop window is opened behind all other windows and stays there, just to make life easier for Axel when I is representing the thing...
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13491 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-06 13:25:43 +00:00
Stephan Aßmus
101e7104ed
fixed screenshots. Again.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13484 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-06 10:21:23 +00:00
Stephan Aßmus
8ffa3fb9fa
the official system palette also has the 0xff entry (B_TRANSPARENT_MAGIC_CMAP8) with alpha = 0
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13474 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-06 01:46:37 +00:00
Stephan Aßmus
53a3e62c74
quick hack for alpha = 0 in B_OP_OVER, needs review, but for now, drawing all those B_CMAP8 bitmaps which have B_TRANSPARENT_MAGIC_CMAP8 pixels is working fine... IAW, icons look cool.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13473 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-06 01:43:49 +00:00
Stephan Aßmus
c1ea105142
added alpha support for pixel types and stuff in order to support B_TRANSPARENT_MAGIC_CMAP8 in the system palette... might need review, maybe there is a smarter way. The 0xff entry in the palette has alpha = 0 now
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13472 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-06 01:41:43 +00:00
Stephan Aßmus
21027896c8
the triangle thumb has 45 degree edges this was, which just look much cleaner
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13467 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 22:54:39 +00:00
Stephan Aßmus
2e6a5805ba
MenuField layouts the menu bar better with respect to fDivider, it aligns better with other controls. fDivider in TextControl is an integer number now, small fix and small cleanup in Menu, Window::InitData takes an optional BBitmap token to construct an offscreen window, fixed PrivateScreen IndexForColor, View prevents being located at fractional coordinates as in R5, BBitmap unlocks its offscreen window since it is never Show()n and needs manual unlocking, fixed Slider offscreen window mode and improved triange thumb drawing, ScrollView would not crash when passing a NULL target just for kicks, the private MenuBar class now implements Draw to draw itself a little differently inside the BMenuField (dark right and bottom side) - though how it currently sets the clipping region prevents the text controls to draw in Playground, needs fixing
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13450 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 16:30:53 +00:00
Stephan Aßmus
b2086a9ba0
just in case someone continues in the debugger
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13449 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 16:19:15 +00:00
Stephan Aßmus
359c905c57
offscreen bitmaps work, tested on Haiku as well, supports all colorspaces that BBitmap::ImportBits() supports. It uses a fallback for non-B_RGB(A)32 bitmaps. Added support for B_SUB_PIXEL_PRECISION view flags, though it is a bit hacky, since I had to add it to LayerData, even though it is not a true part of stack data. Added Layer::SetFlags() to enforce code path and update fLayerData. Cleaned up DisplayDriverPainter and DisplayDriver API (changed some const BRect& rect to simply BRect rect in order to be able to reuse it in the code), moved Painter.h, the test environment only draws the changed part of the frame buffer again - this causes a lot less CPU overhead, Painter special cases stroke width of 1.0 to use square caps, which is similar to R5 implementation and removes a lot of problems with non-straight line drawing, ServerWindow uses the DisplayDriver from it's WinBorder instead of the one from the Desktop (needed for offscreen windows, which have their own DisplayDriverPainter), it also checks for GetRootLayer() == NULL, because offscreen layers are not attached to a RootLayer, there was a fix for scrolling which worked at least in the test environment, it is now defunced, because Adi moved _CopyBits to Layer... I need to reenable it later, LayerData has no more fEscapementDelta, also fixed fFontAliasing (which was thought to overriding the font flags, and now works as such again), Desktop initialises the menu_info and scroll_bar_info stuff, which makes ScrollBars work actually... hope I didn't forget something.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13448 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 16:17:16 +00:00
Stephan Aßmus
31a3ded6f0
small enhancement
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13447 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 15:43:28 +00:00
Stephan Aßmus
28f13d4629
small enhancement
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13446 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 15:42:54 +00:00
Stephan Aßmus
9d42e19f61
shows an animation in the bitmap to show off offscreen bitmap drawing
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13445 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 15:42:21 +00:00
Stephan Aßmus
8e05e376ac
embedding ObjectView into a BScrollView to show off scrolling, drawing mode selection actually works, simplified States
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13444 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 15:40:59 +00:00
Stephan Aßmus
f8570b7199
substract the border width from minSize, as that is the inner width of the window
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13298 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 00:34:51 +00:00
Stephan Aßmus
063f418c53
made room for a new meaning of BitmapBuffer, it will be used for a RenderingBuffer class that wraps arround a ServerBitmap. BBitmapBuffer on the other side is handy as well and wraps arround a BBitmap, as BitmapBuffer did before.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13297 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-27 22:11:27 +00:00
Stephan Aßmus
203661c9d0
svn does not do what I want before I commit this... It's going to be renamed
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13296 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-27 21:53:17 +00:00
Stephan Aßmus
18cbc4ff3d
Using the read locking in DisplayDriver was a bit early. Painter itself is not thread safe, so while we use the HWInterface lock for locking, we can only do read locking once each window has its own Painter instance. I'm still investigating this possibility. It depends on the memory foot print of painter, of which I don't have a clear idea yet. Anyways, this quick change fixes Adis problems and is required at this time anyways. Sorry for the inconvenience.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13278 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-25 22:56:24 +00:00
Stephan Aßmus
2949ed1def
Thou shalt compile before thou commitst.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13253 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-24 00:14:19 +00:00
Stephan Aßmus
3dcb3b079a
Added some root layer locking in ServerWindow.cpp when accessing the layer tree. Moved HWInterface management out of DisplayDriverPainter and into Desktop. Removed all the directly hardware related functions from DisplayDriver API. They just called the same HWInterface functions. Now DisplayDriver is much cleaner and ready for being attached to a yet to be written BitmapHWInterface. Clean up of the display mode stuff in Screen and the View-/AccelerantHWInterface. Frequency is now regarded on Haiku. AccelerantHWInterface::GetModeList now works before SetMode has been called. Added MultiLocker from the sample code. HWInterface uses it now in preparation to being used from multiple instances of DisplayDriver.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13252 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-23 23:46:17 +00:00
Stephan Aßmus
c69d4b2719
clean up, bug fixes and more robustness
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13249 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-23 23:14:40 +00:00
Stephan Aßmus
ee9b01a01a
made the pool allocator thread safe
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13248 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-23 23:13:09 +00:00
Stephan Aßmus
579be6b83e
will support setting the drawing mode per object sometimes soon...
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13202 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-17 13:23:06 +00:00
Stephan Aßmus
2734243aca
Preparation of more correct support for state stack.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13201 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-17 13:20:45 +00:00
Stephan Aßmus
c818183b7e
_started_ implementing Tab sliding
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13182 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 16:44:58 +00:00