kexi

kexidbfield.cpp

00001 /***************************************************************************
00002  * kexidbfield.cpp
00003  * This file is part of the KDE project
00004  * copyright (C)2004-2005 by Sebastian Sauer (mail@dipe.org)
00005  *
00006  * This program is free software; you can redistribute it and/or
00007  * modify it under the terms of the GNU Library General Public
00008  * License as published by the Free Software Foundation; either
00009  * version 2 of the License, or (at your option) any later version.
00010  * This program is distributed in the hope that it will be useful,
00011  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00012  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00013  * Library General Public License for more details.
00014  * You should have received a copy of the GNU Library General Public License
00015  * along with this program; see the file COPYING.  If not, write to
00016  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00017  * Boston, MA 02110-1301, USA.
00018  ***************************************************************************/
00019 
00020 
00021 #include "kexidbfield.h"
00022 
00023 #include <api/variant.h>
00024 
00025 using namespace Kross::KexiDB;
00026 
00027 KexiDBField::KexiDBField(::KexiDB::Field* field)
00028     : Kross::Api::Class<KexiDBField>("KexiDBField")
00029     , m_field(field)
00030 {
00031     this->addFunction0< Kross::Api::Variant >("type", this, &KexiDBField::type);
00032     this->addFunction1< void, Kross::Api::Variant >("setType", this, &KexiDBField::setType);
00033 
00034     this->addFunction0< Kross::Api::Variant >("subType", this, &KexiDBField::subType);
00035     this->addFunction1< void, Kross::Api::Variant >("setSubType", this, &KexiDBField::setSubType);
00036 
00037     this->addFunction0< Kross::Api::Variant >("variantType", this, &KexiDBField::variantType);
00038     this->addFunction0< Kross::Api::Variant >("typeGroup", this, &KexiDBField::typeGroup);
00039 
00040     this->addFunction0< Kross::Api::Variant >("isAutoInc", this, &KexiDBField::isAutoInc);
00041     this->addFunction1< void, Kross::Api::Variant >("setAutoInc", this, &KexiDBField::setAutoInc);
00042 
00043     this->addFunction0< Kross::Api::Variant >("isUniqueKey", this, &KexiDBField::isUniqueKey);
00044     this->addFunction1< void, Kross::Api::Variant >("setUniqueKey", this, &KexiDBField::setUniqueKey);
00045 
00046     this->addFunction0< Kross::Api::Variant >("isPrimaryKey", this, &KexiDBField::isPrimaryKey);
00047     this->addFunction1< void, Kross::Api::Variant >("setPrimaryKey", this, &KexiDBField::setPrimaryKey);
00048 
00049     this->addFunction0< Kross::Api::Variant >("isForeignKey", this, &KexiDBField::isForeignKey);
00050     this->addFunction1< void, Kross::Api::Variant >("setForeignKey", this, &KexiDBField::setForeignKey);
00051 
00052     this->addFunction0< Kross::Api::Variant >("isNotNull", this, &KexiDBField::isNotNull);
00053     this->addFunction1< void, Kross::Api::Variant >("setNotNull", this, &KexiDBField::setNotNull);
00054 
00055     this->addFunction0< Kross::Api::Variant >("isNotEmpty", this, &KexiDBField::isNotEmpty);
00056     this->addFunction1< void, Kross::Api::Variant >("setNotEmpty", this, &KexiDBField::setNotEmpty);
00057 
00058     this->addFunction0< Kross::Api::Variant >("isIndexed", this, &KexiDBField::isIndexed);
00059     this->addFunction1< void, Kross::Api::Variant >("setIndexed", this, &KexiDBField::setIndexed);
00060 
00061     this->addFunction0< Kross::Api::Variant >("isUnsigned", this, &KexiDBField::isUnsigned);
00062     this->addFunction1< void, Kross::Api::Variant >("setUnsigned", this, &KexiDBField::setUnsigned);
00063 
00064     this->addFunction0< Kross::Api::Variant >("name", this, &KexiDBField::name);
00065     this->addFunction1< void, Kross::Api::Variant >("setName", this, &KexiDBField::setName);
00066 
00067     this->addFunction0< Kross::Api::Variant >("caption", this, &KexiDBField::caption);
00068     this->addFunction1< void, Kross::Api::Variant >("setCaption", this, &KexiDBField::setCaption);
00069 
00070     this->addFunction0< Kross::Api::Variant >("description", this, &KexiDBField::description);
00071     this->addFunction1< void, Kross::Api::Variant >("setDescription", this, &KexiDBField::setDescription);
00072 
00073     this->addFunction0< Kross::Api::Variant >("length", this, &KexiDBField::length);
00074     this->addFunction1< void, Kross::Api::Variant >("setLength", this, &KexiDBField::setLength);
00075 
00076     this->addFunction0< Kross::Api::Variant >("precision", this, &KexiDBField::precision);
00077     this->addFunction1< void, Kross::Api::Variant >("setPrecision", this, &KexiDBField::setPrecision);
00078 
00079     this->addFunction0< Kross::Api::Variant >("width", this, &KexiDBField::width);
00080     this->addFunction1< void, Kross::Api::Variant >("setWidth", this, &KexiDBField::setWidth);
00081 
00082     this->addFunction0< Kross::Api::Variant >("defaultValue", this, &KexiDBField::defaultValue);
00083     this->addFunction1< void, Kross::Api::Variant >("setDefaultValue", this, &KexiDBField::setDefaultValue);
00084 }
00085 
00086 KexiDBField::~KexiDBField()
00087 {
00088 }
00089 
00090 const QString KexiDBField::getClassName() const
00091 {
00092     return "Kross::KexiDB::KexiDBField";
00093 }
00094 
00095 const QString KexiDBField::type() { return m_field->typeString(); }
00096 void KexiDBField::setType(const QString type) { m_field->setType( ::KexiDB::Field::typeForString(type) ); }
00097 
00098 const QString KexiDBField::subType() { return m_field->subType(); }
00099 void KexiDBField::setSubType(const QString& subtype) { m_field->setSubType(subtype); }
00100 
00101 const QString KexiDBField::variantType() { return QVariant::typeToName( m_field->variantType() ); }
00102 const QString KexiDBField::typeGroup() { return m_field->typeGroupString(); }
00103 
00104 bool KexiDBField::isAutoInc() { return m_field->isAutoIncrement(); }
00105 void KexiDBField::setAutoInc(bool autoinc) { m_field->setAutoIncrement(autoinc); }
00106 
00107 bool KexiDBField::isUniqueKey() { return m_field->isUniqueKey(); }
00108 void KexiDBField::setUniqueKey(bool unique) { m_field->setUniqueKey(unique); }
00109 
00110 bool KexiDBField::isPrimaryKey() { return m_field->isPrimaryKey(); }
00111 void KexiDBField::setPrimaryKey(bool primary) { m_field->setPrimaryKey(primary); }
00112 
00113 bool KexiDBField::isForeignKey() { return m_field->isForeignKey(); }
00114 void KexiDBField::setForeignKey(bool foreign) { m_field->setForeignKey(foreign); }
00115 
00116 bool KexiDBField::isNotNull() { return m_field->isNotNull(); }
00117 void KexiDBField::setNotNull(bool notnull) { m_field->setNotNull(notnull); }
00118 
00119 bool KexiDBField::isNotEmpty() { return m_field->isNotEmpty(); }
00120 void KexiDBField::setNotEmpty(bool notempty) { m_field->setNotEmpty(notempty); }
00121 
00122 bool KexiDBField::isIndexed() { return m_field->isIndexed(); }
00123 void KexiDBField::setIndexed(bool indexed) { m_field->setIndexed(indexed); }
00124 
00125 bool KexiDBField::isUnsigned() { return m_field->isUnsigned(); }
00126 void KexiDBField::setUnsigned(bool isunsigned) { m_field->setUnsigned(isunsigned); }
00127 
00128 const QString KexiDBField::name() { return m_field->name(); }
00129 void KexiDBField::setName(const QString& name) { m_field->setName(name); }
00130 
00131 const QString KexiDBField::caption() { return m_field->caption(); }
00132 void KexiDBField::setCaption(const QString& caption) { m_field->setCaption(caption); }
00133 
00134 const QString KexiDBField::description() { return m_field->description(); }
00135 void KexiDBField::setDescription(const QString& desc) { m_field->setDescription(desc); }
00136 
00137 uint KexiDBField::length() { return m_field->length(); }
00138 void KexiDBField::setLength(uint length) { m_field->setLength(length); }
00139 
00140 uint KexiDBField::precision() { return m_field->precision(); }
00141 void KexiDBField::setPrecision(uint precision) { m_field->setPrecision(precision); }
00142 
00143 uint KexiDBField::width() { return m_field->width(); }
00144 void KexiDBField::setWidth(uint width) { m_field->setWidth(width); }
00145 
00146 QVariant KexiDBField::defaultValue() { return m_field->defaultValue(); }
00147 void KexiDBField::setDefaultValue(const QVariant& defaultvalue) { m_field->setDefaultValue(defaultvalue); }
KDE Home | KDE Accessibility Home | Description of Access Keys