"jack_mixer invocations")
def set_default_preferences(self):
+ self.confirm_quit = False
self.default_meter_scale = self.meter_scales[0]
self.default_slider_scale = self.slider_scales[0]
+ self.midi_behavior_mode = 0
+ self.use_custom_widgets = False
self.vumeter_color = '#ccb300'
self.vumeter_color_scheme = 'default'
- self.use_custom_widgets = False
- self.midi_behavior_mode = 0
def read_preferences(self):
self.config.read(self.path)
+ self.confirm_quit = self.config.getboolean('Preferences', 'confirm_quit',
+ fallback=self.confirm_quit)
+
scale_id = self.config['Preferences']['default_meter_scale']
self.default_meter_scale = lookup_scale(self.meter_scales, scale_id)
if not self.default_meter_scale:
if not self.default_slider_scale:
self.default_slider_scale = slider_scales[0]
- self.vumeter_color_scheme = self.config['Preferences']['vumeter_color_scheme']
- if not self.vumeter_color_scheme:
- self.vumeter_color_scheme = 'default'
-
- self.vumeter_color = self.config['Preferences']['vumeter_color']
- if not self.vumeter_color:
- self.vumeter_color = '#ccb300'
-
- self.use_custom_widgets = self.config["Preferences"]["use_custom_widgets"] == 'True'
-
- mode = 0
try:
- mode = int(self.config["Preferences"]["midi_behavior_mode"])
- except:
+ self.midi_behavior_mode = self.config.getint('Preferences', 'midi_behavior_mode',
+ fallback=self.midi_behavior_mode)
+ except (TypeError, ValueError):
+ # use default value
pass
- self.midi_behavior_mode = mode
+
+ self.use_custom_widgets = self.config.getboolean('Preferences', 'use_custom_widgets',
+ fallback=self.use_custom_widgets)
+ self.vumeter_color = self.config.get('Preferences', 'vumeter_color',
+ fallback=self.vumeter_color)
+ self.vumeter_color_scheme = self.config.get('Preferences', 'vumeter_color_scheme',
+ fallback=self.vumeter_color_scheme)
+
def write_preferences(self):
self.config['Preferences'] = {}
+ self.config['Preferences']['confirm_quit'] = str(self.confirm_quit)
self.config['Preferences']['default_meter_scale'] = self.default_meter_scale.scale_id
self.config['Preferences']['default_slider_scale'] = self.default_slider_scale.scale_id
- self.config['Preferences']['vumeter_color_scheme'] = self.vumeter_color_scheme
- self.config['Preferences']['vumeter_color'] = self.vumeter_color
- self.config['Preferences']['use_custom_widgets'] = str(self.use_custom_widgets)
self.config['Preferences']['midi_behavior_mode'] = str(self.midi_behavior_mode)
+ self.config['Preferences']['use_custom_widgets'] = str(self.use_custom_widgets)
+ self.config['Preferences']['vumeter_color'] = self.vumeter_color
+ self.config['Preferences']['vumeter_color_scheme'] = self.vumeter_color_scheme
with open(self.path, 'w') as configfile:
self.config.write(configfile)
configfile.close()
+ def set_confirm_quit(self, confirm_quit):
+ self.confirm_quit = confirm_quit
+ if xdg:
+ self.write_preferences()
+ self.emit('confirm-quit-changed', self.confirm_quit)
+
def set_default_meter_scale(self, scale):
if scale:
self.default_meter_scale = scale
if xdg:
self.write_preferences()
- self.emit("default-meter-scale-changed", self.default_meter_scale)
+ self.emit('default-meter-scale-changed', self.default_meter_scale)
else:
log.warning('Ignoring default_meter_scale setting, because "%s" scale is not known.',
scale)
self.default_slider_scale = scale
if xdg:
self.write_preferences()
- self.emit("default-slider-scale-changed", self.default_slider_scale)
+ self.emit('default-slider-scale-changed', self.default_slider_scale)
else:
log.warning('Ignoring default_slider_scale setting, because "%s" scale is not known.',
scale)
+ def set_midi_behavior_mode(self, mode):
+ self.midi_behavior_mode = int(mode)
+ self.emit_midi_behavior_mode()
+
+ def set_use_custom_widgets(self, use_custom):
+ self.use_custom_widgets = use_custom
+ if xdg:
+ self.write_preferences()
+ self.emit('use-custom-widgets-changed', self.use_custom_widgets)
+
def set_vumeter_color(self, color):
self.vumeter_color = color
if xdg:
self.write_preferences()
self.emit('vumeter-color-scheme-changed', self.vumeter_color_scheme)
- def set_use_custom_widgets(self, use_custom):
- self.use_custom_widgets = use_custom
- if xdg:
- self.write_preferences()
- self.emit('use-custom-widgets-changed', self.use_custom_widgets)
-
- def set_midi_behavior_mode(self, mode):
- self.midi_behavior_mode = int(mode)
- self.emit_midi_behavior_mode()
-
- def emit_midi_behavior_mode(self):
- self.emit("midi-behavior-mode-changed", self.midi_behavior_mode)
+ def get_confirm_quit(self):
+ return self.confirm_quit
def get_default_meter_scale(self):
return self.default_meter_scale
def get_default_slider_scale(self):
return self.default_slider_scale
+ def get_midi_behavior_mode(self):
+ return self.midi_behavior_mode
+
+ def get_use_custom_widgets(self):
+ return self.use_custom_widgets
+
def get_vumeter_color(self):
return self.vumeter_color
def get_vumeter_color_scheme(self):
return self.vumeter_color_scheme
- def get_use_custom_widgets(self):
- return self.use_custom_widgets
-
- def get_midi_behavior_mode(self):
- return self.midi_behavior_mode
+ def emit_midi_behavior_mode(self):
+ self.emit('midi-behavior-mode-changed', self.midi_behavior_mode)
@classmethod
def serialization_name(cls):
return 'gui_factory'
def serialize(self, object_backend):
- object_backend.add_property("default_meter_scale",
- self.get_default_meter_scale().scale_id)
- object_backend.add_property("default_slider_scale",
- self.get_default_slider_scale().scale_id)
- object_backend.add_property("vumeter_color_scheme",
- self.get_vumeter_color_scheme())
- object_backend.add_property("vumeter_color",
- self.get_vumeter_color())
- object_backend.add_property("use_custom_widgets",
- str(self.get_use_custom_widgets()))
- object_backend.add_property("midi_behavior_mode",
- str(self.get_midi_behavior_mode()))
+ object_backend.add_property('confirm-quit', str(self.get_confirm_quit()))
+ object_backend.add_property('default_meter_scale',
+ self.get_default_meter_scale().scale_id)
+ object_backend.add_property('default_slider_scale',
+ self.get_default_slider_scale().scale_id)
+ object_backend.add_property('midi_behavior_mode', str(self.get_midi_behavior_mode()))
+ object_backend.add_property('use_custom_widgets', str(self.get_use_custom_widgets()))
+ object_backend.add_property('vumeter_color', self.get_vumeter_color())
+ object_backend.add_property('vumeter_color_scheme', self.get_vumeter_color_scheme())
def unserialize_property(self, name, value):
- if name == "default_meter_scale":
+ if name == 'confirm_quit':
+ self.set_confirm_quit(value == 'True')
+ return True
+ elif name == 'default_meter_scale':
self.set_default_meter_scale(lookup_scale(self.meter_scales, value))
return True
- if name == "default_slider_scale":
+ elif name == 'default_slider_scale':
self.set_default_slider_scale(lookup_scale(self.slider_scales, value))
return True
- if name == "vumeter_color_scheme":
- self.set_vumeter_color_scheme(value)
- return True
- if name == "vumeter_color":
- self.set_vumeter_color(value)
+ elif name == 'midi_behavior_mode':
+ self.set_midi_behavior_mode(int(value))
return True
- if name == "use_custom_widgets":
+ elif name == 'use_custom_widgets':
self.set_use_custom_widgets(value == 'True')
return True
- if name == "midi_behavior_mode":
- self.set_midi_behavior_mode(int(value))
+ elif name == 'vumeter_color':
+ self.set_vumeter_color(value)
+ return True
+ elif name == 'vumeter_color_scheme':
+ self.set_vumeter_color_scheme(value)
return True
return False
-GObject.signal_new("default-meter-scale-changed", Factory,
- GObject.SignalFlags.RUN_FIRST | GObject.SignalFlags.ACTION,
- None, [GObject.TYPE_PYOBJECT])
-GObject.signal_new("default-slider-scale-changed", Factory,
- GObject.SignalFlags.RUN_FIRST | GObject.SignalFlags.ACTION,
- None, [GObject.TYPE_PYOBJECT])
+GObject.signal_new('confirm-quit-changed', Factory,
+ GObject.SignalFlags.RUN_FIRST | GObject.SignalFlags.ACTION,
+ None, [bool])
+GObject.signal_new('default-meter-scale-changed', Factory,
+ GObject.SignalFlags.RUN_FIRST | GObject.SignalFlags.ACTION,
+ None, [GObject.TYPE_PYOBJECT])
+GObject.signal_new('default-slider-scale-changed', Factory,
+ GObject.SignalFlags.RUN_FIRST | GObject.SignalFlags.ACTION,
+ None, [GObject.TYPE_PYOBJECT])
+GObject.signal_new('midi-behavior-mode-changed', Factory,
+ GObject.SignalFlags.RUN_FIRST | GObject.SignalFlags.ACTION,
+ None, [int])
+GObject.signal_new('use-custom-widgets-changed', Factory,
+ GObject.SignalFlags.RUN_FIRST | GObject.SignalFlags.ACTION,
+ None, [bool])
GObject.signal_new('vumeter-color-changed', Factory,
- GObject.SignalFlags.RUN_FIRST | GObject.SignalFlags.ACTION,
- None, [str])
+ GObject.SignalFlags.RUN_FIRST | GObject.SignalFlags.ACTION,
+ None, [str])
GObject.signal_new('vumeter-color-scheme-changed', Factory,
- GObject.SignalFlags.RUN_FIRST | GObject.SignalFlags.ACTION,
- None, [str])
-GObject.signal_new('use-custom-widgets-changed', Factory,
- GObject.SignalFlags.RUN_FIRST | GObject.SignalFlags.ACTION,
- None, [bool])
-GObject.signal_new('midi-behavior-mode-changed', Factory,
- GObject.SignalFlags.RUN_FIRST | GObject.SignalFlags.ACTION,
- None, [int])
+ GObject.SignalFlags.RUN_FIRST | GObject.SignalFlags.ACTION,
+ None, [str])