gtk: improve wrapping of labels

This commit is contained in:
alfrix
2022-08-17 07:36:36 -03:00
committed by Alfredo Monclus
parent 836e4a3aea
commit 38ceea5204
20 changed files with 62 additions and 69 deletions

View File

@@ -1,5 +1,4 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
import contextlib
import gi import gi
import logging import logging
import os import os
@@ -164,9 +163,7 @@ class KlippyGtk:
b.connect("clicked", self.screen.reset_screensaver_timeout) b.connect("clicked", self.screen.reset_screensaver_timeout)
return b return b
def ButtonImage(self, image_name=None, label=None, style=None, scale=1.38, def ButtonImage(self, image_name=None, label=None, style=None, scale=1.38, position=Gtk.PositionType.TOP, lines=2):
position=Gtk.PositionType.TOP, word_wrap=True):
b = Gtk.Button(label=label) b = Gtk.Button(label=label)
b.set_hexpand(True) b.set_hexpand(True)
b.set_vexpand(True) b.set_vexpand(True)
@@ -176,12 +173,17 @@ class KlippyGtk:
b.set_image_position(position) b.set_image_position(position)
b.set_always_show_image(True) b.set_always_show_image(True)
if word_wrap is True: try:
with contextlib.suppress(Exception): # Get the label object
# Get the label object child = b.get_children()[0].get_children()[0].get_children()[1]
child = b.get_children()[0].get_children()[0].get_children()[1] child.set_line_wrap_mode(Pango.WrapMode.WORD_CHAR)
child.set_line_wrap_mode(Pango.WrapMode.WORD_CHAR) child.set_line_wrap(True)
child.set_line_wrap(True) child.set_ellipsize(True)
child.set_ellipsize(Pango.EllipsizeMode.END)
child.set_lines(lines)
except Exception as e:
logging.debug(f"Unable to wrap and ellipsize label: {e}")
if style is not None: if style is not None:
b.get_style_context().add_class(style) b.get_style_context().add_class(style)
b.connect("clicked", self.screen.reset_screensaver_timeout) b.connect("clicked", self.screen.reset_screensaver_timeout)

View File

@@ -35,9 +35,9 @@ class Keypad(Gtk.Box):
for i in range(len(keys)): for i in range(len(keys)):
k_id = f'button_{str(keys[i][0])}' k_id = f'button_{str(keys[i][0])}'
if keys[i][0] == "B": if keys[i][0] == "B":
self.labels[k_id] = self._gtk.ButtonImage("backspace", None, None, 1) self.labels[k_id] = self._gtk.ButtonImage("backspace", scale=1)
elif keys[i][0] == "E": elif keys[i][0] == "E":
self.labels[k_id] = self._gtk.ButtonImage("complete", None, None, 1) self.labels[k_id] = self._gtk.ButtonImage("complete", scale=1)
else: else:
self.labels[k_id] = Gtk.Button(keys[i][0]) self.labels[k_id] = Gtk.Button(keys[i][0])
self.labels[k_id].connect('clicked', self.update_entry, keys[i][0]) self.labels[k_id].connect('clicked', self.update_entry, keys[i][0])
@@ -49,7 +49,7 @@ class Keypad(Gtk.Box):
self.labels['entry'].props.xalign = 0.5 self.labels['entry'].props.xalign = 0.5
self.labels['entry'].connect("activate", self.update_entry, "E") self.labels['entry'].connect("activate", self.update_entry, "E")
b = self._gtk.ButtonImage('cancel', _('Close'), None, .66, Gtk.PositionType.LEFT, False) b = self._gtk.ButtonImage('cancel', _('Close'), None, .66, Gtk.PositionType.LEFT, 1)
b.connect("clicked", close_function) b.connect("clicked", close_function)
self.add(self.labels['entry']) self.add(self.labels['entry'])

View File

