diff --git a/LameXP_VS2013.vcxproj b/LameXP_VS2013.vcxproj
index ddb72e7c..fb06f4fd 100644
--- a/LameXP_VS2013.vcxproj
+++ b/LameXP_VS2013.vcxproj
@@ -101,9 +101,13 @@
lamexp_entry_point
- Copy VLD DLL%27s
- copy /Y "$(SolutionDir)\..\Prerequisites\VisualLeakDetector\bin\Win32\*.dll" "$(TargetDir)"
-copy /Y "$(SolutionDir)\..\Prerequisites\VisualLeakDetector\bin\Win32\*.manifest" "$(TargetDir)"
+ Copy DLL's
+ mkdir "$(OutDir)\imageformats" 2> NUL
+copy /Y "$(SolutionDir)\..\Prerequisites\Qt4\MSVC-2013\Debug\bin\Qt*.dll" "$(OutDir)"
+copy /Y "$(SolutionDir)\..\Prerequisites\Qt4\MSVC-2013\Debug\plugins\imageformats\*.dll" "$(OutDir)\imageformats"
+copy /Y "$(SolutionDir)\..\Prerequisites\VisualLeakDetector\bin\Win32\*.dll" "$(OutDir)"
+copy /Y "$(SolutionDir)\..\Prerequisites\VisualLeakDetector\bin\Win32\*.manifest" "$(OutDir)"
+
_CONFIG_NAME=$(ConfigurationName);%(PreprocessorDefinitions)
@@ -175,10 +179,11 @@ copy /Y "$(SolutionDir)\..\Prerequisites\VisualLeakDetector\bin\Win32\*.manifest
false
-
-
-
-
+ Copy DLL's
+ mkdir "$(OutDir)\imageformats" 2> NUL
+copy /Y "$(SolutionDir)\..\Prerequisites\Qt4\MSVC-2013\Shared\bin\Qt*.dll" "$(OutDir)"
+copy /Y "$(SolutionDir)\..\Prerequisites\Qt4\MSVC-2013\Shared\plugins\imageformats\*.dll" "$(OutDir)\imageformats"
+
_CONFIG_NAME=$(ConfigurationName);%(PreprocessorDefinitions)
diff --git a/src/Config.h b/src/Config.h
index 747380c5..82e8e353 100644
--- a/src/Config.h
+++ b/src/Config.h
@@ -35,7 +35,7 @@
#define VER_LAMEXP_MINOR_LO 2
#define VER_LAMEXP_TYPE Alpha
#define VER_LAMEXP_PATCH 5
-#define VER_LAMEXP_BUILD 1753
+#define VER_LAMEXP_BUILD 1754
#define VER_LAMEXP_CONFG 1700
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/Dialog_MainWindow.cpp b/src/Dialog_MainWindow.cpp
index 7c4b781f..309d9102 100644
--- a/src/Dialog_MainWindow.cpp
+++ b/src/Dialog_MainWindow.cpp
@@ -1069,6 +1069,7 @@ void MainWindow::moveSelectedFiles(const bool &up)
const QModelIndex item = m_fileListModel->index(firstIndex + i, 0);
selection->select(QItemSelection(item, item), QItemSelectionModel::Select | QItemSelectionModel::Rows);
}
+ ui->sourceFileView->scrollTo(m_fileListModel->index((up ? firstIndex : firstIndex + selectionCount - 1), 0), QAbstractItemView::PositionAtCenter);
return;
}
}
@@ -2443,23 +2444,28 @@ void MainWindow::openFolderActionActivated(void)
*/
void MainWindow::removeFileButtonClicked(void)
{
- const QModelIndex current = ui->sourceFileView->currentIndex();
- if(current.isValid())
+ const QItemSelectionModel *const selection = ui->sourceFileView->selectionModel();
+ if(selection && selection->hasSelection())
{
- const QItemSelectionModel *const selection = ui->sourceFileView->selectionModel();
- if(selection && selection->hasSelection())
+ int firstRow = -1;
+ const QModelIndexList selectedRows = INVERT_LIST(selection->selectedRows());
+ if(!selectedRows.isEmpty())
{
- const QModelIndexList selectedRows = INVERT_LIST(selection->selectedRows());
FileListBlockHelper fileListBlocker(m_fileListModel);
+ firstRow = selectedRows.last().row();
for(QModelIndexList::ConstIterator iter = selectedRows.constBegin(); iter != selectedRows.constEnd(); iter++)
{
- m_fileListModel->removeFile(*iter);
+ if(!m_fileListModel->removeFile(*iter))
+ {
+ break;
+ }
}
}
if(m_fileListModel->rowCount() > 0)
{
- ui->sourceFileView->selectRow((current.row() < m_fileListModel->rowCount()) ? current.row() : (m_fileListModel->rowCount() - 1));
- ui->sourceFileView->scrollTo(ui->sourceFileView->currentIndex());
+ const QModelIndex position = m_fileListModel->index(((firstRow >= 0) && (firstRow < m_fileListModel->rowCount())) ? firstRow : (m_fileListModel->rowCount() - 1), 0);
+ ui->sourceFileView->selectRow(position.row());
+ ui->sourceFileView->scrollTo(position, QAbstractItemView::PositionAtCenter);
}
}
else
@@ -2473,7 +2479,14 @@ void MainWindow::removeFileButtonClicked(void)
*/
void MainWindow::clearFilesButtonClicked(void)
{
- m_fileListModel->clearFiles();
+ if(m_fileListModel->rowCount() > 0)
+ {
+ m_fileListModel->clearFiles();
+ }
+ else
+ {
+ MUtils::Sound::beep(MUtils::Sound::BEEP_WRN);
+ }
}
/*
@@ -2536,6 +2549,10 @@ void MainWindow::showDetailsButtonClicked(void)
break; /*close dilalog now*/
}
}
+ else
+ {
+ MUtils::Sound::beep(MUtils::Sound::BEEP_WRN);
+ }
QApplication::processEvents(QEventLoop::ExcludeUserInputEvents);
sourceFilesScrollbarMoved(0);