Widget Overview - LMMS/lmms GitHub Wiki
Common widgets
| AutomatableModelView.cpp | Base class for anything that can be automated |
| AutomatableButton.cpp | Base class for PixmapButton and LedCheckBox |
| AutomatableSlider.cpp | ![]() |
| CaptionMenu.cpp | ![]() |
| ComboBox.cpp | ![]() |
| CPULoadWidget.cpp | ![]() |
| CustomTextKnob.cpp | Used by VST, based on Knob |
| Fader.cpp | ![]() |
| Graph.cpp | ![]() |
| GroupBox.cpp | ![]() |
| Knob.cpp | ![]() |
| LedCheckBox.cpp | ![]() |
| LcdFloatSpinBox.cpp | ![]() |
| LcdSpinBox.cpp | ![]() |
| LcdWidget.cpp | Does not support interaction |
| LeftRightNav.cpp | Used in instrument window |
| MeterDialog.cpp | Same widget, two looks |
| MixerLineLcdSpinBox.cpp | Used in SampleTrackWindow and InstrumentTrackWindow |
| NStateButton.cpp | Alternates between icons when clicked |
| Oscilloscope.cpp | ![]() |
| PixmapButton.cpp | ![]() |
| RowTableView.cpp | ![]() |
| StringPairDrag.cpp | Floating image when dragging knobs etc |
| TabBar.cpp | ![]() |
| TabWidget.cpp | ![]() |
| TempoSyncKnob.cpp | ![]() |
| TextFloat.cpp | ![]() |
| TimeDisplayWidget.cpp | ![]() |
| ToolButton.cpp | ![]() |
Main window
| FileBrowser.cpp | ![]() |
| MainWindow.cpp | ![]() |
| PluginBrowser.cpp | ![]() |
| RecentProjectsMenu.cpp | ![]() |
| SideBar.cpp | ![]() |
| SideBarWidget.cpp | Base class for PluginBrowser and FileBrowser |
| SubWindow.cpp | All windows inside the LMMS main window |
| TemplatesMenu.cpp | ![]() |
Controllers
| ControllerDialog.cpp | Base class for LfoControllerDialog and PeakControllerDialog |
| ControllerRackView.cpp | ![]() |
| ControllerView.cpp | ![]() |
| LfoControllerDialog.cpp | ![]() |
| PeakControllerDialog.cpp | ![]() |
Dialogs (separate window)
| AboutDialog.cpp | ![]() |
| ColorChooser.cpp | OS native (?) color picker |
| ControllerConnectionDialog.cpp | ![]() |
| EffectSelectDialog.cpp | ![]() |
| ExportProjectDialog.cpp | ![]() |
| FileDialog.cpp | Open/export |
| VersionedSaveDialog.cpp | For saving project files |
| RenameDialog.cpp | ![]() |
Editors
| AutomationEditor.cpp | ![]() |
| Editor.cpp | Base class that provides a toolbar and playback control |
| PatternEditor.cpp | ![]() |
| PianoRoll.cpp | ![]() |
| PositionLine.cpp | ![]() |
| ProjectNotes.cpp | not an Editor but still and "editor" |
| Rubberband.cpp | ![]() |
| SongEditor.cpp | ![]() |
| StepRecorderWidget.cpp | The red stuff drawn on top of Piano Roll |
| TimeLineWidget.cpp | ![]() |
Effects
| EffectControlDialog.cpp | Window for native effects |
| EffectView.cpp | ![]() |
| EffectRackView.cpp | ![]() |
| LadspaControlView.cpp | ![]() |
Instrument (InstrumentTrackWindow)
| EnvelopeAndLfoView.cpp | ![]() |
| InstrumentView.cpp | ![]() |
| InstrumentFunctionViews.cpp | ![]() |
| InstrumentMidiIOView.cpp | ![]() |
| InstrumentMiscView.cpp | ![]() |
| InstrumentSoundShapingView.cpp | ![]() |
| InstrumentTrackWindow.cpp | ![]() |
| PianoView.cpp | ![]() |
Midi
| MidiCCRackView.cpp | ![]() |
| MidiPortMenu.cpp | Used both by TrackOperationsWidget and InstrumentMidiIOView |
Mixer
| MixerView.cpp | ![]() |
| MixerLine.cpp | ![]() |
| SendButtonIndicator.cpp | ![]() |
Settings
| AudioDeviceSetupWidget.cpp | ![]() |
| AudioAlsaSetupWidget.cpp | ![]() |
| MidiSetupWidget.cpp | ![]() |
| SetupDialog.cpp | exception, it's a Dialog |
Tracks and Clips (TrackContainerView)
| AutomationClipView.cpp | ![]() |
| AutomationTrackView.cpp | ![]() |
| ClipView.cpp | Base class |
| FadeButton.cpp | The thing that blinks |
| InstrumentTrackView.cpp | ![]() |
| MidiClipView.cpp | ![]() |
| PatternClipView.cpp | ![]() |
| PatternTrackView.cpp | ![]() |
| SampleClipView.cpp | ![]() |
| SampleTrackView.cpp | ![]() |
| TrackContainerView.cpp | ![]() |
| TrackContentWidget.cpp | ![]() |
| TrackLabelButton.cpp | ![]() |
| TrackOperationsWidget.cpp | ![]() |
| TrackRenameLineEdit.cpp | ![]() |
| TrackView.cpp | Base class |
Other subwindows
| MicrotunerConfig.cpp | ![]() |
| SampleTrackWindow.cpp | very similar to InstrumentTrackWindow |
| ToolPluginView.cpp | Used by plugins found in the Tool menu |
Non-widget classes
| ActionGroup.cpp | 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 |











Does not support interaction
Used in instrument window
Same widget, two looks
Used in SampleTrackWindow and InstrumentTrackWindow
Alternates between icons when clicked


Floating image when dragging knobs etc










All windows inside the LMMS main window













not an 

The red stuff drawn on top of Piano Roll
Window for native effects











Used both by 





exception, it's a Dialog

The thing that blinks











very similar to
Used to group buttons like these