83 lines
2.5 KiB
C++
83 lines
2.5 KiB
C++
#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
|