@@ -26,22 +26,22 @@ class BasePanel(ScreenPanel):
} }
self.current_extruder = None self.current_extruder = None
# Action bar buttons # Action bar buttons
self.control['back'] = self._gtk.ButtonImage('back', None, None, 1) self.control['back'] = self._gtk.ButtonImage('back', scale=1)
self.control['back'].connect("clicked", self.back) self.control['back'].connect("clicked", self.back)
self.control['home'] = self._gtk.ButtonImage('main', None, None, 1) self.control['home'] = self._gtk.ButtonImage('main', scale=1)
self.control['home'].connect("clicked", self.menu_return, True) self.control['home'].connect("clicked", self.menu_return, True)
if len(self._config.get_printers()) > 1: if len(self._config.get_printers()) > 1:
self.control['printer_select'] = self._gtk.ButtonImage('shuffle', None, None, 1) self.control['printer_select'] = self._gtk.ButtonImage('shuffle', scale=1)
self.control['printer_select'].connect("clicked", self._screen.show_printer_select) self.control['printer_select'].connect("clicked", self._screen.show_printer_select)
self.control['macros_shortcut'] = self._gtk.ButtonImage('custom-script', None, None, 1) self.control['macros_shortcut'] = self._gtk.ButtonImage('custom-script', scale=1)
self.control['macros_shortcut'].connect("clicked", self.menu_item_clicked, "gcode_macros", { self.control['macros_shortcut'].connect("clicked", self.menu_item_clicked, "gcode_macros", {
"name": "Macros", "name": "Macros",
"panel": "gcode_macros" "panel": "gcode_macros"
}) })
self.control['estop'] = self._gtk.ButtonImage('emergency', None, None, 1) self.control['estop'] = self._gtk.ButtonImage('emergency', scale=1)
self.control['estop'].connect("clicked", self.emergency_stop) self.control['estop'].connect("clicked", self.emergency_stop)
# Any action bar button should close the keyboard # Any action bar button should close the keyboard

View File

@@ -91,14 +91,14 @@ class BedLevelPanel(ScreenPanel):
logging.debug(f"Using {len(self.screws)}-screw locations [x,y] [{self.x_cnt}x{self.y_cnt}]") logging.debug(f"Using {len(self.screws)}-screw locations [x,y] [{self.x_cnt}x{self.y_cnt}]")
self.labels['bl'] = self._gtk.ButtonImage("bed-level-t-l", None, None, 2.5) self.labels['bl'] = self._gtk.ButtonImage("bed-level-t-l", scale=2.5)
self.labels['br'] = self._gtk.ButtonImage("bed-level-t-r", None, None, 2.5) self.labels['br'] = self._gtk.ButtonImage("bed-level-t-r", scale=2.5)
self.labels['fl'] = self._gtk.ButtonImage("bed-level-b-l", None, None, 2.5) self.labels['fl'] = self._gtk.ButtonImage("bed-level-b-l", scale=2.5)
self.labels['fr'] = self._gtk.ButtonImage("bed-level-b-r", None, None, 2.5) self.labels['fr'] = self._gtk.ButtonImage("bed-level-b-r", scale=2.5)
self.labels['lm'] = self._gtk.ButtonImage("bed-level-l-m", None, None, 2.5) self.labels['lm'] = self._gtk.ButtonImage("bed-level-l-m", scale=2.5)
self.labels['rm'] = self._gtk.ButtonImage("bed-level-r-m", None, None, 2.5) self.labels['rm'] = self._gtk.ButtonImage("bed-level-r-m", scale=2.5)
self.labels['fm'] = self._gtk.ButtonImage("bed-level-b-m", None, None, 2.5) self.labels['fm'] = self._gtk.ButtonImage("bed-level-b-m", scale=2.5)
self.labels['bm'] = self._gtk.ButtonImage("bed-level-t-m", None, None, 2.5) self.labels['bm'] = self._gtk.ButtonImage("bed-level-t-m", scale=2.5)
valid_positions = True valid_positions = True
printer_cfg = self._config.get_printer_config(self._screen.connected_printer) printer_cfg = self._config.get_printer_config(self._screen.connected_printer)

View File

