[gnome-clocks] Add empty alarm page
- From: Paolo Borelli <pborelli src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-clocks] Add empty alarm page
- Date: Thu, 16 Aug 2012 21:56:05 +0000 (UTC)
commit 5aa251f7a502fdc35ed3503495642a32e94ce01f
Author: MaÃl Lavault <mael lavault mailz org>
Date: Thu Aug 16 22:51:20 2012 +0200
Add empty alarm page
Add an empty view with text and symbolic icon when there are no existing alarms
Signed-off-by: MaÃl Lavault <mael lavault mailz org>
https://bugzilla.gnome.org/show_bug.cgi?id=682027
gnomeclocks/clocks.py | 27 ++++++++++++++++++++++-----
gnomeclocks/widgets.py | 4 ++--
2 files changed, 24 insertions(+), 7 deletions(-)
---
diff --git a/gnomeclocks/clocks.py b/gnomeclocks/clocks.py
index cf18a4f..c2e0fb9 100644
--- a/gnomeclocks/clocks.py
+++ b/gnomeclocks/clocks.py
@@ -19,7 +19,7 @@
from gi.repository import Gtk, GObject, Gio, Gdk, Gst, Notify, cairo
from gi.repository.GdkPixbuf import Pixbuf
-from widgets import NewWorldClockDialog, DigitalClock, NewAlarmDialog, AlarmWidget, WorldEmpty
+from widgets import NewWorldClockDialog, DigitalClock, NewAlarmDialog, AlarmWidget, WorldEmpty, AlarmsEmpty
from storage import worldclockstorage
from datetime import datetime, timedelta
@@ -99,7 +99,6 @@ class World (Clock):
self.scrolledwindow = scrolledwindow = Gtk.ScrolledWindow()
scrolledwindow.add(iconview)
- #self.add(scrolledwindow)
iconview.connect ("selection-changed", self._on_selection_changed)
@@ -181,6 +180,8 @@ class Alarm (Clock):
self.liststore = liststore = Gtk.ListStore(Pixbuf, str, GObject.TYPE_PYOBJECT)
self.iconview = iconview = Gtk.IconView.new()
+ self.empty_view = AlarmsEmpty()
+
iconview.set_model(liststore)
iconview.set_spacing(3)
iconview.set_pixbuf_column(0)
@@ -191,9 +192,8 @@ class Alarm (Clock):
iconview.pack_start(renderer_text, True)
iconview.add_attribute(renderer_text, "markup", 1)
- scrolledwindow = Gtk.ScrolledWindow()
- scrolledwindow.add(iconview)
- self.add(scrolledwindow)
+ self.scrolledwindow = Gtk.ScrolledWindow()
+ self.scrolledwindow.add(iconview)
self.alarms = []
self.load_alarms()
@@ -218,6 +218,20 @@ class Alarm (Clock):
d = AlarmWidget(alarm.get_time_24h_as_string())
view_iter = self.liststore.append([d.drawing.pixbuf, "<b>" + alarm.get_alarm_name() + "</b>", d])
d.set_iter(self.liststore, view_iter)
+ self.load_alarms_view()
+ else:
+ self.load_empty_alarms_view ()
+
+ def load_alarms_view(self):
+ if self.empty_view in self.get_children():
+ self.remove(self.empty_view)
+ self.add(self.scrolledwindow)
+ self.show_all()
+
+ def load_empty_alarms_view(self):
+ if self.scrolledwindow in self.get_children():
+ self.remove(self.scrolledwindow)
+ self.add(self.empty_view)
self.show_all()
def add_alarm(self, alarm):
@@ -231,6 +245,9 @@ class Alarm (Clock):
view_iter = self.liststore.append([d.drawing.pixbuf, "<b>" + alarm.get_alarm_name() + "</b>", d])
d.set_iter(self.liststore, view_iter)
self.show_all()
+ vevents = handler.load_vevents()
+ if vevents:
+ self.load_alarms_view()
def open_new_dialog(self):
parent = self.get_parent ().get_parent ().get_parent ()
diff --git a/gnomeclocks/widgets.py b/gnomeclocks/widgets.py
index af2060a..601a57c 100644
--- a/gnomeclocks/widgets.py
+++ b/gnomeclocks/widgets.py
@@ -567,11 +567,11 @@ class AlarmsEmpty(Gtk.Box):
def __init__(self):
Gtk.Box.__init__(self)
self.set_orientation(Gtk.Orientation.VERTICAL)
- gicon = Gio.ThemedIcon.new_with_default_fallbacks("document-open-recent-symbolic")
+ gicon = Gio.ThemedIcon.new_with_default_fallbacks("alarm-symbolic")
image = Gtk.Image.new_from_gicon(gicon, Gtk.IconSize.DIALOG)
image.set_sensitive (False)
text = Gtk.Label("")
- text.set_markup("<span color='darkgrey'>" + _("Select <b>New</b> to add a world clock") + "</span>")
+ text.set_markup("<span color='darkgrey'>" + _("Select <b>New</b> to add an alarm") + "</span>")
self.pack_start(Gtk.Label(""), True, True, 0)
self.pack_start(image, False, False, 6)
self.pack_start(text, False, False, 6)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]