Esempio n. 1
0
 def __init__(self, group):
     BaseWidgetClass.__init__(self, group)
     ######
     sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL)
     ######
     hbox = gtk.HBox()
     label = gtk.Label(_("Scale"))
     label.set_alignment(0, 0.5)
     sizeGroup.add_widget(label)
     pack(hbox, label)
     self.scaleCombo = common.Scale10PowerComboBox()
     pack(hbox, self.scaleCombo)
     pack(self, hbox)
     hbox.show_all()
     ####
     hbox = gtk.HBox()
     label = gtk.Label(_("Start"))
     label.set_alignment(0, 0.5)
     sizeGroup.add_widget(label)
     pack(hbox, label)
     self.startSpin = IntSpinButton(-maxStartEnd, maxStartEnd)
     pack(hbox, self.startSpin)
     pack(self, hbox)
     hbox.show_all()
     ####
     hbox = gtk.HBox()
     label = gtk.Label(_("End"))
     label.set_alignment(0, 0.5)
     sizeGroup.add_widget(label)
     pack(hbox, label)
     self.endSpin = IntSpinButton(-maxStartEnd, maxStartEnd)
     pack(hbox, self.endSpin)
     pack(self, hbox)
     hbox.show_all()
Esempio n. 2
0
	def __init__(self, group):
		BaseWidgetClass.__init__(self, group)
		######
		sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL)
		######
		hbox = gtk.HBox()
		label = gtk.Label(_('Scale'))
		label.set_alignment(0, 0.5)
		sizeGroup.add_widget(label)
		pack(hbox, label)
		self.scaleCombo = common.Scale10PowerComboBox()
		pack(hbox, self.scaleCombo)
		pack(self, hbox)
		####
		hbox = gtk.HBox()
		label = gtk.Label(_('Start'))
		label.set_alignment(0, 0.5)
		sizeGroup.add_widget(label)
		pack(hbox, label)
		self.startSpin = IntSpinButton(-maxStartEnd, maxStartEnd)
		pack(hbox, self.startSpin)
		pack(self, hbox)
		####
		hbox = gtk.HBox()
		label = gtk.Label(_('End'))
		label.set_alignment(0, 0.5)
		sizeGroup.add_widget(label)
		pack(hbox, label)
		self.endSpin = IntSpinButton(-maxStartEnd, maxStartEnd)
		pack(hbox, self.endSpin)
		pack(self, hbox)
Esempio n. 3
0
 def __init__(self, event):  ## FIXME
     common.WidgetClass.__init__(self, event)
     ######
     sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL)
     ######
     hbox = gtk.HBox()
     label = gtk.Label(_('Start'))
     label.set_alignment(0, 0.5)
     sizeGroup.add_widget(label)
     pack(hbox, label)
     self.startDateInput = DateButton()
     pack(hbox, self.startDateInput)
     ###
     pack(hbox, gtk.Label(''), 1, 1)
     pack(self, hbox)
     ######
     hbox = gtk.HBox()
     label = gtk.Label(_('Repeat Every '))
     label.set_alignment(0, 0.5)
     sizeGroup.add_widget(label)
     pack(hbox, label)
     self.weeksSpin = IntSpinButton(1, 99999)
     pack(hbox, self.weeksSpin)
     pack(hbox, gtk.Label('  ' + _(' Weeks')))
     ###
     pack(hbox, gtk.Label(''), 1, 1)
     pack(self, hbox)
     ######
     hbox = gtk.HBox()
     label = gtk.Label(_('End'))
     label.set_alignment(0, 0.5)
     sizeGroup.add_widget(label)
     pack(hbox, label)
     self.endDateInput = DateButton()
     pack(hbox, self.endDateInput)
     ###
     pack(hbox, gtk.Label(''), 1, 1)
     pack(self, hbox)
     #########
     hbox = gtk.HBox()
     label = gtk.Label(_('Time'))
     label.set_alignment(0, 0.5)
     sizeGroup.add_widget(label)
     pack(hbox, label)
     ##
     self.dayTimeStartInput = HourMinuteButton()
     self.dayTimeEndInput = HourMinuteButton()
     ##
     pack(hbox, self.dayTimeStartInput)
     pack(hbox, gtk.Label(' ' + _('to') + ' '))
     pack(hbox, self.dayTimeEndInput)
     pack(self, hbox)
Esempio n. 4
0
 def __init__(self, module, varName, _max):
     _min = 0
     self.module = module
     self.varName = varName
     ###
     self.widthItem = IntSpinButton(_min, _max)
     self.heightItem = IntSpinButton(_min, _max)
     ###
     hbox = self._widget = gtk.HBox()
     pack(hbox, gtk.Label(_('Width') + ':'))
     pack(hbox, self.widthItem)
     pack(hbox, gtk.Label('  '))
     pack(hbox, gtk.Label(_('Height') + ':'))
     pack(hbox, self.heightItem)
Esempio n. 5
0
 def __init__(self, module, varName, _max):
     _min = 0
     self.module = module
     self.varName = varName
     ###
     self.widthItem = IntSpinButton(_min, _max)
     self.heightItem = IntSpinButton(_min, _max)
     ###
     hbox = self._widget = gtk.HBox()
     pack(hbox, gtk.Label(_('Width')+':'))
     pack(hbox, self.widthItem)
     pack(hbox, gtk.Label('  '))
     pack(hbox, gtk.Label(_('Height')+':'))
     pack(hbox, self.heightItem)
Esempio n. 6
0
 def optionsWidgetCreate(self):
     from scal3.ui_gtk.mywidgets.multi_spin.integer import IntSpinButton
     if self.optionsWidget:
         return
     self.optionsWidget = gtk.HBox()
     ###
     hbox = gtk.HBox()
     spin = IntSpinButton(1, 9999)
     spin.set_value(ui.eventViewMaxHeight)
     spin.connect('changed', self.heightSpinChanged)
     pack(hbox, gtk.Label(_('Maximum Height')))
     pack(hbox, spin)
     pack(self.optionsWidget, hbox)
     ###
     self.optionsWidget.show_all()
Esempio n. 7
0
 def __init__(self, module, varName, _min, _max, digits=1):
     self.module = module
     self.varName = varName
     if digits == 0:
         w = IntSpinButton(_min, _max)
     else:
         w = FloatSpinButton(_min, _max, digits)
     self._widget = w
     self.get = w.get_value
     self.set = w.set_value
Esempio n. 8
0
 def __init__(self, funcOwner, vertical=False, onPressContinue=False):
     from scal3.ui_gtk.mywidgets.multi_spin.integer import IntSpinButton
     gtk.Toolbar.__init__(self)
     self.funcOwner = funcOwner
     self.set_orientation(gtk.Orientation.VERTICAL if vertical else gtk.
                          Orientation.HORIZONTAL)
     self.add_events(gdk.EventMask.POINTER_MOTION_MASK)
     self.onPressContinue = onPressContinue
     self.remain = False
     self.lastPressTime = 0
     ###
     optionsWidget = gtk.VBox()
     ##
     hbox = gtk.HBox()
     pack(hbox, gtk.Label(_('Style')))
     self.styleCombo = gtk.ComboBoxText()
     for item in self.styleList:
         self.styleCombo.append_text(_(item))
     pack(hbox, self.styleCombo)
     pack(optionsWidget, hbox)
     ##
     hbox = gtk.HBox()
     pack(hbox, gtk.Label(_('Icon Size')))
     self.iconSizeCombo = gtk.ComboBoxText()
     for (i, item) in enumerate(ud.iconSizeList):
         self.iconSizeCombo.append_text(_(item[0]))
     pack(hbox, self.iconSizeCombo)
     pack(optionsWidget, hbox)
     self.iconSizeHbox = hbox
     ##
     hbox = gtk.HBox()
     pack(hbox, gtk.Label(_('Buttons Border')))
     self.buttonsBorderSpin = IntSpinButton(0, 99)
     pack(hbox, self.buttonsBorderSpin)
     pack(optionsWidget, hbox)
     ##
     self.initVars(optionsWidget=optionsWidget)
     self.iconSizeCombo.connect('changed', self.iconSizeComboChanged)
     self.styleCombo.connect('changed', self.styleComboChanged)
     self.buttonsBorderSpin.connect('changed',
                                    self.buttonsBorderSpinChanged)
Esempio n. 9
0
 def __init__(self, rule):
     self.rule = rule
     ###
     gtk.HBox.__init__(self)
     spin = IntSpinButton(0, 9999)
     pack(self, spin)
     self.spin = spin
     ##
     pack(self, gtk.Label(" " + _("days and") + " "))
     tbox = TimeButton()
     pack(self, tbox)
     self.tbox = tbox
Esempio n. 10
0
	def optionsWidgetCreate(self):
		from scal3.ui_gtk.mywidgets.multi_spin.integer import IntSpinButton
		if self.optionsWidget:
			return
		self.optionsWidget = gtk.VBox()
		####
		if self.customizeWidth:
			value = self.getWidthValue()
			###
			hbox = gtk.HBox()
			pack(hbox, gtk.Label(_('Width')))
			spin = IntSpinButton(0, 999)
			pack(hbox, spin)
			spin.set_value(value)
			spin.connect('changed', self.widthSpinChanged)
			pack(self.optionsWidget, hbox)
		####
		if self.customizeFont:
			hbox = gtk.HBox()
			pack(hbox, gtk.Label(_('Font Family')))
			combo = FontFamilyCombo(hasAuto=True)
			combo.set_value(self.getFontValue())
			pack(hbox, combo)
			combo.connect('changed', self.fontFamilyComboChanged)
			pack(self.optionsWidget, hbox)
		####
		self.optionsWidget.show_all()
Esempio n. 11
0
class WidthHeightPrefItem(PrefItem):
    def __init__(self, module, varName, _max):
        _min = 0
        self.module = module
        self.varName = varName
        ###
        self.widthItem = IntSpinButton(_min, _max)
        self.heightItem = IntSpinButton(_min, _max)
        ###
        hbox = self._widget = gtk.HBox()
        pack(hbox, gtk.Label(_('Width') + ':'))
        pack(hbox, self.widthItem)
        pack(hbox, gtk.Label('  '))
        pack(hbox, gtk.Label(_('Height') + ':'))
        pack(hbox, self.heightItem)

    def get(self):
        return (
            int(self.widthItem.get_value()),
            int(self.heightItem.get_value()),
        )

    def set(self, value):
        w, h = value
        self.widthItem.set_value(w)
        self.heightItem.set_value(h)
Esempio n. 12
0
 def __init__(self, event):## FIXME
     common.WidgetClass.__init__(self, event)
     ######
     sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL)
     ######
     hbox = gtk.HBox()
     label = gtk.Label(_('Start'))
     label.set_alignment(0, 0.5)
     sizeGroup.add_widget(label)
     pack(hbox, label)
     self.startDateInput = DateButton()
     pack(hbox, self.startDateInput)
     ###
     pack(hbox, gtk.Label(''), 1, 1)
     pack(self, hbox)
     ######
     hbox = gtk.HBox()
     label = gtk.Label(_('Repeat Every '))
     label.set_alignment(0, 0.5)
     sizeGroup.add_widget(label)
     pack(hbox, label)
     self.weeksSpin = IntSpinButton(1, 99999)
     pack(hbox, self.weeksSpin)
     pack(hbox, gtk.Label('  '+_(' Weeks')))
     ###
     pack(hbox, gtk.Label(''), 1, 1)
     pack(self, hbox)
     ######
     hbox = gtk.HBox()
     label = gtk.Label(_('End'))
     label.set_alignment(0, 0.5)
     sizeGroup.add_widget(label)
     pack(hbox, label)
     self.endDateInput = DateButton()
     pack(hbox, self.endDateInput)
     ###
     pack(hbox, gtk.Label(''), 1, 1)
     pack(self, hbox)
     #########
     hbox = gtk.HBox()
     label = gtk.Label(_('Time'))
     label.set_alignment(0, 0.5)
     sizeGroup.add_widget(label)
     pack(hbox, label)
     ##
     self.dayTimeStartInput = HourMinuteButton()
     self.dayTimeEndInput = HourMinuteButton()
     ##
     pack(hbox, self.dayTimeStartInput)
     pack(hbox, gtk.Label(' ' + _('to') + ' '))
     pack(hbox, self.dayTimeEndInput)
     pack(self, hbox)
