Undid completely wrong patch 1438117: other platforms do _not_ count
the visible lines, only the underlying lines. With the patch, you can't reliably do anything with lines using the other functions. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42968 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
a66136e9aa
commit
c68dea664d
@ -1153,31 +1153,7 @@ int wxTextCtrl::GetNumberOfLines() const
|
||||
{
|
||||
if ( IsMultiLine() )
|
||||
{
|
||||
GtkTextIter iter;
|
||||
gtk_text_buffer_get_iter_at_offset( m_buffer, &iter, 0 );
|
||||
|
||||
// move forward by one display line until the end is reached
|
||||
int lineCount = 1;
|
||||
while ( gtk_text_view_forward_display_line(GTK_TEXT_VIEW(m_text), &iter) )
|
||||
{
|
||||
lineCount++;
|
||||
}
|
||||
|
||||
// If the last character in the text buffer is a newline,
|
||||
// gtk_text_view_forward_display_line() will return false without that
|
||||
// line being counted. Must add one manually in that case.
|
||||
GtkTextIter lastCharIter;
|
||||
gtk_text_buffer_get_iter_at_offset
|
||||
(
|
||||
m_buffer,
|
||||
&lastCharIter,
|
||||
gtk_text_buffer_get_char_count(m_buffer) - 1
|
||||
);
|
||||
gchar lastChar = gtk_text_iter_get_char( &lastCharIter );
|
||||
if ( lastChar == wxT('\n') )
|
||||
lineCount++;
|
||||
|
||||
return lineCount;
|
||||
return gtk_text_buffer_get_line_count( m_buffer );
|
||||
}
|
||||
else // single line
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user