+ def show_comics(self, widget):
+ dialog = gtk.Dialog("Configure Search Engines", None, gtk.DIALOG_DESTROY_WITH_PARENT | gtk.DIALOG_NO_SEPARATOR)
+ comiclist = comics.keys()
+ comiclist.sort()
+ buttonlist = {}
+ for comicid in comiclist:
+ buttonlist[comicid] = hildon.Button(gtk.HILDON_SIZE_AUTO_WIDTH | gtk.HILDON_SIZE_FINGER_HEIGHT, hildon.BUTTON_ARRANGEMENT_VERTICAL)
+ print buttonlist[comicid].get_name()
+
+ print buttonlist[comicid].set_alignment(0, 0.5, 0, 0.5)
+ active = False
+ for acomic in self.active_comics:
+ if acomic == comicid:
+ active = True
+ break
+ if active:
+ buttonlist[comicid].set_text(comics[comicid]['name'] + " *", comicid + ": click to remove")
+ buttonlist[comicid].connect("clicked", self.remove_comic)
+ else:
+ buttonlist[comicid].set_text(comics[comicid]['name'], comicid + ": click to add")
+ buttonlist[comicid].connect("clicked", self.add_comic)
+ dialog.vbox.pack_start(buttonlist[comicid], True, True, 0)
+
+
+ dialog.show_all()
+ dialog.run()
+ dialog.destroy()
+
+ def add_comic(self, widget):
+ print "add " + widget.get_title()
+ splt = string.split(widget.get_value(), ':', 1)
+ comicid = splt[0]
+ if os.path.isfile(activecomics) == True:
+ print "added " + comicid + " to " + str(self.active_comics)
+ try:
+ found = self.active_comics.index(comicid)
+ except:
+ self.active_comics.append(comicid)
+ dbf = open(activecomics, 'w')
+ dbw = csv.writer(dbf)
+ dbw.writerow(self.active_comics)
+ dbf.close()
+ widget.set_text(comics[comicid]['name'] + " *", comicid + ": click to remove")
+
+ def remove_comic(self, widget):
+ print "remove " + widget.get_title()
+ if len(self.active_comics) == 1:
+ return
+ splt = string.split(widget.get_value(), ':', 1)
+ comicid = splt[0]
+ if os.path.isfile(activecomics) == True:
+ print "removing " + comicid + " from " + str(self.active_comics)
+ del self.active_comics[self.active_comics.index(comicid)]
+ dbf = open(activecomics, 'w')
+ dbw = csv.writer(dbf)
+ dbw.writerow(self.active_comics)
+ dbf.close()
+ widget.set_text(comics[comicid]['name'], comicid + ": click to add")
+