21 #include <glib/gstdio.h>
22 #include <glibmm/miscutils.h>
32 #include "ardour/utils.h"
45 #include
"ardour/session_configuration_vars.h"
74 #undef CONFIG_VARIABLE
75 #undef CONFIG_VARIABLE_SPECIAL
76 #define CONFIG_VARIABLE(type,var,Name,value) \
77 var.add_to_node (*node);
78 #define CONFIG_VARIABLE_SPECIAL(type,var,Name,value,mutator) \
79 var.add_to_node (*node);
81 #undef CONFIG_VARIABLE
82 #undef CONFIG_VARIABLE_SPECIAL
91 if (root.
name() !=
"Ardour") {
96 if ((*i)->name() ==
"Config") {
107 #undef CONFIG_VARIABLE
108 #undef CONFIG_VARIABLE_SPECIAL
109 #define CONFIG_VARIABLE(type,var,name,value) \
110 if (var.set_from_node (node)) { \
111 ParameterChanged (name); \
113 #define CONFIG_VARIABLE_SPECIAL(type,var,name,value,mutator) \
114 if (var.set_from_node (node)) { \
115 ParameterChanged (name); \
119 #undef CONFIG_VARIABLE
120 #undef CONFIG_VARIABLE_SPECIAL
126 #undef CONFIG_VARIABLE
127 #undef CONFIG_VARIABLE_SPECIAL
128 #define CONFIG_VARIABLE(type,var,name,value) functor (name);
129 #define CONFIG_VARIABLE_SPECIAL(type,var,name,value,mutator) functor (name);
131 #undef CONFIG_VARIABLE
132 #undef CONFIG_VARIABLE_SPECIAL
142 if (g_stat (rcfile.c_str(), &statbuf)) {
145 if (statbuf.st_size == 0) {
149 if (!tree.
read (rcfile.c_str())) {
155 if (root.name() !=
X_(
"SessionDefaults")) {
164 info <<
_(
"Loaded custom session defaults.") <<
endmsg;
171 set_audio_search_path(
"");
172 set_midi_search_path(
"");
182 if (rcfile.empty()) {
191 if (!tree.
write (rcfile.c_str())) {
const std::string & name() const
LIBPBD_API Transmitter error
LIBPBD_API Transmitter warning
const XMLNodeList & children(const std::string &str=std::string()) const
std::ostream & endmsg(std::ostream &ostr)
bool find_file(const Searchpath &search_path, const string &filename, std::string &result)
int set_state(XMLNode const &, int version)
LIBARDOUR_API std::string user_config_directory(int version=-1)
#define CONFIG_VARIABLE_SPECIAL(Type, var, name, value, mutator)
#define CONFIG_VARIABLE(Type, var, name, value)
XMLNode * set_root(XMLNode *n)
LIBARDOUR_API XMLNode * find_named_node(const XMLNode &node, std::string name)
LIBARDOUR_API PBD::Searchpath ardour_config_search_path()
LIBPBD_API Transmitter info
XMLNode & get_variables()
void add_child_nocopy(XMLNode &)
void set_variables(XMLNode const &)
XMLNodeList::const_iterator XMLNodeConstIterator
void map_parameters(boost::function< void(std::string)> &)
std::string string_compose(const std::string &fmt, const T1 &o1)