This commit is contained in:
2026-05-14 13:30:06 +08:00
parent 974946cee4
commit e43171521d
91 changed files with 10485 additions and 3254 deletions
@@ -0,0 +1,82 @@
#include "widgets/PropertyPanelControls.h"
#include <QFormLayout>
#include <QSizePolicy>
#include <QTextEdit>
#include <QTextOption>
#include <QWidget>
namespace gui {
void polishPropertyStretchyTextField(QWidget* w) {
if (!w) {
return;
}
w->setMinimumWidth(0);
w->setMaximumWidth(QWIDGETSIZE_MAX);
const QSizePolicy sp = w->sizePolicy();
w->setSizePolicy(QSizePolicy::MinimumExpanding, sp.verticalPolicy());
}
void polishPropertyFormLayout(QFormLayout* form) {
if (!form) {
return;
}
form->setContentsMargins(0, 0, 0, 0);
form->setSpacing(6);
form->setHorizontalSpacing(8);
form->setVerticalSpacing(6);
form->setRowWrapPolicy(QFormLayout::WrapAllRows);
form->setLabelAlignment(Qt::AlignLeft | Qt::AlignTop);
form->setFieldGrowthPolicy(QFormLayout::AllNonFixedFieldsGrow);
}
void polishPropertyVBoxLayout(QVBoxLayout* lay) {
if (!lay) {
return;
}
lay->setContentsMargins(0, 0, 0, 0);
lay->setSpacing(8);
}
PropertyPanelLineEdit::PropertyPanelLineEdit(QWidget* parent)
: QLineEdit(parent) {
setObjectName(QStringLiteral("PropertyPanelLineEdit"));
setMinimumWidth(0);
setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Fixed);
setMaximumHeight(26);
}
PropertyPanelComboBox::PropertyPanelComboBox(QWidget* parent)
: QComboBox(parent) {
setObjectName(QStringLiteral("PropertyPanelComboBox"));
setMinimumWidth(0);
setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Fixed);
setMaximumHeight(26);
}
PropertyPanelCheckBox::PropertyPanelCheckBox(const QString& text, QWidget* parent)
: QCheckBox(text, parent) {
setObjectName(QStringLiteral("PropertyPanelCheckBox"));
setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed);
}
PropertyPanelPushButton::PropertyPanelPushButton(const QString& text, QWidget* parent)
: QPushButton(text, parent) {
setObjectName(QStringLiteral("PropertyPanelPushButton"));
setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed);
setMaximumHeight(26);
}
// TextEdit
PropertyPanelTextEdit::PropertyPanelTextEdit(QWidget* parent)
: QTextEdit(parent) {
setObjectName(QStringLiteral("PropertyPanelTextEdit"));
setMinimumWidth(80);
setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Minimum);
setWordWrapMode(QTextOption::WrapAtWordBoundaryOrAnywhere);
setLineWrapMode(QTextEdit::WidgetWidth);
setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
}
} // namespace gui