Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Sharybin <sergey@blender.org>2022-05-18 18:02:09 +0300
committerSergey Sharybin <sergey@blender.org>2022-05-18 18:03:10 +0300
commitc56103356f642041f76c0be84772a40f1caad9df (patch)
treec005344332963b27bd9e0ac27866bd85034e30d4 /source/blender/editors/space_clip
parent2e70af5cd527e2c1f40e6f3af22adc3337714744 (diff)
Fix incorrect track search area election color
It was following the pattern area selection color instead of its own.
Diffstat (limited to 'source/blender/editors/space_clip')
-rw-r--r--source/blender/editors/space_clip/clip_draw.c62
1 files changed, 37 insertions, 25 deletions
diff --git a/source/blender/editors/space_clip/clip_draw.c b/source/blender/editors/space_clip/clip_draw.c
index 99524184323..7800ce797aa 100644
--- a/source/blender/editors/space_clip/clip_draw.c
+++ b/source/blender/editors/space_clip/clip_draw.c
@@ -676,6 +676,40 @@ static void track_colors(MovieTrackingTrack *track, int act, float col[3], float
}
}
+static void set_draw_marker_area_color(const MovieTrackingTrack *track,
+ const MovieTrackingMarker *marker,
+ const bool is_track_active,
+ const bool is_area_selected,
+ const float color[3],
+ const float selected_color[3])
+{
+ if (track->flag & TRACK_LOCKED) {
+ if (is_track_active) {
+ immUniformThemeColor(TH_ACT_MARKER);
+ }
+ else if (is_area_selected) {
+ immUniformThemeColorShade(TH_LOCK_MARKER, 64);
+ }
+ else {
+ immUniformThemeColor(TH_LOCK_MARKER);
+ }
+ }
+ else if (marker->flag & MARKER_DISABLED) {
+ if (is_track_active) {
+ immUniformThemeColor(TH_ACT_MARKER);
+ }
+ else if (is_area_selected) {
+ immUniformThemeColorShade(TH_DIS_MARKER, 128);
+ }
+ else {
+ immUniformThemeColor(TH_DIS_MARKER);
+ }
+ }
+ else {
+ immUniformColor3fv(is_area_selected ? selected_color : color);
+ }
+}
+
static void draw_marker_areas(SpaceClip *sc,
MovieTrackingTrack *track,
MovieTrackingMarker *marker,
@@ -785,31 +819,7 @@ static void draw_marker_areas(SpaceClip *sc,
GPU_matrix_push();
GPU_matrix_translate_2fv(marker_pos);
- if (track->flag & TRACK_LOCKED) {
- if (act) {
- immUniformThemeColor(TH_ACT_MARKER);
- }
- else if (track->pat_flag & SELECT) {
- immUniformThemeColorShade(TH_LOCK_MARKER, 64);
- }
- else {
- immUniformThemeColor(TH_LOCK_MARKER);
- }
- }
- else if (marker->flag & MARKER_DISABLED) {
- if (act) {
- immUniformThemeColor(TH_ACT_MARKER);
- }
- else if (track->pat_flag & SELECT) {
- immUniformThemeColorShade(TH_DIS_MARKER, 128);
- }
- else {
- immUniformThemeColor(TH_DIS_MARKER);
- }
- }
- else {
- immUniformColor3fv((track->pat_flag & SELECT) ? scol : col);
- }
+ set_draw_marker_area_color(track, marker, act, track->pat_flag & SELECT, col, scol);
if (tiny) {
immUniform1f("dash_width", 6.0f);
@@ -834,6 +844,8 @@ static void draw_marker_areas(SpaceClip *sc,
0;
if ((track->search_flag & SELECT) == sel && (sc->flag & SC_SHOW_MARKER_SEARCH) && show_search) {
+ set_draw_marker_area_color(track, marker, act, track->search_flag & SELECT, col, scol);
+
imm_draw_box_wire_2d(shdr_pos,
marker->search_min[0],
marker->search_min[1],