コード例 #1
0
 def __init__(self, date=None, **kwargs):
     MultiSpinButton.__init__(self, '/', (
         YearField(),
         MonthField(),
         DayField(),
     ), **kwargs)
     if date == None:
         date = localtime()[:3]
     self.set_value(date)
コード例 #2
0
ファイル: hour_minute.py プロジェクト: ilius/starcal2
	def __init__(self, hm=None, **kwargs):
		MultiSpinButton.__init__(
			self,
			':',
			(
				HourField(),
				Z60Field(),
			),
			**kwargs
		)
		if hm==None:
			hm = localtime()[3:5]
		self.set_value(hm)
コード例 #3
0
ファイル: year_month.py プロジェクト: amirkarimi/starcal
 def __init__(self, date=None, **kwargs):
     MultiSpinButton.__init__(
         self,
         '/',
         (
             YearField(),
             MonthField(),
         ),
         **kwargs
     )
     if date==None:
         date = localtime()[:2]
     self.set_value(date)
コード例 #4
0
ファイル: hour_minute.py プロジェクト: amirkarimi/starcal
 def __init__(self, hm=None, **kwargs):
     MultiSpinButton.__init__(
         self,
         ':',
         (
             HourField(),
             Z60Field(),
         ),
         **kwargs
     )
     if hm==None:
         hm = localtime()[3:5]
     self.set_value(hm)
コード例 #5
0
ファイル: __init__.py プロジェクト: ilius/starcal2
	def __init__(self, sep, fields, spacing=0, is_hbox=False, hist_size=10, **kwargs):
		if not is_hbox:
			gtk.HBox.__init__(self, spacing=spacing)
		self.spin = MultiSpinButton(sep, fields, **kwargs)
		pack(self, self.spin, 1, 1)
		self.hist_size = hist_size
		self.option = gtk.Button()
		self.option.add(gtk.Arrow(gtk.ARROW_DOWN, gtk.SHADOW_IN))
		pack(self, self.option, 1, 1)
		self.menu = gtk.Menu()
		#self.menu.show()
		self.option.connect('button-press-event', self.option_pressed)
		self.menuItems = []
		#self.option.set_sensitive(False) #???????
		#self.spin._entry_activate = self._entry_activate
		self.spin.connect('activate', self._entry_activate)
		self.get_value = self.spin.get_value
		self.set_value = self.spin.set_value
コード例 #6
0
 def __init__(self, date_time=None, **kwargs):
     MultiSpinButton.__init__(
         self,
         ' ',
         (
             ContainerField(
                 '/',
                 YearField(),
                 MonthField(),
                 DayField(),
             ),
             ContainerField(
                 ':',
                 HourField(),
                 Z60Field(),
                 Z60Field(),
             ),
         ),
         #StrConField('seconds'),
         **kwargs)
     if date_time == None:
         date_time = localtime()[:6]
     self.set_value(date_time)
コード例 #7
0
ファイル: __init__.py プロジェクト: amirkarimi/starcal
class MultiSpinOptionBox(gtk.HBox):
    signals = [
        ('activate', [])
    ]
    def _entry_activate(self, widget):
        #self.spin.update() #?????
        #self.add_history()
        self.emit('activate')
        return False
    def __init__(self, sep, fields, spacing=0, is_hbox=False, hist_size=10, **kwargs):
        if not is_hbox:
            gtk.HBox.__init__(self, spacing=spacing)
        self.spin = MultiSpinButton(sep, fields, **kwargs)
        pack(self, self.spin, 1, 1)
        self.hist_size = hist_size
        self.option = gtk.Button()
        self.option.add(gtk.Arrow(gtk.ARROW_DOWN, gtk.SHADOW_IN))
        pack(self, self.option, 1, 1)
        self.menu = gtk.Menu()
        #self.menu.show()
        self.option.connect('button-press-event', self.option_pressed)
        self.menuItems = []
        #self.option.set_sensitive(False) #???????
        #self.spin._entry_activate = self._entry_activate
        self.spin.connect('activate', self._entry_activate)
        self.get_value = self.spin.get_value
        self.set_value = self.spin.set_value
    def option_pressed(self, widget, gevent):
        #x, y, w, h = self.option.
        self.menu.popup(None, None, None, gevent.button, gevent.time)
    def add_history(self):
        self.spin.update()
        text = self.spin.get_text()
        found = -1
        n = len(self.menuItems)
        for i in range(n):
            if self.menuItems[i].text==text:
                found = i
                break
        if found>-1:
            self.menu.remove(self.menuItems.pop(found))
        else:
            n += 1
        #m.prepend([text])#self.combo.prepend_text(text)
        item = gtk.MenuItem(text)
        item.connect('activate', lambda obj: self.spin.set_text(text))
        item.text = text
        self.menu.add(item)
        self.menu.reorder_child(item, 0)
        if n > self.hist_size:
            self.menu.remove(self.menuItems.pop(n-1))
        self.menu.show_all()
        #self.option.set_sensitive(True) #???????
    def clear_history(self):
        for item in self.menu.get_children():
            self.menu.remove(item)