Esempio n. 13
0
 def optionsWidgetCreate(self):
     from scal3.ui_gtk.mywidgets.multi_spin.integer import IntSpinButton
     from scal3.ui_gtk.pref_utils import CheckPrefItem, ColorPrefItem
     if self.optionsWidget:
         return
     self.optionsWidget = gtk.VBox()
     ####
     hbox = gtk.HBox()
     spin = IntSpinButton(1, 9999)
     spin.set_value(ui.dcalHeight)
     spin.connect('changed', self.heightSpinChanged)
     pack(hbox, gtk.Label(_('Height')))
     pack(hbox, spin)
     pack(self.optionsWidget, hbox)
     ########
     frame = gtk.Frame()
     frame.set_label(_('Calendars'))
     self.typeParamsVbox = gtk.VBox()
     frame.add(self.typeParamsVbox)
     frame.show_all()
     pack(self.optionsWidget, frame)
     self.optionsWidget.show_all()
     self.updateTypeParamsWidget()## FIXME
Esempio n. 14
0
 def optionsWidgetCreate(self):
     from scal3.ui_gtk.mywidgets.multi_spin.integer import IntSpinButton
     if self.optionsWidget:
         return
     ###
     self.optionsWidget = gtk.VBox()
     ##
     hbox = gtk.HBox()
     pack(hbox, gtk.Label(_("Style")))
     self.styleCombo = gtk.ComboBoxText()
     for item in self.styleList:
         self.styleCombo.append_text(_(item))
     pack(hbox, self.styleCombo)
     pack(self.optionsWidget, hbox)
     ##
     hbox = gtk.HBox()
     pack(hbox, gtk.Label(_("Icon Size")))
     self.iconSizeCombo = gtk.ComboBoxText()
     for (i, item) in enumerate(ud.iconSizeList):
         self.iconSizeCombo.append_text(_(item[0]))
     pack(hbox, self.iconSizeCombo)
     pack(self.optionsWidget, hbox)
     self.iconSizeHbox = hbox
     ##
     hbox = gtk.HBox()
     pack(hbox, gtk.Label(_("Buttons Border")))
     self.buttonsBorderSpin = IntSpinButton(0, 99)
     pack(hbox, self.buttonsBorderSpin)
     pack(self.optionsWidget, hbox)
     ##
     self.iconSizeCombo.connect("changed", self.iconSizeComboChanged)
     self.styleCombo.connect("changed", self.styleComboChanged)
     self.buttonsBorderSpin.connect("changed",
                                    self.buttonsBorderSpinChanged)
     #self.styleComboChanged()
     ##
     self.optionsWidget.show_all()
Esempio n. 15
0
 def __init__(self, event):  ## FIXME
     common.WidgetClass.__init__(self, event)
     ######
     sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL)
     ######
     hbox = gtk.HBox()
     label = gtk.Label(_('Start'))
     label.set_alignment(0, 0.5)
     sizeGroup.add_widget(label)
     pack(hbox, label)
     self.startDateInput = DateButton()
     pack(hbox, self.startDateInput)
     ##
     pack(self, hbox)
     ######
     hbox = gtk.HBox()
     self.endTypeCombo = gtk.ComboBoxText()
     for item in ('Duration', 'End'):
         self.endTypeCombo.append_text(_(item))
     self.endTypeCombo.connect('changed', self.endTypeComboChanged)
     sizeGroup.add_widget(self.endTypeCombo)
     pack(hbox, self.endTypeCombo)
     ####
     self.durationBox = gtk.HBox()
     self.durationSpin = IntSpinButton(1, 999)
     pack(self.durationBox, self.durationSpin)
     pack(self.durationBox, gtk.Label(_(' days')))
     pack(hbox, self.durationBox)
     ####
     self.endDateInput = DateButton()
     pack(hbox, self.endDateInput)
     ####
     pack(hbox, gtk.Label(''), 1, 1)
     pack(self, hbox)
     #############
     self.notificationBox = common.NotificationBox(event)
     pack(self, self.notificationBox)
Esempio n. 16
0
 def __init__(self, event):## FIXME
     common.WidgetClass.__init__(self, event)
     ######
     sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL)
     ######
     hbox = gtk.HBox()
     label = gtk.Label(_('Scale'))
     label.set_alignment(0, 0.5)
     sizeGroup.add_widget(label)
     pack(hbox, label)
     self.scaleCombo = common.Scale10PowerComboBox()
     pack(hbox, self.scaleCombo)
     pack(self, hbox)
     ####
     hbox = gtk.HBox()
     label = gtk.Label(_('Start'))
     label.set_alignment(0, 0.5)
     sizeGroup.add_widget(label)
     pack(hbox, label)
     self.startSpin = IntSpinButton(-maxStart, maxStart)
     self.startSpin.connect('changed', self.startSpinChanged)
     pack(hbox, self.startSpin)
     pack(self, hbox)
     ####
     hbox = gtk.HBox()
     self.endRelCombo = gtk.ComboBoxText()
     for item in ('Duration', 'End'):
         self.endRelCombo.append_text(_(item))
     self.endRelCombo.connect('changed', self.endRelComboChanged)
     sizeGroup.add_widget(self.endRelCombo)
     pack(hbox, self.endRelCombo)
     self.endSpin = IntSpinButton(-maxDur, maxDur)
     pack(hbox, self.endSpin)
     pack(self, hbox)
     ####
     self.endRelComboChanged()
Esempio n. 17
0
	def optionsWidgetCreate(self):
		from scal3.ui_gtk.mywidgets.multi_spin.integer import IntSpinButton
		if self.optionsWidget:
			return
		self.optionsWidget = gtk.HBox()
		###
		hbox = gtk.HBox()
		spin = IntSpinButton(1, 9999)
		spin.set_value(ui.eventViewMaxHeight)
		spin.connect("changed", self.heightSpinChanged)
		pack(hbox, gtk.Label(_("Maximum Height")))
		pack(hbox, spin)
		pack(self.optionsWidget, hbox)
		###
		self.optionsWidget.show_all()
Esempio n. 18
0
    def __init__(self, funcOwner, vertical=False, onPressContinue=False):
        from scal3.ui_gtk.mywidgets.multi_spin.integer import IntSpinButton

        gtk.Toolbar.__init__(self)
        self.funcOwner = funcOwner
        self.set_orientation(gtk.Orientation.VERTICAL if vertical else gtk.Orientation.HORIZONTAL)
        self.add_events(gdk.EventMask.POINTER_MOTION_MASK)
        self.onPressContinue = onPressContinue
        ###
        self.connect("button-press-event", self.buttonPress)
        ###
        optionsWidget = gtk.VBox()
        ##
        hbox = gtk.HBox()
        pack(hbox, gtk.Label(_("Style")))
        self.styleCombo = gtk.ComboBoxText()
        for item in self.styleList:
            self.styleCombo.append_text(_(item))
        pack(hbox, self.styleCombo)
        pack(optionsWidget, hbox)
        ##
        hbox = gtk.HBox()
        pack(hbox, gtk.Label(_("Icon Size")))
        self.iconSizeCombo = gtk.ComboBoxText()
        for (i, item) in enumerate(ud.iconSizeList):
            self.iconSizeCombo.append_text(_(item[0]))
        pack(hbox, self.iconSizeCombo)
        pack(optionsWidget, hbox)
        self.iconSizeHbox = hbox
        ##
        hbox = gtk.HBox()
        pack(hbox, gtk.Label(_("Buttons Border")))
        self.buttonsBorderSpin = IntSpinButton(0, 99)
        pack(hbox, self.buttonsBorderSpin)
        pack(optionsWidget, hbox)
        ##
        self.initVars(optionsWidget=optionsWidget)
        self.iconSizeCombo.connect("changed", self.iconSizeComboChanged)
        self.styleCombo.connect("changed", self.styleComboChanged)
        self.buttonsBorderSpin.connect("changed", self.buttonsBorderSpinChanged)
Esempio n. 19
0
class WidgetClass(BaseWidgetClass):
    def __init__(self, group):
        BaseWidgetClass.__init__(self, group)
        ######
        sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL)
        ######
        hbox = gtk.HBox()
        label = gtk.Label(_("Scale"))
        label.set_alignment(0, 0.5)
        sizeGroup.add_widget(label)
        pack(hbox, label)
        self.scaleCombo = common.Scale10PowerComboBox()
        pack(hbox, self.scaleCombo)
        pack(self, hbox)
        hbox.show_all()
        ####
        hbox = gtk.HBox()
        label = gtk.Label(_("Start"))
        label.set_alignment(0, 0.5)
        sizeGroup.add_widget(label)
        pack(hbox, label)
        self.startSpin = IntSpinButton(-maxStartEnd, maxStartEnd)
        pack(hbox, self.startSpin)
        pack(self, hbox)
        hbox.show_all()
        ####
        hbox = gtk.HBox()
        label = gtk.Label(_("End"))
        label.set_alignment(0, 0.5)
        sizeGroup.add_widget(label)
        pack(hbox, label)
        self.endSpin = IntSpinButton(-maxStartEnd, maxStartEnd)
        pack(hbox, self.endSpin)
        pack(self, hbox)
        hbox.show_all()

    def updateWidget(self):
        BaseWidgetClass.updateWidget(self)
        self.scaleCombo.set_value(self.group.scale)
        self.startSpin.set_value(self.group.getStartValue())
        self.endSpin.set_value(self.group.getEndValue())

    def updateVars(self):
        BaseWidgetClass.updateVars(self)
        self.group.scale = self.scaleCombo.get_value()
        self.group.setStartValue(self.startSpin.get_value())
        self.group.setEndValue(self.endSpin.get_value())
Esempio n. 20
0
 def __init__(self, module, opt):
     t = opt[1]
     self.opt = opt  ## needed??
     self.module = module
     self.type = t
     self.var_name = opt[0]
     hbox = gtk.HBox()
     if t == bool:
         w = gtk.CheckButton(_(opt[2]))
         self.get_value = w.get_active
         self.set_value = w.set_active
     elif t == list:
         pack(hbox, gtk.Label(_(opt[2])))
         w = gtk.ComboBoxText()  ### or RadioButton
         for s in opt[3]:
             w.append_text(_(s))
         self.get_value = w.get_active
         self.set_value = w.set_active
     elif t == int:
         pack(hbox, gtk.Label(_(opt[2])))
         w = IntSpinButton(opt[3], opt[4])
         self.get_value = w.get_value
         self.set_value = w.set_value
     elif t == float:
         pack(hbox, gtk.Label(_(opt[2])))
         w = FloatSpinButton(opt[3], opt[4], opt[5])
         self.get_value = w.get_value
         self.set_value = w.set_value
     else:
         raise RuntimeError('bad option type "%s"' % t)
     pack(hbox, w)
     self._widget = hbox
     ####
     self.updateVar = lambda: setattr(self.module, self.var_name,
                                      self.get_value())
     self.updateWidget = lambda: self.set_value(
         getattr(self.module, self.var_name))
Esempio n. 21
0
 def __init__(self, event):## FIXME
     common.WidgetClass.__init__(self, event)
     ######
     sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL)
     ######
     hbox = gtk.HBox()
     label = gtk.Label(_('Start'))
     label.set_alignment(0, 0.5)
     sizeGroup.add_widget(label)
     pack(hbox, label)
     self.startDateInput = DateButton()
     pack(hbox, self.startDateInput)
     ##
     pack(self, hbox)
     ######
     hbox = gtk.HBox()
     self.endTypeCombo = gtk.ComboBoxText()
     for item in ('Duration', 'End'):
         self.endTypeCombo.append_text(_(item))
     self.endTypeCombo.connect('changed', self.endTypeComboChanged)
     sizeGroup.add_widget(self.endTypeCombo)
     pack(hbox, self.endTypeCombo)
     ####
     self.durationBox = gtk.HBox()
     self.durationSpin = IntSpinButton(1, 999)
     pack(self.durationBox, self.durationSpin)
     pack(self.durationBox, gtk.Label(_(' days')))
     pack(hbox, self.durationBox)
     ####
     self.endDateInput = DateButton()
     pack(hbox, self.endDateInput)
     ####
     pack(hbox, gtk.Label(''), 1, 1)
     pack(self, hbox)
     #############
     self.notificationBox = common.NotificationBox(event)
     pack(self, self.notificationBox)
