ctkTitleComboBox.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Library:   CTK
00004  
00005   Copyright (c) 2010  Kitware Inc.
00006 
00007   Licensed under the Apache License, Version 2.0 (the "License");
00008   you may not use this file except in compliance with the License.
00009   You may obtain a copy of the License at
00010 
00011       http://www.commontk.org/LICENSE
00012 
00013   Unless required by applicable law or agreed to in writing, software
00014   distributed under the License is distributed on an "AS IS" BASIS,
00015   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00016   See the License for the specific language governing permissions and
00017   limitations under the License.
00018  
00019 =========================================================================*/
00020 
00021 #ifndef __ctkTitleComboBox_h
00022 #define __ctkTitleComboBox_h
00023 
00024 // Qt includes
00025 #include <QComboBox>
00026 
00027 // CTK includes
00028 #include "CTKWidgetsExport.h"
00029 
00030 class CTK_WIDGETS_EXPORT ctkTitleComboBox : public QComboBox
00031 {
00032   Q_OBJECT
00033   Q_PROPERTY(QString title READ title WRITE setTitle)
00034   Q_PROPERTY(QIcon icon READ icon WRITE setIcon)
00035 
00036 public:
00037   explicit ctkTitleComboBox(QWidget* parent = 0);
00038   virtual ~ctkTitleComboBox();
00039 
00040   void setTitle(const QString&);
00041   QString title()const;
00042   
00043   void setIcon(const QIcon&);
00044   QIcon icon()const;
00045 
00046   virtual QSize minimumSizeHint()const;
00047   virtual QSize sizeHint()const;
00048 
00049 protected:
00050   virtual void paintEvent(QPaintEvent*);
00051   virtual QSize recomputeSizeHint(QSize &sh)const;
00052 
00053   QString Title;
00054   QIcon   Icon;
00055   
00056 private:
00057   mutable QSize MinimumSizeHint;
00058   mutable QSize SizeHint;
00059 };
00060 
00061 #endif
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines