Update
This commit is contained in:
parent
102f0bce6a
commit
691a4ffe69
@ -1,4 +1,4 @@
|
||||
#!/usr/bin/env python
|
||||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
#===================================== IMPORTS =====================================
|
||||
@ -18,18 +18,26 @@ import maya.cmds as cmds
|
||||
import maya.mel as mel
|
||||
|
||||
#===================================== IMPORT MODULES =====================================
|
||||
# Standard library imports
|
||||
import BodyPrep
|
||||
import BatchImport
|
||||
import DNA_Viewer
|
||||
<<<<<<< Updated upstream
|
||||
=======
|
||||
|
||||
>>>>>>> Stashed changes
|
||||
#===================================== CONSTANTS =====================================
|
||||
# Tool info
|
||||
TOOL_NAME = "MetaFusion"
|
||||
TOOL_VERSION = "Beta v1.0.0"
|
||||
TOOL_AUTHOR = "Virtuos"
|
||||
TOOL_AUTHOR = "CGNICO"
|
||||
TOOL_LANG = 'en_US'
|
||||
# UI Constants
|
||||
TOOL_WSCL_NAME = "MetaFusionWorkSpaceControl"
|
||||
<<<<<<< Updated upstream
|
||||
TOOL_HELP_URL = f"http://10.72.61.59:3000/ArtGroup/{TOOL_NAME}/wiki"
|
||||
=======
|
||||
TOOL_HELP_URL = f"https://gitea.cgnico.com/CGNICO/MetaFusion/wiki"
|
||||
>>>>>>> Stashed changes
|
||||
DEFAULT_WINDOW_SIZE = (500, 800)
|
||||
|
||||
# Paths
|
||||
@ -75,46 +83,35 @@ SUPPORTED_LANGUAGES = ['en_US', 'zh_CN']
|
||||
LANG = {
|
||||
"en_US": {
|
||||
"MetaFusion": "MetaFusion",
|
||||
"Load DNA": "Load DNA",
|
||||
"Prepare Body": "Prepare Body",
|
||||
"Prepare": "Prepare",
|
||||
"Body Prepare": "Body Prepare",
|
||||
"DNA Edit": "DNA Edit",
|
||||
"Open DNA Viewer": "Open DNA Viewer",
|
||||
"Import": "Import",
|
||||
"Batch Import": "Batch Import",
|
||||
"Help": "Help",
|
||||
"Switch Language": "Switch Language",
|
||||
"Language switched": "Language switched",
|
||||
"EN": "EN",
|
||||
"ZH": "ZH",
|
||||
"English": "English",
|
||||
"Chinese": "Chinese",
|
||||
"Language switched": "Language switched",
|
||||
"DNA Samples": "DNA Samples",
|
||||
"Prepare": "Prepare",
|
||||
"Import": "Import",
|
||||
"Body Prepare": "Body Prepare",
|
||||
"Batch Import": "Batch Import",
|
||||
"DNA Edit": "DNA Edit",
|
||||
"Open DNA Viewer": "Open DNA Viewer",
|
||||
"Load DNA": "Load DNA",
|
||||
"DNA File:": "DNA File:"
|
||||
"Chinese": "Chinese"
|
||||
},
|
||||
"zh_CN": {
|
||||
"MetaFusion": "MetaFusion",
|
||||
"DNA Samples": "DNA 样本",
|
||||
"Load DNA": "加载 DNA",
|
||||
"Prepare Body": "准备身体",
|
||||
"Prepare": "准备",
|
||||
"Body Prepare": "身体准备",
|
||||
"DNA Edit": "DNA 编辑",
|
||||
"Open DNA Viewer": "打开 DNA 查看器",
|
||||
"Import": "导入",
|
||||
"Batch Import": "批量导入",
|
||||
"Help": "帮助",
|
||||
"Switch Language": "切换语言",
|
||||
"Language switched": "语言已切换",
|
||||
"EN": "英文",
|
||||
"ZH": "中文",
|
||||
"English": "英语",
|
||||
"Chinese": "中文",
|
||||
"Language switched": "语言已切换",
|
||||
"DNA Samples": "DNA 样本",
|
||||
"Prepare": "准备",
|
||||
"Import": "导入",
|
||||
"Body Prepare": "身体准备",
|
||||
"Batch Import": "批量导入",
|
||||
"DNA Edit": "DNA 编辑",
|
||||
"Open DNA Viewer": "打开 DNA 查看器",
|
||||
"Load DNA": "加载 DNA",
|
||||
"DNA File:": "DNA 文件:"
|
||||
"Chinese": "中文"
|
||||
}
|
||||
}
|
||||
|
||||
@ -131,11 +128,7 @@ def maya_main_window():
|
||||
|
||||
#===================================== UI COMPONENTS =====================================
|
||||
class MainButton(QtWidgets.QPushButton):
|
||||
DEFAULT_COLORS = {
|
||||
"normal": "#D0D0D0",
|
||||
"hover": "#E0E0E0",
|
||||
"pressed": "#C0C0C0"
|
||||
}
|
||||
DEFAULT_COLORS = {"normal": "#D0D0D0", "hover": "#E0E0E0", "pressed": "#C0C0C0"}
|
||||
|
||||
def __init__(self, text="", icon=None, color=None, hover_color=None, pressed_color=None):
|
||||
super().__init__(text)
|
||||
@ -250,12 +243,9 @@ class MainWindow(QtWidgets.QWidget):
|
||||
cls.instance.deleteLater()
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
cls.instance = cls()
|
||||
cls.instance.dock_to_maya()
|
||||
|
||||
return cls.instance
|
||||
|
||||
except Exception as e:
|
||||
print(f"Error showing {TOOL_NAME} window: {e}")
|
||||
return None
|
||||
@ -281,18 +271,29 @@ class MainWindow(QtWidgets.QWidget):
|
||||
|
||||
#===================================== UI COMPONENTS =====================================
|
||||
def create_widgets(self):
|
||||
<<<<<<< Updated upstream
|
||||
# DNA Edit group
|
||||
self.dna_edit_btn = MainButton(LANG[TOOL_LANG]["DNA Edit"])
|
||||
self.dna_viewer_btn = MainButton(LANG[TOOL_LANG]["Open DNA Viewer"], color="#B8E6B3", hover_color="#C4F2BF", pressed_color="#A3D99E")
|
||||
|
||||
=======
|
||||
|
||||
>>>>>>> Stashed changes
|
||||
# Prepare group
|
||||
self.prepare_btn = MainButton(LANG[TOOL_LANG]["Prepare"])
|
||||
self.body_prepare_btn = MainButton(LANG[TOOL_LANG]["Body Prepare"], color="#FFEBA1", hover_color="#FFF5B3", pressed_color="#FFE68A")
|
||||
|
||||
<<<<<<< Updated upstream
|
||||
=======
|
||||
# DNA Edit group
|
||||
self.dna_edit_btn = MainButton(LANG[TOOL_LANG]["DNA Edit"])
|
||||
self.dna_viewer_btn = MainButton(LANG[TOOL_LANG]["Open DNA Viewer"], color="#B8E6B3", hover_color="#C4F2BF", pressed_color="#A3D99E")
|
||||
|
||||
# Import group
|
||||
self.import_btn = MainButton(LANG[TOOL_LANG]["Import"])
|
||||
self.batch_import_btn = MainButton(LANG[TOOL_LANG]["Batch Import"], color="#A7C6ED", hover_color="#B2D3F0", pressed_color="#8BB8E0")
|
||||
|
||||
>>>>>>> Stashed changes
|
||||
# Bottom buttons (existing code)
|
||||
self.help_btn = BottomButton(LANG[TOOL_LANG]["Help"])
|
||||
self.help_btn.setToolTip(LANG[TOOL_LANG]["Help"])
|
||||
@ -308,29 +309,22 @@ class MainWindow(QtWidgets.QWidget):
|
||||
def create_layouts(self):
|
||||
main_layout = QtWidgets.QVBoxLayout(self)
|
||||
main_layout.setContentsMargins(2, 2, 2, 2)
|
||||
|
||||
# Content layout
|
||||
content_layout = QtWidgets.QVBoxLayout()
|
||||
content_layout.setContentsMargins(5, 5, 5, 5)
|
||||
bottom_layout = QtWidgets.QHBoxLayout()
|
||||
bottom_layout.setContentsMargins(5, 0, 5, 5)
|
||||
|
||||
# DNA Edit group
|
||||
dna_edit_group = QtWidgets.QGroupBox(LANG[TOOL_LANG]["DNA Edit"])
|
||||
dna_edit_layout = QtWidgets.QVBoxLayout(dna_edit_group)
|
||||
dna_edit_layout.addWidget(self.dna_viewer_btn)
|
||||
content_layout.addWidget(dna_edit_group)
|
||||
|
||||
# Prepare group
|
||||
prepare_group = QtWidgets.QGroupBox(LANG[TOOL_LANG]["Prepare"])
|
||||
prepare_group = QtWidgets.QGroupBox("Prepare")
|
||||
prepare_layout = QtWidgets.QVBoxLayout(prepare_group)
|
||||
prepare_layout.addWidget(self.body_prepare_btn)
|
||||
content_layout.addWidget(prepare_group)
|
||||
|
||||
# Import group
|
||||
import_group = QtWidgets.QGroupBox(LANG[TOOL_LANG]["Import"])
|
||||
import_group = QtWidgets.QGroupBox("Import")
|
||||
import_layout = QtWidgets.QVBoxLayout(import_group)
|
||||
import_layout.addWidget(self.batch_import_btn)
|
||||
content_layout.addWidget(import_group)
|
||||
|
||||
<<<<<<< Updated upstream
|
||||
main_layout.addLayout(content_layout)
|
||||
main_layout.addStretch()
|
||||
|
||||
@ -338,6 +332,13 @@ class MainWindow(QtWidgets.QWidget):
|
||||
bottom_layout = QtWidgets.QHBoxLayout()
|
||||
bottom_layout.setContentsMargins(5, 0, 5, 5)
|
||||
|
||||
=======
|
||||
dna_edit_group = QtWidgets.QGroupBox("DNA Edit")
|
||||
dna_edit_layout = QtWidgets.QVBoxLayout(dna_edit_group)
|
||||
dna_edit_layout.addWidget(self.dna_viewer_btn)
|
||||
content_layout.addWidget(dna_edit_group)
|
||||
|
||||
>>>>>>> Stashed changes
|
||||
icon_label = QtWidgets.QLabel()
|
||||
if os.path.exists(TOOL_ICON):
|
||||
icon = QtGui.QPixmap(TOOL_ICON).scaled(24, 24, QtCore.Qt.KeepAspectRatio, QtCore.Qt.SmoothTransformation)
|
||||
@ -348,39 +349,41 @@ class MainWindow(QtWidgets.QWidget):
|
||||
|
||||
bottom_layout.addWidget(icon_label)
|
||||
bottom_layout.addWidget(version_label)
|
||||
bottom_layout.addStretch()
|
||||
bottom_layout.addWidget(self.help_btn)
|
||||
bottom_layout.addWidget(self.lang_btn)
|
||||
|
||||
main_layout.addLayout(content_layout)
|
||||
main_layout.addLayout(bottom_layout)
|
||||
main_layout.addStretch()
|
||||
|
||||
def create_connections(self):
|
||||
# Connect function buttons
|
||||
self.body_prepare_btn.clicked.connect(self.run_body_prepare)
|
||||
self.batch_import_btn.clicked.connect(self.run_batch_import)
|
||||
self.dna_viewer_btn.clicked.connect(self.run_dna_viewer)
|
||||
<<<<<<< Updated upstream
|
||||
|
||||
# Existing connections
|
||||
=======
|
||||
self.batch_import_btn.clicked.connect(self.run_batch_import)
|
||||
>>>>>>> Stashed changes
|
||||
self.help_btn.clicked.connect(self.help)
|
||||
self.lang_btn.clicked.connect(self.switch_language)
|
||||
|
||||
#===================================== FUNCTIONS =====================================
|
||||
#===================================== MAIN FUNCTIONS =====================================
|
||||
# Prepare group
|
||||
def run_body_prepare(self):
|
||||
import BodyPrep
|
||||
BodyPrep.run()
|
||||
|
||||
# Import group
|
||||
def run_batch_import(self):
|
||||
import BatchImport
|
||||
BatchImport.run()
|
||||
|
||||
# DNA Edit group
|
||||
def run_dna_viewer(self):
|
||||
<<<<<<< Updated upstream
|
||||
import DNA_Viewer
|
||||
DNA_Viewer.show()
|
||||
|
||||
=======
|
||||
DNA_Viewer.show()
|
||||
>>>>>>> Stashed changes
|
||||
|
||||
#===================================== BOTTOM LAYOUT =====================================
|
||||
def help(self):
|
||||
@ -391,7 +394,6 @@ class MainWindow(QtWidgets.QWidget):
|
||||
TOOL_LANG = 'en_US' if TOOL_LANG == 'zh_CN' else 'zh_CN'
|
||||
self.lang_btn.setText("ZH" if TOOL_LANG == 'en_US' else "EN")
|
||||
self.retranslate_ui()
|
||||
|
||||
QtWidgets.QToolTip.showText(
|
||||
self.lang_btn.mapToGlobal(QtCore.QPoint(0, -30)),
|
||||
"Language switched" if TOOL_LANG == 'en_US' else "语言已切换",
|
||||
@ -399,27 +401,23 @@ class MainWindow(QtWidgets.QWidget):
|
||||
)
|
||||
|
||||
def retranslate_ui(self):
|
||||
<<<<<<< Updated upstream
|
||||
|
||||
# Update function button translations
|
||||
=======
|
||||
>>>>>>> Stashed changes
|
||||
self.load_dna_btn.setText(LANG[TOOL_LANG]["Load DNA"])
|
||||
self.body_prepare_btn.setText(LANG[TOOL_LANG]["Body Prepare"])
|
||||
self.batch_import_btn.setText(LANG[TOOL_LANG]["Batch Import"])
|
||||
self.dna_viewer_btn.setText(LANG[TOOL_LANG]["Open DNA Viewer"])
|
||||
self.batch_import_btn.setText(LANG[TOOL_LANG]["Batch Import"])
|
||||
|
||||
for button in [
|
||||
self.body_prepare_btn,
|
||||
self.batch_import_btn,
|
||||
self.dna_viewer_btn
|
||||
]:
|
||||
button.setFont(QtGui.QFont("Microsoft YaHei", 10))
|
||||
|
||||
# Update bottom button translations
|
||||
self.help_btn.setText(LANG[TOOL_LANG]["Help"])
|
||||
self.lang_btn.setText("ZH" if TOOL_LANG == 'en_US' else "EN")
|
||||
for button in [
|
||||
self.help_btn,
|
||||
self.lang_btn
|
||||
]:
|
||||
|
||||
for button in [self.body_prepare_btn, self.dna_viewer_btn, self.batch_import_btn]:
|
||||
button.setFont(QtGui.QFont("Microsoft YaHei", 10))
|
||||
|
||||
for button in [self.help_btn, self.lang_btn]:
|
||||
button.setFont(QtGui.QFont("Microsoft YaHei", 10))
|
||||
|
||||
self.dna_file_label.setText(LANG[TOOL_LANG]["DNA File:"])
|
||||
|
@ -1,3 +1,9 @@
|
||||
<<<<<<< Updated upstream
|
||||
=======
|
||||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
>>>>>>> Stashed changes
|
||||
import logging
|
||||
import os
|
||||
import webbrowser
|
||||
@ -39,10 +45,17 @@ def show() -> None:
|
||||
DnaViewerWindow.show_window()
|
||||
|
||||
|
||||
<<<<<<< Updated upstream
|
||||
TOOL_NAME = "Delos"
|
||||
WINDOW_TITLE = "DNA Viewer"
|
||||
WINDOW_OBJECT = "dnaviewer"
|
||||
TOOL_HELP_URL = f"http://10.72.61.59:3000/ArtGroup/{TOOL_NAME}/wiki"
|
||||
=======
|
||||
TOOL_NAME = "DNA Viewer"
|
||||
WINDOW_TITLE = "DNA Viewer"
|
||||
WINDOW_OBJECT = "dnaviewer"
|
||||
TOOL_HELP_URL = f"https://gitea.cgnico.com/CGNICO/MetaFusion/wiki"
|
||||
>>>>>>> Stashed changes
|
||||
SPACING = 6
|
||||
WINDOW_SIZE_WIDTH_MIN = 800
|
||||
WINDOW_SIZE_WIDTH_MAX = 1200
|
||||
@ -194,7 +207,10 @@ class DNABrowser(QWidget):
|
||||
img_file = img_path
|
||||
break
|
||||
|
||||
<<<<<<< Updated upstream
|
||||
# If no corresponding image is found, use default preview image
|
||||
=======
|
||||
>>>>>>> Stashed changes
|
||||
if not img_file and os.path.exists(default_preview):
|
||||
img_file = default_preview
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user