@@ -31,15 +31,13 @@ class BedMeshPanel(ScreenPanel):
def initialize(self, panel_name): def initialize(self, panel_name):
addprofile = self._gtk.ButtonImage("increase", " " + _("Add profile"), addprofile = self._gtk.ButtonImage("increase", " " + _("Add profile"), "color1", .66, Gtk.PositionType.LEFT, 1)
"color1", .66, Gtk.PositionType.LEFT, False)
addprofile.connect("clicked", self.show_create_profile) addprofile.connect("clicked", self.show_create_profile)
addprofile.set_hexpand(True) addprofile.set_hexpand(True)
clear = self._gtk.ButtonImage("cancel", " " + _("Clear"), "color2", .66, Gtk.PositionType.LEFT, False) clear = self._gtk.ButtonImage("cancel", " " + _("Clear"), "color2", .66, Gtk.PositionType.LEFT, 1)
clear.connect("clicked", self._clear_mesh) clear.connect("clicked", self._clear_mesh)
clear.set_hexpand(True) clear.set_hexpand(True)
top_calibrate = self._gtk.ButtonImage("refresh", " " + _("Calibrate"), top_calibrate = self._gtk.ButtonImage("refresh", " " + _("Calibrate"), "color3", .66, Gtk.PositionType.LEFT, 1)
"color3", .66, Gtk.PositionType.LEFT, False)
top_calibrate.connect("clicked", self._send_calibrate) top_calibrate.connect("clicked", self._send_calibrate)
top_calibrate.set_hexpand(True) top_calibrate.set_hexpand(True)

View File

@@ -47,7 +47,7 @@ class ConsolePanel(ScreenPanel):
o2_switch.set_active(self.hidetemps) o2_switch.set_active(self.hidetemps)
o2_switch.connect("notify::active", self.hide_temps) o2_switch.connect("notify::active", self.hide_temps)
o3_button = self._gtk.ButtonImage("refresh", _('Clear') + " ", None, .66, Gtk.PositionType.RIGHT, False) o3_button = self._gtk.ButtonImage("refresh", _('Clear') + " ", None, .66, Gtk.PositionType.RIGHT, 1)
o3_button.connect("clicked", self.clear) o3_button.connect("clicked", self.clear)
options = Gtk.Box() options = Gtk.Box()
@@ -85,7 +85,7 @@ class ConsolePanel(ScreenPanel):
entry.connect("activate", self._send_command) entry.connect("activate", self._send_command)
entry.grab_focus_without_selecting() entry.grab_focus_without_selecting()
enter = self._gtk.ButtonImage("resume", " " + _('Send') + " ", None, .66, Gtk.PositionType.RIGHT, False) enter = self._gtk.ButtonImage("resume", " " + _('Send') + " ", None, .66, Gtk.PositionType.RIGHT, 1)
enter.set_hexpand(False) enter.set_hexpand(False)
enter.connect("clicked", self._send_command) enter.connect("clicked", self._send_command)

View File

