maskfld.cpp Aggiunti validate ai list_field
msksheet.cpp Corretta gestione edit di una riga validate.cpp Trasformati in Tmask_field tutti gli edit_field validate.h Aggiornata la funzione validate di conseguenza git-svn-id: svn://10.65.10.50/trunk@1926 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
		
							parent
							
								
									34ad90a94e
								
							
						
					
					
						commit
						a050caf1cf
					
				@ -3284,7 +3284,13 @@ bool TList_field::on_key(KEY key)
 | 
				
			|||||||
  if (key == K_TAB && class_id() == CLASS_LIST_FIELD)
 | 
					  if (key == K_TAB && class_id() == CLASS_LIST_FIELD)
 | 
				
			||||||
    dispacth_e_char(win(), K_F9);
 | 
					    dispacth_e_char(win(), K_F9);
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  if (key == K_TAB || key == K_ENTER)
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					    bool ok = ::validate(_validate_func, *this, key, _validate_parms);
 | 
				
			||||||
 | 
					    if (!ok) return FALSE;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
  if (key == K_SPACE) on_hit();
 | 
					  if (key == K_SPACE) on_hit();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  return TMask_field::on_key(key);
 | 
					  return TMask_field::on_key(key);
 | 
				
			||||||
 | 
				
			|||||||
@ -541,9 +541,9 @@ void TSpreadsheet::set_focus_cell(int riga, int colonna)
 | 
				
			|||||||
        _cur_row = riga;
 | 
					        _cur_row = riga;
 | 
				
			||||||
        _cur_col = colonna;
 | 
					        _cur_col = colonna;
 | 
				
			||||||
        _cur_rec = r;
 | 
					        _cur_rec = r;
 | 
				
			||||||
        _edit_field = col2field(colonna);
 | 
					 | 
				
			||||||
        _row_dirty = FALSE;
 | 
					        _row_dirty = FALSE;
 | 
				
			||||||
      }  
 | 
					      }  
 | 
				
			||||||
 | 
					      _edit_field = col2field(colonna);
 | 
				
			||||||
      str2mask(_cur_rec);
 | 
					      str2mask(_cur_rec);
 | 
				
			||||||
    }  
 | 
					    }  
 | 
				
			||||||
  } 
 | 
					  } 
 | 
				
			||||||
@ -853,7 +853,7 @@ void TSpreadsheet::list_handler(XI_EVENT *xiev)
 | 
				
			|||||||
          _cur_rec =  items() - 1;        
 | 
					          _cur_rec =  items() - 1;        
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if (_cur_rec >= 0 && !cell_disabled(_cur_rec, _cur_col-1))
 | 
					    if (_cur_rec >= 0)
 | 
				
			||||||
      set_focus_cell(_cur_row, _cur_col);
 | 
					      set_focus_cell(_cur_row, _cur_col);
 | 
				
			||||||
    _check_enabled = TRUE;
 | 
					    _check_enabled = TRUE;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
