kate
dockviewbase.cpp
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #include "dockviewbase.h"
00020 #include "dockviewbase.moc"
00021
00022 #include <qlabel.h>
00023 #include <qlayout.h>
00024
00025
00026
00027 namespace Kate {
00028
00029
00030 class DockViewBasePrivate {
00031 public:
00032 QWidget *header;
00033 QLabel *lTitle;
00034 QLabel *lPrefix;
00035 };
00036
00037 }
00038
00039 Kate::DockViewBase::DockViewBase( QWidget* parent, const char* name )
00040 : QVBox( parent, name ),
00041 d ( new Kate::DockViewBasePrivate )
00042 {
00043 init( QString::null, QString::null );
00044 }
00045
00046 Kate::DockViewBase::DockViewBase( const QString &prefix, const QString &title, QWidget* parent, const char* name )
00047 : QVBox( parent, name ),
00048 d ( new Kate::DockViewBasePrivate )
00049 {
00050 init( prefix, title );
00051 }
00052
00053 Kate::DockViewBase::~DockViewBase()
00054 {
00055 delete d;
00056 }
00057
00058 void Kate::DockViewBase::setTitlePrefix( const QString &prefix )
00059 {
00060 d->lPrefix->setText( prefix );
00061 d->lPrefix->show();
00062 }
00063
00064 QString Kate::DockViewBase::titlePrefix() const
00065 {
00066 return d->lPrefix->text();
00067 }
00068
00069 void Kate::DockViewBase::setTitle( const QString &title )
00070 {
00071 d->lTitle->setText( title );
00072 d->lTitle->show();
00073 }
00074
00075 QString Kate::DockViewBase::title() const
00076 {
00077 return d->lTitle->text();
00078 }
00079
00080 void Kate::DockViewBase::setTitle( const QString &prefix, const QString &title )
00081 {
00082 setTitlePrefix( prefix );
00083 setTitle( title );
00084 }
00085
00086 void Kate::DockViewBase::init( const QString &prefix, const QString &title )
00087 {
00088 setSpacing( 4 );
00089 d->header = new QWidget( this );
00090 d->header->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed, true ) );
00091 QHBoxLayout *lo = new QHBoxLayout( d->header );
00092 lo->setSpacing( 6 );
00093 lo->insertSpacing( 0, 6 );
00094 d->lPrefix = new QLabel( title, d->header );
00095 lo->addWidget( d->lPrefix );
00096 d->lTitle = new QLabel( title, d->header );
00097 lo->addWidget( d->lTitle );
00098 lo->setStretchFactor( d->lTitle, 1 );
00099 lo->insertSpacing( -1, 6 );
00100 if ( prefix.isEmpty() ) d->lPrefix->hide();
00101 if ( title.isEmpty() ) d->lTitle->hide();
00102 }