lib
widget.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef KPROPERTY_PROPERTYWIDGET_H
00022 #define KPROPERTY_PROPERTYWIDGET_H
00023
00024 #include <qwidget.h>
00025 #include "koproperty_global.h"
00026
00027 namespace KoProperty {
00028
00029 class WidgetPrivate;
00030 class Property;
00031
00036 class KOPROPERTY_EXPORT Widget : public QWidget
00037 {
00038 Q_OBJECT
00039
00040 public:
00041 Widget(Property *property, QWidget *parent, const char *name="property_editor");
00042 virtual ~Widget();
00043
00045 virtual QVariant value() const = 0;
00046
00049 virtual void setValue(const QVariant &value, bool emitChange=true) = 0;
00050
00052 virtual Property* property() const;
00053
00055 virtual void setProperty(Property *property);
00056
00058 virtual void drawViewer(QPainter *p, const QColorGroup &cg, const QRect &r, const QVariant &value);
00059
00061 virtual void undo();
00062
00064 void setFocusWidget(QWidget*focusProxy);
00065
00067 bool leavesTheSpaceForRevertButton() const;
00068
00071 bool hasBorders() const;
00072
00078 bool isReadOnly() const;
00079
00083 void setReadOnly(bool readOnly);
00084
00087 bool visibleFlag() const;
00088
00089 signals:
00090 void valueChanged(Widget *widget);
00091 void acceptInput(Widget *widget);
00092 void rejectInput(Widget *widget);
00093
00094 protected:
00095 void setEditor(QWidget* editor);
00096
00098 virtual bool eventFilter(QObject* watched, QEvent* e);
00099
00100 virtual void resizeEvent(QResizeEvent *e);
00101
00102 void setLeavesTheSpaceForRevertButton(bool set);
00103 void setHasBorders(bool set);
00104
00107 virtual void setReadOnlyInternal(bool readOnly) = 0;
00108
00112 void setVisibleFlag(bool visible);
00113
00114 protected:
00115 WidgetPrivate *d;
00116 };
00117
00118 }
00119
00120 #endif
|