X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c707a0d410c403d24764a3eab06c365b92265951..7971749aeaa4cc590adb9a0515d32e519b9c4483:/src/generic/dbgrptg.cpp diff --git a/src/generic/dbgrptg.cpp b/src/generic/dbgrptg.cpp index efb75d241b..d959d0ea4f 100644 --- a/src/generic/dbgrptg.cpp +++ b/src/generic/dbgrptg.cpp @@ -23,25 +23,26 @@ #pragma hdrstop #endif +#if wxUSE_DEBUGREPORT && wxUSE_XML + +#include "wx/debugrpt.h" + #ifndef WX_PRECOMP #include "wx/sizer.h" #include "wx/checklst.h" #include "wx/textctrl.h" + #include "wx/intl.h" + #include "wx/stattext.h" + #include "wx/filedlg.h" + #include "wx/valtext.h" + #include "wx/button.h" #endif // WX_PRECOMP -#if wxUSE_DEBUGREPORT && wxUSE_XML - -#include "wx/debugrpt.h" - -#include "wx/intl.h" #include "wx/filename.h" #include "wx/ffile.h" #include "wx/mimetype.h" #include "wx/statline.h" -#include "wx/stattext.h" -#include "wx/filedlg.h" -#include "wx/valtext.h" #ifdef __WXMSW__ #include "wx/evtloop.h" // for SetCriticalWindow() @@ -62,7 +63,7 @@ private: // the text we show wxTextCtrl *m_text; - DECLARE_NO_COPY_CLASS(wxDumpPreviewDlg) + wxDECLARE_NO_COPY_CLASS(wxDumpPreviewDlg); }; wxDumpPreviewDlg::wxDumpPreviewDlg(wxWindow *parent, @@ -131,14 +132,21 @@ public: wxString m_command; private: + +#if wxUSE_FILEDLG void OnBrowse(wxCommandEvent& event); +#endif // wxUSE_FILEDLG DECLARE_EVENT_TABLE() - DECLARE_NO_COPY_CLASS(wxDumpOpenExternalDlg) + wxDECLARE_NO_COPY_CLASS(wxDumpOpenExternalDlg); }; BEGIN_EVENT_TABLE(wxDumpOpenExternalDlg, wxDialog) + +#if wxUSE_FILEDLG EVT_BUTTON(wxID_MORE, wxDumpOpenExternalDlg::OnBrowse) +#endif + END_EVENT_TABLE() @@ -180,12 +188,17 @@ wxDumpOpenExternalDlg::wxDumpOpenExternalDlg(wxWindow *parent, ); sizerH->Add(command, wxSizerFlags(1).Align(wxALIGN_CENTER_VERTICAL)); + +#if wxUSE_FILEDLG + wxButton *browse = new wxButton(this, wxID_MORE, wxT(">>"), wxDefaultPosition, wxDefaultSize, wxBU_EXACTFIT); sizerH->Add(browse, wxSizerFlags(0).Align(wxALIGN_CENTER_VERTICAL). Border(wxLEFT)); +#endif // wxUSE_FILEDLG + sizerTop->Add(sizerH, wxSizerFlags(0).Expand().Border()); sizerTop->Add(new wxStaticLine(this), wxSizerFlags().Expand().Border()); @@ -204,6 +217,8 @@ wxDumpOpenExternalDlg::wxDumpOpenExternalDlg(wxWindow *parent, command->SetFocus(); } +#if wxUSE_FILEDLG + void wxDumpOpenExternalDlg::OnBrowse(wxCommandEvent& ) { wxFileName fname(m_command); @@ -222,6 +237,7 @@ void wxDumpOpenExternalDlg::OnBrowse(wxCommandEvent& ) } } +#endif // wxUSE_FILEDLG // ---------------------------------------------------------------------------- // wxDebugReportDialog: class showing debug report to the user @@ -256,7 +272,7 @@ private: wxArrayString m_files; DECLARE_EVENT_TABLE() - DECLARE_NO_COPY_CLASS(wxDebugReportDialog) + wxDECLARE_NO_COPY_CLASS(wxDebugReportDialog); }; // ============================================================================ @@ -281,14 +297,23 @@ wxDebugReportDialog::wxDebugReportDialog(wxDebugReport& dbgrpt) dbgrpt.GetReportName().c_str()), wxDefaultPosition, wxDefaultSize, - wxDEFAULT_DIALOG_STYLE | wxTHICK_FRAME), + wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER), m_dbgrpt(dbgrpt) { // upper part of the dialog: explanatory message wxString msg; + wxString debugDir = dbgrpt.GetDirectory(); + + // The temporary directory can be the short form on Windows; + // normalize it for the benefit of users. +#ifdef __WXMSW__ + wxFileName debugDirFilename(debugDir, wxEmptyString); + debugDirFilename.Normalize(wxPATH_NORM_LONG); + debugDir = debugDirFilename.GetPath(); +#endif msg << _("A debug report has been generated in the directory\n") << _T('\n') - << _T(" \"") << dbgrpt.GetDirectory() << _T("\"\n") + << _T(" \"") << debugDir << _T("\"\n") << _T('\n') << _("The report contains the files listed below. If any of these files contain private information,\nplease uncheck them and they will be removed from the report.\n") << _T('\n') @@ -401,7 +426,7 @@ bool wxDebugReportDialog::TransferDataFromWindow() void wxDebugReportDialog::OnView(wxCommandEvent& ) { const int sel = m_checklst->GetSelection(); - wxCHECK_RET( sel != -1, _T("invalid selection in OnView()") ); + wxCHECK_RET( sel != wxNOT_FOUND, _T("invalid selection in OnView()") ); wxFileName fn(m_dbgrpt.GetDirectory(), m_files[sel]); wxString str; @@ -417,7 +442,7 @@ void wxDebugReportDialog::OnView(wxCommandEvent& ) void wxDebugReportDialog::OnOpen(wxCommandEvent& ) { const int sel = m_checklst->GetSelection(); - wxCHECK_RET( sel != -1, _T("invalid selection in OnOpen()") ); + wxCHECK_RET( sel != wxNOT_FOUND, _T("invalid selection in OnOpen()") ); wxFileName fn(m_dbgrpt.GetDirectory(), m_files[sel]); @@ -497,5 +522,4 @@ bool wxDebugReportPreviewStd::Show(wxDebugReport& dbgrpt) const return dlg.ShowModal() == wxID_OK && dbgrpt.GetFilesCount() != 0; } -#endif // wxUSE_DEBUGREPORT - +#endif // wxUSE_DEBUGREPORT && wxUSE_XML