]> icculus.org git repositories - duncan/yast2-qt4.git/blob - src/YQLabel.cc
restart qt4 porting
[duncan/yast2-qt4.git] / src / YQLabel.cc
1 /*---------------------------------------------------------------------\
2 |                                                                      |
3 |                      __   __    ____ _____ ____                      |
4 |                      \ \ / /_ _/ ___|_   _|___ \                     |
5 |                       \ V / _` \___ \ | |   __) |                    |
6 |                        | | (_| |___) || |  / __/                     |
7 |                        |_|\__,_|____/ |_| |_____|                    |
8 |                                                                      |
9 |                               core system                            |
10 |                                                        (C) SuSE GmbH |
11 \----------------------------------------------------------------------/
12
13   File:       YQLabel.cc
14
15   Author:     Stefan Hundhammer <sh@suse.de>
16
17 /-*/
18
19
20 #define y2log_component "qt-ui"
21 #include <ycp/y2log.h>
22
23 #include "utf8.h"
24 #include "YQUI.h"
25 #include "YQApplication.h"
26 #include "YQLabel.h"
27
28
29 YQLabel::YQLabel( YWidget *             parent,
30                   const string &        text,
31                   bool                  isHeading,
32                   bool                  isOutputField )
33     : QLabel( (QWidget *) parent->widgetRep() )
34     , YLabel( parent, text, isHeading, isOutputField )
35 {
36     setWidgetRep( this );
37
38     setTextFormat( QLabel::PlainText );
39     QLabel::setText( fromUTF8( text ) );
40     setIndent(0);
41
42     if ( isHeading )
43     {
44         setFont( YQUI::yqApp()->headingFont() );
45     }
46     else if ( isOutputField )
47     {
48         setFrameStyle ( QFrame::Panel | QFrame::Sunken );
49         setLineWidth(2);
50         setMidLineWidth(2);
51     }
52                 
53     setMargin( YQWidgetMargin );
54     setAlignment( AlignLeft | AlignTop );
55 }
56
57
58 YQLabel::~YQLabel()
59 {
60     // NOP
61 }
62
63
64 void YQLabel::setText( const string & newText )
65 {
66     YLabel::setText( newText );
67     QLabel::setText( fromUTF8( newText ) );
68 }
69
70
71 void YQLabel::setUseBoldFont( bool useBold )
72 {
73     setFont( useBold ?
74              YQUI::yqApp()->boldFont() :
75              YQUI::yqApp()->currentFont() );
76     
77     YLabel::setUseBoldFont( useBold );
78 }
79
80
81 void YQLabel::setEnabled( bool enabled )
82 {
83     QLabel::setEnabled( enabled );
84     YWidget::setEnabled( enabled );
85 }
86
87
88 int YQLabel::preferredWidth()
89 {
90     return sizeHint().width();
91 }
92
93
94 int YQLabel::preferredHeight()
95 {
96     return sizeHint().height();
97 }
98
99
100 void YQLabel::setSize( int newWidth, int newHeight )
101 {
102     resize( newWidth, newHeight );
103 }
104
105
106 #include "YQLabel.moc"