Skip to content
Kevin Zander edited this page May 10, 2024 · 1 revision

Common widgets

AutomatableModelView.cpp Base class for anything that can be automated
AutomatableButton.cpp Base class for PixmapButton and LedCheckBox
AutomatableSlider.cpp bild
CaptionMenu.cpp bild
ComboBox.cpp bild
CPULoadWidget.cpp bild
CustomTextKnob.cpp Used by VST, based on Knob
Fader.cpp bild
Graph.cpp bild bild
GroupBox.cpp bild
Knob.cpp bild
LedCheckBox.cpp bild
LcdFloatSpinBox.cpp bild
LcdSpinBox.cpp bild
LcdWidget.cpp bild Does not support interaction
LeftRightNav.cpp bild Used in instrument window
MeterDialog.cpp bild bild Same widget, two looks
MixerLineLcdSpinBox.cpp bild Used in SampleTrackWindow and InstrumentTrackWindow
NStateButton.cpp bild Alternates between icons when clicked
Oscilloscope.cpp bild
PixmapButton.cpp bild
RowTableView.cpp bild
StringPairDrag.cpp bild Floating image when dragging knobs etc
TabBar.cpp bild
TabWidget.cpp bild
TempoSyncKnob.cpp bild
TextFloat.cpp bild
TimeDisplayWidget.cpp bild
ToolButton.cpp bild

Main window

FileBrowser.cpp bild
MainWindow.cpp bild
PluginBrowser.cpp bild
RecentProjectsMenu.cpp bild
SideBar.cpp bild
SideBarWidget.cpp Base class for PluginBrowser and FileBrowser
SubWindow.cpp bild All windows inside the LMMS main window
TemplatesMenu.cpp bild

Controllers

ControllerDialog.cpp Base class for LfoControllerDialog and PeakControllerDialog
ControllerRackView.cpp bild
ControllerView.cpp bild
LfoControllerDialog.cpp bild
PeakControllerDialog.cpp bild

Dialogs (separate window)

AboutDialog.cpp bild
ColorChooser.cpp OS native (?) color picker
ControllerConnectionDialog.cpp bild
EffectSelectDialog.cpp bild
ExportProjectDialog.cpp bild
FileDialog.cpp Open/export
VersionedSaveDialog.cpp For saving project files
RenameDialog.cpp bild

Editors

AutomationEditor.cpp bild
Editor.cpp Base class that provides a toolbar and playback control
PatternEditor.cpp bild
PianoRoll.cpp bild
PositionLine.cpp bild
ProjectNotes.cpp bild not an Editor but still and "editor"
Rubberband.cpp bild
SongEditor.cpp bild
StepRecorderWidget.cpp bild The red stuff drawn on top of Piano Roll
TimeLineWidget.cpp bild

Effects

EffectControlDialog.cpp bild Window for native effects
EffectView.cpp bild
EffectRackView.cpp bild
LadspaControlView.cpp bild

Instrument (InstrumentTrackWindow)

EnvelopeAndLfoView.cpp bild
InstrumentView.cpp bild
InstrumentFunctionViews.cpp bild
InstrumentMidiIOView.cpp bild
InstrumentMiscView.cpp bild
InstrumentSoundShapingView.cpp bild
InstrumentTrackWindow.cpp bild
PianoView.cpp bild

Midi

MidiCCRackView.cpp bild
MidiPortMenu.cpp bild Used both by TrackOperationsWidget and InstrumentMidiIOView

Mixer

MixerView.cpp bild
MixerLine.cpp mixerline
SendButtonIndicator.cpp bild

Settings

AudioDeviceSetupWidget.cpp bild
AudioAlsaSetupWidget.cpp bild
MidiSetupWidget.cpp bild
SetupDialog.cpp bild exception, it's a Dialog

Tracks and Clips (TrackContainerView)

AutomationClipView.cpp bild
AutomationTrackView.cpp bild
ClipView.cpp Base class
FadeButton.cpp bild The thing that blinks
InstrumentTrackView.cpp bild
MidiClipView.cpp bild
PatternClipView.cpp bild
PatternTrackView.cpp bild
SampleClipView.cpp bild
SampleTrackView.cpp bild
TrackContainerView.cpp bild
TrackContentWidget.cpp bild
TrackLabelButton.cpp bild
TrackOperationsWidget.cpp bild
TrackRenameLineEdit.cpp bild
TrackView.cpp Base class

Other subwindows

MicrotunerConfig.cpp bild
SampleTrackWindow.cpp bild very similar to InstrumentTrackWindow
ToolPluginView.cpp Used by plugins found in the Tool menu

Non-widget classes

ActionGroup.cpp bild Used to group buttons like these
embed.cpp Loading of external pixmaps and text files
GuiApplication.cpp Holds pointers to the main components of the GUI
LmmsPalette.cpp Theme colors
LmmsStyle.cpp Widget styling
MainApplication.cpp Used to catch events
ModelView.cpp Base class for anything that can be connected to a backend Model
ToolTip.cpp Adds the ability to disable tool tips

LV2

I don't understand these

ControlLayout.cpp QLayout used by LinkedModelGroupView
Controls.cpp Subclasses of common LMMS widgets, used by LinkedModelGroupView
LinkedModelGroupViews.cpp QWidget used by Lv2ViewBase
Lv2ViewBase.cpp Base class for Lv2Instrument