From 171f1677d274b107b84946b814b2cdd551541609 Mon Sep 17 00:00:00 2001 From: Goffi Date: Mon, 8 Sep 2014 18:32:36 +0200 Subject: [PATCH] Primitivus (xmlui): fixed window closing on save params + removed now unused onConfigureRoom in Chat --- frontends/src/primitivus/chat.py | 8 -------- frontends/src/primitivus/primitivus | 3 ++- frontends/src/primitivus/xmlui.py | 5 ++++- 3 files changed, 6 insertions(+), 10 deletions(-) diff --git a/frontends/src/primitivus/chat.py b/frontends/src/primitivus/chat.py index c7504d2f..a35328d1 100644 --- a/frontends/src/primitivus/chat.py +++ b/frontends/src/primitivus/chat.py @@ -26,7 +26,6 @@ from urwid_satext.files_management import FileDialog from sat_frontends.quick_frontend.quick_chat import QuickChat from sat_frontends.primitivus.card_game import CardGame from sat_frontends.quick_frontend.quick_utils import escapePrivate, unescapePrivate -from sat_frontends.primitivus import xmlui from sat_frontends.primitivus.constants import Const as C from sat_frontends.primitivus.keys import action_key_map as a_key import time @@ -372,13 +371,6 @@ class Chat(urwid.WidgetWrap, QuickChat): else: self.host.bridge.tarotGameCreate(self.id, list(self.occupants), self.host.profile) - def onConfigureRoom(self, menu): - def gotUI(xml_ui): - self.host.addWindow(xmlui.create(self.host, xml_ui)) - def configureError(failure): - self.host.showPopUp(sat_widgets.Alert(failure.fullname, failure.message, ok_cb=self.host.removePopUp)) - self.host.bridge.configureRoom(self.id, self.host.profile, callback=gotUI, errback=configureError) - def onSendFileRequest(self, menu): # TODO: move this to core with dynamic menus dialog = FileDialog(ok_cb=self.onFileSelected, cancel_cb=self.host.removePopUp) diff --git a/frontends/src/primitivus/primitivus b/frontends/src/primitivus/primitivus index 4643cc82..93951457 100755 --- a/frontends/src/primitivus/primitivus +++ b/frontends/src/primitivus/primitivus @@ -657,7 +657,8 @@ class PrimitivusApp(QuickApp, InputHistory): def onParam(self, menu): def success(params): - self.addWindow(xmlui.create(self, xml_data=params)) + ui = xmlui.create(self, xml_data=params) + ui.show() def failure(error): self.showPopUp(sat_widgets.Alert(_("Error"), _("Can't get parameters (%s)") % error, ok_cb=self.removePopUp)) diff --git a/frontends/src/primitivus/xmlui.py b/frontends/src/primitivus/xmlui.py index fd73f1d4..d9e16074 100644 --- a/frontends/src/primitivus/xmlui.py +++ b/frontends/src/primitivus/xmlui.py @@ -20,6 +20,7 @@ from sat.core.i18n import _ import urwid import copy +from sat.core import exceptions from urwid_satext import sat_widgets from urwid_satext import files_management from sat.core.log import getLogger @@ -405,8 +406,10 @@ class XMLUIPanel(xmlui.XMLUIPanel, urwid.WidgetWrap): def _xmluiClose(self): if self._dest == 'window': self.host.removeWindow() - else: + elif self._dest == 'popup': self.host.removePopUp() + else: + raise exceptions.InternalError("self._dest unknown, are you sure you have called XMLUI.show ?") class XMLUIDialog(xmlui.XMLUIDialog):