20#include "kexidbfieldlist.h"
21#include "kexidbfield.h"
23#include <api/variant.h>
24#include <api/exception.h>
32 , m_fieldlist(fieldlist)
34 this->addFunction0< Kross::Api::Variant >(
"fieldCount",
this, &KexiDBFieldList::fieldCount);
35 this->addFunction1< KexiDBField, Kross::Api::Variant >(
"field",
this, &KexiDBFieldList::field);
36 this->addFunction1< KexiDBField, Kross::Api::Variant >(
"fieldByName",
this, &KexiDBFieldList::fieldByName);
38 this->addFunction0< Kross::Api::List >(
"fields",
this, &KexiDBFieldList::fields);
40 this->addFunction1< Kross::Api::Variant, KexiDBField >(
"hasField",
this, &KexiDBFieldList::hasField);
41 this->addFunction0< Kross::Api::Variant >(
"names",
this, &KexiDBFieldList::names);
43 this->addFunction1< void, KexiDBField >(
"addField",
this, &KexiDBFieldList::addField);
44 this->addFunction2< void, Kross::Api::Variant, KexiDBField >(
"insertField",
this, &KexiDBFieldList::insertField);
45 this->addFunction1< void, KexiDBField >(
"removeField",
this, &KexiDBFieldList::removeField);
46 this->addFunction0< void >(
"clear",
this, &KexiDBFieldList::clear);
47 this->addFunction1< void, KexiDBFieldList >(
"setFields",
this, &KexiDBFieldList::setFields);
49 this->addFunction1< KexiDBFieldList, Kross::Api::Variant >(
"subList",
this, &KexiDBFieldList::subList);
52KexiDBFieldList::~KexiDBFieldList()
56const TQString KexiDBFieldList::getClassName()
const
58 return "Kross::KexiDB::KexiDBFieldList";
61uint KexiDBFieldList::fieldCount() {
62 return m_fieldlist->fieldCount();
66 ::KexiDB::Field* field = m_fieldlist->field(index);
67 return field ?
new KexiDBField(field) : 0;
70KexiDBField* KexiDBFieldList::fieldByName(
const TQString& name) {
71 ::KexiDB::Field* field = m_fieldlist->field(name);
72 return field ?
new KexiDBField(field) : 0;
75Kross::Api::List* KexiDBFieldList::fields() {
76 return new Kross::Api::ListT<KexiDBField>( *m_fieldlist->fields() );
79bool KexiDBFieldList::hasField(
KexiDBField* field) {
return m_fieldlist->hasField( field->field() ); }
80const TQStringList KexiDBFieldList::names()
const {
return m_fieldlist->names(); }
81void KexiDBFieldList::addField(
KexiDBField* field) { m_fieldlist->addField( field->field() ); }
82void KexiDBFieldList::insertField(uint index,
KexiDBField* field) { m_fieldlist->insertField(index, field->field()); }
83void KexiDBFieldList::removeField(
KexiDBField* field) { m_fieldlist->removeField( field->field() ); }
84void KexiDBFieldList::clear() { m_fieldlist->clear(); }
88 ::KexiDB::FieldList* fl = fieldlist->fieldlist();
90 m_fieldlist->addField( it.current() );
94 TQValueList<TQVariant>::ConstIterator it( list.constBegin() ), end( list.constEnd() );
96 for(; it != end; ++it) sl.append( (*it).toString() );
97 ::KexiDB::FieldList* fl = m_fieldlist->
subList(sl);
98 return fl ?
new Kross::KexiDB::KexiDBFieldList(fl) : 0;
FieldList * subList(const TQString &n1, const TQString &n2=TQString(), const TQString &n3=TQString(), const TQString &n4=TQString(), const TQString &n5=TQString(), const TQString &n6=TQString(), const TQString &n7=TQString(), const TQString &n8=TQString(), const TQString &n9=TQString(), const TQString &n10=TQString(), const TQString &n11=TQString(), const TQString &n12=TQString(), const TQString &n13=TQString(), const TQString &n14=TQString(), const TQString &n15=TQString(), const TQString &n16=TQString(), const TQString &n17=TQString(), const TQString &n18=TQString())
TQPtrListIterator< Field > ListIterator
iterator for list of fields
KrossKexiDB provides access to the KexiDB database functionality.