00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef KPROPERTY_PIXMAPEDIT_H
00023 #define KPROPERTY_PIXMAPEDIT_H
00024
00025 #include "../widget.h"
00026 #include <QPixmap>
00027 #include <QVariant>
00028
00029 #include <QLabel>
00030 #include <QResizeEvent>
00031 #include <QEvent>
00032
00033 class QLabel;
00034 class QPushButton;
00035
00036 namespace KoProperty {
00037
00038 class KOPROPERTY_EXPORT PixmapEdit : public Widget
00039 {
00040 Q_OBJECT
00041
00042 public:
00043 PixmapEdit(Property *property, QWidget *parent=0);
00044 virtual ~PixmapEdit();
00045
00046 virtual QVariant value() const;
00047 virtual void setValue(const QVariant &value, bool emitChange=true);
00048 virtual void drawViewer(QPainter *p, const QColorGroup &cg, const QRect &r, const QVariant &value);
00049
00050 void resizeEvent(QResizeEvent *ev);
00051 bool eventFilter(QObject *o, QEvent *ev);
00052
00053 protected:
00054 virtual void setReadOnlyInternal(bool readOnly);
00055
00056 protected slots:
00061 QString selectPixmapFileName();
00062
00064 virtual void selectPixmap();
00065
00066 protected:
00067 QLabel *m_edit;
00068 QLabel *m_popup;
00069 QPushButton *m_button;
00070 QVariant m_recentlyPainted;
00071 QPixmap m_pixmap, m_scaledPixmap, m_previewPixmap;
00072 };
00073
00074 }
00075
00076 #endif