#include <BALL/VIEW/KERNEL/preferencesEntry.h>
Classes | |
class | ExtendedPreferencesObject |
Public Types | |
typedef List< std::pair < QWidget *, String > > | StackPages |
Public Member Functions | |
PreferencesEntry () | |
virtual | ~PreferencesEntry () |
virtual void | writePreferenceEntries (INIFile &inifile) |
Store the settings of all registered objects. | |
virtual void | readPreferenceEntries (const INIFile &inifile) |
Restore the settings of all registered objects. | |
void | setINIFileSectionName (const String &name) |
Set the name for the section in the INIFile. | |
const String & | getINIFileSectionName () const |
Get the name for the section in the INIFile. | |
void | setWidgetStackName (const String &name) |
StackPages & | getStackPages () |
Return all pages, that are to be shown in a parent QStackedWidget. | |
void | setWidgetStack (QStackedWidget *stack) |
virtual void | showStackPage (Position nr) |
Show the specified page in the QStackedWidget. | |
virtual void | showStackPage (QWidget *widget) |
Show the specified page in the QStackedWidget. | |
virtual Position | currentStackPage () const |
Get the currently shown page in the QStackedWidget. | |
virtual void | restoreDefaultValues (bool all=false) |
Set all registered objects to their default values. | |
virtual void | storeValues () |
virtual void | restoreValues (bool all=false) |
virtual void | dump (std::ostream &s=std::cout, Size depth=0) const |
Protected Types | |
typedef HashMap< const QObject *, String > | ValueMap |
Protected Member Functions | |
void | registerWidgets_ () |
void | registerObject_ (QObject *widget) |
void | unregisterObject_ (QObject *widget) |
void | registerWidgetForHelpSystem_ (const QWidget *widget, const String &url) |
void | restoreValues_ (bool all, const ValueMap &map) |
void | insertStackEntry_ (QWidget *, const String &name) |
bool | isSupported_ (QObject &widget) |
bool | getValue_ (const QObject *widget, String &value) |
bool | setValue_ (QObject *widget, const String &value) |
Protected Attributes | |
String | inifile_section_name_ |
HashSet< QObject * > | registered_objects_ |
ValueMap | default_values_ |
ValueMap | last_values_ |
QStackedWidget * | widget_stack_ |
StackPages | stack_pages_ |
Base class for a dialog or a Preferences page. It allows to register child widgets to support reading and writing their data into a INIFile. Also restoring of a default value and the last applied value is supported. Currently the following Qt widgets are supported:
To support more sophisticated items, e.g. color tables, a base class is provided to derive from (see ExtendedPreferencesObject). This object only needs to be a QObject with the PreferencesEntry as parent. \ Furthermore this class allows to use QStackedWidget items, like e.g. in the Preferences, where all individual child widgets are then also entries in a QListView. \ \ How to use this class:
typedef List<std::pair<QWidget*, String> > BALL::VIEW::PreferencesEntry::StackPages |
typedef HashMap<const QObject*, String> BALL::VIEW::PreferencesEntry::ValueMap [protected] |
BALL::VIEW::PreferencesEntry::PreferencesEntry | ( | ) |
virtual BALL::VIEW::PreferencesEntry::~PreferencesEntry | ( | ) | [virtual] |
virtual Position BALL::VIEW::PreferencesEntry::currentStackPage | ( | ) | const [virtual] |
Get the currently shown page in the QStackedWidget.
virtual void BALL::VIEW::PreferencesEntry::dump | ( | std::ostream & | s = std::cout , |
|
Size | depth = 0 | |||
) | const [virtual] |
Internal state dump. Dump the current internal state of this mainControl to the output ostream s with dumping depth depth.
s | output stream where to output the internal state | |
depth | the dumping depth |
const String& BALL::VIEW::PreferencesEntry::getINIFileSectionName | ( | ) | const [inline] |
Get the name for the section in the INIFile.
StackPages& BALL::VIEW::PreferencesEntry::getStackPages | ( | ) | [inline] |
Return all pages, that are to be shown in a parent QStackedWidget.
void BALL::VIEW::PreferencesEntry::insertStackEntry_ | ( | QWidget * | , | |
const String & | name | |||
) | [protected] |
virtual void BALL::VIEW::PreferencesEntry::readPreferenceEntries | ( | const INIFile & | inifile | ) | [virtual] |
Restore the settings of all registered objects.
Reimplemented in BALL::VIEW::MainControlPreferences, BALL::VIEW::PluginDialog, and BALL::VIEW::PythonSettings.
void BALL::VIEW::PreferencesEntry::registerObject_ | ( | QObject * | widget | ) | [protected] |
void BALL::VIEW::PreferencesEntry::registerWidgetForHelpSystem_ | ( | const QWidget * | widget, | |
const String & | url | |||
) | [protected] |
Register a widget for the internal help system
void BALL::VIEW::PreferencesEntry::registerWidgets_ | ( | ) | [protected] |
Register all supported child objects for the storing of their data. Must be called at the end of the child classes constructor.
virtual void BALL::VIEW::PreferencesEntry::restoreDefaultValues | ( | bool | all = false |
) | [virtual] |
Set all registered objects to their default values.
Reimplemented in BALL::VIEW::LightSettings.
virtual void BALL::VIEW::PreferencesEntry::restoreValues | ( | bool | all = false |
) | [virtual] |
Restore the values of the child widgets. Called e.g. when a user presses a Cancel button.
Reimplemented in BALL::VIEW::LightSettings.
void BALL::VIEW::PreferencesEntry::setINIFileSectionName | ( | const String & | name | ) | [inline] |
Set the name for the section in the INIFile.
void BALL::VIEW::PreferencesEntry::setWidgetStack | ( | QStackedWidget * | stack | ) |
Call this method in the constructor of the derived class has its own QStackedWidget.
void BALL::VIEW::PreferencesEntry::setWidgetStackName | ( | const String & | name | ) |
If the derived class is to be shown in a QStackedWidget, call this method to set the name for its entry.
virtual void BALL::VIEW::PreferencesEntry::showStackPage | ( | QWidget * | widget | ) | [virtual] |
Show the specified page in the QStackedWidget.
virtual void BALL::VIEW::PreferencesEntry::showStackPage | ( | Position | nr | ) | [virtual] |
Show the specified page in the QStackedWidget.
virtual void BALL::VIEW::PreferencesEntry::storeValues | ( | ) | [virtual] |
Store the values for later restoration by the restoreValues method. Called e.g. by the Preferences dialog apply button.
Reimplemented in BALL::VIEW::OpenSavePreferences.
void BALL::VIEW::PreferencesEntry::unregisterObject_ | ( | QObject * | widget | ) | [protected] |
virtual void BALL::VIEW::PreferencesEntry::writePreferenceEntries | ( | INIFile & | inifile | ) | [virtual] |
Store the settings of all registered objects.
Reimplemented in BALL::VIEW::MainControlPreferences, and BALL::VIEW::PythonSettings.
ValueMap BALL::VIEW::PreferencesEntry::last_values_ [protected] |
HashSet<QObject*> BALL::VIEW::PreferencesEntry::registered_objects_ [protected] |
StackPages BALL::VIEW::PreferencesEntry::stack_pages_ [protected] |
QStackedWidget* BALL::VIEW::PreferencesEntry::widget_stack_ [protected] |