|
@@ -38,9 +38,11 @@ void ProjectListItemWidget::initWidgets()
|
|
|
m_typeLabel->setText("评估类型:");
|
|
|
m_type = new QLabel(this);
|
|
|
m_type->setObjectName("type");
|
|
|
+ m_info = new PushButton("详情", NEWFLICON(FluentIcon, INFO), this);
|
|
|
+ m_info->setObjectName("info");
|
|
|
m_open = new PushButton("打开", NEWFLICON(QFDIcon, Open), this);
|
|
|
m_open->setObjectName("open");
|
|
|
- m_edit = new PushButton("编辑", NEWFLICON(FluentIcon, EDIT), this);
|
|
|
+ m_edit = new PushButton("修改", NEWFLICON(FluentIcon, EDIT), this);
|
|
|
m_edit->setObjectName("edit");
|
|
|
|
|
|
setStyleSheet("#name {color:#1196db; font-size:15px; font:bold}"
|
|
@@ -91,19 +93,21 @@ void ProjectListItemWidget::initLayout()
|
|
|
|
|
|
// 按钮
|
|
|
m_buttonLayout->addStretch();
|
|
|
- m_buttonLayout->addWidget(m_open);
|
|
|
+ m_buttonLayout->addWidget(m_info);
|
|
|
m_buttonLayout->addWidget(m_edit);
|
|
|
+ m_buttonLayout->addWidget(m_open);
|
|
|
}
|
|
|
|
|
|
void ProjectListItemWidget::connectSignalsAndSlots()
|
|
|
{
|
|
|
+ connect(m_info, &PushButton::clicked, this, &ProjectListItemWidget::sigInfo);
|
|
|
connect(m_open, &PushButton::clicked, this, &ProjectListItemWidget::sigOpen);
|
|
|
connect(m_edit, &PushButton::clicked, this, &ProjectListItemWidget::sigEdit);
|
|
|
}
|
|
|
|
|
|
void ProjectListItemWidget::setInfo(ProjectInfo *info)
|
|
|
{
|
|
|
- m_info = info;
|
|
|
+ m_proj = info;
|
|
|
if (info == nullptr) {
|
|
|
return;
|
|
|
}
|
|
@@ -131,9 +135,9 @@ int ProjectListItemWidget::index() const
|
|
|
return m_index;
|
|
|
}
|
|
|
|
|
|
-ProjectInfo *ProjectListItemWidget::info() const
|
|
|
+ProjectInfo *ProjectListItemWidget::proj() const
|
|
|
{
|
|
|
- return m_info;
|
|
|
+ return m_proj;
|
|
|
}
|
|
|
|
|
|
ProjectListWidget::ProjectListWidget(QWidget *parent) : QWidget(parent)
|
|
@@ -150,6 +154,7 @@ void ProjectListWidget::showProjects(QList<ProjectInfo *> list)
|
|
|
for (int i = 0; i < list.count(); i++) {
|
|
|
ProjectListItemWidget *w = new ProjectListItemWidget(i, m_listWidget);
|
|
|
w->setInfo(list[i]);
|
|
|
+ connect(w, &ProjectListItemWidget::sigInfo, this, &ProjectListWidget::slotInfo);
|
|
|
connect(w, &ProjectListItemWidget::sigOpen, this, &ProjectListWidget::slotOpen);
|
|
|
connect(w, &ProjectListItemWidget::sigEdit, this, &ProjectListWidget::slotEdit);
|
|
|
|
|
@@ -199,6 +204,8 @@ void ProjectListWidget::connectSiganlsAndSlots()
|
|
|
void ProjectListWidget::slotItemDoubleClicked(QListWidgetItem *item)
|
|
|
{
|
|
|
qDebug() << __FUNCTION__ << __LINE__;
|
|
|
+ ProjectListItemWidget *w = dynamic_cast<ProjectListItemWidget *>(m_listWidget->itemWidget(item));
|
|
|
+ emit sigInfo(w->proj());
|
|
|
}
|
|
|
|
|
|
void ProjectListWidget::slotItemClicked(QListWidgetItem *item)
|
|
@@ -221,14 +228,20 @@ void ProjectListWidget::slotItemSelectionChanged()
|
|
|
qDebug() << __FUNCTION__ << __LINE__;
|
|
|
}
|
|
|
|
|
|
+void ProjectListWidget::slotInfo()
|
|
|
+{
|
|
|
+ ProjectListItemWidget *w = dynamic_cast<ProjectListItemWidget *>(sender());
|
|
|
+ emit sigInfo(w->proj());
|
|
|
+}
|
|
|
+
|
|
|
void ProjectListWidget::slotOpen()
|
|
|
{
|
|
|
ProjectListItemWidget *w = dynamic_cast<ProjectListItemWidget *>(sender());
|
|
|
- emit sigOpen(w->info());
|
|
|
+ emit sigOpen(w->proj());
|
|
|
}
|
|
|
|
|
|
void ProjectListWidget::slotEdit()
|
|
|
{
|
|
|
ProjectListItemWidget *w = dynamic_cast<ProjectListItemWidget *>(sender());
|
|
|
- emit sigEdit(w->info());
|
|
|
+ emit sigEdit(w->proj());
|
|
|
}
|