summaryrefslogtreecommitdiff
path: root/gtk2_ardour/port_matrix_grid.h
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2009-01-27 04:21:13 +0000
committerCarl Hetherington <carl@carlh.net>2009-01-27 04:21:13 +0000
commit9cc7b452ebb8fe8f348ad6aad18054703700da18 (patch)
treea54d33c5f608b321823665baec607ee4f83d5f70 /gtk2_ardour/port_matrix_grid.h
parent7e1b86aceeef477e13b4c35f524034d909acd92c (diff)
First cut at mouseovers for the port matrix.
git-svn-id: svn://localhost/ardour2/branches/3.0@4446 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/port_matrix_grid.h')
-rw-r--r--gtk2_ardour/port_matrix_grid.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/gtk2_ardour/port_matrix_grid.h b/gtk2_ardour/port_matrix_grid.h
index 7441d3c79d..945ba5a2e6 100644
--- a/gtk2_ardour/port_matrix_grid.h
+++ b/gtk2_ardour/port_matrix_grid.h
@@ -23,7 +23,9 @@
#include <string>
#include <vector>
#include <boost/shared_ptr.hpp>
+#include "ardour/types.h"
#include "port_matrix_component.h"
+#include "port_matrix_types.h"
class PortMatrix;
class PortMatrixBody;
@@ -39,11 +41,25 @@ public:
PortMatrixGrid (PortMatrix *, PortMatrixBody *);
void button_press (double, double, int);
+ void mouseover_event (double, double);
+
+ double component_to_parent_x (double x) const;
+ double parent_to_component_x (double x) const;
+ double component_to_parent_y (double y) const;
+ double parent_to_component_y (double y) const;
+ void mouseover_changed (PortMatrixNode const &);
+ void draw_extra (cairo_t *);
private:
+
void compute_dimensions ();
void render (cairo_t *);
+ double channel_position (PortMatrixBundleChannel, ARDOUR::BundleList const &, double) const;
+ PortMatrixNode position_to_node (double, double) const;
+ PortMatrixBundleChannel position_to_channel (double, ARDOUR::BundleList const &, double) const;
+ void queue_draw_for (PortMatrixNode const &);
+
PortMatrix* _port_matrix;
};