@@ -43,70 +43,48 @@ def __init__(self, summary: RunSummary, parent: Optional[QWidget] = None) -> Non
4343 def _setup_ui (self ) -> None :
4444 self .setWindowTitle ("Run Summary" )
4545 self .setModal (True )
46- self .resize (520 , 480 )
46+ self .resize (400 , 320 )
4747
4848 layout = QVBoxLayout (self )
49- layout .setContentsMargins (20 , 20 , 20 , 16 )
50- layout .setSpacing (10 )
49+ layout .setContentsMargins (16 , 12 , 16 , 12 )
50+ layout .setSpacing (8 )
5151
5252 title = QLabel (SuccessCopy .RUN_SUMMARY_TITLE )
53- title .setStyleSheet ("font-size: 18px ; font-weight: bold;" )
53+ title .setStyleSheet ("font-size: 14px ; font-weight: bold;" )
5454 layout .addWidget (title )
5555
56- summary_lines = [
57- f"Run ID: { self ._summary .run_id } " ,
58- f"Playlist: { self ._summary .playlist } " ,
59- f"Input XML: { self ._summary .input_xml_path or 'N/A' } " ,
60- f"Tracks: { self ._summary .total_tracks } " ,
61- f"Matched: { self ._summary .matched } " ,
62- f"Unmatched: { self ._summary .unmatched } " ,
63- f"Low confidence: { self ._summary .low_confidence } " ,
64- f"Duration: { self ._summary .duration_sec :.2f} s" ,
65- f"Errors: { self ._summary .error_count } " ,
66- f"Warnings: { self ._summary .warning_count } " ,
67- ]
68- for line in summary_lines :
69- label = QLabel (line )
70- label .setAlignment (Qt .AlignLeft )
71- layout .addWidget (label )
56+ # Single line: playlist + key stats
57+ stats = (
58+ f"{ self ._summary .total_tracks } tracks, { self ._summary .matched } matched"
59+ + (f", { self ._summary .unmatched } unmatched" if self ._summary .unmatched else "" )
60+ + (f", { self ._summary .low_confidence } low confidence" if self ._summary .low_confidence else "" )
61+ + f" — { self ._summary .duration_sec :.1f} s"
62+ )
63+ if self ._summary .error_count or self ._summary .warning_count :
64+ stats += f" — { self ._summary .error_count } errors, { self ._summary .warning_count } warnings"
65+ summary_label = QLabel (stats )
66+ summary_label .setWordWrap (True )
67+ summary_label .setStyleSheet ("font-size: 12px; color: #ccc;" )
68+ layout .addWidget (summary_label )
69+
70+ if self ._summary .playlist :
71+ pl_label = QLabel (f"Playlist: { self ._summary .playlist } " )
72+ pl_label .setStyleSheet ("font-size: 11px; color: #888;" )
73+ layout .addWidget (pl_label )
7274
7375 if self ._summary .output_paths :
74- outputs_label = QLabel ("Outputs" )
75- outputs_label .setStyleSheet ("font-weight: bold;" )
76- layout .addWidget (outputs_label )
77-
7876 outputs_list = QListWidget ()
7977 outputs_list .setSelectionMode (QListWidget .NoSelection )
78+ outputs_list .setMaximumHeight (72 )
8079 for path in self ._summary .output_paths :
8180 QListWidgetItem (path , outputs_list )
8281 layout .addWidget (outputs_list )
8382
84- # Step 8: Clear success criteria and what to do next (Design 8.74-8.75)
85- what_next = QLabel (SuccessCopy .WHAT_TO_DO_NEXT )
86- what_next .setStyleSheet ("font-weight: bold; font-size: 13px; margin-top: 8px;" )
87- layout .addWidget (what_next )
88-
89- step1 = QLabel (SuccessCopy .STEP_REVIEW )
90- step1 .setWordWrap (True )
91- step1 .setStyleSheet ("color: #ccc; font-size: 12px; margin-left: 8px;" )
92- layout .addWidget (step1 )
93-
94- step2 = QLabel (SuccessCopy .STEP_EXPORT )
95- step2 .setWordWrap (True )
96- step2 .setStyleSheet ("color: #ccc; font-size: 12px; margin-left: 8px;" )
97- layout .addWidget (step2 )
98-
99- step3 = QLabel (SuccessCopy .STEP_REKORDBOX )
100- step3 .setWordWrap (True )
101- step3 .setStyleSheet ("color: #ccc; font-size: 12px; margin-left: 8px;" )
102- layout .addWidget (step3 )
103-
104- step4 = QLabel (SuccessCopy .STEP_UNDO_GUIDANCE )
105- step4 .setWordWrap (True )
106- step4 .setStyleSheet (
107- "color: #888; font-size: 11px; margin-left: 8px; font-style: italic;"
108- )
109- layout .addWidget (step4 )
83+ # One short line for next steps (Design 8.74-8.75)
84+ next_line = QLabel (SuccessCopy .STEP_NEXT_SHORT )
85+ next_line .setWordWrap (True )
86+ next_line .setStyleSheet ("color: #888; font-size: 11px; margin-top: 4px;" )
87+ layout .addWidget (next_line )
11088
11189 layout .addStretch (1 )
11290
0 commit comments