X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/9e691f46b2ec1b5dbbff2e51131e3c532e688a89..6b2cf8c9e17dfc59a1b3e8b18f1b06eae9344bf8:/src/gtk/combobox.cpp diff --git a/src/gtk/combobox.cpp b/src/gtk/combobox.cpp index 3cd992283d..99c554c5bd 100644 --- a/src/gtk/combobox.cpp +++ b/src/gtk/combobox.cpp @@ -139,7 +139,7 @@ bool wxComboBox::Create( wxWindow *parent, wxWindowID id, const wxString& value, inserting the first item */ m_alreadySent = TRUE; - GtkWidget *list_item = gtk_list_item_new_with_label( choices[i].mbc_str() ); + GtkWidget *list_item = gtk_list_item_new_with_label( wxGTK_CONV( choices[i] ) ); m_clientDataList.Append( (wxObject*)NULL ); m_clientObjectList.Append( (wxObject*)NULL ); @@ -213,7 +213,7 @@ void wxComboBox::AppendCommon( const wxString &item ) GtkWidget *list = GTK_COMBO(m_widget)->list; - GtkWidget *list_item = gtk_list_item_new_with_label( item.mbc_str() ); + GtkWidget *list_item = gtk_list_item_new_with_label( wxGTK_CONV( item ) ); gtk_container_add( GTK_CONTAINER(list), list_item ); @@ -483,7 +483,7 @@ void wxComboBox::SetValue( const wxString& value ) GtkWidget *entry = GTK_COMBO(m_widget)->entry; wxString tmp = wxT(""); if (!value.IsNull()) tmp = value; - gtk_entry_set_text( GTK_ENTRY(entry), tmp.mbc_str() ); + gtk_entry_set_text( GTK_ENTRY(entry), wxGTK_CONV( tmp ) ); } void wxComboBox::Copy() @@ -541,6 +541,7 @@ void wxComboBox::Replace( long from, long to, const wxString& value ) { wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); // FIXME: not quite sure how to do this method right in multibyte mode + // FIXME GTK 2.0 GtkWidget *entry = GTK_COMBO(m_widget)->entry; gtk_editable_delete_text( GTK_EDITABLE(entry), (gint)from, (gint)to ); @@ -601,29 +602,29 @@ void wxComboBox::OnChar( wxKeyEvent &event ) event.SetEventObject( this ); GetEventHandler()->ProcessEvent( event ); } - else - { - // This will invoke the dialog default action, such - // as the clicking the default button. + + // This will invoke the dialog default action, such + // as the clicking the default button. + + wxWindow *top_frame = m_parent; + while (top_frame->GetParent() && !(top_frame->IsTopLevel())) + top_frame = top_frame->GetParent(); - wxWindow *top_frame = m_parent; - while (top_frame->GetParent() && !(top_frame->IsTopLevel())) - top_frame = top_frame->GetParent(); - - if (top_frame && GTK_IS_WINDOW(top_frame->m_widget)) - { - GtkWindow *window = GTK_WINDOW(top_frame->m_widget); + if (top_frame && GTK_IS_WINDOW(top_frame->m_widget)) + { + GtkWindow *window = GTK_WINDOW(top_frame->m_widget); - if (window->default_widget) - { - gtk_widget_activate (window->default_widget); - return; - } + if (window->default_widget) + { + gtk_widget_activate (window->default_widget); + return; } } + + return; } } - + event.Skip(); } @@ -713,7 +714,7 @@ wxSize wxComboBox::DoGetBestSize() const size_t count = Number(); for ( size_t n = 0; n < count; n++ ) { - width = (wxCoord)gdk_string_width(font, GetString(n).mbc_str()); + width = (wxCoord)gdk_string_width(font, wxGTK_CONV( GetString(n) ) ); if ( width > ret.x ) ret.x = width; }