void DataFieldBoolean::SetAsBoolean(bool Value) { if (mValue != Value) { mValue = Value; if (!GetDetachGUI()) (mOnDataAccess)(this, daChange); } }
void DataFieldEnum::Dec(void) { if (mValue > 0) { mValue--; if (!GetDetachGUI()) (mOnDataAccess)(this, daChange); } }
void DataFieldEnum::Inc(void) { if (mValue < nEnums - 1) { mValue++; if (!GetDetachGUI()) (mOnDataAccess)(this, daChange); } }
void DataField::Modified() { if (GetDetachGUI()) return; if (listener != NULL) listener->OnModified(*this); else if (data_access_callback != NULL) data_access_callback(this, daChange); }
double DataFieldFloat::SetAsFloat(double Value){ double res = mValue; if (Value < mMin) Value = mMin; if (Value > mMax) Value = mMax; if (res != Value){ mValue = Value; if (!GetDetachGUI()) (mOnDataAccess)(this, daChange); } return(res); }
void DataFieldInteger::SetAsInteger(int Value) { if (Value < mMin) Value = mMin; if (Value > mMax) Value = mMax; if (mValue != Value) { mValue = Value; if (!GetDetachGUI() && mOnDataAccess != NULL) (mOnDataAccess)(this, daChange); } }
void DataFieldFloat::SetAsFloat(fixed Value) { if (Value < mMin) Value = mMin; if (Value > mMax) Value = mMax; if (mValue != Value) { mValue = Value; if (!GetDetachGUI() && mOnDataAccess != NULL) (mOnDataAccess)(this, daChange); } }
void DataFieldEnum::Set(int Value){ // first look it up if (Value<0) { Value = 0; } for (unsigned int i=0; i<nEnums; i++) { if (mEntries[i].index == (unsigned int) Value) { int lastValue = mValue; mValue = i; if (mValue != (unsigned int) lastValue){ if (!GetDetachGUI()) (mOnDataAccess)(this, daChange); } return; } } mValue = 0; // fallback }