/********************************************************************** Audacity: A Digital Audio Editor AboutDialog.cpp Dominic Mazzoni Vaughan Johnson **********************************************************************/ #include #include #include #include #include #include #include #include "AboutDialog.h" #include "Audacity.h" #include "../images/AudacityLogo.xpm" #ifdef __WXMSW__ # define DLOG_HEIGHT 430 #else # if defined(__WXMAC__) && ((wxMAJOR_VERSION == 2) && (wxMINOR_VERSION >= 5)) # define DLOG_HEIGHT 430 # else # define DLOG_HEIGHT 400 # endif #endif // ---------------------------------------------------------------------------- // icons // ---------------------------------------------------------------------------- BEGIN_EVENT_TABLE(AboutDialog, wxDialog) EVT_BUTTON(wxID_OK, AboutDialog::OnOK) END_EVENT_TABLE() IMPLEMENT_CLASS(AboutDialog, wxDialog) AboutDialog::AboutDialog(wxWindow * parent) : wxDialog(parent, -1, _("About Audacity..."), wxDefaultPosition, wxSize(400, DLOG_HEIGHT), wxDEFAULT_DIALOG_STYLE) { wxString versionStr = AUDACITY_VERSION_STRING; wxString informationStr; #ifdef MP3SUPPORT informationStr += _("MP3 importing enabled"); #else informationStr += _("MP3 importing disabled"); #endif informationStr += "
\n"; #ifdef USE_LIBVORBIS informationStr += _("Ogg Vorbis importing enabled"); #else informationStr += _("Ogg Vorbis importing disabled"); #endif informationStr += "
\n"; #ifdef USE_LIBID3TAG informationStr += _("ID3 tag exporting enabled"); #else informationStr += _("ID3 tag exporting disabled"); #endif informationStr += "
\n"; # if USE_LADSPA informationStr += _("LADSPA plug-in support enabled"); # else informationStr += _("LADSPA plug-in support disabled"); # endif informationStr += "
\n"; #if USE_LIBRESAMPLE informationStr += _("Libresample support enabled"); #elif USE_LIBSAMPLERATE informationStr += _("Libsamplerate support enabled"); #else informationStr += _("No resampling support enabled"); #endif informationStr += "
\n"; // wxWindows version: informationStr += wxVERSION_STRING; informationStr += "
\n"; // Current date informationStr += _("Program build date:"); informationStr += " " __DATE__ "
\n"; wxString par1Str = _( "Audacity is a free program written by a team of volunteer developers " "around the world. Coordination happens thanks to SourceForge.net, " "an online service that provides free tools to open-source " "software projects. Audacity is available for Windows 98 and " "newer, Mac OS X, Linux, and other Unix-like operating systems. " "Older versions of Audacity are available for Mac OS 9."); #if 0 // Not beta anymore wxString par2Str = _( "This is a beta version of the program. It may contain " "bugs and unfinished features. We depend on your feedback, so " "please visit our website and give us your bug reports and " "feature requests." ); #else wxString par2Str = _( "This is a stable, completed release of Audacity. However, if " "you find a bug or have a suggestion, please contact us. We " "depend on feedback from users in order to continue to improve " "Audacity. For more information, visit our website."); #endif wxString translatorCredits; /* i18n-hint: The translation of "translator_credits" will appear in the credits in the About Audacity window. Use this to add your own name(s) to the credits. For example: "English translation by Dominic Mazzoni." */ if (_("translator_credits") != wxString("translator_credits")) { translatorCredits += "

"; translatorCredits += _("translator_credits"); translatorCredits += "
"; } wxString localeStr = wxLocale::GetSystemEncodingName(); #if defined(__WXGTK__) && defined(wxUSE_UNICODE) && !wxCHECK_VERSION(2, 5, 0) // HTML Charsets are broken in wxGTK 2.4.x with unicode turned on wxString metaTag = ""; #else wxString metaTag = ""; #endif wxString creditStr = "" "" + metaTag + "" "" "" "
" "

Audacity " + versionStr + "

" + _("A Free Digital Audio Editor") + "
" "

" + par1Str + "

" + par2Str + "

" "http://audacity.sourceforge.net/" "

" "

" + _("Information") + "
" "


" + informationStr + "

" "

" + _("Credits") + "
" + translatorCredits + "

" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "
Dominic Mazzoni" + _("Project leader and primary programmer") + "
Matt Brubeck" + _("Lead developer") + "
James Crook" + _("Lead developer") + "
Roger Dannenberg" + _("Founding developer") + "
Vaughan Johnson" + _("Lead developer") + "
Markus Meyer" + _("Lead developer") + "
Joshua Haberman" + _("Major developer") + "
Shane Mueller" + _("Major developer") + "
Tony Oetzmann " + _("Documentation Writer") + "
Harvey Lubin" + _("Main Logo") + "
" "

" "

" "" + _("Developers:") + "" "

" "
" "William Bland
" "Vince Busam
" "Brian Gunlogson
" "Greg Mekkes
" "Augustus Saunders
" "
" "

" "

" "" + _("Other contributors:") + "" "

" "
" "Dave Beydler
" "Jason Cohen
" "Dave Fancella
" "Steve Harris
" "Daniel James
" "Steve Jolly
" "Daniil Kolpakov
" "Robert Leidle
" "Logan Lewis
" "Tino Meinen
" "Abe Milde
" "Monty Montgomery
" "Paul Nasca
" "Jason Pepas
" "Mark Phillips
" "Alexandre Prokoudine
" "Jonathan Ryshpan
" "Juhana Sadeharju
" "Patrick Shirkey
" "Mark Tomlinson
" "David Topper
" "Rudy Trubitt
" "Tom Woodhams
" "Otto Wyss
" "

" "" + _("Special thanks:") + "" "


" "The wxWidgets Team
" "The Ogg Vorbis Team
" "Rob Leslie (libmad)
" "Ross Bencina and Phil Burk (PortAudio)
" "Erik de Castro Lopo (libsndfile)
" "Olli Parviainen (soundtouch)
" "Verilogix, Inc.
" "

" "
" "" ""; Centre(); this->SetBackgroundColour(wxColour(255, 255, 255)); wxBoxSizer * pBoxSizer = new wxBoxSizer(wxVERTICAL); logo = new wxBitmap((const char **) AudacityLogo_xpm); icon = new wxStaticBitmap(this, -1, *logo, wxPoint(93, 10), wxSize(215, 190)); pBoxSizer->Add(icon, 0, wxALIGN_CENTER | wxALL, 8); wxHtmlWindow *html = new wxHtmlWindow(this, -1, wxPoint(10, 210), wxSize(380, 150), wxHW_SCROLLBAR_AUTO | wxSUNKEN_BORDER); html->SetPage(creditStr); pBoxSizer->Add(html, 0, wxALIGN_CENTER | wxALL, 8); wxButton *ok = new wxButton(this, wxID_OK, _("Audacious!"), wxPoint(150, 372), wxSize(100, -1)); ok->SetDefault(); ok->SetFocus(); pBoxSizer->Add(ok, 0, wxALIGN_CENTER | wxALL, 8); } AboutDialog::~AboutDialog() { delete icon; delete logo; } void AboutDialog::OnOK(wxCommandEvent & WXUNUSED(event)) { EndModal(wxID_OK); }