mglib

Personal IDL library for M. Galloy

single page | use frames     summary     class     fields     routine details     file attributes

dist_tools/

mgffprefs__define.pro

includes main-level program

Class responsible for storing and retrieving preferences. Preferences are persistent across IDL sessions on the same computer.

Examples

The main-level program at the end of this file has an example use of MGffPrefs. To run it, type:

IDL> .run mgffprefs__define
The code creates an MFffPrefs object and uses the set and get methods to set and retrieve a preference.

Creating the MGffPrefs requires setting the AUTHOR_NAME and APP_NAME properties so that the APP_DIRECTORY, where the prefence value files are stored, can be specified:

authorName = 'mgffprefs_demo' appName = 'mgffprefs_demo' prefs = obj_new('mgffprefs', author_name=authorName, app_name=appName)
We can now set a preference value, remember the preference name is case-insensitive, but the value is stored exactly:
prefs->set, 'name', 'Michael'
The preferences object can now be destroyed to show the preferences are persistent between IDL sessions:
obj_destroy, prefs
A new MGffPrefs object is created with the same AUTHOR_NAME and APP_NAME values:
prefs = obj_new('mgffprefs', author_name=authorName, app_name=appName)
The "name" preference can now be retrieved:
name = prefs->get('name', found=found)
We can retrieve the APP_DIRECTORY property to know where the preference files are stored:
prefs->getProperty, app_directory=appdir
We are done with the MGffPrefs object:
obj_destroy, prefs
Print the preference value:
print, name, format='(%"Preference value for name: %s")'
We can manually clean out the entire directory for our preferences:
file_delete, file_dirname(appdir), /recursive, /allow_nonexistent, /quiet
Individual preferences can be cleared with the clear method.

Class description for mgffprefs

Properties

Properties in mgffprefs

app_description init

full name of the application

app_directory get

location of the directory for the application using these preferences

app_name init

short name of the application

author_description init

full name of the author

author_name init

short name of the author

Routines

Routines from mgffprefs__define.pro

mgffprefs::set, prefname, prefvalue

Save the value of a preference.

mgffprefs::clear, prefname

Clear the value of a preference.

result = mgffprefs::get(prefname [, /found] [, default=any] [, /names])

Retrieve the value of a preference.

mgffprefs::getProperty, app_directory=app_directory

Get properties.

mgffprefs::cleanup

Free resources.

result = mgffprefs::init(author_name=string, app_name=string [, author_description=string] [, app_description=string])

Initialize a prefs object.

mgffprefs__define

Define instance variables.

Routine details

top mgffprefs::set

mgffprefs::set, prefname, prefvalue

Save the value of a preference.

Parameters

prefname in required type=string

case-insensitive name of preference to retrieve

prefvalue in required type=any

value of the preference

top mgffprefs::clear

mgffprefs::clear, prefname

Clear the value of a preference.

Parameters

prefname in required type=string

case-insensitive name of preference to retrieve

top mgffprefs::get

result = mgffprefs::get(prefname [, /found] [, default=any] [, /names])

Retrieve the value of a preference.

Return value

preference value

Parameters

prefname in required type=string

case-insensitive name of preference to retrieve

Keywords

found out optional type=boolean

set to a named variable to return whether the preference was found

default in optional type=any

default value to use if no preference value is found for the given preference name

names in optional type=boolean

set to return a list of the preference names instead of a value; names may not agree exactly with the names given in the set method because they have been modified to make valid filename

top mgffprefs::getProperty

mgffprefs::getProperty, app_directory=app_directory

Get properties.

Keywords

app_directory

location of the directory for the application using these preferences

top mgffprefs::cleanup

mgffprefs::cleanup

Free resources.

top mgffprefs::init

result = mgffprefs::init(author_name=string, app_name=string [, author_description=string] [, app_description=string])

Initialize a prefs object.

Return value

1 for success, 0 for failure

Keywords

author_name in required type=string

short name of the author

app_name in required type=string

short name of the application

author_description in optional type=string

full name of the author

app_description in optional type=string

full name of the application

top mgffprefs__define

mgffprefs__define

Define instance variables.

File attributes

Modification date: Wed May 14 15:07:14 2014
Lines: 92
Docformat: rst rst
Personal library of Michael Galloy
Contact me if you have enhancement requests or bug fixes.