1 #include "SalomeApp_WidgetContainer.h"
3 #include <qobjectlist.h>
4 #include <qwidgetstack.h>
6 SalomeApp_WidgetContainer::SalomeApp_WidgetContainer( const int type, QWidget* parent )
7 : QDockWindow( QDockWindow::InDock, parent ),
10 setWidget( myStack = new QWidgetStack( this ) );
14 SalomeApp_WidgetContainer::~SalomeApp_WidgetContainer()
18 bool SalomeApp_WidgetContainer::isEmpty() const
20 const QObjectList* lst = myStack->children();
25 for ( QObjectListIt it( *lst ); it.current() && res; ++it )
27 if ( it.current()->isWidgetType() && myStack->id( (QWidget*)it.current() ) != -1 )
33 int SalomeApp_WidgetContainer::type() const
38 bool SalomeApp_WidgetContainer::contains( const int id ) const
40 return myStack->widget( id ) != 0;
43 int SalomeApp_WidgetContainer::insert( const int id, QWidget* wid )
45 if ( id == -1 || !wid )
51 int stackId = myStack->addWidget( wid, id );
52 if ( !myStack->visibleWidget() )
53 myStack->raiseWidget( wid );
55 setCaption( myStack->visibleWidget() ? myStack->visibleWidget()->caption() : QString::null );
60 void SalomeApp_WidgetContainer::remove( const int id )
62 remove( myStack->widget( id ) );
64 setCaption( myStack->visibleWidget() ? myStack->visibleWidget()->caption() : QString::null );
67 void SalomeApp_WidgetContainer::remove( QWidget* wid )
69 myStack->removeWidget( wid );
71 setCaption( myStack->visibleWidget() ? myStack->visibleWidget()->caption() : QString::null );
74 void SalomeApp_WidgetContainer::activate( const int id )
76 myStack->raiseWidget( id );
78 setCaption( myStack->visibleWidget() ? myStack->visibleWidget()->caption() : QString::null );
81 void SalomeApp_WidgetContainer::activate( QWidget* wid )
83 myStack->raiseWidget( wid );
85 setCaption( myStack->visibleWidget() ? myStack->visibleWidget()->caption() : QString::null );
88 QWidget* SalomeApp_WidgetContainer::widget( const int id ) const
90 return myStack->widget( id );
93 QWidget* SalomeApp_WidgetContainer::active() const
95 return myStack->visibleWidget();