namespace ARDOUR {
-class Configuration : public Stateful
+class Configuration : public PBD::Stateful
{
public:
Configuration();
virtual ~Configuration();
- struct MidiPortDescriptor {
- std::string tag;
- std::string device;
- std::string type;
- std::string mode;
-
- MidiPortDescriptor (const XMLNode&);
- XMLNode& get_state();
- };
-
- std::map<std::string,MidiPortDescriptor *> midi_ports;
-
- std::vector<ConfigVariable<uint32_t> *> canvas_colors;
+ std::map<std::string,XMLNode> midi_ports;
void map_parameters (sigc::slot<void,const char*> theSlot);
int load_state ();
int save_state ();
+ /// calls Stateful::*instant_xml methods using
+ /// ARDOUR::user_config_directory for the directory argument
+ void add_instant_xml (XMLNode&);
+ XMLNode * instant_xml (const std::string& str);
+
int set_state (const XMLNode&);
XMLNode& get_state (void);
XMLNode& get_variables (sigc::slot<bool,ConfigVariableBase::Owner>, std::string which_node = "Config");
void set_variables (const XMLNode&, ConfigVariableBase::Owner owner);
- void pack_canvasvars ();
void set_current_owner (ConfigVariableBase::Owner);
sigc::signal<void,const char*> ParameterChanged;
- /* define accessor methods */
+ /* define accessor methods */
#undef CONFIG_VARIABLE
#undef CONFIG_VARIABLE_SPECIAL
#undef CONFIG_VARIABLE
#undef CONFIG_VARIABLE_SPECIAL
-#undef CANVAS_VARIABLE
-#define CANVAS_VARIABLE(var,name,value) ConfigVariable<uint32_t> var; // <-- is this really so bad?
-#include "ardour/canvas_vars.h"
-#undef CANVAS_VARIABLE
-
private:
- /* declare variables */
+ /* declare variables */
#undef CONFIG_VARIABLE
#undef CONFIG_VARIABLE_SPECIAL