author | mickeyl <mickeyl> | 2003-08-10 15:40:31 (UTC) |
---|---|---|
committer | mickeyl <mickeyl> | 2003-08-10 15:40:31 (UTC) |
commit | 616e919ff6aea6a30e18edb37128c229e806beae (patch) (side-by-side diff) | |
tree | 31e36f7d631b3dc55460aefd05bc6a455e73ace1 /libopie2/opiedb/osqltable.h | |
parent | dfcbe21d8b263c13283e226bd16596c2d7c2f9a3 (diff) | |
download | opie-616e919ff6aea6a30e18edb37128c229e806beae.zip opie-616e919ff6aea6a30e18edb37128c229e806beae.tar.gz opie-616e919ff6aea6a30e18edb37128c229e806beae.tar.bz2 |
merge zeckes libsql into libopie2
-rw-r--r-- | libopie2/opiedb/osqltable.h | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/libopie2/opiedb/osqltable.h b/libopie2/opiedb/osqltable.h new file mode 100644 index 0000000..87f7e74 --- a/dev/null +++ b/libopie2/opiedb/osqltable.h @@ -0,0 +1,95 @@ +#ifndef OSQL_TABLE_H +#define OSQL_TABLE_H + +#include <qstring.h> +#include <qvaluelist.h> +#include <qvariant.h> + +/** + * OSQLTableItem saves one column of a complete + * table + */ +class OSQLTableItem { +public: + typedef QValueList<OSQLTableItem> ValueList; + /** + * Type kinds ( to be extended ) + */ + enum Type { Undefined=-1, Integer=0, BigInteger =1, + Float = 2, VarChar = 4 }; + /** + * A constructor + * @param type the Type of the Column + * @param fieldName the Name of the Column + * @param var a Variant + */ + OSQLTableItem(); + OSQLTableItem( enum Type type, + const QString& fieldName, + const QVariant& var= QVariant() ); + + /** + * copy c'tor + */ + OSQLTableItem( const OSQLTableItem& ); + + /** + * d'tor + */ + ~OSQLTableItem(); + + OSQLTableItem& operator=( const OSQLTableItem& ); + + /** + * the fieldName + */ + QString fieldName() const; + + /** + * the field Type + */ + Type type() const; + QVariant more() const; +private: + class OSQLTableItemPrivate; + OSQLTableItemPrivate* d; + Type m_type; + QString m_field; + QVariant m_var; +}; + +/** + * A OSQLTable consists of OSQLTableItems + */ +class OSQLTable { +public: + typedef QValueList<OSQLTable> ValueList; + + /** + * @param tableName the Name of the Table + */ + OSQLTable(const QString& tableName); + + /** + * d'tor + */ + ~OSQLTable(); + + /** + * setColumns sets the Columns of the Table + */ + void setColumns( const OSQLTableItem::ValueList& ); + + /** + * returns all columns of the table + */ + OSQLTableItem::ValueList columns() const; + + QString tableName()const; + +private: + QString m_table; + OSQLTableItem::ValueList m_list; +}; + +#endif |