@@ -74,17 +74,17 @@ class FineTunePanel(ScreenPanel):
self.labels['z+'] = self._gtk.ButtonImage("z-farther", _("Z+"), "color1") self.labels['z+'] = self._gtk.ButtonImage("z-farther", _("Z+"), "color1")
self.labels['z-'] = self._gtk.ButtonImage("z-closer", _("Z-"), "color1") self.labels['z-'] = self._gtk.ButtonImage("z-closer", _("Z-"), "color1")
self.labels['zoffset'] = self._gtk.ButtonImage("refresh", " 0.00" + _("mm"), self.labels['zoffset'] = self._gtk.ButtonImage("refresh", " 0.00" + _("mm"),
"color1", .6, Gtk.PositionType.LEFT, False) "color1", .6, Gtk.PositionType.LEFT, 1)
self.labels['speed+'] = self._gtk.ButtonImage("speed+", _("Speed +"), "color3") self.labels['speed+'] = self._gtk.ButtonImage("speed+", _("Speed +"), "color3")
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%", self.labels['speedfactor'] = self._gtk.ButtonImage("refresh", " 100%",
"color3", .6, Gtk.PositionType.LEFT, False) "color3", .6, Gtk.PositionType.LEFT, 1)
self.labels['extrude+'] = self._gtk.ButtonImage("flow+", _("Extrusion +"), "color4") self.labels['extrude+'] = self._gtk.ButtonImage("flow+", _("Extrusion +"), "color4")
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%", self.labels['extrudefactor'] = self._gtk.ButtonImage("refresh", " 100%",
"color4", .6, Gtk.PositionType.LEFT, False) "color4", .6, Gtk.PositionType.LEFT, 1)
grid.attach(self.labels['z+'], 0, 0, 1, 1) grid.attach(self.labels['z+'], 0, 0, 1, 1)
grid.attach(self.labels['z-'], 1, 0, 1, 1) grid.attach(self.labels['z-'], 1, 0, 1, 1)
@@ -102,17 +102,17 @@ class FineTunePanel(ScreenPanel):
else: else:
self.labels['z+'] = self._gtk.ButtonImage("z-farther", _("Z+"), "color1") self.labels['z+'] = self._gtk.ButtonImage("z-farther", _("Z+"), "color1")
self.labels['zoffset'] = self._gtk.ButtonImage("refresh", " 0.00" + _("mm"), self.labels['zoffset'] = self._gtk.ButtonImage("refresh", " 0.00" + _("mm"),
"color1", .6, Gtk.PositionType.LEFT, False) "color1", .6, Gtk.PositionType.LEFT, 1)
self.labels['z-'] = self._gtk.ButtonImage("z-closer", _("Z-"), "color1") self.labels['z-'] = self._gtk.ButtonImage("z-closer", _("Z-"), "color1")
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%", self.labels['speedfactor'] = self._gtk.ButtonImage("refresh", " 100%",
"color3", .6, Gtk.PositionType.LEFT, False) "color3", .6, Gtk.PositionType.LEFT, 1)
self.labels['speed-'] = self._gtk.ButtonImage("speed-", _("Speed -"), "color3") self.labels['speed-'] = self._gtk.ButtonImage("speed-", _("Speed -"), "color3")
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%", self.labels['extrudefactor'] = self._gtk.ButtonImage("refresh", " 100%",
"color4", .6, Gtk.PositionType.LEFT, False) "color4", .6, Gtk.PositionType.LEFT, 1)
self.labels['extrude-'] = self._gtk.ButtonImage("flow-", _("Extrusion -"), "color4") self.labels['extrude-'] = self._gtk.ButtonImage("flow-", _("Extrusion -"), "color4")
grid.attach(self.labels['zoffset'], 0, 0, 1, 1) grid.attach(self.labels['zoffset'], 0, 0, 1, 1)
grid.attach(self.labels['z+'], 0, 1, 1, 1) grid.attach(self.labels['z+'], 0, 1, 1, 1)

View File

@@ -16,7 +16,7 @@ class MacroPanel(ScreenPanel):
super().__init__(screen, title, back) super().__init__(screen, title, back)
self.sort_reverse = False self.sort_reverse = False
self.sort_lbl = _("Name") self.sort_lbl = _("Name")
self.sort_btn = self._gtk.ButtonImage("arrow-up", self.sort_lbl, "color1", .66, Gtk.PositionType.RIGHT, False) self.sort_btn = self._gtk.ButtonImage("arrow-up", self.sort_lbl, "color1", .66, Gtk.PositionType.RIGHT, 1)
self.sort_btn.connect("clicked", self.change_sort) self.sort_btn.connect("clicked", self.change_sort)
self.sort_btn.set_hexpand(True) self.sort_btn.set_hexpand(True)
self.allmacros = {} self.allmacros = {}
@@ -28,7 +28,7 @@ class MacroPanel(ScreenPanel):
sort = Gtk.Label(_("Sort:")) sort = Gtk.Label(_("Sort:"))
sort.set_hexpand(False) sort.set_hexpand(False)
adjust = self._gtk.ButtonImage("settings", None, "color2", 1, Gtk.PositionType.LEFT, False) adjust = self._gtk.ButtonImage("settings", None, "color2", 1, Gtk.PositionType.LEFT, 1)
adjust.connect("clicked", self.load_menu, 'options') adjust.connect("clicked", self.load_menu, 'options')
adjust.set_hexpand(False) adjust.set_hexpand(False)
@@ -71,7 +71,7 @@ class MacroPanel(ScreenPanel):
name.set_line_wrap(True) name.set_line_wrap(True)
name.set_line_wrap_mode(Pango.WrapMode.WORD_CHAR) name.set_line_wrap_mode(Pango.WrapMode.WORD_CHAR)
btn = self._gtk.ButtonImage("resume", None, "color3") btn = self._gtk.ButtonImage("resume", style="color3")
btn.connect("clicked", self.run_gcode_macro, macro) btn.connect("clicked", self.run_gcode_macro, macro)
btn.set_hexpand(False) btn.set_hexpand(False)
btn.set_halign(Gtk.Align.END) btn.set_halign(Gtk.Align.END)

