/*
- Copyright (C) 2003 Paul Davis
+ Copyright (C) 2003 Paul Davis
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- $Id$
*/
#ifndef __gtk_ardour_marker_view_h__
* MarkerView defines a marker item that may be placed upon a MarkerTimeAxis.
*
* The aim of the MarkerView is to provide additional timing details for visual based time axis.
- * The MarkerView item is associated with one other TimeAxisViewItem and has a start and a duration.
+ * The MarkerView item is associated with one other TimeAxisViewItem and has a start and a duration.
*/
class MarkerView : public TimeAxisViewItem
{
public:
//---------------------------------------------------------------------------------------//
// Constructor / Desctructor
-
+
/**
* Constructs a new MarkerView
- *
+ *
* @param parent the parent canvas item
* @param tv the parent TimeAxisView of this item
* @param marked the Item that this item is to be assciated (marking) with
- * @param spu the current samples per unit
+ * @param spu the current samples per unit
* @param base_color
* @param mark_type the marker type/name text, eg fade out, pan up etc.
* @param mark_id unique name/id of this item
Gdk::Color& base_color,
std::string mark_type,
std::string mark_id,
- jack_nframes_t start,
- jack_nframes_t duration) ;
+ nframes_t start,
+ nframes_t duration) ;
/**
* Destructor
* Destroys this Marker Item and removes the association between itself and the item it is marking.
*/
~MarkerView() ;
-
- static sigc::signal<void,MarkerView*> GoingAway;
-
+
+ static PBD::Signal1<void,MarkerView*> CatchDeletion;
+
//---------------------------------------------------------------------------------------//
// Marker Type Methods
-
+
/**
- * Sets the marker Type text of this this MarkerItem, eg fade_out, pan up etc.
+ * Sets the marker Type text of this this MarkerItem, eg fade_out, pan up etc.
*
* @param type_text the marker type text of this item
*/
void set_mark_type_text(std::string type_text) ;
-
+
/**
- * Returns the marker Type of this this MarkerItem, eg fade_out, pan up etc.
+ * Returns the marker Type of this this MarkerItem, eg fade_out, pan up etc.
*
* @return the marker type text of this item
*/
std::string get_mark_type_text() const ;
-
+
//---------------------------------------------------------------------------------------//
// Marked Item Methods
* @return the time axis item being marked by this item
*/
ImageFrameView* get_marked_item() ;
-
+
/**
* Sets the time axis item being marker by this item
*
* @return the previously marked item, or 0 if no previous marked item exists
*/
ImageFrameView* set_marked_item(ImageFrameView* item) ;
-
+
//---------------------------------------------------------------------------------//
// Emitted Signals
-
+
/** Emitted when the mark type text is changed */
sigc::signal<void,std::string,void*> MarkTypeChanged ;
-
+
/** Emitted when the Marked Item is changed */
sigc::signal<void,ImageFrameView*,void*> MarkedItemChanged ;
-
+
protected:
private:
/* a pointer to the time axis item this marker is assoiated(marking up) with */
ImageFrameView* marked_item ;
-
+
} ; /* class MarkerView */