[clocks] fixing timer design and edit spaces



commit ad2e9d0eaefadef6e0454637d6d8abbf9510e375
Author: Eslam Mostafa <cseslam gmail com>
Date:   Fri Jun 22 21:01:21 2012 +0200

    fixing timer design and edit spaces
    
    Signed-off-by: Seif Lotfy <seif lotfy com>

 clocks.py                        |  147 ++++++++-------
 data/preferences-system-time.png |  Bin 0 -> 41392 bytes
 main.py                          |   14 +-
 timer.py                         |  395 ++++++++++++++++++++------------------
 4 files changed, 287 insertions(+), 269 deletions(-)
---
diff --git a/clocks.py b/clocks.py
index e6f8262..70fb640 100644
--- a/clocks.py
+++ b/clocks.py
@@ -136,7 +136,7 @@ class World (Clock):
         worldclockstorage.save_clocks (self.clocks)
 
     def delete_clock (self, d):
-        #self.clocks.remove (d)
+        self.clocks.remove (d.location)
         self.liststore.remove (d.view_iter)
         self.iconview.unselect_all ()
 
@@ -269,73 +269,78 @@ class Stopwatch (Clock):
         return True
 
 class Timer (Clock):
-	
-	#State
-	#Zero: 0
-	#Running: 1
-	#Paused: 2
-	
-	def __init__ (self):
-		Clock.__init__ (self, "Timer")
-		self.state = 0
-		self.g_id = 0
-		#
-		self.vbox = Gtk.Box (orientation = Gtk.Orientation.VERTICAL)
-		box = Gtk.Box ()
-		self.add (box)
-		box.pack_start (Gtk.Box(), True, True, 0)
-		box.pack_start (self.vbox, False, False, 0)
-		box.pack_end (Gtk.Box(), True, True, 0)
-		self.timer_welcome_screen = TimerWelcomeScreen(self)
-		self.timer_screen = TimerScreen(self)
-		self.show_timer_welcome_screen()
-		
-	def show_timer_welcome_screen(self):
-		self.vbox.pack_start(self.timer_welcome_screen, True, True, 0)
-		
-	def start_timer_screen(self):
-		self.vbox.remove(self.timer_welcome_screen)
-		self.vbox.pack_start(self.timer_screen, True, True, 0)
-		self.vbox.show_all()
-	
-	def end_timer_screen(self):
-		self.timer_screen.rightButton.get_style_context ().add_class ("clocks-lap")
-		self.timer_screen.rightLabel.set_markup (TIMER_BUTTON_MARKUP%("Pause"))
-		self.vbox.remove(self.timer_screen)
-		self.show_timer_welcome_screen()
-			
-	def start(self):
-		if self.g_id == 0: 
-			hours = self.timer_welcome_screen.hours.get_value()
-			minutes = self.timer_welcome_screen.minutes.get_value()
-			seconds = self.timer_welcome_screen.seconds.get_value()
-			self.timer_screen.timerLabel.set_markup (TIMER_LABEL_MARKUP%(hours, minutes, seconds))
-			self.time = (hours * 60 * 60) + (minutes * 60) + seconds
-			self.state = 1
-			self.g_id = GObject.timeout_add(1000, self.count)
-		
-	def cancel(self):
-		self.state = 0
-		self.end_timer_screen()
-		if self.g_id != 0:
-			GObject.source_remove(self.g_id)
-			self.g_id = 0
-		
-	def pause(self):
-		GObject.source_remove(self.g_id)
-		self.g_id = 0
-		
-	def cont(self):
-		self.g_id = GObject.timeout_add(1000, self.count)
-	
-	def count(self):
-		self.time -= 1
-		minutes, seconds = divmod(self.time, 60)
-		hours, minutes = divmod(minutes, 60)
-		#minutes, seconds = divmod(hours, 60)
-
-		self.timer_screen.timerLabel.set_markup (TIMER_LABEL_MARKUP%(hours, minutes, seconds))
-		if hours == 00 and minutes == 00 and seconds == 00:
-			return False
-		else:
-			return True
+
+  #State
+  #Zero: 0
+  #Running: 1
+  #Paused: 2
+
+    def __init__ (self):
+        Clock.__init__ (self, "Timer")
+        self.state = 0
+        self.g_id = 0
+        #
+        self.vbox = Gtk.Box (orientation = Gtk.Orientation.VERTICAL)
+        box = Gtk.Box ()
+        self.add (box)
+        box.pack_start (Gtk.Box (), True, True, 0)
+        box.pack_start (self.vbox, False, False, 0)
+        box.pack_end (Gtk.Box (), True, True, 0)
+        self.timer_welcome_screen = TimerWelcomeScreen(self)
+        self.timer_screen = TimerScreen(self)
+        self.show_timer_welcome_screen()
+
+    def show_timer_welcome_screen(self):
+        self.vbox.pack_start(self.timer_welcome_screen, True, True, 0)
+
+    def start_timer_screen(self):
+        self.vbox.remove(self.timer_welcome_screen)
+        self.vbox.pack_start(self.timer_screen, True, True, 0)
+        self.vbox.show_all()
+
+    def end_timer_screen(self):
+        #self.timer_screen.rightButton.get_style_context ().add_class ("clocks-lap")
+        self.timer_screen.leftLabel.set_markup (TIMER_BUTTON_MARKUP%("Pause"))
+        self.vbox.remove(self.timer_screen)
+        self.show_timer_welcome_screen()
+        self.timer_welcome_screen.hours.set_value(0)
+        self.timer_welcome_screen.minutes.set_value(0)
+        self.timer_welcome_screen.seconds.set_value(0)
+        self.timer_welcome_screen.startButton.set_sensitive(False)
+        self.timer_welcome_screen.hours.down.set_sensitive(False)
+
+    def start(self):
+        if self.g_id == 0: 
+            hours = self.timer_welcome_screen.hours.get_value()
+            minutes = self.timer_welcome_screen.minutes.get_value()
+            seconds = self.timer_welcome_screen.seconds.get_value()
+            self.timer_screen.timerLabel.set_markup (TIMER_LABEL_MARKUP%(hours, minutes, seconds))
+            self.time = (hours * 60 * 60) + (minutes * 60) + seconds
+            self.state = 1
+            self.g_id = GObject.timeout_add(1000, self.count)
+
+    def reset(self):
+        self.state = 0
+        self.end_timer_screen()
+        if self.g_id != 0:
+            GObject.source_remove(self.g_id)
+        self.g_id = 0
+
+    def pause(self):
+        GObject.source_remove(self.g_id)
+        self.g_id = 0
+
+    def cont(self):
+        self.g_id = GObject.timeout_add(1000, self.count)
+
+    def count(self):
+        self.time -= 1
+        minutes, seconds = divmod(self.time, 60)
+        hours, minutes = divmod(minutes, 60)
+        #minutes, seconds = divmod(hours, 60)
+
+        self.timer_screen.timerLabel.set_markup (TIMER_LABEL_MARKUP%(hours, minutes, seconds))
+        if hours == 00 and minutes == 00 and seconds == 00:
+            return False
+        else:
+            return True
diff --git a/data/preferences-system-time.png b/data/preferences-system-time.png
new file mode 100644
index 0000000..b458aba
Binary files /dev/null and b/data/preferences-system-time.png differ
diff --git a/main.py b/main.py
index 8e1d06a..1606042 100644
--- a/main.py
+++ b/main.py
@@ -28,6 +28,8 @@ class Window (Gtk.Window):
         css_provider = Gtk.CssProvider()
         css_provider.load_from_path("gtk-style.css")
         self.set_hide_titlebar_when_maximized (True)
