Consolidate PinDialog Session/recording checks
[ardour.git] / gtk2_ardour / editor_cursors.h
index 93689c6e7b368fcdc9c4c75881ed0620fda084ae..4b8b4b67dac0a0e98d17b0afa61ca767b37590ea 100644 (file)
 
 */
 
+#ifndef __gtk_ardour_editor_cursors_h__
+#define __gtk_ardour_editor_cursors_h__
+
 #include "pbd/signals.h"
+#include "ardour/types.h"
 
 #include "canvas/arrow.h"
 #include "canvas/line.h"
 
 class Editor;
 
-class EditorCursor {
-  public:
-        EditorCursor (Editor&, bool (Editor::*)(GdkEvent*,ArdourCanvas::Item*));
-       ~EditorCursor ();
+class EditorCursor
+{
+public:
+       EditorCursor (Editor&, bool (Editor::*)(GdkEvent*,ArdourCanvas::Item*));
+       EditorCursor (Editor&);
+       ~EditorCursor ();
 
-       void set_position (framepos_t);
+       void set_position (samplepos_t);
 
 
        void show ();
        void hide ();
-       void set_color (ArdourCanvas::Color);
-
-       framepos_t current_frame () const {
-               return _current_frame;
-       }
+       void set_color (Gtkmm2ext::Color);
+       void set_sensitive (bool);
 
-       ArdourCanvas::Line& track_canvas_item () {
-               return _track_canvas_item;
+       samplepos_t current_sample () const {
+               return _current_sample;
        }
 
-       ArdourCanvas::Arrow& time_bar_canvas_item () {
-               return _time_bars_canvas_item;
+       ArdourCanvas::Arrow& track_canvas_item () {
+               return *_track_canvas_item;
        }
 
-       PBD::Signal1<void, framepos_t> PositionChanged;
+       PBD::Signal1<void, samplepos_t> PositionChanged;
 
-  private:     
+private:
        Editor&               _editor;
-       ArdourCanvas::Arrow   _time_bars_canvas_item;
-       ArdourCanvas::Line    _track_canvas_item;
-       framepos_t            _current_frame;
-       double                _length;
+       ArdourCanvas::Arrow*  _track_canvas_item;
+       samplepos_t            _current_sample;
 };
+
+#endif // __gtk_ardour_editor_cursors_h__