]> git.saurik.com Git - wxWidgets.git/blobdiff - src/os2/clipbrd.cpp
cgimagecreate from wxbitmap crashes 10.2 - turn off. Put in right click handler to...
[wxWidgets.git] / src / os2 / clipbrd.cpp
index ca6319b54fc1fa21baa55594b3523dc9a4f044a8..efb52d4ea3f99ff72fa3ef7322a2819cbefd3e24 100644 (file)
 
 #include <string.h>
 
-#define INCL_DOS
-#define INCL_PM
-#include <os2.h>
-
 #include "wx/os2/private.h"
 
 // wxDataObject is tied to OLE/drag and drop implementation,
@@ -48,7 +44,7 @@
 #if wxUSE_DRAG_AND_DROP
     #include "wx/dataobj.h"
 
-    static bool wxSetClipboardData(wxDataObject *data);
+//    static bool wxSetClipboardData(wxDataObject *data);
 #endif
 
 // ===========================================================================
@@ -128,6 +124,7 @@ bool wxIsClipboardFormatAvailable(wxDataFormat dataFormat)
     return FALSE;
 }
 
+#if 0
 #if wxUSE_DRAG_AND_DROP
 static bool wxSetClipboardData(wxDataObject *data)
 {
@@ -161,6 +158,7 @@ static bool wxSetClipboardData(wxDataObject *data)
     return TRUE;
 }
 #endif // wxUSE_DRAG_AND_DROP
