Version: 3.3.0
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. More...
 

Public Member Functions

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

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. More...
 
template<typename T >
bool RestoreValue (const wxString &name, T *value)
 Restore a value saved by SaveValue(). More...
 

Member Typedef Documentation

◆ WindowType

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

The type of the associated window.

Constructor & Destructor Documentation

◆ wxPersistentWindow()

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

Constructor for a persistent window object.

The constructor uses wxEvtHandler::Bind() 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

◆ Get()

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

◆ GetName()

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.