Esempio n. 22
0
class WidgetClass(BaseWidgetClass):
	def __init__(self, group):
		BaseWidgetClass.__init__(self, group)
		######
		sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL)
		######
		hbox = gtk.HBox()
		label = gtk.Label(_("Scale"))
		label.set_alignment(0, 0.5)
		sizeGroup.add_widget(label)
		pack(hbox, label)
		self.scaleCombo = common.Scale10PowerComboBox()
		pack(hbox, self.scaleCombo)
		pack(self, hbox)
		####
		hbox = gtk.HBox()
		label = gtk.Label(_("Start"))
		label.set_alignment(0, 0.5)
		sizeGroup.add_widget(label)
		pack(hbox, label)
		self.startSpin = IntSpinButton(-maxStartEnd, maxStartEnd)
		pack(hbox, self.startSpin)
		pack(self, hbox)
		####
		hbox = gtk.HBox()
		label = gtk.Label(_("End"))
		label.set_alignment(0, 0.5)
		sizeGroup.add_widget(label)
		pack(hbox, label)
		self.endSpin = IntSpinButton(-maxStartEnd, maxStartEnd)
		pack(hbox, self.endSpin)
		pack(self, hbox)

	def updateWidget(self):
		BaseWidgetClass.updateWidget(self)
		self.scaleCombo.set_value(self.group.scale)
		self.startSpin.set_value(self.group.getStartValue())
		self.endSpin.set_value(self.group.getEndValue())

	def updateVars(self):
		BaseWidgetClass.updateVars(self)
		self.group.scale = self.scaleCombo.get_value()
		self.group.setStartValue(self.startSpin.get_value())
		self.group.setEndValue(self.endSpin.get_value())
Esempio n. 23
0
 def optionsWidgetCreate(self):
     from scal3.ui_gtk.mywidgets.multi_spin.integer import IntSpinButton
     from scal3.ui_gtk.pref_utils import CheckPrefItem, ColorPrefItem
     if self.optionsWidget:
         return
     self.optionsWidget = gtk.VBox()
     ####
     hbox = gtk.HBox()
     spin = IntSpinButton(1, 9999)
     spin.set_value(ui.dcalHeight)
     spin.connect('changed', self.heightSpinChanged)
     pack(hbox, gtk.Label(_('Height')))
     pack(hbox, spin)
     pack(self.optionsWidget, hbox)
     ########
     frame = gtk.Frame()
     frame.set_label(_('Calendars'))
     self.typeParamsVbox = gtk.VBox()
     frame.add(self.typeParamsVbox)
     frame.show_all()
     pack(self.optionsWidget, frame)
     self.optionsWidget.show_all()
     self.updateTypeParamsWidget()  ## FIXME
Esempio n. 24
0
class WidthHeightPrefItem(PrefItem):
    def __init__(self, module, varName, _max):
        _min = 0
        self.module = module
        self.varName = varName
        ###
        self.widthItem = IntSpinButton(_min, _max)
        self.heightItem = IntSpinButton(_min, _max)
        ###
        hbox = self._widget = gtk.HBox()
        pack(hbox, gtk.Label(_('Width')+':'))
        pack(hbox, self.widthItem)
        pack(hbox, gtk.Label('  '))
        pack(hbox, gtk.Label(_('Height')+':'))
        pack(hbox, self.heightItem)
    def get(self):
        return (
            int(self.widthItem.get_value()),
            int(self.heightItem.get_value()),
        )
    def set(self, value):
        w, h = value
        self.widthItem.set_value(w)
        self.heightItem.set_value(h)
Esempio n. 25
0
class WidgetClass(common.WidgetClass):
    def __init__(self, event):  ## FIXME
        common.WidgetClass.__init__(self, event)
        ######
        sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL)
        ######
        hbox = gtk.HBox()
        label = gtk.Label(_("Start"))
        label.set_alignment(0, 0.5)
        sizeGroup.add_widget(label)
        pack(hbox, label)
        self.startDateInput = DateButton()
        pack(hbox, self.startDateInput)
        ###
        pack(hbox, gtk.Label(""), 1, 1)
        pack(self, hbox)
        ######
        hbox = gtk.HBox()
        label = gtk.Label(_("Repeat Every "))
        label.set_alignment(0, 0.5)
        sizeGroup.add_widget(label)
        pack(hbox, label)
        self.weeksSpin = IntSpinButton(1, 99999)
        pack(hbox, self.weeksSpin)
        pack(hbox, gtk.Label("  " + _(" Weeks")))
        ###
        pack(hbox, gtk.Label(""), 1, 1)
        pack(self, hbox)
        ######
        hbox = gtk.HBox()
        label = gtk.Label(_("End"))
        label.set_alignment(0, 0.5)
        sizeGroup.add_widget(label)
        pack(hbox, label)
        self.endDateInput = DateButton()
        pack(hbox, self.endDateInput)
        ###
        pack(hbox, gtk.Label(""), 1, 1)
        pack(self, hbox)
        #########
        hbox = gtk.HBox()
        label = gtk.Label(_("Time"))
        label.set_alignment(0, 0.5)
        sizeGroup.add_widget(label)
        pack(hbox, label)
        ##
        self.dayTimeStartInput = HourMinuteButton()
        self.dayTimeEndInput = HourMinuteButton()
        ##
        pack(hbox, self.dayTimeStartInput)
        pack(hbox, gtk.Label(" " + _("to") + " "))
        pack(hbox, self.dayTimeEndInput)
        pack(self, hbox)
        #############
        #self.notificationBox = common.NotificationBox(event)
        #pack(self, self.notificationBox)
        #############
        #self.filesBox = common.FilesBox(self.event)
        #pack(self, self.filesBox)

    def updateWidget(self):  ## FIXME
        common.WidgetClass.updateWidget(self)
        mode = self.event.mode
        ###
        self.startDateInput.set_value(jd_to(self.event.getStartJd(), mode))
        ###
        cycleWeeks, ok = self.event["cycleWeeks"]
        if not ok:
            raise RuntimeError("no cycleWeeks rule")
        self.weeksSpin.set_value(cycleWeeks.weeks)
        ###
        self.endDateInput.set_value(jd_to(self.event.getEndJd(), mode))
        ###
        dayTimeRange, ok = self.event["dayTimeRange"]
        self.dayTimeStartInput.set_value(dayTimeRange.dayTimeStart)
        self.dayTimeEndInput.set_value(dayTimeRange.dayTimeEnd)

    def updateVars(self):  ## FIXME
        common.WidgetClass.updateVars(self)
        ###
        start, ok = self.event["start"]
        if not ok:
            raise RuntimeError("no start rule")
        start.setDate(self.startDateInput.get_value())
        ###
        end, ok = self.event["end"]
        if not ok:
            raise RuntimeError("no end rule")
        end.setDate(self.endDateInput.get_value())
        ###
        cycleWeeks, ok = self.event["cycleWeeks"]
        if not ok:
            raise RuntimeError("no cycleWeeks rule")
        cycleWeeks.setData(self.weeksSpin.get_value())
        ###
        dayTimeRange, ok = self.event["dayTimeRange"]
        if not ok:
            raise RuntimeError("no dayTimeRange rule")
        dayTimeRange.setRange(
            self.dayTimeStartInput.get_value(),
            self.dayTimeEndInput.get_value(),
        )

    def modeComboChanged(self, obj=None):
        # overwrite method from common.WidgetClass
        newMode = self.modeCombo.get_active()
        self.startDateInput.changeMode(self.event.mode, newMode)
        self.endDateInput.changeMode(self.event.mode, newMode)
        self.event.mode = newMode
Esempio n. 26
0
class WidgetClass(common.WidgetClass):
    def __init__(self, event):## FIXME
        common.WidgetClass.__init__(self, event)
        ######
        sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL)
        ######
        hbox = gtk.HBox()
        label = gtk.Label(_('Scale'))
        label.set_alignment(0, 0.5)
        sizeGroup.add_widget(label)
        pack(hbox, label)
        self.scaleCombo = common.Scale10PowerComboBox()
        pack(hbox, self.scaleCombo)
        pack(self, hbox)
        ####
        hbox = gtk.HBox()
        label = gtk.Label(_('Start'))
        label.set_alignment(0, 0.5)
        sizeGroup.add_widget(label)
        pack(hbox, label)
        self.startSpin = IntSpinButton(-maxStart, maxStart)
        self.startSpin.connect('changed', self.startSpinChanged)
        pack(hbox, self.startSpin)
        pack(self, hbox)
        ####
        hbox = gtk.HBox()
        self.endRelCombo = gtk.ComboBoxText()
        for item in ('Duration', 'End'):
            self.endRelCombo.append_text(_(item))
        self.endRelCombo.connect('changed', self.endRelComboChanged)
        sizeGroup.add_widget(self.endRelCombo)
        pack(hbox, self.endRelCombo)
        self.endSpin = IntSpinButton(-maxDur, maxDur)
        pack(hbox, self.endSpin)
        pack(self, hbox)
        ####
        self.endRelComboChanged()
    def endRelComboChanged(self, combo=None):
        rel = self.endRelCombo.get_active()
        start = self.startSpin.get_value()
        end = self.endSpin.get_value()
        if rel==0:## reletive(duration)
            self.endSpin.set_range(1, maxStart)
            self.endSpin.set_value(max(1, end-start))
        elif rel==1:## absolute(end)
            self.endSpin.set_range(start+1, maxStart)
            self.endSpin.set_value(max(start+1, start+end))
    def startSpinChanged(self, spin=None):
        if self.endRelCombo.get_active() == 1:## absolute(end)
            self.endSpin.set_range(self.startSpin.get_value()+1, maxStart)
    def updateWidget(self):
        common.WidgetClass.updateWidget(self)
        self.scaleCombo.set_value(self.event.scale)
        self.startSpin.set_value(self.event.start)
        self.endRelCombo.set_active(0 if self.event.endRel else 1)
        self.endSpin.set_value(self.event.end)
    def updateVars(self):## FIXME
        common.WidgetClass.updateVars(self)
        self.event.scale = self.scaleCombo.get_value()
        self.event.start = self.startSpin.get_value()
        self.event.endRel = (self.endRelCombo.get_active()==0)
        self.event.end = self.endSpin.get_value()
Esempio n. 27
0
	def __init__(self, rule):
		self.rule = rule
		IntSpinButton.__init__(self, 0, 999999)
Esempio n. 28
0
 def __init__(self, rule):
     self.rule = rule
     IntSpinButton.__init__(self, 0, 999999)
