//----------------------------------------------------------------------
-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;
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();
virtual void NotifyChange();
virtual void NotifyParent(SCNotification scn);
+ virtual void CancelModes();
// Event delegates
void DoPaint(wxDC* dc, wxRect rect);
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);
// helpers
- void FullPaint();
+ void FullPaint(wxDC *dc);
bool CanPaste();
bool GetHideSelection() { return hideSelection; }
void DoScrollToLine(int line);
private:
bool capturedMouse;
+ bool focusEvent;
wxStyledTextCtrl* stc;
#if wxUSE_DRAG_AND_DROP