Aggiunto validate per controllare campi vuoti ma con input parzialmente

riempito


git-svn-id: svn://10.65.10.50/trunk@865 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
alex 1995-01-12 18:40:10 +00:00
parent 713cffa6ff
commit 4a3fda6075
2 changed files with 30 additions and 3 deletions

View File

@ -87,6 +87,7 @@
#define FILENAME_FUNC 18 0
#define ZEROFILL_FUNC 19 1
#define ALPHA_FUNC 20 0
#define NOT_EMPTY_CHECK_FIELD 21 0
#define VALEXPR VALIDATE EXPR_FUNC
#define NUM_EXPR VALEXPR 0

View File

@ -7,6 +7,7 @@
#include <mask.h>
#include <utility.h>
#include <validate.h>
#include <defmask.h>
#include <nditte.h>
@ -563,8 +564,17 @@ HIDDEN bool _chkfld_val(TEdit_field& f, KEY k)
if (f.to_check(k))
{
const int fldid = atoi(get_val_param(0));
TMask_field & chkfld = f.mask().field(fldid);
if (fldid == THIS_FIELD)
{
if (!f.required() && f.get().empty())
return TRUE;
else
return f.check();
}
TMask_field & chkfld = f.mask().field(fldid);
chkfld.set(f.get());
return chkfld.check();
}
@ -604,8 +614,23 @@ HIDDEN bool _alpha_val(TEdit_field& f, KEY k)
return TRUE;
}
HIDDEN bool _not_empty_chkfld_val(TEdit_field& f, KEY k)
{
if (!f.to_check(k) || f.get().empty())
return TRUE;
else
{
const CheckType c = f.check_type();
#define MAX_FUNC 21
f.check_type(CHECK_NORMAL);
const bool ok = f.check();
f.check_type(c);
return ok;
}
}
#define MAX_FUNC 22
HIDDEN VAL_FUNC _global_val_func[MAX_FUNC] =
{
@ -629,7 +654,8 @@ HIDDEN VAL_FUNC _global_val_func[MAX_FUNC] =
_chkfld_val,
_filename_val,
_zerofill_val,
_alpha_val
_alpha_val,
_not_empty_chkfld_val
};
bool validate(int fn, TEdit_field& f, KEY k, const TArray& parms)