Esempio n. 29
0
class CustomizableToolbar(gtk.Toolbar, CustomizableCalObj):
    _name = "toolbar"
    desc = _("Toolbar")
    #signals = CustomizableCalObj.signals + [
    #	("popup-main-menu", [int, int, int]),
    #]
    styleList = (
        ## Gnome"s naming is not exactly the best here
        ## And Gnome"s order of options is also different from Gtk"s enum
        "Icon",  ## "icons", "Icons only"
        "Text",  ## "text", "Text only"
        "Text below Icon",  ## "both", "Text below items"
        "Text beside Icon",  ## "both-horiz", "Text beside items"
    )
    defaultItems = []
    defaultItemsDict = {}

    def __init__(self, funcOwner, vertical=False, onPressContinue=False):
        gtk.Toolbar.__init__(self)
        self.funcOwner = funcOwner
        self.set_orientation(gtk.Orientation.VERTICAL if vertical else gtk.
                             Orientation.HORIZONTAL)
        self.add_events(gdk.EventMask.POINTER_MOTION_MASK)
        self.onPressContinue = onPressContinue
        self.remain = False
        self.lastPressTime = 0
        self.initVars()
        ##
        #print("toolbar state", self.get_state()## STATE_NORMAL)
        #self.set_state(gtk.StateType.ACTIVE)## FIXME
        #self.set_property("border-width", 0)
        #style = self.get_style()
        #style.border_width = 10
        #self.set_style(style)

        # set on setData(), used in getData() to keep compatibility
        self.data = {}

    def optionsWidgetCreate(self):
        from scal3.ui_gtk.mywidgets.multi_spin.integer import IntSpinButton
        if self.optionsWidget:
            return
        ###
        self.optionsWidget = gtk.VBox()
        ##
        hbox = gtk.HBox()
        pack(hbox, gtk.Label(_("Style")))
        self.styleCombo = gtk.ComboBoxText()
        for item in self.styleList:
            self.styleCombo.append_text(_(item))
        pack(hbox, self.styleCombo)
        pack(self.optionsWidget, hbox)
        ##
        hbox = gtk.HBox()
        pack(hbox, gtk.Label(_("Icon Size")))
        self.iconSizeCombo = gtk.ComboBoxText()
        for (i, item) in enumerate(ud.iconSizeList):
            self.iconSizeCombo.append_text(_(item[0]))
        pack(hbox, self.iconSizeCombo)
        pack(self.optionsWidget, hbox)
        self.iconSizeHbox = hbox
        ##
        hbox = gtk.HBox()
        pack(hbox, gtk.Label(_("Buttons Border")))
        self.buttonsBorderSpin = IntSpinButton(0, 99)
        pack(hbox, self.buttonsBorderSpin)
        pack(self.optionsWidget, hbox)
        ##
        self.iconSizeCombo.connect("changed", self.iconSizeComboChanged)
        self.styleCombo.connect("changed", self.styleComboChanged)
        self.buttonsBorderSpin.connect("changed",
                                       self.buttonsBorderSpinChanged)
        #self.styleComboChanged()
        ##
        self.optionsWidget.show_all()

    def getIconSizeName(self):
        return ud.iconSizeList[self.iconSizeCombo.get_active()][0]

    def setIconSizeName(self, size_name):
        self.set_icon_size(ud.iconSizeDict[size_name])
        # gtk.Toolbar.set_icon_size was previously Deprecated
        # but it's not Deprecated now? FIXME

    def setButtonsBorder(self, bb):
        for item in self.items:
            item.set_border_width(bb)

    def iconSizeComboChanged(self, combo=None):
        self.setIconSizeName(self.getIconSizeName())

    def styleComboChanged(self, combo=None):
        style = self.styleCombo.get_active()
        self.set_style(style)
        #self.showHide()## FIXME
        self.iconSizeHbox.set_sensitive(style != 1)

    def buttonsBorderSpinChanged(self, spin=None):
        self.setButtonsBorder(self.buttonsBorderSpin.get_value())

    def moveItemUp(self, i):
        button = self.items[i]
        self.remove(button)
        self.insert(button, i - 1)
        self.items.insert(i - 1, self.items.pop(i))

    #def insertItem(self, item, pos):
    #	CustomizableCalObj.insertItem(self, pos, item)
    #	gtk.Toolbar.insert(self, item, pos)
    #	item.show()

    def appendItem(self, item):
        CustomizableCalObj.appendItem(self, item)
        gtk.Toolbar.insert(self, item, -1)
        if item.enable:
            item.show()

    def getData(self):
        self.data.update({
            "items": self.getItemsData(),
            "iconSize": self.getIconSizeName(),
            "style": self.styleList[self.styleCombo.get_active()],
            "buttonsBorder": self.buttonsBorderSpin.get_value(),
        })
        return self.data

    def setupItemSignals(self, item):
        if item.method:
            if isinstance(item.method, str):
                func = getattr(self.funcOwner, item.method)
            else:
                func = item.method
            if self.onPressContinue:
                child = item.get_child()
                child.connect("button-press-event",
                              lambda obj, ev: self.itemPress(func))
                child.connect("button-release-event", self.itemRelease)
            else:
                item.connect("clicked", func)

    def setData(self, data):
        self.data = data
        for (name, enable) in data["items"]:
            item = self.defaultItemsDict.get(name)
            if item is None:
                print("toolbar item %s does not exist" % name)
                continue
            item.enable = enable
            self.setupItemSignals(item)
            self.appendItem(item)
        ###
        self.optionsWidgetCreate(
        )  # because we update the Customize dialog widgets as well
        ###
        iconSize = data.get("iconSize")
        if iconSize is not None:
            for (i, item) in enumerate(ud.iconSizeList):
                if item[0] == iconSize:
                    self.iconSizeCombo.set_active(i)
                    break
            self.setIconSizeName(iconSize)
        ###
        style = data.get("style", "Icon")
        styleNum = self.styleList.index(style)
        self.styleCombo.set_active(styleNum)
        self.set_style(styleNum)
        ###
        bb = data.get("buttonsBorder", 0)
        self.buttonsBorderSpin.set_value(bb)
        self.setButtonsBorder(bb)
        ###

    def itemPress(self, func):
        if self.remain:
            # print("itemPress: skip: remain=%s" % self.remain)
            return
        if now() - self.lastPressTime < ui.timeout_repeat * 0.01:
            # print("itemPress: skip: now()-self.lastPressTime = %s" % (now()-self.lastPressTime))
            return
        # print("itemPress:", now()-self.lastPressTime, ">=", ui.timeout_repeat * 0.01)
        self.lastPressTime = now()
        self.remain = True
        func()
        timeout_add(ui.timeout_initial, self.itemPressRemain, func)

    def itemPressRemain(self, func):
        if not self.remain:
            return
        if now() - self.lastPressTime < ui.timeout_repeat * 0.001:
            return
        # print("itemPressRemain:", now()-self.lastPressTime, ">=", ui.timeout_repeat * 0.001)
        func()
        timeout_add(ui.timeout_repeat, self.itemPressRemain, func)

    def itemRelease(self, widget, event=None):
        # print("------------------------ itemRelease")
        self.remain = False
Esempio n. 30
0
class CustomizableToolbar(gtk.Toolbar, CustomizableCalObj):
	_name = 'toolbar'
	desc = _('Toolbar')
	#signals = CustomizableCalObj.signals + [
	#	('popup-main-menu', [int, int, int]),
	#]
	styleList = (
		## Gnome's naming is not exactly the best here
		## And Gnome's order of options is also different from Gtk's enum
		'Icon',## 'icons', 'Icons only'
		'Text',## 'text', 'Text only'
		'Text below Icon',## 'both', 'Text below items'
		'Text beside Icon',## 'both-horiz', 'Text beside items'
	)
	defaultItems = []
	defaultItemsDict = {}
	def __init__(self, funcOwner, vertical=False, onPressContinue=False):
		from scal3.ui_gtk.mywidgets.multi_spin.integer import IntSpinButton
		gtk.Toolbar.__init__(self)
		self.funcOwner = funcOwner
		self.set_orientation(gtk.Orientation.VERTICAL if vertical else gtk.Orientation.HORIZONTAL)
		self.add_events(gdk.EventMask.POINTER_MOTION_MASK)
		self.onPressContinue = onPressContinue
		self.remain = False
		self.lastPressTime = 0
		###
		optionsWidget = gtk.VBox()
		##
		hbox = gtk.HBox()
		pack(hbox, gtk.Label(_('Style')))
		self.styleCombo = gtk.ComboBoxText()
		for item in self.styleList:
			self.styleCombo.append_text(_(item))
		pack(hbox, self.styleCombo)
		pack(optionsWidget, hbox)
		##
		hbox = gtk.HBox()
		pack(hbox, gtk.Label(_('Icon Size')))
		self.iconSizeCombo = gtk.ComboBoxText()
		for (i, item) in enumerate(ud.iconSizeList):
			self.iconSizeCombo.append_text(_(item[0]))
		pack(hbox, self.iconSizeCombo)
		pack(optionsWidget, hbox)
		self.iconSizeHbox = hbox
		##
		hbox = gtk.HBox()
		pack(hbox, gtk.Label(_('Buttons Border')))
		self.buttonsBorderSpin = IntSpinButton(0, 99)
		pack(hbox, self.buttonsBorderSpin)
		pack(optionsWidget, hbox)
		##
		self.initVars(optionsWidget=optionsWidget)
		self.iconSizeCombo.connect('changed', self.iconSizeComboChanged)
		self.styleCombo.connect('changed', self.styleComboChanged)
		self.buttonsBorderSpin.connect('changed', self.buttonsBorderSpinChanged)
		#self.styleComboChanged()
		##
		#print('toolbar state', self.get_state()## STATE_NORMAL)
		#self.set_state(gtk.StateType.ACTIVE)## FIXME
		#self.set_property('border-width', 0)
		#style = self.get_style()
		#style.border_width = 10
		#self.set_style(style)
	getIconSizeName = lambda self: ud.iconSizeList[self.iconSizeCombo.get_active()][0]
	setIconSizeName = lambda self, size_name: self.set_icon_size(ud.iconSizeDict[size_name])
	## gtk.Toolbar.set_icon_size was previously Deprecated, but it's not Deprecated now!!
	def setButtonsBorder(self, bb):
		for item in self.items:
			item.set_border_width(bb)
	def iconSizeComboChanged(self, combo=None):
		self.setIconSizeName(self.getIconSizeName())
	def styleComboChanged(self, combo=None):
		style = self.styleCombo.get_active()
		self.set_style(style)
		#self.showHide()## FIXME
		self.iconSizeHbox.set_sensitive(style!=1)
	def buttonsBorderSpinChanged(self, spin=None):
		self.setButtonsBorder(self.buttonsBorderSpin.get_value())
	def moveItemUp(self, i):
		button = self.items[i]
		self.remove(button)
		self.insert(button, i-1)
		self.items.insert(i-1, self.items.pop(i))
	#def insertItem(self, item, pos):
	#	CustomizableCalObj.insertItem(self, pos, item)
	#	gtk.Toolbar.insert(self, item, pos)
	#	item.show()
	def appendItem(self, item):
		CustomizableCalObj.appendItem(self, item)
		gtk.Toolbar.insert(self, item, -1)
		if item.enable:
			item.show()
	getData = lambda self: {
		'items': self.getItemsData(),
		'iconSize': self.getIconSizeName(),
		'style': self.styleList[self.styleCombo.get_active()],
		'buttonsBorder': self.buttonsBorderSpin.get_value(),
	}
	def setupItemSignals(self, item):
		if item.method:
			if isinstance(item.method, str):
				func = getattr(self.funcOwner, item.method)
			else:
				func = item.method
			if self.onPressContinue:
				child = item.get_child()
				child.connect('button-press-event', lambda obj, ev: self.itemPress(func))
				child.connect('button-release-event', self.itemRelease)
			else:
				item.connect('clicked', func)
	def setData(self, data):
		for (name, enable) in data['items']:
			try:
				item = self.defaultItemsDict[name]
			except KeyError:
				myRaise()
			else:
				item.enable = enable
				self.setupItemSignals(item)
				self.appendItem(item)
		###
		iconSize = data['iconSize']
		for (i, item) in enumerate(ud.iconSizeList):
			if item[0]==iconSize:
				self.iconSizeCombo.set_active(i)
		self.setIconSizeName(iconSize)
		###
		styleNum = self.styleList.index(data['style'])
		self.styleCombo.set_active(styleNum)
		self.set_style(styleNum)
		###
		bb = data.get('buttonsBorder', 0)
		self.buttonsBorderSpin.set_value(bb)
		self.setButtonsBorder(bb)
		###

	def itemPress(self, func):
		if self.remain:
			# print("itemPress: skip: remain=%s" % self.remain)
			return
		if now()-self.lastPressTime < ui.timeout_repeat * 0.01:
			# print("itemPress: skip: now()-self.lastPressTime = %s" % (now()-self.lastPressTime))
			return
		# print("itemPress:", now()-self.lastPressTime, ">=", ui.timeout_repeat * 0.01)
		self.lastPressTime = now()
		self.remain = True
		func()
		gobject.timeout_add(ui.timeout_initial, self.itemPressRemain, func)

	def itemPressRemain(self, func):
		if not self.remain:
			return
		if now()-self.lastPressTime < ui.timeout_repeat * 0.001:
			return
		# print("itemPressRemain:", now()-self.lastPressTime, ">=", ui.timeout_repeat * 0.001)
		func()
		gobject.timeout_add(ui.timeout_repeat, self.itemPressRemain, func)

	def itemRelease(self, widget, event=None):
		# print("------------------------ itemRelease")
		self.remain = False
