]> git.saurik.com Git - wxWidgets.git/blobdiff - samples/dnd/dnd.cpp
Added wxWindow_FromHWND(hWnd) for wxMSW to construct a wxWindow from a
[wxWidgets.git] / samples / dnd / dnd.cpp
index 9de516c4813585bef1710b79617ad6aa4fac9a77..f0f0469acf98d6a355dc3294557edbed2c4941c5 100644 (file)
 
 #include  "wx/dnd.h"
 
-#ifdef __WXGTK__
+#ifdef __WXMOTIF__
+#error Sorry, drag and drop is not yet implemented on wxMotif.
+#endif
+
+#if defined(__WXGTK__) || defined(__WXMOTIF__)
 #include "mondrian.xpm"
 #endif
 
@@ -87,8 +91,6 @@ public:
   void OnLeftDown(wxMouseEvent& event);
   void OnRightDown(wxMouseEvent& event);
 
-  bool OnClose();
-
   DECLARE_EVENT_TABLE()
 
 private:
@@ -298,18 +300,17 @@ void DnDFrame::OnLogClear(wxCommandEvent& /* event */ )
   m_ctrlLog->Clear();
 }
 
-bool DnDFrame::OnClose()
-{
-  return TRUE;
-}
-
 void DnDFrame::OnLeftDown(wxMouseEvent &WXUNUSED(event) )
 {
   if ( !m_strText.IsEmpty() ) 
   {
     // start drag operation
-
-    wxDropSource dragSource( new wxTextDataObject (m_strText), this );
+#ifdef __WXMSW__
+    wxTextDataObject textData(m_strText);
+    wxDropSource dragSource( textData, this );
+#else
+    wxDropSource dragSource( new wxTextDataObject (m_strText), this, wxIcon(mondrian_xpm) );
+#endif
     const char *pc;
 
     switch ( dragSource.DoDragDrop(TRUE) )