class wxFileDialog: public wxDialog
{
-
- DECLARE_DYNAMIC_CLASS(wxFileDialog)
-
- friend void gtk_filedialog_ok_callback( GtkWidget *widget, gpointer data );
-
- public:
-
- wxFileDialog() {};
-
- wxFileDialog(wxWindow *parent, const wxString& message = wxFileSelectorPromptStr,
- const wxString& defaultDir = "", const wxString& defaultFile = "",
- const wxString& wildCard = wxFileSelectorDefaultWildcardStr,
- long style = 0, const wxPoint& pos = wxDefaultPosition);
-
- inline void SetMessage(const wxString& message) { m_message = message; }
- inline void SetPath(const wxString& path) { m_path = path; }
- inline void SetDirectory(const wxString& dir) { m_dir = dir; }
- inline void SetFilename(const wxString& name) { m_fileName = name; }
- inline void SetWildcard(const wxString& wildCard) { m_wildCard = wildCard; }
- inline void SetStyle(long style) { m_dialogStyle = style; }
- inline void SetFilterIndex(int filterIndex) { m_filterIndex = filterIndex; }
-
- inline wxString GetMessage(void) const { return m_message; }
- inline wxString GetPath(void) const { return m_path; }
- inline wxString GetDirectory(void) const { return m_dir; }
- inline wxString GetFilename(void) const { return m_fileName; }
- inline wxString GetWildcard(void) const { return m_wildCard; }
- inline long GetStyle(void) const { return m_dialogStyle; }
- inline int GetFilterIndex(void) const { return m_filterIndex ; }
-
- int ShowModal(void);
-
- protected:
+DECLARE_DYNAMIC_CLASS(wxFileDialog)
+
+public:
+ wxFileDialog() { }
+
+ wxFileDialog(wxWindow *parent,
+ const wxString& message = wxFileSelectorPromptStr,
+ const wxString& defaultDir = "",
+ const wxString& defaultFile = "",
+ const wxString& wildCard = wxFileSelectorDefaultWildcardStr,
+ long style = 0,
+ const wxPoint& pos = wxDefaultPosition);
+
+ void SetMessage(const wxString& message) { m_message = message; }
+ void SetPath(const wxString& path) { m_path = path; }
+ void SetDirectory(const wxString& dir) { m_dir = dir; }
+ void SetFilename(const wxString& name) { m_fileName = name; }
+ void SetWildcard(const wxString& wildCard) { m_wildCard = wildCard; }
+ void SetStyle(long style) { m_dialogStyle = style; }
+ void SetFilterIndex(int filterIndex) { m_filterIndex = filterIndex; }
+
+ wxString GetMessage() const { return m_message; }
+ wxString GetPath() const { return m_path; }
+ wxString GetDirectory() const { return m_dir; }
+ wxString GetFilename() const { return m_fileName; }
+ wxString GetWildcard() const { return m_wildCard; }
+ long GetStyle() const { return m_dialogStyle; }
+ int GetFilterIndex() const { return m_filterIndex ; }
+
+ int ShowModal();
+
+ protected:
wxString m_message;
long m_dialogStyle;
class wxFileDialog: public wxDialog
{
-
- DECLARE_DYNAMIC_CLASS(wxFileDialog)
-
- friend void gtk_filedialog_ok_callback( GtkWidget *widget, gpointer data );
-
- public:
-
- wxFileDialog() {};
-
- wxFileDialog(wxWindow *parent, const wxString& message = wxFileSelectorPromptStr,
- const wxString& defaultDir = "", const wxString& defaultFile = "",
- const wxString& wildCard = wxFileSelectorDefaultWildcardStr,
- long style = 0, const wxPoint& pos = wxDefaultPosition);
-
- inline void SetMessage(const wxString& message) { m_message = message; }
- inline void SetPath(const wxString& path) { m_path = path; }
- inline void SetDirectory(const wxString& dir) { m_dir = dir; }
- inline void SetFilename(const wxString& name) { m_fileName = name; }
- inline void SetWildcard(const wxString& wildCard) { m_wildCard = wildCard; }
- inline void SetStyle(long style) { m_dialogStyle = style; }
- inline void SetFilterIndex(int filterIndex) { m_filterIndex = filterIndex; }
-
- inline wxString GetMessage(void) const { return m_message; }
- inline wxString GetPath(void) const { return m_path; }
- inline wxString GetDirectory(void) const { return m_dir; }
- inline wxString GetFilename(void) const { return m_fileName; }
- inline wxString GetWildcard(void) const { return m_wildCard; }
- inline long GetStyle(void) const { return m_dialogStyle; }
- inline int GetFilterIndex(void) const { return m_filterIndex ; }
-
- int ShowModal(void);
-
- protected:
+DECLARE_DYNAMIC_CLASS(wxFileDialog)
+
+public:
+ wxFileDialog() { }
+
+ wxFileDialog(wxWindow *parent,
+ const wxString& message = wxFileSelectorPromptStr,
+ const wxString& defaultDir = "",
+ const wxString& defaultFile = "",
+ const wxString& wildCard = wxFileSelectorDefaultWildcardStr,
+ long style = 0,
+ const wxPoint& pos = wxDefaultPosition);
+
+ void SetMessage(const wxString& message) { m_message = message; }
+ void SetPath(const wxString& path) { m_path = path; }
+ void SetDirectory(const wxString& dir) { m_dir = dir; }
+ void SetFilename(const wxString& name) { m_fileName = name; }
+ void SetWildcard(const wxString& wildCard) { m_wildCard = wildCard; }
+ void SetStyle(long style) { m_dialogStyle = style; }
+ void SetFilterIndex(int filterIndex) { m_filterIndex = filterIndex; }
+
+ wxString GetMessage() const { return m_message; }
+ wxString GetPath() const { return m_path; }
+ wxString GetDirectory() const { return m_dir; }
+ wxString GetFilename() const { return m_fileName; }
+ wxString GetWildcard() const { return m_wildCard; }
+ long GetStyle() const { return m_dialogStyle; }
+ int GetFilterIndex() const { return m_filterIndex ; }
+
+ int ShowModal();
+
+ protected:
wxString m_message;
long m_dialogStyle;
// "delete_event"
//-----------------------------------------------------------------------------
-static
+static
bool gtk_filedialog_delete_callback( GtkWidget *WXUNUSED(widget), GdkEvent *WXUNUSED(event), wxDialog *win )
-{
+{
/*
printf( "OnDelete from " );
if (win->GetClassInfo() && win->GetClassInfo()->GetClassName())
printf( win->GetClassInfo()->GetClassName() );
printf( ".\n" );
*/
-
+
win->Close();
return TRUE;
// "clicked" for OK-button
//-----------------------------------------------------------------------------
-static
+static
void gtk_filedialog_ok_callback( GtkWidget *WXUNUSED(widget), gpointer data )
{
wxFileDialog *dialog = (wxFileDialog*)data;
style = dialog->GetStyle();
- if((style&wxSAVE)&&(style&wxOVERWRITE_PROMPT))
+ if( (style & wxSAVE ) && ( style&wxOVERWRITE_PROMPT ) )
{
- if(wxFileExists(gtk_file_selection_get_filename(GTK_FILE_SELECTION(dialog->m_widget) )))
- {
- if(wxMessageBox(_("File exists. Overwrite?"),
- _("Confirm"), wxYES_NO) != wxYES)
- return;
- }
+ char *filename = gtk_file_selection_get_filename(
+ GTK_FILE_SELECTION(dialog->m_widget)
+ );
+
+ if(wxFileExists( filename ))
+ {
+ wxString msg;
+ msg.Printf(_("File '%s' already exists, do you really want to "
+ "overwrite it?"), filename);
+
+ if( wxMessageBox(msg, _("Confirm"), wxYES_NO) != wxYES)
+ return;
+ }
}
dialog->OnOK( event );
// "clicked" for Cancel-button
//-----------------------------------------------------------------------------
-static
+static
void gtk_filedialog_cancel_callback( GtkWidget *WXUNUSED(widget), gpointer data )
{
wxFileDialog *dialog = (wxFileDialog*)data;
m_filterIndex = 1;
m_widget = gtk_file_selection_new( m_message );
-
+
int x = (gdk_screen_width () - 400) / 2;
int y = (gdk_screen_height () - 400) / 2;
gtk_widget_set_uposition( m_widget, x, y );
-
+
GtkFileSelection *sel = GTK_FILE_SELECTION(m_widget);
m_path.Append(m_dir);
gtk_signal_connect( GTK_OBJECT(sel->cancel_button), "clicked",
GTK_SIGNAL_FUNC(gtk_filedialog_cancel_callback), (gpointer*)this );
- gtk_signal_connect( GTK_OBJECT(m_widget), "delete_event",
+ gtk_signal_connect( GTK_OBJECT(m_widget), "delete_event",
GTK_SIGNAL_FUNC(gtk_filedialog_delete_callback), (gpointer)this );
-
+
}
int wxFileDialog::ShowModal(void)
defaultFilenameString = defaultFileName;
else
defaultFilenameString = "";
-
+
wxFileDialog fileDialog( parent, title, defaultDirString, defaultFilenameString, filter2, flags, wxPoint(x, y) );
if ( fileDialog.ShowModal() == wxID_OK )
// "delete_event"
//-----------------------------------------------------------------------------
-static
+static
bool gtk_filedialog_delete_callback( GtkWidget *WXUNUSED(widget), GdkEvent *WXUNUSED(event), wxDialog *win )
-{
+{
/*
printf( "OnDelete from " );
if (win->GetClassInfo() && win->GetClassInfo()->GetClassName())
printf( win->GetClassInfo()->GetClassName() );
printf( ".\n" );
*/
-
+
win->Close();
return TRUE;
// "clicked" for OK-button
//-----------------------------------------------------------------------------
-static
+static
void gtk_filedialog_ok_callback( GtkWidget *WXUNUSED(widget), gpointer data )
{
wxFileDialog *dialog = (wxFileDialog*)data;
style = dialog->GetStyle();
- if((style&wxSAVE)&&(style&wxOVERWRITE_PROMPT))
+ if( (style & wxSAVE ) && ( style&wxOVERWRITE_PROMPT ) )
{
- if(wxFileExists(gtk_file_selection_get_filename(GTK_FILE_SELECTION(dialog->m_widget) )))
- {
- if(wxMessageBox(_("File exists. Overwrite?"),
- _("Confirm"), wxYES_NO) != wxYES)
- return;
- }
+ char *filename = gtk_file_selection_get_filename(
+ GTK_FILE_SELECTION(dialog->m_widget)
+ );
+
+ if(wxFileExists( filename ))
+ {
+ wxString msg;
+ msg.Printf(_("File '%s' already exists, do you really want to "
+ "overwrite it?"), filename);
+
+ if( wxMessageBox(msg, _("Confirm"), wxYES_NO) != wxYES)
+ return;
+ }
}
dialog->OnOK( event );
// "clicked" for Cancel-button
//-----------------------------------------------------------------------------
-static
+static
void gtk_filedialog_cancel_callback( GtkWidget *WXUNUSED(widget), gpointer data )
{
wxFileDialog *dialog = (wxFileDialog*)data;
m_filterIndex = 1;
m_widget = gtk_file_selection_new( m_message );
-
+
int x = (gdk_screen_width () - 400) / 2;
int y = (gdk_screen_height () - 400) / 2;
gtk_widget_set_uposition( m_widget, x, y );
-
+
GtkFileSelection *sel = GTK_FILE_SELECTION(m_widget);
m_path.Append(m_dir);
gtk_signal_connect( GTK_OBJECT(sel->cancel_button), "clicked",
GTK_SIGNAL_FUNC(gtk_filedialog_cancel_callback), (gpointer*)this );
- gtk_signal_connect( GTK_OBJECT(m_widget), "delete_event",
+ gtk_signal_connect( GTK_OBJECT(m_widget), "delete_event",
GTK_SIGNAL_FUNC(gtk_filedialog_delete_callback), (gpointer)this );
-
+
}
int wxFileDialog::ShowModal(void)
defaultFilenameString = defaultFileName;
else
defaultFilenameString = "";
-
+
wxFileDialog fileDialog( parent, title, defaultDirString, defaultFilenameString, filter2, flags, wxPoint(x, y) );
if ( fileDialog.ShowModal() == wxID_OK )