]> git.saurik.com Git - wxWidgets.git/commitdiff
DnD with Unicode fixes
authorRobert Roebling <robert@roebling.de>
Sat, 24 Apr 1999 16:00:28 +0000 (16:00 +0000)
committerRobert Roebling <robert@roebling.de>
Sat, 24 Apr 1999 16:00:28 +0000 (16:00 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2274 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/gtk/dnd.h
include/wx/gtk1/dnd.h
samples/dnd/dnd.cpp
src/gtk/dataobj.cpp
src/gtk/dnd.cpp
src/gtk1/dataobj.cpp
src/gtk1/dnd.cpp

index cf5ff4491372f325e4307f8cde2eab505fa03927..0e76509e1ab09807074a4126f0cdf8dfe57df315 100644 (file)
@@ -111,7 +111,7 @@ public:
   virtual bool OnData( int x, int y );
     
   /* you have to override OnDropData to get at the text */
-  virtual bool OnDropText( int x, int y, const char *text ) = 0;
+  virtual bool OnDropText( int x, int y, const wxChar *text ) = 0;
     
 };
 
index cf5ff4491372f325e4307f8cde2eab505fa03927..0e76509e1ab09807074a4126f0cdf8dfe57df315 100644 (file)
@@ -111,7 +111,7 @@ public:
   virtual bool OnData( int x, int y );
     
   /* you have to override OnDropData to get at the text */
-  virtual bool OnDropText( int x, int y, const char *text ) = 0;
+  virtual bool OnDropText( int x, int y, const wxChar *text ) = 0;
     
 };
 
index a4db60f67e36fe77112b4c09e7574533e349a026..6014a1b10ad0401352ff6b79065d26faf92e6a71 100644 (file)
@@ -42,7 +42,7 @@ class DnDText : public wxTextDropTarget
 public:
   DnDText(wxListBox *pOwner) { m_pOwner = pOwner; }
 
-  virtual bool OnDropText(long x, long y, const char *psz );
+  virtual bool OnDropText(int x, int y, const wxChar* psz );
 
 private:
   wxListBox *m_pOwner;
@@ -53,8 +53,8 @@ class DnDFile : public wxFileDropTarget
 public:
   DnDFile(wxListBox *pOwner) { m_pOwner = pOwner; }
 
-  virtual bool OnDropFiles(long x, long y,
-                           size_t nFiles, const char * const aszFiles[] );
+  virtual bool OnDropFiles(int x, int y,
+                           size_t nFiles, const wxChar* const aszFiles[] );
 
 private:
   wxListBox *m_pOwner;
@@ -349,18 +349,18 @@ DnDFrame::~DnDFrame()
 // ----------------------------------------------------------------------------
 // Notifications called by the base class
 // ----------------------------------------------------------------------------
-bool DnDText::OnDropText(long, long, const char *psz)
+bool DnDText::OnDropText( int, int, const wxChar *psz )
 {
   m_pOwner->Append(psz);
 
   return TRUE;
 }
 
-bool DnDFile::OnDropFiles(long, long, size_t nFiles,
-                          const char * const aszFiles[])
+bool DnDFile::OnDropFiles( int, int, size_t nFiles,
+                           const wxChar* const aszFiles[])
 {
   wxString str;
-  str.Printf("%d files dropped", nFiles);
+  str.Printf( _T("%d files dropped"), nFiles);
   m_pOwner->Append(str);
   for ( size_t n = 0; n < nFiles; n++ ) {
     m_pOwner->Append(aszFiles[n]);
index 246e603722921806ec760265806a6c5a9a72481c..c36564b559fed683bab25d43c926eb0c316afe1e 100644 (file)
@@ -341,7 +341,7 @@ size_t wxTextDataObject::GetSize() const
 
 void wxTextDataObject::WriteString( const wxString &str, void *dest ) const
 {
-    memcpy( dest, m_data.c_str(), GetSize() );
+    memcpy( dest, m_data.mbc_str(), GetSize() );
 }
     
 // ----------------------------------------------------------------------------
@@ -368,7 +368,7 @@ wxString wxFileDataObject::GetFiles() const
     
 void wxFileDataObject::WriteData( void *dest ) const
 {
-    memcpy( dest, m_files.c_str(), GetSize() );
+    memcpy( dest, m_files.mbc_str(), GetSize() );
 }
  
 size_t wxFileDataObject::GetSize() const
index 225318a2352b6499cad6404adcfe2dafd7ec7261..ae53201b1bdf172955d696297206f4d21b3da3c2 100644 (file)
@@ -470,7 +470,7 @@ bool wxTextDropTarget::OnData( int x, int y )
     wxTextDataObject data;
     if (!GetData( &data )) return FALSE;
     
-    OnDropText( x, y, data.GetText().mbc_str() );
+    OnDropText( x, y, data.GetText() );
     
     return TRUE;
 }
@@ -591,6 +591,7 @@ source_drag_data_get  (GtkWidget          *WXUNUSED(widget),
        if (data_object->GetFormat().GetAtom() == selection_data->target)
        {
            size_t data_size = data_object->GetSize();
+           
            if (data_size > 0)
            {
                guchar *buffer = new guchar[data_size];
index 246e603722921806ec760265806a6c5a9a72481c..c36564b559fed683bab25d43c926eb0c316afe1e 100644 (file)
@@ -341,7 +341,7 @@ size_t wxTextDataObject::GetSize() const
 
 void wxTextDataObject::WriteString( const wxString &str, void *dest ) const
 {
-    memcpy( dest, m_data.c_str(), GetSize() );
+    memcpy( dest, m_data.mbc_str(), GetSize() );
 }
     
 // ----------------------------------------------------------------------------
@@ -368,7 +368,7 @@ wxString wxFileDataObject::GetFiles() const
     
 void wxFileDataObject::WriteData( void *dest ) const
 {
-    memcpy( dest, m_files.c_str(), GetSize() );
+    memcpy( dest, m_files.mbc_str(), GetSize() );
 }
  
 size_t wxFileDataObject::GetSize() const
index 225318a2352b6499cad6404adcfe2dafd7ec7261..ae53201b1bdf172955d696297206f4d21b3da3c2 100644 (file)
@@ -470,7 +470,7 @@ bool wxTextDropTarget::OnData( int x, int y )
     wxTextDataObject data;
     if (!GetData( &data )) return FALSE;
     
-    OnDropText( x, y, data.GetText().mbc_str() );
+    OnDropText( x, y, data.GetText() );
     
     return TRUE;
 }
@@ -591,6 +591,7 @@ source_drag_data_get  (GtkWidget          *WXUNUSED(widget),
        if (data_object->GetFormat().GetAtom() == selection_data->target)
        {
            size_t data_size = data_object->GetSize();
+           
            if (data_size > 0)
            {
                guchar *buffer = new guchar[data_size];