[gegl] gcut: highlight active filter node, add a X mark
- From: Øyvind Kolås <ok src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gegl] gcut: highlight active filter node, add a X mark
- Date: Mon, 17 Jul 2017 19:10:09 +0000 (UTC)
commit 38b105b24b7e79d8b655316e60a1c3dd75af015d
Author: Øyvind Kolås <pippin gimp org>
Date: Mon Jul 17 20:59:35 2017 +0200
gcut: highlight active filter node, add a X mark
pressing the X removes the current filter node
gcut/gcut-ui.c | 21 ++++++++++++++++++++-
1 files changed, 20 insertions(+), 1 deletions(-)
---
diff --git a/gcut/gcut-ui.c b/gcut/gcut-ui.c
index 9e3ab58..05b618d 100644
--- a/gcut/gcut-ui.c
+++ b/gcut/gcut-ui.c
@@ -2109,6 +2109,7 @@ cairo_set_line_width (cr, 10.0);
cairo_stroke (cr);
#endif
}
+static void remove_clip (MrgEvent *event, void *data1, void *data2);
static float print_nodes (Mrg *mrg, GeglEDL *edl, GeglNode *node, float x, float y)
{
@@ -2120,10 +2121,14 @@ static float print_nodes (Mrg *mrg, GeglEDL *edl, GeglNode *node, float x, float
(node != filter_start) &&
(node != filter_end))
{
+ float start_y = y;
+
if (node == selected_node)
y = print_props (mrg, edl, node, x + mrg_em(mrg) * 0.5, y);
#if 1
- rounded_rectangle (mrg_cr (mrg), x-0.5*mrg_em(mrg), y - mrg_em (mrg) * 1.0, mrg_em(mrg) * 10.0,
mrg_em (mrg) * 1.2, 0.4, -1);
+ rounded_rectangle (mrg_cr (mrg), x-0.5 * mrg_em(mrg), y - mrg_em (mrg) * 1.0, mrg_em(mrg) * 10.0,
mrg_em (mrg) * 1.2, 0.4, -1);
+#endif
+#if 0
cairo_rectangle (mrg_cr (mrg), x + 1.0 * mrg_em (mrg), y - mrg_em (mrg) * 1.4, mrg_em(mrg) * 0.1,
mrg_em (mrg) * 0.4);
#endif
@@ -2134,6 +2139,20 @@ static float print_nodes (Mrg *mrg, GeglEDL *edl, GeglNode *node, float x, float
mrg_text_listen_done (mrg);
y -= mrg_em (mrg) * 1.5;
+
+ if (selected_node == node)
+ {
+ cairo_rectangle (mrg_cr (mrg), x + 0.0 * mrg_em (mrg), y + mrg_em(mrg)*0.25, mrg_em (mrg) * 12.0,
(start_y-y));
+ cairo_set_source_rgba (mrg_cr (mrg), 1.0, 0.0, 0.0, 1.0);
+ cairo_stroke (mrg_cr (mrg));
+
+ mrg_set_xy (mrg, x + 10.4 * mrg_em (mrg), y + mrg_em (mrg) * 1.5);
+ mrg_text_listen (mrg, MRG_CLICK, remove_clip, edl, edl);
+ mrg_printf (mrg, " X ");
+ mrg_text_listen_done (mrg);
+
+ }
+
}
{
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]