ardour
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
Marker Class Reference

#include <marker.h>

Inheritance diagram for Marker:
MeterMarker TempoMarker

Public Types

enum  Type {
  Mark, Tempo, Meter, SessionStart,
  SessionEnd, RangeStart, RangeEnd, LoopStart,
  LoopEnd, PunchIn, PunchOut
}
 

Public Member Functions

 Marker (PublicEditor &editor, ArdourCanvas::Container &, guint32 rgba, const std::string &text, Type, framepos_t frame=0, bool handle_events=true)
 
virtual ~Marker ()
 
ArdourCanvas::Item & the_item () const
 
void set_selected (bool)
 
void set_show_line (bool)
 
void canvas_height_set (double)
 
void set_position (framepos_t)
 
void set_name (const std::string &)
 
void set_color_rgba (uint32_t rgba)
 
void setup_line ()
 
framepos_t position () const
 
ArdourCanvas::Container * get_parent ()
 
void reparent (ArdourCanvas::Container &parent)
 
void hide ()
 
void show ()
 
Type type ()
 
void set_left_label_limit (double)
 
void set_right_label_limit (double)
 
std::string name () const
 
bool label_on_left () const
 

Static Public Member Functions

static void setup_sizes (const double timebar_height)
 

Static Public Attributes

static PBD::Signal1< void,
Marker * > 
CatchDeletion
 

Protected Member Functions

void reposition ()
 
void setup_line_x ()
 
void setup_name_display ()
 

Protected Attributes

PublicEditoreditor
 
Pango::FontDescription name_font
 
ArdourCanvas::Container * _parent
 
ArdourCanvas::Container * group
 
ArdourCanvas::Polygon * mark
 
ArdourCanvas::Text * _name_item
 
ArdourCanvas::Points * points
 
ArdourCanvas::Line * _track_canvas_line
 
ArdourCanvas::Rectangle * _name_background
 
std::string _name
 
double unit_position
 
framepos_t frame_position
 
double _shift
 
Type _type
 
int name_height
 
bool _selected
 
bool _shown
 
bool _line_shown
 
double _canvas_height
 
uint32_t _color
 
double _left_label_limit
 the number of pixels available to the left of this marker for a label More...
 
double _right_label_limit
 the number of pixels available to the right of this marker for a label More...
 
double _label_offset
 

Private Member Functions

 Marker (Marker const &)
 
Markeroperator= (Marker const &)
 

Detailed Description

Definition at line 41 of file marker.h.

Member Enumeration Documentation

Enumerator
Mark 
Tempo 
Meter 
SessionStart 

session start

SessionEnd 

session end

RangeStart 
RangeEnd 
LoopStart 
LoopEnd 
PunchIn 
PunchOut 

Definition at line 44 of file marker.h.

Constructor & Destructor Documentation

Marker::Marker ( PublicEditor editor,
ArdourCanvas::Container &  ,
guint32  rgba,
const std::string &  text,
Type  ,
framepos_t  frame = 0,
bool  handle_events = true 
)
Marker::~Marker ( )
virtual

Definition at line 308 of file marker.cc.

Marker::Marker ( Marker const &  )
private

Member Function Documentation

void Marker::canvas_height_set ( double  h)

Definition at line 368 of file marker.cc.

ArdourCanvas::Container* Marker::get_parent ( )
inline

Definition at line 81 of file marker.h.

void Marker::hide ( )

Definition at line 465 of file marker.cc.

bool Marker::label_on_left ( ) const
Returns
true if our label is on the left of the mark, otherwise false

Definition at line 390 of file marker.cc.

std::string Marker::name ( ) const
inline

Definition at line 92 of file marker.h.

Marker& Marker::operator= ( Marker const &  )
private
framepos_t Marker::position ( ) const
inline

Definition at line 79 of file marker.h.

void Marker::reparent ( ArdourCanvas::Container &  parent)

Definition at line 317 of file marker.cc.

void Marker::reposition ( )
protected

Definition at line 450 of file marker.cc.

void Marker::set_color_rgba ( uint32_t  rgba)

Definition at line 474 of file marker.cc.

void Marker::set_left_label_limit ( double  p)

Set the number of pixels that are available for a label to the left of the centre of this marker

Definition at line 491 of file marker.cc.

void Marker::set_name ( const std::string &  )

Definition at line 381 of file marker.cc.

void Marker::set_position ( framepos_t  frame)

Definition at line 441 of file marker.cc.

void Marker::set_right_label_limit ( double  p)

Set the number of pixels that are available for a label to the right of the centre of this marker

Definition at line 506 of file marker.cc.

void Marker::set_selected ( bool  s)

Definition at line 324 of file marker.cc.

void Marker::set_show_line ( bool  s)

Definition at line 331 of file marker.cc.

void Marker::setup_line ( )

Definition at line 338 of file marker.cc.

void Marker::setup_line_x ( )
protected
void Marker::setup_name_display ( )
protected

Definition at line 396 of file marker.cc.

void Marker::setup_sizes ( const double  timebar_height)
static

Definition at line 57 of file marker.cc.

void Marker::show ( )

Definition at line 456 of file marker.cc.

ArdourCanvas::Item & Marker::the_item ( ) const

Definition at line 375 of file marker.cc.

Type Marker::type ( )
inline

Definition at line 87 of file marker.h.

Member Data Documentation

double Marker::_canvas_height
protected

Definition at line 120 of file marker.h.

uint32_t Marker::_color
protected

Definition at line 121 of file marker.h.

double Marker::_label_offset
protected

Definition at line 124 of file marker.h.

double Marker::_left_label_limit
protected

the number of pixels available to the left of this marker for a label

Definition at line 122 of file marker.h.

bool Marker::_line_shown
protected

Definition at line 119 of file marker.h.

std::string Marker::_name
protected

Definition at line 111 of file marker.h.

ArdourCanvas::Rectangle* Marker::_name_background
protected

Definition at line 109 of file marker.h.

ArdourCanvas::Text* Marker::_name_item
protected

Definition at line 106 of file marker.h.

ArdourCanvas::Container* Marker::_parent
protected

Definition at line 103 of file marker.h.

double Marker::_right_label_limit
protected

the number of pixels available to the right of this marker for a label

Definition at line 123 of file marker.h.

bool Marker::_selected
protected

Definition at line 117 of file marker.h.

double Marker::_shift
protected

Definition at line 114 of file marker.h.

bool Marker::_shown
protected

Definition at line 118 of file marker.h.

ArdourCanvas::Line* Marker::_track_canvas_line
protected

Definition at line 108 of file marker.h.

Type Marker::_type
protected

Definition at line 115 of file marker.h.

PBD::Signal1< void, Marker * > Marker::CatchDeletion
static

Definition at line 64 of file marker.h.

PublicEditor& Marker::editor
protected

Definition at line 99 of file marker.h.

framepos_t Marker::frame_position
protected

Definition at line 113 of file marker.h.

ArdourCanvas::Container* Marker::group
protected

Definition at line 104 of file marker.h.

ArdourCanvas::Polygon* Marker::mark
protected

Definition at line 105 of file marker.h.

Pango::FontDescription Marker::name_font
protected

Definition at line 101 of file marker.h.

int Marker::name_height
protected

Definition at line 116 of file marker.h.

ArdourCanvas::Points* Marker::points
protected

Definition at line 107 of file marker.h.

double Marker::unit_position
protected

Definition at line 112 of file marker.h.


The documentation for this class was generated from the following files: