Skip to content
Snippets Groups Projects
timer.py 689 B
Newer Older
Benoit Favre's avatar
Benoit Favre committed
from gi.repository import Gtk, GObject
import datetime

class Timer(Gtk.Label):
    def __init__(self):
        super(Timer, self).__init__()
        self.start_time = datetime.datetime.now()
        self.timer = GObject.timeout_add(100, self.update)
        self.get_style_context().add_class('timer')

    def update(self):
        self.current_time = datetime.datetime.now() - self.start_time
        self.set_text(self.to_string())
        self.timer = GObject.timeout_add(100, self.update)

    def to_string(self):
        time = self.current_time
        return '%02d:%02d:%02d.%01d' % (time.seconds / 3600, (time.seconds / 60) % 60, time.seconds % 60, time.microseconds / 100000)