X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/18976605f5cc721bd51c74f195c223d817ef77d5..4b5386874a1602f5c8b6edbfa74e4d6be619768f:/src/stc/ScintillaWX.h diff --git a/src/stc/ScintillaWX.h b/src/stc/ScintillaWX.h index 04b2ac0333..06b6fec310 100644 --- a/src/stc/ScintillaWX.h +++ b/src/stc/ScintillaWX.h @@ -27,6 +27,7 @@ #include "Platform.h" #include "Scintilla.h" +#include "XPM.h" #ifdef SCI_LEXER #include "SciLexer.h" #include "PropSet.h" @@ -54,7 +55,15 @@ //---------------------------------------------------------------------- -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; }; //----------------------------------------------------------------------