From c33659c6f77538ecfaa89534ca46f5903f9c612a Mon Sep 17 00:00:00 2001 From: alfrix Date: Fri, 1 Apr 2022 20:24:02 -0300 Subject: [PATCH] gtk: cleanup andoptimize image handling, incomplete themes should now work --- ks_includes/KlippyGtk.py | 113 ++++++++-------------------------- ks_includes/files.py | 3 - ks_includes/widgets/keypad.py | 6 +- panels/base_panel.py | 24 ++++---- panels/bed_level.py | 16 ++--- panels/bed_mesh.py | 2 +- panels/fine_tune.py | 12 ++-- panels/job_status.py | 18 +++--- panels/main_menu.py | 2 +- panels/print.py | 6 +- panels/splash_screen.py | 2 +- panels/temperature.py | 6 +- 12 files changed, 71 insertions(+), 139 deletions(-) diff --git a/ks_includes/KlippyGtk.py b/ks_includes/KlippyGtk.py index 66b89a1d..a9b72564 100644 --- a/ks_includes/KlippyGtk.py +++ b/ks_includes/KlippyGtk.py @@ -7,8 +7,6 @@ import pathlib gi.require_version("Gtk", "3.0") from gi.repository import Gdk, GdkPixbuf, Gio, Gtk, Pango -klipperscreendir = pathlib.Path(__file__).parent.resolve().parent - class KlippyGtk: labels = {} keyboard_ratio = .22 @@ -19,7 +17,8 @@ class KlippyGtk: self.screen = screen self.width = width self.height = height - self.theme = theme + self.themedir = os.path.join(pathlib.Path(__file__).parent.resolve().parent, "styles", theme, "images") + if self.screen.vertical_mode: self.font_ratio = [33, 49] else: @@ -114,61 +113,23 @@ class KlippyGtk: la.get_style_context().add_class(style) return la - def ImageLabel(self, image_name, text, size=20, style=False, width_scale=.32, height_scale=.32): - box1 = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, spacing=15) - pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_scale( - os.path.join(klipperscreendir, "styles", self.theme, "images", str(image_name) + ".svg"), - int(round(self.img_width * width_scale)), int(round(self.img_height * height_scale)), True) - - image = Gtk.Image.new_from_pixbuf(pixbuf) - - label = Gtk.Label() - label.set_markup(text) - box1.add(image) - box1.add(label) - - if style is not False: - ctx = box1.get_style_context() - ctx.add_class(style) - - return {"l": label, "b": box1} - - def ImageMenuButton(self, image_name, text, size=20, style=False, width_scale=.32, height_scale=.32, popover=False): - box1 = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, spacing=15) - pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_scale( - os.path.join(klipperscreendir, "styles", self.theme, "images", str(image_name) + ".svg"), - int(round(self.img_width * width_scale)), int(round(self.img_height * height_scale)), True) - - image = Gtk.Image.new_from_pixbuf(pixbuf) - - mb = Gtk.MenuButton(label="", popover=popover) - label = mb.get_label() - box1.add(image) - box1.add(mb) - - if style is not False: - ctx = box1.get_style_context() - ctx.add_class(style) - - return {"l": label, "mb": mb, "b": box1} - - def Image(self, image_name, style=False, width_scale=1, height_scale=1): - pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_scale( - os.path.join(klipperscreendir, "styles", self.theme, "images", str(image_name)), - int(round(self.img_width * width_scale)), int(round(self.img_height * height_scale)), True) - - return Gtk.Image.new_from_pixbuf(pixbuf) - - def ImageFromFile(self, filename, style=False, width_scale=1, height_scale=1): - pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_scale( - filename, int(round(self.img_width * width_scale)), int(round(self.img_height * height_scale)), True) - - return Gtk.Image.new_from_pixbuf(pixbuf) + def Image(self, image_name, scale=1): + filename = os.path.join(self.themedir, str(image_name) + ".svg") + if os.path.exists(filename): + pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_scale(filename, + int(round(self.img_width * scale)), + int(round(self.img_height * scale)), + True) + return Gtk.Image.new_from_pixbuf(pixbuf) + else: + logging.error("Unable to find image %s", filename) + return Gtk.Image() def PixbufFromFile(self, filename, style=False, width_scale=1, height_scale=1): - pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_scale( - filename, int(round(self.img_width * width_scale)), int(round(self.img_height * height_scale)), True) - + pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_scale(filename, + int(round(self.img_width * width_scale)), + int(round(self.img_height * height_scale)), + True) return pixbuf def PixbufFromHttp(self, resource, style=False, width_scale=1, height_scale=1): @@ -176,9 +137,10 @@ class KlippyGtk: if response is False: return None stream = Gio.MemoryInputStream.new_from_data(response, None) - pixbuf = GdkPixbuf.Pixbuf.new_from_stream_at_scale( - stream, int(round(self.img_width * width_scale)), int(round(self.img_height * height_scale)), True) - + pixbuf = GdkPixbuf.Pixbuf.new_from_stream_at_scale(stream, + int(round(self.img_width * width_scale)), + int(round(self.img_height * height_scale)), + True) return pixbuf def ProgressBar(self, style=False): @@ -202,31 +164,16 @@ class KlippyGtk: b.connect("clicked", self.screen.reset_screensaver_timeout) return b - def ButtonImage(self, image_name, label=None, style=None, width_scale=1.38, height_scale=1.38, + def ButtonImage(self, image_name, label=None, style=None, scale=1.38, position=Gtk.PositionType.TOP, word_wrap=True): - filename = os.path.join(klipperscreendir, "styles", self.theme, "images", str(image_name) + ".svg") - if not os.path.exists(filename): - logging.error("Unable to find button image (theme, image): (%s, %s)" % (self.theme, str(image_name))) - filename = os.path.join(klipperscreendir, "styles", self.theme, "images", "warning.svg") b = Gtk.Button(label=label) - - if os.path.exists(filename): - pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_scale( - filename, - int(round(self.img_width * width_scale)), - int(round(self.img_height * height_scale)), - True - ) - img = Gtk.Image.new_from_pixbuf(pixbuf) - b.set_image(img) - b.set_hexpand(True) b.set_vexpand(True) b.set_can_focus(False) + b.set_image(self.Image(image_name, scale)) b.set_image_position(position) b.set_always_show_image(True) - b.props.relief = Gtk.ReliefStyle.NONE if word_wrap is True: try: @@ -276,25 +223,15 @@ class KlippyGtk: return dialog - def ToggleButtonImage(self, image_name, label, style=False, width_scale=1.38, height_scale=1.38): - filename = os.path.join(klipperscreendir, "styles", self.theme, "images", str(image_name) + ".svg") - pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_scale( - filename, - int(round(self.img_width * width_scale)), - int(round(self.img_height * height_scale)), - True - ) - - img = Gtk.Image.new_from_pixbuf(pixbuf) + def ToggleButtonImage(self, image_name, label, style=False, scale=1.38): b = Gtk.ToggleButton(label=label) - b.set_image(img) b.set_hexpand(True) b.set_vexpand(True) b.set_can_focus(False) + b.set_image(self.Image(image_name, scale)) b.set_image_position(Gtk.PositionType.TOP) b.set_always_show_image(True) - b.props.relief = Gtk.ReliefStyle.NONE if style is not False: ctx = b.get_style_context() diff --git a/ks_includes/files.py b/ks_includes/files.py index 7a365317..57813ca1 100644 --- a/ks_includes/files.py +++ b/ks_includes/files.py @@ -151,9 +151,6 @@ class KlippyFiles(): return False def get_thumbnail_location(self, filename): - if not self.has_thumbnail(filename): - return None - thumb = self.files[filename]['thumbnails'][0] if thumb['local'] is False: return ['http', thumb['path']] diff --git a/ks_includes/widgets/keypad.py b/ks_includes/widgets/keypad.py index 3a111beb..267c6813 100644 --- a/ks_includes/widgets/keypad.py +++ b/ks_includes/widgets/keypad.py @@ -34,9 +34,9 @@ class Keypad(Gtk.Box): for i in range(len(keys)): id = 'button_' + str(keys[i][0]) if keys[i][0] == "B": - self.labels[id] = self._gtk.ButtonImage("backspace", None, None, 1, 1) + self.labels[id] = self._gtk.ButtonImage("backspace", None, None, 1) elif keys[i][0] == "E": - self.labels[id] = self._gtk.ButtonImage("complete", None, None, 1, 1) + self.labels[id] = self._gtk.ButtonImage("complete", None, None, 1) else: self.labels[id] = Gtk.Button(keys[i][0]) self.labels[id].connect('clicked', self.update_entry, keys[i][0]) @@ -48,7 +48,7 @@ class Keypad(Gtk.Box): self.labels['entry'].props.xalign = 0.5 self.labels['entry'].connect("activate", self.update_entry, "E") - b = self._gtk.ButtonImage('cancel', _('Close'), None, 1, 1) + b = self._gtk.ButtonImage('cancel', _('Close'), None, 1) b.connect("clicked", close_function) self.add(self.labels['entry']) diff --git a/panels/base_panel.py b/panels/base_panel.py index a9390e60..b8dfbede 100644 --- a/panels/base_panel.py +++ b/panels/base_panel.py @@ -34,24 +34,22 @@ class BasePanel(ScreenPanel): self.control_grid.set_size_request(action_bar_width, action_bar_height) self.control_grid.get_style_context().add_class('action_bar') - self.control['back'] = self._gtk.ButtonImage('back', None, None, 1, 1) + self.control['back'] = self._gtk.ButtonImage('back', None, None, 1) self.control['back'].connect("clicked", self.back) - self.control['home'] = self._gtk.ButtonImage('main', None, None, 1, 1) + self.control['home'] = self._gtk.ButtonImage('main', None, None, 1) self.control['home'].connect("clicked", self.menu_return, True) if len(self._config.get_printers()) > 1: - self.control['printer_select'] = self._gtk.ButtonImage( - 'shuffle', None, None, 1, 1) + self.control['printer_select'] = self._gtk.ButtonImage('shuffle', None, None, 1) self.control['printer_select'].connect("clicked", self._screen.show_printer_select) - self.control['macro_shortcut'] = self._gtk.ButtonImage( - 'custom-script', None, None, 1, 1) + self.control['macro_shortcut'] = self._gtk.ButtonImage('custom-script', None, None, 1) self.control['macro_shortcut'].connect("clicked", self.menu_item_clicked, "gcode_macros", { "name": "Macros", "panel": "gcode_macros" }) - self.control['estop'] = self._gtk.ButtonImage('emergency', None, None, 1, 1) + self.control['estop'] = self._gtk.ButtonImage('emergency', None, None, 1) self.control['estop'].connect("clicked", self.emergency_stop) self.locations = { @@ -151,20 +149,20 @@ class BasePanel(ScreenPanel): if device.startswith("extruder"): if self._printer.extrudercount > 1: if device == "extruder": - ext_img = self._gtk.Image("extruder-0.svg", None, .5, .5) + ext_img = self._gtk.Image("extruder-0", .5) else: - ext_img = self._gtk.Image("extruder-%s.svg" % device[8:], None, .5, .5) + ext_img = self._gtk.Image("extruder-%s" % device[8:], .5) else: - ext_img = self._gtk.Image("extruder.svg", None, .5, .5) + ext_img = self._gtk.Image("extruder", .5) self.labels[device + '_box'].pack_start(ext_img, True, True, 3) elif device.startswith("heater_bed"): - bed_img = self._gtk.Image("bed.svg", None, .5, .5) + bed_img = self._gtk.Image("bed", .5) self.labels[device + '_box'].pack_start(bed_img, True, True, 3) elif device.startswith("temperature_fan"): - fan_img = self._gtk.Image("fan.svg", None, .5, .5) + fan_img = self._gtk.Image("fan", .5) self.labels[device + '_box'].pack_start(fan_img, True, True, 3) else: - temp_img = self._gtk.Image("heat-up.svg", None, .5, .5) + temp_img = self._gtk.Image("heat-up", .5) self.labels[device + '_box'].pack_start(temp_img, True, True, 3) self.labels[device + '_box'].pack_start(self.labels[device], True, True, 0) diff --git a/panels/bed_level.py b/panels/bed_level.py index 8401f9b0..6fe8ce48 100644 --- a/panels/bed_level.py +++ b/panels/bed_level.py @@ -114,14 +114,14 @@ class BedLevelPanel(ScreenPanel): logging.debug("Using %d-screw locations [x,y] [%dx%d]", len(self.screws), self.x_cnt, self.y_cnt) - self.labels['bl'] = self._gtk.ButtonImage("bed-level-t-l", None, None, 2.5, 2.5) - self.labels['br'] = self._gtk.ButtonImage("bed-level-t-r", None, None, 2.5, 2.5) - self.labels['fl'] = self._gtk.ButtonImage("bed-level-b-l", None, None, 2.5, 2.5) - self.labels['fr'] = self._gtk.ButtonImage("bed-level-b-r", None, None, 2.5, 2.5) - self.labels['lm'] = self._gtk.ButtonImage("bed-level-l-m", None, None, 2.5, 2.5) - self.labels['rm'] = self._gtk.ButtonImage("bed-level-r-m", None, None, 2.5, 2.5) - self.labels['fm'] = self._gtk.ButtonImage("bed-level-b-m", None, None, 2.5, 2.5) - self.labels['bm'] = self._gtk.ButtonImage("bed-level-t-m", None, None, 2.5, 2.5) + self.labels['bl'] = self._gtk.ButtonImage("bed-level-t-l", None, None, 2.5) + self.labels['br'] = self._gtk.ButtonImage("bed-level-t-r", None, None, 2.5) + self.labels['fl'] = self._gtk.ButtonImage("bed-level-b-l", None, None, 2.5) + self.labels['fr'] = self._gtk.ButtonImage("bed-level-b-r", None, None, 2.5) + self.labels['lm'] = self._gtk.ButtonImage("bed-level-l-m", None, None, 2.5) + self.labels['rm'] = self._gtk.ButtonImage("bed-level-r-m", None, None, 2.5) + self.labels['fm'] = self._gtk.ButtonImage("bed-level-b-m", None, None, 2.5) + self.labels['bm'] = self._gtk.ButtonImage("bed-level-t-m", None, None, 2.5) bedgrid = Gtk.Grid() bedgrid.attach(self.labels['bl'], 1, 0, 1, 1) diff --git a/panels/bed_mesh.py b/panels/bed_mesh.py index c2816e97..e0f77cdb 100644 --- a/panels/bed_mesh.py +++ b/panels/bed_mesh.py @@ -39,7 +39,7 @@ class BedMeshPanel(ScreenPanel): addprofile = self._gtk.ButtonImage("increase", " %s" % _("Add bed mesh profile"), - "color1", .5, .5, Gtk.PositionType.LEFT, False) + "color1", .5, Gtk.PositionType.LEFT, False) addprofile.connect("clicked", self.show_create_profile) addprofile.set_size_request(60, 0) addprofile.set_hexpand(False) diff --git a/panels/fine_tune.py b/panels/fine_tune.py index e62e2c99..037ba572 100644 --- a/panels/fine_tune.py +++ b/panels/fine_tune.py @@ -82,17 +82,17 @@ class FineTunePanel(ScreenPanel): self.labels['z+'] = self._gtk.ButtonImage("z-farther", _("Z+"), "color1") self.labels['z-'] = self._gtk.ButtonImage("z-closer", _("Z-"), "color1") self.labels['zoffset'] = self._gtk.ButtonImage("refresh", " 0.00" + _("mm"), - "color1", .6, .6, Gtk.PositionType.LEFT, False) + "color1", .6, Gtk.PositionType.LEFT, False) self.labels['speed+'] = self._gtk.ButtonImage("speed+", _("Speed +"), "color3") self.labels['speed-'] = self._gtk.ButtonImage("speed-", _("Speed -"), "color3") self.labels['speedfactor'] = self._gtk.ButtonImage("refresh", " 100%", - "color3", .6, .6, Gtk.PositionType.LEFT, False) + "color3", .6, Gtk.PositionType.LEFT, False) self.labels['extrude+'] = self._gtk.ButtonImage("flow+", _("Extrusion +"), "color4") self.labels['extrude-'] = self._gtk.ButtonImage("flow-", _("Extrusion -"), "color4") self.labels['extrudefactor'] = self._gtk.ButtonImage("refresh", " 100%", - "color4", .6, .6, Gtk.PositionType.LEFT, False) + "color4", .6, Gtk.PositionType.LEFT, False) grid.attach(self.labels['z+'], 0, 0, 1, 1) grid.attach(self.labels['z-'], 1, 0, 1, 1) @@ -110,17 +110,17 @@ class FineTunePanel(ScreenPanel): else: self.labels['z+'] = self._gtk.ButtonImage("z-farther", _("Z+"), "color1") self.labels['zoffset'] = self._gtk.ButtonImage("refresh", " 0.00" + _("mm"), - "color1", .6, .6, Gtk.PositionType.LEFT, False) + "color1", .6, Gtk.PositionType.LEFT, False) self.labels['z-'] = self._gtk.ButtonImage("z-closer", _("Z-"), "color1") self.labels['speed+'] = self._gtk.ButtonImage("speed+", _("Speed +"), "color3") self.labels['speedfactor'] = self._gtk.ButtonImage("refresh", " 100%", - "color3", .6, .6, Gtk.PositionType.LEFT, False) + "color3", .6, Gtk.PositionType.LEFT, False) self.labels['speed-'] = self._gtk.ButtonImage("speed-", _("Speed -"), "color3") self.labels['extrude+'] = self._gtk.ButtonImage("flow+", _("Extrusion +"), "color4") self.labels['extrudefactor'] = self._gtk.ButtonImage("refresh", " 100%", - "color4", .6, .6, Gtk.PositionType.LEFT, False) + "color4", .6, Gtk.PositionType.LEFT, False) self.labels['extrude-'] = self._gtk.ButtonImage("flow-", _("Extrusion -"), "color4") grid.attach(self.labels['zoffset'], 0, 0, 1, 1) grid.attach(self.labels['z+'], 0, 1, 1, 1) diff --git a/panels/job_status.py b/panels/job_status.py index 0ba9f7ad..4a6cbda9 100644 --- a/panels/job_status.py +++ b/panels/job_status.py @@ -86,7 +86,7 @@ class JobStatusPanel(ScreenPanel): overlay.add(self.labels['darea']) overlay.add_overlay(box) - self.labels['thumbnail'] = self._gtk.Image("file.svg", False, 1.6, 1.6) + self.labels['thumbnail'] = self._gtk.Image("file", 2) i = 0 for extruder in self._printer.get_tools(): @@ -94,7 +94,7 @@ class JobStatusPanel(ScreenPanel): self.labels[extruder] = Gtk.Label(label="") self.labels[extruder].get_style_context().add_class("printing-info") if i <= 4: - ext_img = self._gtk.Image("extruder-%s.svg" % i, None, .6, .6) + ext_img = self._gtk.Image("extruder-%s" % i, .6) self.labels[extruder + '_box'].add(ext_img) self.labels[extruder + '_box'].add(self.labels[extruder]) i += 1 @@ -103,7 +103,7 @@ class JobStatusPanel(ScreenPanel): self.current_extruder = self._printer.get_stat("toolhead", "extruder") temp_grid.attach(self.labels[self.current_extruder + '_box'], 0, 0, 1, 1) if self._printer.has_heated_bed(): - heater_bed = self._gtk.Image("bed.svg", None, .6, .6) + heater_bed = self._gtk.Image("bed", .6) self.labels['heater_bed'] = Gtk.Label(label="") self.labels['heater_bed'].get_style_context().add_class("printing-info") heater_bed_box = Gtk.Box(spacing=0) @@ -113,7 +113,7 @@ class JobStatusPanel(ScreenPanel): self.labels['temp_grid'] = temp_grid # Create time remaining items - hourglass = self._gtk.Image("hourglass.svg", None, .6, .6) + hourglass = self._gtk.Image("hourglass", .6) self.labels['left'] = Gtk.Label(label=_("Left:")) self.labels['left'].get_style_context().add_class("printing-info") self.labels['time_left'] = Gtk.Label(label="0s") @@ -125,7 +125,7 @@ class JobStatusPanel(ScreenPanel): self.labels['itl_box'] = itl_box # Create overall items - clock = self._gtk.Image("clock.svg", None, .6, .6) + clock = self._gtk.Image("clock", .6) self.labels['elapsed'] = Gtk.Label(label=_("Elapsed:")) self.labels['elapsed'].get_style_context().add_class("printing-info") self.labels['duration'] = Gtk.Label(label="0s") @@ -146,7 +146,7 @@ class JobStatusPanel(ScreenPanel): timegrid.attach(it2_box, 1, 1, 1, 1) self.labels['timegrid'] = timegrid - position = self._gtk.Image("move.svg", None, .6, .6) + position = self._gtk.Image("move", .6) self.labels['pos_x'] = Gtk.Label(label="X: 0") self.labels['pos_x'].get_style_context().add_class("printing-info") self.labels['pos_y'] = Gtk.Label(label="Y: 0") @@ -163,19 +163,19 @@ class JobStatusPanel(ScreenPanel): pos_box.add(posgrid) self.labels['pos_box'] = pos_box - speed = self._gtk.Image("speed+.svg", None, .6, .6) + speed = self._gtk.Image("speed+", .6) self.labels['speed'] = Gtk.Label(label="") self.labels['speed'].get_style_context().add_class("printing-info") speed_box = Gtk.Box(spacing=0) speed_box.add(speed) speed_box.add(self.labels['speed']) - extrusion = self._gtk.Image("extrude.svg", None, .6, .6) + extrusion = self._gtk.Image("extrude", .6) self.labels['extrusion'] = Gtk.Label(label="") self.labels['extrusion'].get_style_context().add_class("printing-info") extrusion_box = Gtk.Box(spacing=0) extrusion_box.add(extrusion) extrusion_box.add(self.labels['extrusion']) - fan = self._gtk.Image("fan.svg", None, .6, .6) + fan = self._gtk.Image("fan", .6) self.labels['fan'] = Gtk.Label(label="") self.labels['fan'].get_style_context().add_class("printing-info") fan_box = Gtk.Box(spacing=0) diff --git a/panels/main_menu.py b/panels/main_menu.py index 042687a0..3dece1d7 100644 --- a/panels/main_menu.py +++ b/panels/main_menu.py @@ -130,7 +130,7 @@ class MainPanel(MenuPanel): text = "%s" % (color, devname.capitalize()) name = self._gtk.ButtonImage(image, devname.capitalize().replace("_", " "), - None, .5, .5, Gtk.PositionType.LEFT, False) + None, .5, Gtk.PositionType.LEFT, False) name.connect('clicked', self.on_popover_clicked, device) name.set_alignment(0, .5) name.get_style_context().add_class(class_name) diff --git a/panels/print.py b/panels/print.py index 382ea42b..f66c63be 100644 --- a/panels/print.py +++ b/panels/print.py @@ -55,7 +55,7 @@ class PrintPanel(ScreenPanel): sbox.add(s) i += 1 - refresh = self._gtk.ButtonImage("refresh", None, None, .5, .5) + refresh = self._gtk.ButtonImage("refresh", None, None, .5) refresh.connect('clicked', self._refresh_files) sbox.add(refresh) sbox.set_hexpand(True) @@ -125,7 +125,7 @@ class PrintPanel(ScreenPanel): file.set_hexpand(True) file.set_vexpand(False) - icon = self._gtk.Image("folder.svg", False, 1, 1) + icon = self._gtk.Image("folder", 1) file.add(icon) file.add(labels) @@ -216,7 +216,7 @@ class PrintPanel(ScreenPanel): if pixbuf is not None: icon.set_from_pixbuf(pixbuf) else: - icon = self._gtk.Image("file.svg", False, 1.6, 1.6) + icon = self._gtk.Image("file", 1.6) file.add(icon) file.add(labels) diff --git a/panels/splash_screen.py b/panels/splash_screen.py index 84268947..b2369d45 100644 --- a/panels/splash_screen.py +++ b/panels/splash_screen.py @@ -22,7 +22,7 @@ class SplashScreenPanel(ScreenPanel): def initialize(self, panel_name): _ = self.lang.gettext - image = self._gtk.Image("klipper.svg", None, 3.2, 3.2) + image = self._gtk.Image("klipper", 3.2) self.labels['text'] = Gtk.Label(_("Initializing printer...")) self.labels['text'].set_line_wrap(True) diff --git a/panels/temperature.py b/panels/temperature.py index e9202dda..d07d56dd 100644 --- a/panels/temperature.py +++ b/panels/temperature.py @@ -54,8 +54,8 @@ class TemperaturePanel(ScreenPanel): def create_right_panel(self): _ = self.lang.gettext - cooldown = self._gtk.ButtonImage('cool-down', _('Cooldown'), "color4", 1, 1, Gtk.PositionType.LEFT, False) - adjust = self._gtk.ButtonImage('fine-tune', '', "color3", 1, 1, Gtk.PositionType.LEFT, False) + cooldown = self._gtk.ButtonImage('cool-down', _('Cooldown'), "color4", 1, Gtk.PositionType.LEFT, False) + adjust = self._gtk.ButtonImage('fine-tune', '', "color3", 1, Gtk.PositionType.LEFT, False) right = self._gtk.HomogeneousGrid() right.attach(cooldown, 0, 0, 2, 1) @@ -336,7 +336,7 @@ class TemperaturePanel(ScreenPanel): text = "%s" % (color, devname.capitalize()) name = self._gtk.ButtonImage(image, devname.capitalize().replace("_", " "), - None, .5, .5, Gtk.PositionType.LEFT, False) + None, .5, Gtk.PositionType.LEFT, False) name.connect('clicked', self.on_popover_clicked, device) name.set_alignment(0, .5) name.get_style_context().add_class(class_name)