added setting for focus on hover for #161

This commit is contained in:
itsmattkc
2018-12-17 21:53:42 +11:00
parent 302310ab7b
commit 467d271d5c
8 changed files with 90 additions and 30 deletions
+32
View File
@@ -7,6 +7,7 @@
#include "project/sequence.h"
#include "project/clip.h"
#include "project/transition.h"
#include "io/config.h"
#include "debug.h"
Project* panel_project = 0;
@@ -105,3 +106,34 @@ void update_ui(bool modified) {
panel_timeline->repaint_timeline();
panel_sequence_viewer->update_viewer();
}
QDockWidget *get_focused_panel() {
QDockWidget* w = NULL;
if (config.hover_focus) {
if (panel_project->rect().contains(panel_project->mapFromGlobal(QCursor::pos()))) {
w = panel_project;
} else if (panel_effect_controls->rect().contains(panel_effect_controls->mapFromGlobal(QCursor::pos()))) {
w = panel_effect_controls;
} else if (panel_sequence_viewer->rect().contains(panel_sequence_viewer->mapFromGlobal(QCursor::pos()))) {
w = panel_sequence_viewer;
} else if (panel_footage_viewer->rect().contains(panel_footage_viewer->mapFromGlobal(QCursor::pos()))) {
w = panel_footage_viewer;
} else if (panel_timeline->rect().contains(panel_timeline->mapFromGlobal(QCursor::pos()))) {
w = panel_timeline;
}
}
if (w == NULL) {
if (panel_project->is_focused()) {
w = panel_project;
} else if (panel_effect_controls->keyframe_focus()) {
w = panel_effect_controls;
} else if (panel_sequence_viewer->is_focused()) {
w = panel_sequence_viewer;
} else if (panel_footage_viewer->is_focused()) {
w = panel_footage_viewer;
} else if (panel_timeline->focused()) {
w = panel_timeline;
}
}
return w;
}