The block thumb frame is now left out when the bar background is filled
which reduces flicker.
Also, the background fill draw over the region occupied with the border
lines which also caused flicker.
The border lines still draw over the thumb area, and thus, may cause
noticeable flicker there when moving it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13345 a95241bf-73f2-0310-859d-f6bbb57e9c96
- rewrote GetPreferredSize(), it now actually works correctly
- BSlider is certainly not supposed to resize itself on creation
- fixed BarFrame() and ThumbFrame() to support a different view frame
than the ideal one
- added SetBarThickness() support
- refactored constraining the mouse point to _ConstrainPoint() - it's
now used by MouseDown() and MouseMoved() - because of that, tracking
now works with vertical sliders as well
- still has some drawing problems, but less
- _ReservedSlider4() was defined public for the R5 build
Cleanup, more or less rewrote the header.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13342 a95241bf-73f2-0310-859d-f6bbb57e9c96
Seems like Be's slider doesn't work that well for B_VERTICAL orientation either.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13341 a95241bf-73f2-0310-859d-f6bbb57e9c96
- renamed some members and methods to fit our style guide
- moved removeSelf() to RemoveSelf() (as those two are essentially
the same), and fixed it on the way: the state of the child views
is now also updated by the new _UpdateStateForRemove() method
- Moved BWindow::sendPulse() and activateView() to BView::_Pulse()
and BView::_Activate()
- some minor stuff
This also fixes the broken previous commit - I forgot to update
View.h; this update contains the previous changes as well. Sorry
for the inconvenience.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13334 a95241bf-73f2-0310-859d-f6bbb57e9c96
We can always link against libroot.so, there is no need for this special case.
Also fixed line breaks: please try not to commit DOS line breaks.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13331 a95241bf-73f2-0310-859d-f6bbb57e9c96
color only is cheaper than a full PushState()/PopState() we'll
continue to use it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13328 a95241bf-73f2-0310-859d-f6bbb57e9c96
reverted last change.
Please, if you intend to build an application for R5, make sure that the build
target platform ($TARGET_PLATFORM) is set correctly.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13326 a95241bf-73f2-0310-859d-f6bbb57e9c96
- it now seems to work finally correctly
- renamed ViewAttr to ViewState and put it into the BPrivate namespace
- some refactoring (moved some private BView methods to ViewState)
- renamed AS_LAYER_MOVETO/RESIZETO to *_TO (note the underscore)
- exchanged BView::originX/Y with fParentOffset (BPoint)
- divided AS_LAYER_GET_COLORS into separate ones for high/low/view color
- BView::SetPattern() now actually works as expected (ie. updates
only if necessary)
- exchanged the ViewAttr::flags with ViewState::valid_flags which inverses
the previous logic (which wasn't even used consistently)
- fState was initialized twice (incorrectly by the ViewAttr constructor,
and then again correctly by initCachedState()) - now the ViewState
constructor does the job alone, but correctly
- BView::PushState() no longer resets the state (it did so only locally
anyway...)
- cleanup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13325 a95241bf-73f2-0310-859d-f6bbb57e9c96
Added a playlist class which will be later used for handling tracks
CD music will stop on quit to avoid confusing users
Added pause up/down images to resource file
Style tweaks to some files
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13324 a95241bf-73f2-0310-859d-f6bbb57e9c96
for servers, that don't have a GUI or want to control when the app server
connection is established.
* BServer is necessarily a friend of BApplication, for it uses a private
constructor. Hence BApplication::Private::InitGUIContext() is no longer
needed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13315 a95241bf-73f2-0310-859d-f6bbb57e9c96
BApplication::Private class for accessing relevant parts.
* Pulled the app server connection and IK initialization out of
InitData() into a new method _InitGUIContext() and introduced a private
constructor that allows to avoid this initialization. This will be used
for servers that don't have GUI respectively want to init the app server
connection later.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13312 a95241bf-73f2-0310-859d-f6bbb57e9c96
I even take responsibility for this bug, as I told Marc to change it eons ago.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13309 a95241bf-73f2-0310-859d-f6bbb57e9c96
say hello to RootLayer.
Adi will probably not like this, but that's definitely only a temporary solution :-)
This little fix greatly increases app_server stability under Haiku - ie. menus
are working now, the team monitor comes up regularly, etc. - how great is that?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13305 a95241bf-73f2-0310-859d-f6bbb57e9c96
test application now works as it should.
DefaultDecorator::GetSizeLimits() did work correctly, there was no need
to have extra protection limits.
Enabled Stephan's automatic resize code on BWindow::SetSizeLimits() again, and
added a short comment why I think R5's behaviour is just a bug/leftover.
Moved guts of ResizeBy() into _ResizeBy() that doesn't send the update message
to the client, and is now called in the constructor to make sure the border
size is within limits. Also made it work there, as fTopLayer is NULL in that
environment.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13304 a95241bf-73f2-0310-859d-f6bbb57e9c96
the window on server side - ie. if the app_server could not create a
window of the size requested, BWindow::fFrame will still be correct
(and the size limits will mirror actual decorator limits).
Renamed fMinWindHeight and friends to fMinHeight and so on.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13302 a95241bf-73f2-0310-859d-f6bbb57e9c96