+#endif
 
 bool wxSetClipboardData(wxDataFormat dataFormat,
                         const void *data,
@@ -285,7 +283,7 @@ bool wxSetClipboardData(wxDataFormat dataFormat,
 
 void *wxGetClipboardData(wxDataFormat dataFormat, long *len)
 {
-    void *retval = NULL;
+//  void *retval = NULL;
 // TODO:
 /*
     switch ( dataFormat )
@@ -436,8 +434,6 @@ bool wxGetClipboardFormatName(wxDataFormat dataFormat,
 
 IMPLEMENT_DYNAMIC_CLASS(wxClipboard, wxObject)
 
-wxClipboard* wxTheClipboard = (wxClipboard *)NULL;
-
 wxClipboard::wxClipboard()
 {
 }
@@ -451,11 +447,22 @@ void wxClipboard::Clear()
 {
 }
 
+bool wxClipboard::Flush()
+{
+    // TODO:
+    return FALSE;
+}
+
 bool wxClipboard::Open()
 {
     return wxOpenClipboard();
 }
 
+bool wxClipboard::IsOpened() const
+{
+    return wxIsClipboardOpened();
+}
+
 bool wxClipboard::SetData( wxDataObject *data )
 {
     (void)wxEmptyClipboard();
@@ -476,7 +483,7 @@ bool wxClipboard::AddData( wxDataObject *data )
 #if wxUSE_DRAG_AND_DROP
     wxCHECK_MSG( wxIsClipboardOpened(), FALSE, wxT("clipboard not open") );
 
-//    wxDataFormat format = data->GetFormat();
+//    wxDataFormat format = data->GetPreferredFormat();
 // TODO:
 /*
     switch ( format )
@@ -494,7 +501,7 @@ bool wxClipboard::AddData( wxDataObject *data )
         {
             wxBitmapDataObject* bitmapDataObject = (wxBitmapDataObject*) data;
             wxBitmap bitmap(bitmapDataObject->GetBitmap());
-            return wxSetClipboardData(data->GetFormat(), &bitmap);
+            return wxSetClipboardData(data->GetPreferredFormat(), &bitmap);
         }
 
 #if wxUSE_METAFILE
@@ -515,6 +522,8 @@ bool wxClipboard::AddData( wxDataObject *data )
 #else // !wxUSE_DRAG_AND_DROP
 */
     return FALSE;
+#else
+    return FALSE;
 #endif // wxUSE_DRAG_AND_DROP/!wxUSE_DRAG_AND_DROP
 }
 
@@ -523,17 +532,17 @@ void wxClipboard::Close()
     wxCloseClipboard();
 }
 
-bool wxClipboard::IsSupported( wxDataFormat format )
+bool wxClipboard::IsSupported( const wxDataFormat& format )
 {
     return wxIsClipboardFormatAvailable(format);
 }
 
-bool wxClipboard::GetData( wxDataObject *data )
+bool wxClipboard::GetData( wxDataObjectdata )
 {
     wxCHECK_MSG( wxIsClipboardOpened(), FALSE, wxT("clipboard not open") );
 
 #if wxUSE_DRAG_AND_DROP
-//    wxDataFormat format = data->GetFormat();
+//    wxDataFormat format = data.GetPreferredFormat();
     // TODO:
 /*
     switch ( format )
@@ -541,11 +550,11 @@ bool wxClipboard::GetData( wxDataObject *data )
         case wxDF_TEXT:
         case wxDF_OEMTEXT:
         {
-            wxTextDataObject* textDataObject = (wxTextDataObject*) data;
+            wxTextDataObject& textDataObject = (wxTextDataObject&) data;
             char* s = (char*) wxGetClipboardData(format);
             if ( s )
             {
-                textDataObject->SetText(s);
+                textDataObject.SetText(s);
                 delete[] s;
                 return TRUE;
             }
@@ -556,11 +565,11 @@ bool wxClipboard::GetData( wxDataObject *data )
         case wxDF_BITMAP:
         case wxDF_DIB:
         {
-            wxBitmapDataObject* bitmapDataObject = (wxBitmapDataObject *)data;
-            wxBitmap* bitmap = (wxBitmap *)wxGetClipboardData(data->GetFormat());
+            wxBitmapDataObject& bitmapDataObject = (wxBitmapDataObject &)data;
+            wxBitmap* bitmap = (wxBitmap *)wxGetClipboardData(data->GetPreferredFormat());
             if (bitmap)
             {
-                bitmapDataObject->SetBitmap(* bitmap);
+                bitmapDataObject.SetBitmap(* bitmap);
                 delete bitmap;
                 return TRUE;
             }
@@ -570,11 +579,11 @@ bool wxClipboard::GetData( wxDataObject *data )
 #if wxUSE_METAFILE
         case wxDF_METAFILE:
         {
-            wxMetafileDataObject* metaFileDataObject = (wxMetafileDataObject *)data;
+            wxMetafileDataObject& metaFileDataObject = (wxMetafileDataObject &)data;
             wxMetafile* metaFile = (wxMetafile *)wxGetClipboardData(wxDF_METAFILE);
             if (metaFile)
             {
-                metaFileDataObject->SetMetafile(*metaFile);
+                metaFileDataObject.SetMetafile(*metaFile);
                 delete metaFile;
                 return TRUE;
             }
@@ -589,7 +598,7 @@ bool wxClipboard::GetData( wxDataObject *data )
                 if ( buf )
                 {
                     // FIXME this is for testing only!!
-                    ((wxPrivateDataObject *)data)->SetData(buf, len);
+                    ((wxPrivateDataObject &)data).SetData(buf, len);
                     free(buf);
 
                     return TRUE;
@@ -601,28 +610,11 @@ bool wxClipboard::GetData( wxDataObject *data )
 #else
 */
     return FALSE;
+#else
+    return FALSE;
 #endif
 }
 
-//-----------------------------------------------------------------------------
-// wxClipboardModule
-//-----------------------------------------------------------------------------
-
-IMPLEMENT_DYNAMIC_CLASS(wxClipboardModule,wxModule)
-
-bool wxClipboardModule::OnInit()
-{
-    wxTheClipboard = new wxClipboard();
-
-    return TRUE;
-}
-
-void wxClipboardModule::OnExit()
-{
-    if (wxTheClipboard) delete wxTheClipboard;
-    wxTheClipboard = (wxClipboard*) NULL;
-}
-
 #else
     #error "Please turn wxUSE_CLIPBOARD on to compile this file."
 #endif // wxUSE_CLIPBOARD