[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    koffice/kexi/tableview
From:       Jaroslaw Staniek <js () iidea ! pl>
Date:       2004-09-14 20:11:03
Message-ID: 20040914201103.E72EB1701 () office ! kde ! org
[Download RAW message or body]

CVS commit by staniek: 

TableView
- convenient ctor added for KexiTableViewData


  M +16 -0     kexitableviewdata.cpp   1.33
  M +18 -0     kexitableviewdata.h   1.26


--- koffice/kexi/tableview/kexitableviewdata.cpp  #1.32:1.33
@@ -220,4 +220,20 @@ KexiTableViewData::KexiTableViewData(
         const QValueList<QVariant> &keys, const QValueList<QVariant> &values,
         KexiDB::Field::Type keyType, KexiDB::Field::Type valueType)
+        : QObject()
+        , KexiTableViewDataBase()
+{
+        init(keys, values, keyType, valueType);
+}
+
+KexiTableViewData::KexiTableViewData(
+        KexiDB::Field::Type keyType, KexiDB::Field::Type valueType)
+{
+        const QValueList<QVariant> empty;
+        init(empty, empty, keyType, valueType);
+}
+
+void KexiTableViewData::init(
+        const QValueList<QVariant> &keys, const QValueList<QVariant> &values,
+        KexiDB::Field::Type keyType, KexiDB::Field::Type valueType)
 {
         init();

--- koffice/kexi/tableview/kexitableviewdata.h  #1.25:1.26
@@ -192,4 +192,13 @@ public: 
         KexiTableViewData(KexiDB::Cursor *c);
 
+//TODO: make this more generic: allow to add more columns!
+        /*! Defines two-column table usually used with comboboxes.
+         First column is invisible and contains key values.
+         Second column and contains user-visible value.
+         @param keys a list of keys
+         @param values a list of text values (must be of the same length as keys list)
+         @param keyType a type for keys
+         @param valueType a type for values
+        */
         KexiTableViewData(
                 const QValueList<QVariant> &keys, const QValueList<QVariant> &values,
@@ -197,4 +206,10 @@ public: 
                 KexiDB::Field::Type valueType = KexiDB::Field::Text);
 
+        /*! Like above constructor, but keys and values are not provided.
+         You can do this later by calling append(KexiTableItem*) method.
+         (KexiTableItem object must have exactly two columns)
+        */
+        KexiTableViewData(KexiDB::Field::Type keyType, KexiDB::Field::Type valueType);
+
         ~KexiTableViewData();
 //js    void setSorting(int key, bool order=true, short type=1);
@@ -340,4 +355,7 @@ signals:
 protected:
         void init();
+        void init(
+                const QValueList<QVariant> &keys, const QValueList<QVariant> &values,
+                KexiDB::Field::Type keyType, KexiDB::Field::Type valueType);
 
         virtual int compareItems(Item item1, Item item2);


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic