summaryrefslogtreecommitdiffstats
path: root/src/Authoring/Studio/MainFrm.cpp
diff options
context:
space:
mode:
authorTomi Korpipaa <tomi.korpipaa@qt.io>2017-12-05 09:05:01 +0200
committerTomi Korpipää <tomi.korpipaa@qt.io>2017-12-14 04:33:27 +0000
commit0fb599b6d9610e75490d90707bca32a05484eb6e (patch)
tree5d2d23c64dea85b863de6528f7a3794c5b1b3878 /src/Authoring/Studio/MainFrm.cpp
parent46df7355d6985b751773214f4b530fa55974b4d0 (diff)
Unify color dialogs
Force Qt style to all color dialogs. In addition, add previewing the color change immediately. Task-number: QT3DS-643 Change-Id: I6b6671390c8a5456e7050f9ac2a00043c299052d Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Diffstat (limited to 'src/Authoring/Studio/MainFrm.cpp')
-rw-r--r--src/Authoring/Studio/MainFrm.cpp23
1 files changed, 18 insertions, 5 deletions
diff --git a/src/Authoring/Studio/MainFrm.cpp b/src/Authoring/Studio/MainFrm.cpp
index 32a8ff05..6826dbc5 100644
--- a/src/Authoring/Studio/MainFrm.cpp
+++ b/src/Authoring/Studio/MainFrm.cpp
@@ -67,6 +67,7 @@
#include <QtCore/qtimer.h>
#include <QtCore/qurl.h>
#include <QtCore/qdir.h>
+#include <QtWidgets/qcolordialog.h>
// Constants
const long PLAYBACK_TIMER_TIMEOUT = 10; // 10 milliseconds
@@ -531,14 +532,26 @@ void CMainFrame::OnUpdateToolChange()
void CMainFrame::OnTimelineSetTimeBarColor()
{
ITimelineTimebar *theTimelineTimebar = GetSelectedTimelineTimebar();
- if (theTimelineTimebar != NULL) {
- CColor theColor = theTimelineTimebar->GetTimebarColor();
-
- if (g_StudioApp.GetDialogs()->PromptObjectTimebarColor(theColor))
- theTimelineTimebar->SetTimebarColor(theColor);
+ if (theTimelineTimebar) {
+ QColor previousColor = theTimelineTimebar->GetTimebarColor();
+ QColorDialog *theColorDlg = new QColorDialog(previousColor, this);
+ theColorDlg->setOption(QColorDialog::DontUseNativeDialog, true);
+ connect(theColorDlg, &QColorDialog::currentColorChanged,
+ this, &CMainFrame::OnTimeBarColorChanged);
+ if (theColorDlg->exec() == QDialog::Accepted)
+ theTimelineTimebar->SetTimebarColor(theColorDlg->selectedColor());
+ else
+ theTimelineTimebar->SetTimebarColor(previousColor);
}
}
+void CMainFrame::OnTimeBarColorChanged(const QColor &color)
+{
+ ITimelineTimebar *theTimelineTimebar = GetSelectedTimelineTimebar();
+ if (theTimelineTimebar)
+ theTimelineTimebar->SetTimebarColor(color);
+}
+
//==============================================================================
/**
* OnUpdateTimelineSetTimeBarColor: Handles the update UI message for the