]> git.saurik.com Git - wxWidgets.git/blobdiff - src/stc/ScintillaWX.h
define WM_CONTEXTMENU if the standard headers don't
[wxWidgets.git] / src / stc / ScintillaWX.h
index 1316c6661d3b965b176a8ccd46557def063ff9c8..e703efe606873775137cca5f1119bf3cd3c31929 100644 (file)
@@ -1,6 +1,6 @@
 ////////////////////////////////////////////////////////////////////////////
 // Name:        ScintillaWX.h
-// Purpose:     A wxWindows implementation of Scintilla.  A class derived
+// Purpose:     A wxWidgets implementation of Scintilla.  A class derived
 //              from ScintillaBase that uses the "wx platform" defined in
 //              PlatWX.cpp.  This class is one end of a bridge between
 //              the wx world and the Scintilla world.  It needs a peer
 #include "Editor.h"
 #include "ScintillaBase.h"
 
-#include <wx/wx.h>
-#include <wx/dataobj.h>
-#include <wx/clipbrd.h>
-#include <wx/dnd.h>
 
 //----------------------------------------------------------------------
 
@@ -127,6 +123,8 @@ public:
 
     virtual void CancelModes();
 
+    virtual void UpdateSystemCaret();
+
     // Event delegates
     void DoPaint(wxDC* dc, wxRect rect);
     void DoHScroll(int type, int pos);
@@ -141,10 +139,10 @@ public:
     void DoMiddleButtonUp(Point pt);
     void DoMouseWheel(int rotation, int delta, int linesPerAction, int ctrlDown, bool isPageScroll);
     void DoAddChar(int key);
-    int  DoKeyDown(int key, bool shift, bool ctrl, bool alt, bool meta, bool* consumed);
+    int  DoKeyDown(const wxKeyEvent& event, bool* consumed);
     void DoTick() { Tick(); }
     void DoOnIdle(wxIdleEvent& evt);
-    
+
 #if wxUSE_DRAG_AND_DROP
     bool DoDropText(long x, long y, const wxString& data);
     wxDragResult DoDragEnter(wxCoord x, wxCoord y, wxDragResult def);
@@ -158,12 +156,14 @@ public:
 
 
     // helpers
-    void FullPaint(wxDC *dc);
+    void FullPaint();
     bool CanPaste();
     bool GetHideSelection() { return hideSelection; }
     void DoScrollToLine(int line);
     void DoScrollToColumn(int column);
     void ClipChildren(wxDC& dc, PRectangle rect);
+    void SetUseAntiAliasing(bool useAA);
+    bool GetUseAntiAliasing();
 
 private:
     bool                capturedMouse;
@@ -176,7 +176,16 @@ private:
 #endif
     int                 wheelRotation;
 
-
+    // For use in creating a system caret
+    bool HasCaretSizeChanged();
+    bool CreateSystemCaret();
+    bool DestroySystemCaret();
+#ifdef __WXMSW__
+    HBITMAP sysCaretBitmap;
+    int sysCaretWidth;
+    int sysCaretHeight;
+#endif
+    
     friend class wxSTCCallTip;
 };