]> git.saurik.com Git - wxWidgets.git/blobdiff - src/generic/dirdlgg.cpp
Fixed wxFileDialog and VC++ DLL compilation
[wxWidgets.git] / src / generic / dirdlgg.cpp
index 5f23be06812049a9dbd60a7f2df442a1927a262a..da985fa3af3060a03bd19dd64cbac5bd643f3dbf 100644 (file)
 #pragma implementation "dirdlgg.h"
 #endif
 
+// For compilers that support precompilation, includes "wx.h".
+#include "wx/wxprec.h"
+
+#ifdef __BORLANDC__
+#pragma hdrstop
+#endif
+
 #include "wx/defs.h"
 #include "wx/utils.h"
 #include "wx/dialog.h"
 
 #include "wx/generic/dirdlgg.h"
 
+// If compiled under Windows, this macro can cause problems
+#ifdef GetFirstChild
+#undef GetFirstChild
+#endif
+
 /* XPM */
 static char * icon1_xpm[] = {
 /* width height ncolors chars_per_pixel */
@@ -126,8 +138,8 @@ class wxDirCtrl: public wxTreeCtrl
              const wxSize& size = wxDefaultSize,
              const long style = wxTR_HAS_BUTTONS,
              const wxString& name = "wxTreeCtrl" );
-    void OnExpandItem( const wxTreeEvent &event );
-    void OnCollapseItem( const wxTreeEvent &event );
+    void OnExpandItem(wxTreeEvent &event );
+    void OnCollapseItem(wxTreeEvent &event );
     void ShowHidden( const bool yesno );
     DECLARE_EVENT_TABLE()
  protected:
@@ -235,7 +247,7 @@ void wxDirCtrl::CreateItems(const wxTreeItemId &parent)
   }
 }
 
-void wxDirCtrl::OnExpandItem( const wxTreeEvent &event )
+void wxDirCtrl::OnExpandItem(wxTreeEvent &event )
 {
   if (event.GetItem() == m_rootId)
   {
@@ -268,10 +280,12 @@ void wxDirCtrl::OnExpandItem( const wxTreeEvent &event )
   }
   CreateItems(event.GetItem());
   wxEndBusyCursor();
+  
+  SortChildren( event.GetItem() );
 };
 
 
-void wxDirCtrl::OnCollapseItem( const wxTreeEvent &event )
+void wxDirCtrl::OnCollapseItem(wxTreeEvent &event )
 {
   wxTreeItemId child, parent = event.GetItem();
   long cookie;
@@ -412,7 +426,7 @@ void wxDirDialog::OnTreeSelected( wxTreeEvent &event )
     m_input->SetValue( *(data->m_path) );
 };
 
-void wxDirDialog::OnTreeKeyDown( wxKeyEvent &WXUNUSED(event) )
+void wxDirDialog::OnTreeKeyDown( wxTreeEvent &WXUNUSED(event) )
 {
   wxDirItemData *data = 
     (wxDirItemData*)m_dir->GetItemData(m_dir->GetSelection());