]> git.saurik.com Git - wxWidgets.git/blobdiff - src/stc/ScintillaWX.h
set device origin when drawing on a frame in order to not overwrite the menu/toolbar...
[wxWidgets.git] / src / stc / ScintillaWX.h
index 04b2ac03334234128380d6be32010656e2b09033..06b6fec31068053993c4c54cb812b32bc54a9525 100644 (file)
@@ -27,6 +27,7 @@
 #include "Platform.h"
 
 #include "Scintilla.h"
+#include "XPM.h"
 #ifdef SCI_LEXER
 #include "SciLexer.h"
 #include "PropSet.h"
 
 //----------------------------------------------------------------------
 
-class wxStyledTextCtrl;           // forward
+#ifdef WXMAKINGDLL_STC
+    #define WXDLLIMPEXP_STC WXEXPORT
+#elif defined(WXUSINGDLL)
+    #define WXDLLIMPEXP_STC WXIMPORT
+#else // not making nor using DLL
+    #define WXDLLIMPEXP_STC
+#endif
+
+class WXDLLIMPEXP_STC wxStyledTextCtrl;           // forward
 class ScintillaWX;
 
 
@@ -90,6 +99,7 @@ public:
     virtual void Initialise();
     virtual void Finalise();
     virtual void StartDrag();
+    virtual bool SetIdle(bool on);
     virtual void SetTicking(bool on);
     virtual void SetMouseCapture(bool on);
     virtual bool HaveMouseCapture();
@@ -99,6 +109,8 @@ public:
     virtual bool ModifyScrollBars(int nMax, int nPage);
     virtual void Copy();
     virtual void Paste();
+    virtual void CopyToClipboard(const SelectionText &selectedText);
+
     virtual void CreateCallTipWindow(PRectangle rc);
     virtual void AddToPopUp(const char *label, int cmd = 0, bool enabled = true);
     virtual void ClaimSelection();
@@ -113,6 +125,7 @@ public:
     virtual void NotifyChange();
     virtual void NotifyParent(SCNotification scn);
 
+    virtual void CancelModes();
 
     // Event delegates
     void DoPaint(wxDC* dc, wxRect rect);
@@ -128,9 +141,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* consumed);
+    int  DoKeyDown(int key, bool shift, bool ctrl, bool alt, bool meta, 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);
@@ -144,13 +158,18 @@ public:
 
 
     // helpers
-    void FullPaint();
+    void FullPaint(wxDC *dc);
     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;
+    bool                focusEvent;
     wxStyledTextCtrl*   stc;
 
 #if wxUSE_DRAG_AND_DROP
@@ -158,6 +177,9 @@ private:
     wxDragResult        dragResult;
 #endif
     int                 wheelRotation;
+
+
+    friend class wxSTCCallTip;
 };
 
 //----------------------------------------------------------------------