コード例 #8
0
ファイル: date_time.py プロジェクト: amirkarimi/starcal
 def __init__(self, date_time=None, **kwargs):
     MultiSpinButton.__init__(
         self,
         ' ',
         (
             ContainerField(
                 '/',
                 YearField(),
                 MonthField(),
                 DayField(),
             ),
             ContainerField(
                 ':',
                 HourField(),
                 Z60Field(),
                 Z60Field(),
             ),
         ),
         #StrConField('seconds'),
         **kwargs
     )
     if date_time==None:
         date_time = localtime()[:6]
     self.set_value(date_time)
コード例 #9
0
ファイル: __init__.py プロジェクト: ilius/starcal2
class MultiSpinOptionBox(gtk.HBox):
	signals = [
		('activate', [])
	]
	def _entry_activate(self, widget):
		#self.spin.update() #?????
		#self.add_history()
		self.emit('activate')
		return False
	def __init__(self, sep, fields, spacing=0, is_hbox=False, hist_size=10, **kwargs):
		if not is_hbox:
			gtk.HBox.__init__(self, spacing=spacing)
		self.spin = MultiSpinButton(sep, fields, **kwargs)
		pack(self, self.spin, 1, 1)
		self.hist_size = hist_size
		self.option = gtk.Button()
		self.option.add(gtk.Arrow(gtk.ARROW_DOWN, gtk.SHADOW_IN))
		pack(self, self.option, 1, 1)
		self.menu = gtk.Menu()
		#self.menu.show()
		self.option.connect('button-press-event', self.option_pressed)
		self.menuItems = []
		#self.option.set_sensitive(False) #???????
		#self.spin._entry_activate = self._entry_activate
		self.spin.connect('activate', self._entry_activate)
		self.get_value = self.spin.get_value
		self.set_value = self.spin.set_value
	def option_pressed(self, widget, gevent):
		#x, y, w, h = self.option.
		self.menu.popup(None, None, None, gevent.button, gevent.time)
	def add_history(self):
		self.spin.update()
		text = self.spin.get_text()
		found = -1
		n = len(self.menuItems)
		for i in range(n):
			if self.menuItems[i].text==text:
				found = i
				break
		if found>-1:
			self.menu.remove(self.menuItems.pop(found))
		else:
			n += 1
		#m.prepend([text])#self.combo.prepend_text(text)
		item = gtk.MenuItem(text)
		item.connect('activate', lambda obj: self.spin.set_text(text))
		item.text = text
		self.menu.add(item)
		self.menu.reorder_child(item, 0)
		if n > self.hist_size:
			self.menu.remove(self.menuItems.pop(n-1))
		self.menu.show_all()
		#self.option.set_sensitive(True) #???????
	def clear_history(self):
		for item in self.menu.get_children():
			self.menu.remove(item)
コード例 #10
0
ファイル: __init__.py プロジェクト: amirkarimi/starcal
 def __init__(self, sep, fields, spacing=0, is_hbox=False, hist_size=10, **kwargs):
     if not is_hbox:
         gtk.HBox.__init__(self, spacing=spacing)
     self.spin = MultiSpinButton(sep, fields, **kwargs)
     pack(self, self.spin, 1, 1)
     self.hist_size = hist_size
     self.option = gtk.Button()
     self.option.add(gtk.Arrow(gtk.ARROW_DOWN, gtk.SHADOW_IN))
     pack(self, self.option, 1, 1)
     self.menu = gtk.Menu()
     #self.menu.show()
     self.option.connect('button-press-event', self.option_pressed)
     self.menuItems = []
     #self.option.set_sensitive(False) #???????
     #self.spin._entry_activate = self._entry_activate
     self.spin.connect('activate', self._entry_activate)
     self.get_value = self.spin.get_value
     self.set_value = self.spin.set_value
コード例 #11
0
ファイル: hour_minute.py プロジェクト: ilius/starcal2
class HourMinuteButton(MultiSpinButton):
	def __init__(self, hm=None, **kwargs):
		MultiSpinButton.__init__(
			self,
			':',
			(
				HourField(),
				Z60Field(),
			),
			**kwargs
		)
		if hm==None:
			hm = localtime()[3:5]
		self.set_value(hm)
	get_value = lambda self: MultiSpinButton.get_value(self) + [0]
	def set_value(self, value):
		if isinstance(value, int):
			value = [value, 0]
		else:
			value = value[:2]
		MultiSpinButton.set_value(self, value)
コード例 #12
0
ファイル: hour_minute.py プロジェクト: ilius/starcal2
	def set_value(self, value):
		if isinstance(value, int):
			value = [value, 0]
		else:
			value = value[:2]
		MultiSpinButton.set_value(self, value)
コード例 #13
0
ファイル: hour_minute.py プロジェクト: amirkarimi/starcal
 def set_value(self, value):
     if isinstance(value, int):
         value = [value, 0]
     else:
         value = value[:2]
     MultiSpinButton.set_value(self, value)