Ardour  9.0-pre0-582-g084a23a80d
ArdourSurface::Push2Canvas Class Reference

#include <canvas.h>

Inheritance diagram for ArdourSurface::Push2Canvas:
[legend]

Public Member Functions

 Push2Canvas (Push2 &p2, int cols, int rows)
 
 ~Push2Canvas ()
 
void request_redraw ()
 
void request_redraw (ArdourCanvas::Rect const &)
 
void queue_resize ()
 
bool vblank ()
 
int rows () const
 
int cols () const
 
ArdourCanvas::Coord width () const
 
ArdourCanvas::Coord height () const
 
void request_size (ArdourCanvas::Duple)
 
ArdourCanvas::Rect visible_area () const
 
void ungrab ()
 
void grab (ArdourCanvas::Item *)
 
void focus (ArdourCanvas::Item *)
 
void unfocus (ArdourCanvas::Item *)
 
void re_enter ()
 
void pick_current_item (int)
 
void pick_current_item (ArdourCanvas::Duple const &, int)
 
bool get_mouse_position (ArdourCanvas::Duple &) const
 
Glib::RefPtr< Pango::Context > get_pango_context ()
 
- Public Member Functions inherited from ArdourCanvas::Canvas
 Canvas ()
 
virtual ~Canvas ()
 
virtual bool have_grab () const
 
virtual bool grab_can_translate () const
 
void render (Rect const &, Cairo::RefPtr< Cairo::Context > const &) const
 
void prepare_for_render (Rect const &) const
 
gint64 get_last_render_start_timestamp () const
 
gint64 get_microseconds_since_render_start () const
 
Itemroot ()
 
void freeze_queue_draw ()
 
void thaw_queue_draw ()
 
void set_background_color (Gtkmm2ext::Color)
 
Gtkmm2ext::Color background_color () const
 
virtual void item_going_away (Item *, Rect)
 
virtual void item_shown_or_hidden (Item *)
 
void item_visual_property_changed (Item *)
 
void item_changed (Item *, Rect)
 
void item_moved (Item *, Rect)
 
Duple canvas_to_window (Duple const &, bool rounded=true) const
 
Duple window_to_canvas (Duple const &) const
 
void canvas_to_window (Coord cx, Coord cy, Coord &wx, Coord &wy)
 
void window_to_canvas (Coord wx, Coord wy, Coord &cx, Coord &cy)
 
void scroll_to (Coord x, Coord y)
 
void add_scroller (ScrollGroup &i)
 
Duple clamp_to_window (Duple const &winpos, Duple border=Duple())
 
void zoomed ()
 
std::string indent () const
 
std::string render_indent () const
 
void dump (std::ostream &) const
 
virtual void start_tooltip_timeout (Item *)
 
virtual void stop_tooltip_timeout ()
 
void use_intermediate_surface (bool yn=true)
 
void set_debug_render (bool yn)
 
bool debug_render () const
 

Static Public Member Functions

static double inter_button_spacing ()
 
- Static Public Member Functions inherited from ArdourCanvas::Canvas
static void set_tooltip_timeout (uint32_t msecs)
 

Private Member Functions

int pixel_area () const
 
bool expose ()
 
int blit_to_device_sample_buffer ()
 

Private Attributes

Push2_p2
 
int _cols
 
int _rows
 
uint8_t _sample_header [16]
 
uint16_t * _device_sample_buffer
 
Cairo::RefPtr< Cairo::ImageSurface > _sample_buffer
 
Cairo::RefPtr< Cairo::Context > _context
 
Cairo::RefPtr< Cairo::Region > _expose_region
 
Glib::RefPtr< Pango::Context > _pango_context
 

Static Private Attributes

static const int _pixels_per_row
 

Additional Inherited Members

- Public Attributes inherited from ArdourCanvas::Canvas
sigc::signal< void, Duple const & > MouseMotion
 
sigc::signal< void > PreRender
 
