1
0
Fork 0

GUI: AStyle

This commit is contained in:
mrexodia 2016-06-06 11:26:00 +02:00
parent 8ef2234caa
commit 88a005fcf9
No known key found for this signature in database
GPG Key ID: D72F9A4FAA0073B4
3 changed files with 181 additions and 180 deletions

View File

@ -176,7 +176,7 @@ void AbstractTableView::paintEvent(QPaintEvent* event)
int width = getColumnWidth(i);
QStyleOptionButton wOpt;
if((mColumnList[i].header.isPressed == true) && (mColumnList[i].header.isMouseOver == true)
|| (mGuiState==AbstractTableView::HeaderButtonReordering && mColumnOrder[mHoveredColumnDisplayIndex] == i))
|| (mGuiState == AbstractTableView::HeaderButtonReordering && mColumnOrder[mHoveredColumnDisplayIndex] == i))
wOpt.state = QStyle::State_Sunken;
else
wOpt.state = QStyle::State_Enabled;
@ -444,7 +444,7 @@ void AbstractTableView::mouseReleaseEvent(QMouseEvent* event)
}
}
void AbstractTableView::mouseDoubleClickEvent(QMouseEvent *event)
void AbstractTableView::mouseDoubleClickEvent(QMouseEvent* event)
{
if(event->y() < getHeaderHeight())
{

View File

@ -1,145 +1,145 @@
#include "ColumnReorderDialog.h"
#include "ui_ColumnReorderDialog.h"
#include <QMessageBox>
ColumnReorderDialog::ColumnReorderDialog(AbstractTableView *parent) :
QDialog(parent),
mParent(parent),
ui(new Ui::ColumnReorderDialog)
{
ui->setupUi(this);
setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint | Qt::MSWindowsFixedSizeDialogHint);
for(int j = 0; j < parent->getColumnCount(); j++)
{
int i = parent->mColumnOrder[j];
if(parent->getColumnHidden(i))
{
ui->listAvailable->addItem(parent->getColTitle(i));
ui->listAvailable->item(ui->listAvailable->count() - 1)->setData(1, QVariant(j));
}
else
{
ui->listDisplayed->addItem(parent->getColTitle(i));
ui->listDisplayed->item(ui->listDisplayed->count() - 1)->setData(1, QVariant(j));
}
}
if(ui->listAvailable->count() == 0)
{
ui->addAllButton->setEnabled(false);
ui->addButton->setEnabled(false);
}
}
ColumnReorderDialog::~ColumnReorderDialog()
{
delete ui;
}
void ColumnReorderDialog::on_okButton_clicked()
{
int i = 0;
if(ui->listDisplayed->count() == 0)
{
QMessageBox msg(QMessageBox::Warning, tr("Error"), tr("There isn't anything to display yet!"));
msg.exec();
return;
}
for(i = 0; i < ui->listDisplayed->count(); i++)
{
int col = ui->listDisplayed->item(i)->data(1).toInt();
mParent->mColumnOrder[i] = col;
mParent->setColumnHidden(col, false);
}
for(int j = 0; j < ui->listAvailable->count(); j++, i++)
{
int col = ui->listAvailable->item(j)->data(1).toInt();
mParent->mColumnOrder[i] = col;
mParent->setColumnHidden(col, true);
}
this->done(QDialog::Accepted);
}
void ColumnReorderDialog::on_cancelButton_clicked()
{
this->done(QDialog::Rejected);
}
void ColumnReorderDialog::on_addButton_clicked()
{
if(ui->listAvailable->selectedItems().empty())
return;
auto selected = ui->listAvailable->selectedItems();
for(auto i : selected)
{
ui->listDisplayed->addItem(i->text());
ui->listDisplayed->item(ui->listDisplayed->count() - 1)->setData(1, i->data(1));
delete i;
}
if(ui->listAvailable->count() == 0)
{
ui->addAllButton->setEnabled(false);
ui->addButton->setEnabled(false);
}
}
void ColumnReorderDialog::on_addAllButton_clicked()
{
for(int i = 0; i < ui->listAvailable->count(); i++)
{
ui->listDisplayed->addItem(ui->listAvailable->item(i)->text());
ui->listDisplayed->item(ui->listDisplayed->count() - 1)->setData(1, ui->listAvailable->item(i)->data(1));
}
ui->listAvailable->clear();
ui->addAllButton->setEnabled(false);
ui->addButton->setEnabled(false);
}
void ColumnReorderDialog::on_upButton_clicked()
{
if(ui->listDisplayed->selectedItems().empty())
return;
auto i = ui->listDisplayed->currentIndex().row();
if(i != 0)
{
auto prevItem = ui->listDisplayed->item(i - 1);
auto currentItem = ui->listDisplayed->item(i);
QString text = prevItem->text();
auto data = prevItem->data(1);
prevItem->setText(currentItem->text());
prevItem->setData(1, currentItem->data(1));
currentItem->setText(text);
currentItem->setData(1, data);
ui->listDisplayed->setCurrentRow(i - 1);
}
}
void ColumnReorderDialog::on_downButton_clicked()
{
if(ui->listDisplayed->selectedItems().empty())
return;
auto i = ui->listDisplayed->currentIndex().row();
if(i != ui->listDisplayed->count() - 1)
{
auto nextItem = ui->listDisplayed->item(i + 1);
auto currentItem = ui->listDisplayed->item(i);
QString text = nextItem->text();
auto data = nextItem->data(1);
nextItem->setText(currentItem->text());
nextItem->setData(1, currentItem->data(1));
currentItem->setText(text);
currentItem->setData(1, data);
ui->listDisplayed->setCurrentRow(i + 1);
}
}
void ColumnReorderDialog::on_hideButton_clicked()
{
if(ui->listDisplayed->selectedItems().empty())
return;
auto currentItem = ui->listDisplayed->currentItem();
ui->listAvailable->addItem(currentItem->text());
ui->listAvailable->item(ui->listAvailable->count() - 1)->setData(1, currentItem->data(1));
delete currentItem;
ui->addAllButton->setEnabled(true);
ui->addButton->setEnabled(true);
}
#include "ColumnReorderDialog.h"
#include "ui_ColumnReorderDialog.h"
#include <QMessageBox>
ColumnReorderDialog::ColumnReorderDialog(AbstractTableView* parent) :
QDialog(parent),
mParent(parent),
ui(new Ui::ColumnReorderDialog)
{
ui->setupUi(this);
setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint | Qt::MSWindowsFixedSizeDialogHint);
for(int j = 0; j < parent->getColumnCount(); j++)
{
int i = parent->mColumnOrder[j];
if(parent->getColumnHidden(i))
{
ui->listAvailable->addItem(parent->getColTitle(i));
ui->listAvailable->item(ui->listAvailable->count() - 1)->setData(1, QVariant(j));
}
else
{
ui->listDisplayed->addItem(parent->getColTitle(i));
ui->listDisplayed->item(ui->listDisplayed->count() - 1)->setData(1, QVariant(j));
}
}
if(ui->listAvailable->count() == 0)
{
ui->addAllButton->setEnabled(false);
ui->addButton->setEnabled(false);
}
}
ColumnReorderDialog::~ColumnReorderDialog()
{
delete ui;
}
void ColumnReorderDialog::on_okButton_clicked()
{
int i = 0;
if(ui->listDisplayed->count() == 0)
{
QMessageBox msg(QMessageBox::Warning, tr("Error"), tr("There isn't anything to display yet!"));
msg.exec();
return;
}
for(i = 0; i < ui->listDisplayed->count(); i++)
{
int col = ui->listDisplayed->item(i)->data(1).toInt();
mParent->mColumnOrder[i] = col;
mParent->setColumnHidden(col, false);
}
for(int j = 0; j < ui->listAvailable->count(); j++, i++)
{
int col = ui->listAvailable->item(j)->data(1).toInt();
mParent->mColumnOrder[i] = col;
mParent->setColumnHidden(col, true);
}
this->done(QDialog::Accepted);
}
void ColumnReorderDialog::on_cancelButton_clicked()
{
this->done(QDialog::Rejected);
}
void ColumnReorderDialog::on_addButton_clicked()
{
if(ui->listAvailable->selectedItems().empty())
return;
auto selected = ui->listAvailable->selectedItems();
for(auto i : selected)
{
ui->listDisplayed->addItem(i->text());
ui->listDisplayed->item(ui->listDisplayed->count() - 1)->setData(1, i->data(1));
delete i;
}
if(ui->listAvailable->count() == 0)
{
ui->addAllButton->setEnabled(false);
ui->addButton->setEnabled(false);
}
}
void ColumnReorderDialog::on_addAllButton_clicked()
{
for(int i = 0; i < ui->listAvailable->count(); i++)
{
ui->listDisplayed->addItem(ui->listAvailable->item(i)->text());
ui->listDisplayed->item(ui->listDisplayed->count() - 1)->setData(1, ui->listAvailable->item(i)->data(1));
}
ui->listAvailable->clear();
ui->addAllButton->setEnabled(false);
ui->addButton->setEnabled(false);
}
void ColumnReorderDialog::on_upButton_clicked()
{
if(ui->listDisplayed->selectedItems().empty())
return;
auto i = ui->listDisplayed->currentIndex().row();
if(i != 0)
{
auto prevItem = ui->listDisplayed->item(i - 1);
auto currentItem = ui->listDisplayed->item(i);
QString text = prevItem->text();
auto data = prevItem->data(1);
prevItem->setText(currentItem->text());
prevItem->setData(1, currentItem->data(1));
currentItem->setText(text);
currentItem->setData(1, data);
ui->listDisplayed->setCurrentRow(i - 1);
}
}
void ColumnReorderDialog::on_downButton_clicked()
{
if(ui->listDisplayed->selectedItems().empty())
return;
auto i = ui->listDisplayed->currentIndex().row();
if(i != ui->listDisplayed->count() - 1)
{
auto nextItem = ui->listDisplayed->item(i + 1);
auto currentItem = ui->listDisplayed->item(i);
QString text = nextItem->text();
auto data = nextItem->data(1);
nextItem->setText(currentItem->text());
nextItem->setData(1, currentItem->data(1));
currentItem->setText(text);
currentItem->setData(1, data);
ui->listDisplayed->setCurrentRow(i + 1);
}
}
void ColumnReorderDialog::on_hideButton_clicked()
{
if(ui->listDisplayed->selectedItems().empty())
return;
auto currentItem = ui->listDisplayed->currentItem();
ui->listAvailable->addItem(currentItem->text());
ui->listAvailable->item(ui->listAvailable->count() - 1)->setData(1, currentItem->data(1));
delete currentItem;
ui->addAllButton->setEnabled(true);
ui->addButton->setEnabled(true);
}

