diff options
| author | Calvin Morrison <calvin@pobox.com> | 2026-05-15 10:10:04 -0400 |
|---|---|---|
| committer | Calvin Morrison <calvin@pobox.com> | 2026-05-15 10:10:04 -0400 |
| commit | e776bc768cf9afca1867200e25d64d315cd72a3e (patch) | |
| tree | 6745527b939c9d37147d7dc98e8664437ee433f6 /src/ui/devicespage.h | |
| parent | 4e602e78cdfc210ab7781668df2a88afb923258b (diff) | |
Full mixer implementation — tray, popup, prefs, devices tab with port indicators
Adds the complete tmix feature set built since the initial skeleton:
balance knob, level meters, KLed mute button, system tray with scroll-wheel
volume and recording indicator, tray popup, preferences dialog, right-click
context menus, single-instance enforcement, scroll area, window geometry
persistence, and Devices tab with PA card profile switcher and live port
availability indicators (2-column layout, in-place updates on plug/unplug).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Diffstat (limited to 'src/ui/devicespage.h')
| -rw-r--r-- | src/ui/devicespage.h | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/ui/devicespage.h b/src/ui/devicespage.h new file mode 100644 index 0000000..49081f4 --- /dev/null +++ b/src/ui/devicespage.h @@ -0,0 +1,42 @@ +#pragma once + +#include <tqwidget.h> +#include <tqmap.h> +#include <tqvaluelist.h> +#include <tqstring.h> + +class PulseModel; +class TQScrollView; +class TQComboBox; +class TQLabel; +class TQVBoxLayout; + +struct PortWidgets { + TQLabel *dot; +}; + +class DevicesPage : public TQWidget +{ + TQ_OBJECT + +public: + explicit DevicesPage( PulseModel *model, TQWidget *parent = 0 ); + +private slots: + void onCardAdded( uint32_t index ); + void onCardRemoved( uint32_t index ); + void onCardUpdated( uint32_t index ); + void onProfileActivated( int comboIndex ); + +private: + void rebuild(); + + PulseModel *m_model; + TQScrollView *m_scroll; + TQWidget *m_container; + + TQMap<TQComboBox*, uint32_t> m_comboCard; + TQMap<TQComboBox*, TQValueList<TQString> > m_profileNames; + TQMap<uint32_t, TQComboBox*> m_cardCombo; + TQMap<uint32_t, TQValueList<PortWidgets> > m_cardPorts; +}; |
