[baobab/wip/valacharts] Charts: add tooltip



commit ba517c2bc1953bfa7d5aae234b6385bd5f51ecd6
Author: Stefano Facchini <stefano facchini gmail com>
Date:   Tue Jun 11 13:52:28 2013 +0200

    Charts: add tooltip

 src/baobab-chart.vala |   17 +++++++++++++++++
 1 files changed, 17 insertions(+), 0 deletions(-)
---
diff --git a/src/baobab-chart.vala b/src/baobab-chart.vala
index 3f82431..1aef8a3 100644
--- a/src/baobab-chart.vala
+++ b/src/baobab-chart.vala
@@ -226,6 +226,7 @@ namespace Baobab {
                 var item = node.data;
                 if (item.visible && is_point_over_item (item, event.x, event.y)) {
                     highlighted_item = item;
+                    has_tooltip = true;
                     found = true;
                     break;
                 }
@@ -233,6 +234,7 @@ namespace Baobab {
 
             if (!found) {
                 highlighted_item = null;
+                has_tooltip = false;
             }
 
             // gdk_event_request_motions??
@@ -579,5 +581,20 @@ namespace Baobab {
             m.row_deleted.disconnect (row_deleted);
             m.rows_reordered.disconnect (rows_reordered);
         }
+
+        protected override bool query_tooltip (int x, int y, bool keyboard_tooltip, Gtk.Tooltip tooltip) {
+            if (highlighted_item == null ||
+                highlighted_item.name == null ||
+                highlighted_item.size == null) {
+                return false;
+            }
+
+            tooltip.set_tip_area (highlighted_item.rect);
+
+            var markup = highlighted_item.name + "\n" + highlighted_item.size;
+            tooltip.set_markup (Markup.escape_text (markup));
+
+            return true;
+        }
     }
 }
\ No newline at end of file


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]