Initial commit: snapshot of current working state

This commit is contained in:
2026-06-12 15:48:59 +10:00
parent 90d5ac26ec
commit da8240a9e2
5 changed files with 50 additions and 34 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 468 KiB

+1
View File
@@ -172,6 +172,7 @@ class MasterBus:
self.lufs_long = -70.0
self.volume = 1.0
self.pfl_hp_blend = 0.5 # 0.0 = PFL only, 0.5 = equal, 1.0 = HP only
self.headphone_volume = 0.7
self._lufs_accum = 0
+49 -34
View File
@@ -22,16 +22,16 @@ class LCDDisplay(QFrame):
QFrame {
background-color: #0a1a0a;
border: 2px solid #1a2a1a;
border-radius: 4px;
border-radius: 0px;
}
""")
layout = QVBoxLayout(self)
layout.setContentsMargins(6, 6, 6, 6)
layout.setContentsMargins(6, 4, 6, 4)
layout.setSpacing(2)
self.track_btn = QPushButton("NO TRACK LOADED")
self.track_btn.setFont(QFont("Courier New", 10, QFont.Bold))
self.track_btn.setFont(QFont("Courier New", 9, QFont.Bold))
self.track_btn.setStyleSheet("""
QPushButton {
color: #00ff41; background: transparent; border: none;
@@ -46,12 +46,12 @@ class LCDDisplay(QFrame):
time_row.setSpacing(4)
self.elapsed_label = QLabel("00:00")
self.elapsed_label.setFont(QFont("Courier New", 22, QFont.Bold))
self.elapsed_label.setFont(QFont("Courier New", 20, QFont.Bold))
self.elapsed_label.setStyleSheet("color: #00ff41; background: transparent;")
self.elapsed_label.setAlignment(Qt.AlignLeft | Qt.AlignVCenter)
self.remaining_label = QLabel("-00:00")
self.remaining_label.setFont(QFont("Courier New", 13, QFont.Bold))
self.remaining_label.setFont(QFont("Courier New", 12, QFont.Bold))
self.remaining_label.setStyleSheet("color: #00cc33; background: transparent;")
self.remaining_label.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
@@ -62,11 +62,11 @@ class LCDDisplay(QFrame):
status_row = QHBoxLayout()
self.status_label = QLabel("STOPPED")
self.status_label.setFont(QFont("Courier New", 9, QFont.Bold))
self.status_label.setFont(QFont("Courier New", 8, QFont.Bold))
self.status_label.setStyleSheet("color: #008822; background: transparent;")
self.queue_label = QLabel("QUEUE: EMPTY")
self.queue_label.setFont(QFont("Courier New", 8))
self.queue_label.setFont(QFont("Courier New", 7))
self.queue_label.setStyleSheet("color: #008822; background: transparent;")
self.queue_label.setAlignment(Qt.AlignRight)
@@ -113,24 +113,24 @@ class LCDDisplay(QFrame):
self.remaining_label.setStyleSheet("color: #00cc33; background: transparent;")
def make_icon_button(icon, color="#3a3a3a", icon_color="white",
width=52, height=48):
def make_icon_button(icon, color="#2a2a2a", icon_color="white",
width=40, height=40):
btn = QPushButton()
btn.setFixedSize(width, height)
btn.setIconSize(QSize(22, 22))
btn.setIconSize(QSize(18, 18))
btn.setIcon(icon)
btn.setStyleSheet(f"""
QPushButton {{
background-color: {color};
border: 1px solid #555;
border-radius: 4px;
border: 2px solid #444;
border-radius: 0px;
}}
QPushButton:hover {{
background-color: #555;
}}
QPushButton:pressed {{
background-color: #222;
border: 1px solid #888;
border: 2px solid #888;
}}
""")
return btn
@@ -170,21 +170,21 @@ class DeckWidget(QWidget):
QWidget {{
background-color: #1c1c1c;
border: 2px solid {self.accent_color};
border-radius: 6px;
border-radius: 0px;
}}
""")
root = QVBoxLayout(self)
root.setContentsMargins(6, 6, 6, 6)
root.setSpacing(4)
root.setContentsMargins(4, 4, 4, 4)
root.setSpacing(3)
self.header = QLabel(self.deck_label)
self.header.setFont(QFont("Courier New", 16, QFont.Bold))
self.header.setFont(QFont("Courier New", 13, QFont.Bold))
self.header.setStyleSheet(f"""
color: {self.accent_color};
background: transparent;
border: none;
padding: 2px;
padding: 1px;
""")
self.header.setAlignment(Qt.AlignCenter)
root.addWidget(self.header)
@@ -193,14 +193,14 @@ class DeckWidget(QWidget):
root.addWidget(self.lcd)
transport = QHBoxLayout()
transport.setSpacing(4)
transport.setSpacing(3)
self.btn_to_start = make_icon_button(icon_skip_start(), width=44, height=38)
self.btn_back_15 = make_icon_button(icon_skip_back(), icon_color="#aaaaaa", width=44, height=38)
self.btn_play = make_icon_button(icon_play(), "#1a6b3a", "#00ff41", 56, 38)
self.btn_fwd_15 = make_icon_button(icon_skip_forward(), icon_color="#aaaaaa", width=44, height=38)
self.btn_to_end = make_icon_button(icon_skip_end(), width=44, height=38)
self.btn_stop = make_icon_button(icon_stop(), "#8a1a1a", "#ff4444", width=44, height=38)
self.btn_to_start = make_icon_button(icon_skip_start())
self.btn_back_15 = make_icon_button(icon_skip_back(), icon_color="#aaaaaa")
self.btn_play = make_icon_button(icon_play(), "#1a5a2a", "#00ff41", 48, 40)
self.btn_fwd_15 = make_icon_button(icon_skip_forward(), icon_color="#aaaaaa")
self.btn_to_end = make_icon_button(icon_skip_end())
self.btn_stop = make_icon_button(icon_stop(), "#6a1a1a", "#ff4444")
transport.addWidget(self.btn_to_start)
transport.addWidget(self.btn_back_15)
@@ -222,19 +222,34 @@ class DeckWidget(QWidget):
self.current_theme = theme
border_color = theme['border']
bg_color = theme['bg2']
deck_accent = theme.get('deck_border', theme['accent'])
self.accent_color = deck_accent
self.setStyleSheet(f"""
QWidget {{
background-color: {bg_color};
border: 2px solid {border_color};
border-radius: 6px;
border: 2px solid {deck_accent};
border-radius: 0px;
}}
""")
self.lcd.setStyleSheet(f"""
QFrame {{
background-color: {theme['lcd_bg']};
border: 2px solid {theme['lcd_border']};
border-radius: 0px;
}}
""")
self.lcd.setStyleSheet(f"""
QFrame {{
background-color: {theme['lcd_bg']};
border: 2px solid {theme['lcd_border']};
border-radius: 0px;
}}
""")
self.lcd.setStyleSheet(f"""
QFrame {{
background-color: {theme['bg']};
border: 2px solid {border_color};
border-radius: 4px;
border-radius: 0px;
}}
""")
@@ -299,7 +314,7 @@ class DeckWidget(QWidget):
QPushButton {
background-color: #1a6b3a;
border: 1px solid #555;
border-radius: 4px;
border-radius: 0px;
}
QPushButton:hover { background-color: #2a7b4a; }
""")
@@ -324,7 +339,7 @@ class DeckWidget(QWidget):
QPushButton {
background-color: #1a6b3a;
border: 1px solid #555;
border-radius: 4px;
border-radius: 0px;
}
QPushButton:hover { background-color: #2a7b4a; }
""")
@@ -341,7 +356,7 @@ class DeckWidget(QWidget):
QPushButton {
background-color: #00aa33;
border: 1px solid #00ff41;
border-radius: 4px;
border-radius: 0px;
}
QPushButton:hover { background-color: #00cc44; }
""")
@@ -368,7 +383,7 @@ class DeckWidget(QWidget):
QPushButton {
background-color: #1a6b3a;
border: 1px solid #555;
border-radius: 4px;
border-radius: 0px;
}
QPushButton:hover { background-color: #2a7b4a; }
""")
@@ -431,7 +446,7 @@ class DeckWidget(QWidget):
QPushButton {
background-color: #1a6b3a;
border: 1px solid #555;
border-radius: 4px;
border-radius: 0px;
}
QPushButton:hover { background-color: #2a7b4a; }
""")
BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 134 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 93 KiB