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
90
91
|
# -*- coding: utf-8 -*-
#
#Copyright (C) 2010, Yader Velasquez
#Copyright (C) 2010, Marcelo Gutierrez
#
#This program is free software: you can redistribute it and/or modify
#it under the terms of the GNU General Public License as published by
#the Free Software Foundation, either version 3 of the License, or
#(at your option) any later version.
#
#This program is distributed in the hope that it will be useful,
#but WITHOUT ANY WARRANTY; without even the implied warranty of
#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
#GNU General Public License for more details.
#
#You should have received a copy of the GNU General Public License
#along with this program. If not, see <http://www.gnu.org/licenses/>.
from gettext import gettext as _
from datetime import datetime
import gtk
class Calendario:
'''main class'''
def __init__(self):
''' init class'''
#ventana
self.ventana = gtk.Window()
self.ventana.set_title(_('Calendario'))
self.ventana.connect('destroy', self._cerrar_cb)
#interface
self.calendario = gtk.Calendar()
self.fecha = 'Hoy es: ' + str(datetime.today())
self.texto_fecha = gtk.Label(self.fecha)
self.actividades = gtk.TextView() #actividades diarias programadas
self.actividades.set_editable(False)
self.efemerides = gtk.TextView() #efemerides diarias
self.efemerides.set_editable(False)
self.entrada = gtk.Entry()
self.boton1 = gtk.Button(_('Ingresar'))
self.boton2 = gtk.Button(_('Borrar'))
self.label1 = gtk.Label(_('La efemeride del día de hoy es'))
self.label2 = gtk.Label(_('Tus actividades para hoy son'))
#contenedores
self.contenedor_h = gtk.HBox()
self.contenedor_vd = gtk.VBox()
self.contenedor_vi = gtk.VBox()
self.sub_contenedor_h = gtk.HBox()
self.ventana.add(self.contenedor_h)
#maquetacion
self.contenedor_h.pack_start(self.contenedor_vi, False, padding = 5)
self.contenedor_vi.pack_start(self.texto_fecha, False, padding = 5)
self.contenedor_vi.pack_start(self.calendario, False, padding = 5)
self.contenedor_vi.pack_start(self.label1, False, padding = 5)
self.contenedor_vi.pack_start(self.efemerides, padding = 5)
self.contenedor_h.pack_start(self.contenedor_vd, padding = 5)
self.contenedor_vd.pack_start(self.label2, False, padding = 20)
self.contenedor_vd.pack_start(self.actividades)
self.contenedor_vd.pack_start(self.sub_contenedor_h, False, padding = 15)
self.sub_contenedor_h.pack_start(self.entrada)
self.sub_contenedor_h.pack_start(self.boton1, False)
self.sub_contenedor_h.pack_start(self.boton2, False)
self.contenedor_h.show_all()
self.ventana.show()
def main(self):
'''run gtk'''
gtk.main()
def _cerrar_cb(self, widget, data=None):
'''close gtk'''
gtk.main_quit()
if __name__ == "__main__":
foo = Calendario()
foo.main()
|