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
Stephan Aßmus
faaa62c751
update cached HW acceleration flags on mode changes. Fixes HW acc on ATI after Axels changes. Axel, is it working on Matrox as well now?
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13180 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 15:10:24 +00:00
Stephan Aßmus
54cc0f1b56
reverted some unintentional changes
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13179 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 13:07:36 +00:00
Stephan Aßmus
4d67034226
a new graphics state is pushed before calling BView::Draw() and popped after it. So any state changes you do in your Draw() function will be forgotton when you're done, as on R5. I have not done a lot of testing for bugs in the state stack within the app_server though...
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13174 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 12:37:30 +00:00
Stephan Aßmus
9b0c5e413c
fixed a crash into the debugger because the looper was not locked in BMenuBar::Track(), Stefano, please review...
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13173 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 12:34:46 +00:00
Stephan Aßmus
99b9d5ac8a
a new state begins life as a copy from the previous state, fixed Scale(). Note that BoundsOrigin() (and therefor Scale()) is called _a lot_ so we should cache the value! I started to work on this, but our lack of encapsulation strikes again... Layer::fLayerData is used directly all over the place.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13172 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 12:32:42 +00:00
Stephan Aßmus
cf5ff0c0d0
fixed memory corruption in the stuff I added to moreUTF8. This fixes GetEscapement crashes. The rest of the file needs reviewing as well, but I wanted to commit this ASAP
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13155 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-15 17:09:00 +00:00
Stephan Aßmus
75d26e104a
fInitialized is also set in the copy constructor. BTW, the Haiku Logo is displayed now (forgot to commit this earlier). Thanks to Axel for finding out about this.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13110 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-14 00:38:21 +00:00
Stephan Aßmus
fc5ca95d01
fixed alignment and image layout, esc exits fullscreen mode, black background for fullscreen, zooming window toggles fullscreen, can still browse even if current image has been deleted, space toggles slideshow, swapped next/previous menu items (more logical)
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13101 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-13 20:09:46 +00:00
Stephan Aßmus
56efd1ace8
Sometimes I have seen crashes in BWindow::determine_target(), and this could very well fix it.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13060 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-11 14:28:54 +00:00
Stephan Aßmus
9851ab5c1e
The Haiku Logo is displayed on the Desktop. :-) Of course this will be removed as soon as Tracker runs. If you don't want it, you can disable it in RootLayer.h. Fixed a clipping bug with text rendering.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13057 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-11 13:00:17 +00:00
Stephan Aßmus
b916304242
fixed build
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13054 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-10 20:13:34 +00:00
Stephan Aßmus
2f6a25d52d
fixed build of fake_app_server
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13009 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-08 10:32:24 +00:00
Stephan Aßmus
d5233162ca
removed no longer true stuff and some debug left overs
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12983 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-07 13:30:56 +00:00
Stephan Aßmus
442992bf26
fixed some pretty bad bugs that prevented menus from working (they now do): The BMessage* in AddShortcut is taken in responsibility by the BWindow, so we cannot directly use the message from BMenuItem, the be_app was locked in InitData but never unlocked, it fixes BMenus only working once, and who knows what else it fixes. A little cleanup with _BCmdKey usage, also note that it is inefficient to RemoveItem()s from a list in the destructor of any class using a BList as data container! Simply delete the items and be done with it. The BList destructor will take care of the rest and free its storage in one go.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12982 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-07 13:19:28 +00:00
Stephan Aßmus
4ece454391
since the bitmap will be filled with content, we can use 0 as flags for the BBitmap constructor, which prevents it from unnecessarily filling with white
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12981 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-07 13:14:57 +00:00
Stephan Aßmus
8768dcd876
BMenu installed all previously added items each time a new item was added
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12980 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-07 13:13:43 +00:00
Stephan Aßmus
0b5938e995
added a TODO comment, I forgot to mention that anything but B_TRUNCATE_END is untested or broken
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12978 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-07 13:12:43 +00:00
Stephan Aßmus
590fdd3f2d
added B_QUIT_REQUESTED message
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12977 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-07 13:10:45 +00:00
Stephan Aßmus
457820a6ef
quick fix for windows resizing/moving at fractional offsets, fix for bitmap drawing placement, small clean ups
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12961 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-05 22:02:25 +00:00
Stephan Aßmus
6a2575c9d2
fixed resizing of hidden windows
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12953 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-04 11:18:30 +00:00
Stephan Aßmus
f9e3895bf2
added tracing to some messages
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12952 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-04 11:17:30 +00:00
Stephan Aßmus
72d6bb9893
Add a string regardless if a NULL pointer was passed. This fixes a fragility in the comm code, and People is now displayed correctly.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12951 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-04 11:16:21 +00:00
Stephan Aßmus
e4bcf6e073
resize the window while it is still hidden to the calculated minumum size
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12950 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-04 11:14:25 +00:00
Stephan Aßmus
a4576f712b
Playground and BitmapDrawing are build and installed as apps
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12949 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-03 19:58:36 +00:00
Stephan Aßmus
c10a3393e2
huge BSlider cleanup, it doesn't use an offscreen bitmap anymore by default (compile time switch), updated drawing for Haiku features and disabled look, work in progress
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12948 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-03 19:57:34 +00:00
Stephan Aßmus
0c3344f4a1
no Invalidate in BControl::SetValue, I figure more controls need to be updated for this change
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12947 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-03 19:55:49 +00:00
Stephan Aßmus
743a147353
better ResizeToPreferred implementation
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12946 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-03 19:51:34 +00:00
Stephan Aßmus
59345e264f
huge cleanup, support for SetSizeLimits, support for truncating strings, numerous decorator bug fixes, Layer does not draw when view color is B_TRANSPARENT_COLOR, cleaner dispatching of mouse events to the WinBorder in RootLayer, commented the char map selection in the font server, as it seems glyph lookup by unicode index works much better with the default map
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12945 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-03 19:50:30 +00:00
Stephan Aßmus
e4f0f510a9
added support for non-antialiased text rendering, cleanup in AGGTextRenderer
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12944 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-03 19:33:11 +00:00
Stephan Aßmus
7aca21e6bf
added const to some operators
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12943 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-03 19:31:26 +00:00
Stephan Aßmus
11f97ed147
large cleanup, should have fixed some memory leaks too
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12942 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-03 19:30:32 +00:00
Stephan Aßmus
8359877941
reflects my tests with bitmaps in colorspaces other than B_RGB32, which do work btw
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12941 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-03 19:26:26 +00:00
Stephan Aßmus
b7f478e26d
uses a slider now, uses SetSizeLimits, objects can now be edited after they have been created
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12940 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-03 19:24:36 +00:00
Stephan Aßmus
d593ad8f06
added a little debugging facility for printing on-screen debugging info on Haiku. For those like me without serial debugging... also made RootLayer use the desktop background color.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12819 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-25 23:59:23 +00:00
Stephan Aßmus
74994d1307
added license headers
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12817 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-25 23:47:05 +00:00
Stephan Aßmus
55d6f1b792
Many efficiency improvements to text rendering. Moved stuff from Painter into AGGTextRenderer which didn't belong in Painter. AGGTextRenderer now has an embedded transformation, which expresses the font rotation and (in future) shear settings. Removed direct support for BBitmaps from Painter (supposed to draw ServerBitmaps). Tested drawing of bitmaps other than B_RGB32. (only B_CMAP8 and B_GRAY8 so far, but they work). Right now, these colorspaces are supported by on the fly conversion. So every colorspace supported by BBitmap::ImportBits() should work, which are a lot more than the R5 app_server can display.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12815 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-25 18:20:45 +00:00
Stephan Aßmus
85b226041a
Added B_BITMAP_NO_SERVER_LINK to the BBitmap flags. It constructs a BBitmap without a server link, which consequently cannot be drawn by the app_server, but which is nevertheless very useful. It essentially does the same thing as RUN_WITHOUT_APP_SERVER. I also added a CleanUp() function and moved the cleanup code from InitObject() there. CleanUp() is now called in the destructor, which means that the app_server now knows when to free the server side bitmap.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12814 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-25 18:10:20 +00:00
Stephan Aßmus
7c5f224338
fixed a possible segfault in an out of mem condition. Fixed build for Haiku, since libpng.a and libz.a are not build for Haiku it seems. Is there a specific reason to link them statically? These are system libs after all.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12813 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-25 18:04:34 +00:00
Stephan Aßmus
ac167e6ead
Various fixes and efficiency improvements to the drawing backend. Among other stuff, stroked lines with a width greater than 1 have anti-aliased butts now. There are some bugs left regarding text rendering.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12761 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-22 12:12:56 +00:00
Stephan Aßmus
3295cceb8f
Forgot something
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12751 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-20 23:54:28 +00:00