|
@@ -7,6 +7,8 @@
|
|
|
#include <QListWidget>
|
|
|
#include <QLabel>
|
|
|
|
|
|
+#include <QDebug>
|
|
|
+
|
|
|
ProjectListWidget::ProjectListWidget(QWidget *parent) : QWidget(parent)
|
|
|
{
|
|
|
initialize();
|
|
@@ -17,17 +19,17 @@ ProjectListWidget::ProjectListWidget(QWidget *parent) : QWidget(parent)
|
|
|
|
|
|
void ProjectListWidget::refreshList()
|
|
|
{
|
|
|
- m_projListWidget->clear();
|
|
|
+ m_listWidget->clear();
|
|
|
|
|
|
for (int i = 1; i <= 100; i++) {
|
|
|
QListWidgetItem *item = new QListWidgetItem;
|
|
|
item->setSizeHint(QSize(200, 80));
|
|
|
- m_projListWidget->addItem(item);
|
|
|
+ m_listWidget->addItem(item);
|
|
|
|
|
|
ProjectListItemWidget *w = new ProjectListItemWidget();
|
|
|
w->setIndex(i);
|
|
|
w->setName(QString("工程%1").arg(i));
|
|
|
- m_projListWidget->setItemWidget(item, w);
|
|
|
+ m_listWidget->setItemWidget(item, w);
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -38,44 +40,53 @@ void ProjectListWidget::initialize()
|
|
|
setAutoFillBackground(true);
|
|
|
setPalette(pal);
|
|
|
|
|
|
- m_vBoxLayout = new QVBoxLayout(this);
|
|
|
- m_buttonLayout = new QHBoxLayout();
|
|
|
- m_searchLineEdit = new LineEdit(this);
|
|
|
- m_searchLineEdit->setIsClearButtonEnabled(true);
|
|
|
- m_searchLineEdit->setPlaceholderText("搜索工程");
|
|
|
- m_renameButton = new ToolButton(NEWFLICON(FluentIcon, EDIT), this);
|
|
|
- m_renameButton->setToolTip("修改工程名");
|
|
|
- m_newProjButton = new ToolButton(NEWFLICON(FluentIcon, ADD), this);
|
|
|
- m_newProjButton->setToolTip("新建工程");
|
|
|
- m_deleteButton = new ToolButton(NEWFLICON(FluentIcon, DELETE), this);
|
|
|
- m_deleteButton->setToolTip("删除工程");
|
|
|
- m_projListWidget = new QListWidget(this);
|
|
|
+ m_vBoxLayout = new QVBoxLayout(this);
|
|
|
|
|
|
- m_projListWidget->setAlternatingRowColors(true);
|
|
|
- m_projListWidget->setStyleSheet("QListWidget {border: 1px solid rgba(0, 0, 0, 0.073);background: rgb(255, 255, "
|
|
|
- "255);alternate-background-color: rgb(244, 244, 255);}");
|
|
|
+ m_listWidget = new QListWidget(this);
|
|
|
|
|
|
- setProjButtonsEnabled(false);
|
|
|
+ m_listWidget->setAlternatingRowColors(true);
|
|
|
+ m_listWidget->setStyleSheet("QListWidget {border: 1px solid rgba(0, 0, 0, 0.073);background: rgb(255, 255, "
|
|
|
+ "255);alternate-background-color: rgb(244, 244, 255);}");
|
|
|
}
|
|
|
|
|
|
void ProjectListWidget::initLayout()
|
|
|
{
|
|
|
- m_vBoxLayout->addLayout(m_buttonLayout);
|
|
|
+ m_vBoxLayout->setMargin(0);
|
|
|
+ m_vBoxLayout->addWidget(m_listWidget);
|
|
|
+}
|
|
|
|
|
|
- m_buttonLayout->addWidget(m_searchLineEdit);
|
|
|
- m_buttonLayout->addWidget(m_newProjButton);
|
|
|
- m_buttonLayout->addWidget(m_renameButton);
|
|
|
- m_buttonLayout->addWidget(m_deleteButton);
|
|
|
+void ProjectListWidget::connectSiganlsAndSlots()
|
|
|
+{
|
|
|
+ connect(m_listWidget, &QListWidget::itemDoubleClicked, this, &ProjectListWidget::slotItemDoubleClicked);
|
|
|
+ connect(m_listWidget, &QListWidget::itemClicked, this, &ProjectListWidget::slotItemClicked);
|
|
|
+ connect(m_listWidget, &QListWidget::currentItemChanged, this, &ProjectListWidget::slotCurrentItemChanged);
|
|
|
+ connect(m_listWidget, &QListWidget::currentRowChanged, this, &ProjectListWidget::slotCurrentRowChanged);
|
|
|
+ connect(m_listWidget, &QListWidget::itemSelectionChanged, this, &ProjectListWidget::slotItemSelectionChanged);
|
|
|
+}
|
|
|
|
|
|
- m_vBoxLayout->addWidget(m_projListWidget);
|
|
|
+void ProjectListWidget::slotItemDoubleClicked(QListWidgetItem *item)
|
|
|
+{
|
|
|
+ qDebug() << __FUNCTION__ << __LINE__;
|
|
|
}
|
|
|
|
|
|
-void ProjectListWidget::connectSiganlsAndSlots() { }
|
|
|
+void ProjectListWidget::slotItemClicked(QListWidgetItem *item)
|
|
|
+{
|
|
|
+ qDebug() << __FUNCTION__ << __LINE__;
|
|
|
+}
|
|
|
+
|
|
|
+void ProjectListWidget::slotCurrentItemChanged(QListWidgetItem *current, QListWidgetItem *previous)
|
|
|
+{
|
|
|
+ qDebug() << __FUNCTION__ << __LINE__;
|
|
|
+}
|
|
|
+
|
|
|
+void ProjectListWidget::slotCurrentRowChanged(int currentRow)
|
|
|
+{
|
|
|
+ qDebug() << __FUNCTION__ << __LINE__;
|
|
|
+}
|
|
|
|
|
|
-void ProjectListWidget::setProjButtonsEnabled(bool enabled)
|
|
|
+void ProjectListWidget::slotItemSelectionChanged()
|
|
|
{
|
|
|
- m_renameButton->setEnabled(enabled);
|
|
|
- m_deleteButton->setEnabled(enabled);
|
|
|
+ qDebug() << __FUNCTION__ << __LINE__;
|
|
|
}
|
|
|
|
|
|
ProjectListItemWidget::ProjectListItemWidget(QWidget *parent) : QWidget(parent)
|