1 class RefreshDialog(object):
3 self.notebook = gtk.Notebook()
5 info.pack_start(gtk.Label("Downloading complete DB from jamendo.com."), True, False)
6 info.pack_start(gtk.Label("This will download approximately 8 MB."), True, False)
7 self.force = hildon.GtkToggleButton(gtk.HILDON_SIZE_FINGER_HEIGHT)
8 self.force.set_label("Force refresh")
10 info.pack_start(self.force, True, False)
11 self.notebook.append_page(info)
14 self.progress = gtk.ProgressBar()
15 pcont.pack_start(self.progress, True, False)
16 self.notebook.append_page(pcont,
17 gtk.Label("Updating Database"))
18 self.progress.set_fraction(0)
19 self.progress.set_orientation(gtk.PROGRESS_LEFT_TO_RIGHT)
20 self.progress.set_text("Downloading...")
22 self.notebook.append_page(gtk.Label("Database refreshed."))
24 self.dialog = hildon.WizardDialog(None, "Refresh", self.notebook)
25 self.notebook.connect("switch-page", self.on_switch)
26 self.dialog.set_forward_page_func(self.forward_func)
30 def on_complete(self, status):
31 hildon.hildon_gtk_window_set_progress_indicator(self.dialog, 0)
33 self.progress.set_fraction(1)
34 self.progress.set_text("DB up to date.")
36 self.progress.set_fraction(0)
37 self.progress.set_text("Download failed.")
39 def on_progress(self, percent):
41 self.progress.set_text("Downloading...")
42 self.progress.set_fraction(percent/100.0)
44 def on_switch(self, notebook, page, num):
46 hildon.hildon_gtk_window_set_progress_indicator(self.dialog, 1)
47 refresh_dump(self.on_complete, self.on_progress, force=self.force.get_active())
53 def forward_func(self, notebook, current, userdata):
54 #page = notebook.get_nth_page(current)
61 self.dialog.show_all()