diff --git a/src/frames/mainwindow.cpp b/src/frames/mainwindow.cpp index 12300c9..25ca5f8 100644 --- a/src/frames/mainwindow.cpp +++ b/src/frames/mainwindow.cpp @@ -15,6 +15,7 @@ MainWindow::MainWindow(QWidget *parent) , ui(new Ui::MainWindow) { ui->setupUi(this); + this->selectedBoardIndex = -1; connect(ui->actionPreferences, &QAction::triggered, this, &MainWindow::openPreferences); connect(ui->actionAbout, &QAction::triggered, this, &MainWindow::openAbout); connect(ui->actionNew, &QAction::triggered, this, &MainWindow::onNewBoardClick); @@ -27,7 +28,7 @@ MainWindow::MainWindow(QWidget *parent) MainWindow::~MainWindow() { - for (int i = 0; i < boards.count(); i++) + for (uint16_t i = 0; i < boards.count(); i++) { Board *b = boards.takeAt(i); delete b; @@ -37,7 +38,7 @@ MainWindow::~MainWindow() void MainWindow::openPreferences() { - PrefDialog dialog(this); + PrefDialog dialog(status, priorities, this); if (dialog.exec() == QDialog::DialogCode::Accepted) { this->priorities = dialog.getPriorities(); @@ -230,7 +231,7 @@ const QColor MainWindow::getStatusColor(QString uuid, QColor defaultColor) void MainWindow::redrawBoardList() { QListWidget *l = ui->listWidget; - for (int i = 0; i < l->count(); i++) + for (uint16_t i = 0; i < l->count(); i++) { delete l->takeItem(i); } @@ -244,7 +245,7 @@ void MainWindow::redrawBoardList() void MainWindow::redrawTaskTree() { QTreeWidget *l = ui->treeWidget; - for (int i = 0; i < l->topLevelItemCount(); i++) + for (uint16_t i = 0; i < l->topLevelItemCount(); i++) { delete l->takeTopLevelItem(i); } diff --git a/src/frames/mainwindow.h b/src/frames/mainwindow.h index 448c984..e19c33e 100644 --- a/src/frames/mainwindow.h +++ b/src/frames/mainwindow.h @@ -32,7 +32,7 @@ private slots: private: Ui::MainWindow *ui; - int selectedBoardIndex = -1; + int16_t selectedBoardIndex; QVector priorities; QVector status; QVector boards; diff --git a/src/frames/prefdialog.cpp b/src/frames/prefdialog.cpp index fedd8f9..6daac64 100644 --- a/src/frames/prefdialog.cpp +++ b/src/frames/prefdialog.cpp @@ -6,11 +6,28 @@ #include "../tools.h" -PrefDialog::PrefDialog(QWidget *parent) : +PrefDialog::PrefDialog(QVector status, QVector priorities, QWidget *parent) : QDialog(parent), ui(new Ui::PrefDialog) { ui->setupUi(this); + + foreach (Status s, status) + { + QListWidgetItem *item = new QListWidgetItem(s.getName()); + statusUUIDRef.append(s.getUUID()); + setItemColor(item, s.getColor()); + ui->statusListWidget->addItem(item); + } + + foreach (Priority p, priorities) + { + QListWidgetItem *item = new QListWidgetItem(p.getName()); + priorityUUIDRef.append(p.getUUID()); + setItemColor(item, p.getColor()); + ui->priorityListWidget->addItem(item); + } + connect(ui->addStatusButton, &QPushButton::clicked, this, &PrefDialog::onAddStatusButtonClick); connect(ui->addPriorityButton, &QPushButton::clicked, this, &PrefDialog::onAddPriorityButtonClick); connect(ui->statusListWidget, &QListWidget::currentRowChanged, this, &PrefDialog::onItemSelectionChange); diff --git a/src/frames/prefdialog.h b/src/frames/prefdialog.h index 9e2c622..224ee78 100644 --- a/src/frames/prefdialog.h +++ b/src/frames/prefdialog.h @@ -17,7 +17,7 @@ class PrefDialog : public QDialog Q_OBJECT public: - explicit PrefDialog(QWidget *parent = nullptr); + explicit PrefDialog(QVector status, QVector priorities, QWidget *parent = nullptr); ~PrefDialog(); QVector getPriorities(); diff --git a/src/frames/taskdialog.cpp b/src/frames/taskdialog.cpp index 4b8df8f..137d888 100644 --- a/src/frames/taskdialog.cpp +++ b/src/frames/taskdialog.cpp @@ -53,8 +53,8 @@ TaskDialog::TaskDialog(Task *t, QVector status, QVector priori if (t->getPriorityUUID().length() > 0) { - int refindex = -1; - for (int i = 0; i < this->priorities.count(); i++) + int16_t refindex = -1; + for (uint16_t i = 0; i < this->priorities.count(); i++) { if (this->priorities[i].getUUID() == t->getPriorityUUID()) { @@ -69,8 +69,8 @@ TaskDialog::TaskDialog(Task *t, QVector status, QVector priori if (t->getStatusUUID().length() > 0) { - int refindex = -1; - for (int i = 0; i < this->status.count(); i++) + int16_t refindex = -1; + for (uint16_t i = 0; i < this->status.count(); i++) { if (this->status[i].getUUID() == t->getStatusUUID()) { diff --git a/src/models/board.cpp b/src/models/board.cpp index 9f99e34..3e2f9d9 100644 --- a/src/models/board.cpp +++ b/src/models/board.cpp @@ -7,7 +7,7 @@ Board::Board(QString name) Board::~Board() { - for (int i = 0; i < tasks.count(); i++) + for (uint16_t i = 0; i < tasks.count(); i++) { Task *t = tasks.takeAt(i); delete t; @@ -24,9 +24,9 @@ void Board::add(Task t) tasks.append(new Task(t)); } -Task *Board::taskAt(int i) +Task *Board::taskAt(uint16_t i) { - if (i >= 0 && i < tasks.count()) + if (i < tasks.count()) { return tasks[i]; } diff --git a/src/models/board.h b/src/models/board.h index 919c41d..e40bbad 100644 --- a/src/models/board.h +++ b/src/models/board.h @@ -14,7 +14,7 @@ public: const QString getName(); void add(Task); - Task *taskAt(int); + Task *taskAt(uint16_t); const QVector getTasks(); private: diff --git a/src/tools.cpp b/src/tools.cpp index 30135be..99a7284 100644 --- a/src/tools.cpp +++ b/src/tools.cpp @@ -12,28 +12,34 @@ Tools::Tools() QColor Tools::getRandomColor() { srand(time(0)); - int r = arc4random() % 255; - int g = arc4random() % 255; - int b = arc4random() % 255; +#ifdef __linux__ + uint8_t r = rand() % 255; + uint8_t g = rand() % 255; + uint8_t b = rand() % 255; +#else + uint8_t r = arc4random() % 255; + uint8_t g = arc4random() % 255; + uint8_t b = arc4random() % 255; +#endif return QColor(r, g, b); } QColor Tools::getForegroundColor(QColor background) { - int avg = background.red(); + uint8_t avg = background.red(); avg += background.green(); avg += background.blue(); avg = avg / 3; - int avg2 = background.red(); + uint8_t avg2 = background.red(); avg2 += background.green(); avg2 = avg2 / 2; - int avg3 = background.red(); + uint8_t avg3 = background.red(); avg3 += background.blue(); avg3 = avg3 / 2; - int avg4 = background.green(); + uint8_t avg4 = background.green(); avg4 += background.blue(); avg4 = avg4 / 2;