X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/903f689bf7c3c379cba45881373aa9bdd15d6e70..ab346a0c3fb17c72f7aae290b83f2803e3b56fb2:/src/gtk1/textctrl.cpp diff --git a/src/gtk1/textctrl.cpp b/src/gtk1/textctrl.cpp index ee8b8e0dde..44c3429337 100644 --- a/src/gtk1/textctrl.cpp +++ b/src/gtk1/textctrl.cpp @@ -17,11 +17,9 @@ #include //----------------------------------------------------------------------------- -// wxTextCtrl +// "changed" //----------------------------------------------------------------------------- -IMPLEMENT_DYNAMIC_CLASS(wxTextCtrl,wxControl) - static void gtk_text_changed_callback( GtkWidget *WXUNUSED(widget), wxTextCtrl *win ) { win->SetModified(); @@ -33,6 +31,12 @@ static void gtk_text_changed_callback( GtkWidget *WXUNUSED(widget), wxTextCtrl * win->GetEventHandler()->ProcessEvent( event ); } +//----------------------------------------------------------------------------- +// wxTextCtrl +//----------------------------------------------------------------------------- + +IMPLEMENT_DYNAMIC_CLASS(wxTextCtrl,wxControl) + BEGIN_EVENT_TABLE(wxTextCtrl, wxControl) EVT_CHAR(wxTextCtrl::OnChar) END_EVENT_TABLE() @@ -72,7 +76,7 @@ bool wxTextCtrl::Create( wxWindow *parent, wxWindowID id, const wxString &value, bool bHasHScrollbar = (style & wxHSCROLL) != 0; // create our control... - m_text = gtk_text_new( NULL, NULL ); + m_text = gtk_text_new( (GtkAdjustment *) NULL, (GtkAdjustment *) NULL ); // ... and put into the upper left hand corner of the table m_widget = gtk_table_new(bHasHScrollbar ? 2 : 1, 2, FALSE); @@ -320,7 +324,6 @@ void wxTextCtrl::OnChar( wxKeyEvent &key_event ) { wxCommandEvent event(wxEVT_COMMAND_TEXT_ENTER, m_windowId); event.SetEventObject(this); - printf( "Hallo.\n" ); if (GetEventHandler()->ProcessEvent(event)) return; } else if (key_event.KeyCode() == WXK_TAB) @@ -425,5 +428,28 @@ bool wxTextCtrl::IsOwnGtkWindow( GdkWindow *window ) return (window == GTK_ENTRY(m_text)->text_area); } +void wxTextCtrl::SetFont( const wxFont &font ) +{ + if (((wxFont*)&font)->Ok()) + m_font = font; + else + m_font = *wxSWISS_FONT; + + GtkStyle *style = (GtkStyle*) NULL; + if (!m_hasOwnStyle) + { + m_hasOwnStyle = TRUE; + style = gtk_style_copy( gtk_widget_get_style( m_text ) ); + } + else + { + style = gtk_widget_get_style( m_text ); + } + + gdk_font_unref( style->font ); + style->font = gdk_font_ref( m_font.GetInternalFont( 1.0 ) ); + + gtk_widget_set_style( m_text, style ); +}