BVariant Settings::Value(const char* settingID) const { AutoLocker<BLocker> locker(fLock); BVariant value; if (value.SetFromMessage(fValues, settingID) == B_OK) return value; Setting* setting = fDescription->SettingByID(settingID); return setting != NULL ? setting->DefaultValue() : value; }