ardour
Public Member Functions | Private Member Functions | Private Attributes | List of all members
PortMatrixRowLabels Class Reference

#include <port_matrix_row_labels.h>

Inheritance diagram for PortMatrixRowLabels:
PortMatrixLabels PortMatrixComponent

Public Member Functions

 PortMatrixRowLabels (PortMatrix *, PortMatrixBody *)
 
void button_press (double, double, GdkEventButton *)
 
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 (std::list< PortMatrixNode > const &)
 
void motion (double, double)
 
- Public Member Functions inherited from PortMatrixLabels
 PortMatrixLabels (PortMatrix *m, PortMatrixBody *b)
 
virtual ~PortMatrixLabels ()
 
void draw_extra (cairo_t *)
 
void clear_channel_highlights ()
 
void add_channel_highlight (ARDOUR::BundleChannel const &)
 
- Public Member Functions inherited from PortMatrixComponent
 PortMatrixComponent (PortMatrix *, PortMatrixBody *)
 
virtual ~PortMatrixComponent ()
 
virtual void button_release (double, double, GdkEventButton *)
 
void set_show_ports (bool)
 
void setup ()
 
GdkPixmap * get_pixmap (GdkDrawable *)
 
std::pair< uint32_t, uint32_t > dimensions ()
 
void require_render ()
 
void require_rebuild ()
 
void set_parent_rectangle (Gdk::Rectangle const &r)
 
Gdk::Rectangle parent_rectangle () const
 

Private Member Functions

void render_channel_name (cairo_t *, Gdk::Color, Gdk::Color, double, double, ARDOUR::BundleChannel const &)
 
void render_bundle_name (cairo_t *, Gdk::Color, Gdk::Color, double, double, boost::shared_ptr< ARDOUR::Bundle >)
 
double channel_x (ARDOUR::BundleChannel const &) const
 
double channel_y (ARDOUR::BundleChannel const &) const
 
void render (cairo_t *)
 
void compute_dimensions ()
 
void remove_channel_proxy (boost::weak_ptr< ARDOUR::Bundle >, uint32_t)
 
void rename_channel_proxy (boost::weak_ptr< ARDOUR::Bundle >, uint32_t)
 
void queue_draw_for (ARDOUR::BundleChannel const &)
 
double port_name_x () const
 
double bundle_name_x () const
 

Private Attributes

double _longest_port_name
 
double _longest_bundle_name
 

Additional Inherited Members

- Static Public Member Functions inherited from PortMatrixComponent
static uint32_t grid_spacing ()
 
- Protected Member Functions inherited from PortMatrixComponent
Gdk::Color background_colour ()
 
void set_source_rgb (cairo_t *, Gdk::Color const &)
 
void set_source_rgba (cairo_t *, Gdk::Color const &, double)
 
uint32_t group_size (boost::shared_ptr< const PortGroup >) const
 
uint32_t channel_to_position (ARDOUR::BundleChannel, boost::shared_ptr< const PortGroup >) const
 
virtual ARDOUR::BundleChannel position_to_channel (double, double, boost::shared_ptr< const PortGroup >) const
 
- Static Protected Member Functions inherited from PortMatrixComponent
static uint32_t label_border_width ()
 
static uint32_t name_pad ()
 
static double thin_grid_line_width ()
 
static double thick_grid_line_width ()
 
static uint32_t connection_indicator_pad ()
 
static uint32_t mouseover_line_width ()
 
static double angle ()
 
static Gdk::Color text_colour ()
 
static Gdk::Color grid_colour ()
 
static Gdk::Color association_colour ()
 
static Gdk::Color non_connectable_colour ()
 
static Gdk::Color mouseover_line_colour ()
 
static Gdk::Color highlighted_channel_colour ()
 
static Gdk::Color get_a_bundle_colour (int x)
 
static Gdk::Color get_a_group_colour (int x)
 
- Protected Attributes inherited from PortMatrixComponent
PortMatrix_matrix
 
PortMatrixBody_body
 the PortMatrixBody that we're in More...
 
uint32_t _width
 full width of the contents More...
 
uint32_t _height
 full height of the contents More...
 
Gdk::Rectangle _parent_rectangle
 

Detailed Description

The row labels part of the port matrix

Definition at line 41 of file port_matrix_row_labels.h.