View File

@@ -25,7 +25,7 @@ class InputShaperPanel(ScreenPanel):
super().__init__(screen, title, back) super().__init__(screen, title, back)
self.freq_xy_adj = {} self.freq_xy_adj = {}
self.freq_xy_combo = {} self.freq_xy_combo = {}
self.calibrate_btn = self._gtk.ButtonImage("move", _('Finding ADXL'), "color1", word_wrap=False) self.calibrate_btn = self._gtk.ButtonImage("move", _('Finding ADXL'), "color1", lines=1)
self.calibrate_btn.connect("clicked", self.on_popover_clicked) self.calibrate_btn.connect("clicked", self.on_popover_clicked)
self.calibrate_btn.set_sensitive(False) self.calibrate_btn.set_sensitive(False)
self.status = Gtk.Label("") self.status = Gtk.Label("")

View File

@@ -92,7 +92,7 @@ class LimitsPanel(ScreenPanel):
scale.connect("button-release-event", self.set_opt_value, option) scale.connect("button-release-event", self.set_opt_value, option)
self.values[option] = value self.values[option] = value
reset = self._gtk.ButtonImage("refresh", None, "color1") reset = self._gtk.ButtonImage("refresh", style="color1")
reset.connect("clicked", self.reset_value, option) reset.connect("clicked", self.reset_value, option)
reset.set_hexpand(False) reset.set_hexpand(False)

View File

@@ -107,13 +107,10 @@ class MainPanel(MenuPanel):
if can_target: if can_target:
self.labels['da'].add_object(device, "targets", rgb, True, False) self.labels['da'].add_object(device, "targets", rgb, True, False)
name = self._gtk.ButtonImage(image, devname.capitalize().replace("_", " "), name = self._gtk.ButtonImage(image, devname.capitalize().replace("_", " "), None, .5, Gtk.PositionType.LEFT, 1)
None, .5, Gtk.PositionType.LEFT, False)
name.connect("clicked", self.toggle_visibility, device) name.connect("clicked", self.toggle_visibility, device)
name.set_alignment(0, .5) name.set_alignment(0, .5)
name.get_style_context().add_class(class_name) name.get_style_context().add_class(class_name)
child = name.get_children()[0].get_children()[0].get_children()[1]
child.set_ellipsize(Pango.EllipsizeMode.END)
temp = self._gtk.Button("") temp = self._gtk.Button("")
if can_target: if can_target:

View File

@@ -81,9 +81,7 @@ class MenuPanel(ScreenPanel):
j2_temp = env.from_string(item['name']) j2_temp = env.from_string(item['name'])
parsed_name = j2_temp.render() parsed_name = j2_temp.render()
b = self._gtk.ButtonImage( b = self._gtk.ButtonImage(item['icon'], parsed_name, f"color{(i % 4) + 1}")
item['icon'], parsed_name, f"color{(i % 4) + 1}"
)
if item['panel'] is not False: if item['panel'] is not False:
b.connect("clicked", self.menu_item_clicked, item['panel'], item) b.connect("clicked", self.menu_item_clicked, item['panel'], item)
elif item['method'] is not False: elif item['method'] is not False:

View File

@@ -118,7 +118,7 @@ class MovePanel(ScreenPanel):
self.labels['pos_x'] = Gtk.Label("X: 0") self.labels['pos_x'] = Gtk.Label("X: 0")
self.labels['pos_y'] = Gtk.Label("Y: 0") self.labels['pos_y'] = Gtk.Label("Y: 0")
self.labels['pos_z'] = Gtk.Label("Z: 0") self.labels['pos_z'] = Gtk.Label("Z: 0")
adjust = self._gtk.ButtonImage("settings", None, "color2", 1, Gtk.PositionType.LEFT, False) adjust = self._gtk.ButtonImage("settings", None, "color2", 1, Gtk.PositionType.LEFT, 1)
adjust.connect("clicked", self.load_menu, 'options') adjust.connect("clicked", self.load_menu, 'options')
adjust.set_hexpand(False) adjust.set_hexpand(False)
self.labels['move_dist'] = Gtk.Label(_("Move Distance (mm)")) self.labels['move_dist'] = Gtk.Label(_("Move Distance (mm)"))