Esempio n. 31
0
class WidgetClass(common.WidgetClass):
	def __init__(self, event):## FIXME
		common.WidgetClass.__init__(self, event)
		######
		sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL)
		######
		hbox = gtk.HBox()
		label = gtk.Label(_("Start"))
		label.set_alignment(0, 0.5)
		sizeGroup.add_widget(label)
		pack(hbox, label)
		self.startDateInput = DateButton()
		pack(hbox, self.startDateInput)
		###
		pack(hbox, gtk.Label(""), 1, 1)
		pack(self, hbox)
		######
		hbox = gtk.HBox()
		label = gtk.Label(_("Repeat Every "))
		label.set_alignment(0, 0.5)
		sizeGroup.add_widget(label)
		pack(hbox, label)
		self.weeksSpin = IntSpinButton(1, 99999)
		pack(hbox, self.weeksSpin)
		pack(hbox, gtk.Label("  " + _(" Weeks")))
		###
		pack(hbox, gtk.Label(""), 1, 1)
		pack(self, hbox)
		######
		hbox = gtk.HBox()
		label = gtk.Label(_("End"))
		label.set_alignment(0, 0.5)
		sizeGroup.add_widget(label)
		pack(hbox, label)
		self.endDateInput = DateButton()
		pack(hbox, self.endDateInput)
		###
		pack(hbox, gtk.Label(""), 1, 1)
		pack(self, hbox)
		#########
		hbox = gtk.HBox()
		label = gtk.Label(_("Time"))
		label.set_alignment(0, 0.5)
		sizeGroup.add_widget(label)
		pack(hbox, label)
		##
		self.dayTimeStartInput = HourMinuteButton()
		self.dayTimeEndInput = HourMinuteButton()
		##
		pack(hbox, self.dayTimeStartInput)
		pack(hbox, gtk.Label(" " + _("to") + " "))
		pack(hbox, self.dayTimeEndInput)
		pack(self, hbox)
		#############
		#self.notificationBox = common.NotificationBox(event)
		#pack(self, self.notificationBox)
		#############
		#self.filesBox = common.FilesBox(self.event)
		#pack(self, self.filesBox)

	def updateWidget(self):## FIXME
		common.WidgetClass.updateWidget(self)
		mode = self.event.mode
		###
		self.startDateInput.set_value(jd_to(self.event.getStartJd(), mode))
		###
		cycleWeeks, ok = self.event["cycleWeeks"]
		if not ok:
			raise RuntimeError("no cycleWeeks rule")
		self.weeksSpin.set_value(cycleWeeks.weeks)
		###
		self.endDateInput.set_value(jd_to(self.event.getEndJd(), mode))
		###
		dayTimeRange, ok = self.event["dayTimeRange"]
		self.dayTimeStartInput.set_value(dayTimeRange.dayTimeStart)
		self.dayTimeEndInput.set_value(dayTimeRange.dayTimeEnd)

	def updateVars(self):## FIXME
		common.WidgetClass.updateVars(self)
		###
		start, ok = self.event["start"]
		if not ok:
			raise RuntimeError("no start rule")
		start.setDate(self.startDateInput.get_value())
		###
		end, ok = self.event["end"]
		if not ok:
			raise RuntimeError("no end rule")
		end.setDate(self.endDateInput.get_value())
		###
		cycleWeeks, ok = self.event["cycleWeeks"]
		if not ok:
			raise RuntimeError("no cycleWeeks rule")
		cycleWeeks.setData(self.weeksSpin.get_value())
		###
		dayTimeRange, ok = self.event["dayTimeRange"]
		if not ok:
			raise RuntimeError("no dayTimeRange rule")
		dayTimeRange.setRange(
			self.dayTimeStartInput.get_value(),
			self.dayTimeEndInput.get_value(),
		)

	def modeComboChanged(self, obj=None):
		# overwrite method from common.WidgetClass
		newMode = self.modeCombo.get_active()
		self.startDateInput.changeMode(self.event.mode, newMode)
		self.endDateInput.changeMode(self.event.mode, newMode)
		self.event.mode = newMode
Esempio n. 32
0
class WidgetClass(common.WidgetClass):
    def __init__(self, event):## FIXME
        common.WidgetClass.__init__(self, event)
        ######
        sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL)
        ######
        hbox = gtk.HBox()
        label = gtk.Label(_('Start'))
        label.set_alignment(0, 0.5)
        sizeGroup.add_widget(label)
        pack(hbox, label)
        self.startDateInput = DateButton()
        pack(hbox, self.startDateInput)
        ##
        pack(self, hbox)
        ######
        hbox = gtk.HBox()
        self.endTypeCombo = gtk.ComboBoxText()
        for item in ('Duration', 'End'):
            self.endTypeCombo.append_text(_(item))
        self.endTypeCombo.connect('changed', self.endTypeComboChanged)
        sizeGroup.add_widget(self.endTypeCombo)
        pack(hbox, self.endTypeCombo)
        ####
        self.durationBox = gtk.HBox()
        self.durationSpin = IntSpinButton(1, 999)
        pack(self.durationBox, self.durationSpin)
        pack(self.durationBox, gtk.Label(_(' days')))
        pack(hbox, self.durationBox)
        ####
        self.endDateInput = DateButton()
        pack(hbox, self.endDateInput)
        ####
        pack(hbox, gtk.Label(''), 1, 1)
        pack(self, hbox)
        #############
        self.notificationBox = common.NotificationBox(event)
        pack(self, self.notificationBox)
        #############
        #self.filesBox = common.FilesBox(self.event)
        #pack(self, self.filesBox)
    def endTypeComboChanged(self, combo=None):
        active = self.endTypeCombo.get_active()
        if active==0:## duration
            self.durationBox.show()
            self.endDateInput.hide()
        elif active==1:## end date
            self.durationBox.hide()
            self.endDateInput.show()
        else:
            raise RuntimeError
    def updateWidget(self):## FIXME
        common.WidgetClass.updateWidget(self)
        mode = self.event.mode
        ###
        startJd = self.event.getJd()
        self.startDateInput.set_value(jd_to(startJd, mode))
        ###
        endType, endValue = self.event.getEnd()
        if endType=='duration':
            self.endTypeCombo.set_active(0)
            self.durationSpin.set_value(endValue)
            self.endDateInput.set_value(jd_to(self.event.getEndJd(), mode))## FIXME
        elif endType=='date':
            self.endTypeCombo.set_active(1)
            self.endDateInput.set_value(endValue)
        else:
            raise RuntimeError
        self.endTypeComboChanged()
    def updateVars(self):## FIXME
        common.WidgetClass.updateVars(self)
        self.event.setStartDate(self.startDateInput.get_value())
        ###
        active = self.endTypeCombo.get_active()
        if active==0:
            self.event.setEnd('duration', self.durationSpin.get_value())
        elif active==1:
            self.event.setEnd(
                'date',
                self.endDateInput.get_value(),
            )
    def modeComboChanged(self, obj=None):## overwrite method from common.WidgetClass
        newMode = self.modeCombo.get_active()
        self.startDateInput.changeMode(self.event.mode, newMode)
        self.endDateInput.changeMode(self.event.mode, newMode)
        self.event.mode = newMode
Esempio n. 33
0
 def optionsWidgetCreate(self):
     from scal3.ui_gtk.mywidgets.multi_spin.integer import IntSpinButton
     from scal3.ui_gtk.pref_utils import LiveLabelSpinPrefItem, SpinPrefItem, \
      LiveCheckColorPrefItem, CheckPrefItem, ColorPrefItem
     if self.optionsWidget:
         return
     self.optionsWidget = gtk.VBox()
     ####
     prefItem = LiveLabelSpinPrefItem(
         _("Height"),
         SpinPrefItem(ui, "mcalHeight", 1, 9999, digits=0),
         self.heightUpdate,
     )
     pack(self.optionsWidget, prefItem.getWidget())
     ####
     hbox = gtk.HBox(spacing=3)
     ##
     pack(hbox, gtk.Label(_("Left Margin")))
     spin = IntSpinButton(0, 99)
     spin.set_value(ui.mcalLeftMargin)
     spin.connect("changed", self.leftMarginSpinChanged)
     pack(hbox, spin)
     ##
     pack(hbox, gtk.Label(_("Top")))
     spin = IntSpinButton(0, 99)
     spin.set_value(ui.mcalTopMargin)
     spin.connect("changed", self.topMarginSpinChanged)
     pack(hbox, spin)
     ##
     pack(hbox, gtk.Label(""), 1, 1)
     pack(self.optionsWidget, hbox)
     ########
     prefItem = LiveCheckColorPrefItem(
         CheckPrefItem(ui, "mcalGrid", _("Grid")),
         ColorPrefItem(ui, "mcalGridColor", True),
         self.queue_draw,
     )
     hbox = prefItem.getWidget()
     pack(self.optionsWidget, hbox)
     ########
     self.typeParamsVbox = gtk.VBox()
     pack(self.optionsWidget, self.typeParamsVbox)
     self.optionsWidget.show_all()
     self.updateTypeParamsWidget()  ## FIXME
Esempio n. 34
0
def getIntWidget():
	from scal3.ui_gtk.mywidgets.multi_spin.integer import IntSpinButton
	btn = IntSpinButton(0, 99)
	btn.set_value(12)
	btn.set_editable(True)
	return btn
Esempio n. 35
0
class WidgetClass(common.WidgetClass):
    def __init__(self, event):  ## FIXME
        common.WidgetClass.__init__(self, event)
        ######
        sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL)
        ######
        hbox = gtk.HBox()
        label = gtk.Label(_('Start'))
        label.set_alignment(0, 0.5)
        sizeGroup.add_widget(label)
        pack(hbox, label)
        self.startDateInput = DateButton()
        pack(hbox, self.startDateInput)
        ###
        pack(hbox, gtk.Label(''), 1, 1)
        pack(self, hbox)
        ######
        hbox = gtk.HBox()
        label = gtk.Label(_('Repeat Every '))
        label.set_alignment(0, 0.5)
        sizeGroup.add_widget(label)
        pack(hbox, label)
        self.weeksSpin = IntSpinButton(1, 99999)
        pack(hbox, self.weeksSpin)
        pack(hbox, gtk.Label('  ' + _(' Weeks')))
        ###
        pack(hbox, gtk.Label(''), 1, 1)
        pack(self, hbox)
        ######
        hbox = gtk.HBox()
        label = gtk.Label(_('End'))
        label.set_alignment(0, 0.5)
        sizeGroup.add_widget(label)
        pack(hbox, label)
        self.endDateInput = DateButton()
        pack(hbox, self.endDateInput)
        ###
        pack(hbox, gtk.Label(''), 1, 1)
        pack(self, hbox)
        #########
        hbox = gtk.HBox()
        label = gtk.Label(_('Time'))
        label.set_alignment(0, 0.5)
        sizeGroup.add_widget(label)
        pack(hbox, label)
        ##
        self.dayTimeStartInput = HourMinuteButton()
        self.dayTimeEndInput = HourMinuteButton()
        ##
        pack(hbox, self.dayTimeStartInput)
        pack(hbox, gtk.Label(' ' + _('to') + ' '))
        pack(hbox, self.dayTimeEndInput)
        pack(self, hbox)
        #############
        #self.notificationBox = common.NotificationBox(event)
        #pack(self, self.notificationBox)
        #############
        #self.filesBox = common.FilesBox(self.event)
        #pack(self, self.filesBox)
    def updateWidget(self):  ## FIXME
        common.WidgetClass.updateWidget(self)
        mode = self.event.mode
        ###
        self.startDateInput.set_value(jd_to(self.event.getStartJd(), mode))
        self.weeksSpin.set_value(self.event['cycleWeeks'].weeks)
        self.endDateInput.set_value(jd_to(self.event.getEndJd(), mode))
        ###
        timeRangeRule = self.event['dayTimeRange']
        self.dayTimeStartInput.set_value(timeRangeRule.dayTimeStart)
        self.dayTimeEndInput.set_value(timeRangeRule.dayTimeEnd)

    def updateVars(self):  ## FIXME
        common.WidgetClass.updateVars(self)
        self.event['start'].setDate(self.startDateInput.get_value())
        self.event['end'].setDate(self.endDateInput.get_value())
        self.event['cycleWeeks'].setData(self.weeksSpin.get_value())
        ###
        self.event['dayTimeRange'].setRange(
            self.dayTimeStartInput.get_value(),
            self.dayTimeEndInput.get_value(),
        )

    def modeComboChanged(self,
                         obj=None
                         ):  ## overwrite method from common.WidgetClass
        newMode = self.modeCombo.get_active()
        self.startDateInput.changeMode(self.event.mode, newMode)
        self.endDateInput.changeMode(self.event.mode, newMode)
        self.event.mode = newMode
