// Purpose: Clipboard functionality
// Author: Robert Roebling
// Created:
-// RCS-ID: $Id$
// Copyright: (c) Robert Roebling
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
Atom g_targetsAtom = 0;
#endif
+// avoid warnings about unused static variable (notice that we still use it
+// even in release build if the compiler doesn't support variadic macros)
+#if defined(__WXDEBUG__) || !defined(HAVE_VARIADIC_MACROS)
+
// the trace mask we use with wxLogTrace() - call
// wxLog::AddTraceMask(TRACE_CLIPBOARD) to enable the trace messages from here
// (there will be a *lot* of them!)
-static const wxChar *TRACE_CLIPBOARD = _T("clipboard");
+static const wxChar *TRACE_CLIPBOARD = wxT("clipboard");
+
+#endif // __WXDEBUG__
//-----------------------------------------------------------------------------
// reminder
if ( strcmp(gdk_atom_name(type), "TARGETS") )
{
wxLogTrace( TRACE_CLIPBOARD,
- _T("got unsupported clipboard target") );
+ wxT("got unsupported clipboard target") );
clipboard->m_waiting = false;
return;
{
wxLogTrace(TRACE_CLIPBOARD, wxT("wxClipboard will get cleared" ));
- delete wxTheClipboard->m_data;
- wxTheClipboard->m_data = (wxDataObject*) NULL;
+ wxDELETE(wxTheClipboard->m_data);
}
}
// transform Unicode text into multibyte before putting it on clipboard
#if wxUSE_UNICODE
- if ( format.GetType() == wxDF_TEXT )
+ if ( format.GetType() == wxDF_TEXT || format.GetType() == wxDF_UNICODETEXT)
{
const wchar_t *wstr = (const wchar_t *)d;
size_t len = wxConvCurrent->WC2MB(NULL, wstr, 0);
m_ownsClipboard = false;
m_ownsPrimarySelection = false;
- m_data = (wxDataObject*) NULL;
- m_receivedData = (wxDataObject*) NULL;
+ m_data = NULL;
+ m_receivedData = NULL;
/* we use m_targetsWidget to query what formats are available */
m_formatSupported = false;
m_targetRequested = 0;
-
- m_usePrimary = false;
}
wxClipboard::~wxClipboard()
{
m_waiting = true;
- gtk_selection_owner_set( (GtkWidget*) NULL, g_clipboardAtom,
+ gtk_selection_owner_set( NULL, g_clipboardAtom,
(guint32) GDK_CURRENT_TIME );
while (m_waiting) gtk_main_iteration();
{
m_waiting = true;
- gtk_selection_owner_set( (GtkWidget*) NULL, GDK_SELECTION_PRIMARY,
+ gtk_selection_owner_set( NULL, GDK_SELECTION_PRIMARY,
(guint32) GDK_CURRENT_TIME );
while (m_waiting) gtk_main_iteration();
}
#endif
- if (m_data)
- {
- delete m_data;
- m_data = (wxDataObject*) NULL;
- }
+ wxDELETE(m_data);
#if wxUSE_THREADS
/* re-enable GUI threads */