lib

booledit.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 Copyright (C) 2006 Jaroslaw Staniek <js@iidea.pl>
5
6 This library is free software; you can redistribute it and/or
7 modify it under the terms of the GNU Library General Public
8 License as published by the Free Software Foundation; either
9 version 2 of the License, or (at your option) any later version.
10
11 This library is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 Library General Public License for more details.
15
16 You should have received a copy of the GNU Library General Public License
17 along with this library; see the file COPYING.LIB. If not, write to
18 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19 * Boston, MA 02110-1301, USA.
20*/
21
22#ifndef KPROPERTY_BOOLEDIT_H
23#define KPROPERTY_BOOLEDIT_H
24
25#include "../widget.h"
26#include "combobox.h"
27#include <tqpixmap.h>
28
29class TQToolButton;
30
31namespace KoProperty {
32
33class KOPROPERTY_EXPORT BoolEdit : public Widget
34{
35 TQ_OBJECT
36
37
38 public:
39 BoolEdit(Property *property, TQWidget *parent=0, const char *name=0);
40 virtual ~BoolEdit();
41
42 virtual TQVariant value() const;
43 virtual void setValue(const TQVariant &value, bool emitChange=true);
44 virtual void drawViewer(TQPainter *p, const TQColorGroup &cg, const TQRect &r, const TQVariant &value);
45
46 protected slots:
47 void slotValueChanged(int state);
48
49 protected:
50 virtual void setReadOnlyInternal(bool readOnly);
51 void setState(int state);
52 virtual void resizeEvent(TQResizeEvent *ev);
53 virtual bool eventFilter(TQObject* watched, TQEvent* e);
54
55 private:
56 TQToolButton *m_toggle;
57 TQPixmap m_yesIcon, m_noIcon;
58};
59
60class KOPROPERTY_EXPORT ThreeStateBoolEdit : public ComboBox
61{
62 TQ_OBJECT
63
64
65 public:
66 ThreeStateBoolEdit(Property *property, TQWidget *parent=0, const char *name=0);
67 virtual ~ThreeStateBoolEdit();
68
69 virtual TQVariant value() const;
70 virtual void setValue(const TQVariant &value, bool emitChange=true);
71
72 virtual void setProperty(Property *property);
73 virtual void drawViewer(TQPainter *p, const TQColorGroup &cg, const TQRect &r, const TQVariant &value);
74 TQPixmap m_yesIcon, m_noIcon;
75};
76
77}
78
79#endif
The base class for all item editors used in Editor.
Definition widget.h:37
Namespace for a set of classes implementing generic properties framework.