]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/filectrlcmn.cpp
Applied #15375 to stop event-sending in generic wxSpinCtrl ctor (eco)
[wxWidgets.git] / src / common / filectrlcmn.cpp
index d6b4adb044c4d3030d79df8de0855d3c1e99cefe..f4c8fd27aa8b2f57f4f54a326597726c19e468ea 100644 (file)
@@ -4,7 +4,6 @@
 //              platform-specific wxFileCtrl's
 // Author:      Diaa M. Sami
 // Created:     2007-07-07
-// RCS-ID:      $Id$
 // Copyright:   (c) Diaa M. Sami
 // Licence:     wxWindows licence
 ///////////////////////////////////////////////////////////////////////////////
 #    include "wx/debug.h"
 #endif
 
-const wxChar wxFileCtrlNameStr[] = wxT( "wxfilectrl" );
+const char wxFileCtrlNameStr[] = "wxfilectrl";
 
-DEFINE_EVENT_TYPE( wxEVT_FILECTRL_SELECTIONCHANGED );
-DEFINE_EVENT_TYPE( wxEVT_FILECTRL_FILEACTIVATED );
-DEFINE_EVENT_TYPE( wxEVT_FILECTRL_FOLDERCHANGED );
+wxDEFINE_EVENT( wxEVT_FILECTRL_SELECTIONCHANGED, wxFileCtrlEvent );
+wxDEFINE_EVENT( wxEVT_FILECTRL_FILEACTIVATED, wxFileCtrlEvent );
+wxDEFINE_EVENT( wxEVT_FILECTRL_FOLDERCHANGED, wxFileCtrlEvent );
+wxDEFINE_EVENT( wxEVT_FILECTRL_FILTERCHANGED, wxFileCtrlEvent );
 
 IMPLEMENT_DYNAMIC_CLASS( wxFileCtrlEvent, wxCommandEvent )
 
 // some helper functions
 
+void GenerateFilterChangedEvent( wxFileCtrlBase *fileCtrl, wxWindow *wnd )
+{
+    wxFileCtrlEvent event( wxEVT_FILECTRL_FILTERCHANGED, wnd, wnd->GetId() );
+
+    event.SetFilterIndex( fileCtrl->GetFilterIndex() );
+
+    wnd->GetEventHandler()->ProcessEvent( event );
+}
+
 void GenerateFolderChangedEvent( wxFileCtrlBase *fileCtrl, wxWindow *wnd )
 {
     wxFileCtrlEvent event( wxEVT_FILECTRL_FOLDERCHANGED, wnd, wnd->GetId() );
@@ -84,10 +93,10 @@ wxString wxFileCtrlEvent::GetFile() const
     wxASSERT_MSG( !wxDynamicCast( GetEventObject(), wxFileCtrl )->HasMultipleFileSelection(),
                   wxT( "Please use GetFiles() to get all files instead of this function" ) );
 
-    if ( files.Count() == 0 )
-        return wxEmptyString;
-    else
-        return files[0];
+    wxString string;
+    if (m_files.Count() != 0)
+        string = m_files[0];
+    return string;
 }
 
 #endif // wxUSE_FILECTRL