kmdichildfrmcaption.h

00001 //----------------------------------------------------------------------------
00002 //    filename             : kmdichildfrmcaption.h
00003 //----------------------------------------------------------------------------
00004 //    Project              : KDE MDI extension
00005 //
00006 //    begin                : 07/1999       by Szymon Stefanek as part of kvirc
00007 //                                         (an IRC application)
00008 //    changes              : 09/1999       by Falk Brettschneider to create an
00009 //                           - 06/2000     stand-alone Qt extension set of
00010 //                                         classes and a Qt-based library
00011 //                           2000-2003     maintained by the KDevelop project
00012 //
00013 //    copyright            : (C) 1999-2003 by Falk Brettschneider
00014 //                                         and
00015 //                                         Szymon Stefanek (stefanek@tin.it)
00016 //    email                :  falkbr@kdevelop.org (Falk Brettschneider)
00017 //----------------------------------------------------------------------------
00018 //
00019 //----------------------------------------------------------------------------
00020 //
00021 //    This program is free software; you can redistribute it and/or modify
00022 //    it under the terms of the GNU Library General Public License as
00023 //    published by the Free Software Foundation; either version 2 of the
00024 //    License, or (at your option) any later version.
00025 //
00026 //----------------------------------------------------------------------------
00027 #ifndef _KMDI_CHILD_FRM_CAPTION_H_
00028 #define _KMDI_CHILD_FRM_CAPTION_H_
00029 
00030 #include <qwidget.h>
00031 
00032 #include "kmdidefines.h"
00033 
00034 class KMdiChildFrm;
00035 
00036 
00037 class KMdiChildFrmCaptionPrivate;
00038 
00044 class KMDI_EXPORT KMdiChildFrmCaption : public QWidget
00045 {
00046     Q_OBJECT
00047 public:
00051     KMdiChildFrmCaption( KMdiChildFrm *parent );
00052 
00056     ~KMdiChildFrmCaption();
00057 
00061     void setActive( bool bActive );
00062 
00066     void setCaption( const QString& text );
00067 
00071     int heightHint();
00072 
00073 public slots:
00077     void slot_moveViaSystemMenu();
00078 
00079 protected:
00083     virtual void paintEvent( QPaintEvent *e );
00084 
00088     virtual void mousePressEvent( QMouseEvent * );
00089 
00093     virtual void mouseDoubleClickEvent( QMouseEvent * );
00094 
00098     virtual void mouseReleaseEvent( QMouseEvent * );
00099 
00103     virtual void mouseMoveEvent( QMouseEvent *e );
00104 
00109     QString abbreviateText( QString origStr, int maxWidth );
00110 
00111     // attributes
00112 public:
00116     QString m_szCaption;
00117 
00118 protected:  // Protected attributes
00122     KMdiChildFrm *m_pParent;
00123 
00127     bool m_bActive;
00128 
00132     QPoint m_offset;
00133 
00137     bool m_bChildInDrag;
00138 
00139 private:
00140     KMdiChildFrmCaptionPrivate *d;
00141 };
00142 
00143 #endif //_KMDICAPTION_H_
00144 
00145 // kate: space-indent off; replace-tabs off; indent-mode csands; tab-width 4;
KDE Home | KDE Accessibility Home | Description of Access Keys