def set_dialog_buttons(self): if self.add_line: self.box.pack(HLine(self.box), fill=True, padding=5) else: self.box.pack((3, 3)) self.button_box = HPanel(self.box) self.box.pack(self.button_box, fill=True) self.ok_btn = Button(self.button_box, '', onclick=self.on_ok, default=True, pid=self.action_button) self.cancel_btn = Button(self.button_box, '', onclick=self.on_cancel, pid=const.BUTTON_CANCEL) self.left_button_box = HPanel(self.button_box) self.button_box.pack(self.left_button_box, expand=True, fill=True) if const.is_mac(): self.button_box.pack(self.ok_btn, padding=5) self.button_box.pack(self.cancel_btn, padding=5) elif const.is_msw(): self.button_box.pack(self.ok_btn, padding=2) self.button_box.pack(self.cancel_btn) else: self.button_box.pack(self.cancel_btn, padding=2) self.button_box.pack(self.ok_btn)
def __init__(self, parent, value=0.0, range_val=(0.0, 1.0), step=0.01, digits=2, size=DEF_SIZE, width=0, onchange=None, onenter=None, check_focus=True): self.callback = onchange self.enter_callback = onenter spin_overlay = const.SPIN['overlay'] spin_sep = const.SPIN['sep'] if const.is_mac(): spin_overlay = False if not width and const.is_msw(): width = 5 wx.Panel.__init__(self, parent) if spin_overlay: if const.is_gtk(): self.entry = Entry(self, '', size=size, width=width, onchange=self._check_entry, onenter=self._entry_enter) size = (-1, self.entry.GetSize()[1]) self.entry.SetPosition((0, 0)) self.sb = SpinButton(self, size=size, onchange=self._check_spin) w_pos = self.entry.GetSize()[0] - 5 if spin_sep: self.line = HPanel(self) self.line.SetSize((1, self.sb.GetSize()[1] - 2)) self.line.set_bg(const.UI_COLORS['dark_shadow']) self.line.SetPosition((w_pos - 1, 1)) self.sb.SetPosition((w_pos, 0)) self.SetSize((-1, self.entry.GetSize()[1])) elif const.is_msw(): width += 2 self.entry = Entry(self, '', size=size, width=width, onchange=self._check_entry, onenter=self._entry_enter) size = (-1, self.entry.GetSize()[1] - 3) self.sb = SpinButton(self.entry, size=size, onchange=self._check_spin) w_pos = self.entry.GetSize()[0] - self.sb.GetSize()[0] - 3 self.sb.SetPosition((w_pos, 0)) w, h = self.entry.GetSize() self.entry.SetSize((w, h + 1)) else: self.box = wx.BoxSizer(const.HORIZONTAL) self.SetSizer(self.box) self.entry = Entry(self, '', size=size, width=width, onchange=self._check_entry, onenter=self._entry_enter) self.box.Add(self.entry, 0, wx.ALL) size = (-1, self.entry.GetSize()[1]) self.sb = SpinButton(self, size=size, onchange=self._check_spin) self.box.Add(self.sb, 0, wx.ALL) if check_focus: self.entry.Bind(wx.EVT_KILL_FOCUS, self._entry_lost_focus, self.entry) self.entry.Bind(wx.EVT_CONTEXT_MENU, self._ctxmenu, self.entry) self.set_step(step) self.set_range(range_val) self._set_digits(digits) self._set_value(value) self.flag = False self.Fit()
def set_dialog_buttons(self): if self.add_line: self.box.pack(HLine(self.box), fill=True, padding=5) else: self.box.pack((3, 3)) self.button_box = HPanel(self.box) self.box.pack(self.button_box, fill=True) self.ok_btn = Button(self.button_box, '', onclick=self.on_ok, pid=self.action_button) self.cancel_btn = Button(self.button_box, '', onclick=self.on_cancel, default=True, pid=const.BUTTON_CANCEL) self.left_button_box = HPanel(self.button_box) self.button_box.pack(self.left_button_box, expand=True, fill=True) if const.is_mac(): self.button_box.pack(self.ok_btn, padding=5) self.button_box.pack(self.cancel_btn, padding=5) elif const.is_msw(): self.button_box.pack(self.ok_btn, padding=2) self.button_box.pack(self.cancel_btn) else: self.button_box.pack(self.cancel_btn, padding=2) self.button_box.pack(self.ok_btn)
def __init__(self, parent, value=False, art_id=None, art_size=DEF_SIZE, text='', tooltip='', padding=0, decoration_padding=6, flat=True, native=not const.is_mac(), fontbold=False, fontsize=0, textplace=RIGHT, onchange=None): self.flat = flat self.decoration_padding = decoration_padding self.value = value self.onchange = onchange GenericGWidget.__init__(self, parent, tooltip) if native: rndr = renderer.NativeButtonRenderer else: rndr = renderer.ButtonRenderer self.renderer = rndr(self, art_id, art_size, text, padding, fontbold, fontsize, textplace)
def __init__(self, parent, value=0.0, range_val=(0.0, 1.0), step=0.01, digits=2, size=DEF_SIZE, width=0, spin_overlay=True, onchange=None, onenter=None, check_focus=True): self.callback = onchange self.enter_callback = onenter if const.is_mac(): spin_overlay = False if not width and const.is_msw(): width = 5 wx.Panel.__init__(self, parent) if spin_overlay: if const.is_gtk(): self.entry = Entry(self, '', size=size, width=width, onchange=self._check_entry, onenter=self._entry_enter) size = (-1, self.entry.GetSize()[1]) self.entry.SetPosition((0, 0)) self.line = HPanel(self) self.sb = SpinButton(self, size=size, onchange=self._check_spin) w_pos = self.entry.GetSize()[0] - 5 self.line.SetSize((1, self.sb.GetSize()[1] - 2)) self.line.set_bg(const.UI_COLORS['dark_shadow']) self.line.SetPosition((w_pos - 1, 1)) self.sb.SetPosition((w_pos, 0)) self.SetSize((-1, self.entry.GetSize()[1])) elif const.is_msw(): width += 2 self.entry = Entry(self, '', size=size, width=width, onchange=self._check_entry, onenter=self._entry_enter) size = (-1, self.entry.GetSize()[1] - 3) self.sb = SpinButton(self.entry, size=size, onchange=self._check_spin) w_pos = self.entry.GetSize()[0] - self.sb.GetSize()[0] - 3 self.sb.SetPosition((w_pos, 0)) w, h = self.entry.GetSize() self.entry.SetSize((w, h + 1)) else: self.box = wx.BoxSizer(const.HORIZONTAL) self.SetSizer(self.box) self.entry = Entry(self, '', size=size, width=width, onchange=self._check_entry, onenter=self._entry_enter) self.box.Add(self.entry, 0, wx.ALL) size = (-1, self.entry.GetSize()[1]) self.sb = SpinButton(self, size=size, onchange=self._check_spin) self.box.Add(self.sb, 0, wx.ALL) if check_focus: self.entry.Bind(wx.EVT_KILL_FOCUS, self._entry_lost_focus, self.entry) self.entry.Bind(wx.EVT_CONTEXT_MENU, self._ctxmenu, self.entry) self.set_step(step) self.set_range(range_val) self._set_digits(digits) self._set_value(value) self.flag = False self.Fit()