summaryrefslogtreecommitdiffstats
path: root/shemov.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'shemov.cpp')
-rw-r--r--shemov.cpp42
1 files changed, 16 insertions, 26 deletions
diff --git a/shemov.cpp b/shemov.cpp
index a2fd195..a99025f 100644
--- a/shemov.cpp
+++ b/shemov.cpp
@@ -6,42 +6,24 @@
*/
#include <QtWidgets/QApplication>
-#include <QtWidgets/QTabWidget>
#include <QtWidgets/QVBoxLayout>
-#include <QtWidgets/QAction>
#include <QtWidgets/QMenuBar>
-#include <QtWidgets/QMenu>
#include <QtWidgets/QStatusBar>
#include <QtWidgets/QLabel>
-#include <QItemSelection>
#include <QSignalMapper>
#include <QSettings>
#include <QtWidgets/QMessageBox>
-#include <QSqlDatabase>
-#include <QImage>
-#include <QPainter>
-#include <QFont>
-#include <QFontMetrics>
-#include <QLocale>
#include <QCloseEvent>
-#include <QtWidgets/QActionGroup>
-#include <QtWidgets/QFileSystemModel>
#include <QtWidgets/QToolBar>
-#include <QIcon>
-#include <QtWidgets/QHeaderView>
-#include <QDir>
-#include <QFileInfo>
#include <QtWidgets/QSplashScreen>
#include <sys/vfs.h>
#include "shemov.h"
#include "filesystemwidget.h"
-#include "filestreewidget.h"
#include "fileview.h"
#include "configurationdialog.h"
#include "statisticsdialog.h"
-#include "filesystemfileproxy.h"
#include "archivetreeview.h"
#include "smglobals.h"
#include "seriestreewidget.h"
@@ -53,13 +35,10 @@
#include "mappingtableeditor.h"
#include "mappingtablemodel.h"
#include "dbanalyzer.h"
-#include "mappingtreewidget.h"
#include "newpicsdialog.h"
#include "pictureswidget.h"
-#include "pictureviewer2.h"
-#include "helper.h"
#include "smdirmodel.h"
-#include "smtreeview.h"
+#include "framecache.h"
SheMov::SheMov(QWidget *parent, Qt::WindowFlags flags) : QMainWindow(parent, flags), mOpenWithGroupFS(0), mOpenWithGroupAV(0) {
//application icon
@@ -164,9 +143,9 @@ void SheMov::closeEvent(QCloseEvent *event){
mATree->filesWidget()->filesTree()->writeSettings();
mPicWidget->picViewer2()->writeSettings();
mPicWidget->writeSettings();
- FilesTreeModel *filesModel = static_cast<FilesTreeModel*>(SmGlobals::instance()->model("FilesModel"));
- filesModel->writeCache();
writeSettings();
+ SmGlobals *globals = SmGlobals::instance();
+ delete globals;
event->accept();
}
@@ -407,13 +386,17 @@ void SheMov::createActions(){
//connnect
mQuitA = new QAction(tr("Quit"), this);
mQuitA->setShortcut(tr("CTRL+q"));
+ mRebuildFrameCacheA = new QAction(tr("Rebuild frame cache") ,this);
+
+ // general actions
+ connect(mQuitA, SIGNAL(triggered()), qApp, SLOT(closeAllWindows()));
+ connect(mRebuildFrameCacheA, SIGNAL(triggered()), this, SLOT(rebuildFrameCache()));
//Edit menu (FS)
mCdupA = new QAction(QIcon(":/up_dick.png"), tr("Go up"), this);
connect(mCdupA, SIGNAL(triggered()), mFSWidget, SLOT(parentDir()));
mBackDirA = new QAction(QIcon(":/back_dick.png"), tr("Go back"), this);
connect(mBackDirA, SIGNAL(triggered()), mFSWidget, SLOT(goBack()));
- connect(mQuitA, SIGNAL(triggered()), qApp, SLOT(closeAllWindows()));
mMarkFilesA = new QAction(tr("Select files..."), this);
mMarkFilesA->setShortcut(tr("CTRL++"));
connect(mMarkFilesA, SIGNAL(triggered()), mFSWidget->fileView(), SLOT(markFiles()));
@@ -766,7 +749,7 @@ void SheMov::createMenus(){
fileMenu->addSeparator();
fileMenu->addAction(mConsistencyA);
fileMenu->addAction(mAnalyzerA);
- //fileMenu->addAction(mMappingEditorA);
+ fileMenu->addAction(mRebuildFrameCacheA);
fileMenu->addSeparator();
fileMenu->addAction(mQuitA);
menuBar()->addMenu(fileMenu);
@@ -1119,6 +1102,13 @@ void SheMov::createPalette(){
}
}
+void SheMov::rebuildFrameCache(){
+ int retval = QMessageBox::question(this, tr("Question"), tr("Rebuild frame cache from directory?"), QMessageBox::Yes | QMessageBox::No);
+ if(retval == QMessageBox::Yes){
+ SmGlobals::instance()->frameCache()->rebuild();
+ }
+}
+
void SheMov::checkConsistency(){
ConsistencyCheck c;
c.exec();