#include <limits.h> #include "int_validator.h" #include "int_validator.moc" IntValidator::IntValidator( TQWidget *parent, const char *name ) : TQValidator( TQT_TQOBJECT(parent), name ) { #ifdef INT_MIN v_bottom = INT_MIN; #else v_bottom = ~INT_MAX; #endif v_top = INT_MIN; } IntValidator::IntValidator( int bottom, int top, TQWidget *parent, const char *name ) : TQValidator( TQT_TQOBJECT(parent), name ) { v_bottom = bottom; v_top = top; } IntValidator::~IntValidator() {} TQValidator::State IntValidator::validate( TQString &input, int & ) const { if( input.isEmpty() ) { return TQValidator::Valid; } else { bool ok; int value = input.toInt( &ok ); if( !ok ) return TQValidator::Invalid; if( value < v_bottom || value > v_top ) return TQValidator::Valid; return TQValidator::Acceptable; } } void IntValidator::setRange( int b, int t ) { v_bottom = b; v_top = t; }