Constructor & Destructor Documentation

PortMatrixRowLabels::PortMatrixRowLabels ( PortMatrix m,
PortMatrixBody b 
)

Definition at line 34 of file port_matrix_row_labels.cc.

Member Function Documentation

double PortMatrixRowLabels::bundle_name_x ( ) const
private

Definition at line 196 of file port_matrix_row_labels.cc.

void PortMatrixRowLabels::button_press ( double  x,
double  y,
GdkEventButton *  ev 
)
virtual

Reimplemented from PortMatrixComponent.

Definition at line 145 of file port_matrix_row_labels.cc.

double PortMatrixRowLabels::channel_x ( ARDOUR::BundleChannel const &  ) const
privatevirtual

Implements PortMatrixLabels.

Definition at line 275 of file port_matrix_row_labels.cc.

double PortMatrixRowLabels::channel_y ( ARDOUR::BundleChannel const &  bc) const
privatevirtual

Implements PortMatrixLabels.

Definition at line 281 of file port_matrix_row_labels.cc.

double PortMatrixRowLabels::component_to_parent_x ( double  x) const
virtual

Implements PortMatrixComponent.

Definition at line 169 of file port_matrix_row_labels.cc.

double PortMatrixRowLabels::component_to_parent_y ( double  y) const
virtual

Implements PortMatrixComponent.

Definition at line 183 of file port_matrix_row_labels.cc.

void PortMatrixRowLabels::compute_dimensions ( )
privatevirtual

Compute any required dimensions. This must set up _width and _height.

Implements PortMatrixComponent.

Definition at line 41 of file port_matrix_row_labels.cc.

void PortMatrixRowLabels::motion ( double  x,
double  y 
)
virtual

Reimplemented from PortMatrixComponent.

Definition at line 328 of file port_matrix_row_labels.cc.

void PortMatrixRowLabels::mouseover_changed ( std::list< PortMatrixNode > const &  )
virtual

Implements PortMatrixComponent.

Definition at line 311 of file port_matrix_row_labels.cc.

double PortMatrixRowLabels::parent_to_component_x ( double  x) const
virtual

Implements PortMatrixComponent.

Definition at line 176 of file port_matrix_row_labels.cc.

double PortMatrixRowLabels::parent_to_component_y ( double  y) const
virtual

Implements PortMatrixComponent.

Definition at line 189 of file port_matrix_row_labels.cc.

double PortMatrixRowLabels::port_name_x ( ) const
private

Definition at line 208 of file port_matrix_row_labels.cc.

void PortMatrixRowLabels::queue_draw_for ( ARDOUR::BundleChannel const &  bc)
privatevirtual

Implements PortMatrixLabels.

Definition at line 287 of file port_matrix_row_labels.cc.

void PortMatrixRowLabels::remove_channel_proxy ( boost::weak_ptr< ARDOUR::Bundle ,
uint32_t   
)
private
void PortMatrixRowLabels::rename_channel_proxy ( boost::weak_ptr< ARDOUR::Bundle ,
uint32_t   
)
private
void PortMatrixRowLabels::render ( cairo_t *  )
privatevirtual

Render the complete component to a cairo context.

Implements PortMatrixComponent.

Definition at line 100 of file port_matrix_row_labels.cc.

void PortMatrixRowLabels::render_bundle_name ( cairo_t *  cr,
Gdk::Color  fg_colour,
Gdk::Color  bg_colour,
double  xoff,
double  yoff,
boost::shared_ptr< ARDOUR::Bundle b 
)
privatevirtual

Implements PortMatrixLabels.

Definition at line 220 of file port_matrix_row_labels.cc.

void PortMatrixRowLabels::render_channel_name ( cairo_t *  cr,
Gdk::Color  fg_colour,
Gdk::Color  bg_colour,
double  xoff,
double  yoff,
ARDOUR::BundleChannel const &  bc 
)
privatevirtual

Implements PortMatrixLabels.

Definition at line 246 of file port_matrix_row_labels.cc.

Member Data Documentation

double PortMatrixRowLabels::_longest_bundle_name
private

Definition at line 70 of file port_matrix_row_labels.h.

double PortMatrixRowLabels::_longest_port_name
private

Definition at line 69 of file port_matrix_row_labels.h.


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