-
Notifications
You must be signed in to change notification settings - Fork 0
/
Reloj.py
89 lines (62 loc) · 2.26 KB
/
Reloj.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os
import math
import cairo
import re
from datetime import datetime
from gi.repository import GObject
from gi.repository import Gtk
from gi.repository import Gdk
from gi.repository import Pango
from gi.repository import PangoCairo
from Widgets import Imagen_Reloj
from Widgets import Toolbar
from JAMediaSpeak import JAMediaSpeak
class Reloj(Gtk.Window):
__gtype_name__ = 'Reloj'
def __init__(self):
Gtk.Window.__init__(self)
self.set_size_request(640, 480)
self.set_title('Reloj')
self.speaker_active = False
self.speaker = JAMediaSpeak()
self.minutos = 0
self.toolbar = Toolbar()
self.reloj = Imagen_Reloj()
self.hora = Gtk.Label("Time")
self.fecha = Gtk.Label("Date")
vbox = Gtk.VBox()
vbox.pack_start(self.toolbar, False, False, 0)
vbox.pack_start(self.reloj, True, True, 0)
vbox.pack_start(self.hora, False, False, 0)
vbox.pack_start(self.fecha, False, False, 0)
self.add(vbox)
self.show_all()
self.reloj.connect("update", self.__update)
self.toolbar.connect("accion", self.__set_accion)
self.toolbar.connect("speak", self.__set_speak)
self.connect("delete-event", self.__exit)
def __set_speak(self, widget, valor):
self.speaker_active = valor
def __set_accion(self, widget, accion, valor):
if valor:
if accion == "Reloj Sencillo":
self.reloj.tipo = accion
elif accion == "Reloj Digital":
self.reloj.tipo = accion
def __update(self, widget, date, time):
self.fecha.set_text(date)
self.hora.set_text(time)
minutos = int(time.split(":")[1])
if self.speaker_active:
if minutos != self.minutos:
self.minutos = minutos
horas = int(time.split(":")[0])
self.speaker.speak("Son las %s Horas con %s Minutos" % (horas, minutos))
def __exit(self, widget, event):
import sys
sys.exit(0)
if __name__ == "__main__":
Reloj()
Gtk.main()