@ -918,9 +918,14 @@ void TSpreadsheet::list_handler(XI_EVENT *xiev)
 | 
				
			|||||||
      TMask_field* f = cell2field(xiev->v.xi_obj);
 | 
					      TMask_field* f = cell2field(xiev->v.xi_obj);
 | 
				
			||||||
      const int col = (f->dlg()-FIRST_FIELD) % 100;
 | 
					      const int col = (f->dlg()-FIRST_FIELD) % 100;
 | 
				
			||||||
      if (cell_disabled(_cur_rec, col))     // If the cell is disabled ...
 | 
					      if (cell_disabled(_cur_rec, col))     // If the cell is disabled ...
 | 
				
			||||||
      {                                  
 | 
					      { 
 | 
				
			||||||
        dispatch_e_char(win(), _lastab);    // ... skip to the next one.
 | 
					        if (!cell_disabled(_cur_rec, -1))   // If the row is not disabled ...
 | 
				
			||||||
        _edit_field = NULL;
 | 
					        {
 | 
				
			||||||
 | 
					          dispatch_e_char(win(), _lastab);  // ... skip to the next one.
 | 
				
			||||||
 | 
					          _edit_field = NULL;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        else
 | 
				
			||||||
 | 
					          xiev->refused = TRUE;
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
      else
 | 
					      else
 | 
				
			||||||
      {  
 | 
					      {  
 | 
				
			||||||
@ -1461,17 +1466,24 @@ void TSpreadsheet::set_column_header(const int col, const TString&  header) cons
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// Certified 99%
 | 
					// Certified 99%
 | 
				
			||||||
// @mfunc Controlla se una cella e' disabilitata
 | 
					// @mfunc Controlla se una cella o un'intera riga e' disabilitata
 | 
				
			||||||
//
 | 
					//                                
 | 
				
			||||||
// @rdesc Ritorna lo stato della cella indicate:
 | 
					// @rdesc Se column e' minore di zero si considera l'intera riga
 | 
				
			||||||
 | 
					// @rdesc Ritorna lo stato della cella indicata:
 | 
				
			||||||
//
 | 
					//
 | 
				
			||||||
// @flag TRUE | Se la cella e' disabilitata
 | 
					// @flag TRUE | Se la cella e' disabilitata
 | 
				
			||||||
// @flag FALSE| Se la cella e' abilitata
 | 
					// @flag FALSE| Se la cella e' abilitata
 | 
				
			||||||
bool TSpreadsheet::cell_disabled(int row, int column) const
 | 
					bool TSpreadsheet::cell_disabled(int row, int column) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  TBit_array* ba = (TBit_array*)_disabled.objptr(row);
 | 
					  TBit_array* ba = (TBit_array*)_disabled.objptr(row);
 | 
				
			||||||
  if (ba == NULL) return _column_disabled[column];  // Use default
 | 
					  
 | 
				
			||||||
  return (*ba)[column];
 | 
					  bool d;
 | 
				
			||||||
 | 
					  if (column < 0)
 | 
				
			||||||
 | 
					    d = ba == NULL ? FALSE : (ba->ones() == columns()-1); 
 | 
				
			||||||
 | 
					  else
 | 
				
			||||||
 | 
					    d = ba == NULL ? _column_disabled[column] : (*ba)[column];
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  return d;  
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -12,7 +12,7 @@
 | 
				
			|||||||
#include <nditte.h>
 | 
					#include <nditte.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
typedef bool (*VAL_FUNC)(TEdit_field&, KEY k);
 | 
					typedef bool (*VAL_FUNC)(TMask_field&, KEY k);
 | 
				
			||||||
HIDDEN const TArray* _parms;
 | 
					HIDDEN const TArray* _parms;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HIDDEN int get_val_param_num() { return _parms->items(); }
 | 
					HIDDEN int get_val_param_num() { return _parms->items(); }
 | 
				
			||||||
@ -20,7 +20,7 @@ HIDDEN int get_val_param_num() { return _parms->items(); }
 | 
				
			|||||||
HIDDEN const char* get_val_param(int i)
 | 
					HIDDEN const char* get_val_param(int i)
 | 
				
			||||||
{ return i < _parms->items() ? (const char*)((const TString&) (*_parms)[i]):"" ; }
 | 
					{ return i < _parms->items() ? (const char*)((const TString&) (*_parms)[i]):"" ; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HIDDEN bool _expr_val(TEdit_field& f, KEY)
 | 
					HIDDEN bool _expr_val(TMask_field& f, KEY)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  TTypeexp  type = atoi(get_val_param(0)) == 0 ? _numexpr :_strexpr;
 | 
					  TTypeexp  type = atoi(get_val_param(0)) == 0 ? _numexpr :_strexpr;
 | 
				
			||||||
  TExpression     e(get_val_param(1), type);
 | 
					  TExpression     e(get_val_param(1), type);
 | 
				
			||||||
@ -50,7 +50,7 @@ HIDDEN bool _expr_val(TEdit_field& f, KEY)
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HIDDEN bool _emptycopy_val(TEdit_field& f, KEY)
 | 
					HIDDEN bool _emptycopy_val(TMask_field& f, KEY)
 | 
				
			||||||
{            
 | 
					{            
 | 
				
			||||||
  if (f.get().empty())
 | 
					  if (f.get().empty())
 | 
				
			||||||
  {
 | 
					  {
 | 
				
			||||||
@ -100,7 +100,7 @@ bool pi_check(const char * st, const char * paiva)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// Controlla la partita iva se e' non vuota ed italiana
 | 
					// Controlla la partita iva se e' non vuota ed italiana
 | 
				
			||||||
HIDDEN bool _pi_val(TEdit_field& f, KEY)
 | 
					HIDDEN bool _pi_val(TMask_field& f, KEY)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  if (f.mask().query_mode()) return TRUE;
 | 
					  if (f.mask().query_mode()) return TRUE;
 | 
				
			||||||
  
 | 
					  
 | 
				
			||||||
@ -197,7 +197,7 @@ bool cf_check (const char * stato, const char * codcf)
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HIDDEN bool _cf_val(TEdit_field& f, KEY key)
 | 
					HIDDEN bool _cf_val(TMask_field& f, KEY key)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  if (f.mask().query_mode()) return TRUE;
 | 
					  if (f.mask().query_mode()) return TRUE;
 | 
				
			||||||
  
 | 
					  
 | 
				
			||||||
@ -227,7 +227,7 @@ HIDDEN bool _cf_val(TEdit_field& f, KEY key)
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HIDDEN bool     _xt_pi_val(TEdit_field& f, KEY key)
 | 
					HIDDEN bool     _xt_pi_val(TMask_field& f, KEY key)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  TMask& m = f.mask();
 | 
					  TMask& m = f.mask();
 | 
				
			||||||
@ -278,7 +278,7 @@ HIDDEN bool     _xt_pi_val(TEdit_field& f, KEY key)
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HIDDEN bool _xtz_pi_val(TEdit_field& f, KEY key)
 | 
					HIDDEN bool _xtz_pi_val(TMask_field& f, KEY key)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  if (f.mask().query_mode()) return TRUE;
 | 
					  if (f.mask().query_mode()) return TRUE;
 | 
				
			||||||
  TString16 pi(f.get());
 | 
					  TString16 pi(f.get());
 | 
				
			||||||
@ -287,7 +287,7 @@ HIDDEN bool _xtz_pi_val(TEdit_field& f, KEY key)
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HIDDEN bool _xt_cf_val(TEdit_field& f, KEY key)
 | 
					HIDDEN bool _xt_cf_val(TMask_field& f, KEY key)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  if (f.mask().query_mode()) return TRUE;
 | 
					  if (f.mask().query_mode()) return TRUE;
 | 
				
			||||||
  
 | 
					  
 | 
				
			||||||
@ -387,7 +387,7 @@ HIDDEN bool _xt_cf_val(TEdit_field& f, KEY key)
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HIDDEN bool     _xtz_cf_val(TEdit_field& f, KEY key)
 | 
					HIDDEN bool     _xtz_cf_val(TMask_field& f, KEY key)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  if (f.mask().query_mode()) return TRUE;
 | 
					  if (f.mask().query_mode()) return TRUE;
 | 
				
			||||||
@ -396,13 +396,13 @@ HIDDEN bool     _xtz_cf_val(TEdit_field& f, KEY key)
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HIDDEN bool     _notempty_val(TEdit_field& f, KEY)
 | 
					HIDDEN bool     _notempty_val(TMask_field& f, KEY)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  return f.mask().query_mode() || f.get().not_empty();
 | 
					  return f.mask().query_mode() || f.get().not_empty();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HIDDEN bool _date_cmp(TEdit_field& f, KEY)
 | 
					HIDDEN bool _date_cmp(TMask_field& f, KEY)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  TFixed_string s(f.get());
 | 
					  TFixed_string s(f.get());
 | 
				
			||||||
  if (s.empty()) return TRUE;
 | 
					  if (s.empty()) return TRUE;
 | 
				
			||||||
@ -425,7 +425,7 @@ HIDDEN bool _date_cmp(TEdit_field& f, KEY)
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HIDDEN bool     _fixlen_val(TEdit_field& f, KEY)
 | 
					HIDDEN bool     _fixlen_val(TMask_field& f, KEY)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  const TFixed_string  s(f.get());
 | 
					  const TFixed_string  s(f.get());
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -438,7 +438,7 @@ HIDDEN bool     _fixlen_val(TEdit_field& f, KEY)
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HIDDEN bool _mtcheck_val(TEdit_field& f, KEY)
 | 
					HIDDEN bool _mtcheck_val(TMask_field& f, KEY)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  const int month = atoi(f.get());
 | 
					  const int month = atoi(f.get());
 | 
				
			||||||
  if (month < 1 || month > 13) return FALSE;
 | 
					  if (month < 1 || month > 13) return FALSE;
 | 
				
			||||||
@ -453,7 +453,7 @@ HIDDEN bool _mtcheck_val(TEdit_field& f, KEY)
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HIDDEN bool _reqif_val(TEdit_field& f, KEY k)
 | 
					HIDDEN bool _reqif_val(TMask_field& f, KEY k)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  if (k == K_ENTER)
 | 
					  if (k == K_ENTER)
 | 
				
			||||||
  {
 | 
					  {
 | 
				
			||||||
@ -470,7 +470,7 @@ HIDDEN bool _reqif_val(TEdit_field& f, KEY k)
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HIDDEN bool _autoexit_val(TEdit_field& f, KEY key)
 | 
					HIDDEN bool _autoexit_val(TMask_field& f, KEY key)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  TMask& m    = f.mask();
 | 
					  TMask& m    = f.mask();
 | 
				
			||||||
  
 | 
					  
 | 
				
			||||||
@ -513,7 +513,7 @@ HIDDEN bool _autoexit_val(TEdit_field& f, KEY key)
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HIDDEN bool _numcalc_val(TEdit_field& f, KEY k)
 | 
					HIDDEN bool _numcalc_val(TMask_field& f, KEY k)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  if (k != K_TAB) return TRUE;
 | 
					  if (k != K_TAB) return TRUE;
 | 
				
			||||||
  TExpression e(get_val_param(0), _numexpr);
 | 
					  TExpression e(get_val_param(0), _numexpr);
 | 
				
			||||||
@ -536,7 +536,7 @@ HIDDEN bool _numcalc_val(TEdit_field& f, KEY k)
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HIDDEN bool _strcalc_val(TEdit_field& f, KEY k)
 | 
					HIDDEN bool _strcalc_val(TMask_field& f, KEY k)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  if (k != K_TAB) return TRUE;
 | 
					  if (k != K_TAB) return TRUE;
 | 
				
			||||||
  TExpression     e(get_val_param(0), _strexpr);
 | 
					  TExpression     e(get_val_param(0), _strexpr);
 | 
				
			||||||
@ -559,7 +559,7 @@ HIDDEN bool _strcalc_val(TEdit_field& f, KEY k)
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HIDDEN bool _onereq_val(TEdit_field& f, KEY k)
 | 
					HIDDEN bool _onereq_val(TMask_field& f, KEY k)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  if (k != K_ENTER) return      TRUE;
 | 
					  if (k != K_ENTER) return      TRUE;
 | 
				
			||||||
  const TMask& m = f.mask();
 | 
					  const TMask& m = f.mask();
 | 
				
			||||||
@ -574,7 +574,7 @@ HIDDEN bool _onereq_val(TEdit_field& f, KEY k)
 | 
				
			|||||||
  return FALSE;
 | 
					  return FALSE;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HIDDEN bool _chkfld_val(TEdit_field& f, KEY k)
 | 
					HIDDEN bool _chkfld_val(TMask_field& f, KEY k)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  if (f.to_check(k))
 | 
					  if (f.to_check(k))
 | 
				
			||||||
  {
 | 
					  {
 | 
				
			||||||
@ -596,13 +596,13 @@ HIDDEN bool _chkfld_val(TEdit_field& f, KEY k)
 | 
				
			|||||||
  return TRUE;
 | 
					  return TRUE;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HIDDEN bool _filename_val(TEdit_field& f, KEY)
 | 
					HIDDEN bool _filename_val(TMask_field& f, KEY)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  const TFilename fn(f.get());
 | 
					  const TFilename fn(f.get());
 | 
				
			||||||
  return fn.ok();
 | 
					  return fn.ok();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HIDDEN bool _zerofill_val(TEdit_field& f, KEY k)
 | 
					HIDDEN bool _zerofill_val(TMask_field& f, KEY k)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  if (f.to_check(k))
 | 
					  if (f.to_check(k))
 | 
				
			||||||
  {
 | 
					  {
 | 
				
			||||||
@ -617,7 +617,7 @@ HIDDEN bool _zerofill_val(TEdit_field& f, KEY k)
 | 
				
			|||||||
  return TRUE;
 | 
					  return TRUE;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HIDDEN bool _alpha_val(TEdit_field& f, KEY k)
 | 
					HIDDEN bool _alpha_val(TMask_field& f, KEY k)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  if (f.to_check(k))
 | 
					  if (f.to_check(k))
 | 
				
			||||||
  {
 | 
					  {
 | 
				
			||||||
@ -629,12 +629,12 @@ HIDDEN bool _alpha_val(TEdit_field& f, KEY k)
 | 
				
			|||||||
  return TRUE;
 | 
					  return TRUE;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HIDDEN bool _not_empty_chkfld_val(TEdit_field& f, KEY k)
 | 
					HIDDEN bool _not_empty_chkfld_val(TMask_field& f, KEY k)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  bool ok = TRUE;
 | 
					  bool ok = TRUE;
 | 
				
			||||||
  if (f.to_check(k) && f.get().not_empty())
 | 
					  if (f.to_check(k) && f.get().not_empty())
 | 
				
			||||||
  {
 | 
					  {
 | 
				
			||||||
    TBrowse * b = f.browse();
 | 
					    TBrowse * b = ((TEdit_field&)f).browse();
 | 
				
			||||||
    if (b != NULL) ok = b->check(k == K_TAB ? RUNNING_CHECK : FINAL_CHECK);
 | 
					    if (b != NULL) ok = b->check(k == K_TAB ? RUNNING_CHECK : FINAL_CHECK);
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  return ok;
 | 
					  return ok;
 | 
				
			||||||
@ -669,7 +669,7 @@ HIDDEN VAL_FUNC _global_val_func[MAX_FUNC] =
 | 
				
			|||||||
  _not_empty_chkfld_val
 | 
					  _not_empty_chkfld_val
 | 
				
			||||||
  };
 | 
					  };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool validate(int fn, TEdit_field& f, KEY k, const TArray& parms)
 | 
					bool validate(int fn, TMask_field& f, KEY k, const TArray& parms)
 | 
				
			||||||
{                                                                
 | 
					{                                                                
 | 
				
			||||||
  _parms = &parms;
 | 
					  _parms = &parms;
 | 
				
			||||||
  return (fn >= 0 && fn < MAX_FUNC) ? _global_val_func[fn](f, k) : TRUE;
 | 
					  return (fn >= 0 && fn < MAX_FUNC) ? _global_val_func[fn](f, k) : TRUE;
 | 
				
			||||||
 | 
				
			|||||||
@ -5,7 +5,7 @@
 | 
				
			|||||||
#include <maskfld.h>
 | 
					#include <maskfld.h>
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool validate(int fn, TEdit_field& f, KEY k, const TArray& parms);
 | 
					bool validate(int fn, TMask_field& f, KEY k, const TArray& parms);
 | 
				
			||||||
bool pi_check (const char * stato, const char * cf);
 | 
					bool pi_check (const char * stato, const char * cf);
 | 
				
			||||||
bool cf_check (const char * stato, const char * cf);
 | 
					bool cf_check (const char * stato, const char * cf);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user