# HG changeset patch # User Goffi # Date 1278129661 -28800 # Node ID 1f0fd6f03e2bbe42f3d409abe63cb2b3dff22b7b # Parent 7c482ecac0ff81f9b46f21be8fb9262a3d4291c5 misc fixes diff -r 7c482ecac0ff -r 1f0fd6f03e2b frontends/primitivus/custom_widgets.py --- a/frontends/primitivus/custom_widgets.py Thu Jul 01 18:52:51 2010 +0800 +++ b/frontends/primitivus/custom_widgets.py Sat Jul 03 12:01:01 2010 +0800 @@ -118,7 +118,7 @@ try: self.content.remove(value) except ValueError: - pass + raise ValuError("%s ==> %s" % (str(value),str(self.content))) def getValue(self): """Convenience method to get the value selected as a string in single mode, or None""" @@ -140,7 +140,7 @@ self.content[:] = widgets if self.single and new_values: self.content[0].setState(True) - display_widget = urwid.BoxAdapter(self.list_box, min(len(new_values),5)) + display_widget = urwid.BoxAdapter(self.list_box, min(len(new_values),5) or 1) urwid.WidgetWrap.__init__(self, display_widget) def selectValue(self, value): diff -r 7c482ecac0ff -r 1f0fd6f03e2b frontends/primitivus/primitivus --- a/frontends/primitivus/primitivus Thu Jul 01 18:52:51 2010 +0800 +++ b/frontends/primitivus/primitivus Sat Jul 03 12:01:01 2010 +0800 @@ -66,7 +66,7 @@ QuickApp.__init__(self) #XXX: yes it's an unusual place for the constructor of a parent class, but the init order is important ## main loop setup ## - self.main_widget = self.__buildMainWidget() + self.main_widget = ProfileManager(self) self.loop = urwid.MainLoop(self.main_widget, const_PALETTE, event_loop=urwid.GLibEventLoop(), unhandled_input=self.key_handler) def start(self): @@ -77,14 +77,20 @@ raise urwid.ExitMainLoop() def __buildMainWidget(self): - #main_widget = urwid.Filler(ProfileManager(self)) - main_widget = ProfileManager(self) - return main_widget + self.contactList = ContactList(self, self.CM) + return self.contactList def plug_profile(self, profile_key='@DEFAULT@'): - self.loop.widget = self.contactList = ContactList(self, self.CM) + self.main_widget = self.loop.widget = self.__buildMainWidget() QuickApp.plug_profile(self, profile_key) - + + def removePopUp(self): + self.loop.widget = self.main_widget + + def showPopUp(self, pop_up_widget): + display_widget = urwid.Overlay(pop_up_widget, self.main_widget, 'center', ('relative', 40), 'middle', ('relative', 40)) + self.loop.widget = display_widget sat = PrimitivusApp() sat.start() + diff -r 7c482ecac0ff -r 1f0fd6f03e2b frontends/primitivus/profile_manager.py --- a/frontends/primitivus/profile_manager.py Thu Jul 01 18:52:51 2010 +0800 +++ b/frontends/primitivus/profile_manager.py Sat Jul 03 12:01:01 2010 +0800 @@ -63,35 +63,31 @@ profiles.sort() self.list_profile.changeValues(profiles) - def __showPopUp(self, pop_up_widget): - display_widget = urwid.Overlay(pop_up_widget, self.main_widget, 'center', ('relative', 40), 'middle', ('relative', 40)) - self._set_w(display_widget) - def cancelDialog(self, button): - self._set_w(self.main_widget) + self.host.removePopUp() def newProfile(self, button, edit): - self._set_w(self.main_widget) name = edit.get_edit_text() self.host.bridge.createProfile(name) self.__refillProfiles() self.list_profile.selectValue(name) + self.host.removePopUp() def deleteProfile(self, button): - self._set_w(self.main_widget) profile_name = self.list_profile.getValue() if profile_name: self.host.bridge.deleteProfile(profile_name) self.__refillProfiles() + self.host.removePopUp() def onNewProfile(self, e): pop_up_widget = InputDialog(_("New profile"), _("Please enter a new profile name"), cancel_cb=self.cancelDialog, ok_cb=self.newProfile) - self.__showPopUp(pop_up_widget) + self.host.showPopUp(pop_up_widget) def onDeleteProfile(self, e): pop_up_widget = ConfirmDialog(_("Are you sure you want to delete the profile %s ?") % self.list_profile.getValue(), no_cb=self.cancelDialog, yes_cb=self.deleteProfile) - self.__showPopUp(pop_up_widget) + self.host.showPopUp(pop_up_widget) def onProfileChange(self, list_wid): profile_name = list_wid.getValue() @@ -105,10 +101,10 @@ profile_name = self.list_profile.getValue() if not profile_name: pop_up_widget = Alert(_('No profile selected'), _('You need to create and select a profile before connecting'), ok_cb=self.cancelDialog) - self.__showPopUp(pop_up_widget) + self.host.showPopUp(pop_up_widget) elif profile_name[0] == '@': pop_up_widget = Alert(_('Bad profile name'), _("A profile name can't start with a @"), ok_cb=self.cancelDialog) - self.__showPopUp(pop_up_widget) + self.host.showPopUp(pop_up_widget) else: profile = self.host.bridge.getProfileName(profile_name) assert(profile) diff -r 7c482ecac0ff -r 1f0fd6f03e2b frontends/quick_frontend/quick_app.py --- a/frontends/quick_frontend/quick_app.py Thu Jul 01 18:52:51 2010 +0800 +++ b/frontends/quick_frontend/quick_app.py Sat Jul 03 12:01:01 2010 +0800 @@ -190,7 +190,6 @@ def presenceUpdate(self, jabber_id, show, priority, statuses, profile): if not self.__check_profile(profile): return - print "check ok" debug (_("presence update for %(jid)s (show=%(show)s, priority=%(priority)s, statuses=%(statuses)s) [profile:%(profile)s]") % {'jid':jabber_id, 'show':show, 'priority':priority, 'statuses':statuses, 'profile':profile}); from_jid=JID(jabber_id) debug ("from_jid.short=%(from_jid)s whoami.short=%(whoami)s" % {'from_jid':from_jid.short, 'whoami':self.profiles[profile]['whoami'].short}) @@ -284,7 +283,6 @@ if not self.__check_profile(profile): return debug (_("New Tarot Game")) - print "room: %s, hand: %s" % (room_jid,hand) if self.chat_wins.has_key(room_jid): self.chat_wins[room_jid].getGame("Tarot").newGame(hand)