Esempio n. 36
0
class CustomizableToolbar(gtk.Toolbar, CustomizableCalObj):
    _name = 'toolbar'
    desc = _('Toolbar')
    #signals = CustomizableCalObj.signals + [
    #    ('popup-main-menu', [int, int, int]),
    #]
    styleList = (
        ## Gnome's naming is not exactly the best here
        ## And Gnome's order of options is also different from Gtk's enum
        'Icon',## 'icons', 'Icons only'
        'Text',## 'text', 'Text only'
        'Text below Icon',## 'both', 'Text below items'
        'Text beside Icon',## 'both-horiz', 'Text beside items'
    )
    defaultItems = []
    defaultItemsDict = {}
    def __init__(self, funcOwner, vertical=False, onPressContinue=False):
        from scal3.ui_gtk.mywidgets.multi_spin.integer import IntSpinButton
        gtk.Toolbar.__init__(self)
        self.funcOwner = funcOwner
        self.set_orientation(gtk.Orientation.VERTICAL if vertical else gtk.Orientation.HORIZONTAL)
        self.add_events(gdk.EventMask.POINTER_MOTION_MASK)
        self.onPressContinue = onPressContinue
        self.remain = False
        self.lastPressTime = 0
        ###
        optionsWidget = gtk.VBox()
        ##
        hbox = gtk.HBox()
        pack(hbox, gtk.Label(_('Style')))
        self.styleCombo = gtk.ComboBoxText()
        for item in self.styleList:
            self.styleCombo.append_text(_(item))
        pack(hbox, self.styleCombo)
        pack(optionsWidget, hbox)
        ##
        hbox = gtk.HBox()
        pack(hbox, gtk.Label(_('Icon Size')))
        self.iconSizeCombo = gtk.ComboBoxText()
        for (i, item) in enumerate(ud.iconSizeList):
            self.iconSizeCombo.append_text(_(item[0]))
        pack(hbox, self.iconSizeCombo)
        pack(optionsWidget, hbox)
        self.iconSizeHbox = hbox
        ##
        hbox = gtk.HBox()
        pack(hbox, gtk.Label(_('Buttons Border')))
        self.buttonsBorderSpin = IntSpinButton(0, 99)
        pack(hbox, self.buttonsBorderSpin)
        pack(optionsWidget, hbox)
        ##
        self.initVars(optionsWidget=optionsWidget)
        self.iconSizeCombo.connect('changed', self.iconSizeComboChanged)
        self.styleCombo.connect('changed', self.styleComboChanged)
        self.buttonsBorderSpin.connect('changed', self.buttonsBorderSpinChanged)
        #self.styleComboChanged()
        ##
        #print('toolbar state', self.get_state()## STATE_NORMAL)
        #self.set_state(gtk.StateType.ACTIVE)## FIXME
        #self.set_property('border-width', 0)
        #style = self.get_style()
        #style.border_width = 10
        #self.set_style(style)
    getIconSizeName = lambda self: ud.iconSizeList[self.iconSizeCombo.get_active()][0]
    setIconSizeName = lambda self, size_name: self.set_icon_size(ud.iconSizeDict[size_name])
    ## gtk.Toolbar.set_icon_size was previously Deprecated, but it's not Deprecated now!!
    def setButtonsBorder(self, bb):
        for item in self.items:
            item.set_border_width(bb)
    def iconSizeComboChanged(self, combo=None):
        self.setIconSizeName(self.getIconSizeName())
    def styleComboChanged(self, combo=None):
        style = self.styleCombo.get_active()
        self.set_style(style)
        #self.showHide()## FIXME
        self.iconSizeHbox.set_sensitive(style!=1)
    def buttonsBorderSpinChanged(self, spin=None):
        self.setButtonsBorder(self.buttonsBorderSpin.get_value())
    def moveItemUp(self, i):
        button = self.items[i]
        self.remove(button)
        self.insert(button, i-1)
        self.items.insert(i-1, self.items.pop(i))
    #def insertItem(self, item, pos):
    #    CustomizableCalObj.insertItem(self, pos, item)
    #    gtk.Toolbar.insert(self, item, pos)
    #    item.show()
    def appendItem(self, item):
        CustomizableCalObj.appendItem(self, item)
        gtk.Toolbar.insert(self, item, -1)
        if item.enable:
            item.show()
    getData = lambda self: {
        'items': self.getItemsData(),
        'iconSize': self.getIconSizeName(),
        'style': self.styleList[self.styleCombo.get_active()],
        'buttonsBorder': self.buttonsBorderSpin.get_value(),
    }
    def setupItemSignals(self, item):
        if item.method:
            if isinstance(item.method, str):
                func = getattr(self.funcOwner, item.method)
            else:
                func = item.method
            if self.onPressContinue:
                child = item.get_child()
                child.connect('button-press-event', lambda obj, ev: self.itemPress(func))
                child.connect('button-release-event', self.itemRelease)
            else:
                item.connect('clicked', func)
    def setData(self, data):
        for (name, enable) in data['items']:
            try:
                item = self.defaultItemsDict[name]
            except KeyError:
                myRaise()
            else:
                item.enable = enable
                self.setupItemSignals(item)
                self.appendItem(item)
        ###
        iconSize = data['iconSize']
        for (i, item) in enumerate(ud.iconSizeList):
            if item[0]==iconSize:
                self.iconSizeCombo.set_active(i)
        self.setIconSizeName(iconSize)
        ###
        styleNum = self.styleList.index(data['style'])
        self.styleCombo.set_active(styleNum)
        self.set_style(styleNum)
        ###
        bb = data.get('buttonsBorder', 0)
        self.buttonsBorderSpin.set_value(bb)
        self.setButtonsBorder(bb)
        ###

    def itemPress(self, func):
        if self.remain:
            # print("itemPress: skip: remain=%s" % self.remain)
            return
        if now()-self.lastPressTime < ui.timeout_repeat * 0.01:
            # print("itemPress: skip: now()-self.lastPressTime = %s" % (now()-self.lastPressTime))
            return
        # print("itemPress:", now()-self.lastPressTime, ">=", ui.timeout_repeat * 0.01)
        self.lastPressTime = now()
        self.remain = True
        func()
        gobject.timeout_add(ui.timeout_initial, self.itemPressRemain, func)

    def itemPressRemain(self, func):
        if not self.remain:
            return
        if now()-self.lastPressTime < ui.timeout_repeat * 0.001:
            return
        # print("itemPressRemain:", now()-self.lastPressTime, ">=", ui.timeout_repeat * 0.001)
        func()
        gobject.timeout_add(ui.timeout_repeat, self.itemPressRemain, func)

    def itemRelease(self, widget, event=None):
        # print("------------------------ itemRelease")
        self.remain = False
Esempio n. 37
0
 def optionsWidgetCreate(self):
     from scal3.ui_gtk.mywidgets.multi_spin.integer import IntSpinButton
     from scal3.ui_gtk.pref_utils import CheckPrefItem, ColorPrefItem
     if self.optionsWidget:
         return
     self.optionsWidget = gtk.VBox()
     ####
     hbox = gtk.HBox()
     spin = IntSpinButton(1, 9999)
     spin.set_value(ui.mcalHeight)
     spin.connect('changed', self.heightSpinChanged)
     pack(hbox, gtk.Label(_('Height')))
     pack(hbox, spin)
     pack(self.optionsWidget, hbox)
     ####
     hbox = gtk.HBox(spacing=3)
     ##
     pack(hbox, gtk.Label(_('Left Margin')))
     spin = IntSpinButton(0, 99)
     spin.set_value(ui.mcalLeftMargin)
     spin.connect('changed', self.leftMarginSpinChanged)
     pack(hbox, spin)
     ##
     pack(hbox, gtk.Label(_('Top')))
     spin = IntSpinButton(0, 99)
     spin.set_value(ui.mcalTopMargin)
     spin.connect('changed', self.topMarginSpinChanged)
     pack(hbox, spin)
     ##
     pack(hbox, gtk.Label(''), 1, 1)
     pack(self.optionsWidget, hbox)
     ########
     hbox = gtk.HBox(spacing=3)
     ####
     item = CheckPrefItem(ui, 'mcalGrid', _('Grid'))
     item.updateWidget()
     gridCheck = item._widget
     pack(hbox, gridCheck)
     gridCheck.item = item
     ####
     colorItem = ColorPrefItem(ui, 'mcalGridColor', True)
     colorItem.updateWidget()
     pack(hbox, colorItem._widget)
     gridCheck.colorb = colorItem._widget
     gridCheck.connect('clicked', self.gridCheckClicked)
     colorItem._widget.item = colorItem
     colorItem._widget.connect('color-set', self.gridColorChanged)
     colorItem._widget.set_sensitive(ui.mcalGrid)
     ####
     pack(self.optionsWidget, hbox)
     ########
     frame = gtk.Frame()
     frame.set_label(_('Calendars'))
     self.typeParamsVbox = gtk.VBox()
     frame.add(self.typeParamsVbox)
     frame.show_all()
     pack(self.optionsWidget, frame)
     self.optionsWidget.show_all()
     self.updateTypeParamsWidget()## FIXME
Esempio n. 38
0
class WidgetClass(common.WidgetClass):
    def __init__(self, event):## FIXME
        common.WidgetClass.__init__(self, event)
        ######
        sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL)
        ######
        hbox = gtk.HBox()
        label = gtk.Label(_('Start'))
        label.set_alignment(0, 0.5)
        sizeGroup.add_widget(label)
        pack(hbox, label)
        self.startDateInput = DateButton()
        pack(hbox, self.startDateInput)
        ###
        pack(hbox, gtk.Label(''), 1, 1)
        pack(self, hbox)
        ######
        hbox = gtk.HBox()
        label = gtk.Label(_('Repeat Every '))
        label.set_alignment(0, 0.5)
        sizeGroup.add_widget(label)
        pack(hbox, label)
        self.weeksSpin = IntSpinButton(1, 99999)
        pack(hbox, self.weeksSpin)
        pack(hbox, gtk.Label('  '+_(' Weeks')))
        ###
        pack(hbox, gtk.Label(''), 1, 1)
        pack(self, hbox)
        ######
        hbox = gtk.HBox()
        label = gtk.Label(_('End'))
        label.set_alignment(0, 0.5)
        sizeGroup.add_widget(label)
        pack(hbox, label)
        self.endDateInput = DateButton()
        pack(hbox, self.endDateInput)
        ###
        pack(hbox, gtk.Label(''), 1, 1)
        pack(self, hbox)
        #########
        hbox = gtk.HBox()
        label = gtk.Label(_('Time'))
        label.set_alignment(0, 0.5)
        sizeGroup.add_widget(label)
        pack(hbox, label)
        ##
        self.dayTimeStartInput = HourMinuteButton()
        self.dayTimeEndInput = HourMinuteButton()
        ##
        pack(hbox, self.dayTimeStartInput)
        pack(hbox, gtk.Label(' ' + _('to') + ' '))
        pack(hbox, self.dayTimeEndInput)
        pack(self, hbox)
        #############
        #self.notificationBox = common.NotificationBox(event)
        #pack(self, self.notificationBox)
        #############
        #self.filesBox = common.FilesBox(self.event)
        #pack(self, self.filesBox)
    def updateWidget(self):## FIXME
        common.WidgetClass.updateWidget(self)
        mode = self.event.mode
        ###
        self.startDateInput.set_value(jd_to(self.event.getStartJd(), mode))
        self.weeksSpin.set_value(self.event['cycleWeeks'].weeks)
        self.endDateInput.set_value(jd_to(self.event.getEndJd(), mode))
        ###
        timeRangeRule = self.event['dayTimeRange']
        self.dayTimeStartInput.set_value(timeRangeRule.dayTimeStart)
        self.dayTimeEndInput.set_value(timeRangeRule.dayTimeEnd)
    def updateVars(self):## FIXME
        common.WidgetClass.updateVars(self)
        self.event['start'].setDate(self.startDateInput.get_value())
        self.event['end'].setDate(self.endDateInput.get_value())
        self.event['cycleWeeks'].setData(self.weeksSpin.get_value())
        ###
        self.event['dayTimeRange'].setRange(
            self.dayTimeStartInput.get_value(),
            self.dayTimeEndInput.get_value(),
        )
    def modeComboChanged(self, obj=None):## overwrite method from common.WidgetClass
        newMode = self.modeCombo.get_active()
        self.startDateInput.changeMode(self.event.mode, newMode)
        self.endDateInput.changeMode(self.event.mode, newMode)
        self.event.mode = newMode