bool item_save_restore
 
- Protected Member Functions inherited from ArdourCanvas::Canvas
void queue_draw_item_area (Item *, Rect)
 
Rect compute_draw_item_area (Item *, Rect)
 
- Protected Attributes inherited from ArdourCanvas::Canvas
Root _root
 
uint32_t _queue_draw_frozen
 
Rect frozen_area
 
Gtkmm2ext::Color _bg_color
 
bool _debug_render
 
gint64 _last_render_start_timestamp
 
std::list< ScrollGroup * > scrollers
 
bool _use_intermediate_surface
 
- Static Protected Attributes inherited from ArdourCanvas::Canvas
static uint32_t tooltip_timeout_msecs
 

Detailed Description

Definition at line 43 of file surfaces/push2/canvas.h.

Constructor & Destructor Documentation

◆ Push2Canvas()

ArdourSurface::Push2Canvas::Push2Canvas ( Push2 p2,
int  cols,
int  rows 
)

◆ ~Push2Canvas()

ArdourSurface::Push2Canvas::~Push2Canvas ( )

Member Function Documentation

◆ blit_to_device_sample_buffer()

int ArdourSurface::Push2Canvas::blit_to_device_sample_buffer ( )
private

◆ cols()

int ArdourSurface::Push2Canvas::cols ( ) const
inline

Definition at line 55 of file surfaces/push2/canvas.h.

◆ expose()

bool ArdourSurface::Push2Canvas::expose ( )
private

◆ focus()

void ArdourSurface::Push2Canvas::focus ( ArdourCanvas::Item )
inlinevirtual

called to ask the canvas' host to keyboard focus on an item

Implements ArdourCanvas::Canvas.

Definition at line 67 of file surfaces/push2/canvas.h.

◆ get_mouse_position()

bool ArdourSurface::Push2Canvas::get_mouse_position ( ArdourCanvas::Duple winpos) const
inlinevirtual

Store the coordinates of the mouse pointer in window coordinates in winpos . Return true if the position was within the window, false otherwise.

Implements ArdourCanvas::Canvas.

Definition at line 72 of file surfaces/push2/canvas.h.

◆ get_pango_context()

Glib::RefPtr<Pango::Context> ArdourSurface::Push2Canvas::get_pango_context ( )
virtual

Implements ArdourCanvas::Canvas.

◆ grab()

void ArdourSurface::Push2Canvas::grab ( ArdourCanvas::Item )
inlinevirtual

called to ask the canvas' host to ‘grab’ an item

Implements ArdourCanvas::Canvas.

Definition at line 66 of file surfaces/push2/canvas.h.

◆ height()

ArdourCanvas::Coord ArdourSurface::Push2Canvas::height ( ) const
inlinevirtual

Implements ArdourCanvas::Canvas.

Definition at line 60 of file surfaces/push2/canvas.h.

◆ inter_button_spacing()

static double ArdourSurface::Push2Canvas::inter_button_spacing ( )
inlinestatic

Definition at line 57 of file surfaces/push2/canvas.h.

◆ pick_current_item() [1/2]

void ArdourSurface::Push2Canvas::pick_current_item ( ArdourCanvas::Duple const &  ,
int   
)
inlinevirtual

Implements ArdourCanvas::Canvas.

Definition at line 71 of file surfaces/push2/canvas.h.

◆ pick_current_item() [2/2]

void ArdourSurface::Push2Canvas::pick_current_item ( int  )
inlinevirtual

Implements ArdourCanvas::Canvas.

Definition at line 70 of file surfaces/push2/canvas.h.

◆ pixel_area()

int ArdourSurface::Push2Canvas::pixel_area ( ) const
inlineprivate

Definition at line 83 of file surfaces/push2/canvas.h.

◆ queue_resize()

void ArdourSurface::Push2Canvas::queue_resize ( )
virtual

called to ask for a resize/relayout of all or part of the canvas

