def __init__(self, params, parent): super(Gtk.VBox, self).__init__(False) self.params = EQBandParams( params.frequency, params.bandwidth, params.gain, params.bandType, params.loudnesEnabled, params.maxGain, params.maxVolumePercentage, params.minVolumePercentage ) self.parent = parent self.slider = Gtk.VScale() self.slider.set_range( -24, 12 ) self.slider.set_inverted(True) self.slider.set_value_pos( Gtk.PositionType.TOP ) self.slider.set_size_request( 100, 300 ) self.slider.connect( "value_changed", self.slider_changed ) self.labelFreq = Gtk.Label( "f=" + str(self.params.frequency) + "Hz" ) self.labelBw = Gtk.Label( "w=" + str(self.params.bandwidth) + "Hz" ) self.labelType = Gtk.Label( EQBandParams.get_string_from_band_type(self.params.bandType) ) self.loudnessCheckBox = Gtk.CheckButton('loudness') self.loudnessCheckBox.connect("toggled", self.onLoudnesSelectionChanged) self.updateControlsFromParams() editParamsButton = Gtk.Button( "Edit" ) editParamsButton.connect( "clicked", self.on_edit_settings ) self.add(self.slider) self.add(self.labelFreq) self.add(self.labelBw) self.add(self.labelType) self.add(self.loudnessCheckBox) self.add(editParamsButton) remBtn = Gtk.Button( "Remove" ) remBtn.connect( "clicked", self.on_remove_band ) self.add(remBtn) self.show_all()
def __init__(self, parent): super(Gtk.Dialog, self).__init__() okBtn = self.add_button(Gtk.STOCK_OK,Gtk.ResponseType.OK) okBtn.connect( "clicked", self.on_ok ) self.set_default_size(150, 100) box = self.get_content_area() self.bandWidthLE = LabeledEdit( box, "Bandwidth", "10" ); self.freqLE = LabeledEdit( box, "frequency", "100" ); self.gainLE = LabeledEdit( box, "Gain", "0" ); name_store = Gtk.ListStore(int, str) name_store.append([ 0, EQBandParams.get_string_from_band_type(0)] ) name_store.append([ 1, EQBandParams.get_string_from_band_type(1)] ) name_store.append([ 2, EQBandParams.get_string_from_band_type(2)] ) self.comboType = Gtk.ComboBox.new_with_model_and_entry(name_store) self.comboType.set_entry_text_column(1) self.comboType.set_active(0) box.add(self.comboType) self.show_all()
def load(self, preset): conf = GConf.Client.get_default() if preset == None: preset = self.getCurrPreset() params = [] if preset == None: #no preset: probably no config -> leave return params baseCfgPath = EQUALIZER_GCONF_PREFIX + '/' + preset numBands = conf.get_int( baseCfgPath + '/num_bands' ) if numBands == None: numBands = 0 print("numbands : ", numBands) for i in range(0, numBands): param = EQBandParams(0.0, 0.0, 0.0) currCfgKey = baseCfgPath + '/EQBand' + str(i) print("reading config from :", currCfgKey) param.bandwidth = conf.get_float( currCfgKey + '/bandWidth' ) print("param.bandwidth : ", param.bandwidth) param.frequency = conf.get_float( currCfgKey + '/frequency' ) print("param.frequency : ", param.frequency) param.gain = conf.get_float( currCfgKey + '/gain' ) print("param.gain : ", param.gain) eqType = conf.get_int( currCfgKey + '/type' ) if None == eqType: param.bandType = 0 else: param.bandType = eqType params.append( param ) print("num params : ", len(params)) params.sort()#ascending order for frequency return params
def __init__(self, parent, params = None): if None != params: self.params = params super(Gtk.Dialog, self).__init__() okBtn = self.add_button(Gtk.STOCK_OK,Gtk.ResponseType.OK) okBtn.connect( "clicked", self.on_ok ) self.set_default_size(150, 100) box = self.get_content_area() self.bandWidthLE = LabeledEdit( box, "Bandwidth", str(self.params.bandwidth) ) self.freqLE = LabeledEdit( box, "frequency", str(self.params.frequency) ) self.gainLE = LabeledEdit( box, "Gain", str(self.params.gain) ) self.maxGainLE = LabeledEdit( box, "loudnes max gain", str(self.params.maxGain) ) self.minVolumePercentageLE = LabeledEdit( box, "max dB volume percentage", str(self.params.minVolumePercentage) ) self.maxVolumePercentageLE = LabeledEdit( box, "0dB volume percentage", str(self.params.maxVolumePercentage) ) name_store = Gtk.ListStore(int, str) name_store.append([ 0, EQBandParams.get_string_from_band_type(0)] ) name_store.append([ 1, EQBandParams.get_string_from_band_type(1)] ) name_store.append([ 2, EQBandParams.get_string_from_band_type(2)] ) self.comboType = Gtk.ComboBox.new_with_model_and_entry(name_store) self.comboType.set_entry_text_column(1) #Todo: select real band preset self.comboType.set_active(self.params.bandType) box.add(self.comboType) self.show_all()
def loadPreset(preset): conf = GConf.Client.get_default() params = [] baseCfgPath = EQUALIZER_GCONF_PREFIX + '/' + preset numBands = conf.get_int( baseCfgPath + '/num_bands' ) if numBands == None: numBands = 0 print("numbands : ", numBands) for i in range(0, numBands): param = EQBandParams(0.0, 0.0, 0.0) currCfgKey = baseCfgPath + '/EQBand' + str(i) param.bandwidth = conf.get_float( currCfgKey + '/bandWidth' ) param.frequency = conf.get_float( currCfgKey + '/frequency' ) param.gain = conf.get_float( currCfgKey + '/gain' ) eqType = conf.get_int( currCfgKey + '/type' ) param.bandType = eqType param.maxGain = conf.get_float( currCfgKey + '/loudnesMaxGain' ) param.maxVolumePercentage = conf.get_float( currCfgKey + '/maxVolumePercentage' ) param.minVolumePercentage = conf.get_float( currCfgKey + '/minVolumePercentage' ) param.loudnesEnabled = conf.get_bool(currCfgKey + '/loudnesEnabled') params.append( param ) params.sort()#ascending order for frequency return Preset(preset, params)
def __init__(self, params, parent): super(Gtk.VBox, self).__init__(False) self.params = EQBandParams( params.frequency, params.bandwidth, params.gain, params.bandType ) self.parent = parent adjustment = Gtk.Adjustment(0, 0, 100, 5, 10, 0) slider = Gtk.VScale() slider.set_range( -24, 12 ) slider.set_inverted(True) slider.set_value_pos( Gtk.PositionType.TOP ) slider.set_value(self.params.gain) slider.set_size_request( 100, 300 ) slider.connect( "value_changed", self.slider_changed ) labelFreq = Gtk.Label( "f=" + str(self.params.frequency) + "Hz" ) labelBw = Gtk.Label( "w=" + str(self.params.bandwidth) + "Hz" ) labelType = Gtk.Label( EQBandParams.get_string_from_band_type(self.params.bandType) ) self.add(slider) self.add(labelFreq); self.add(labelBw); self.add(labelType) remBtn = Gtk.Button( "Remove" ) remBtn.connect( "clicked", self.on_remove_band ) self.add( remBtn ) self.show_all()
def updateControlsFromParams(self): self.slider.set_value(self.params.appliedGain) self.loudnessCheckBox.set_active( self.params.loudnesEnabled ) self.labelFreq.set_text("f=" + str(self.params.frequency) + "Hz") self.labelBw.set_text("w=" + str(self.params.bandwidth) + "Hz") self.labelType.set_text(EQBandParams.get_string_from_band_type(self.params.bandType))