| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144 | 
							- ///////////////////////////////////////////////////////////////////////////////
 
- // Name:        wx/gtk/filectrl.h
 
- // Purpose:     wxGtkFileCtrl Header
 
- // Author:      Diaa M. Sami
 
- // Modified by:
 
- // Created:     Aug-10-2007
 
- // Copyright:   (c) Diaa M. Sami
 
- // Licence:     wxWindows licence
 
- ///////////////////////////////////////////////////////////////////////////////
 
- #ifndef _WX_GTK_FILECTRL_H_
 
- #define _WX_GTK_FILECTRL_H_
 
- #include "wx/control.h"
 
- #include "wx/filectrl.h"
 
- extern WXDLLIMPEXP_DATA_CORE(const char) wxFileSelectorDefaultWildcardStr[];
 
- typedef struct _GtkFileChooser GtkFileChooser;
 
- // [GTK] current problems:
 
- // All methods(e.g. SetFilename(), SetPath(), etc) which change the state of
 
- // the control result in events fired, such events should be suppressed.
 
- // ------
 
- // Sometimes a selection event(with 0 files) is fired before
 
- // wxEVT_FILECTRL_FOLDERCHANGED, unfortunately this can hardly be detected!
 
- // A wx wrapper for any Gtk object implementing the interface GtkFileChooser
 
- class WXDLLIMPEXP_CORE wxGtkFileChooser
 
- {
 
- public:
 
-     wxGtkFileChooser() { m_ignoreNextFilterEvent = false; }
 
-     void SetWidget(GtkFileChooser *w);
 
-     wxString GetPath() const;
 
-     void GetPaths( wxArrayString& paths ) const;
 
-     wxString GetDirectory() const;
 
-     wxString GetFilename() const;
 
-     void GetFilenames( wxArrayString& files ) const;
 
-     int GetFilterIndex() const;
 
-     bool SetPath( const wxString& path );
 
-     bool SetDirectory( const wxString& dir );
 
-     void SetWildcard( const wxString& wildCard );
 
-     void SetFilterIndex( int filterIndex );
 
-     bool HasFilterChoice() const;
 
-     bool ShouldIgnoreNextFilterEvent() const { return m_ignoreNextFilterEvent; }
 
-     wxString GetCurrentWildCard() const
 
-        { return m_wildcards[GetFilterIndex()]; }
 
- private:
 
-     GtkFileChooser *m_widget;
 
-     // First wildcard in filter, to be used when the user
 
-     // saves a file without giving an extension.
 
-     wxArrayString   m_wildcards;
 
-     // If true, ignore the next event because it was generated by us and not
 
-     // the user.
 
-     bool m_ignoreNextFilterEvent;
 
- };
 
- #if wxUSE_FILECTRL
 
- class WXDLLIMPEXP_CORE wxGtkFileCtrl: public wxControl,
 
-             public wxFileCtrlBase
 
- {
 
- public:
 
-     wxGtkFileCtrl () { Init(); }
 
-     wxGtkFileCtrl ( wxWindow *parent,
 
-                     wxWindowID id,
 
-                     const wxString& defaultDirectory = wxEmptyString,
 
-                     const wxString& defaultFilename = wxEmptyString,
 
-                     const wxString& wildCard = wxFileSelectorDefaultWildcardStr,
 
-                     long style = wxFC_DEFAULT_STYLE,
 
-                     const wxPoint& pos = wxDefaultPosition,
 
-                     const wxSize& size = wxDefaultSize,
 
-                     const wxString& name = wxFileCtrlNameStr )
 
-     {
 
-         Init();
 
-         Create( parent, id, defaultDirectory, defaultFilename, wildCard, style, pos, size, name );
 
-     }
 
-     virtual ~wxGtkFileCtrl();
 
-     bool Create( wxWindow *parent,
 
-                  wxWindowID id,
 
-                  const wxString& defaultDirectory = wxEmptyString,
 
-                  const wxString& defaultFileName = wxEmptyString,
 
-                  const wxString& wildCard = wxFileSelectorDefaultWildcardStr,
 
-                  long style = wxFC_DEFAULT_STYLE,
 
-                  const wxPoint& pos = wxDefaultPosition,
 
-                  const wxSize& size = wxDefaultSize,
 
-                  const wxString& name = wxFileCtrlNameStr );
 
-     virtual void SetWildcard( const wxString& wildCard );
 
-     virtual void SetFilterIndex( int filterIndex );
 
-     virtual bool SetDirectory( const wxString& dir );
 
-     virtual bool SetFilename( const wxString& name );
 
-     virtual bool SetPath( const wxString& path );
 
-     virtual wxString GetFilename() const;
 
-     virtual wxString GetDirectory() const;
 
-     virtual wxString GetWildcard() const { return this->m_wildCard; }
 
-     virtual wxString GetPath() const;
 
-     virtual void GetPaths( wxArrayString& paths ) const;
 
-     virtual void GetFilenames( wxArrayString& files ) const;
 
-     virtual int GetFilterIndex() const { return m_fc.GetFilterIndex(); }
 
-     virtual bool HasMultipleFileSelection() const { return HasFlag( wxFC_MULTIPLE ); }
 
-     virtual void ShowHidden(bool show);
 
-     virtual bool HasFilterChoice() const
 
-         { return m_fc.HasFilterChoice(); }
 
-     // Implementation only from now on.
 
-     bool GTKShouldIgnoreNextFilterEvent() const
 
-         { return m_fc.ShouldIgnoreNextFilterEvent(); }
 
-     bool    m_checkNextSelEvent;
 
-     bool    m_ignoreNextFolderChangeEvent;
 
- protected:
 
-     GtkFileChooser     *m_fcWidget;
 
-     wxGtkFileChooser    m_fc;
 
-     wxString            m_wildCard;
 
- private:
 
-     void Init();
 
-     DECLARE_DYNAMIC_CLASS( wxGtkFileCtrl )
 
- };
 
- #endif // wxUSE_FILECTRL
 
- #endif // _WX_GTK_FILECTRL_H_
 
 
  |