123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- #include "compareitemdialog.h"
- #include "ui_compareitemdialog.h"
- CompareItemDialog::CompareItemDialog(QWidget *parent)
- : QDialog(parent)
- , ui(new Ui::CompareItemDialog)
- {
- ui->setupUi(this);
- setWindowFlag(Qt::FramelessWindowHint);
- setAttribute(Qt::WA_TranslucentBackground);
- connect(ui->btnCancel, &QPushButton::clicked, this, &CompareItemDialog::reject);
- connect(ui->btnClose, &QPushButton::clicked, this, &CompareItemDialog::close);
- connect(ui->btnAdd, &QPushButton::clicked, this, &CompareItemDialog::OnBtnAddClicked);
- }
- CompareItemDialog::~CompareItemDialog()
- {
- delete ui;
- }
- void CompareItemDialog::OnBtnAddClicked()
- {
- QVBoxLayout* pLayout = qobject_cast<QVBoxLayout*>(ui->scrollAreaWidgetContents->layout());
- if(pLayout)
- {
- SingleCompareRoadWidget *pWgt = new SingleCompareRoadWidget(this);
- connect(pWgt, &SingleCompareRoadWidget::deleted, this, &CompareItemDialog::OnCompareRoadWgtDeleted);
- pWgt->setIndex(m_listOtherRoadWgt.size() + 3);
- pWgt->setDelBtnVisible(true);
- pLayout->insertWidget(m_listOtherRoadWgt.size(), pWgt);
- m_listOtherRoadWgt.append(pWgt);
- }
- }
- void CompareItemDialog::OnCompareRoadWgtDeleted(int nIndex)
- {
- int nRealIndex = nIndex - 3;
- if(nRealIndex < m_listOtherRoadWgt.size())
- {
- SingleCompareRoadWidget *pWgt = m_listOtherRoadWgt.at(nRealIndex);
- m_listOtherRoadWgt.removeOne(pWgt);
- delete pWgt;
- pWgt = nullptr;
- }
- for(int i = nRealIndex; i < m_listOtherRoadWgt.size(); i++)
- {
- m_listOtherRoadWgt.at(i)->setIndex(i + 3);
- }
- }
|