sizepolicyedit.h
1/* This file is part of the KDE project
2 Copyright (C) 2004 Cedric Pasteur <cedric.pasteur@free.fr>
3 Copyright (C) 2004 Alexander Dymo <cloudtemple@mskat.net>
4
5 This library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Library General Public
7 License as published by the Free Software Foundation; either
8 version 2 of the License, or (at your option) any later version.
9
10 This library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Library General Public License for more details.
14
15 You should have received a copy of the GNU Library General Public License
16 along with this library; see the file COPYING.LIB. If not, write to
17 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18 * Boston, MA 02110-1301, USA.
19*/
20
21#ifndef KPROPERTY_SIZEPOLICYEDIT_H
22#define KPROPERTY_SIZEPOLICYEDIT_H
23
24#include "../widget.h"
25
26#include <tqvariant.h>
27
28template<class U, class T> class TQMap;
29
30class TQLabel;
31
32namespace KoProperty {
33
34class KOPROPERTY_EXPORT SizePolicyEdit : public Widget
35{
36 TQ_OBJECT
37
38
39 public:
40 SizePolicyEdit(Property *property, TQWidget *parent=0, const char *name=0);
41 virtual ~SizePolicyEdit();
42
43 virtual TQVariant value() const;
44 virtual void setValue(const TQVariant &value, bool emitChange=true);
45
46 virtual void drawViewer(TQPainter *p, const TQColorGroup &cg, const TQRect &r, const TQVariant &value);
47
48 protected:
49 virtual void setReadOnlyInternal(bool readOnly);
50 TQString findDescription(const TQVariant &value) const;
51
52 private:
53 TQVariant m_value;
54 TQLabel *m_edit;
55 static TQStringVariantMap *m_spValues;
56};
57
58}
59
60#endif
Namespace for a set of classes implementing generic properties framework.