summaryrefslogtreecommitdiff
path: root/gtk2_ardour/marker.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2007-11-12 22:23:01 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2007-11-12 22:23:01 +0000
commitb01bdb7e70f021da764e81a4b55722e746e4885d (patch)
tree3f22af0fc8399bedd6843f7a9a4383295ac7b3cb /gtk2_ardour/marker.h
parent99d002dbdf2563bcad880628e7876aebe191ba0c (diff)
merged with trunk revs 2605-2627
git-svn-id: svn://localhost/ardour2/trunk@2628 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/marker.h')
-rw-r--r--gtk2_ardour/marker.h20
1 files changed, 14 insertions, 6 deletions
diff --git a/gtk2_ardour/marker.h b/gtk2_ardour/marker.h
index 7865004d54..5ffd6c5dd1 100644
--- a/gtk2_ardour/marker.h
+++ b/gtk2_ardour/marker.h
@@ -23,7 +23,7 @@
#include <string>
#include <glib.h>
#include <ardour/ardour.h>
-#include <sigc++/signal.h>
+#include <pbd/destructible.h>
#include "canvas.h"
@@ -34,7 +34,7 @@ namespace ARDOUR {
class PublicEditor;
-class Marker : public sigc::trackable
+class Marker : public PBD::Destructible
{
public:
enum Type {
@@ -57,9 +57,15 @@ class Marker : public sigc::trackable
ArdourCanvas::Item& the_item() const;
+ void add_line (ArdourCanvas::Group*, double initial_height);
+ void show_line ();
+ void hide_line ();
+
void set_position (nframes_t);
void set_name (const string&);
void set_color_rgba (uint32_t rgba);
+
+ nframes64_t position() const { return frame_position; }
void hide ();
void show ();
@@ -73,11 +79,13 @@ class Marker : public sigc::trackable
ArdourCanvas::Polygon *mark;
ArdourCanvas::Text *text;
ArdourCanvas::Points *points;
+ ArdourCanvas::Line *line;
+ ArdourCanvas::Points *line_points;
- double unit_position;
- nframes_t frame_position;
- unsigned char shift; /* should be double, but its always small and integral */
- Type _type;
+ double unit_position;
+ nframes64_t frame_position;
+ unsigned char shift; /* should be double, but its always small and integral */
+ Type _type;
void reposition ();
};