40 #ifndef _objectsettings_h
41 #define _objectsettings_h
46 #include "quaternion.h"
47 #include "colourvalue.h"
55 class ObjectSettingSet;
56 class ObjectSettingFile;
57 class ObjectSettingGroup;
92 void SetName(
const String& Name);
124 void DestroyChildObjectSettingSet(
const String& Name);
126 void DestroyAllObjectSettingSets();
145 virtual void _MarkUpdated() = 0;
191 void SetSettingValue(
const String& SettingName,
const String& StringValue);
195 String GetSettingValue(
const String& SettingName)
const;
243 const String& GetOptionalFileName()
const;
292 const String& GetFileName()
const;
295 void SetNeedsSave(Boolean Save);
298 Boolean GetNeedsSave()
const;
392 virtual String GetObjectRootNodeName()
const = 0;
396 virtual void AppendCurrentSettings(
XML::Node& CurrentNode) = 0;
412 void ApplySettingGroup(
const String& GroupName);
423 void DestroySettingGroup(
const String& Name);
428 void DestroyAllSettingGroups();
444 void DestroySettingFile(
const String& FileName);
451 void DestroyAllSettingFiles();
466 void SetSettingsFilePath(
const String& Path);
469 const String& GetSettingsFilePath()
const;
477 void SetCurrentSettingsSaveFile(
const String& FileName);
511 void SetAutoGenPath(Boolean Enable);
514 Boolean GetAutoGenPath()
const;
517 void SetAutoGenFiles(Boolean Enable);
520 Boolean GetAutoGenFiles()
const;
526 void SaveAllSettings();
530 void SaveSettingsByFile(
const String& FileName,
const String& Path);
535 void SaveSettingsByFile(
const String& FileName);
558 void SaveSettingsToXML(
XML::Node& RootSettings, Boolean SaveCurrent =
true);