Implemented the missing BView::IsHidden(BView *lookingFrom), fixed
BView::IsHidden(). Commented a ToDo: item in BView::Hide(). git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5417 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
parent
a8d1f0c354
commit
b22232f591
@ -702,12 +702,15 @@ BRect BView::Frame() const {
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
void BView::Hide(){
|
||||
void
|
||||
BView::Hide()
|
||||
{
|
||||
// TODO: You may hide it by relocating with -17000 coord units to the left???
|
||||
if ( owner && fShowLevel == 0){
|
||||
// "I don't think you want to do that" - axeld.
|
||||
if (owner && fShowLevel == 0) {
|
||||
check_lock();
|
||||
|
||||
owner->session->WriteInt32( AS_LAYER_HIDE );
|
||||
|
||||
owner->session->WriteInt32(AS_LAYER_HIDE);
|
||||
}
|
||||
|
||||
fShowLevel++;
|
||||
@ -739,20 +742,37 @@ bool BView::IsFocus() const {
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
bool BView::IsHidden() const{
|
||||
bool
|
||||
BView::IsHidden(const BView *lookingFrom) const
|
||||
{
|
||||
if (fShowLevel > 0)
|
||||
return true;
|
||||
|
||||
if (owner)
|
||||
if (owner->IsHidden())
|
||||
return true;
|
||||
// may we be egocentric?
|
||||
if (lookingFrom == this)
|
||||
return false;
|
||||
|
||||
// we have the same visibility state as our
|
||||
// parent, if there is one
|
||||
if (parent)
|
||||
return parent->IsHidden();
|
||||
|
||||
// if we're the top view, and we're interested
|
||||
// in the "global" view, we're inheriting the
|
||||
// state of the window's visibility
|
||||
if (owner && lookingFrom == NULL)
|
||||
return owner->IsHidden();
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
bool
|
||||
BView::IsHidden() const
|
||||
{
|
||||
return IsHidden(NULL);
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
bool BView::IsPrinting() const {
|
||||
|
Loading…
x
Reference in New Issue
Block a user