Moved mirage2 to use newer GTK template structure patterns

This commit is contained in:
2026-05-22 18:27:16 -05:00
parent 447b087188
commit bbd8fd7a2c
94 changed files with 2846 additions and 814 deletions

View File

@@ -47,18 +47,18 @@ class ImageView(ImageViewMixin, Gtk.Image):
...
def _subscribe_to_events(self):
event_system.subscribe("size_allocate", self._size_allocate)
event_system.subscribe("handle_file_from_dnd", self._handle_file_from_dnd)
event_system.subscribe("size-allocate", self._size_allocate)
event_system.subscribe("handle-file-from-dnd", self._handle_file_from_dnd)
event_system.subscribe("get_active_image_path", self._get_active_image_path)
event_system.subscribe("zoom_out", self._zoom_out)
event_system.subscribe("rotate_left", self._rotate_left)
event_system.subscribe("vertical_flip", self._vertical_flip)
event_system.subscribe("scale_1_two_1", self._scale_1_two_1)
event_system.subscribe("fit_to_container", self._fit_to_container)
event_system.subscribe("horizontal_flip", self._horizontal_flip)
event_system.subscribe("rotate_right", self._rotate_right)
event_system.subscribe("zoom_in", self._zoom_in)
event_system.subscribe("get-active-image-path", self._get_active_image_path)
event_system.subscribe("zoom-out", self._zoom_out)
event_system.subscribe("rotate-left", self._rotate_left)
event_system.subscribe("vertical-flip", self._vertical_flip)
event_system.subscribe("scale-1-to-1", self._scale_1_two_1)
event_system.subscribe("fit-to-container", self._fit_to_container)
event_system.subscribe("horizontal-flip", self._horizontal_flip)
event_system.subscribe("rotate-right", self._rotate_right)
event_system.subscribe("zoom-in", self._zoom_in)
def _load_widgets(self):
...
@@ -91,15 +91,22 @@ class ImageView(ImageViewMixin, Gtk.Image):
width = self.pixbuff.get_width()
height = self.pixbuff.get_height()
size = sizeof_fmt( getsize(path) )
size = self.sizeof_fmt( getsize(path) )
path = f"{path} | {width} x {height} | {size}"
event_system.emit("update_path_label", (path,))
event_system.emit("update-path-label", (path,))
if self.fit_to_win:
self._fit_to_container()
else:
self._scale_1_two_1()
def sizeof_fmt(self, num, suffix = "B"):
for unit in ["", "K", "M", "G", "T", "Pi", "Ei", "Zi"]:
if abs(num) < 1024.0:
return f"{num:3.1f} {unit}{suffix}"
num /= 1024.0
return f"{num:.1f} Yi{suffix}"
def set_as_gif(self, path):
image = None
try:
@@ -127,4 +134,4 @@ class ImageView(ImageViewMixin, Gtk.Image):
w, h = im.size
return GdkPixbuf.Pixbuf.new_from_bytes(data, GdkPixbuf.Colorspace.RGB,
False, 8, w, h, w * 3)
False, 8, w, h, w * 3)