From e776bc768cf9afca1867200e25d64d315cd72a3e Mon Sep 17 00:00:00 2001 From: Calvin Morrison Date: Fri, 15 May 2026 10:10:04 -0400 Subject: Full mixer implementation — tray, popup, prefs, devices tab with port indicators MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 --- src/ui/kledbutton.cpp | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 src/ui/kledbutton.cpp (limited to 'src/ui/kledbutton.cpp') diff --git a/src/ui/kledbutton.cpp b/src/ui/kledbutton.cpp new file mode 100644 index 0000000..f3b5ecc --- /dev/null +++ b/src/ui/kledbutton.cpp @@ -0,0 +1,29 @@ +#include "kledbutton.h" +#include + +KLedButton::KLedButton( const TQColor &col, TQWidget *parent, const char *name ) + : KLed( col, parent, name ) +{ +} + +KLedButton::KLedButton( const TQColor &col, KLed::State st, KLed::Look look, + KLed::Shape shape, TQWidget *parent, const char *name ) + : KLed( col, st, look, shape, parent, name ) +{ +} + +void KLedButton::mousePressEvent( TQMouseEvent *e ) +{ + if ( e->button() == TQt::LeftButton ) { + toggle(); + emit stateChanged( state() == KLed::On ); + } +} + +TQSize KLedButton::sizeHint() const { return TQSize( 22, 22 ); } +TQSizePolicy KLedButton::sizePolicy() const +{ + return TQSizePolicy( TQSizePolicy::Fixed, TQSizePolicy::Fixed ); +} + +#include "kledbutton.moc" -- cgit v1.2.3