13
0

action and glade path stuff

git-svn-id: svn://localhost/trunk/ardour2@121 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
Tim Mayberry 2005-11-26 12:08:33 +00:00
parent cd10162199
commit 655be077fa
3 changed files with 35 additions and 29 deletions

View File

@ -206,7 +206,7 @@ executable = 'ardour.bin'
ardour = gtkardour.Program(target = executable, source = gtkardour_files + extra_sources) ardour = gtkardour.Program(target = executable, source = gtkardour_files + extra_sources)
mtest = gtkardour.Program(target = 'mtest', source = mtest_files) mtest = gtkardour.Program(target = 'mtest', source = mtest_files)
itest = gtkardour.Program(target = 'itest', source = itest_files) #itest = gtkardour.Program(target = 'itest', source = itest_files)
Default(ardour) Default(ardour)
@ -222,6 +222,7 @@ if env['NLS']:
env.Alias('install', env.InstallAs(os.path.join(install_prefix, 'bin')+'/ardour', ardour)) env.Alias('install', env.InstallAs(os.path.join(install_prefix, 'bin')+'/ardour', ardour))
env.Alias('install', env.Install(os.path.join(config_prefix, 'ardour'), 'ardour_ui.rc')) env.Alias('install', env.Install(os.path.join(config_prefix, 'ardour'), 'ardour_ui.rc'))
env.Alias('install', env.Install(os.path.join(config_prefix, 'ardour'), 'ardour-menus.xml'))
env.Alias('install', env.Install(os.path.join(install_prefix, 'share/ardour'), 'splash.ppm')) env.Alias('install', env.Install(os.path.join(install_prefix, 'share/ardour'), 'splash.ppm'))
env.Alias('install', env.Install(os.path.join(install_prefix, 'share/ardour/glade'), glade_files)) env.Alias('install', env.Install(os.path.join(install_prefix, 'share/ardour/glade'), glade_files))

View File

@ -25,6 +25,8 @@
#include <pbd/error.h> #include <pbd/error.h>
#include <ardour/ardour.h>
#include "actions.h" #include "actions.h"
using namespace std; using namespace std;
@ -48,9 +50,11 @@ ActionManager::init ()
ui_manager = UIManager::create (); ui_manager = UIManager::create ();
try { try {
ui_manager->add_ui_from_file ("ardour-menus.xml"); ui_manager->add_ui_from_file (ARDOUR::find_config_file("ardour-menus.xml"));
} catch (Glib::MarkupError& err) { } catch (Glib::MarkupError& err) {
error << "badly formatted UI definition file" << endmsg; error << "badly formatted UI definition file" << endmsg;
} catch (...) {
std::cerr << "ardour action xml file not found" << endl;
} }
} }

View File

@ -21,6 +21,8 @@
#include <glibmm/fileutils.h> #include <glibmm/fileutils.h>
#include <glibmm/miscutils.h> #include <glibmm/miscutils.h>
#include <ardour/ardour.h>
#include "i18n.h" #include "i18n.h"
#include "glade_path.h" #include "glade_path.h"
@ -29,31 +31,30 @@
std::string std::string
GladePath::path(const std::string& glade_file) GladePath::path(const std::string& glade_file)
{ {
std::string user_glade_dir = Glib::getenv(X_("ARDOUR_GLADE_PATH")); std::string user_glade_dir = Glib::getenv(X_("ARDOUR_GLADE_PATH"));
std::string full_path; std::string full_path;
if(user_glade_dir != "") { if(!user_glade_dir.empty()) {
full_path = Glib::build_filename(user_glade_dir, glade_file); Glib::build_filename(user_glade_dir, glade_file);
if(Glib::file_test(full_path, Glib::FILE_TEST_EXISTS)) return full_path; if(Glib::file_test(full_path, Glib::FILE_TEST_EXISTS)) return full_path;
} }
// check if file ~/.ardour/glade/glade_file exists. full_path = ARDOUR::find_data_file(Glib::build_filename("glade",
std::vector<std::string> path; glade_file));
path.push_back(Glib::get_home_dir());
path.push_back(X_(".ardour")); // define as a constant somewhere? // temporary debugging
path.push_back(X_("glade")); std::cerr << "Path to glade file" << full_path << std::endl;
path.push_back(glade_file);
full_path = Glib::build_filename(path); return full_path;
// temporary debugging
std::cout << "Path to glade file" << full_path << std::endl;
if(Glib::file_test(full_path, Glib::FILE_TEST_EXISTS)) return full_path;
/*
If for some wierd reason the system wide glade file
doesn't exist libglademm will throw an exception
so don't bother testing if it exists etc.
*/
return Glib::build_filename(GLADEPATH, glade_file);
} }
/*
Local Variables:
mode:c++
c-file-style:"stroustrup"
c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
indent-tabs-mode:nil
fill-column:99
End:
*/
// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :