X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2bfca191bf2261e385594a369da9aa4e4441aa43..f96f6a880c6e7127bb9fe7aa7268d984dafdc7af:/src/stc/stc.h.in diff --git a/src/stc/stc.h.in b/src/stc/stc.h.in index 8a6abafc25..4f313a11e3 100644 --- a/src/stc/stc.h.in +++ b/src/stc/stc.h.in @@ -39,6 +39,7 @@ #include "wx/dnd.h" #include "wx/stopwatch.h" +#include "wx/textentry.h" #if wxUSE_TEXTCTRL #include "wx/textctrl.h" #endif // wxUSE_TEXTCTRL @@ -84,6 +85,7 @@ class WXDLLIMPEXP_FWD_STC wxStyledTextEvent; //---------------------------------------------------------------------- class WXDLLIMPEXP_STC wxStyledTextCtrl : public wxControl + , public wxTextEntryBase #if wxUSE_TEXTCTRL , public wxTextAreaBase #endif // wxUSE_TEXTCTRL @@ -202,7 +204,7 @@ public: // NB: this method is not really const as it can modify the control but it // has to be declared as such as it's called from both const and // non-const methods and we can't distinguish between the two - long SendMsg(int msg, long wp=0, long lp=0) const; + wxIntPtr SendMsg(int msg, wxUIntPtr wp=0, wxIntPtr lp=0) const; // Set the vertical scrollbar to use instead of the ont that's built-in. @@ -286,6 +288,65 @@ public: #endif + // implement wxTextEntryBase pure virtual methods + // ---------------------------------------------- + + virtual void WriteText(const wxString& text) { AddText(text); } + virtual wxString GetValue() const { return GetText(); } + virtual void Remove(long from, long to) + { + Replace(from, to, ""); + } + virtual void Replace(long from, long to, const wxString& text) + { + SetTargetStart(from); + SetTargetEnd(to); + ReplaceTarget(text); + } + + /* + These functions are already declared in the generated section. + + virtual void Copy(); + virtual void Cut(); + virtual void Paste(); + + virtual void Undo(); + virtual void Redo(); + + virtual bool CanUndo() const; + virtual bool CanRedo() const; + + */ + + virtual void SetInsertionPoint(long pos) { SetCurrentPos(pos); } + virtual long GetInsertionPoint() const { return GetCurrentPos(); } + virtual long GetLastPosition() const { return GetTextLength(); } + + virtual void SetSelection(long from, long to) + { + if ( from == -1 && to == -1 ) + { + SelectAll(); + } + else + { + SetSelectionStart(from); + SetSelectionEnd(to); + } + } + + virtual void GetSelection(long *from, long *to) const + { + if ( from ) + *from = GetSelectionStart(); + if ( to ) + *to = GetSelectionEnd(); + } + + virtual bool IsEditable() const { return !GetReadOnly(); } + virtual void SetEditable(bool editable) { SetReadOnly(!editable); } + // implement wxTextAreaBase pure virtual methods // --------------------------------------------- @@ -342,10 +403,7 @@ public: return true; } - virtual void ShowPosition(long pos) - { - EnsureVisible(LineFromPosition(pos)); - } + virtual void ShowPosition(long pos) { GotoPos(pos); } using wxWindow::HitTest; @@ -407,6 +465,10 @@ protected: bool m_lastKeyDownConsumed; + // the timestamp that consists of the last wheel event + // added to the time taken to process that event. + long m_lastWheelTimestamp; + friend class ScintillaWX; friend class Platform; #endif // !SWIG