88 lines
2.9 KiB
C++
88 lines
2.9 KiB
C++
#include "panelSelectionDialog.h"
|
|
#include "ui_panelSelectionDialog.h"
|
|
|
|
#define panelTye 1
|
|
|
|
PanelSelectionDialog::PanelSelectionDialog(QWidget *parent)
|
|
: QDialog(parent)
|
|
, ui(new Ui::panelSelectionDialog)
|
|
{
|
|
ui->setupUi(this);
|
|
setWindowFlags(Qt::FramelessWindowHint | Qt::Dialog);
|
|
setAttribute(Qt::WA_TranslucentBackground);
|
|
|
|
initList();
|
|
|
|
connect(ui->btnConfirm, SIGNAL(clicked()), this, SLOT(onBtnClicked_confirm()));
|
|
connect(ui->btnCancle, SIGNAL(clicked()), this, SLOT(onBtnClicked_cancle()));
|
|
}
|
|
|
|
PanelSelectionDialog::~PanelSelectionDialog()
|
|
{
|
|
delete ui;
|
|
}
|
|
|
|
void PanelSelectionDialog::initList()
|
|
{
|
|
ui->listWidget->clear();
|
|
|
|
QListWidgetItem* item = new QListWidgetItem(QString::fromWCharArray(L"曲线图"));
|
|
item->setData(Qt::UserRole + panelTye, lineChart);
|
|
ui->listWidget->addItem(item);
|
|
item = new QListWidgetItem(QString::fromWCharArray(L"直方图"));
|
|
item->setData(Qt::UserRole + panelTye, barChart);
|
|
ui->listWidget->addItem(item);
|
|
item = new QListWidgetItem(QString::fromWCharArray(L"点状图"));
|
|
item->setData(Qt::UserRole + panelTye, dotChart);
|
|
item->setFlags(item->flags() & ~Qt::ItemIsEnabled);
|
|
ui->listWidget->addItem(item);
|
|
item = new QListWidgetItem(QString::fromWCharArray(L"饼状图"));
|
|
item->setData(Qt::UserRole + panelTye, pieChart);
|
|
item->setFlags(item->flags() & ~Qt::ItemIsEnabled);
|
|
ui->listWidget->addItem(item);
|
|
item = new QListWidgetItem(QString::fromWCharArray(L"热力图"));
|
|
item->setData(Qt::UserRole + panelTye, heatMap);
|
|
item->setFlags(item->flags() & ~Qt::ItemIsEnabled);
|
|
ui->listWidget->addItem(item);
|
|
item = new QListWidgetItem(QString::fromWCharArray(L"仪表盘"));
|
|
item->setData(Qt::UserRole + panelTye, dial);
|
|
item->setFlags(item->flags() & ~Qt::ItemIsEnabled);
|
|
ui->listWidget->addItem(item);
|
|
item = new QListWidgetItem(QString::fromWCharArray(L"数据表"));
|
|
item->setData(Qt::UserRole + panelTye, table);
|
|
item->setFlags(item->flags() & ~Qt::ItemIsEnabled);
|
|
ui->listWidget->addItem(item);
|
|
item = new QListWidgetItem(QString::fromWCharArray(L"地图"));
|
|
item->setData(Qt::UserRole + panelTye, map);
|
|
item->setFlags(item->flags() & ~Qt::ItemIsEnabled);
|
|
ui->listWidget->addItem(item);
|
|
|
|
ui->listWidget->setCurrentRow(0);
|
|
}
|
|
|
|
// void PanelSelectionDialog::showEvent(QShowEvent* event)
|
|
// {
|
|
// Q_UNUSED(event);
|
|
// ui->listWidget->clearSelection();
|
|
// QDialog::showEvent(event);
|
|
// }
|
|
|
|
void PanelSelectionDialog::onBtnClicked_confirm()
|
|
{
|
|
QListWidgetItem* item = ui->listWidget->currentItem();
|
|
if(item)
|
|
{
|
|
DataPanelType type = (DataPanelType)item->data(Qt::UserRole + panelTye).toInt();
|
|
ui->listWidget->setCurrentRow(0);
|
|
hide();
|
|
emit panelType(type);
|
|
}
|
|
}
|
|
|
|
void PanelSelectionDialog::onBtnClicked_cancle()
|
|
{
|
|
hide();
|
|
emit sgl_hide();
|
|
//ui->listWidget->clearSelection();
|
|
}
|