kexi
dbobjectnamevalidator.cpp00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #include "dbobjectnamevalidator.h"
00021
00022 #include "driver.h"
00023
00024 using namespace KexiDB;
00025 using namespace KexiUtils;
00026
00027 ObjectNameValidator::ObjectNameValidator(
00028 KexiDB::Driver *drv, QObject * parent, const char * name)
00029 : Validator(parent,name)
00030 {
00031 m_drv = drv;
00032 }
00033
00034 ObjectNameValidator::~ObjectNameValidator()
00035 {
00036 }
00037
00038 Validator::Result ObjectNameValidator::internalCheck(
00039 const QString & , const QVariant& v,
00040 QString &message, QString &details)
00041 {
00042
00043 if (m_drv.isNull() ? !KexiDB::Driver::isKexiDBSystemObjectName(v.toString())
00044 : !m_drv->isSystemObjectName(v.toString()))
00045 return Validator::Ok;
00046 message = i18n("You cannot use name \"%1\" for your object.\n"
00047 "It is reserved for internal Kexi objects. Please choose another name.")
00048 .arg(v.toString());
00049 details = i18n("Names of internal Kexi objects are starting with \"kexi__\".");
00050 return Validator::Error;
00051 }
|