]> git.saurik.com Git - wxWidgets.git/commitdiff
Restore text drag-and-drop in wxSTC broken by Scintilla 2 update.
authorVadim Zeitlin <vadim@wxwidgets.org>
Sat, 16 Oct 2010 18:11:06 +0000 (18:11 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Sat, 16 Oct 2010 18:11:06 +0000 (18:11 +0000)
Drag and drop in wxStyledTextCtrl was broken, apparently since upgrade to
Scintilla 2. Restore it by using the correct wxDrag_XXX constants instead of
boolean values in the code for wxEVT_STC_START_DRAG events generation.

Closes #11709.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65827 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

docs/changes.txt
include/wx/stc/stc.h
src/stc/ScintillaWX.cpp
src/stc/stc.cpp

index da88a048165967c6bd9a39b28611783815f7965a..8d0d2525778425e93b97c8c9b446ea3247aae228 100644 (file)
@@ -416,6 +416,7 @@ All (GUI):
 - Consistency fixes for keyboard events across all major ports.
 - Added EVT_RIBBONBAR_TAB_LEFT_DCLICK event (snowleopard).
 - Fix display of right aligned columns in wxGenericListCtrl (jl).
+- Restore text drag-and-drop in wxSTC broken by Scintilla 2 update (Jens Lody).
 
 MSW:
 
index 288bf355281bae05efbec8b94b1c31facde5887f..ecce1ba3c6ff267d08ed2ee2d1f36f35195371ba 100644 (file)
@@ -4326,7 +4326,7 @@ public:
     void SetX(int val)                    { m_x = val; }
     void SetY(int val)                    { m_y = val; }
     void SetDragText(const wxString& val) { m_dragText = val; }
-    void SetDragAllowMove(bool val)       { m_dragAllowMove = val; }
+    void SetDragAllowMove(int val)        { m_dragAllowMove = val; }
 #ifdef  STC_USE_DND
     void SetDragResult(wxDragResult val)  { m_dragResult = val; }
 #endif
@@ -4349,7 +4349,7 @@ public:
     int  GetX() const                { return m_x; }
     int  GetY() const                { return m_y; }
     wxString GetDragText()           { return m_dragText; }
-    bool GetDragAllowMove()          { return m_dragAllowMove; }
+    int GetDragAllowMove()           { return m_dragAllowMove; }
 #ifdef STC_USE_DND
     wxDragResult GetDragResult()     { return m_dragResult; }
 #endif
@@ -4387,7 +4387,7 @@ private:
     int m_y;
 
     wxString m_dragText;        // wxEVT_STC_START_DRAG, wxEVT_STC_DO_DROP
-    bool     m_dragAllowMove;   // wxEVT_STC_START_DRAG
+    int      m_dragAllowMove;   // wxEVT_STC_START_DRAG
 
 #if wxUSE_DRAG_AND_DROP
     wxDragResult m_dragResult; // wxEVT_STC_DRAG_OVER,wxEVT_STC_DO_DROP
index b8a53528444f5096a1bfd9618b0a33e0f02b525d..8ede8b4cf8348d385ef3fbd5fe5b3862d2c5cee0 100644 (file)
@@ -283,7 +283,7 @@ void ScintillaWX::StartDrag() {
     wxStyledTextEvent evt(wxEVT_STC_START_DRAG, stc->GetId());
     evt.SetEventObject(stc);
     evt.SetDragText(dragText);
-    evt.SetDragAllowMove(true);
+    evt.SetDragAllowMove(wxDrag_DefaultMove);
     evt.SetPosition(wxMin(stc->GetSelectionStart(),
                           stc->GetSelectionEnd()));
     stc->GetEventHandler()->ProcessEvent(evt);
index 2d393f898526e0a91be75858d91b8014ed2ac716..34d804cab548ff8fc60da024bdb1560f44393553 100644 (file)
@@ -4573,7 +4573,7 @@ wxStyledTextEvent::wxStyledTextEvent(wxEventType commandType, int id)
     m_listType = 0;
     m_x = 0;
     m_y = 0;
-    m_dragAllowMove = false;
+    m_dragAllowMove = wxDrag_CopyOnly;
 #if wxUSE_DRAG_AND_DROP
     m_dragResult = wxDragNone;
 #endif