QtDeployer/source/CPP/deploypage.cpp

53 lines
1.3 KiB
C++
Raw Normal View History

2018-06-02 15:55:53 +03:00
#include "deploypage.h"
#include "ui_deploypage.h"
#include <QMessageBox>
2018-06-03 13:49:35 +03:00
#include "listviewdelegate.h"
2018-06-02 15:55:53 +03:00
DeployPage::DeployPage(CppManager * cpp, QWidget *parent) :
QWidget(parent),
ui(new Ui::DeployPage)
{
ui->setupUi(this);
m_cpp = cpp;
model = new ListModel();
ui->tableView->setModel(model);
2018-06-03 13:49:35 +03:00
delegate = new ListViewDelegate();
ui->tableView->setItemDelegate(delegate);
ui->tableView->horizontalHeader()->setSectionResizeMode(0, QHeaderView::Stretch);
ui->tableView->setColumnWidth(1, 40);
connect(ui->tableView, &QTableView::clicked, this, &DeployPage::clicked);
2018-06-02 15:55:53 +03:00
connect(ui->checkBox, &QCheckBox::stateChanged, this, &DeployPage::checkChanged);
connect(ui->deoply, &QPushButton::clicked, this, &DeployPage::deployClicked);
}
2018-06-03 13:49:35 +03:00
void DeployPage::clicked(QModelIndex i){
if(!ui->tableView->isEnabled()){
return;
}
if(i.column() == 1){
bool isChecked = model->data(i).toBool();
model->setData(i, !isChecked);
}
}
2018-06-02 15:55:53 +03:00
void DeployPage::deployClicked(){
2018-06-03 13:49:35 +03:00
emit deploy(model->getSelectedList(!ui->tableView->isEnabled()));
2018-06-02 15:55:53 +03:00
}
void DeployPage::buildFinished(){
model->setSource(m_cpp->cppLibraries());
}
void DeployPage::checkChanged(int e){
2018-06-03 13:49:35 +03:00
ui->tableView->setEnabled(!e);
2018-06-02 15:55:53 +03:00
}
DeployPage::~DeployPage()
{
2018-06-03 13:49:35 +03:00
delete delegate;
2018-06-02 15:55:53 +03:00
delete model;
delete ui;
}