chore: 格式化ElaWidgetTools代码
This commit is contained in:
@@ -9,13 +9,11 @@
|
||||
#include "ElaBaseListView.h"
|
||||
#include "ElaBreadcrumbBarPrivate.h"
|
||||
Q_PROPERTY_CREATE_Q_CPP(ElaBreadcrumbBar, bool, IsAutoRemove);
|
||||
ElaBreadcrumbBar::ElaBreadcrumbBar(QWidget* parent)
|
||||
: QWidget{parent}, d_ptr(new ElaBreadcrumbBarPrivate())
|
||||
{
|
||||
ElaBreadcrumbBar::ElaBreadcrumbBar(QWidget *parent) : QWidget{parent}, d_ptr(new ElaBreadcrumbBarPrivate()) {
|
||||
Q_D(ElaBreadcrumbBar);
|
||||
d->q_ptr = this;
|
||||
d->q_ptr = this;
|
||||
d->_pTextPixelSize = 18;
|
||||
d->_pIsAutoRemove = true;
|
||||
d->_pIsAutoRemove = true;
|
||||
setFixedHeight(37);
|
||||
setObjectName("ElaBreadcrumbBar");
|
||||
setStyleSheet("#ElaBreadcrumbBar{background-color:transparent;}");
|
||||
@@ -30,17 +28,14 @@ ElaBreadcrumbBar::ElaBreadcrumbBar(QWidget* parent)
|
||||
d->_listView->setModel(d->_listModel);
|
||||
d->_listDelegate = new ElaBreadcrumbBarDelegate(this);
|
||||
d->_listView->setItemDelegate(d->_listDelegate);
|
||||
connect(d->_listView, &QListView::clicked, this, [=](const QModelIndex& index) {
|
||||
if (d->_pIsAutoRemove)
|
||||
{
|
||||
if (d->_listModel->getBreadcrumbListCount() != 1 && index.row() != d->_listModel->getBreadcrumbListCount() * 2 - 2 && index.data(Qt::DisplayRole).toString() != ">")
|
||||
{
|
||||
connect(d->_listView, &QListView::clicked, this, [=](const QModelIndex &index) {
|
||||
if (d->_pIsAutoRemove) {
|
||||
if (d->_listModel->getBreadcrumbListCount() != 1 && index.row() != d->_listModel->getBreadcrumbListCount() * 2 - 2 &&
|
||||
index.data(Qt::DisplayRole).toString() != ">") {
|
||||
Q_EMIT breadcrumbClicked(index.data(Qt::DisplayRole).toString(), d->_listModel->getBreadcrumbList());
|
||||
d->_listModel->removeBreadcrumb(index.row() / 2 + 1);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
Q_EMIT breadcrumbClicked(index.data(Qt::DisplayRole).toString(), d->_listModel->getBreadcrumbList());
|
||||
}
|
||||
});
|
||||
@@ -50,7 +45,7 @@ ElaBreadcrumbBar::ElaBreadcrumbBar(QWidget* parent)
|
||||
d->_listView->setFont(textFont);
|
||||
|
||||
QScroller::grabGesture(d->_listView->viewport(), QScroller::LeftMouseButtonGesture);
|
||||
QScroller* scroller = QScroller::scroller(d->_listView->viewport());
|
||||
QScroller *scroller = QScroller::scroller(d->_listView->viewport());
|
||||
QScrollerProperties properties = scroller->scrollerProperties();
|
||||
properties.setScrollMetric(QScrollerProperties::MousePressEventDelay, 0);
|
||||
properties.setScrollMetric(QScrollerProperties::HorizontalOvershootPolicy, QScrollerProperties::OvershootAlwaysOn);
|
||||
@@ -60,33 +55,26 @@ ElaBreadcrumbBar::ElaBreadcrumbBar(QWidget* parent)
|
||||
scroller->setScrollerProperties(properties);
|
||||
|
||||
connect(scroller, &QScroller::stateChanged, this, [=](QScroller::State newstate) {
|
||||
if (newstate == QScroller::Pressed)
|
||||
{
|
||||
if (newstate == QScroller::Pressed) {
|
||||
d->_listDelegate->setPressIndex(d->_listView->indexAt(d->_listView->mapFromGlobal(QCursor::pos())));
|
||||
d->_listView->viewport()->update();
|
||||
}
|
||||
else if (newstate == QScroller::Scrolling || newstate == QScroller::Inactive)
|
||||
{
|
||||
} else if (newstate == QScroller::Scrolling || newstate == QScroller::Inactive) {
|
||||
d->_listDelegate->setPressIndex(QModelIndex());
|
||||
}
|
||||
});
|
||||
|
||||
QVBoxLayout* mainLayout = new QVBoxLayout(this);
|
||||
QVBoxLayout *mainLayout = new QVBoxLayout(this);
|
||||
mainLayout->setContentsMargins(0, 0, 0, 0);
|
||||
mainLayout->addWidget(d->_listView);
|
||||
}
|
||||
|
||||
ElaBreadcrumbBar::~ElaBreadcrumbBar()
|
||||
{
|
||||
}
|
||||
ElaBreadcrumbBar::~ElaBreadcrumbBar() {}
|
||||
|
||||
void ElaBreadcrumbBar::setTextPixelSize(int textPixelSize)
|
||||
{
|
||||
void ElaBreadcrumbBar::setTextPixelSize(int textPixelSize) {
|
||||
Q_D(ElaBreadcrumbBar);
|
||||
if (textPixelSize > 0)
|
||||
{
|
||||
if (textPixelSize > 0) {
|
||||
d->_pTextPixelSize = textPixelSize;
|
||||
QFont textFont = this->font();
|
||||
QFont textFont = this->font();
|
||||
textFont.setLetterSpacing(QFont::AbsoluteSpacing, 0.5);
|
||||
textFont.setPixelSize(d->_pTextPixelSize);
|
||||
d->_listView->setFont(textFont);
|
||||
@@ -94,40 +82,34 @@ void ElaBreadcrumbBar::setTextPixelSize(int textPixelSize)
|
||||
}
|
||||
}
|
||||
|
||||
int ElaBreadcrumbBar::getTextPixelSize() const
|
||||
{
|
||||
int ElaBreadcrumbBar::getTextPixelSize() const {
|
||||
Q_D(const ElaBreadcrumbBar);
|
||||
return d->_pTextPixelSize;
|
||||
}
|
||||
|
||||
void ElaBreadcrumbBar::setBreadcrumbList(QStringList breadcrumbList)
|
||||
{
|
||||
void ElaBreadcrumbBar::setBreadcrumbList(QStringList breadcrumbList) {
|
||||
Q_D(ElaBreadcrumbBar);
|
||||
d->_listModel->setBreadcrumbList(breadcrumbList);
|
||||
}
|
||||
|
||||
QStringList ElaBreadcrumbBar::appendBreadcrumb(QString breadcrumb)
|
||||
{
|
||||
QStringList ElaBreadcrumbBar::appendBreadcrumb(QString breadcrumb) {
|
||||
Q_D(ElaBreadcrumbBar);
|
||||
d->_listModel->appendBreadcrumb(breadcrumb);
|
||||
return d->_listModel->getBreadcrumbList();
|
||||
}
|
||||
|
||||
QStringList ElaBreadcrumbBar::removeBreadcrumb(QString breadcrumb)
|
||||
{
|
||||
QStringList ElaBreadcrumbBar::removeBreadcrumb(QString breadcrumb) {
|
||||
Q_D(ElaBreadcrumbBar);
|
||||
d->_listModel->removeBreadcrumb(breadcrumb);
|
||||
return d->_listModel->getBreadcrumbList();
|
||||
}
|
||||
|
||||
int ElaBreadcrumbBar::getBreadcrumbListCount() const
|
||||
{
|
||||
int ElaBreadcrumbBar::getBreadcrumbListCount() const {
|
||||
Q_D(const ElaBreadcrumbBar);
|
||||
return d->_listModel->getBreadcrumbListCount();
|
||||
}
|
||||
|
||||
QStringList ElaBreadcrumbBar::getBreadcrumbList() const
|
||||
{
|
||||
QStringList ElaBreadcrumbBar::getBreadcrumbList() const {
|
||||
Q_D(const ElaBreadcrumbBar);
|
||||
return d->_listModel->getBreadcrumbList();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user