#include <ctime>
#include <cstdlib>
+#include "pbd/error.h"
#include "pbd/file_utils.h"
+#include "pbd/openuri.h"
+#include "ardour/profile.h"
#include "ardour/revision.h"
-#include "ardour/version.h"
#include "ardour/filesystem_paths.h"
-#include "utils.h"
-#include "version.h"
-
#include "about.h"
#include "configinfo.h"
#include "rgb_macros.h"
-#include "ardour_ui.h"
#include "i18n.h"
+#ifdef WAF_BUILD
+#include "gtk2ardour-version.h"
+#endif
+
using namespace Gtk;
using namespace Gdk;
using namespace std;
using namespace ARDOUR;
using namespace PBD;
+#ifndef CODENAME
+#define CODENAME ""
+#endif
+
#ifdef WITH_PAYMENT_OPTIONS
/* XPM */
N_("Sakari Bergen"),
N_("Christian Borss"),
N_("Chris Cannam"),
+ N_("Jeremy Carter"),
N_("Jesse Chappell"),
N_("Thomas Charbonnel"),
N_("Sam Chessman"),
N_("André Colomb"),
N_("Paul Davis"),
N_("Gerard van Dongen"),
+ N_("John Emmas"),
N_("Colin Fletcher"),
N_("Dave Flick"),
N_("Hans Fugal"),
N_("Robin Gareus"),
+ N_("Nil Geisweiller"),
N_("Christopher George"),
N_("Chris Goddard"),
N_("J. Abelardo Gutierrez"),
N_("Armand Klenk"),
N_("Julien de Kozak"),
N_("Matt Krai"),
+ N_("Georg Krause"),
N_("Nick Lanham"),
N_("Colin Law"),
N_("Joshua Leach"),
N_("Nick Mainsbridge"),
N_("Tim Mayberry"),
N_("Doug Mclain"),
+ N_("Todd Naugle"),
+ N_("André Nusser"),
+ N_("Bent Bisballe Nyeng"),
N_("Jack O'Quin"),
+ N_("Pavel Potocek"),
N_("Nimal Ratnayake"),
N_("David Robillard"),
+ N_("Julien Roger"),
N_("Taybin Rutkin"),
N_("Andreas Ruge"),
N_("Sampo Savolainen"),
N_("Mike Täht"),
N_("Roy Vegard"),
N_("Thorsten Wilms"),
+ N_("Damien Zammit"),
+ N_("Grygorii Zharun"),
0
};
Searchpath spath(ardour_data_search_path());
- if (find_file_in_search_path (spath, "splash.png", splash_file)) {
+ if (find_file (spath, "splash.png", splash_file)) {
set_logo (Gdk::Pixbuf::create_from_file (splash_file));
} else {
error << "Could not find splash file" << endmsg;
t += ' ';
}
+#if defined __x86_64__ || defined _M_X64
+ const std::string cpu_arch = _("Intel 64-bit");
+#elif defined __i386__ || defined _M_IX86
+ const std::string cpu_arch = _("Intel 32-bit");
+#elif defined __ppc__ && defined __LP64__
+ const std::string cpu_arch = _("PowerPC 64-bit");
+#elif defined __ppc__
+ const std::string cpu_arch = _("PowerPC 32-bit");
+#elif defined __LP64__
+ const std::string cpu_arch = _("64-bit");
+#else
+ const std::string cpu_arch = _("32-bit"); // ARM, ALPHA,..
+#endif
+ std::string codename = CODENAME;
+ if (ARDOUR::Profile->get_mixbus() || ARDOUR::Profile->get_trx()) {
+ codename = "";
+ }
+
+#ifndef NDEBUG
+ const std::string suffix = _(" - debug");
+#else
+ const std::string suffix = "";
+#endif
+
set_translator_credits (t);
- set_copyright (_("Copyright (C) 1999-2013 Paul Davis\n"));
+ set_copyright (_("Copyright (C) 1999-2015 Paul Davis\n"));
set_license (gpl);
set_name (X_("Ardour"));
set_website (X_("http://ardour.org/"));
set_website_label (_("http://ardour.org/"));
- set_version ((string_compose(_("%1\n(built from revision %2)"),
+ set_version ((string_compose(_("%1%2\n(rev %3)\n%4%5"),
VERSIONSTRING,
- revision)));
+ codename,
+ revision, cpu_arch, suffix)));
Gtk::Button* config_button = manage (new Button (_("Config")));
if (btn) {
btn->signal_clicked().connect(sigc::mem_fun(static_cast<Gtk::Window*>(this), &Gtk::Window::hide));
}
+ set_url_hook (sigc::ptr_fun(&About::launch_homepage));
}
About::~About ()
config_info->hide ();
}
+void
+About::launch_homepage (AboutDialog& /* about */, const Glib::ustring& website_url)
+{
+ PBD::open_uri (website_url);
+}