Workaround for a bug in Qt's TableView that causes column widths to not be updated immediately when ResizeToContents is used. We have to force the update via event filter.
This commit is contained in:
parent
95797b11b5
commit
137535927a
@ -30,7 +30,7 @@
|
||||
#define VER_LAMEXP_MINOR_LO 3
|
||||
#define VER_LAMEXP_TYPE Alpha
|
||||
#define VER_LAMEXP_PATCH 14
|
||||
#define VER_LAMEXP_BUILD 657
|
||||
#define VER_LAMEXP_BUILD 659
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// Tools versions
|
||||
|
@ -112,6 +112,7 @@ MainWindow::MainWindow(FileListModel *fileListModel, AudioFileModel *metaInfo, S
|
||||
sourceFileView->verticalHeader()->setResizeMode(QHeaderView::ResizeToContents);
|
||||
sourceFileView->horizontalHeader()->setResizeMode(QHeaderView::ResizeToContents);
|
||||
sourceFileView->setContextMenuPolicy(Qt::CustomContextMenu);
|
||||
sourceFileView->viewport()->installEventFilter(this);
|
||||
m_dropNoteLabel = new QLabel(sourceFileView);
|
||||
m_dropNoteLabel->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
|
||||
SET_FONT_BOLD(m_dropNoteLabel, true);
|
||||
@ -861,6 +862,11 @@ bool MainWindow::eventFilter(QObject *obj, QEvent *event)
|
||||
break;
|
||||
}
|
||||
}
|
||||
else if(obj == sourceFileView->viewport())
|
||||
{
|
||||
sourceFileView ->resizeColumnToContents(0);
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -1691,7 +1697,7 @@ void MainWindow::addFilesButtonClicked(void)
|
||||
|
||||
TEMP_HIDE_DROPBOX
|
||||
(
|
||||
if(lamexp_themes_enabled())
|
||||
if(lamexp_themes_enabled() || ((QSysInfo::windowsVersion() & QSysInfo::WV_NT_based) < QSysInfo::WV_XP))
|
||||
{
|
||||
QStringList fileTypeFilters = DecoderRegistry::getSupportedTypes();
|
||||
QStringList selectedFiles = QFileDialog::getOpenFileNames(this, tr("Add file(s)"), QString(), fileTypeFilters.join(";;"));
|
||||
@ -1727,7 +1733,7 @@ void MainWindow::openFolderActionActivated(void)
|
||||
{
|
||||
TEMP_HIDE_DROPBOX
|
||||
(
|
||||
if(lamexp_themes_enabled())
|
||||
if(lamexp_themes_enabled() || ((QSysInfo::windowsVersion() & QSysInfo::WV_NT_based) < QSysInfo::WV_XP))
|
||||
{
|
||||
selectedFolder = QFileDialog::getExistingDirectory(this, tr("Add Folder"), QDesktopServices::storageLocation(QDesktopServices::MusicLocation));
|
||||
}
|
||||
|
@ -131,6 +131,7 @@ ProcessingDialog::ProcessingDialog(FileListModel *fileListModel, AudioFileModel
|
||||
view_log->verticalHeader()->hide();
|
||||
view_log->horizontalHeader()->setResizeMode(QHeaderView::ResizeToContents);
|
||||
view_log->horizontalHeader()->setResizeMode(0, QHeaderView::Stretch);
|
||||
view_log->viewport()->installEventFilter(this);
|
||||
connect(m_progressModel, SIGNAL(rowsInserted(QModelIndex,int,int)), this, SLOT(progressModelChanged()));
|
||||
connect(m_progressModel, SIGNAL(modelReset()), this, SLOT(progressModelChanged()));
|
||||
connect(view_log, SIGNAL(activated(QModelIndex)), this, SLOT(logViewDoubleClicked(QModelIndex)));
|
||||
@ -263,6 +264,10 @@ bool ProcessingDialog::eventFilter(QObject *obj, QEvent *event)
|
||||
QDesktopServices::openUrl(url);
|
||||
}
|
||||
}
|
||||
else if(obj == view_log->viewport())
|
||||
{
|
||||
view_log->resizeColumnToContents(1);
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
@ -782,7 +782,7 @@ bool lamexp_init_qt(int argc, char* argv[])
|
||||
lamexp_check_compatibility_mode(NULL, executableName);
|
||||
break;
|
||||
default:
|
||||
qFatal("%s", QApplication::tr("Executable '%1' requires Windows 2000 or later.").arg(QString::fromLatin1(executableName)).toLatin1().constData());
|
||||
qWarning("%s", QApplication::tr("Executable '%1' requires Windows 2000 or later.").arg(QString::fromLatin1(executableName)).toLatin1().constData());
|
||||
break;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user