X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/4719e58dc1797a219b7e90322e07cc81b5149bdc..b9efe021b554fa3967d1442cf758435c5cd5ae8f:/include/wx/vscroll.h diff --git a/include/wx/vscroll.h b/include/wx/vscroll.h index bdbb29f206..5ac9a142c0 100644 --- a/include/wx/vscroll.h +++ b/include/wx/vscroll.h @@ -95,10 +95,10 @@ public: virtual bool ScrollPages(int pages); // redraw the specified line - void RefreshLine(size_t line); + virtual void RefreshLine(size_t line); // redraw all lines in the specified range (inclusive) - void RefreshLines(size_t from, size_t to); + virtual void RefreshLines(size_t from, size_t to); // return the item at the specified (in physical coordinates) position or. @@ -118,14 +118,26 @@ public: size_t GetLineCount() const { return m_lineMax; } // get the first currently visible line - size_t GetFirstVisibleLine() const { return m_lineFirst; } + size_t GetVisibleBegin() const { return m_lineFirst; } - // get the last currently visible line - size_t GetLastVisibleLine() const { return m_lineFirst + m_nVisible - 1; } + // get the first currently visible line + size_t GetVisibleEnd() const { return m_lineFirst + m_nVisible; } // is this line currently visible? bool IsVisible(size_t line) const - { return line >= m_lineFirst && line <= GetLastVisibleLine(); } + { return line >= GetVisibleBegin() && line < GetVisibleEnd(); } + + + // this is the same as GetVisibleBegin(), exists to match + // GetLastVisibleLine() and for backwards compatibility only + size_t GetFirstVisibleLine() const { return m_lineFirst; } + + // get the last currently visible line + // + // this function is unsafe as it returns (size_t)-1 (i.e. a huge positive + // number) if the control is empty, use GetVisibleEnd() instead, this one + // is kept for backwards compatibility + size_t GetLastVisibleLine() const { return GetVisibleEnd() - 1; } protected: