1///////////////////////////////////////////////////////////////////////////////
2// Name:        wx/memconf.h
3// Purpose:     wxMemoryConfig class: a wxConfigBase implementation which only
4//              stores the settings in memory (thus they are lost when the
5//              program terminates)
6// Author:      Vadim Zeitlin
7// Modified by:
8// Created:     22.01.00
9// RCS-ID:      $Id: memconf.h 35650 2005-09-23 12:56:45Z MR $
10// Copyright:   (c) 2000 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
11// Licence:     wxWindows licence
12///////////////////////////////////////////////////////////////////////////////
13
14/*
15 * NB: I don't see how this class may possibly be useful to the application
16 *     program (as the settings are lost on program termination), but it is
17 *     handy to have it inside wxWidgets. So for now let's say that this class
18 *     is private and should only be used by wxWidgets itself - this might
19 *     change in the future.
20 */
21
22#ifndef _WX_MEMCONF_H_
23#define _WX_MEMCONF_H_
24
25#if wxUSE_CONFIG
26
27#include "wx/fileconf.h"   // the base class
28
29// ----------------------------------------------------------------------------
30// wxMemoryConfig: a config class which stores settings in non-persistent way
31// ----------------------------------------------------------------------------
32
33// notice that we inherit from wxFileConfig which already stores its data in
34// memory and just disable file reading/writing - this is probably not optimal
35// and might be changed in future as well (this class will always deriev from
36// wxConfigBase though)
37class wxMemoryConfig : public wxFileConfig
38{
39public:
40    // default (and only) ctor
41    wxMemoryConfig() : wxFileConfig(wxEmptyString,  // default app name
42                                    wxEmptyString,  // default vendor name
43                                    wxEmptyString,  // no local config file
44                                    wxEmptyString,  // no system config file
45                                    0)              // don't use any files
46    {
47    }
48
49    DECLARE_NO_COPY_CLASS(wxMemoryConfig)
50};
51
52#endif // wxUSE_CONFIG
53
54#endif // _WX_MEMCONF_H_
55