Skip to content

Commit

Permalink
Bug fix for Major/Minor gril line color (re-)setting to black on cancel
Browse files Browse the repository at this point in the history
Fixes the bug where on pressign cancle the major/minor gridline would be reset to black due to an invalid color being saved from the QColorDialog::getColor(...) dialog.
  • Loading branch information
alanspencer committed Oct 28, 2018
1 parent 2e02d97 commit b747425
Showing 1 changed file with 24 additions and 11 deletions.
35 changes: 24 additions & 11 deletions SPIERSview/src/mainwindow.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3198,32 +3198,45 @@ void MainWindow::wheelEvent(QWheelEvent *event)

/**
* @brief MainWindow::on_actionScale_Grid_Colour_triggered
* Updates the major grid line color using a QColorDialog.
*/
void MainWindow::on_actionScale_Grid_Colour_triggered()
{
FilterKeys = false;

QColor newcolour = QColorDialog::getColor(QColor(colorGridRed, colorGridGreen, colorGridBlue));
QColor newColor = QColorDialog::getColor(QColor(colorGridRed, colorGridGreen, colorGridBlue));
FilterKeys = true;
colorGridRed = newcolour.red();
colorGridGreen = newcolour.green();
colorGridBlue = newcolour.blue();
isFileDirty = true;

// Only update if color is valid; this won't be valid if Cancel has been pressed.
if (newColor.isValid())
{
colorGridRed = newColor.red();
colorGridGreen = newColor.green();
colorGridBlue = newColor.blue();
isFileDirty = true;
}

UpdateGL();
}

/**
* @brief MainWindow::on_actionMinor_Grid_Colour_triggered
* Updates the minor grid line color using a QColorDialog.
*/
void MainWindow::on_actionMinor_Grid_Colour_triggered()
{
FilterKeys = false;
QColor newcolour = QColorDialog::getColor(QColor(colorGridMinorRed, colorGridMinorGreen, colorGridMinorBlue));
QColor newColor = QColorDialog::getColor(QColor(colorGridMinorRed, colorGridMinorGreen, colorGridMinorBlue));
FilterKeys = true;
colorGridMinorRed = newcolour.red();
colorGridMinorGreen = newcolour.green();
colorGridMinorBlue = newcolour.blue();
isFileDirty = true;

// Only update if color is valid; this won't be valid if Cancel has been pressed.
if (newColor.isValid())
{
colorGridMinorRed = newColor.red();
colorGridMinorGreen = newColor.green();
colorGridMinorBlue = newColor.blue();
isFileDirty = true;
}

UpdateGL();
}

Expand Down

0 comments on commit b747425

Please sign in to comment.