diff options
author | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
---|---|---|
committer | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
commit | 460c52653ab0dcca6f19a4f492ed2c5e4e963ab0 (patch) | |
tree | 67208f7c145782a7e90b123b982ca78d88cc2c87 /kdgantt/KDGanttSemiSizingControl.h | |
download | tdepim-460c52653ab0dcca6f19a4f492ed2c5e4e963ab0.tar.gz tdepim-460c52653ab0dcca6f19a4f492ed2c5e4e963ab0.zip |
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdepim@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'kdgantt/KDGanttSemiSizingControl.h')
-rw-r--r-- | kdgantt/KDGanttSemiSizingControl.h | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/kdgantt/KDGanttSemiSizingControl.h b/kdgantt/KDGanttSemiSizingControl.h new file mode 100644 index 000000000..6fb56e32c --- /dev/null +++ b/kdgantt/KDGanttSemiSizingControl.h @@ -0,0 +1,90 @@ +/* -*- Mode: C++ -*- + $Id$ +*/ + +/**************************************************************************** + ** Copyright (C) 2002-2004 Klar�lvdalens Datakonsult AB. All rights reserved. + ** + ** This file is part of the KDGantt library. + ** + ** This file may be distributed and/or modified under the terms of the + ** GNU General Public License version 2 as published by the Free Software + ** Foundation and appearing in the file LICENSE.GPL included in the + ** packaging of this file. + ** + ** Licensees holding valid commercial KDGantt licenses may use this file in + ** accordance with the KDGantt Commercial License Agreement provided with + ** the Software. + ** + ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE + ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. + ** + ** See http://www.klaralvdalens-datakonsult.se/Public/products/ for + ** information about KDGantt Commercial License Agreements. + ** + ** Contact [email protected] if any conditions of this + ** licensing are not clear to you. + ** + ** As a special exception, permission is given to link this program + ** with any edition of Qt, and distribute the resulting executable, + ** without including the source code for Qt in the source distribution. + ** + **********************************************************************/ + + +#ifndef KDGANTTSEMISIZINGCONTROL_H +#define KDGANTTSEMISIZINGCONTROL_H + +#include "KDGanttSizingControl.h" +#include <qlayout.h> +class QPushButton; +class QBoxLayout; + +class KDGanttSemiSizingControl : public KDGanttSizingControl +{ + Q_PROPERTY( ArrowPosition arrowPosition READ arrowPosition WRITE setArrowPosition ) + Q_ENUMS( ArrowPosition ) + Q_OBJECT + +public: + enum ArrowPosition { Before, After }; + + KDGanttSemiSizingControl( QWidget* parent = 0, const char* name = 0 ); + KDGanttSemiSizingControl( Orientation orientation, QWidget* parent = 0, + const char* name = 0 ); + KDGanttSemiSizingControl( ArrowPosition arrowPosition, + Orientation orientation, QWidget* parent = 0, + const char* name = 0 ); + + void setMinimizedWidget( QWidget* widget ); + void setMaximizedWidget( QWidget* widget ); + QWidget* minimizedWidget() const; + QWidget* maximizedWidget() const; + + void setOrientation( Qt::Orientation orientation ); + Qt::Orientation orientation() const; + + void setArrowPosition( ArrowPosition arrowPosition ); + ArrowPosition arrowPosition() const; + +public slots: + virtual void minimize( bool minimize ); + virtual void restore( bool restore ); + +protected: + void setup(); + void init(); + enum Direction {Left, Right, Up, Down }; + QPixmap pixmap( Direction ); + +private: + Orientation _orient; + ArrowPosition _arrowPos; + QWidget* _minimizedWidget; + QWidget* _maximizedWidget; + QBoxLayout* _layout; + QPushButton* _but; +}; + + +#endif |