summaryrefslogtreecommitdiff
path: root/src/model/audiodevice.h
diff options
context:
space:
mode:
authorCalvin Morrison <calvin@pobox.com>2026-05-15 10:10:04 -0400
committerCalvin Morrison <calvin@pobox.com>2026-05-15 10:10:04 -0400
commite776bc768cf9afca1867200e25d64d315cd72a3e (patch)
tree6745527b939c9d37147d7dc98e8664437ee433f6 /src/model/audiodevice.h
parent4e602e78cdfc210ab7781668df2a88afb923258b (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/model/audiodevice.h')
-rw-r--r--src/model/audiodevice.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/model/audiodevice.h b/src/model/audiodevice.h
index e753fc9..854ba35 100644
--- a/src/model/audiodevice.h
+++ b/src/model/audiodevice.h
@@ -21,12 +21,16 @@ public:
virtual ~AudioDevice() {}
virtual TQString name() const = 0;
+ virtual TQString iconName() const = 0;
virtual Category category() const = 0;
virtual int volume() const = 0; // 0-100
virtual bool muted() const = 0;
+ virtual int pan() const = 0; // -50 (left) .. 0 .. +50 (right)
+
virtual void setVolume( int v ) = 0;
virtual void setMuted( bool m ) = 0;
+ virtual void setPan( int p ) = 0;
// Creates the widget for this device. Caller takes ownership.
virtual TQWidget *createWidget( TQWidget *parent ) = 0;
@@ -34,5 +38,8 @@ public:
signals:
void volumeChanged( int v );
void muteChanged( bool m );
+ void panChanged( int p );
+ void levelChanged( float level );
void nameChanged( const TQString &name );
+ void recordingActiveChanged( bool active );
};