diff options
author | Jason A. Donenfeld <Jason@zx2c4.com> | 2008-06-10 07:47:39 -0400 |
---|---|---|
committer | Jason A. Donenfeld <Jason@zx2c4.com> | 2008-06-10 07:47:39 -0400 |
commit | d4061e3d43794036295f4b2846e11b5fee1ed062 (patch) | |
tree | 467a32db985cf79cdd796e08d290e637bfe4400c | |
parent | Improved column resizing. (diff) | |
download | zmusicplayer-d4061e3d43794036295f4b2846e11b5fee1ed062.tar.xz zmusicplayer-d4061e3d43794036295f4b2846e11b5fee1ed062.zip |
Further refined column widths.
-rwxr-xr-x | playerwindow.cpp | 35 |
1 files changed, 19 insertions, 16 deletions
diff --git a/playerwindow.cpp b/playerwindow.cpp index b20e52e..cdc9548 100755 --- a/playerwindow.cpp +++ b/playerwindow.cpp @@ -315,36 +315,39 @@ void PlayerWindow::rowChange() double suggestedWidth1 = m_treeView->columnWidth(1); double suggestedWidth2 = m_treeView->columnWidth(2); double suggestedWidth3 = m_treeView->columnWidth(3); - double suggestedWidthTotal = 25 + suggestedWidth1 + suggestedWidth2 + suggestedWidth3; m_treeView->header()->setStretchLastSection(true); + double suggestedWidthTotal = 25 + suggestedWidth1 + suggestedWidth2 + suggestedWidth3; + m_suggestedRatio1 = (double)suggestedWidth1 / (double)suggestedWidthTotal; + m_suggestedRatio2 = (double)suggestedWidth2 / (double)suggestedWidthTotal; + m_suggestedRatio3 = (double)suggestedWidth3 / (double)suggestedWidthTotal; bool b; + double diff; do { - b = false; - m_suggestedRatio1 = (double)suggestedWidth1 / (double)suggestedWidthTotal; - m_suggestedRatio2 = (double)suggestedWidth2 / (double)suggestedWidthTotal; - m_suggestedRatio3 = (double)suggestedWidth3 / (double)suggestedWidthTotal; - + b = false; if(m_suggestedRatio1 > .42) { - suggestedWidth1-=2; - suggestedWidth2++; - suggestedWidth3++; + diff = m_suggestedRatio1 - .42; + m_suggestedRatio1 = .42; + m_suggestedRatio2 += diff/2; + m_suggestedRatio3 += diff/2; b = true; } if(m_suggestedRatio2 > .42) { - suggestedWidth2-=2; - suggestedWidth1++; - suggestedWidth3++; + diff = m_suggestedRatio2 - .42; + m_suggestedRatio2 = .42; + m_suggestedRatio1 += diff/2; + m_suggestedRatio3 += diff/2; b = true; } if(m_suggestedRatio3 > .42) { - suggestedWidth3-=2; - suggestedWidth2++; - suggestedWidth1++; + diff = m_suggestedRatio3 - .42; + m_suggestedRatio3 = .42; + m_suggestedRatio2 += diff/2; + m_suggestedRatio1 += diff/2; b = true; } } while(b); @@ -354,7 +357,7 @@ void PlayerWindow::rowChange() void PlayerWindow::fixColumnSizes() { m_treeView->setUpdatesEnabled(false); - int width = m_treeView->width() - 40; //Why not 25? + int width = m_treeView->width() - 40; //Why not 0? m_treeView->setColumnWidth(1, m_suggestedRatio1 * width); m_treeView->setColumnWidth(2, m_suggestedRatio2 * width); m_treeView->setColumnWidth(3, m_suggestedRatio3 * width); |