👍️[Update] Model : overlay OFF時にoverlayの表示を消す処理を追加

This commit is contained in:
misyaguziya
2024-04-28 14:59:31 +09:00
parent 61ec79a39d
commit d3bc434d38
3 changed files with 22 additions and 7 deletions

View File

@@ -163,12 +163,12 @@ def receiveSpeakerMessage(message):
if model.overlay.initialized is False:
model.startOverlay()
if config.ENABLE_OVERLAY_SMALL_LOG is True:
overlay_image = model.createOverlayImageShort(message, translation)
model.updateOverlay(overlay_image)
# overlay_image = model.createOverlayImageLong("receive", message, translation)
# model.updateOverlay(overlay_image)
else:
if config.ENABLE_OVERLAY_SMALL_LOG is True:
overlay_image = model.createOverlayImageShort(message, translation)
model.updateOverlay(overlay_image)
# overlay_image = model.createOverlayImageLong("receive", message, translation)
# model.updateOverlay(overlay_image)
# ------------Speaker2Chatbox------------
if config.ENABLE_SPEAKER2CHATBOX is True:
@@ -873,6 +873,12 @@ def callbackSetOverlaySettings(value, set_type:str):
def callbackSetEnableOverlaySmallLog(value):
print("callbackSetEnableOverlaySmallLog", value)
config.ENABLE_OVERLAY_SMALL_LOG = value
if config.ENABLE_OVERLAY_SMALL_LOG is True:
pass
else:
if model.overlay.initialized is True:
model.clearOverlayImage()
def callbackSetOverlaySmallLogSettings(value, set_type:str):
print("callbackSetOverlaySmallLogSettings", value, set_type)

View File

@@ -602,6 +602,10 @@ class Model:
# target_language = config.SOURCE_LANGUAGE if message_type == "receive" else config.TARGET_LANGUAGE
# return self.overlay_image.create_overlay_image_long(message_type, message, your_language, translation, target_language)
def clearOverlayImage(self):
if self.overlay.initialized is True:
self.overlay.uiManager.uiClear()
def updateOverlay(self, img):
if self.overlay.initialized is True:
self.overlay.uiManager.uiUpdate(img)
@@ -610,7 +614,7 @@ class Model:
if self.overlay.initialized is False:
self.overlay.init()
if self.overlay.initialized is True:
if self.overlay.initialized is True and self.th_overlay is None:
self.th_overlay = Thread(target=self.overlay.startOverlay)
self.th_overlay.daemon = True
self.th_overlay.start()

View File

@@ -106,6 +106,11 @@ class UIManager:
if self.settings['Fade_interval'] != 0:
self.evaluateTransparencyFade(self.lastUpdate, currTime)
def uiClear(self):
self.overlayUI.setImage(Image.new("RGBA", (1, 1), (0, 0, 0, 0)))
self.overlayUI.setTransparency(self.settings['Transparency'])
self.lastUpdate = time.monotonic()
def uiUpdate(self, img):
self.overlayUI.setImage(img)
self.overlayUI.setTransparency(self.settings['Transparency'])