class _UsageDialog(Dialog): _width = 650 _height = 250 def __init__(self, usages, title, checkbox_label, model=ResourceImportListModel): Dialog.__init__(self, title, size=(self._width, self._height)) self._sizer = VerticalSizer() self._create_controls(usages, checkbox_label, model) self._create_horizontal_line(self._sizer) self._create_buttons(self._sizer) self.SetSizer(self._sizer) def _create_controls(self, usages, checkbox_label, model): self._sizer.add_with_padding(Label(self, label="Usages:")) model = model(usages) self._sizer.add_expanding(VirtualList(self, model.headers, model)) self._add_usages_modifying_help(usages) self._checkbox = wx.CheckBox(self, label=checkbox_label) self._checkbox.SetValue(True) self._sizer.add_with_padding(self._checkbox) def _add_usages_modifying_help(self, usages): if any(u for u in usages if not u.can_be_renamed): help = Label(self, label='Highlighted imports are not modified because they ' 'contain variables in resource file name.') help.Wrap(self._width) help.SetForegroundColour('red') self._sizer.add_with_padding(help) def show(self): confirmed = self.ShowModal() == wx.ID_OK return confirmed, self._checkbox.IsChecked()
class _ConfirmationWithCheckbox(Dialog): _width = 650 _height = 250 def __init__(self, controller): Dialog.__init__(self, self._title, size=(self._width, self._height)) self._controller = controller self._sizer = VerticalSizer() self._create_controls() self._create_horizontal_line(self._sizer) self._create_buttons(self._sizer) self.SetSizer(self._sizer) def _create_controls(self): self._show_usages() self._checkbox = wx.CheckBox(self, label=self._checkbox_label) self._checkbox.SetValue(True) self._sizer.add_with_padding(self._checkbox) def _show_usages(self): usages = list(self._controller.execute(FindResourceUsages())) if usages: self._sizer.add_with_padding(Label(self, label="Usages:")) model = ResourceImportListModel(usages) self._sizer.add_expanding(VirtualList(self, model.headers, model)) self._add_usages_modifying_help(usages) def _add_usages_modifying_help(self, usages): if any(u for u in usages if not u.can_be_renamed): help = Label(self, label='Highlighted imports are not modified because they ' 'contain variables in resource file name.') help.Wrap(self._width) help.SetForegroundColour('red') self._sizer.add_with_padding(help)
def _create_ui(self, size): panel = wx.Panel(self) panel.SetBackgroundColour(POPUP_BACKGROUND) szr = VerticalSizer() self._details = HtmlWindow(self, size=size) szr.add_expanding(self._details) panel.SetSizer(szr) panel.Fit() return panel
def _create_ui(self, size): panel = wx.MiniFrame(self) panel.SetBackgroundColour(POPUP_BACKGROUND) szr = VerticalSizer() self._details = HtmlWindow(self, size=size) szr.add_expanding(self._details) panel.SetSizer(szr) panel.Fit() return panel
def _create_ui(self, size): if wx.VERSION >= (3, 0, 3, ''): # DEBUG wxPhoenix panel = wx.MiniFrame(self) # DEBUG wx.Panel would not detach on wxPython 4 else: panel = wx.Panel(self) panel.SetBackgroundColour(POPUP_BACKGROUND) szr = VerticalSizer() self._details = HtmlWindow(self, size=size) szr.add_expanding(self._details) panel.SetSizer(szr) panel.Fit() return panel
def _create_ui(self, size, detachable, autohide): panel = wx.Panel(self) panel.SetBackgroundColour(POPUP_BACKGROUND) szr = VerticalSizer() self._details = HtmlWindow(self, size=size) if detachable: self._details.Bind(wx.EVT_LEFT_UP, self._detach) szr.add_expanding(self._details) panel.SetSizer(szr) panel.Fit() if autohide: self._get_autohide_component(panel).Bind(wx.EVT_LEAVE_WINDOW, self.hide)
def _create_ui(self, size, detachable, autohide): panel = wx.Panel(self) panel.SetBackgroundColour(POPUP_BACKGROUND) szr = VerticalSizer() if detachable: szr.add(ButtonWithHandler(panel, 'Detach', width=size[0], handler=self._detach)) size = (size[0], size[1]-25) self._details = HtmlWindow(self, size=size) szr.add_expanding(self._details) panel.SetSizer(szr) panel.Fit() if autohide: self._get_autohide_component(panel).Bind(wx.EVT_LEAVE_WINDOW, self.hide)
class _UsageDialog(Dialog): _width = 650 _height = 250 def __init__(self, usages, title, checkbox_label, model=ResourceImportListModel): Dialog.__init__(self, title, size=(self._width, self._height)) # set Left to Right direction (while we don't have localization) self.SetLayoutDirection(wx.Layout_LeftToRight) self._sizer = VerticalSizer() self._create_controls(usages, checkbox_label, model) self._create_horizontal_line(self._sizer) self._create_buttons(self._sizer) self.SetSizer(self._sizer) def _create_controls(self, usages, checkbox_label, model): self._sizer.add_with_padding(Label(self, label="Usages:")) model = model(usages) self._sizer.add_expanding(VirtualList(self, model.headers, model)) self._add_usages_modifying_help(usages) self._checkbox = wx.CheckBox(self, label=checkbox_label) self._checkbox.SetValue(True) self._sizer.add_with_padding(self._checkbox) def _add_usages_modifying_help(self, usages): if any(u for u in usages if not u.can_be_renamed): help = Label( self, label='Highlighted imports are not modified because they ' 'contain variables in resource file name.') help.Wrap(self._width) help.SetForegroundColour('red') self._sizer.add_with_padding(help) def show(self): confirmed = self.ShowModal() == wx.ID_OK return confirmed, self._checkbox.IsChecked()
def __init__(self, title, content): Dialog.__init__(self, title) szr = VerticalSizer() szr.add_expanding(HtmlWindow(self, text=content, size=self.Size)) self.SetSizer(szr)