00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
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 addFunction("type", &KexiDBField::type);
00032 addFunction("setType", &KexiDBField::setType,
00033 Kross::Api::ArgumentList() << Kross::Api::Argument("Kross::Api::Variant::String"));
00034
00035 addFunction("variantType", &KexiDBField::variantType);
00036 addFunction("setVariantType", &KexiDBField::setVariantType,
00037 Kross::Api::ArgumentList() << Kross::Api::Argument("Kross::Api::Variant::String"));
00038
00039 addFunction("subType", &KexiDBField::subType);
00040 addFunction("setSubType", &KexiDBField::setSubType,
00041 Kross::Api::ArgumentList() << Kross::Api::Argument("Kross::Api::Variant::String"));
00042
00043 addFunction("typeGroup", &KexiDBField::typeGroup);
00044
00045 addFunction("isAutoInc", &KexiDBField::isAutoInc);
00046 addFunction("setAutoInc", &KexiDBField::setAutoInc,
00047 Kross::Api::ArgumentList() << Kross::Api::Argument("Kross::Api::Variant::Bool"));
00048
00049 addFunction("isUniqueKey", &KexiDBField::isUniqueKey);
00050 addFunction("setUniqueKey", &KexiDBField::setUniqueKey,
00051 Kross::Api::ArgumentList() << Kross::Api::Argument("Kross::Api::Variant::Bool"));
00052
00053 addFunction("isPrimaryKey", &KexiDBField::isPrimaryKey);
00054 addFunction("setPrimaryKey", &KexiDBField::setPrimaryKey,
00055 Kross::Api::ArgumentList() << Kross::Api::Argument("Kross::Api::Variant::Bool"));
00056
00057 addFunction("isForeignKey", &KexiDBField::isForeignKey);
00058 addFunction("setForeignKey", &KexiDBField::setForeignKey,
00059 Kross::Api::ArgumentList() << Kross::Api::Argument("Kross::Api::Variant::Bool"));
00060
00061 addFunction("isNotNull", &KexiDBField::isNotNull);
00062 addFunction("setNotNull", &KexiDBField::setNotNull,
00063 Kross::Api::ArgumentList() << Kross::Api::Argument("Kross::Api::Variant::Bool"));
00064
00065 addFunction("isNotEmpty", &KexiDBField::isNotEmpty);
00066 addFunction("setNotEmpty", &KexiDBField::setNotEmpty,
00067 Kross::Api::ArgumentList() << Kross::Api::Argument("Kross::Api::Variant::Bool"));
00068
00069 addFunction("isIndexed", &KexiDBField::isIndexed);
00070 addFunction("setIndexed", &KexiDBField::setIndexed);
00071
00072 addFunction("isUnsigned", &KexiDBField::isUnsigned);
00073 addFunction("setUnsigned", &KexiDBField::setUnsigned,
00074 Kross::Api::ArgumentList() << Kross::Api::Argument("Kross::Api::Variant::Bool"));
00075
00076 addFunction("name", &KexiDBField::name);
00077 addFunction("setName", &KexiDBField::setName,
00078 Kross::Api::ArgumentList() << Kross::Api::Argument("Kross::Api::Variant::String"));
00079
00080 addFunction("caption", &KexiDBField::caption);
00081 addFunction("setCaption", &KexiDBField::setCaption,
00082 Kross::Api::ArgumentList() << Kross::Api::Argument("Kross::Api::Variant::String"));
00083
00084 addFunction("description", &KexiDBField::description);
00085 addFunction("setDescription", &KexiDBField::setDescription,
00086 Kross::Api::ArgumentList() << Kross::Api::Argument("Kross::Api::Variant::String"));
00087
00088 addFunction("length", &KexiDBField::length);
00089 addFunction("setLength", &KexiDBField::setLength,
00090 Kross::Api::ArgumentList() << Kross::Api::Argument("Kross::Api::Variant::UInt"));
00091
00092 addFunction("precision", &KexiDBField::precision);
00093 addFunction("setPrecision", &KexiDBField::setPrecision,
00094 Kross::Api::ArgumentList() << Kross::Api::Argument("Kross::Api::Variant::UInt"));
00095
00096 addFunction("width", &KexiDBField::width);
00097 addFunction("setWidth", &KexiDBField::setWidth,
00098 Kross::Api::ArgumentList() << Kross::Api::Argument("Kross::Api::Variant::UInt"));
00099
00100 addFunction("defaultValue", &KexiDBField::defaultValue);
00101 addFunction("setDefaultValue", &KexiDBField::setDefaultValue,
00102 Kross::Api::ArgumentList() << Kross::Api::Argument("Kross::Api::Variant"));
00103 }
00104
00105 KexiDBField::~KexiDBField()
00106 {
00107 }
00108
00109 const QString KexiDBField::getClassName() const
00110 {
00111 return "Kross::KexiDB::KexiDBField";
00112 }
00113
00114 Kross::Api::Object::Ptr KexiDBField::type(Kross::Api::List::Ptr)
00115 {
00116 return new Kross::Api::Variant(m_field->typeString());
00117 }
00118
00119 Kross::Api::Object::Ptr KexiDBField::setType(Kross::Api::List::Ptr args)
00120 {
00121 m_field->setType(
00122 ::KexiDB::Field::typeForString(Kross::Api::Variant::toString(args->item(0)))
00123 );
00124 return type(args);
00125 }
00126
00127 Kross::Api::Object::Ptr KexiDBField::variantType(Kross::Api::List::Ptr)
00128 {
00129 return new Kross::Api::Variant(m_field->typeString());
00130 }
00131
00132 Kross::Api::Object::Ptr KexiDBField::setVariantType(Kross::Api::List::Ptr args)
00133 {
00134 m_field->setType(
00135 ::KexiDB::Field::typeForString(Kross::Api::Variant::toString(args->item(0)))
00136 );
00137 return type(args);
00138 }
00139
00140 Kross::Api::Object::Ptr KexiDBField::subType(Kross::Api::List::Ptr)
00141 {
00142 return new Kross::Api::Variant(m_field->subType());
00143 }
00144
00145 Kross::Api::Object::Ptr KexiDBField::setSubType(Kross::Api::List::Ptr args)
00146 {
00147 m_field->setSubType(Kross::Api::Variant::toString(args->item(0)));
00148 return subType(args);
00149 }
00150
00151 Kross::Api::Object::Ptr KexiDBField::typeGroup(Kross::Api::List::Ptr)
00152 {
00153 return new Kross::Api::Variant(m_field->typeGroupString());
00154 }
00155
00156 Kross::Api::Object::Ptr KexiDBField::isAutoInc(Kross::Api::List::Ptr)
00157 {
00158 return new Kross::Api::Variant(QVariant(m_field->isAutoIncrement(),0));
00159 }
00160
00161 Kross::Api::Object::Ptr KexiDBField::setAutoInc(Kross::Api::List::Ptr args)
00162 {
00163 m_field->setAutoIncrement(Kross::Api::Variant::toBool(args->item(0)));
00164 return isAutoInc(args);
00165 }
00166
00167 Kross::Api::Object::Ptr KexiDBField::isUniqueKey(Kross::Api::List::Ptr)
00168 {
00169 return new Kross::Api::Variant(QVariant(m_field->isUniqueKey(),0));
00170 }
00171
00172 Kross::Api::Object::Ptr KexiDBField::setUniqueKey(Kross::Api::List::Ptr args)
00173 {
00174 m_field->setUniqueKey(Kross::Api::Variant::toBool(args->item(0)));
00175 return isUniqueKey(args);
00176 }
00177
00178 Kross::Api::Object::Ptr KexiDBField::isPrimaryKey(Kross::Api::List::Ptr)
00179 {
00180 return new Kross::Api::Variant(QVariant(m_field->isPrimaryKey(),0));
00181 }
00182
00183 Kross::Api::Object::Ptr KexiDBField::setPrimaryKey(Kross::Api::List::Ptr args)
00184 {
00185 m_field->setPrimaryKey(Kross::Api::Variant::toBool(args->item(0)));
00186 return isPrimaryKey(args);
00187 }
00188
00189 Kross::Api::Object::Ptr KexiDBField::isForeignKey(Kross::Api::List::Ptr)
00190 {
00191 return new Kross::Api::Variant(QVariant(m_field->isForeignKey(),0));
00192 }
00193
00194 Kross::Api::Object::Ptr KexiDBField::setForeignKey(Kross::Api::List::Ptr args)
00195 {
00196 m_field->setForeignKey(Kross::Api::Variant::toBool(args->item(0)));
00197 return isForeignKey(args);
00198 }
00199
00200 Kross::Api::Object::Ptr KexiDBField::isNotNull(Kross::Api::List::Ptr)
00201 {
00202 return new Kross::Api::Variant(QVariant(m_field->isNotNull(),0));
00203 }
00204
00205 Kross::Api::Object::Ptr KexiDBField::setNotNull(Kross::Api::List::Ptr args)
00206 {
00207 m_field->setNotNull(Kross::Api::Variant::toBool(args->item(0)));
00208 return isNotNull(args);
00209 }
00210
00211 Kross::Api::Object::Ptr KexiDBField::isNotEmpty(Kross::Api::List::Ptr)
00212 {
00213 return new Kross::Api::Variant(QVariant(m_field->isNotEmpty(),0));
00214 }
00215
00216 Kross::Api::Object::Ptr KexiDBField::setNotEmpty(Kross::Api::List::Ptr args)
00217 {
00218 m_field->setNotEmpty(Kross::Api::Variant::toBool(args->item(0)));
00219 return isNotEmpty(args);
00220 }
00221
00222 Kross::Api::Object::Ptr KexiDBField::isIndexed(Kross::Api::List::Ptr)
00223 {
00224 return new Kross::Api::Variant(QVariant(m_field->isIndexed(),0));
00225 }
00226
00227 Kross::Api::Object::Ptr KexiDBField::setIndexed(Kross::Api::List::Ptr args)
00228 {
00229 m_field->setIndexed(Kross::Api::Variant::toBool(args->item(0)));
00230 return isIndexed(args);
00231 }
00232
00233 Kross::Api::Object::Ptr KexiDBField::isUnsigned(Kross::Api::List::Ptr)
00234 {
00235 return new Kross::Api::Variant(QVariant(m_field->isUnsigned(),0));
00236 }
00237
00238 Kross::Api::Object::Ptr KexiDBField::setUnsigned(Kross::Api::List::Ptr args)
00239 {
00240 m_field->setUnsigned(Kross::Api::Variant::toBool(args->item(0)));
00241 return isUnsigned(args);
00242 }
00243
00244 Kross::Api::Object::Ptr KexiDBField::name(Kross::Api::List::Ptr)
00245 {
00246 return new Kross::Api::Variant(m_field->name());
00247 }
00248
00249 Kross::Api::Object::Ptr KexiDBField::setName(Kross::Api::List::Ptr args)
00250 {
00251 m_field->setName(Kross::Api::Variant::toString(args->item(0)));
00252 return name(args);
00253 }
00254
00255 Kross::Api::Object::Ptr KexiDBField::caption(Kross::Api::List::Ptr)
00256 {
00257 return new Kross::Api::Variant(m_field->caption());
00258 }
00259
00260 Kross::Api::Object::Ptr KexiDBField::setCaption(Kross::Api::List::Ptr args)
00261 {
00262 m_field->setCaption(Kross::Api::Variant::toString(args->item(0)));
00263 return caption(args);
00264 }
00265
00266 Kross::Api::Object::Ptr KexiDBField::description(Kross::Api::List::Ptr)
00267 {
00268 return new Kross::Api::Variant(m_field->description());
00269 }
00270
00271 Kross::Api::Object::Ptr KexiDBField::setDescription(Kross::Api::List::Ptr args)
00272 {
00273 m_field->setDescription(Kross::Api::Variant::toString(args->item(0)));
00274 return description(args);
00275 }
00276
00277 Kross::Api::Object::Ptr KexiDBField::length(Kross::Api::List::Ptr)
00278 {
00279 return new Kross::Api::Variant(m_field->length());
00280 }
00281
00282 Kross::Api::Object::Ptr KexiDBField::setLength(Kross::Api::List::Ptr args)
00283 {
00284 m_field->setLength(Kross::Api::Variant::toUInt(args->item(0)));
00285 return length(args);
00286 }
00287
00288 Kross::Api::Object::Ptr KexiDBField::precision(Kross::Api::List::Ptr)
00289 {
00290 return new Kross::Api::Variant(m_field->precision());
00291 }
00292
00293 Kross::Api::Object::Ptr KexiDBField::setPrecision(Kross::Api::List::Ptr args)
00294 {
00295 m_field->setPrecision(Kross::Api::Variant::toUInt(args->item(0)));
00296 return precision(args);
00297 }
00298
00299 Kross::Api::Object::Ptr KexiDBField::width(Kross::Api::List::Ptr)
00300 {
00301 return new Kross::Api::Variant(m_field->width());
00302 }
00303
00304 Kross::Api::Object::Ptr KexiDBField::setWidth(Kross::Api::List::Ptr args)
00305 {
00306 m_field->setWidth(Kross::Api::Variant::toUInt(args->item(0)));
00307 return width(args);
00308 }
00309
00310 Kross::Api::Object::Ptr KexiDBField::defaultValue(Kross::Api::List::Ptr)
00311 {
00312 return new Kross::Api::Variant(m_field->defaultValue());
00313 }
00314
00315 Kross::Api::Object::Ptr KexiDBField::setDefaultValue(Kross::Api::List::Ptr args)
00316 {
00317 m_field->setDefaultValue(Kross::Api::Variant::toVariant(args->item(0)));
00318 return defaultValue(args);
00319 }
00320