Esempio n. 39
0
 def __init__(self, group):
     from scal3.ui_gtk.mywidgets.cal_type_combo import CalTypeCombo
     gtk.VBox.__init__(self)
     self.group = group
     ########
     self.sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL)
     #####
     hbox = gtk.HBox()
     label = gtk.Label(_('Title'))
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     self.titleEntry = gtk.Entry()
     pack(hbox, self.titleEntry, 1, 1)
     pack(self, hbox)
     #####
     hbox = gtk.HBox()
     label = gtk.Label(_('Color'))
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     self.colorButton = MyColorButton()
     self.colorButton.set_use_alpha(True) ## FIXME
     pack(hbox, self.colorButton)
     pack(self, hbox)
     #####
     hbox = gtk.HBox()
     label = gtk.Label(_('Default Icon'))## FIXME
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     self.iconSelect = IconSelectButton()
     pack(hbox, self.iconSelect)
     pack(self, hbox)
     #####
     hbox = gtk.HBox()
     label = gtk.Label(_('Default Calendar Type'))
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     combo = CalTypeCombo()
     pack(hbox, combo)
     pack(hbox, gtk.Label(''), 1, 1)
     self.modeCombo = combo
     pack(self, hbox)
     #####
     hbox = gtk.HBox()
     label = gtk.Label(_('Show in Calendar'))
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     self.showInDCalCheck = gtk.CheckButton(_('Day'))
     self.showInWCalCheck = gtk.CheckButton(_('Week'))
     self.showInMCalCheck = gtk.CheckButton(_('Month'))
     pack(hbox, self.showInDCalCheck)
     pack(hbox, gtk.Label(''), 1, 1)
     pack(hbox, self.showInWCalCheck)
     pack(hbox, gtk.Label(''), 1, 1)
     pack(hbox, self.showInMCalCheck)
     pack(hbox, gtk.Label(''), 1, 1)
     pack(self, hbox)
     #####
     hbox = gtk.HBox()
     label = gtk.Label(_('Show in'))
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     self.showInTimeLineCheck = gtk.CheckButton(_('Time Line'))
     self.showInStatusIconCheck = gtk.CheckButton(_('Status Icon'))
     pack(hbox, self.showInTimeLineCheck)
     pack(hbox, gtk.Label(''), 1, 1)
     pack(hbox, self.showInStatusIconCheck)
     pack(hbox, gtk.Label(''), 1, 1)
     pack(self, hbox)
     #####
     hbox = gtk.HBox()
     label = gtk.Label(_('Event Cache Size'))
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     self.cacheSizeSpin = IntSpinButton(0, 9999)
     pack(hbox, self.cacheSizeSpin)
     pack(self, hbox)
     #####
     hbox = gtk.HBox()
     label = gtk.Label(_('Event Text Seperator'))
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     self.sepInput = TextFrame()
     pack(hbox, self.sepInput, 1, 1)
     pack(self, hbox)
     set_tooltip(hbox, _('Using to seperate Summary and Description when displaying event'))
     #####
     #hbox = gtk.HBox()
     #label = gtk.Label(_('Show Full Event Description'))
     #label.set_alignment(0, 0.5)
     #pack(hbox, label)
     #self.sizeGroup.add_widget(label)
     #self.showFullEventDescCheck = gtk.CheckButton('')
     #pack(hbox, self.showFullEventDescCheck, 1, 1)
     #pack(self, hbox)
     ###
     self.modeCombo.connect('changed', self.modeComboChanged)## right place? before updateWidget? FIXME
Esempio n. 40
0
class WidgetClass(common.WidgetClass):
    def __init__(self, event):  ## FIXME
        common.WidgetClass.__init__(self, event)
        ######
        sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL)
        ######
        hbox = gtk.HBox()
        label = gtk.Label(_('Start'))
        label.set_alignment(0, 0.5)
        sizeGroup.add_widget(label)
        pack(hbox, label)
        self.startDateInput = DateButton()
        pack(hbox, self.startDateInput)
        ##
        pack(self, hbox)
        ######
        hbox = gtk.HBox()
        self.endTypeCombo = gtk.ComboBoxText()
        for item in ('Duration', 'End'):
            self.endTypeCombo.append_text(_(item))
        self.endTypeCombo.connect('changed', self.endTypeComboChanged)
        sizeGroup.add_widget(self.endTypeCombo)
        pack(hbox, self.endTypeCombo)
        ####
        self.durationBox = gtk.HBox()
        self.durationSpin = IntSpinButton(1, 999)
        pack(self.durationBox, self.durationSpin)
        pack(self.durationBox, gtk.Label(_(' days')))
        pack(hbox, self.durationBox)
        ####
        self.endDateInput = DateButton()
        pack(hbox, self.endDateInput)
        ####
        pack(hbox, gtk.Label(''), 1, 1)
        pack(self, hbox)
        #############
        self.notificationBox = common.NotificationBox(event)
        pack(self, self.notificationBox)
        #############
        #self.filesBox = common.FilesBox(self.event)
        #pack(self, self.filesBox)
    def endTypeComboChanged(self, combo=None):
        active = self.endTypeCombo.get_active()
        if active == 0:  ## duration
            self.durationBox.show()
            self.endDateInput.hide()
        elif active == 1:  ## end date
            self.durationBox.hide()
            self.endDateInput.show()
        else:
            raise RuntimeError

    def updateWidget(self):  ## FIXME
        common.WidgetClass.updateWidget(self)
        mode = self.event.mode
        ###
        startJd = self.event.getJd()
        self.startDateInput.set_value(jd_to(startJd, mode))
        ###
        endType, endValue = self.event.getEnd()
        if endType == 'duration':
            self.endTypeCombo.set_active(0)
            self.durationSpin.set_value(endValue)
            self.endDateInput.set_value(jd_to(self.event.getEndJd(),
                                              mode))  ## FIXME
        elif endType == 'date':
            self.endTypeCombo.set_active(1)
            self.endDateInput.set_value(endValue)
        else:
            raise RuntimeError
        self.endTypeComboChanged()

    def updateVars(self):  ## FIXME
        common.WidgetClass.updateVars(self)
        self.event.setStartDate(self.startDateInput.get_value())
        ###
        active = self.endTypeCombo.get_active()
        if active == 0:
            self.event.setEnd('duration', self.durationSpin.get_value())
        elif active == 1:
            self.event.setEnd(
                'date',
                self.endDateInput.get_value(),
            )

    def modeComboChanged(self,
                         obj=None
                         ):  ## overwrite method from common.WidgetClass
        newMode = self.modeCombo.get_active()
        self.startDateInput.changeMode(self.event.mode, newMode)
        self.endDateInput.changeMode(self.event.mode, newMode)
        self.event.mode = newMode
Esempio n. 41
0
	def __init__(self, group):
		from scal3.ui_gtk.mywidgets.cal_type_combo import CalTypeCombo
		from scal3.ui_gtk.mywidgets.tz_combo import TimeZoneComboBoxEntry
		gtk.VBox.__init__(self)
		self.group = group
		########
		self.sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL)
		#####
		hbox = gtk.HBox()
		label = gtk.Label(_("Title"))
		label.set_alignment(0, 0.5)
		pack(hbox, label)
		self.sizeGroup.add_widget(label)
		self.titleEntry = gtk.Entry()
		pack(hbox, self.titleEntry, 1, 1)
		pack(self, hbox)
		#####
		hbox = gtk.HBox()
		label = gtk.Label(_("Color"))
		label.set_alignment(0, 0.5)
		pack(hbox, label)
		self.sizeGroup.add_widget(label)
		self.colorButton = MyColorButton()
		self.colorButton.set_use_alpha(True) ## FIXME
		pack(hbox, self.colorButton)
		pack(self, hbox)
		#####
		hbox = gtk.HBox()
		label = gtk.Label(_("Default Icon"))## FIXME
		label.set_alignment(0, 0.5)
		pack(hbox, label)
		self.sizeGroup.add_widget(label)
		self.iconSelect = IconSelectButton()
		pack(hbox, self.iconSelect)
		pack(self, hbox)
		#####
		hbox = gtk.HBox()
		label = gtk.Label(_("Default Calendar Type"))
		label.set_alignment(0, 0.5)
		pack(hbox, label)
		self.sizeGroup.add_widget(label)
		combo = CalTypeCombo()
		pack(hbox, combo)
		pack(hbox, gtk.Label(""), 1, 1)
		self.modeCombo = combo
		pack(self, hbox)
		#####
		hbox = gtk.HBox()
		self.tzCheck = gtk.CheckButton(_("Default Time Zone"))
		pack(hbox, self.tzCheck)
		self.sizeGroup.add_widget(self.tzCheck)
		combo = TimeZoneComboBoxEntry()
		pack(hbox, combo)
		pack(hbox, gtk.Label(""), 1, 1)
		self.tzCombo = combo
		pack(self, hbox)
		self.tzCheck.connect(
			"clicked",
			lambda check: self.tzCombo.set_sensitive(check.get_active()),
		)
		#####
		hbox = gtk.HBox()
		label = gtk.Label(_("Show in Calendar"))
		label.set_alignment(0, 0.5)
		pack(hbox, label)
		self.sizeGroup.add_widget(label)
		self.showInDCalCheck = gtk.CheckButton(_("Day"))
		self.showInWCalCheck = gtk.CheckButton(_("Week"))
		self.showInMCalCheck = gtk.CheckButton(_("Month"))
		pack(hbox, self.showInDCalCheck)
		pack(hbox, gtk.Label(""), 1, 1)
		pack(hbox, self.showInWCalCheck)
		pack(hbox, gtk.Label(""), 1, 1)
		pack(hbox, self.showInMCalCheck)
		pack(hbox, gtk.Label(""), 1, 1)
		pack(self, hbox)
		#####
		hbox = gtk.HBox()
		label = gtk.Label(_("Show in"))
		label.set_alignment(0, 0.5)
		pack(hbox, label)
		self.sizeGroup.add_widget(label)
		self.showInTimeLineCheck = gtk.CheckButton(_("Time Line"))
		self.showInStatusIconCheck = gtk.CheckButton(_("Status Icon"))
		pack(hbox, self.showInTimeLineCheck)
		pack(hbox, gtk.Label(""), 1, 1)
		pack(hbox, self.showInStatusIconCheck)
		pack(hbox, gtk.Label(""), 1, 1)
		pack(self, hbox)
		#####
		hbox = gtk.HBox()
		label = gtk.Label(_("Event Cache Size"))
		label.set_alignment(0, 0.5)
		pack(hbox, label)
		self.sizeGroup.add_widget(label)
		self.cacheSizeSpin = IntSpinButton(0, 9999)
		pack(hbox, self.cacheSizeSpin)
		pack(self, hbox)
		#####
		hbox = gtk.HBox()
		label = gtk.Label(_("Event Text Seperator"))
		label.set_alignment(0, 0.5)
		pack(hbox, label)
		self.sizeGroup.add_widget(label)
		self.sepInput = TextFrame()
		pack(hbox, self.sepInput, 1, 1)
		pack(self, hbox)
		set_tooltip(hbox, _(
			"Using to seperate Summary and Description when displaying event"
		))
		#####
		#hbox = gtk.HBox()
		#label = gtk.Label(_("Show Full Event Description"))
		#label.set_alignment(0, 0.5)
		#pack(hbox, label)
		#self.sizeGroup.add_widget(label)
		#self.showFullEventDescCheck = gtk.CheckButton("")
		#pack(hbox, self.showFullEventDescCheck, 1, 1)
		#pack(self, hbox)
		###
		self.modeCombo.connect(
			"changed",
			self.modeComboChanged,
		)  # right place? before updateWidget? FIXME
