kfilemetainfowidget.h
00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 #ifndef __KFILEMETAINFOWIDGET_H__
00022 #define __KFILEMETAINFOWIDGET_H__
00023 
00024 #include <qwidget.h>
00025 #include <qvariant.h>
00026 #include <kfilemetainfo.h>
00027 
00031 class KFileMetaInfoWidget: public QWidget
00032 {
00033     Q_OBJECT
00034 public:
00035     KFileMetaInfoWidget(KFileMetaInfoItem item, QValidator* val = 0,
00036                         QWidget* parent = 0, const char* name = 0);
00037     virtual ~KFileMetaInfoWidget();
00038 
00039     bool apply()
00040     {
00041         return m_item.isEditable() && m_item.setValue(m_value);
00042     }
00043 
00044     void setValue(const QVariant& value)  { m_value = value;    }
00045     QVariant value()const                      { return m_value;     }
00046     QValidator* validator() const              { return m_validator; }
00047     KFileMetaInfoItem item()const              { return m_item;      }
00048 
00049 signals:
00050     void valueChanged(const QVariant& value);
00051 
00052 protected:
00053     void reparentValidator(QWidget *widget, QValidator *validator);
00054     virtual QWidget* makeWidget();
00055 
00056     QWidget* makeBoolWidget();
00057     QWidget* makeIntWidget();
00058     QWidget* makeDoubleWidget();
00059     QWidget* makeStringWidget();
00060     QWidget* makeDateWidget();
00061     QWidget* makeTimeWidget();
00062     QWidget* makeDateTimeWidget();
00063 
00064 private slots:
00065     void slotChanged(bool value);
00066     void slotChanged(int value);
00067     void slotChanged(double value);
00068     void slotComboChanged(const QString &value);
00069     void slotLineEditChanged(const QString& value);
00070     void slotMultiLineEditChanged();
00071     void slotDateChanged(const QDate& value);
00072     void slotTimeChanged(const QTime& value);
00073     void slotDateTimeChanged(const QDateTime& value);
00074 
00075 private:
00076     QVariant          m_value;  
00077     KFileMetaInfoItem m_item;
00078     QWidget*          m_widget;
00079     QValidator*       m_validator;
00080     bool              m_dirty : 1;
00081 };
00082 
00083 #endif
 
This file is part of the documentation for kio Library Version 3.2.0.