v0.9.14
This commit is contained in:
48
settings.py
48
settings.py
@@ -958,37 +958,41 @@ class SettingsDialog(QDialog):
|
||||
|
||||
def update_mediapipe_status(self):
|
||||
"""Checks for MediaPipe model file and updates UI accordingly."""
|
||||
if "mediapipe" not in AVAILABLE_FACE_ENGINES or not self.face_engine_combo:
|
||||
# --- Rostros ---
|
||||
if self.face_engine_combo and "mediapipe" in AVAILABLE_FACE_ENGINES:
|
||||
model_exists = os.path.exists(MEDIAPIPE_FACE_MODEL_PATH)
|
||||
mediapipe_index = self.face_engine_combo.findText("mediapipe")
|
||||
|
||||
if mediapipe_index != -1:
|
||||
item = self.face_engine_combo.model().item(mediapipe_index)
|
||||
if item:
|
||||
item.setEnabled(model_exists)
|
||||
|
||||
if self.download_model_btn:
|
||||
self.download_model_btn.hide()
|
||||
return
|
||||
self.download_model_btn.setVisible(not model_exists)
|
||||
|
||||
model_exists = os.path.exists(MEDIAPIPE_FACE_MODEL_PATH)
|
||||
mediapipe_index = self.face_engine_combo.findText("mediapipe")
|
||||
|
||||
if mediapipe_index != -1:
|
||||
item = self.face_engine_combo.model().item(mediapipe_index)
|
||||
if item:
|
||||
item.setEnabled(model_exists)
|
||||
|
||||
if self.download_model_btn:
|
||||
self.download_model_btn.setVisible(not model_exists)
|
||||
|
||||
if self.face_engine_combo.currentText() == "mediapipe" and not model_exists:
|
||||
if self.face_engine_combo.count() > 1:
|
||||
if self.face_engine_combo.currentText() == "mediapipe" and not model_exists:
|
||||
for i in range(self.face_engine_combo.count()):
|
||||
if self.face_engine_combo.model().item(i).isEnabled():
|
||||
self.face_engine_combo.setCurrentIndex(i)
|
||||
break
|
||||
elif self.download_model_btn:
|
||||
self.download_model_btn.hide()
|
||||
|
||||
if "mediapipe" not in AVAILABLE_PET_ENGINES or not self.pet_engine_combo:
|
||||
# --- Mascotas (Pets) ---
|
||||
if not AVAILABLE_PET_ENGINES:
|
||||
self.pet_engine_combo.setEnabled(False)
|
||||
self.pet_tags_edit.setEnabled(False)
|
||||
self.pet_history_spin.setEnabled(False)
|
||||
self.pet_color_btn.setEnabled(False)
|
||||
if self.download_pet_model_btn:
|
||||
self.download_pet_model_btn.hide()
|
||||
return
|
||||
|
||||
pet_model_exists = os.path.exists(MEDIAPIPE_OBJECT_MODEL_PATH)
|
||||
if self.download_pet_model_btn:
|
||||
self.download_pet_model_btn.setVisible(not pet_model_exists)
|
||||
elif "mediapipe" in AVAILABLE_PET_ENGINES:
|
||||
pet_model_exists = os.path.exists(MEDIAPIPE_OBJECT_MODEL_PATH)
|
||||
if self.download_pet_model_btn:
|
||||
self.download_pet_model_btn.setVisible(not pet_model_exists)
|
||||
elif self.download_pet_model_btn:
|
||||
self.download_pet_model_btn.hide()
|
||||
|
||||
def start_model_download(self):
|
||||
"""Starts the background thread to download the MediaPipe model."""
|
||||
|
||||
Reference in New Issue
Block a user