View File

@@ -160,12 +160,12 @@ class NetworkPanel(ScreenPanel):
labels.set_valign(Gtk.Align.CENTER) labels.set_valign(Gtk.Align.CENTER)
labels.set_halign(Gtk.Align.START) labels.set_halign(Gtk.Align.START)
connect = self._gtk.ButtonImage("load", None, "color3") connect = self._gtk.ButtonImage("load", style="color3")
connect.connect("clicked", self.connect_network, ssid) connect.connect("clicked", self.connect_network, ssid)
connect.set_hexpand(False) connect.set_hexpand(False)
connect.set_halign(Gtk.Align.END) connect.set_halign(Gtk.Align.END)
delete = self._gtk.ButtonImage("delete", None, "color3") delete = self._gtk.ButtonImage("delete", style="color3")
delete.connect("clicked", self.remove_wifi_network, ssid) delete.connect("clicked", self.remove_wifi_network, ssid)
delete.set_size_request(60, 0) delete.set_size_request(60, 0)
delete.set_hexpand(False) delete.set_hexpand(False)

View File

@@ -43,13 +43,13 @@ class PrintPanel(ScreenPanel):
sbox.set_vexpand(False) sbox.set_vexpand(False)
sbox.add(sort) sbox.add(sort)
for i, (name, val) in enumerate(self.sort_items.items(), start=1): for i, (name, val) in enumerate(self.sort_items.items(), start=1):
s = self._gtk.ButtonImage(None, val, f"color{i % 4}", .66, Gtk.PositionType.RIGHT, False) s = self._gtk.ButtonImage(None, val, f"color{i % 4}", .66, Gtk.PositionType.RIGHT, 1)
if name == self.sort_current[0]: if name == self.sort_current[0]:
s.set_image(self._gtk.Image(self.sort_icon[self.sort_current[1]], .66)) s.set_image(self._gtk.Image(self.sort_icon[self.sort_current[1]], .66))
s.connect("clicked", self.change_sort, name) s.connect("clicked", self.change_sort, name)
self.labels[f'sort_{name}'] = s self.labels[f'sort_{name}'] = s
sbox.add(s) sbox.add(s)
refresh = self._gtk.ButtonImage("refresh", None, None, .66) refresh = self._gtk.ButtonImage("refresh", scale=.66)
refresh.connect('clicked', self._refresh_files) refresh.connect('clicked', self._refresh_files)
sbox.add(refresh) sbox.add(refresh)
sbox.set_hexpand(True) sbox.set_hexpand(True)
@@ -166,7 +166,7 @@ class PrintPanel(ScreenPanel):
labels.set_valign(Gtk.Align.CENTER) labels.set_valign(Gtk.Align.CENTER)
labels.set_halign(Gtk.Align.START) labels.set_halign(Gtk.Align.START)
actions = self._gtk.ButtonImage("load", None, "color3") actions = self._gtk.ButtonImage("load", style="color3")
actions.connect("clicked", self.change_dir, directory) actions.connect("clicked", self.change_dir, directory)
actions.set_hexpand(False) actions.set_hexpand(False)
actions.set_halign(Gtk.Align.END) actions.set_halign(Gtk.Align.END)
@@ -213,7 +213,7 @@ class PrintPanel(ScreenPanel):
labels.set_valign(Gtk.Align.CENTER) labels.set_valign(Gtk.Align.CENTER)
labels.set_halign(Gtk.Align.START) labels.set_halign(Gtk.Align.START)
actions = self._gtk.ButtonImage("print", None, "color3") actions = self._gtk.ButtonImage("print", style="color3")
actions.connect("clicked", self.confirm_print, filepath) actions.connect("clicked", self.confirm_print, filepath)
actions.set_hexpand(False) actions.set_hexpand(False)
actions.set_halign(Gtk.Align.END) actions.set_halign(Gtk.Align.END)

View File

