Files
MetaFusion/scripts/ui/style.qss
2025-05-08 23:57:22 +08:00

526 lines
10 KiB
Plaintext

/* 插件样式表 */
/* 版本: Alpha v1.0.0 */
/* ==================== 全局样式 ==================== */
QWidget {
font-family: "Microsoft YaHei", "SimHei", "Arial", sans-serif;
font-size: 12px;
color: #E0E0E0;
background-color: #2D2D30;
}
QLabel {
color: #E0E0E0;
}
QLabel#mainTitleLabel {
font-size: 16px;
font-weight: bold;
color: #FFFFFF;
padding: 5px;
}
/* ==================== 标签页样式 ==================== */
QTabWidget::pane {
border: 1px solid #1E1E1E;
background-color: #2D2D30;
border-radius: 3px;
}
QTabBar::tab {
background-color: #3E3E42;
color: #CCCCCC;
padding: 8px 15px;
border-top-left-radius: 4px;
border-top-right-radius: 4px;
border: 1px solid #1E1E1E;
border-bottom: none;
margin-right: 2px;
}
QTabBar::tab:selected {
background-color: #007ACC;
color: #FFFFFF;
}
QTabBar::tab:hover:!selected {
background-color: #505050;
}
/* ==================== 按钮样式 ==================== */
QPushButton {
background-color: #3E3E42;
color: #CCCCCC;
border: 1px solid #1E1E1E;
border-radius: 3px;
padding: 5px 10px;
min-height: 25px;
}
QPushButton:hover {
background-color: #505050;
border: 1px solid #007ACC;
}
QPushButton:pressed {
background-color: #007ACC;
color: #FFFFFF;
}
QPushButton:disabled {
background-color: #2D2D30;
color: #656565;
border: 1px solid #1E1E1E;
}
/* 主要操作按钮 */
QPushButton.primary {
background-color: #007ACC;
color: #FFFFFF;
}
QPushButton.primary:hover {
background-color: #1C97EA;
}
QPushButton.primary:pressed {
background-color: #0062A3;
}
/* 危险操作按钮 */
QPushButton.danger {
background-color: #E51400;
color: #FFFFFF;
}
QPushButton.danger:hover {
background-color: #FF2D1C;
}
QPushButton.danger:pressed {
background-color: #B30F00;
}
/* ==================== 输入框样式 ==================== */
QLineEdit, QTextEdit, QPlainTextEdit {
background-color: #1E1E1E;
color: #E0E0E0;
border: 1px solid #3E3E42;
border-radius: 3px;
padding: 3px;
selection-background-color: #264F78;
}
QLineEdit:focus, QTextEdit:focus, QPlainTextEdit:focus {
border: 1px solid #007ACC;
}
QLineEdit:disabled, QTextEdit:disabled, QPlainTextEdit:disabled {
background-color: #2D2D30;
color: #656565;
border: 1px solid #1E1E1E;
}
/* ==================== 下拉框样式 ==================== */
QComboBox {
background-color: #1E1E1E;
color: #E0E0E0;
border: 1px solid #3E3E42;
border-radius: 3px;
padding: 3px 18px 3px 3px;
min-height: 25px;
}
QComboBox:hover {
border: 1px solid #007ACC;
}
QComboBox:on {
background-color: #3E3E42;
}
QComboBox::drop-down {
subcontrol-origin: padding;
subcontrol-position: top right;
width: 15px;
border-left: 1px solid #3E3E42;
}
QComboBox::down-arrow {
image: url(":/icons/dropdown_arrow.png");
width: 10px;
height: 10px;
}
QComboBox QAbstractItemView {
background-color: #1E1E1E;
color: #E0E0E0;
border: 1px solid #3E3E42;
selection-background-color: #007ACC;
selection-color: #FFFFFF;
outline: 0;
}
/* ==================== 列表控件样式 ==================== */
QListWidget, QTreeWidget, QTableWidget {
background-color: #1E1E1E;
color: #E0E0E0;
border: 1px solid #3E3E42;
border-radius: 3px;
alternate-background-color: #2A2A2A;
outline: 0;
}
QListWidget::item, QTreeWidget::item, QTableWidget::item {
padding: 3px;
}
QListWidget::item:selected, QTreeWidget::item:selected, QTableWidget::item:selected {
background-color: #007ACC;
color: #FFFFFF;
}
QListWidget::item:hover, QTreeWidget::item:hover, QTableWidget::item:hover {
background-color: #3E3E42;
}
/* ==================== 滚动条样式 ==================== */
QScrollBar:vertical {
background-color: #2D2D30;
width: 12px;
margin: 12px 0 12px 0;
border: 1px solid #1E1E1E;
border-radius: 3px;
}
QScrollBar::handle:vertical {
background-color: #3E3E42;
min-height: 20px;
border-radius: 3px;
}
QScrollBar::handle:vertical:hover {
background-color: #505050;
}
QScrollBar::add-line:vertical {
border: none;
background: none;
height: 10px;
subcontrol-position: bottom;
subcontrol-origin: margin;
}
QScrollBar::sub-line:vertical {
border: none;
background: none;
height: 10px;
subcontrol-position: top;
subcontrol-origin: margin;
}
QScrollBar:horizontal {
background-color: #2D2D30;
height: 12px;
margin: 0 12px 0 12px;
border: 1px solid #1E1E1E;
border-radius: 3px;
}
QScrollBar::handle:horizontal {
background-color: #3E3E42;
min-width: 20px;
border-radius: 3px;
}
QScrollBar::handle:horizontal:hover {
background-color: #505050;
}
QScrollBar::add-line:horizontal {
border: none;
background: none;
width: 10px;
subcontrol-position: right;
subcontrol-origin: margin;
}
QScrollBar::sub-line:horizontal {
border: none;
background: none;
width: 10px;
subcontrol-position: left;
subcontrol-origin: margin;
}
/* ==================== 分组框样式 ==================== */
QGroupBox {
border: 1px solid #3E3E42;
border-radius: 3px;
margin-top: 10px;
padding-top: 10px;
font-weight: bold;
}
QGroupBox::title {
subcontrol-origin: margin;
subcontrol-position: top left;
padding: 0 5px;
color: #007ACC;
}
/* ==================== 分割器样式 ==================== */
QSplitter::handle {
background-color: #3E3E42;
}
QSplitter::handle:horizontal {
width: 6px;
}
QSplitter::handle:vertical {
height: 6px;
}
QSplitter::handle:hover {
background-color: #007ACC;
}
QSplitter {
border: none;
}
QSplitter > QWidget {
min-width: 0px;
min-height: 0px;
}
/* ==================== 滑块样式 ==================== */
QSlider::groove:horizontal {
border: 1px solid #1E1E1E;
height: 4px;
background: #3E3E42;
margin: 0 5px;
border-radius: 2px;
}
QSlider::handle:horizontal {
background: #007ACC;
border: 1px solid #005F9E;
width: 12px;
height: 12px;
margin: -5px 0;
border-radius: 6px;
}
QSlider::handle:horizontal:hover {
background: #1C97EA;
border: 1px solid #007ACC;
}
QSlider::sub-page:horizontal {
background: #007ACC;
border-radius: 2px;
}
/* ==================== 复选框样式 ==================== */
QCheckBox {
spacing: 5px;
}
QCheckBox::indicator {
width: 15px;
height: 15px;
}
QCheckBox::indicator:unchecked {
border: 1px solid #3E3E42;
background-color: #1E1E1E;
border-radius: 2px;
}
QCheckBox::indicator:unchecked:hover {
border: 1px solid #007ACC;
}
QCheckBox::indicator:checked {
border: 1px solid #007ACC;
background-color: #007ACC;
border-radius: 2px;
image: url(":/icons/checkmark.png");
}
/* ==================== 单选框样式 ==================== */
QRadioButton {
spacing: 5px;
}
QRadioButton::indicator {
width: 15px;
height: 15px;
}
QRadioButton::indicator:unchecked {
border: 1px solid #3E3E42;
background-color: #1E1E1E;
border-radius: 7px;
}
QRadioButton::indicator:unchecked:hover {
border: 1px solid #007ACC;
}
QRadioButton::indicator:checked {
border: 1px solid #007ACC;
background-color: #1E1E1E;
border-radius: 7px;
}
QRadioButton::indicator:checked::before {
content: "";
display: block;
width: 7px;
height: 7px;
background-color: #007ACC;
border-radius: 4px;
margin: 3px;
}
/* ==================== 进度条样式 ==================== */
QProgressBar {
border: 1px solid #3E3E42;
border-radius: 3px;
background-color: #1E1E1E;
text-align: center;
color: #E0E0E0;
}
QProgressBar::chunk {
background-color: #007ACC;
width: 10px;
margin: 0.5px;
}
/* ==================== 菜单样式 ==================== */
QMenuBar {
background-color: #2D2D30;
color: #E0E0E0;
border-bottom: 1px solid #1E1E1E;
}
QMenuBar::item {
background: transparent;
padding: 5px 10px;
}
QMenuBar::item:selected {
background-color: #3E3E42;
color: #FFFFFF;
}
QMenuBar::item:pressed {
background-color: #007ACC;
color: #FFFFFF;
}
QMenu {
background-color: #1E1E1E;
color: #E0E0E0;
border: 1px solid #3E3E42;
}
QMenu::item {
padding: 5px 30px 5px 20px;
}
QMenu::item:selected {
background-color: #007ACC;
color: #FFFFFF;
}
QMenu::separator {
height: 1px;
background-color: #3E3E42;
margin: 5px 0;
}
/* ==================== 工具提示样式 ==================== */
QToolTip {
background-color: #1E1E1E;
color: #E0E0E0;
border: 1px solid #3E3E42;
padding: 3px;
}
/* ==================== 状态栏样式 ==================== */
QStatusBar {
background-color: #2D2D30;
color: #E0E0E0;
border-top: 1px solid #1E1E1E;
}
QStatusBar::item {
border: none;
}
/* ==================== 特定控件样式 ==================== */
/* 标题标签 */
QLabel[objectName="titleLabel"],
QLabel[objectName="toolbarTitleLabel"],
QLabel[objectName="definitionTitleLabel"],
QLabel[objectName="geometryTitleLabel"],
QLabel[objectName="riggingTitleLabel"],
QLabel[objectName="behaviourTitleLabel"] {
font-size: 14px;
font-weight: bold;
color: #007ACC;
padding: 5px;
background-color: #252526;
border-bottom: 1px solid #3E3E42;
}
/* 底部滑块 */
QSlider#bottomSlider {
margin: 10px 0;
}
/* 底部标签页按钮 */
QPushButton[objectName*="tabButton"] {
background-color: #3E3E42;
color: #CCCCCC;
border: 1px solid #1E1E1E;
border-radius: 3px;
padding: 5px;
min-width: 40px;
min-height: 25px;
}
QPushButton[objectName*="tabButton"]:checked,
QPushButton[objectName*="tabButton"]:pressed {
background-color: #007ACC;
color: #FFFFFF;
}
QPushButton[objectName*="tabButton"]:hover:!checked {
background-color: #505050;
border: 1px solid #007ACC;
}
/* 搜索框 */
QLineEdit[objectName*="searchInput"],
QLineEdit[objectName*="filterInput"] {
background-color: #1E1E1E;
color: #E0E0E0;
border: 1px solid #3E3E42;
border-radius: 3px;
padding: 5px 25px 5px 5px;
background-image: url(":/icons/search.png");
background-repeat: no-repeat;
background-position: right center;
background-origin: content;
}
QLineEdit[objectName*="searchInput"]:focus,
QLineEdit[objectName*="filterInput"]:focus {
border: 1px solid #007ACC;
}