LMMS
Loading...
Searching...
No Matches
lmms::gui::InstrumentTrackView Class Reference

#include <InstrumentTrackView.h>

Inheritance diagram for lmms::gui::InstrumentTrackView:
lmms::gui::TrackView lmms::gui::ModelView lmms::JournallingObject lmms::SerializingObject

Public Member Functions

 InstrumentTrackView (InstrumentTrack *_it, TrackContainerView *tc)
 ~InstrumentTrackView () override
InstrumentTrackWindowgetInstrumentTrackWindow ()
InstrumentTrackmodel ()
const InstrumentTrackmodel () const
QMenu * midiMenu ()
QMenu * createMixerMenu (QString title, QString newMixerLabel) override
 Create a menu for assigning/creating channels for this track.
Public Member Functions inherited from lmms::gui::TrackView
 TrackView (Track *_track, TrackContainerView *tcv)
 Create a new track View.
 ~TrackView () override=default
const TrackgetTrack () const
TrackgetTrack ()
TrackContainerViewtrackContainerView ()
TrackOperationsWidgetgetTrackOperationsWidget ()
QWidget * getTrackSettingsWidget ()
TrackContentWidgetgetTrackContentWidget ()
bool isMovingTrack () const
virtual void update ()
 Update this track View and all its content objects.
Public Member Functions inherited from lmms::gui::ModelView
 ModelView (Model *model, QWidget *widget)
virtual ~ModelView ()
virtual void setModel (Model *model, bool isOldModelValid=true)
virtual void unsetModel ()
Modelmodel ()
const Modelmodel () const
template<class T>
T * castModel ()
template<class T>
const T * castModel () const
Public Member Functions inherited from lmms::JournallingObject
 JournallingObject ()
 ~JournallingObject () override
jo_id_t id () const
void saveJournallingState (const bool newState)
void restoreJournallingState ()
void addJournalCheckPoint ()
QDomElement saveState (QDomDocument &_doc, QDomElement &_parent) override
void restoreState (const QDomElement &_this) override
bool isJournalling () const
void setJournalling (const bool _sr)
bool testAndSetJournalling (const bool newState)
bool isJournallingStateStackEmpty () const
Public Member Functions inherited from lmms::SerializingObject
 SerializingObject ()
virtual ~SerializingObject ()
void setHook (SerializingObjectHook *_hook)
SerializingObjectHookhook ()

Static Public Member Functions

static InstrumentTrackWindowtopLevelInstrumentTrackWindow ()

Protected Member Functions

void modelChanged () override
void dragEnterEvent (QDragEnterEvent *_dee) override
void dropEvent (QDropEvent *_de) override
Protected Member Functions inherited from lmms::gui::TrackView
void modelChanged () override
 Register that the model of this track View has changed.
void saveSettings (QDomDocument &doc, QDomElement &element) override
void loadSettings (const QDomElement &element) override
QString nodeName () const override
void dragEnterEvent (QDragEnterEvent *dee) override
 Start a drag event on this track View.
void dropEvent (QDropEvent *de) override
 Accept a drop event on this track View.
void mousePressEvent (QMouseEvent *me) override
 Handle a mouse press event on this track View.
void mouseMoveEvent (QMouseEvent *me) override
 Handle a mouse move event on this track View.
void mouseReleaseEvent (QMouseEvent *me) override
 Handle a mouse release event on this track View.
void wheelEvent (QWheelEvent *we) override
void paintEvent (QPaintEvent *pe) override
 Repaint this track View.
void resizeEvent (QResizeEvent *re) override
 Resize this track View.
Protected Member Functions inherited from lmms::gui::ModelView
QWidget * widget ()
virtual void doConnections ()
Protected Member Functions inherited from lmms::JournallingObject
void changeID (jo_id_t _id)

Private Slots

void toggleInstrumentWindow (bool _on)
void toggleMidiCCRack ()
void activityIndicatorPressed ()
void activityIndicatorReleased ()
void midiInSelected ()
void midiOutSelected ()
void midiConfigChanged ()
void assignMixerLine (int channelIndex)
 Assign a specific mixer Channel for this track.
void createMixerLine ()
 Create and assign a new mixer Channel for this track.
void handleConfigChange (QString cls, QString attr, QString value)

Private Member Functions

FadeButtongetActivityIndicator () override

Static Private Member Functions

static QPixmap determinePixmap (InstrumentTrack *instrumentTrack)

Private Attributes

InstrumentTrackWindowm_window
TrackLabelButtonm_tlb
MixerChannelLcdSpinBoxm_mixerChannelNumber
Knobm_volumeKnob
Knobm_panningKnob
FadeButtonm_activityIndicator
QMenu * m_midiMenu
QAction * m_midiInputAction
QAction * m_midiOutputAction
std::unique_ptr< MidiCCRackViewm_midiCCRackView
QPoint m_lastPos

Friends

class InstrumentTrackWindow

Additional Inherited Members