Implements ArdourCanvas::Canvas.

◆ re_enter()

void ArdourSurface::Push2Canvas::re_enter ( )
inlinevirtual

Ask the canvas to pick the current item again, and generate an enter event for it.

Implements ArdourCanvas::Canvas.

Definition at line 69 of file surfaces/push2/canvas.h.

◆ request_redraw() [1/2]

void ArdourSurface::Push2Canvas::request_redraw ( )

◆ request_redraw() [2/2]

void ArdourSurface::Push2Canvas::request_redraw ( ArdourCanvas::Rect const &  )
virtual

called to request a redraw of an area of the canvas in WINDOW coordinates

Implements ArdourCanvas::Canvas.

◆ request_size()

void ArdourSurface::Push2Canvas::request_size ( ArdourCanvas::Duple  )
virtual

called to ask the canvas to request a particular size from its host

Implements ArdourCanvas::Canvas.

◆ rows()

int ArdourSurface::Push2Canvas::rows ( ) const
inline

Definition at line 54 of file surfaces/push2/canvas.h.

◆ unfocus()

void ArdourSurface::Push2Canvas::unfocus ( ArdourCanvas::Item )
inlinevirtual

called to ask the canvas' host to drop keyboard focus on an item

Implements ArdourCanvas::Canvas.

Definition at line 68 of file surfaces/push2/canvas.h.

◆ ungrab()

void ArdourSurface::Push2Canvas::ungrab ( )
inlinevirtual

called to ask the canvas' host to ‘ungrab’ any grabbed item

Implements ArdourCanvas::Canvas.

Definition at line 65 of file surfaces/push2/canvas.h.

◆ vblank()

bool ArdourSurface::Push2Canvas::vblank ( )

◆ visible_area()

ArdourCanvas::Rect ArdourSurface::Push2Canvas::visible_area ( ) const
virtual

Implements ArdourCanvas::Canvas.

◆ width()

ArdourCanvas::Coord ArdourSurface::Push2Canvas::width ( ) const
inlinevirtual

Implements ArdourCanvas::Canvas.

Definition at line 59 of file surfaces/push2/canvas.h.

Member Data Documentation

◆ _cols

int ArdourSurface::Push2Canvas::_cols
private

Definition at line 78 of file surfaces/push2/canvas.h.

◆ _context

Cairo::RefPtr<Cairo::Context> ArdourSurface::Push2Canvas::_context
private

Definition at line 89 of file surfaces/push2/canvas.h.

◆ _device_sample_buffer

uint16_t* ArdourSurface::Push2Canvas::_device_sample_buffer
private

Definition at line 86 of file surfaces/push2/canvas.h.

◆ _expose_region

Cairo::RefPtr<Cairo::Region> ArdourSurface::Push2Canvas::_expose_region
private

Definition at line 90 of file surfaces/push2/canvas.h.

◆ _p2

Push2& ArdourSurface::Push2Canvas::_p2
private

Definition at line 77 of file surfaces/push2/canvas.h.

◆ _pango_context

Glib::RefPtr<Pango::Context> ArdourSurface::Push2Canvas::_pango_context
private

Definition at line 91 of file surfaces/push2/canvas.h.

◆ _pixels_per_row

const int ArdourSurface::Push2Canvas::_pixels_per_row
staticprivate

Definition at line 81 of file surfaces/push2/canvas.h.

◆ _rows

int ArdourSurface::Push2Canvas::_rows
private

Definition at line 79 of file surfaces/push2/canvas.h.

◆ _sample_buffer

Cairo::RefPtr<Cairo::ImageSurface> ArdourSurface::Push2Canvas::_sample_buffer
private

Definition at line 88 of file surfaces/push2/canvas.h.

◆ _sample_header

uint8_t ArdourSurface::Push2Canvas::_sample_header[16]
private

Definition at line 85 of file surfaces/push2/canvas.h.


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