mirror of
https://github.com/virt-manager/virt-manager.git
synced 2025-02-25 18:55:27 -06:00
error: new helper function to embed customized widget into dialog
helper function: show_info_with_widget() Widget argument has to be type of Gtk.VBox
This commit is contained in:
parent
57345cd61a
commit
ee7794a616
@ -28,11 +28,15 @@ from virtManager.baseclass import vmmGObject
|
||||
|
||||
|
||||
def _launch_dialog(dialog, primary_text, secondary_text, title,
|
||||
sync=True):
|
||||
widget=None, sync=True):
|
||||
dialog.set_property("text", primary_text)
|
||||
dialog.format_secondary_text(secondary_text or None)
|
||||
dialog.set_title(title)
|
||||
|
||||
if widget:
|
||||
# widget is of type Gtk.VBox
|
||||
dialog.get_content_area().add(widget)
|
||||
|
||||
res = False
|
||||
if sync:
|
||||
res = dialog.run()
|
||||
@ -92,7 +96,7 @@ class vmmErrorDialog(vmmGObject):
|
||||
###################################
|
||||
|
||||
def _simple_dialog(self, dialog_type, buttons, text1,
|
||||
text2, title, async=False):
|
||||
text2, title, widget=None, async=False):
|
||||
|
||||
dialog = Gtk.MessageDialog(self.get_parent(),
|
||||
flags=Gtk.DialogFlags.DESTROY_WITH_PARENT,
|
||||
@ -104,6 +108,7 @@ class vmmErrorDialog(vmmGObject):
|
||||
|
||||
return _launch_dialog(self._simple,
|
||||
text1, text2 or "", title or "",
|
||||
widget=widget,
|
||||
sync=not async)
|
||||
|
||||
def val_err(self, text1, text2=None, title=_("Input Error"), async=True):
|
||||
@ -121,13 +126,19 @@ class vmmErrorDialog(vmmGObject):
|
||||
self._simple_dialog(dtype, buttons,
|
||||
str(text1),
|
||||
text2 and str(text2) or "",
|
||||
str(title), async)
|
||||
str(title), None, async)
|
||||
return False
|
||||
|
||||
def show_info(self, text1, text2=None, title="", async=True):
|
||||
dtype = Gtk.MessageType.INFO
|
||||
buttons = Gtk.ButtonsType.OK
|
||||
self._simple_dialog(dtype, buttons, text1, text2, title, async)
|
||||
self._simple_dialog(dtype, buttons, text1, text2, title, None, async)
|
||||
return False
|
||||
|
||||
def show_info_with_widget(self, text1, widget, text2=None, title="", async=True):
|
||||
dtype = Gtk.MessageType.INFO
|
||||
buttons = Gtk.ButtonsType.OK
|
||||
self._simple_dialog(dtype, buttons, text1, text2, title, widget, async)
|
||||
return False
|
||||
|
||||
def yes_no(self, text1, text2=None, title=None):
|
||||
|
Loading…
Reference in New Issue
Block a user