+        self.maximize ()
+        self.set_icon_from_file ('data/preferences-system-time.png')
         context = Gtk.StyleContext()
         context.add_provider_for_screen (Gdk.Screen.get_default (),
                                          css_provider,
@@ -73,14 +75,8 @@ class Window (Gtk.Window):
             self.single_evbox.remove (child)
         self.single_evbox.add (d.get_standalone_widget ())
         self.single_evbox.show_all ()
-        self.toolbar.delete_button.connect ('clicked', self._delete_clock, d)
 
 
-    def _delete_clock (self, button , d):
-        self.world.delete_clock (d)
-        self.notebook.set_current_page (0)
-        self.toolbar._set_overview_toolbar ()
-
     def _on_view_clock (self, button, index):
         self.notebook.set_current_page (index)
         self.toolbar._set_overview_toolbar ()
@@ -150,7 +146,6 @@ class ClocksToolbar (Gtk.Toolbar):
         box.pack_end (self.delete_button, False, False, 0)
         toolbox.pack_start (box, True, True, 0)
 
-        
         self._buttonMap = {}
         self._busy = False
 
@@ -211,7 +206,10 @@ class ClocksToolbar (Gtk.Toolbar):
             self.emit ("view-clock", self._buttonMap[widget])
 
     def _delete_clock (self, button):
-        pass
+        # d = 
+#        self.views[0].delete_clock (d)
+         pass
+
 
 if __name__=="__main__":
     window = Window()
diff --git a/timer.py b/timer.py
index f2232be..13b88ac 100644
--- a/timer.py
+++ b/timer.py
@@ -26,195 +26,210 @@ TIMER = "<span font_desc=\"64.0\">%02i</span>"
 TIMER_BUTTON_MARKUP = "<span font_desc=\"24.0\">%s</span>"
 
 class Spinner(Gtk.Box):
-	def __init__(self, value_type, timer_welcome_screen):
-		super(Spinner, self).__init__()
-		self.vType = value_type
-		self.timer_welcome_screen = timer_welcome_screen
-		self.set_orientation(Gtk.Orientation.VERTICAL)
-		iconUp = Gio.ThemedIcon.new_with_default_fallbacks ("go-up-symbolic")
-		iconDown = Gio.ThemedIcon.new_with_default_fallbacks ("go-down-symbolic")
-		imageUp = Gtk.Image.new_from_gicon(iconUp, Gtk.IconSize.BUTTON)
-		imageDown = Gtk.Image.new_from_gicon(iconDown, Gtk.IconSize.BUTTON)
-		#Up Button
-		self.up = Gtk.Button()
-		self.up.set_image(imageUp)
-		self.up.set_relief(Gtk.ReliefStyle.NONE)
-		#Value
-		self.value = Gtk.Label('')
-		self.value.set_markup(TIMER%(0))
-		self.value.set_alignment (0.5, 0.5)
-		#Down Button
-		self.down = Gtk.Button()
-		self.down.set_image(imageDown)
-		self.down.set_relief(Gtk.ReliefStyle.NONE)
-		if self.vType == 'hours':
-			self.down.set_sensitive(False)
-		#
-		self.pack_start(self.up, False, False, 0)
-		self.pack_start(self.value, True, True, 0)
-		self.pack_start(self.down, False, False, 0)
-		#Signals
-		self.up.connect('clicked', self._increase)
-		self.down.connect('clicked', self._decrease)
-		
-	def get_value(self):
-		return int(self.value.get_text())
-		
-	def set_value(self, newValue):
-		self.value.set_markup(TIMER%(newValue))
-		
-	def _increase(self, widget):
-		value = self.get_value()
-		if self.vType == 'hours':
-				value += 1
-				self.down.set_sensitive(True)
-		elif self.vType == 'minutes':
-			if value == 59:
-				value = 0
-			else:
-				value += 1
-		elif self.vType == 'seconds':
-			if value == 59:
-				value = 0
-			else:
-				value += 1
-		self.set_value(value)
-		self.timer_welcome_screen.update_start_button_status()
-			
-	def _decrease(self, widget):
-		value = self.get_value()
-		if self.vType == 'hours':
-			if value == 0:
-				self.down.set_sensitive(False)
-			else:
-				value -= 1			
-		elif self.vType == 'minutes':
-			if value == 0:
-				value = 59
-			else:
-				value -= 1			
-		elif self.vType == 'seconds':
-			if value == 0:
-				value = 59
-			else:
-				value -= 1
-		self.set_value(value)
-		self.timer_welcome_screen.update_start_button_status()
-			
+    def __init__(self, value_type, timer_welcome_screen):
+        super(Spinner, self).__init__()
+        self.vType = value_type
+        self.timer_welcome_screen = timer_welcome_screen
+        self.set_orientation(Gtk.Orientation.VERTICAL)
+        iconUp = Gio.ThemedIcon.new_with_default_fallbacks ("go-up-symbolic")
+        iconDown = Gio.ThemedIcon.new_with_default_fallbacks ("go-down-symbolic")
+        imageUp = Gtk.Image.new_from_gicon(iconUp, Gtk.IconSize.DND)
+        imageDown = Gtk.Image.new_from_gicon(iconDown, Gtk.IconSize.DND)
+        #Up Button
+        self.up = Gtk.Button()
+        self.up.set_image(imageUp)
+        self.up.set_relief(Gtk.ReliefStyle.NONE)
+        #Value
+        self.value = Gtk.Label('')
+        self.value.set_markup(TIMER%(0))
+        self.value.set_alignment (0.5, 0.5)
+        #Down Button
+        self.down = Gtk.Button()
+        self.down.set_image(imageDown)
+        self.down.set_relief(Gtk.ReliefStyle.NONE)
+        if self.vType == 'hours':
+            self.down.set_sensitive(False)
+        #
+        self.pack_start(self.up, False, False, 0)
+        self.pack_start(self.value, True, True, 0)
+        self.pack_start(self.down, False, False, 0)
+        #Signals
+        self.up.connect('clicked', self._increase)
+        self.down.connect('clicked', self._decrease)
+
+    def get_value(self):
+        return int(self.value.get_text())
+
+    def set_value(self, newValue):
+        self.value.set_markup(TIMER%(newValue))
+
+    def _increase(self, widget):
+        value = self.get_value()
+        if self.vType == 'hours':
+            value += 1
+            self.down.set_sensitive(True)
+        elif self.vType == 'minutes':
+              if value == 59:
+                  value = 0
+              else:
+                  value += 1
+        elif self.vType == 'seconds':
+              if value == 59:
+                  value = 0
+              else:
+                  value += 1
+        self.set_value(value)
+        self.timer_welcome_screen.update_start_button_status()
+
+    def _decrease(self, widget):
+        value = self.get_value()
+        if self.vType == 'hours':
+            if value == 0:
+                self.down.set_sensitive(False)
+            else:
+                value -= 1
+        elif self.vType == 'minutes':
+            if value == 0:
+                value = 59
+            else:
+                value -= 1
+        elif self.vType == 'seconds':
+            if value == 0:
+                value = 59
+            else:
+                value -= 1
+        self.set_value(value)
+        self.timer_welcome_screen.update_start_button_status()
+
 class TimerScreen (Gtk.Box):
-	def __init__(self, timer):
-		super(TimerScreen, self).__init__()
-		self.set_orientation(Gtk.Orientation.VERTICAL)
-		self.timer = timer
-		top_spacer = Gtk.Label("")
-
-		self.timerLabel = Gtk.Label ()
-		self.timerLabel.set_alignment (0.5, 0.5)
-		self.timerLabel.set_markup (TIMER_LABEL_MARKUP%(0,0,0))
-
-		hbox = Gtk.Box()		
-		self.leftButton = Gtk.Button ()
-		self.leftButton.set_size_request(200, -1)
-		self.leftLabel = Gtk.Label ()
-		self.leftButton.add (self.leftLabel)
-		self.rightButton = Gtk.Button ()
-		self.rightButton.set_size_request(200, -1)
-		self.rightLabel = Gtk.Label ()
-		self.rightButton.add (self.rightLabel)
-
-		self.leftButton.get_style_context ().add_class ("clocks-stop")
-		self.rightButton.get_style_context ().add_class ("clocks-lap")
-
-		hbox.pack_start (self.leftButton, True, True, 0)
-		hbox.pack_start (Gtk.Box(), True, True, 24)
-		hbox.pack_start (self.rightButton, True, True, 0)
-
-
-		self.leftLabel.set_markup (TIMER_BUTTON_MARKUP%("Cancel"))
-		self.leftLabel.set_padding (6, 0)
-		self.rightLabel.set_markup (TIMER_BUTTON_MARKUP%("Pause"))
-		self.rightLabel.set_padding (6, 0)
-
-		self.leftButton.connect('clicked', self._on_left_button_clicked)
-		self.rightButton.connect('clicked', self._on_right_button_clicked)
-
-		self.pack_start(Gtk.Label(""), False, False, 0)
-		self.pack_start(Gtk.Label(""), True, True, 0)
-		self.pack_start(self.timerLabel, False, False, 0)		
-		self.pack_start(hbox, False, False, 32)		
-		self.pack_start(Gtk.Label(""), True, True, 0)
-		self.pack_start(Gtk.Label(""), True, True, 0)
-
-
-	def _on_left_button_clicked(self, data):
-		self.timer.cancel()
-		
-	def _on_right_button_clicked(self, widget):
-		if self.timer.state == 1: #Pause
-			self.timer.state = 2
-			self.timer.pause()
-			self.rightButton.get_style_context ().remove_class ("clocks-lap")
-			self.rightButton.get_style_context ().add_class ("clocks-start")
-			self.rightLabel.set_markup(TIMER_BUTTON_MARKUP%("Continue"))
-			
-		elif self.timer.state == 2: #Continue
-			self.timer.state = 1
-			self.timer.cont()
-			self.rightButton.get_style_context ().remove_class ("clocks-start")
-			self.rightButton.get_style_context ().add_class ("clocks-lap")
-			self.rightLabel.set_markup(TIMER_BUTTON_MARKUP%("Pause"))	
-			
+    def __init__(self, timer):
+        super(TimerScreen, self).__init__()
+        self.set_orientation(Gtk.Orientation.VERTICAL)
+        self.timer = timer
+
+        top_spacer = Gtk.Label ("")
+        top_spacer.set_size_request (-1, 50)
+        center = Gtk.Box (orientation=Gtk.Orientation.VERTICAL)
+        bottom_spacer = Gtk.Box (orientation=Gtk.Orientation.VERTICAL)
+
+        self.timerLabel = Gtk.Label ()
+        self.timerLabel.set_alignment (0.5, 0.5)
+        self.timerLabel.set_markup (TIMER_LABEL_MARKUP%(0,0,0))
+
+        center.pack_start (Gtk.Label (""), True, True, 30)
+        center.pack_start (self.timerLabel, False, True, 6)
+        center.pack_start (Gtk.Label (""), False, True, 24)
+
+        hbox = Gtk.Box()		
+        self.leftButton = Gtk.Button ()
+        self.leftButton.set_size_request(200, -1)
+        self.leftLabel = Gtk.Label ()
+        self.leftButton.add (self.leftLabel)
+        self.rightButton = Gtk.Button ()
+        self.rightButton.set_size_request(200, -1)
+        self.rightLabel = Gtk.Label ()
+        self.rightButton.add (self.rightLabel)
+
+        self.leftButton.get_style_context ().add_class ("clocks-stop")
+        self.rightButton.get_style_context ().add_class ("clocks-lap")
+
+        hbox.pack_start (self.leftButton, True, True, 0)
+        hbox.pack_start (Gtk.Box(), True, True, 24)
+        hbox.pack_start (self.rightButton, True, True, 0)
+
+        self.leftLabel.set_markup (TIMER_BUTTON_MARKUP%("Pause"))
+        self.leftLabel.set_padding (6, 0)
+        self.rightLabel.set_markup (TIMER_BUTTON_MARKUP%("Reset"))
+        self.rightLabel.set_padding (6, 0)
+
+        self.leftButton.connect('clicked', self._on_left_button_clicked)
+        self.rightButton.connect('clicked', self._on_right_button_clicked)
+
+        bottom_spacer.pack_start (hbox, False, True, 0)
+        bottom_spacer.pack_end (Gtk.Box (), True, True, 0)
+
+        self.pack_start(top_spacer, False, True, 6)
+        self.pack_start(center, False, True, 6)		
+        self.pack_start(bottom_spacer, True, True, 6)		
+
+
+    def _on_right_button_clicked(self, data):
+        self.timer.reset()
+
+    def _on_left_button_clicked(self, widget):
+        if self.timer.state == 1: #Pause
+            self.timer.state = 2
+            self.timer.pause()
+            self.leftLabel.set_markup(TIMER_BUTTON_MARKUP%("Continue"))
+            self.leftButton.get_style_context ().remove_class ("clocks-stop")
+            self.leftButton.get_style_context ().add_class ("clocks-start")
+        elif self.timer.state == 2: #Continue
+            self.timer.state = 1
+            self.timer.cont()
+            self.leftLabel.set_markup(TIMER_BUTTON_MARKUP%("Pause"))
+            self.leftButton.get_style_context ().remove_class ("clocks-start")
+            self.leftButton.get_style_context ().add_class ("clocks-lap")
+
 class TimerWelcomeScreen (Gtk.Box):
-	def __init__ (self, timer):
-		super(TimerWelcomeScreen, self).__init__ ()
-		self.timer = timer
-		self.set_orientation(Gtk.Orientation.VERTICAL)
-		
-		spinner = Gtk.Box () #Containes 3 columns to set the time
-		
-		self.hours = Spinner('hours', self)
-		self.minutes = Spinner('minutes', self)
-		self.seconds = Spinner('seconds', self)
-		colon = Gtk.Label('')
-		colon.set_markup('<span font_desc=\"64.0\">:</span>')
-		another_colon = Gtk.Label('')
-		another_colon.set_markup('<span font_desc=\"64.0\">:</span>')
-		
-		spinner.pack_start(self.hours, False, False, 0)
-		spinner.pack_start(colon, False, False, 0)
-		spinner.pack_start(self.minutes, False, False, 0)
-		spinner.pack_start(another_colon, False, False, 0)
-		spinner.pack_start(self.seconds, False, False, 0)
-		
-		#Start Button
-		self.startButton = Gtk.Button()
-		self.startButton.set_sensitive(False)
-		self.startButton.set_size_request(200, -1)
-		self.startButton.get_style_context ().add_class ("clocks-start")
-		self.startLabel = Gtk.Label()
-		self.startLabel.set_markup (TIMER_BUTTON_MARKUP%("Start"))
-		self.startLabel.set_padding (6, 0)
-		self.startButton.add(self.startLabel)
-		self.startButton.connect('clicked', self._on_start_clicked)
-		
-		self.pack_start(Gtk.Label(""), False, False, 0)
-		self.pack_start(Gtk.Label(""), True, True, 0)
-		self.pack_start(spinner, False, False, 0)
-		self.pack_start(self.startButton, False, False, 6)
-		self.pack_start(Gtk.Label(""), True, True, 0)
-		self.pack_start(Gtk.Label(""), True, True, 42)
-		
-	def update_start_button_status(self):
-		hours = self.hours.get_value()
-		minutes = self.minutes.get_value()
-		seconds = self.seconds.get_value()
-		if hours == 0 and minutes == 0 and seconds == 0:
-			self.startButton.set_sensitive(False)
-		else:
-			self.startButton.set_sensitive(True)
-		
-
-	def _on_start_clicked(self, data):
-		if self.timer.state == 0:			
-			self.timer.start()
-			self.timer.start_timer_screen()
+    def __init__ (self, timer):
+        super(TimerWelcomeScreen, self).__init__ ()
+        self.timer = timer
+        self.set_orientation(Gtk.Orientation.VERTICAL)
+
+        top_spacer = Gtk. Box ()
+        top_spacer.set_size_request (-1, 50)
+        center = Gtk.Box (orientation=Gtk.Orientation.VERTICAL)
+#        center.set_size_request (-1, 300)
+        bottom_spacer = Gtk.Box (orientation=Gtk.Orientation.VERTICAL) #Contains Start Button
+
+        self.hours = Spinner('hours', self)
+        self.minutes = Spinner('minutes', self)
+        self.seconds = Spinner('seconds', self)
+        colon = Gtk.Label('')
+        colon.set_markup('<span font_desc=\"64.0\">:</span>')
+        another_colon = Gtk.Label('')
+        another_colon.set_markup('<span font_desc=\"64.0\">:</span>')
+
+        spinner = Gtk.Box () #Contains 3 columns to set the time
+        spinner.pack_start(self.hours, False, False, 0)
+        spinner.pack_start(colon, False, False, 0)
+        spinner.pack_start(self.minutes, False, False, 0)
+        spinner.pack_start(another_colon, False, False, 0)
+        spinner.pack_start(self.seconds, False, False, 0)
+
+        #Start Button
+        self.startButton = Gtk.Button()
+        self.startButton.set_sensitive(False)
+        self.startButton.set_size_request(200, -1)
+        self.startButton.get_style_context ().add_class ("clocks-start")
+        self.startLabel = Gtk.Label()
+        self.startLabel.set_markup (TIMER_BUTTON_MARKUP%("Start"))
+        self.startLabel.set_padding (6, 0)
+        self.startButton.add(self.startLabel)
+        self.startButton.connect('clicked', self._on_start_clicked)
+        bottom_spacer.pack_start (self.startButton, False, False, 0)
+        bottom_spacer.pack_start (Gtk.Label(""), True, True, 0)
+
+
+        center.pack_start (Gtk.Label (""), False, True, 16)
+        center.pack_start (spinner, False, True, 3)
+        center.pack_start (Gtk.Label (""), False, True, 3)
+
+        self.pack_start (top_spacer, False, True, 0)
+        self.pack_start (center, False, True, 6)
+        self.pack_start (bottom_spacer, True, True, 6)
+
+    def update_start_button_status(self):
+        hours = self.hours.get_value()
+        minutes = self.minutes.get_value()
+        seconds = self.seconds.get_value()
+        if hours == 0 and minutes == 0 and seconds == 0:
+            self.startButton.set_sensitive(False)
+        else:
+            self.startButton.set_sensitive(True)
+
+
+    def _on_start_clicked(self, data):
+        if self.timer.state == 0:
+            self.timer.start()
+            self.timer.start_timer_screen()



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]