def __init__(self, default_value=inch): gobject.GObject.__init__(self) gtk.HBox.__init__(self) self.__quiet__ = False self.unit_combo = gtk.combo_box_new_text() for key in self.units: self.unit_combo.append_text(key) unit = get_prefs().get('default_margin_unit', _('cm')) if unit not in self.units: unit = _('cm') self.last_unit = self.units[unit] cb_extras.setup_typeahead(self.unit_combo) cb_extras.cb_set_active_text(self.unit_combo, unit) self.unit_combo.connect('changed', self.unit_changed_cb) self.value_adjustment = gtk.Adjustment( value=self.adjust_to_unit(default_value), lower=self.min_val / self.last_unit, upper=self.max_val / self.last_unit, step_incr=self.adjustments[self.last_unit][0], page_incr=self.adjustments[self.last_unit][1], ) def emit_changed(*args): self.emit('changed') self.value_adjustment.connect('changed', emit_changed) self.value_widget = gtk.SpinButton(self.value_adjustment, digits=2) self.value_widget.connect('changed', emit_changed) self.value_widget.show() self.unit_combo.show() self.pack_start(self.value_widget) self.pack_start(self.unit_combo)
def __init__(self, default_value=inch): Gtk.HBox.__init__(self) # do we really inherit from HBox? self.__quiet__ = False self.unit_combo = Gtk.ComboBoxText() for key in self.units: self.unit_combo.append_text(key) unit = Prefs.instance().get('default_margin_unit', _('cm')) if unit not in self.units: unit = _('cm') self.last_unit = self.units[unit] cb_extras.setup_typeahead(self.unit_combo) cb_extras.cb_set_active_text(self.unit_combo, unit) self.unit_combo.connect('changed', self.unit_changed_cb) self.value_adjustment = Gtk.Adjustment( value=self.adjust_to_unit(default_value), lower=self.min_val / self.last_unit, upper=self.max_val / self.last_unit, step_incr=self.adjustments[self.last_unit][0], page_incr=self.adjustments[self.last_unit][1], ) def emit_changed(*args): self.emit('changed') self.value_adjustment.connect('changed', emit_changed) self.value_widget = Gtk.SpinButton() self.value_widget.set_adjustment(self.value_adjustment) self.value_widget.set_digits(2) self.value_widget.connect('changed', emit_changed) self.value_widget.show() self.unit_combo.show() self.pack_start(self.value_widget, True, True, 0) self.pack_start(self.unit_combo, True, True, 0)
def __init__ (self, default_value = inch): gobject.GObject.__init__(self) gtk.HBox.__init__(self) self.__quiet__ = False self.unit_combo = gtk.combo_box_new_text() for key in self.units: self.unit_combo.append_text(key) unit = get_prefs().get('default_margin_unit',_('cm')) if unit not in self.units: unit = _('cm') self.last_unit = self.units[unit] cb_extras.setup_typeahead(self.unit_combo) cb_extras.cb_set_active_text(self.unit_combo,unit) self.unit_combo.connect('changed',self.unit_changed_cb) self.value_adjustment = gtk.Adjustment( value=self.adjust_to_unit(default_value), lower= self.min_val / self.last_unit, upper = self.max_val / self.last_unit, step_incr = self.adjustments[self.last_unit][0], page_incr = self.adjustments[self.last_unit][1], ) def emit_changed (*args): self.emit('changed') self.value_adjustment.connect('changed',emit_changed) self.value_widget = gtk.SpinButton(self.value_adjustment,digits=2) self.value_widget.connect('changed',emit_changed) self.value_widget.show(); self.unit_combo.show() self.pack_start(self.value_widget) self.pack_start(self.unit_combo)
def __init__(self, converter=convert.get_converter(), unitModel=None, amt1=None, unit1=None, item=None, okcb=None): self.possible_conversions = None self.ui = gtk.Builder() self.ui.add_from_file(os.path.join(current_path, 'converter.ui')) self.conv = converter self.changing_item = False self.okcb = okcb self.widget_names = [ 'window', 'amt1Entry', 'amt2Label', 'unit1ComboBox', 'unit2ComboBox', 'itemComboBox', 'densitySpinButton', 'useDensityCheckButton', 'statusbar', 'expander1', 'messageLabel' ] # grab all our widgets for w in self.widget_names: setattr(self, w, self.ui.get_object(w)) # HACK FOR READABILITY w/o glade change self.resultLabel = self.amt2Label self.resultLabel.set_use_markup(True) self.resultLabel.set_line_wrap(True) if unitModel: self.unitModel = unitModel else: self.unitModel = gourmet.GourmetRecipeManager.UnitModel(self.conv) #self.unit2Model = self.unitModel.filter_new() self.unit1ComboBox.set_model(self.unitModel) self.unit1ComboBox.set_wrap_width(3) self.unit2ComboBox.set_wrap_width(3) #self.unit2Model.set_visible_func(self.unit_filter) #self.unit2ComboBox.set_model(self.unit2Model) self.unit2ComboBox.set_model(self.unitModel) for combobox in [self.unit1ComboBox, self.unit2ComboBox]: cell = gtk.CellRendererText() combobox.pack_start(cell, True) combobox.add_attribute(cell, 'text', 1) setup_typeahead(combobox) #self.itemComboBox.append_text('None') ikeys = self.conv.density_table.keys() ikeys.sort() for itm in ikeys: self.itemComboBox.append_text(itm) if len(self.conv.density_table.keys()) > 8: self.itemComboBox.set_wrap_width(3) setup_typeahead(self.itemComboBox) if amt1: self.amt1Entry = self.conv.float_to_frac(amt1) self.ui.connect_signals({ 'amt1changed': self.changed, 'unit1changed': self.changed, 'unit2changed': self.changed, 'itemChanged': self.density_itm_changed, 'densitySpinChanged': self.density_spin_changed, 'densityChecked': self.density_toggled, 'close': self.close, }) self.last_amt1 = None self.last_amt2 = None self.last_unit1 = None self.last_unit2 = None if unit1 and self.conv.unit_dict.has_key[unit1]: u = self.conv.unit_dict[unit1] cb_set_active_text(self.unit1ComboBox, u) if amt1: self.amt1Entry.set_text("%s" % amt1) if item: cb_set_active_text(self.itemComboBox, item)
def __init__ (self, converter=convert.get_converter(), unitModel=None, amt1=None, unit1=None, item=None, okcb=None ): self.possible_conversions = None self.ui = gtk.Builder() self.ui.add_from_file(os.path.join(current_path,'converter.ui')) self.conv = converter self.changing_item = False self.okcb = okcb self.widget_names = ['window','amt1Entry', 'amt2Label', 'unit1ComboBox', 'unit2ComboBox', 'itemComboBox', 'densitySpinButton', 'useDensityCheckButton', 'statusbar','expander1','messageLabel'] # grab all our widgets for w in self.widget_names: setattr(self,w,self.ui.get_object(w)) # HACK FOR READABILITY w/o glade change self.resultLabel = self.amt2Label self.resultLabel.set_use_markup(True) self.resultLabel.set_line_wrap(True) if unitModel: self.unitModel=unitModel else: self.unitModel=gourmet.GourmetRecipeManager.UnitModel(self.conv) #self.unit2Model = self.unitModel.filter_new() self.unit1ComboBox.set_model(self.unitModel) self.unit1ComboBox.set_wrap_width(3) self.unit2ComboBox.set_wrap_width(3) #self.unit2Model.set_visible_func(self.unit_filter) #self.unit2ComboBox.set_model(self.unit2Model) self.unit2ComboBox.set_model(self.unitModel) for combobox in [self.unit1ComboBox, self.unit2ComboBox]: cell = gtk.CellRendererText() combobox.pack_start(cell, True) combobox.add_attribute(cell, 'text', 1) setup_typeahead(combobox) #self.itemComboBox.append_text('None') ikeys = self.conv.density_table.keys() ikeys.sort() for itm in ikeys: self.itemComboBox.append_text(itm) if len(self.conv.density_table.keys()) > 8: self.itemComboBox.set_wrap_width(3) setup_typeahead(self.itemComboBox) if amt1: self.amt1Entry=self.conv.float_to_frac(amt1) self.ui.connect_signals({ 'amt1changed':self.changed, 'unit1changed':self.changed, 'unit2changed':self.changed, 'itemChanged':self.density_itm_changed, 'densitySpinChanged':self.density_spin_changed, 'densityChecked':self.density_toggled, 'close':self.close, }) self.last_amt1 = None self.last_amt2 = None self.last_unit1 = None self.last_unit2 = None if unit1 and self.conv.unit_dict.has_key[unit1]: u = self.conv.unit_dict[unit1] cb_set_active_text(self.unit1ComboBox,u) if amt1: self.amt1Entry.set_text("%s"%amt1) if item: cb_set_active_text(self.itemComboBox,item)