View File

@ -1,33 +1,34 @@
#ifndef COLUMNREORDERDIALOG_H
#define COLUMNREORDERDIALOG_H
#include "AbstractTableView.h"
#include <QDialog>
namespace Ui {
class ColumnReorderDialog;
}
class ColumnReorderDialog : public QDialog
{
Q_OBJECT
public:
explicit ColumnReorderDialog(AbstractTableView* parent = 0);
~ColumnReorderDialog();
private slots:
void on_upButton_clicked();
void on_downButton_clicked();
void on_addButton_clicked();
void on_hideButton_clicked();
void on_addAllButton_clicked();
void on_okButton_clicked();
void on_cancelButton_clicked();
private:
Ui::ColumnReorderDialog* ui;
AbstractTableView* mParent;
};
#endif // COLUMNREORDERDIALOG_H
#ifndef COLUMNREORDERDIALOG_H
#define COLUMNREORDERDIALOG_H
#include "AbstractTableView.h"
#include <QDialog>
namespace Ui
{
class ColumnReorderDialog;
}
class ColumnReorderDialog : public QDialog
{
Q_OBJECT
public:
explicit ColumnReorderDialog(AbstractTableView* parent = 0);
~ColumnReorderDialog();
private slots:
void on_upButton_clicked();
void on_downButton_clicked();
void on_addButton_clicked();
void on_hideButton_clicked();
void on_addAllButton_clicked();
void on_okButton_clicked();
void on_cancelButton_clicked();
private:
Ui::ColumnReorderDialog* ui;
AbstractTableView* mParent;
};
#endif // COLUMNREORDERDIALOG_H