Don't lie about wxImageList in XRC format spec.
[wxWidgets.git] / docs / doxygen / overviews / config.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: config.h
3 // Purpose: topic overview
4 // Author: wxWidgets team
5 // Licence: wxWindows licence
6 /////////////////////////////////////////////////////////////////////////////
7
8 /**
9
10 @page overview_config wxConfig Overview
11
12 Classes: wxConfigBase
13
14 This overview briefly describes what the config classes are and what they are
15 for. All the details about how to use them may be found in the description of
16 the wxConfigBase class and the documentation of the file, registry and INI file
17 based implementations mentions all the features/limitations specific to each
18 one of these versions.
19
20 The config classes provide a way to store some application configuration
21 information. They were especially designed for this usage and, although may
22 probably be used for many other things as well, should be limited to it. It
23 means that this information should be:
24
25 @li Typed, i.e. strings or numbers for the moment. You cannot store binary
26 data, for example.
27 @li Small. For instance, it is not recommended to use the Windows registry for
28 amounts of data more than a couple of kilobytes.
29 @li Not performance critical, neither from speed nor from a memory consumption
30 point of view.
31
32 On the other hand, the features provided make them very useful for storing all
33 kinds of small to medium volumes of hierarchically-organized, heterogeneous
34 data. In short, this is a place where you can conveniently stuff all your data
35 (numbers and strings) organizing it in a tree where you use the filesystem-like
36 paths to specify the location of a piece of data. In particular, these classes
37 were designed to be as easy to use as possible.
38
39 From another point of view, they provide an interface which hides the
40 differences between the Windows registry and the standard Unix text format
41 configuration files. Other (future) implementations of wxConfigBase might also
42 understand GTK resource files or their analogues on the KDE side.
43
44 In any case, each implementation of wxConfigBase does its best to make the data
45 look the same way everywhere. Due to limitations of the underlying physical
46 storage, it may not implement 100% of the base class functionality.
47
48 There are groups of entries and the entries themselves. Each entry contains
49 either a string or a number (or a boolean value; support for other types of
50 data such as dates or timestamps is planned) and is identified by the full path
51 to it: something like @c /MyApp/UserPreferences/Colors/Foreground.
52
53 The previous elements in the path are the group names, and each name may
54 contain an arbitrary number of entries and subgroups.
55
56 The path components are @e always separated with a slash, even though some
57 implementations use the backslash internally. Further details (including how to
58 read/write these entries) may be found in the documentation for wxConfigBase.
59
60 */
61