def gm_show_question(aMessage='programmer forgot to specify question', aTitle='generic user question dialog', cancel_button=False, question=None, title=None): if cancel_button: style = wx.YES_NO | wx.CANCEL | wx.ICON_QUESTION | wx.STAY_ON_TOP else: style = wx.YES_NO | wx.ICON_QUESTION | wx.STAY_ON_TOP if question is None: question = aMessage if title is None: title = aTitle title = gmTools.decorate_window_title(title) dlg = wx.MessageDialog(None, question, title, style) btn_pressed = dlg.ShowModal() dlg.DestroyLater() if btn_pressed == wx.ID_YES: return True elif btn_pressed == wx.ID_NO: return False else: return None
def __init__(self, *args, **kwargs): caption = kwargs['caption'] question = kwargs['question'] button_defs = kwargs['button_defs'][:2] del kwargs['caption'] del kwargs['question'] del kwargs['button_defs'] try: show_checkbox = kwargs['show_checkbox'] del kwargs['show_checkbox'] except KeyError: show_checkbox = False try: checkbox_msg = kwargs['checkbox_msg'] del kwargs['checkbox_msg'] except KeyError: checkbox_msg = None try: checkbox_tooltip = kwargs['checkbox_tooltip'] del kwargs['checkbox_tooltip'] except KeyError: checkbox_tooltip = None wxg2ButtonQuestionDlg.wxg2ButtonQuestionDlg.__init__( self, *args, **kwargs) self.SetTitle(title=gmTools.decorate_window_title(caption)) self._LBL_question.SetLabel(label=question) if not show_checkbox: self._CHBOX_dont_ask_again.Hide() else: if checkbox_msg is not None: self._CHBOX_dont_ask_again.SetLabel(checkbox_msg) if checkbox_tooltip is not None: self._CHBOX_dont_ask_again.SetToolTip(checkbox_tooltip) buttons = [self._BTN_1, self._BTN_2] for idx in range(len(button_defs)): buttons[idx].SetLabel(label=button_defs[idx]['label']) buttons[idx].SetToolTip(button_defs[idx]['tooltip']) try: if button_defs[idx]['default'] is True: buttons[idx].SetDefault() buttons[idx].SetFocus() except KeyError: pass self.Fit()
def gm_show_warning(aMessage=None, aTitle=None): if aMessage is None: aMessage = _('programmer forgot to specify warning') if aTitle is None: aTitle = _('generic warning message') dlg = wx.MessageDialog(parent=None, message=aMessage, caption=gmTools.decorate_window_title(aTitle), style=wx.OK | wx.ICON_EXCLAMATION | wx.STAY_ON_TOP) dlg.ShowModal() dlg.DestroyLater() return True
def __init__(self, *args, **kwargs): try: title = kwargs['title'] del kwargs['title'] except KeyError: title = None try: msg = kwargs['msg'] del kwargs['msg'] except KeyError: msg = None try: data = kwargs['data'] del kwargs['data'] except KeyError: data = None try: self.original_text = kwargs['text'] del kwargs['text'] except KeyError: self.original_text = None wxgMultilineTextEntryDlg.wxgMultilineTextEntryDlg.__init__( self, *args, **kwargs) if title is not None: self.SetTitle(gmTools.decorate_window_title(title)) if self.original_text is not None: self._TCTRL_text.SetValue(self.original_text) self._BTN_restore.Enable(True) if msg is None: self._LBL_msg.Hide() else: self._LBL_msg.SetLabel(msg) self.Layout() self.Refresh() if data is None: self._TCTRL_data.Hide() else: self._TCTRL_data.SetValue(data) self.Layout() self.Refresh() self._TCTRL_text.SetFocus()
def gm_show_info(aMessage=None, aTitle=None, info=None, title=None): if info is None: info = aMessage if info is None: info = _('programmer forgot to specify info message') if title is None: title = aTitle if title is None: title = _('generic info message') dlg = wx.MessageDialog(parent=None, message=info, caption=gmTools.decorate_window_title(title), style=wx.OK | wx.ICON_INFORMATION | wx.STAY_ON_TOP) dlg.ShowModal() dlg.DestroyLater() return True
def gm_show_error(aMessage=None, aTitle=None, error=None, title=None): if error is None: error = aMessage if error is None: error = _('programmer forgot to specify error message') error += _("\n\nPlease consult the error log for all the gory details !") if title is None: title = aTitle if title is None: title = _('generic error message') dlg = wx.MessageDialog(parent=None, message=error, caption=gmTools.decorate_window_title(title), style=wx.OK | wx.ICON_ERROR | wx.STAY_ON_TOP) dlg.ShowModal() dlg.DestroyLater() return True