|
hydrogen 1.2.6
|
Drum pattern editor. More...
#include <DrumPatternEditor.h>
Public Slots | |
| virtual void | deleteSelection () override |
| void | onPreferencesChanged (H2Core::Preferences::Changes changes) |
| virtual void | paste () override |
| Paste selection. | |
| virtual void | selectAll () override |
| virtual void | updateEditor (bool bPatternOnly=false) override |
Public Slots inherited from PatternEditor | |
| virtual void | copy () |
| Copy selection to clipboard in XML. | |
| virtual void | cut () |
| virtual void | deleteSelection ()=0 |
| void | onPreferencesChanged (H2Core::Preferences::Changes changes) |
| virtual void | paste ()=0 |
| void | scrolled (int nValue) |
| virtual void | selectAll ()=0 |
| virtual void | selectInstrumentNotes (int nInstrument) |
| virtual void | selectNone () |
| void | setCurrentInstrument (int nInstrument) |
| virtual void | updateEditor (bool bPatternOnly=false)=0 |
Public Member Functions | |
| DrumPatternEditor (QWidget *parent, PatternEditorPanel *panel) | |
| ~DrumPatternEditor () | |
| void | addOrDeleteNoteAction (int nColumn, int row, int selectedPatternNumber, int oldLength, float oldVelocity, float fOldPan, float oldLeadLag, int oldNoteKeyVal, int oldOctaveKeyVal, float probability, bool listen, bool isMidi, bool isInstrumentMode, bool isNoteOff, bool isDelete) |
| void | addOrRemoveNote (int nColumn, int nRealColumn, int row, bool bDoAdd=true, bool bDoDelete=true, bool bIsNoteOff=false) |
| virtual void | drumkitLoadedEvent () override |
| virtual std::vector< SelectionIndex > | elementsIntersecting (QRect r) override |
| Find all elements which intersect a selection area. | |
| void | functionAddEmptyInstrumentRedo () |
| void | functionAddEmptyInstrumentUndo () |
| void | functionClearNotesUndoAction (std::list< H2Core::Note * > noteList, int nSelectedInstrument, int patternNumber) |
| ========================================================== undo / redo actions from pattern editor instrument list | |
| void | functionDeleteInstrumentUndoAction (std::list< H2Core::Note * > noteList, int nSelectedInstrument, QString instrumentName, QString drumkitName) |
| void | functionDropInstrumentRedoAction (QString sDrumkitPath, QString sInstrumentName, int nTargetInstrument, std::vector< int > *pAddedComponents) |
| void | functionDropInstrumentUndoAction (int nTargetInstrument, std::vector< int > *AddedComponents) |
| void | functionFillNotesRedoAction (QStringList noteList, int nSelectedInstrument, int patternNumber) |
| void | functionFillNotesUndoAction (QStringList noteList, int nSelectedInstrument, int patternNumber) |
| void | functionMoveInstrumentAction (int nSourceInstrument, int nTargetInstrument) |
| void | functionPasteNotesRedoAction (std::list< H2Core::Pattern * > &changeList, std::list< H2Core::Pattern * > &appliedList) |
| void | functionPasteNotesUndoAction (std::list< H2Core::Pattern * > &appliedList) |
| void | functionRandomVelocityAction (QStringList noteVeloValue, int nSelectedInstrument, int selectedPatternNumber) |
| virtual QRect | getKeyboardCursorRect () override |
| The screen area occupied by the keyboard cursor. | |
| virtual void | mouseClickEvent (QMouseEvent *ev) override |
| virtual void | mouseDragStartEvent (QMouseEvent *ev) override |
| virtual void | mouseDragUpdateEvent (QMouseEvent *ev) override |
| Update the state during a Selection drag. | |
| void | moveNoteAction (int nColumn, int nRow, int nPattern, int nNewColumn, int nNewRow, H2Core::Note *note) |
| virtual void | selectedInstrumentChangedEvent () override |
| virtual void | selectedPatternChangedEvent () override |
| virtual void | selectionMoveEndEvent (QInputEvent *ev) override |
| Move or copy notes. | |
| virtual void | songModeActivationEvent () override |
| void | undoRedoAction (int column, NotePropertiesRuler::Mode mode, int nSelectedPatternNumber, int nSelectedInstrument, float velocity, float pan, float leadLag, float probability, int noteKeyVal, int octaveKeyVal) |
| NotePropertiesRuler undo redo action. | |
Public Member Functions inherited from PatternEditor | |
| PatternEditor (QWidget *pParent, PatternEditorPanel *panel) | |
| ~PatternEditor () | |
| virtual bool | checkDeselectElements (std::vector< SelectionIndex > &elements) override |
| Deselecting notes. | |
| void | clearSelection () |
| Clear the pattern editor selection. | |
| void | deselectAndOverwriteNotes (std::vector< H2Core::Note * > &selected, std::vector< H2Core::Note * > &overwritten) |
| Deselect some notes, and "overwrite" some others. | |
| void | editNoteLengthAction (int nColumn, int nRealColumn, int nRow, int nLength, int nSelectedPatternNumber, int nSelectedInstrumentnumber, Editor editor) |
| void | editNotePropertiesAction (int nColumn, int nRealColumn, int nRow, int nSelectedPatternNumber, int nSelectedInstrumentNumber, Mode mode, Editor editor, float fVelocity, float fPan, float fLeadLag, float fProbability) |
| virtual void | endMouseGesture () override |
| unsigned | getGridHeight () const |
| float | getGridWidth () const |
| uint | getResolution () const |
| bool | isUsingTriplets () const |
| int | lineToPitch (int nLine) |
| void | mergeSelectionGroups (PatternEditor *pPatternEditor) |
| Merge together the selection groups of two PatternEditor objects to share a common selection. | |
| virtual void | mouseDragEndEvent (QMouseEvent *ev) override |
| virtual void | mouseMoveEvent (QMouseEvent *ev) override |
| virtual void | mouseReleaseEvent (QMouseEvent *ev) override |
| bool | notesMatchExactly (H2Core::Note *pNoteA, H2Core::Note *pNoteB) const |
| Do two notes match exactly, from the pattern editor's point of view? | |
| int | pitchToLine (int nPitch) |
| void | setResolution (uint res, bool bUseTriplets) |
Set the editor grid resolution, dividing a whole note into res subdivisions. | |
| virtual void | stackedModeActivationEvent (int nValue) override |
| virtual void | startMouseLasso (QMouseEvent *ev) override |
| Change the mouse cursor during mouse gestures. | |
| virtual void | startMouseMove (QMouseEvent *ev) override |
| void | undoDeselectAndOverwriteNotes (std::vector< H2Core::Note * > &selected, std::vector< H2Core::Note * > &overwritten) |
| virtual void | updateModifiers (QInputEvent *ev) |
| Update the status of modifier keys in response to input events. | |
| void | updatePosition (float fTick) |
| Caches the AudioEngine::m_nPatternTickPosition in the member variable m_nTick and triggers an update(). | |
| virtual void | updateWidget () override |
| Update a widget in response to a change in selection. | |
| virtual void | validateSelection () override |
| Ensure that the Selection contains only valid elements. | |
| void | zoomIn () |
| Zoom in / out on the time axis. | |
| void | zoomOut () |
Public Member Functions inherited from EventListener | |
| virtual | ~EventListener () |
| virtual void | actionModeChangeEvent (int nValue) |
| virtual void | bbtChangedEvent () |
| virtual void | driverChangedEvent () |
| virtual void | errorEvent (int nErrorCode) |
| virtual void | gridCellToggledEvent () |
| virtual void | instrumentParametersChangedEvent (int nInstrumentNumber) |
| virtual void | jacksessionEvent (int nValue) |
| virtual void | jackTimebaseStateChangedEvent (int nValue) |
| virtual void | jackTransportActivationEvent () |
| virtual void | loopModeActivationEvent () |
| virtual void | metronomeEvent (int nValue) |
| virtual void | midiActivityEvent () |
| virtual void | midiMapChangedEvent () |
| virtual void | nextPatternsChangedEvent () |
| virtual void | nextShotEvent () |
| virtual void | noteOnEvent (int nInstrument) |
| virtual void | patternEditorLockedEvent () |
| virtual void | patternModifiedEvent () |
| virtual void | playbackTrackChangedEvent () |
| virtual void | playingPatternsChangedEvent () |
| virtual void | playlistLoadSongEvent (int nIndex) |
| virtual void | progressEvent (int nValue) |
| virtual void | quitEvent (int nValue) |
| virtual void | relocationEvent () |
| virtual void | songModifiedEvent () |
| virtual void | songSizeChangedEvent () |
| virtual void | soundLibraryChangedEvent () |
| virtual void | stateChangedEvent (H2Core::AudioEngine::State state) |
| virtual void | tempoChangedEvent (int nValue) |
| virtual void | timelineActivationEvent () |
| virtual void | timelineUpdateEvent (int nValue) |
| virtual void | undoRedoActionEvent (int nValue) |
| virtual void | updatePreferencesEvent (int nValue) |
| virtual void | updateSongEvent (int nValue) |
| virtual void | XRunEvent () |
Public Member Functions inherited from Object< PatternEditor > | |
| Object () | |
| Object (const Object< PatternEditor > &other) | |
Public Member Functions inherited from Base | |
| Base () | |
| Base (const Base &other) | |
| virtual const char * | class_name () const |
| void | logBacktrace () const |
| Print the current stack at point into the debug log. | |
| void | Print (bool bShort=true) const |
| Prints content of toQString() via DEBUGLOG. | |
| virtual QString | toQString (const QString &sPrefix="", bool bShort=true) const |
| Formatted string version for debugging purposes. | |
Public Member Functions inherited from SelectionWidget< H2Core::Note * > | |
| virtual bool | canDragElements () |
| Can elements be dragged as well as being selected? This may change to suit widget's current state. | |
| virtual bool | checkDeselectElements (std::vector< SelectionIndex > &elements) |
| Inform the client that we're deselecting elements. | |
| virtual QScrollArea * | findScrollArea () |
| Find the QScrollArea, if any, which contains the widget. | |
| virtual void | selectionMoveUpdateEvent (QMouseEvent *ev) |
| virtual void | selectionMoveCancelEvent () |
Private Member Functions | |
| void | createBackground () override |
| Updates m_pBackgroundPixmap to show the latest content. | |
| void | drawBackground (QPainter &pointer) |
| void | drawFocus (QPainter &painter) |
| void | drawNote (H2Core::Note *pNote, QPainter &painter, bool bIsForeground=true) |
| Draw a note. | |
| void | drawPattern (QPainter &painter) |
| Draws a pattern. | |
| virtual void | hideEvent (QHideEvent *ev) override |
| virtual void | keyPressEvent (QKeyEvent *ev) override |
| Handle key press events. | |
| virtual void | keyReleaseEvent (QKeyEvent *ev) override |
| virtual void | mousePressEvent (QMouseEvent *ev) override |
| Raw Qt mouse events are passed to the Selection. | |
| virtual void | paintEvent (QPaintEvent *ev) override |
| QString | renameCompo (QString OriginalName) |
| virtual void | showEvent (QShowEvent *ev) override |
Additional Inherited Members | |
Public Types inherited from PatternEditor | |
| enum class | Editor { DrumPattern = 0 , PianoRoll = 1 , NotePropertiesRuler = 2 , None = 3 } |
| enum class | Mode { Velocity = 0 , Pan = 1 , LeadLag = 2 , NoteKey = 3 , Probability = 4 , None = 5 } |
Public Types inherited from SelectionWidget< H2Core::Note * > | |
| typedef H2Core::Note * | SelectionIndex |
Static Public Member Functions inherited from PatternEditor | |
| static QColor | computeNoteColor (float velocity) |
| Calculate colour to use for note representation based on note velocity. | |
| static bool | isUsingAdditionalPatterns (const H2Core::Pattern *pPattern) |
| Determines whether to pattern editor should show further patterns (determined by getPattersToShow()) or just the currently selected one. | |
| static QString | modeToQString (Mode mode) |
| static void | triggerStatusMessage (H2Core::Note *pNote, Mode mode) |
Static Public Member Functions inherited from Base | |
| static const char * | _class_name () |
| return the class name | |
| static QString | base_clock (const QString &sMsg) |
| Measures the current time and stores it in __last_clock. | |
| static QString | base_clock_in (const QString &sMsg) |
| static int | bootstrap (Logger *logger, bool count=false) |
| must be called before any Object instantiation ! | |
| static bool | count_active () |
| static int | getAliveObjectCount () |
| static object_map_t | getObjectMap () |
| static Logger * | logger () |
| return the logger instance | |
| static int | objects_count () |
| static void | printObjectMapDiff (object_map_t map) |
| Creates the difference between a snapshot of the object map and its current state and prints it to std::cout. | |
| static void | set_count (bool flag) |
| enable/disable class instances counting | |
| static void | write_objects_map_to (std::ostream &out, object_map_t *map=nullptr) |
| output the full objects map to a given ostream | |
| static void | write_objects_map_to_cerr () |
| output objects map to stderr | |
Static Public Attributes inherited from PatternEditor | |
| static constexpr int | nMargin = 20 |
Static Public Attributes inherited from Base | |
| static QString | sPrintIndention = " " |
| String used to format the debugging string output of some core classes. | |
Protected Member Functions inherited from PatternEditor | |
| void | drawGridLines (QPainter &p, Qt::PenStyle style=Qt::SolidLine) const |
| Draw lines for note grid. | |
| void | drawNoteSymbol (QPainter &p, QPoint pos, H2Core::Note *pNote, bool bIsForeground=true) const |
| Draw a note. | |
| virtual void | enterEvent (QEvent *ev) override |
| virtual void | focusInEvent (QFocusEvent *ev) override |
| virtual void | focusOutEvent (QFocusEvent *ev) override |
| int | getColumn (int x, bool bUseFineGrained=false) const |
| std::vector< H2Core::Pattern * > | getPatternsToShow (void) |
| Get notes to show in pattern editor. | |
| int | granularity () const |
| Granularity of grid positioning (in ticks) | |
| void | invalidateBackground () |
| virtual void | leaveEvent (QEvent *ev) override |
| QPoint | movingGridOffset () const |
| QColor | selectedNoteColor () const |
| Colour to use for outlining selected notes. | |
| void | storeNoteProperties (const H2Core::Note *pNote) |
| Stores the properties of pNote in member variables. | |
| void | updatePatternInfo () |
| Update current pattern information. | |
| void | updateWidth () |
| Adjusts m_nActiveWidth and m_nEditorWidth to the current state of the editor. | |
Protected Member Functions inherited from Object< PatternEditor > | |
| ~Object () | |
Protected Member Functions inherited from Base | |
| ~Base () | |
Protected Member Functions inherited from WidgetWithScalableFont< 7, 9, 11 > | |
| constexpr int | getPointSize (H2Core::FontTheme::FontSize fontSize) const |
Static Protected Member Functions inherited from Base | |
| static void | registerClass (const char *name, const atomic_obj_cpt_t *counters) |
Protected Attributes inherited from PatternEditor | |
| bool | m_bBackgroundInvalid |
| bool | m_bCopyNotMove |
| bool | m_bEntered |
| Indicates whether the mouse pointer entered the widget. | |
| bool | m_bFineGrained |
| bool | m_bSelectNewNotes |
| bool | m_bUseTriplets |
| Editor | m_editor |
| float | m_fGridWidth |
| float | m_fLeadLag = 0 |
| float | m_fOldLeadLag = 0 |
| float | m_fOldPan = 0 |
| float | m_fOldProbability = 0 |
| float | m_fOldVelocity = 0 |
| float | m_fPan = 0 |
| float | m_fProbability = 0 |
| float | m_fVelocity = 0 |
| Mode | m_mode |
| int | m_nActiveWidth |
| int | m_nColumn = 0 |
| uint | m_nEditorHeight |
| uint | m_nEditorWidth |
| unsigned | m_nGridHeight |
| unsigned | m_nOctaves = 7 |
| int | m_nOldLength = 0 |
| int | m_nOldPoint |
| int | m_nPressedLine = 0 |
| int | m_nRealColumn = 0 |
| uint | m_nResolution |
| int | m_nRow = 0 |
| int | m_nSelectedInstrumentNumber = 0 |
| Cached properties used when adjusting a note property via right-press mouse movement. | |
| int | m_nSelectedPatternNumber = 0 |
| int | m_nTick |
| H2Core::AudioEngine * | m_pAudioEngine |
| QPixmap * | m_pBackgroundPixmap |
| H2Core::Note * | m_pDraggedNote |
| H2Core::Pattern * | m_pPattern |
| PatternEditorPanel * | m_pPatternEditorPanel |
| QMenu * | m_pPopupMenu |
| Selection< SelectionIndex > | m_selection |
| The Selection object. | |
Static Protected Attributes inherited from Base | |
| static bool | __count = false |
| should we count class instances | |
| static timeval | __last_clock = { 0, 0 } |
| static Logger * | __logger = nullptr |
| static bool | bLogColors = true |
Drum pattern editor.
Definition at line 46 of file DrumPatternEditor.h.
| DrumPatternEditor | ( | QWidget * | parent, |
| PatternEditorPanel * | panel ) |
Definition at line 58 of file DrumPatternEditor.cpp.
| ~DrumPatternEditor | ( | ) |
Definition at line 73 of file DrumPatternEditor.cpp.
| void addOrDeleteNoteAction | ( | int | nColumn, |
| int | row, | ||
| int | selectedPatternNumber, | ||
| int | oldLength, | ||
| float | oldVelocity, | ||
| float | fOldPan, | ||
| float | oldLeadLag, | ||
| int | oldNoteKeyVal, | ||
| int | oldOctaveKeyVal, | ||
| float | probability, | ||
| bool | listen, | ||
| bool | isMidi, | ||
| bool | isInstrumentMode, | ||
| bool | isNoteOff, | ||
| bool | isDelete ) |
Definition at line 360 of file DrumPatternEditor.cpp.
| void addOrRemoveNote | ( | int | nColumn, |
| int | nRealColumn, | ||
| int | row, | ||
| bool | bDoAdd = true, | ||
| bool | bDoDelete = true, | ||
| bool | bIsNoteOff = false ) |
Definition at line 105 of file DrumPatternEditor.cpp.
|
overrideprivatevirtual |
Updates m_pBackgroundPixmap to show the latest content.
Reimplemented from PatternEditor.
Definition at line 1302 of file DrumPatternEditor.cpp.
|
overridevirtualslot |
Definition at line 916 of file DrumPatternEditor.cpp.
|
private |
Definition at line 1213 of file DrumPatternEditor.cpp.
|
private |
Definition at line 1371 of file DrumPatternEditor.cpp.
|
private |
Draw a note.
Draws a note.
| pNote | Particular note to draw |
| painter | Painting device |
| bIsForeground | Whether the pNote is contained in the pattern currently shown in the pattern editor (the one selected in the song editor) |
Definition at line 1195 of file DrumPatternEditor.cpp.
|
private |
Draws a pattern.
Definition at line 1089 of file DrumPatternEditor.cpp.
|
overridevirtual |
Reimplemented from EventListener.
Definition at line 1426 of file DrumPatternEditor.cpp.
|
overridevirtual |
Find all elements which intersect a selection area.
Implements SelectionWidget< H2Core::Note * >.
Definition at line 829 of file DrumPatternEditor.cpp.
| void functionAddEmptyInstrumentRedo | ( | ) |
Definition at line 1999 of file DrumPatternEditor.cpp.
| void functionAddEmptyInstrumentUndo | ( | ) |
Definition at line 1974 of file DrumPatternEditor.cpp.
| void functionClearNotesUndoAction | ( | std::list< H2Core::Note * > | noteList, |
| int | nSelectedInstrument, | ||
| int | patternNumber ) |
========================================================== undo / redo actions from pattern editor instrument list
Definition at line 1503 of file DrumPatternEditor.cpp.
| void functionDeleteInstrumentUndoAction | ( | std::list< H2Core::Note * > | noteList, |
| int | nSelectedInstrument, | ||
| QString | instrumentName, | ||
| QString | drumkitName ) |
Definition at line 1912 of file DrumPatternEditor.cpp.
| void functionDropInstrumentRedoAction | ( | QString | sDrumkitPath, |
| QString | sInstrumentName, | ||
| int | nTargetInstrument, | ||
| std::vector< int > * | pAddedComponents ) |
| sDrumkitPath | |
| sInstrumentName | |
| nTargetInstrument | |
| AddedComponents | for the drumkit. |
Definition at line 1818 of file DrumPatternEditor.cpp.
| void functionDropInstrumentUndoAction | ( | int | nTargetInstrument, |
| std::vector< int > * | AddedComponents ) |
Definition at line 1790 of file DrumPatternEditor.cpp.
| void functionFillNotesRedoAction | ( | QStringList | noteList, |
| int | nSelectedInstrument, | ||
| int | patternNumber ) |
Definition at line 1690 of file DrumPatternEditor.cpp.
| void functionFillNotesUndoAction | ( | QStringList | noteList, |
| int | nSelectedInstrument, | ||
| int | patternNumber ) |
Definition at line 1648 of file DrumPatternEditor.cpp.
| void functionMoveInstrumentAction | ( | int | nSourceInstrument, |
| int | nTargetInstrument ) |
Definition at line 1766 of file DrumPatternEditor.cpp.
| void functionPasteNotesRedoAction | ( | std::list< H2Core::Pattern * > & | changeList, |
| std::list< H2Core::Pattern * > & | appliedList ) |
Definition at line 1580 of file DrumPatternEditor.cpp.
| void functionPasteNotesUndoAction | ( | std::list< H2Core::Pattern * > & | appliedList | ) |
Definition at line 1526 of file DrumPatternEditor.cpp.
| void functionRandomVelocityAction | ( | QStringList | noteVeloValue, |
| int | nSelectedInstrument, | ||
| int | selectedPatternNumber ) |
Definition at line 1724 of file DrumPatternEditor.cpp.
|
overridevirtual |
The screen area occupied by the keyboard cursor.
Implements SelectionWidget< H2Core::Note * >.
Definition at line 881 of file DrumPatternEditor.cpp.
|
overrideprivatevirtual |
Definition at line 1411 of file DrumPatternEditor.cpp.
|
overrideprivatevirtual |
Handle key press events.
Events are passed to Selection first, which may claim them (in which case they are ignored here).
Definition at line 663 of file DrumPatternEditor.cpp.
|
overrideprivatevirtual |
Definition at line 820 of file DrumPatternEditor.cpp.
|
overridevirtual |
Implements SelectionWidget< H2Core::Note * >.
Definition at line 179 of file DrumPatternEditor.cpp.
|
overridevirtual |
Reimplemented from PatternEditor.
Definition at line 293 of file DrumPatternEditor.cpp.
|
overridevirtual |
Update the state during a Selection drag.
Reimplemented from PatternEditor.
Definition at line 347 of file DrumPatternEditor.cpp.
|
overrideprivatevirtual |
Raw Qt mouse events are passed to the Selection.
Reimplemented from PatternEditor.
Definition at line 239 of file DrumPatternEditor.cpp.
| void moveNoteAction | ( | int | nColumn, |
| int | nRow, | ||
| int | nPattern, | ||
| int | nNewColumn, | ||
| int | nNewRow, | ||
| H2Core::Note * | note ) |
Definition at line 481 of file DrumPatternEditor.cpp.
|
slot |
Definition at line 1491 of file DrumPatternEditor.cpp.
|
overrideprivatevirtual |
Definition at line 1322 of file DrumPatternEditor.cpp.
|
overridevirtualslot |
Paste selection.
Selection is XML containing notes, contained in a root 'noteSelection' element.
Definition at line 973 of file DrumPatternEditor.cpp.
|
private |
|
overridevirtualslot |
Definition at line 902 of file DrumPatternEditor.cpp.
|
overridevirtual |
Reimplemented from EventListener.
Definition at line 1416 of file DrumPatternEditor.cpp.
|
overridevirtual |
Reimplemented from EventListener.
Definition at line 1421 of file DrumPatternEditor.cpp.
|
overridevirtual |
Move or copy notes.
Moves or copies notes at the end of a Selection move, handling the behaviours necessary for out-of-range moves or copies.
Implements SelectionWidget< H2Core::Note * >.
Definition at line 563 of file DrumPatternEditor.cpp.
|
overrideprivatevirtual |
Definition at line 1403 of file DrumPatternEditor.cpp.
|
overridevirtual |
Reimplemented from PatternEditor.
Definition at line 1430 of file DrumPatternEditor.cpp.
| void undoRedoAction | ( | int | column, |
| NotePropertiesRuler::Mode | mode, | ||
| int | nSelectedPatternNumber, | ||
| int | nSelectedInstrument, | ||
| float | velocity, | ||
| float | pan, | ||
| float | leadLag, | ||
| float | probability, | ||
| int | noteKeyVal, | ||
| int | octaveKeyVal ) |
NotePropertiesRuler undo redo action.
Definition at line 1435 of file DrumPatternEditor.cpp.
|
overridevirtualslot |
Definition at line 77 of file DrumPatternEditor.cpp.