1 /*---------------------------------------------------------------------\
3 | __ __ ____ _____ ____ |
4 | \ \ / /_ _/ ___|_ _|___ \ |
5 | \ V / _` \___ \ | | __) | |
6 | | | (_| |___) || | / __/ |
7 | |_|\__,_|____/ |_| |_____| |
11 \----------------------------------------------------------------------/
15 Author: Stefan Hundhammer <sh@suse.de>
20 #define y2log_component "qt-ui"
21 #include <ycp/y2log.h>
30 YQFrame::YQFrame( YWidget * parent,
31 const string & initialLabel )
32 : QGroupBox( (QWidget *) parent->widgetRep() )
33 , YFrame( parent, initialLabel )
35 setWidgetRep ( this );
36 QGroupBox::setTitle( fromUTF8( label() ) );
46 void YQFrame::setEnabled( bool enabled )
48 QGroupBox::setEnabled( enabled );
49 YWidget::setEnabled( enabled );
54 YQFrame::setSize( int newWidth, int newHeight )
56 resize( newWidth, newHeight );
60 int newChildWidth = max ( 0, newWidth - 2 * frameWidth() - 1 );
61 int newChildHeight = max ( 0, newHeight - frameWidth() - fontMetrics().height() - 1 );
63 firstChild()->setSize( newChildWidth, newChildHeight );
65 QWidget * qChild = (QWidget *) firstChild()->widgetRep();
66 qChild->move( frameWidth(), fontMetrics().height() );
72 YQFrame::setLabel( const string & newLabel )
74 YFrame::setLabel( newLabel );
75 QGroupBox::setTitle( fromUTF8( label() ) );
79 int YQFrame::preferredWidth()
82 int childPreferredWidth = hasChildren() ? firstChild()->preferredWidth() : 0;
84 preferredWidth = max( childPreferredWidth,
85 (10 + fontMetrics().width( title() ) ) );
86 preferredWidth += 2*frameWidth() + 1;
88 return preferredWidth;
92 int YQFrame::preferredHeight()
94 int preferredHeight = hasChildren() ? firstChild()->preferredHeight() : 0;
95 preferredHeight += frameWidth() + fontMetrics().height() + 1;
97 return preferredHeight;
101 #include "YQFrame.moc"