00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #ifndef ADATAFIELD_H
00031 #define ADATAFIELD_H
00032
00033
00034 #include <qobject.h>
00035 #include <qvariant.h>
00036 #include "ananasglobal.h"
00037 #include "acfg.h"
00038
00039
00040
00041
00042
00043
00044
00060 class ANANAS_EXPORT aDataField : public QObject
00061 {
00062 Q_OBJECT
00063
00064
00065
00066 public:
00067
00068 aCfgItem context;
00069 long id;
00070 aCfg *md;
00071 bool fSys;
00072 int Width, Dec;
00073 QString Name, fType;
00074 char aType;
00075 QVariant::Type Type;
00076
00077 int oType;
00078
00079
00080
00081 aDataField( QObject *parent, const QString &fname = QString::null, const QString &ftype = QString::null );
00082 aDataField( const QString &fname = QString::null, const QString &ftype = QString::null );
00083 aDataField( const aDataField &field );
00084 ~aDataField();
00085
00086 aDataField& operator=( const aDataField& other );
00087 bool operator==( const aDataField& other ) const;
00088 bool operator!=( const aDataField& other ) const;
00089
00090
00091
00092 virtual QVariant internalValue();
00093 virtual void setInternalValue( const QVariant &value);
00094 public slots:
00095 virtual QString fieldName() const;
00096 virtual int ObjectType();
00097 virtual QVariant value();
00098 virtual void setValue( const QVariant &value);
00099 private:
00100 QVariant fieldData;
00101
00102 void init( const QString &fname = QString::null, const QString &ftype = QString::null );
00103 };
00104
00105
00106 #endif