X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/5440a04fa89937d7977c485d88183295dede061d..696a18c7e7448f195171d0a50a1e4afe231b177d:/src/gtk/textctrl.cpp?ds=inline diff --git a/src/gtk/textctrl.cpp b/src/gtk/textctrl.cpp index 1a1985f805..616a591367 100644 --- a/src/gtk/textctrl.cpp +++ b/src/gtk/textctrl.cpp @@ -159,7 +159,16 @@ static void wxGtkTextApplyTagsFromAttr(GtkWidget *text, case wxTEXT_ALIGNMENT_CENTER: align = GTK_JUSTIFY_CENTER; break; - // gtk+ doesn't support justify as of gtk+-2.7.4 +// gtk+ doesn't support justify before gtk+-2.11.0 with pango-1.17 being available +// (but if new enough pango isn't available it's a mere gtk warning) +#if GTK_CHECK_VERSION(2,11,0) + case wxTEXT_ALIGNMENT_JUSTIFIED: + if (!gtk_check_version(2,11,0)) + align = GTK_JUSTIFY_FILL; + else + align = GTK_JUSTIFY_LEFT; + break; +#endif } g_snprintf(buf, sizeof(buf), "WXALIGNMENT %d", align); @@ -298,9 +307,6 @@ gtk_insert_text_callback(GtkEditable *editable, gint *position, wxTextCtrl *win) { - if (g_isIdle) - wxapp_install_idle_handler(); - // we should only be called if we have a max len limit at all GtkEntry *entry = GTK_ENTRY (editable); @@ -422,7 +428,7 @@ au_check_word( GtkTextIter *s, GtkTextIter *e ) gtk_text_iter_backward_find_char( &end, pred_nonpunct_or_slash, NULL, &start ); gtk_text_iter_forward_char(&end); - gchar* text = gtk_text_iter_get_text( &start, &end ); + wxGtkString text(gtk_text_iter_get_text( &start, &end )); size_t len = strlen(text), prefix_len; size_t n; @@ -547,9 +553,6 @@ gtk_text_changed_callback( GtkWidget *widget, wxTextCtrl *win ) if (!win->m_hasVMT) return; - if (g_isIdle) - wxapp_install_idle_handler(); - if ( win->MarkDirtyOnChange() ) win->MarkDirty(); @@ -691,8 +694,6 @@ bool wxTextCtrl::Create( wxWindow *parent, const wxValidator& validator, const wxString &name ) { - m_needParent = true; - if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { @@ -954,16 +955,12 @@ wxString wxTextCtrl::GetValue() const gtk_text_buffer_get_end_iter( m_buffer, &end ); wxGtkString text(gtk_text_buffer_get_text(m_buffer, &start, &end, true)); - const wxWxCharBuffer buf = wxGTK_CONV_BACK(text); - if ( buf ) - tmp = buf; + return wxGTK_CONV_BACK(text); } else { const gchar *text = gtk_entry_get_text( GTK_ENTRY(m_text) ); - const wxWxCharBuffer buf = wxGTK_CONV_BACK( text ); - if ( buf ) - tmp = buf; + return wxGTK_CONV_BACK(text); } return tmp; @@ -1296,14 +1293,7 @@ bool wxTextCtrl::Enable( bool enable ) return false; } - if ( IsMultiLine() ) - { - SetEditable( enable ); - } - else - { - gtk_widget_set_sensitive( m_text, enable ); - } + gtk_widget_set_sensitive( m_text, enable ); return true; }