@@ -124,7 +124,7 @@ class FWRetractionPanel(ScreenPanel):
scale.get_style_context().add_class("option_slider") scale.get_style_context().add_class("option_slider")
scale.connect("button-release-event", self.set_opt_value, option) scale.connect("button-release-event", self.set_opt_value, option)
reset = self._gtk.ButtonImage("refresh", None, "color1") reset = self._gtk.ButtonImage("refresh", style="color1")
reset.connect("clicked", self.reset_value, option) reset.connect("clicked", self.reset_value, option)
reset.set_hexpand(False) reset.set_hexpand(False)

View File

@@ -131,7 +131,7 @@ class SettingsPanel(ScreenPanel):
box.add(label) box.add(label)
dev.add(box) dev.add(box)
elif option['type'] == "menu": elif option['type'] == "menu":
open_menu = self._gtk.ButtonImage("settings", None, "color3") open_menu = self._gtk.ButtonImage("settings", style="color3")
open_menu.connect("clicked", self.load_menu, option['menu']) open_menu.connect("clicked", self.load_menu, option['menu'])
open_menu.set_hexpand(False) open_menu.set_hexpand(False)
open_menu.set_halign(Gtk.Align.END) open_menu.set_halign(Gtk.Align.END)

View File

@@ -68,7 +68,7 @@ class SystemPanel(ScreenPanel):
self.labels[f"{prog}_status"].connect("clicked", self.show_update_info, prog) self.labels[f"{prog}_status"].connect("clicked", self.show_update_info, prog)
if prog in ALLOWED_SERVICES: if prog in ALLOWED_SERVICES:
self.labels[f"{prog}_restart"] = self._gtk.ButtonImage("refresh", None, None, .7, .7) self.labels[f"{prog}_restart"] = self._gtk.ButtonImage("refresh", scale=.7)
self.labels[f"{prog}_restart"].connect("clicked", self.restart, prog) self.labels[f"{prog}_restart"].connect("clicked", self.restart, prog)
infogrid.attach(self.labels[f"{prog}_restart"], 0, i, 1, 1) infogrid.attach(self.labels[f"{prog}_restart"], 0, i, 1, 1)

View File

@@ -64,8 +64,8 @@ class TemperaturePanel(ScreenPanel):
def create_right_panel(self): def create_right_panel(self):
cooldown = self._gtk.ButtonImage('cool-down', _('Cooldown'), "color4", .66, Gtk.PositionType.LEFT, False) cooldown = self._gtk.ButtonImage('cool-down', _('Cooldown'), "color4", .66, Gtk.PositionType.LEFT, 1)
adjust = self._gtk.ButtonImage('fine-tune', '', "color3", 1, Gtk.PositionType.LEFT, False) adjust = self._gtk.ButtonImage('fine-tune', '', "color3", 1, Gtk.PositionType.LEFT, 1)
right = self._gtk.HomogeneousGrid() right = self._gtk.HomogeneousGrid()
right.attach(cooldown, 0, 0, 2, 1) right.attach(cooldown, 0, 0, 2, 1)
@@ -319,12 +319,10 @@ class TemperaturePanel(ScreenPanel):
self.labels['da'].add_object(device, "targets", rgb, True, False) self.labels['da'].add_object(device, "targets", rgb, True, False)
name = self._gtk.ButtonImage(image, devname.capitalize().replace("_", " "), name = self._gtk.ButtonImage(image, devname.capitalize().replace("_", " "),
None, .5, Gtk.PositionType.LEFT, False) None, .5, Gtk.PositionType.LEFT, 1)
name.connect('clicked', self.on_popover_clicked, device) name.connect('clicked', self.on_popover_clicked, device)
name.set_alignment(0, .5) name.set_alignment(0, .5)
name.get_style_context().add_class(class_name) name.get_style_context().add_class(class_name)
child = name.get_children()[0].get_children()[0].get_children()[1]
child.set_ellipsize(Pango.EllipsizeMode.END)
temp = self._gtk.Button("") temp = self._gtk.Button("")
temp.connect('clicked', self.select_heater, device) temp.connect('clicked', self.select_heater, device)

View File

@@ -22,12 +22,12 @@ button {
-gtk-icon-shadow: none; -gtk-icon-shadow: none;
} }
button:active { button:active, .button_active {
background-color: #304C62; background-color: #304C62;
} }
.button_active { button label {
background-color: #20303D; margin-top: .3em;
} }
button.color1 { button.color1 {