From 4d3716c7412b5a4bc8e1509703d956460268fabf Mon Sep 17 00:00:00 2001 From: mjbudd77 Date: Thu, 30 Dec 2021 12:29:15 -0500 Subject: [PATCH] Minor changes to Qt TAS piano roll grid and selection grid coloring logic. --- src/drivers/Qt/TasEditor/TasEditorWindow.cpp | 81 +++++++++++++++++--- 1 file changed, 70 insertions(+), 11 deletions(-) diff --git a/src/drivers/Qt/TasEditor/TasEditorWindow.cpp b/src/drivers/Qt/TasEditor/TasEditorWindow.cpp index 38634856..7e51b046 100644 --- a/src/drivers/Qt/TasEditor/TasEditorWindow.cpp +++ b/src/drivers/Qt/TasEditor/TasEditorWindow.cpp @@ -6003,6 +6003,8 @@ void QPianoRoll::paintEvent(QPaintEvent *event) static const char *buttonNames[] = { "A", "B", "S", "T", "U", "D", "L", "R", NULL }; char stmp[32]; char rowIsSel=0; + char rowSelArray[256]; + int numSelRows=0; font.setBold(true); painter.setFont(font); @@ -6013,6 +6015,8 @@ void QPianoRoll::paintEvent(QPaintEvent *event) if ( nrow < 1 ) nrow = 1; + memset( rowSelArray, 0, nrow+1 ); + viewLines = nrow; maxLineOffset = currMovieData.records.size() - nrow + 2; @@ -6119,7 +6123,7 @@ void QPianoRoll::paintEvent(QPaintEvent *event) } int frame_lag = greenzone->lagLog.getLagInfoAtFrame(lineNum); - rowIsSel = selection->isRowSelected( lineNum ); + rowSelArray[row] = rowIsSel = selection->isRowSelected( lineNum ); for (int i=0; i 0 ) + { + int inv; + QColor invGrid; + + inv = gridColor.black(); + + if ( inv < 128 ) + { + inv = 255 - inv; + } + + invGrid.setRed( inv ); + invGrid.setGreen( inv ); + invGrid.setBlue( inv ); + + painter.setPen( QPen(invGrid,2) ); + + y = pxLineSpacing; + + for (row=0; row