Public Slots inherited from lmms::gui::TrackView
virtual bool close ()
 Close this track View.

Constructor & Destructor Documentation

◆ InstrumentTrackView()

lmms::gui::InstrumentTrackView::InstrumentTrackView ( InstrumentTrack * _it,
TrackContainerView * tc )

◆ ~InstrumentTrackView()

lmms::gui::InstrumentTrackView::~InstrumentTrackView ( )
override

Member Function Documentation

◆ activityIndicatorPressed

void lmms::gui::InstrumentTrackView::activityIndicatorPressed ( )
privateslot

◆ activityIndicatorReleased

void lmms::gui::InstrumentTrackView::activityIndicatorReleased ( )
privateslot

◆ assignMixerLine

void lmms::gui::InstrumentTrackView::assignMixerLine ( int channelIndex)
privateslot

Assign a specific mixer Channel for this track.

◆ createMixerLine

void lmms::gui::InstrumentTrackView::createMixerLine ( )
privateslot

Create and assign a new mixer Channel for this track.

◆ createMixerMenu()

QMenu * lmms::gui::InstrumentTrackView::createMixerMenu ( QString title,
QString newMixerLabel )
overridevirtual

Create a menu for assigning/creating channels for this track.

Reimplemented from lmms::gui::TrackView.

◆ determinePixmap()

QPixmap lmms::gui::InstrumentTrackView::determinePixmap ( InstrumentTrack * instrumentTrack)
staticprivate

◆ dragEnterEvent()

void lmms::gui::InstrumentTrackView::dragEnterEvent ( QDragEnterEvent * _dee)
overrideprotected

◆ dropEvent()

void lmms::gui::InstrumentTrackView::dropEvent ( QDropEvent * _de)
overrideprotected

◆ getActivityIndicator()

FadeButton * lmms::gui::InstrumentTrackView::getActivityIndicator ( )
inlineoverrideprivatevirtual

Reimplemented from lmms::gui::TrackView.

◆ getInstrumentTrackWindow()

InstrumentTrackWindow * lmms::gui::InstrumentTrackView::getInstrumentTrackWindow ( )

◆ handleConfigChange

void lmms::gui::InstrumentTrackView::handleConfigChange ( QString cls,
QString attr,
QString value )
privateslot

◆ midiConfigChanged

void lmms::gui::InstrumentTrackView::midiConfigChanged ( )
privateslot

◆ midiInSelected

void lmms::gui::InstrumentTrackView::midiInSelected ( )
privateslot

◆ midiMenu()

QMenu * lmms::gui::InstrumentTrackView::midiMenu ( )
inline

◆ midiOutSelected

void lmms::gui::InstrumentTrackView::midiOutSelected ( )
privateslot

◆ model() [1/2]

InstrumentTrack * lmms::gui::InstrumentTrackView::model ( )
inline

◆ model() [2/2]

const InstrumentTrack * lmms::gui::InstrumentTrackView::model ( ) const
inline

◆ modelChanged()

void lmms::gui::InstrumentTrackView::modelChanged ( )
overrideprotectedvirtual

Reimplemented from lmms::gui::ModelView.

◆ toggleInstrumentWindow

void lmms::gui::InstrumentTrackView::toggleInstrumentWindow ( bool _on)
privateslot

◆ toggleMidiCCRack

void lmms::gui::InstrumentTrackView::toggleMidiCCRack ( )
privateslot

◆ topLevelInstrumentTrackWindow()

InstrumentTrackWindow * lmms::gui::InstrumentTrackView::topLevelInstrumentTrackWindow ( )
static

◆ InstrumentTrackWindow

friend class InstrumentTrackWindow
friend

Member Data Documentation

◆ m_activityIndicator

FadeButton* lmms::gui::InstrumentTrackView::m_activityIndicator
private

◆ m_lastPos

QPoint lmms::gui::InstrumentTrackView::m_lastPos
private

◆ m_midiCCRackView

std::unique_ptr<MidiCCRackView> lmms::gui::InstrumentTrackView::m_midiCCRackView
private

◆ m_midiInputAction

QAction* lmms::gui::InstrumentTrackView::m_midiInputAction
private

◆ m_midiMenu

QMenu* lmms::gui::InstrumentTrackView::m_midiMenu
private

◆ m_midiOutputAction

QAction* lmms::gui::InstrumentTrackView::m_midiOutputAction
private

◆ m_mixerChannelNumber

MixerChannelLcdSpinBox* lmms::gui::InstrumentTrackView::m_mixerChannelNumber
private

◆ m_panningKnob

Knob* lmms::gui::InstrumentTrackView::m_panningKnob
private

◆ m_tlb

TrackLabelButton* lmms::gui::InstrumentTrackView::m_tlb
private

◆ m_volumeKnob

Knob* lmms::gui::InstrumentTrackView::m_volumeKnob
private

◆ m_window

InstrumentTrackWindow* lmms::gui::InstrumentTrackView::m_window
private

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