]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/textctrl.h
Rename web library to webview.
[wxWidgets.git] / include / wx / textctrl.h
index eb7c2140ceff0dd7c6113cbddf1c9a3b5656e7ef..d412a3dc437203ebe279799894049d23ea314b69 100644 (file)
@@ -379,8 +379,8 @@ public:
     int GetOutlineLevel() const { return m_outlineLevel; }
 
     // accessors
-    bool HasTextColour() const { return m_colText.Ok() && HasFlag(wxTEXT_ATTR_TEXT_COLOUR) ; }
-    bool HasBackgroundColour() const { return m_colBack.Ok() && HasFlag(wxTEXT_ATTR_BACKGROUND_COLOUR) ; }
+    bool HasTextColour() const { return m_colText.IsOk() && HasFlag(wxTEXT_ATTR_TEXT_COLOUR) ; }
+    bool HasBackgroundColour() const { return m_colBack.IsOk() && HasFlag(wxTEXT_ATTR_BACKGROUND_COLOUR) ; }
     bool HasAlignment() const { return (m_textAlignment != wxTEXT_ALIGNMENT_DEFAULT) && HasFlag(wxTEXT_ATTR_ALIGNMENT) ; }
     bool HasTabs() const { return HasFlag(wxTEXT_ATTR_TABS) ; }
     bool HasLeftIndent() const { return HasFlag(wxTEXT_ATTR_LEFT_INDENT); }
@@ -574,6 +574,11 @@ public:
     virtual long XYToPosition(long x, long y) const = 0;
     virtual bool PositionToXY(long pos, long *x, long *y) const = 0;
 
+    // translate the given position (which is just an index in the text control)
+    // to client coordinates
+    wxPoint PositionToCoords(long pos) const;
+
+
     virtual void ShowPosition(long pos) = 0;
 
     // find the character at position given in pixels
@@ -592,6 +597,13 @@ protected:
     virtual bool DoLoadFile(const wxString& file, int fileType);
     virtual bool DoSaveFile(const wxString& file, int fileType);
 
+    // Return true if the given position is valid, i.e. positive and less than
+    // the last position.
+    virtual bool IsValidPosition(long pos) const = 0;
+
+    // Default stub implementation of PositionToCoords() always returns
+    // wxDefaultPosition.
+    virtual wxPoint DoPositionToCoords(long pos) const;
 
     // the name of the last file loaded with LoadFile() which will be used by
     // SaveFile() by default
@@ -625,6 +637,12 @@ public:
        wxTextEntryBase::SetValue(value);
     }
 
+protected:
+    virtual bool IsValidPosition(long pos) const
+    {
+        return pos >= 0 && pos <= GetLastPosition();
+    }
+
 private:
     wxDECLARE_NO_COPY_CLASS(wxTextCtrlIface);
 };
@@ -723,6 +741,12 @@ protected:
     virtual bool DoLoadFile(const wxString& file, int fileType);
     virtual bool DoSaveFile(const wxString& file, int fileType);
 
+    // Another wxTextAreaBase override.
+    virtual bool IsValidPosition(long pos) const
+    {
+        return pos >= 0 && pos <= GetLastPosition();
+    }
+
     // implement the wxTextEntry pure virtual method
     virtual wxWindow *GetEditableWindow() { return this; }