|
ACF $AcfVersion:0$
|
Implementation of a simple options manager. More...
#include <COptionsManager.h>
Public Types | |
| typedef CSelectionParam | BaseClass |
Public Types inherited from iprm::ISelectionParam | |
| enum | ChangeFlags { CF_SELECTION_CHANGED = 0x67364be } |
| Data model change notification flags. More... | |
| enum | { NO_SELECTION = -1 } |
Public Types inherited from istd::IChangeable | |
| enum | ChangeFlags { CF_ACF_INTERNAL = 0 , CF_ALL_DATA , CF_ANY , CF_DESTROYING , CF_DELEGATED , CF_NO_UNDO } |
| Data model change notification flags. More... | |
| enum | SupportedOperations { SO_NONE = 0 , SO_OBSERVE = 1 << 0 , SO_COPY = 1 << 1 , SO_CLONE = 1 << 2 , SO_COMPARE = 1 << 3 , SO_RESET = 1 << 4 } |
| Flags for supported operations. More... | |
| enum | CompatibilityMode { CM_STRICT , CM_WITHOUT_REFS , CM_WITH_REFS , CM_CONVERT } |
| Control how relationship betweeen objects are interpreted. More... | |
| typedef QMultiMap< QByteArray, QVariant > | ChangeInfoMap |
Public Types inherited from iprm::IOptionsManager | |
| enum | ChangeFlags { CF_OPTION_ADDED = 0x26be73a , CF_OPTION_REMOVED } |
| Data model change notification flags. More... | |
| enum | OptionOperationFlags { OOF_COUNT_FIXED = 1 , OOF_SUPPORT_RENAME = 2 , OOF_SUPPORT_INSERT = 4 , OOF_SUPPORT_DELETE = 8 , OOF_SUPPORT_SWAP = 16 , OOF_DISABLE_ALLOWED = 32 , OOF_SUPPORT_ENABLING = 64 } |
| Bitwise coded flags used to find out supported features. More... | |
Public Types inherited from iprm::IOptionsList | |
| enum | ChangeFlags { CF_OPTIONS_CHANGED = 0x8263d86 , CF_OPTION_RENAMED } |
| Flags for changes related to this interface. More... | |
| enum | OptionsFlags { SCF_NONE = 0 , SCF_SUPPORT_UNIQUE_ID = 256 , SFC_DISABLE_ALLOWED = 32 } |
| Flags for controlling constraints behavior. More... | |
Public Member Functions | |
| COptionsManager () | |
| void | SetFixedOptionsList (const iprm::IOptionsList *slaveSelectionConstraintsPtr) |
| Set additional fixed list of options. | |
| virtual void | ResetOptions () |
| Removes all options. | |
| int | GetOptionIndexById (const QByteArray &optionId) const |
| Get the index for the given option ID. | |
| int | GetOptionIndexByName (const QString &optionName) const |
| Get the index for the given option name. | |
| bool | IsSelectionSerialized () const |
| Check if selection is serialized. | |
| void | SetSelectionSerialized (bool state) |
| Turn on or off selection serializing. | |
| virtual int | GetOptionsFlags () const override |
| Get constraints flags. | |
| virtual int | GetOptionsCount () const override |
| Get number of managed options. | |
| virtual QString | GetOptionName (int index) const override |
| Get name of specified option. | |
| virtual QString | GetOptionDescription (int index) const override |
| Get human-readable description for an option. | |
| virtual QByteArray | GetOptionId (int index) const override |
| Get option ID. | |
| virtual bool | IsOptionEnabled (int index) const override |
| Return true if the option is enabled and can be selected. | |
| virtual int | GetOptionOperationFlags (int index=-1) const override |
| Get operation control flags of some option or whole manager. | |
| virtual bool | SetOptionEnabled (int index, bool isEnabled=true) override |
| Enables or disables a given option. | |
| virtual bool | RemoveOption (int index) override |
| Remove an option at the given index. | |
| virtual bool | InsertOption (const QString &optionName, const QByteArray &optionId, const QString &optionDescription=QString(), int index=-1) override |
| Insert an option at some position. | |
| virtual bool | SwapOptions (int index1, int index2) override |
| Swap two options. | |
| virtual bool | SetOptionName (int index, const QString &optionName) override |
| Set a new name for the option at the given index. | |
| virtual bool | SetOptionDescription (int index, const QString &optionDescription) override |
| Set a new description for the option at the given index. | |
| virtual bool | Serialize (iser::IArchive &archive) override |
| Load or store state of this object as a archive stream. | |
| virtual int | GetSupportedOperations () const override |
| Get set of flags for supported operations. | |
| virtual bool | CopyFrom (const IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) override |
Public Member Functions inherited from iprm::CSelectionParam | |
| CSelectionParam () | |
| void | SetSelectionConstraints (const IOptionsList *constraintsPtr) |
| Set selection constraints for this selection object. | |
| void | SetSubselection (int selectionIndex, ISelectionParam *selectionPtr) |
| Set sub-selection for a given option index. | |
| bool | SetSelectedOptionById (const QByteArray &selectedOptionId) |
| Set selection index according to a given option ID. | |
| int | GetOptionIndexById (const QByteArray &optionId) const |
| Get index of an option by ID. | |
| ISelectionParam * | GetActiveSubselection () const |
| Get sub-selection for the currently selected option. | |
| virtual const IOptionsList * | GetSelectionConstraints () const override |
| Get constraints of this parameter. | |
| virtual int | GetSelectedOptionIndex () const override |
| Get selected index. | |
| virtual bool | SetSelectedOptionIndex (int index) override |
| Set index of selected option. | |
| virtual ISelectionParam * | GetSubselection (int index) const override |
| Get sub-selection for specified option. | |
| virtual bool | CopyFrom (const istd::IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) override |
| Copy this object from another one. | |
| virtual istd::TUniqueInterfacePtr< istd::IChangeable > | CloneMe (CompatibilityMode mode=CM_WITHOUT_REFS) const override |
| Make a copy of this object. | |
Public Member Functions inherited from iser::ISerializable | |
| virtual quint32 | GetMinimalVersion (int versionId) const |
| Get minimal needed version to correct storing of this data. | |
Public Member Functions inherited from istd::IChangeable | |
| virtual bool | IsEqual (const IChangeable &object) const |
| Compare this object with another object. | |
| virtual bool | ResetData (CompatibilityMode mode=CM_WITHOUT_REFS) |
| Reset data to its default state. | |
| virtual void | BeginChanges (const ChangeSet &changeSet) |
| Starts the change transaction. | |
| virtual void | EndChanges (const ChangeSet &changeSet) |
| Ends the change transaction. | |
| virtual void | BeginChangeGroup (const ChangeSet &changeSet) |
| Starts group of changes. | |
| virtual void | EndChangeGroup (const ChangeSet &changeSet) |
| Ends group of changes. | |
Public Member Functions inherited from istd::IPolymorphic | |
| virtual | ~IPolymorphic () |
Additional Inherited Members | |
Static Public Member Functions inherited from istd::IChangeable | |
| static const ChangeSet & | GetNoChanges () |
| Get empty set of changes. | |
| static const ChangeSet & | GetAnyChange () |
| Get anonymous change set. | |
| static const ChangeSet & | GetAllChanges () |
| Get anonymous change set. | |
| static const ChangeSet & | GetDelegatedChanges () |
| Get delegated change set. | |
Protected Member Functions inherited from iprm::CSelectionParam | |
| int | CalcIndexFromId (const QByteArray &optionId, int suggestedIndex=NO_SELECTION) const |
| Calculate optimal index based on current selected index and ID. | |
| bool | SyncIndexWithId () |
| Synchronize current index to optimal one. | |
Protected Member Functions inherited from istd::IChangeable | |
| virtual void | OnBeginChanges () |
| Callback function for begin change event. | |
| virtual void | OnEndChanges (const ChangeSet &changeSet) |
| Callback function for end change event. | |
Implementation of a simple options manager.
Definition at line 23 of file COptionsManager.h.
Definition at line 28 of file COptionsManager.h.
| iprm::COptionsManager::COptionsManager | ( | ) |
|
overridevirtual |
|
overridevirtual |
Get human-readable description for an option.
Returns detailed description or tooltip text for an option.
| index | Option index (0-based). |
Implements iprm::IOptionsList.
|
overridevirtual |
Get option ID.
Returns the unique identifier for an option. The ID is stable and doesn't change when options are reordered, making it suitable for persistent references.
| index | Option index (0-based). |
Implements iprm::IOptionsList.
| int iprm::COptionsManager::GetOptionIndexById | ( | const QByteArray & | optionId | ) | const |
Get the index for the given option ID.
| int iprm::COptionsManager::GetOptionIndexByName | ( | const QString & | optionName | ) | const |
Get the index for the given option name.
|
overridevirtual |
Get name of specified option.
Returns the display name for an option.
| index | Option index (0-based). |
Implements iprm::IOptionsList.
|
overridevirtual |
Get operation control flags of some option or whole manager.
Returns flags indicating which operations are supported, either for the entire manager (index < 0) or for a specific option.
| index | Index addressing position in the option list.
|
Implements iprm::IOptionsManager.
|
overridevirtual |
Get number of managed options.
Implements iprm::IOptionsList.
|
overridevirtual |
Get constraints flags.
Returns flags that describe how the constraints object behaves and what features it supports.
Implements iprm::IOptionsList.
|
overridevirtual |
Get set of flags for supported operations.
Reimplemented from istd::IChangeable.
|
overridevirtual |
Insert an option at some position.
Adds a new option to the list at the specified position.
| optionName | Name of the option (display text). |
| optionId | ID of the option. According to data model constraints, this needs to be unique if SCF_SUPPORT_UNIQUE_ID flag is set. |
| optionDescription | Description/tooltip text for the option (optional). |
| index | Position where the new option will be inserted.
|
Implements iprm::IOptionsManager.
|
overridevirtual |
Return true if the option is enabled and can be selected.
Checks whether an option is currently enabled. Disabled options cannot be selected but remain visible in the list.
| index | Option index (0-based). |
Implements iprm::IOptionsList.
| bool iprm::COptionsManager::IsSelectionSerialized | ( | ) | const |
Check if selection is serialized.
|
overridevirtual |
Remove an option at the given index.
Deletes the option at the specified position from the list.
| index | Option index (0-based). |
Implements iprm::IOptionsManager.
|
virtual |
Removes all options.
|
overridevirtual |
Load or store state of this object as a archive stream.
Type of operation is depending on archive type.
Reimplemented from iprm::CSelectionParam.
| void iprm::COptionsManager::SetFixedOptionsList | ( | const iprm::IOptionsList * | slaveSelectionConstraintsPtr | ) |
Set additional fixed list of options.
|
overridevirtual |
Set a new description for the option at the given index.
Changes the description/tooltip text of an option.
| optionIndex | Option index (0-based). |
| optionDescription | New description for the option. |
Implements iprm::IOptionsManager.
|
overridevirtual |
Enables or disables a given option.
Changes the enabled state of an option. Only enabled options can be selected.
| index | Option index (0-based). |
| isEnabled | true to enable, false to disable. |
Implements iprm::IOptionsManager.
|
overridevirtual |
Set a new name for the option at the given index.
Changes the display name of an option.
| optionIndex | Option index (0-based). |
| optionName | New name for the option. |
Implements iprm::IOptionsManager.
| void iprm::COptionsManager::SetSelectionSerialized | ( | bool | state | ) |
Turn on or off selection serializing.
|
overridevirtual |
Swap two options.
Exchanges the positions of two options in the list.
| index1 | Index of first option. |
| index2 | Index of second option. |
Implements iprm::IOptionsManager.