Esempio n. 42
0
 def __init__(self, group):
     from scal3.ui_gtk.mywidgets.cal_type_combo import CalTypeCombo
     from scal3.ui_gtk.mywidgets.tz_combo import TimeZoneComboBoxEntry
     gtk.VBox.__init__(self)
     self.group = group
     ########
     self.sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL)
     #####
     hbox = gtk.HBox()
     label = gtk.Label(_("Title"))
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     self.titleEntry = gtk.Entry()
     pack(hbox, self.titleEntry, 1, 1)
     pack(self, hbox)
     #####
     hbox = gtk.HBox()
     label = gtk.Label(_("Color"))
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     self.colorButton = MyColorButton()
     self.colorButton.set_use_alpha(True)  ## FIXME
     pack(hbox, self.colorButton)
     pack(self, hbox)
     #####
     hbox = gtk.HBox()
     label = gtk.Label(_("Default Icon"))  ## FIXME
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     self.iconSelect = IconSelectButton()
     pack(hbox, self.iconSelect)
     pack(self, hbox)
     #####
     hbox = gtk.HBox()
     label = gtk.Label(_("Default Calendar Type"))
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     combo = CalTypeCombo()
     pack(hbox, combo)
     pack(hbox, gtk.Label(""), 1, 1)
     self.modeCombo = combo
     pack(self, hbox)
     #####
     hbox = gtk.HBox()
     self.tzCheck = gtk.CheckButton(_("Default Time Zone"))
     pack(hbox, self.tzCheck)
     self.sizeGroup.add_widget(self.tzCheck)
     combo = TimeZoneComboBoxEntry()
     pack(hbox, combo)
     pack(hbox, gtk.Label(""), 1, 1)
     self.tzCombo = combo
     pack(self, hbox)
     self.tzCheck.connect(
         "clicked",
         lambda check: self.tzCombo.set_sensitive(check.get_active()),
     )
     #####
     hbox = gtk.HBox()
     label = gtk.Label(_("Show in Calendar"))
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     self.showInDCalCheck = gtk.CheckButton(_("Day"))
     self.showInWCalCheck = gtk.CheckButton(_("Week"))
     self.showInMCalCheck = gtk.CheckButton(_("Month"))
     pack(hbox, self.showInDCalCheck)
     pack(hbox, gtk.Label(""), 1, 1)
     pack(hbox, self.showInWCalCheck)
     pack(hbox, gtk.Label(""), 1, 1)
     pack(hbox, self.showInMCalCheck)
     pack(hbox, gtk.Label(""), 1, 1)
     pack(self, hbox)
     #####
     hbox = gtk.HBox()
     label = gtk.Label(_("Show in"))
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     self.showInTimeLineCheck = gtk.CheckButton(_("Time Line"))
     self.showInStatusIconCheck = gtk.CheckButton(_("Status Icon"))
     pack(hbox, self.showInTimeLineCheck)
     pack(hbox, gtk.Label(""), 1, 1)
     pack(hbox, self.showInStatusIconCheck)
     pack(hbox, gtk.Label(""), 1, 1)
     pack(self, hbox)
     #####
     hbox = gtk.HBox()
     label = gtk.Label(_("Event Cache Size"))
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     self.cacheSizeSpin = IntSpinButton(0, 9999)
     pack(hbox, self.cacheSizeSpin)
     pack(self, hbox)
     #####
     hbox = gtk.HBox()
     label = gtk.Label(label=_("Event Text Separator"))
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     self.sepInput = TextFrame()
     pack(hbox, self.sepInput, 1, 1)
     pack(self, hbox)
     set_tooltip(
         hbox,
         _("Using to seperate Summary and Description when displaying event"
           ))
     #####
     #hbox = gtk.HBox()
     #label = gtk.Label(_("Show Full Event Description"))
     #label.set_alignment(0, 0.5)
     #pack(hbox, label)
     #self.sizeGroup.add_widget(label)
     #self.showFullEventDescCheck = gtk.CheckButton("")
     #pack(hbox, self.showFullEventDescCheck, 1, 1)
     #pack(self, hbox)
     ###
     self.modeCombo.connect(
         "changed",
         self.modeComboChanged,
     )  # right place? before updateWidget? FIXME
Esempio n. 43
0
 def optionsWidgetCreate(self):
     from scal3.ui_gtk.mywidgets.multi_spin.integer import IntSpinButton
     from scal3.ui_gtk.pref_utils import CheckPrefItem, ColorPrefItem
     if self.optionsWidget:
         return
     self.optionsWidget = gtk.VBox()
     ####
     hbox = gtk.HBox()
     spin = IntSpinButton(1, 9999)
     spin.set_value(ui.mcalHeight)
     spin.connect('changed', self.heightSpinChanged)
     pack(hbox, gtk.Label(_('Height')))
     pack(hbox, spin)
     pack(self.optionsWidget, hbox)
     ####
     hbox = gtk.HBox(spacing=3)
     ##
     pack(hbox, gtk.Label(_('Left Margin')))
     spin = IntSpinButton(0, 99)
     spin.set_value(ui.mcalLeftMargin)
     spin.connect('changed', self.leftMarginSpinChanged)
     pack(hbox, spin)
     ##
     pack(hbox, gtk.Label(_('Top')))
     spin = IntSpinButton(0, 99)
     spin.set_value(ui.mcalTopMargin)
     spin.connect('changed', self.topMarginSpinChanged)
     pack(hbox, spin)
     ##
     pack(hbox, gtk.Label(''), 1, 1)
     pack(self.optionsWidget, hbox)
     ########
     hbox = gtk.HBox(spacing=3)
     ####
     item = CheckPrefItem(ui, 'mcalGrid', _('Grid'))
     item.updateWidget()
     gridCheck = item._widget
     pack(hbox, gridCheck)
     gridCheck.item = item
     ####
     colorItem = ColorPrefItem(ui, 'mcalGridColor', True)
     colorItem.updateWidget()
     pack(hbox, colorItem._widget)
     gridCheck.colorb = colorItem._widget
     gridCheck.connect('clicked', self.gridCheckClicked)
     colorItem._widget.item = colorItem
     colorItem._widget.connect('color-set', self.gridColorChanged)
     colorItem._widget.set_sensitive(ui.mcalGrid)
     ####
     pack(self.optionsWidget, hbox)
     ########
     frame = gtk.Frame()
     frame.set_label(_('Calendars'))
     self.typeParamsVbox = gtk.VBox()
     frame.add(self.typeParamsVbox)
     frame.show_all()
     pack(self.optionsWidget, frame)
     self.optionsWidget.show_all()
     self.updateTypeParamsWidget()  ## FIXME
Esempio n. 44
0
	def optionsWidgetCreate(self):
		from scal3.ui_gtk.mywidgets.multi_spin.integer import IntSpinButton
		from scal3.ui_gtk.mywidgets.multi_spin.float_num import FloatSpinButton
		from scal3.ui_gtk.pref_utils import CheckPrefItem, ColorPrefItem
		if self.optionsWidget:
			return
		ColumnBase.optionsWidgetCreate(self)
		#####
		hbox = gtk.HBox()
		spin = IntSpinButton(1, 9999)
		spin.set_value(ui.wcalHeight)
		spin.connect('changed', self.heightSpinChanged)
		pack(hbox, gtk.Label(_('Height')))
		pack(hbox, spin)
		pack(self.optionsWidget, hbox)
		###
		hbox = gtk.HBox()
		spin = FloatSpinButton(0.01, 1, 2)
		spin.set_value(ui.wcalTextSizeScale)
		spin.connect('changed', self.textSizeScaleSpinChanged)
		pack(hbox, gtk.Label(_('Text Size Scale')))
		pack(hbox, spin)
		pack(self.optionsWidget, hbox)
		########
		hbox = gtk.HBox(spacing=3)
		####
		item = CheckPrefItem(ui, 'wcalGrid', _('Grid'))
		item.updateWidget()
		gridCheck = item._widget
		pack(hbox, gridCheck)
		gridCheck.item = item
		####
		colorItem = ColorPrefItem(ui, 'wcalGridColor', True)
		colorItem.updateWidget()
		pack(hbox, colorItem._widget)
		gridCheck.colorb = colorItem._widget
		gridCheck.connect('clicked', self.gridCheckClicked)
		colorItem._widget.item = colorItem
		colorItem._widget.connect('color-set', self.gridColorChanged)
		colorItem._widget.set_sensitive(ui.wcalGrid)
		####
		pack(self.optionsWidget, hbox)
		###
		self.optionsWidget.show_all()
Esempio n. 45
0
 def __init__(self, group):
     from scal3.ui_gtk.mywidgets.cal_type_combo import CalTypeCombo
     gtk.VBox.__init__(self)
     self.group = group
     ########
     self.sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL)
     #####
     hbox = gtk.HBox()
     label = gtk.Label(_('Title'))
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     self.titleEntry = gtk.Entry()
     pack(hbox, self.titleEntry, 1, 1)
     pack(self, hbox)
     #####
     hbox = gtk.HBox()
     label = gtk.Label(_('Color'))
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     self.colorButton = MyColorButton()
     self.colorButton.set_use_alpha(True)  ## FIXME
     pack(hbox, self.colorButton)
     pack(self, hbox)
     #####
     hbox = gtk.HBox()
     label = gtk.Label(_('Default Icon'))  ## FIXME
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     self.iconSelect = IconSelectButton()
     pack(hbox, self.iconSelect)
     pack(self, hbox)
     #####
     hbox = gtk.HBox()
     label = gtk.Label(_('Default Calendar Type'))
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     combo = CalTypeCombo()
     pack(hbox, combo)
     pack(hbox, gtk.Label(''), 1, 1)
     self.modeCombo = combo
     pack(self, hbox)
     #####
     hbox = gtk.HBox()
     label = gtk.Label(_('Show in Calendar'))
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     self.showInDCalCheck = gtk.CheckButton(_('Day'))
     self.showInWCalCheck = gtk.CheckButton(_('Week'))
     self.showInMCalCheck = gtk.CheckButton(_('Month'))
     pack(hbox, self.showInDCalCheck)
     pack(hbox, gtk.Label(''), 1, 1)
     pack(hbox, self.showInWCalCheck)
     pack(hbox, gtk.Label(''), 1, 1)
     pack(hbox, self.showInMCalCheck)
     pack(hbox, gtk.Label(''), 1, 1)
     pack(self, hbox)
     #####
     hbox = gtk.HBox()
     label = gtk.Label(_('Show in'))
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     self.showInTimeLineCheck = gtk.CheckButton(_('Time Line'))
     self.showInStatusIconCheck = gtk.CheckButton(_('Status Icon'))
     pack(hbox, self.showInTimeLineCheck)
     pack(hbox, gtk.Label(''), 1, 1)
     pack(hbox, self.showInStatusIconCheck)
     pack(hbox, gtk.Label(''), 1, 1)
     pack(self, hbox)
     #####
     hbox = gtk.HBox()
     label = gtk.Label(_('Event Cache Size'))
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     self.cacheSizeSpin = IntSpinButton(0, 9999)
     pack(hbox, self.cacheSizeSpin)
     pack(self, hbox)
     #####
     hbox = gtk.HBox()
     label = gtk.Label(_('Event Text Seperator'))
     label.set_alignment(0, 0.5)
     pack(hbox, label)
     self.sizeGroup.add_widget(label)
     self.sepInput = TextFrame()
     pack(hbox, self.sepInput, 1, 1)
     pack(self, hbox)
     set_tooltip(
         hbox,
         _('Using to seperate Summary and Description when displaying event'
           ))
     #####
     #hbox = gtk.HBox()
     #label = gtk.Label(_('Show Full Event Description'))
     #label.set_alignment(0, 0.5)
     #pack(hbox, label)
     #self.sizeGroup.add_widget(label)
     #self.showFullEventDescCheck = gtk.CheckButton('')
     #pack(hbox, self.showFullEventDescCheck, 1, 1)
     #pack(self, hbox)
     ###
     self.modeCombo.connect(
         'changed',
         self.modeComboChanged)  ## right place? before updateWidget? FIXME