ardour
Classes | Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
MarkerDrag Class Reference

#include <editor_drag.h>

Inheritance diagram for MarkerDrag:
Drag

Classes

struct  CopiedLocationMarkerInfo
 

Public Member Functions

 MarkerDrag (Editor *, ArdourCanvas::Item *)
 
 ~MarkerDrag ()
 
void start_grab (GdkEvent *, Gdk::Cursor *c=0)
 
void motion (GdkEvent *, bool)
 
void finished (GdkEvent *, bool)
 
void aborted (bool)
 
bool allow_vertical_autoscroll () const
 
bool y_movement_matters () const
 
void setup_pointer_frame_offset ()
 
- Public Member Functions inherited from Drag
 Drag (Editor *, ArdourCanvas::Item *, bool trackview_only=true)
 
virtual ~Drag ()
 
void set_manager (DragManager *m)
 
ArdourCanvas::Item * item () const
 
void swap_grab (ArdourCanvas::Item *, Gdk::Cursor *, uint32_t)
 
bool motion_handler (GdkEvent *, bool)
 
void abort ()
 
ARDOUR::framepos_t adjusted_frame (ARDOUR::framepos_t, GdkEvent const *, bool snap=true) const
 
ARDOUR::framepos_t adjusted_current_frame (GdkEvent const *, bool snap=true) const
 
bool was_double_click () const
 
void set_double_click (bool yn)
 
virtual bool end_grab (GdkEvent *)
 
virtual bool active (Editing::MouseMode m)
 
virtual std::pair
< ARDOUR::framecnt_t, int > 
move_threshold () const
 
virtual bool x_movement_matters () const
 
bool initially_vertical () const
 

Private Types

typedef std::list
< CopiedLocationMarkerInfo
CopiedLocationInfo
 

Private Member Functions

void update_item (ARDOUR::Location *)
 

Private Attributes

Marker_marker
 marker being dragged More...
 
CopiedLocationInfo _copied_locations
 
ArdourCanvas::Points _points
 

Additional Inherited Members

- Protected Member Functions inherited from Drag
double grab_x () const
 
double grab_y () const
 
ARDOUR::framepos_t raw_grab_frame () const
 
ARDOUR::framepos_t grab_frame () const
 
double last_pointer_x () const
 
double last_pointer_y () const
 
double last_pointer_frame () const
 
double current_pointer_x () const
 
double current_pointer_y () const
 
boost::shared_ptr< ARDOUR::Regionadd_midi_region (MidiTimeAxisView *)
 
void show_verbose_cursor_time (framepos_t)
 
void show_verbose_cursor_duration (framepos_t, framepos_t, double xoffset=0)
 
void show_verbose_cursor_text (std::string const &)
 
- Protected Attributes inherited from Drag
Editor_editor
 our editor More...
 
DragManager_drags
 
ArdourCanvas::Item * _item
 our item More...
 
ARDOUR::framecnt_t _pointer_frame_offset
 
bool _x_constrained
 true if x motion is constrained, otherwise false More...
 
bool _y_constrained
 true if y motion is constrained, otherwise false More...
 
bool _was_rolling
 true if the session was rolling before the drag started, otherwise false More...
 

Detailed Description

Marker drag

Definition at line 770 of file editor_drag.h.

Member Typedef Documentation

Definition at line 803 of file editor_drag.h.

Constructor & Destructor Documentation

MarkerDrag::MarkerDrag ( Editor e,
ArdourCanvas::Item *  i 
)

Definition at line 3563 of file editor_drag.cc.

MarkerDrag::~MarkerDrag ( )

Definition at line 3575 of file editor_drag.cc.

Member Function Documentation

void MarkerDrag::aborted ( bool  m)
virtual

Called to abort a drag and return things to how they were before it started.

Parameters
mtrue if some movement occurred, otherwise false.

Implements Drag.

Definition at line 3913 of file editor_drag.cc.

bool MarkerDrag::allow_vertical_autoscroll ( ) const
inlinevirtual

Reimplemented from Drag.

Definition at line 781 of file editor_drag.h.

void MarkerDrag::finished ( GdkEvent *  e,
bool  m 
)
virtual

Called when a drag has finished.

Parameters
eEvent describing the finish.
mtrue if some movement occurred, otherwise false.

Implements Drag.

Definition at line 3843 of file editor_drag.cc.

void MarkerDrag::motion ( GdkEvent *  e,
bool  f 
)
virtual

Called when a drag motion has occurred.

Parameters
eEvent describing the motion.
ftrue if this is the first movement, otherwise false.

Implements Drag.

Definition at line 3699 of file editor_drag.cc.

void MarkerDrag::setup_pointer_frame_offset ( )
virtual

Set up the _pointer_frame_offset

Reimplemented from Drag.

Definition at line 3691 of file editor_drag.cc.

void MarkerDrag::start_grab ( GdkEvent *  e,
Gdk::Cursor *  c = 0 
)
virtual

Called to start a grab of an item.

Parameters
eEvent that caused the grab to start.
cCursor to use, or 0.

Reimplemented from Drag.

Definition at line 3590 of file editor_drag.cc.

void MarkerDrag::update_item ( ARDOUR::Location )
private

Definition at line 3937 of file editor_drag.cc.

bool MarkerDrag::y_movement_matters ( ) const
inlinevirtual
Returns
true if y movement matters to this drag

Reimplemented from Drag.

Definition at line 785 of file editor_drag.h.

Member Data Documentation

CopiedLocationInfo MarkerDrag::_copied_locations
private

Definition at line 804 of file editor_drag.h.

Marker* MarkerDrag::_marker
private

marker being dragged

Definition at line 794 of file editor_drag.h.

ArdourCanvas::Points MarkerDrag::_points
private

Definition at line 805 of file editor_drag.h.


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