Version: 3.0.2
wxPersistentWindow< T > Class Template Reference

#include <wx/persist/window.h>

+ Inheritance diagram for wxPersistentWindow< T >:

Detailed Description

template<class T>
class wxPersistentWindow< T >

Base class for persistent windows.

Compared to wxPersistentObject this class does three things:

Public Types

typedef T WindowType
 The type of the associated window.
 

Public Member Functions

 wxPersistentWindow (WindowType *win)
 Constructor for a persistent window object.
 
WindowTypeGet () const
 
virtual wxString GetName () const
 Implements the base class pure virtual method using wxWindow::GetName().
 
- Public Member Functions inherited from wxPersistentObject
 wxPersistentObject (void *obj)
 Constructor takes the object which we're associated with.
 
virtual ~wxPersistentObject ()
 Trivial but virtual destructor.
 
void * GetObject () const
 Return the associated object.
 
virtual void Save () const =0
 Save the object properties.
 
virtual bool Restore ()=0
 Restore the object properties.
 
virtual wxString GetKind () const =0
 Returns the string uniquely identifying the objects supported by this adapter.
 

Additional Inherited Members

- Protected Member Functions inherited from wxPersistentObject
template<typename T >
bool SaveValue (const wxString &name, T value) const
 Save the specified value using the given name.
 
template<typename T >
bool RestoreValue (const wxString &name, T *value)
 Restore the value saved by Save().
 

Member Typedef Documentation

template<class T>
typedef T wxPersistentWindow< T >::WindowType

The type of the associated window.

Constructor & Destructor Documentation

template<class T>
wxPersistentWindow< T >::wxPersistentWindow ( WindowType win)

Constructor for a persistent window object.

The constructor uses wxEvtHandler::Connect() to catch wxWindowDestroyEvent generated when the window is destroyed and call wxPersistenceManager::SaveAndUnregister() when this happens. This ensures that the window properties are saved and that this object itself is deleted when the window is.

Member Function Documentation

template<class T>
WindowType* wxPersistentWindow< T >::Get ( ) const
inline
template<class T>
virtual wxString wxPersistentWindow< T >::GetName ( ) const
virtual

Implements the base class pure virtual method using wxWindow::GetName().

Notice that window names are usually not unique while this function must return a unique (at least among the objects of this type) string. Because of this you need to specify a non-default window name in its constructor when creating it or explicitly call wxWindow::SetName() before saving or restoring persistent properties.

Implements wxPersistentObject.