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

#include <editor_drag.h>

Inheritance diagram for NoteCreateDrag:
Drag

Public Member Functions

 NoteCreateDrag (Editor *, ArdourCanvas::Item *, MidiRegionView *)
 
 ~NoteCreateDrag ()
 
void start_grab (GdkEvent *, Gdk::Cursor *c=0)
 
void motion (GdkEvent *, bool)
 
void finished (GdkEvent *, bool)
 
void aborted (bool)
 
bool active (Editing::MouseMode mode)
 
bool y_movement_matters () const
 
- 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 std::pair
< ARDOUR::framecnt_t, int > 
move_threshold () const
 
virtual bool allow_vertical_autoscroll () const
 
virtual bool x_movement_matters () const
 
bool initially_vertical () const
 
virtual void setup_pointer_frame_offset ()
 

Private Member Functions

double y_to_region (double) const
 
framecnt_t grid_frames (framepos_t) const
 

Private Attributes

MidiRegionView_region_view
 
ArdourCanvas::Rectangle * _drag_rect
 
framepos_t _note [2]
 

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

Definition at line 532 of file editor_drag.h.

Constructor & Destructor Documentation

NoteCreateDrag::NoteCreateDrag ( Editor e,
ArdourCanvas::Item *  i,
MidiRegionView rv 
)

Definition at line 5680 of file editor_drag.cc.

NoteCreateDrag::~NoteCreateDrag ( )

Definition at line 5688 of file editor_drag.cc.

Member Function Documentation

void NoteCreateDrag::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 5777 of file editor_drag.cc.

bool NoteCreateDrag::active ( Editing::MouseMode  m)
inlinevirtual
Parameters
mMouse mode.
Returns
true if this drag should happen in this mouse mode.

Reimplemented from Drag.

Definition at line 543 of file editor_drag.h.

void NoteCreateDrag::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 5746 of file editor_drag.cc.

framecnt_t NoteCreateDrag::grid_frames ( framepos_t  t) const
private

Definition at line 5694 of file editor_drag.cc.

void NoteCreateDrag::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 5736 of file editor_drag.cc.

void NoteCreateDrag::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 5706 of file editor_drag.cc.

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

Reimplemented from Drag.

Definition at line 547 of file editor_drag.h.

double NoteCreateDrag::y_to_region ( double  y) const
private

Definition at line 5769 of file editor_drag.cc.

Member Data Documentation

ArdourCanvas::Rectangle* NoteCreateDrag::_drag_rect
private

Definition at line 556 of file editor_drag.h.

framepos_t NoteCreateDrag::_note[2]
private

Definition at line 557 of file editor_drag.h.

MidiRegionView* NoteCreateDrag::_region_view
private

Definition at line 555 of file editor_drag.h.


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