Example #1
0
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()
Example #2
0
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)
Example #3
0
 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
Example #4
0
 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
Example #6
0
 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
Example #7
0
 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)
Example #8
0
 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()
Example #10
0
 def __init__(self, title, content):
     Dialog.__init__(self, title)
     szr = VerticalSizer()
     szr.add_expanding(HtmlWindow(self, text=content, size=self.Size))
     self.SetSizer(szr)
 def __init__(self, title, content):
     Dialog.__init__(self, title)
     szr = VerticalSizer()
     szr.add_expanding(HtmlWindow(self, text=content, size=self.Size))
     self.SetSizer(szr)