diff options
Diffstat (limited to 'kexi/plugins/scripting/kexidb/kexidbfield.cpp')
-rw-r--r-- | kexi/plugins/scripting/kexidb/kexidbfield.cpp | 147 |
1 files changed, 147 insertions, 0 deletions
diff --git a/kexi/plugins/scripting/kexidb/kexidbfield.cpp b/kexi/plugins/scripting/kexidb/kexidbfield.cpp new file mode 100644 index 00000000..949b5e1a --- /dev/null +++ b/kexi/plugins/scripting/kexidb/kexidbfield.cpp @@ -0,0 +1,147 @@ +/*************************************************************************** + * kexidbfield.cpp + * This file is part of the KDE project + * copyright (C)2004-2005 by Sebastian Sauer (mail@dipe.org) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * You should have received a copy of the GNU Library General Public License + * along with this program; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + ***************************************************************************/ + + +#include "kexidbfield.h" + +#include <api/variant.h> + +using namespace Kross::KexiDB; + +KexiDBField::KexiDBField(::KexiDB::Field* field) + : Kross::Api::Class<KexiDBField>("KexiDBField") + , m_field(field) +{ + this->addFunction0< Kross::Api::Variant >("type", this, &KexiDBField::type); + this->addFunction1< void, Kross::Api::Variant >("setType", this, &KexiDBField::setType); + + this->addFunction0< Kross::Api::Variant >("subType", this, &KexiDBField::subType); + this->addFunction1< void, Kross::Api::Variant >("setSubType", this, &KexiDBField::setSubType); + + this->addFunction0< Kross::Api::Variant >("variantType", this, &KexiDBField::variantType); + this->addFunction0< Kross::Api::Variant >("typeGroup", this, &KexiDBField::typeGroup); + + this->addFunction0< Kross::Api::Variant >("isAutoInc", this, &KexiDBField::isAutoInc); + this->addFunction1< void, Kross::Api::Variant >("setAutoInc", this, &KexiDBField::setAutoInc); + + this->addFunction0< Kross::Api::Variant >("isUniqueKey", this, &KexiDBField::isUniqueKey); + this->addFunction1< void, Kross::Api::Variant >("setUniqueKey", this, &KexiDBField::setUniqueKey); + + this->addFunction0< Kross::Api::Variant >("isPrimaryKey", this, &KexiDBField::isPrimaryKey); + this->addFunction1< void, Kross::Api::Variant >("setPrimaryKey", this, &KexiDBField::setPrimaryKey); + + this->addFunction0< Kross::Api::Variant >("isForeignKey", this, &KexiDBField::isForeignKey); + this->addFunction1< void, Kross::Api::Variant >("setForeignKey", this, &KexiDBField::setForeignKey); + + this->addFunction0< Kross::Api::Variant >("isNotNull", this, &KexiDBField::isNotNull); + this->addFunction1< void, Kross::Api::Variant >("setNotNull", this, &KexiDBField::setNotNull); + + this->addFunction0< Kross::Api::Variant >("isNotEmpty", this, &KexiDBField::isNotEmpty); + this->addFunction1< void, Kross::Api::Variant >("setNotEmpty", this, &KexiDBField::setNotEmpty); + + this->addFunction0< Kross::Api::Variant >("isIndexed", this, &KexiDBField::isIndexed); + this->addFunction1< void, Kross::Api::Variant >("setIndexed", this, &KexiDBField::setIndexed); + + this->addFunction0< Kross::Api::Variant >("isUnsigned", this, &KexiDBField::isUnsigned); + this->addFunction1< void, Kross::Api::Variant >("setUnsigned", this, &KexiDBField::setUnsigned); + + this->addFunction0< Kross::Api::Variant >("name", this, &KexiDBField::name); + this->addFunction1< void, Kross::Api::Variant >("setName", this, &KexiDBField::setName); + + this->addFunction0< Kross::Api::Variant >("caption", this, &KexiDBField::caption); + this->addFunction1< void, Kross::Api::Variant >("setCaption", this, &KexiDBField::setCaption); + + this->addFunction0< Kross::Api::Variant >("description", this, &KexiDBField::description); + this->addFunction1< void, Kross::Api::Variant >("setDescription", this, &KexiDBField::setDescription); + + this->addFunction0< Kross::Api::Variant >("length", this, &KexiDBField::length); + this->addFunction1< void, Kross::Api::Variant >("setLength", this, &KexiDBField::setLength); + + this->addFunction0< Kross::Api::Variant >("precision", this, &KexiDBField::precision); + this->addFunction1< void, Kross::Api::Variant >("setPrecision", this, &KexiDBField::setPrecision); + + this->addFunction0< Kross::Api::Variant >("width", this, &KexiDBField::width); + this->addFunction1< void, Kross::Api::Variant >("setWidth", this, &KexiDBField::setWidth); + + this->addFunction0< Kross::Api::Variant >("defaultValue", this, &KexiDBField::defaultValue); + this->addFunction1< void, Kross::Api::Variant >("setDefaultValue", this, &KexiDBField::setDefaultValue); +} + +KexiDBField::~KexiDBField() +{ +} + +const QString KexiDBField::getClassName() const +{ + return "Kross::KexiDB::KexiDBField"; +} + +const QString KexiDBField::type() { return m_field->typeString(); } +void KexiDBField::setType(const QString type) { m_field->setType( ::KexiDB::Field::typeForString(type) ); } + +const QString KexiDBField::subType() { return m_field->subType(); } +void KexiDBField::setSubType(const QString& subtype) { m_field->setSubType(subtype); } + +const QString KexiDBField::variantType() { return QVariant::typeToName( m_field->variantType() ); } +const QString KexiDBField::typeGroup() { return m_field->typeGroupString(); } + +bool KexiDBField::isAutoInc() { return m_field->isAutoIncrement(); } +void KexiDBField::setAutoInc(bool autoinc) { m_field->setAutoIncrement(autoinc); } + +bool KexiDBField::isUniqueKey() { return m_field->isUniqueKey(); } +void KexiDBField::setUniqueKey(bool unique) { m_field->setUniqueKey(unique); } + +bool KexiDBField::isPrimaryKey() { return m_field->isPrimaryKey(); } +void KexiDBField::setPrimaryKey(bool primary) { m_field->setPrimaryKey(primary); } + +bool KexiDBField::isForeignKey() { return m_field->isForeignKey(); } +void KexiDBField::setForeignKey(bool foreign) { m_field->setForeignKey(foreign); } + +bool KexiDBField::isNotNull() { return m_field->isNotNull(); } +void KexiDBField::setNotNull(bool notnull) { m_field->setNotNull(notnull); } + +bool KexiDBField::isNotEmpty() { return m_field->isNotEmpty(); } +void KexiDBField::setNotEmpty(bool notempty) { m_field->setNotEmpty(notempty); } + +bool KexiDBField::isIndexed() { return m_field->isIndexed(); } +void KexiDBField::setIndexed(bool indexed) { m_field->setIndexed(indexed); } + +bool KexiDBField::isUnsigned() { return m_field->isUnsigned(); } +void KexiDBField::setUnsigned(bool isunsigned) { m_field->setUnsigned(isunsigned); } + +const QString KexiDBField::name() { return m_field->name(); } +void KexiDBField::setName(const QString& name) { m_field->setName(name); } + +const QString KexiDBField::caption() { return m_field->caption(); } +void KexiDBField::setCaption(const QString& caption) { m_field->setCaption(caption); } + +const QString KexiDBField::description() { return m_field->description(); } +void KexiDBField::setDescription(const QString& desc) { m_field->setDescription(desc); } + +uint KexiDBField::length() { return m_field->length(); } +void KexiDBField::setLength(uint length) { m_field->setLength(length); } + +uint KexiDBField::precision() { return m_field->precision(); } +void KexiDBField::setPrecision(uint precision) { m_field->setPrecision(precision); } + +uint KexiDBField::width() { return m_field->width(); } +void KexiDBField::setWidth(uint width) { m_field->setWidth(width); } + +QVariant KexiDBField::defaultValue() { return m_field->defaultValue(); } +void KexiDBField::setDefaultValue(const QVariant& defaultvalue) { m_field->setDefaultValue(defaultvalue); } |