X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/d54598dd855e64cf2086b73cb3b8e3b99c513bbc..507abc7b3af8d73e7caf05261d1f40b51775ae7a:/src/common/clipcmn.cpp diff --git a/src/common/clipcmn.cpp b/src/common/clipcmn.cpp index ee7a4018d2..6f380b5aae 100644 --- a/src/common/clipcmn.cpp +++ b/src/common/clipcmn.cpp @@ -6,7 +6,7 @@ // Created: 28.06.99 // RCS-ID: $Id$ // Copyright: (c) Robert Roebling -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// // ============================================================================ @@ -17,10 +17,6 @@ // headers // ---------------------------------------------------------------------------- -#ifdef __GNUG__ - #pragma implementation "clipboardbase.h" -#endif - // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" @@ -29,36 +25,36 @@ #endif #include "wx/clipbrd.h" +#include "wx/module.h" -//-------------------------------------------------------------------------- -// wxClipboardBase -//-------------------------------------------------------------------------- +#if wxUSE_CLIPBOARD -wxClipboardBase::wxClipboardBase() +static wxClipboard *gs_clipboard = NULL; + +/*static*/ wxClipboard *wxClipboardBase::Get() { + if ( !gs_clipboard ) + { + gs_clipboard = new wxClipboard; + } + return gs_clipboard; } // ---------------------------------------------------------------------------- -// wxClipboardModule: module responsible for initializing the global clipboard +// wxClipboardModule: module responsible for destroying the global clipboard // object // ---------------------------------------------------------------------------- class wxClipboardModule : public wxModule { public: - wxClipboardModule() { } - - bool OnInit() - { wxTheClipboard = new wxClipboard; return TRUE; } - void OnExit() - { delete wxTheClipboard; wxTheClipboard = (wxClipboard *)NULL; } + bool OnInit() { return true; } + void OnExit() { wxDELETE(gs_clipboard); } private: DECLARE_DYNAMIC_CLASS(wxClipboardModule) }; -// ---------------------------------------------------------------------------- -// global data defined here -// ---------------------------------------------------------------------------- - IMPLEMENT_DYNAMIC_CLASS(wxClipboardModule, wxModule) + +#endif // wxUSE_CLIPBOARD