X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6305f044a1d4cce68128529fa939a2cc1d35df85..95316a3f245a4baf3046e97222660bed986153ed:/src/gtk/filectrl.cpp?ds=sidebyside diff --git a/src/gtk/filectrl.cpp b/src/gtk/filectrl.cpp index eec4ce2a7a..4613ff18a6 100644 --- a/src/gtk/filectrl.cpp +++ b/src/gtk/filectrl.cpp @@ -14,17 +14,11 @@ #pragma hdrstop #endif -#include "wx/filectrl.h" - #if wxUSE_FILECTRL && !defined(__WXUNIVERSAL__) -#ifndef WX_PRECOMP -# include "wx/sizer.h" -# include "wx/debug.h" -#endif +#include "wx/filectrl.h" #include "wx/gtk/private.h" -#include "wx/filedlg.h" #include "wx/filename.h" #include "wx/scopeguard.h" #include "wx/tokenzr.h" @@ -47,7 +41,7 @@ wxString wxGtkFileChooser::GetPath() const wxGtkString str( gtk_file_chooser_get_filename( m_widget ) ); wxString string; - if (str.c_str() != NULL) + if (str) string = wxString::FromUTF8(str); return string; } @@ -88,7 +82,7 @@ bool wxGtkFileChooser::SetPath( const wxString& path ) if ( path.empty() ) return true; - return gtk_file_chooser_set_filename( m_widget, path.utf8_str() ); + return gtk_file_chooser_set_filename( m_widget, path.utf8_str() ) != 0; } bool wxGtkFileChooser::SetDirectory( const wxString& dir ) @@ -285,6 +279,12 @@ extern "C" IMPLEMENT_DYNAMIC_CLASS( wxGtkFileCtrl, wxControl ) +wxGtkFileCtrl::~wxGtkFileCtrl() +{ + if (m_fcWidget) + GTKDisconnect(m_fcWidget); +} + void wxGtkFileCtrl::Init() { m_checkNextSelEvent = false; @@ -362,7 +362,7 @@ bool wxGtkFileCtrl::Create( wxWindow *parent, if ( !dir.empty() ) { gtk_file_chooser_set_current_folder( m_fcWidget, - dir.fn_str() ); + wxGTK_CONV_FN(dir) ); } const wxString fname = fn.GetFullName(); @@ -371,7 +371,7 @@ bool wxGtkFileCtrl::Create( wxWindow *parent, if ( !fname.empty() ) { gtk_file_chooser_set_current_name( m_fcWidget, - fname.fn_str() ); + wxGTK_CONV_FN(fname) ); } } else // wxFC_OPEN @@ -379,7 +379,7 @@ bool wxGtkFileCtrl::Create( wxWindow *parent, if ( !fname.empty() ) { gtk_file_chooser_set_filename( m_fcWidget, - fn.GetFullPath().fn_str() ); + wxGTK_CONV_FN(fn.GetFullPath()) ); } } @@ -450,8 +450,7 @@ void wxGtkFileCtrl::GetFilenames( wxArrayString& files ) const void wxGtkFileCtrl::ShowHidden(bool show) { - // gtk_file_chooser_set_show_hidden() is new in 2.6 - g_object_set (G_OBJECT (m_fcWidget), "show-hidden", show, NULL); + gtk_file_chooser_set_show_hidden(m_fcWidget, show); } #endif // wxUSE_FILECTRL