|
|
|
@ -15,6 +15,7 @@ class RegionLabel(QLabel):
|
|
|
|
|
is_selected = bool |
|
|
|
|
|
|
|
|
|
parent_collection = object |
|
|
|
|
parent_collection_index = str |
|
|
|
|
|
|
|
|
|
image = QImage |
|
|
|
|
|
|
|
|
@ -27,6 +28,7 @@ class RegionLabel(QLabel):
|
|
|
|
|
self.is_selected = False |
|
|
|
|
|
|
|
|
|
self.parent_collection = collection |
|
|
|
|
self.parent_collection_index = "{y}-{x}" |
|
|
|
|
|
|
|
|
|
self.region_string = "r.{}.{}.7rg".format( |
|
|
|
|
int(x - 16), |
|
|
|
@ -39,9 +41,6 @@ class RegionLabel(QLabel):
|
|
|
|
|
self.setScaledContents(True) |
|
|
|
|
self.setMouseTracking(True) |
|
|
|
|
|
|
|
|
|
def trigger_cursor_change(self): |
|
|
|
|
self.parent_collection.trigger_cursor_change(self) |
|
|
|
|
|
|
|
|
|
def clear_image(self): |
|
|
|
|
self.image = None |
|
|
|
|
|
|
|
|
@ -55,25 +54,22 @@ class RegionLabel(QLabel):
|
|
|
|
|
def mark_as_region(self): |
|
|
|
|
self.is_region = True |
|
|
|
|
|
|
|
|
|
def remove_graphics_effects(self): |
|
|
|
|
self.setGraphicsEffect(None) |
|
|
|
|
def update_style_effects(self): |
|
|
|
|
style = "*{ border: 1px dotted #aaaaaa; }" |
|
|
|
|
|
|
|
|
|
self.setStyleSheet(style) |
|
|
|
|
|
|
|
|
|
def remove_style_effects(self): |
|
|
|
|
self.setStyleSheet(None) |
|
|
|
|
|
|
|
|
|
def update_graphics_effect(self): |
|
|
|
|
effect = QGraphicsColorizeEffect() |
|
|
|
|
if self.is_marked: |
|
|
|
|
style = "*{ border: 1px dotted #aaaaaa; }" |
|
|
|
|
self.setStyleSheet(style) |
|
|
|
|
else: |
|
|
|
|
self.remove_style_effects() |
|
|
|
|
|
|
|
|
|
if self.is_selected: |
|
|
|
|
effect.setColor(QColor(255, 255, 255, 16)) |
|
|
|
|
self.setGraphicsEffect(effect) |
|
|
|
|
else: |
|
|
|
|
self.remove_graphics_effects() |
|
|
|
|
effect.setColor(QColor(255, 255, 255, 16)) |
|
|
|
|
|
|
|
|
|
self.setGraphicsEffect(effect) |
|
|
|
|
|
|
|
|
|
def remove_graphics_effects(self): |
|
|
|
|
self.setGraphicsEffect(None) |
|
|
|
|
|
|
|
|
|
""" altering class functions """ |
|
|
|
|
def mousePressEvent(self, event): |
|
|
|
@ -94,16 +90,14 @@ class RegionLabel(QLabel):
|
|
|
|
|
|
|
|
|
|
def enterEvent(self, event) -> None: |
|
|
|
|
self.is_selected = True |
|
|
|
|
self.update_graphics_effect() |
|
|
|
|
self.parent_collection.set_currently_hovered_label(self) |
|
|
|
|
self.trigger_cursor_change() |
|
|
|
|
self.parent_collection.trigger_cursor_change(self) |
|
|
|
|
|
|
|
|
|
super().enterEvent(event) |
|
|
|
|
|
|
|
|
|
def leaveEvent(self, event) -> None: |
|
|
|
|
self.is_selected = False |
|
|
|
|
self.update_graphics_effect() |
|
|
|
|
self.trigger_cursor_change() |
|
|
|
|
self.parent_collection.trigger_cursor_change(self) |
|
|
|
|
|
|
|
|
|
super().leaveEvent(event) |
|
|
|
|
|
|
|
|
|