summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--picturelistview.h1
-rw-r--r--pictureswidget.cpp90
-rw-r--r--pictureswidget.h1
-rw-r--r--pictureviewer2.cpp85
-rw-r--r--pictureviewer2.h9
-rw-r--r--shemov.cpp128
-rw-r--r--shemov.h24
7 files changed, 62 insertions, 276 deletions
diff --git a/picturelistview.h b/picturelistview.h
index 9e86372..072a63a 100644
--- a/picturelistview.h
+++ b/picturelistview.h
@@ -46,7 +46,6 @@ class PictureListView : public SmTreeView {
void newMappings(QString);
void numSelected(int);
void selectedSize(qint64);
- void editPicsMappings();
private:
HoverWindow *mHoverWin;
diff --git a/pictureswidget.cpp b/pictureswidget.cpp
index 7cbf288..49a86ec 100644
--- a/pictureswidget.cpp
+++ b/pictureswidget.cpp
@@ -9,54 +9,82 @@
#include <QHBoxLayout>
#include <QSqlQuery>
#include <QSortFilterProxyModel>
-#include <QLocale>
-#include <QHideEvent>
-#include <QHoverEvent>
-#include <QEvent>
-#include <QHeaderView>
-#include <QSettings>
#include <QMessageBox>
-#include <QMenu>
-#include <QFile>
#include <QSettings>
-#include <QActionGroup>
-#include <QHash>
-#include <QApplication>
+#include <QAction>
+#include <QToolBar>
#include "pictureswidget.h"
#include "picturelistview.h"
-#include "picfilesmodel.h"
#include "mappingtreewidget.h"
-#include "smtreeitem.h"
-#include "helper.h"
-#include "hoverwindow.h"
-#include "mappingtreemodel.h"
#include "delegates.h"
#include "smglobals.h"
+#include "helper.h"
PicturesWidget::PicturesWidget(QWidget *parent) : QWidget(parent), mWindowTitleBase(tr("Picture archive")), mPicViewerA(0) {
- //setup gui
- QSplitter *splitter = new QSplitter;
mMappingTree = new MappingTreeWidget;
mPictureListView = new PictureListView;
mPictureListView->setItemDelegateForColumn(PicFilesModel::Size, new SizeDelegate(this));
- connect(mMappingTree, SIGNAL(mappingChanged(int)), mPictureListView, SLOT(mappingChanged(int)));
- //change window title when mapping selection changes
- connect(mMappingTree, SIGNAL(mappingChanged(int)), this, SLOT(constructWindowTitle()));
- connect(mPictureListView, SIGNAL(editPicsMappings()), this, SLOT(editMappings()));
- connect(mPictureListView, SIGNAL(doubleClicked(QModelIndex)), this, SLOT(showInPicViewer(QModelIndex)));
- connect(this, SIGNAL(editMappingsDone()), mPictureListView, SLOT(refresh()));
- splitter->addWidget(mMappingTree);
- splitter->addWidget(mPictureListView);
- splitter->setStretchFactor(0, 1);
- splitter->setStretchFactor(1, 3);
+ connect(mMappingTree, &MappingTreeWidget::mappingChanged, mPictureListView, &PictureListView::mappingChanged);
+ connect(mMappingTree, &MappingTreeWidget::mappingChanged, this, &PicturesWidget::constructWindowTitle);
+ connect(mPictureListView, &PictureListView::doubleClicked, this, &PicturesWidget::showInPicViewer);
+ connect(this, &PicturesWidget::editMappingsDone, mPictureListView, &PictureListView::refresh);
//misc
mEditDialog = new MappingEditDialog(this);
mPicViewer = SmGlobals::instance()->pictureViewer();
mPictureListView->setPV(mPicViewer);
- //put it all togehter
+ setupWidget();
+}
+
+void PicturesWidget::setupWidget(){
+ QToolBar *toolBar = new QToolBar;
+ QAction *showInPicViewerA = new QAction(QIcon(":/snapshot.png"), tr("Show"), this);
+ connect(showInPicViewerA, &QAction::triggered, [=] {
+ QModelIndexList r = mPictureListView->selectionModel()->selectedRows();
+ if(!r.isEmpty()){
+ showInPicViewer(r.first());
+ }
+ });
+ QWidget *spacer1 = new QWidget;
+ spacer1->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Minimum);
+ toolBar->addWidget(spacer1);
+ toolBar->addAction(showInPicViewerA);
+ mPictureListView->addAction(showInPicViewerA);
+ QAction *deleteA = new QAction(QIcon(":/delete.png"), tr("Delete"), this);
+ connect(deleteA, &QAction::triggered, mPictureListView, &PictureListView::deletePics);
+ toolBar->addAction(deleteA);
+ mPictureListView->addAction(deleteA);
+ toolBar->addSeparator();
+ mPictureListView->addAction(Helper::createSeparator(mPictureListView));
+ QAction *editMappingsA = new QAction(QIcon(":/squirting_nipple.png"), tr("Edit mappings..."), this);
+ connect(editMappingsA, &QAction::triggered, this, &PicturesWidget::editMappings);
+ toolBar->addAction(editMappingsA);
+ mPictureListView->addAction(editMappingsA);
+ QAction *refreshA = new QAction(QIcon(":/refresh.png"), tr("Refresh"), this);
+ connect(refreshA, &QAction::triggered, mPictureListView, &PictureListView::refresh);
+ toolBar->addAction(refreshA);
+ mPictureListView->addAction(refreshA);
+ toolBar->addSeparator();
+ toolBar->addAction(SmGlobals::instance()->globalAction());
+ QWidget *spacer2 = new QWidget;
+ spacer2->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Minimum);
+ toolBar->addWidget(spacer2);
+
+ QWidget *leftWidget = new QWidget;
+ QVBoxLayout *leftWidgetL = new QVBoxLayout;
+ leftWidgetL->setSpacing(2);
+ leftWidgetL->addWidget(toolBar);
+ leftWidgetL->addWidget(mPictureListView);
+ leftWidget->setLayout(leftWidgetL);
+
+ QSplitter *splitter = new QSplitter;
+ splitter->addWidget(mMappingTree);
+ splitter->addWidget(leftWidget);
+ splitter->setStretchFactor(0, 1);
+ splitter->setStretchFactor(1, 3);
+
QHBoxLayout *mainLayout = new QHBoxLayout;
mainLayout->addWidget(splitter);
setLayout(mainLayout);
@@ -136,7 +164,5 @@ void PicturesWidget::showInPicViewer(const QModelIndex &idx){
mPicViewer->setShowMarkItem(false);
mPicViewer->setFile(pData);
mPictureListView->setPVAll();
- if(mPicViewerA){
- mPicViewerA->setChecked(true);
- }
+ mPicViewer->show();
}
diff --git a/pictureswidget.h b/pictureswidget.h
index d1cdd36..a7134df 100644
--- a/pictureswidget.h
+++ b/pictureswidget.h
@@ -44,6 +44,7 @@ class PicturesWidget : public QWidget {
void editMappingsDone();
private:
+ void setupWidget();
MappingTreeWidget *mMappingTree;
PictureListView *mPictureListView;
PictureViewer2 *mPicViewer;
diff --git a/pictureviewer2.cpp b/pictureviewer2.cpp
index 42f77fe..5b0c8b0 100644
--- a/pictureviewer2.cpp
+++ b/pictureviewer2.cpp
@@ -187,7 +187,6 @@ void PictureViewer2::next(){
}else{
++mCurPos;
}
- mMarkA->setChecked(mMarkedFiles.contains(mFiles.at(mCurPos)));
showFile(mFiles.at(mCurPos));
}
@@ -200,7 +199,6 @@ void PictureViewer2::previous(){
}else{
--mCurPos;
}
- mMarkA->setChecked(mMarkedFiles.contains(mFiles.at(mCurPos)));
showFile(mFiles.at(mCurPos));
}
@@ -212,7 +210,6 @@ void PictureViewer2::skip(int amount){
if(next < 0){
next = mFiles.size() + next;
}
- mMarkA->setChecked(mMarkedFiles.contains(mFiles.at(next)));
showFile(mFiles.at(next));
mCurPos = next;
}
@@ -274,49 +271,9 @@ void PictureViewer2::writeSettings(){
mSlideDlg->mappingEditWidget()->saveMappings("ui/pvmappings");
}
-void PictureViewer2::initActions(){
- foreach(QAction *a, actions()){
- //never, ever forget this when casting to int
- //an invalid QVariant casts to a valid int!
- if(!a->data().isValid()){
- continue;
- }
- if(a->data().toInt() == HideAction){
- mHideA = a;
- }
- if(a->data().toInt() == MarkAction){
- mMarkA = a;
- }
- if(a->data().toInt() == DeleteAction){
- mDeleteA = a;
- }
- }
-}
-
-void PictureViewer2::copyCurrent(){
- QString fullPath = mFiles.at(mCurPos).at(PicFilesModel::FullPath).toString();
- QSettings s;
- QString lastDir = s.value("ui/pvlastdir", QDir::homePath()).toString();
- QString destDir = QFileDialog::getExistingDirectory(this, tr("Copy picture"), lastDir);
- if(!destDir.isEmpty()){
- QFileInfo fi(fullPath);
- QString copyTo = QString("%1/%2").arg(destDir).arg(fi.fileName());
- bool success = QFile::copy(fullPath, copyTo);
- if(!success){
- QString msg = QString(tr("File copy %1 -> %2 failed!")).arg(fullPath).arg(copyTo);
- QMessageBox::critical(this, tr("Error"), msg);
- }else{
- s.setValue("ui/pvlastdir", destDir);
- }
- }
-}
-
void PictureViewer2::deleteCurrent(){
int retval = QMessageBox::question(this, tr("Delete file"), tr("Are you sure?"), QMessageBox::No | QMessageBox::Yes);
if(retval == QMessageBox::Yes){
- if(mMarkedFiles.contains(mFiles.at(mCurPos))){
- mMarkedFiles.removeAll(mFiles.at(mCurPos));
- }
QString fullPath = mFiles.at(mCurPos).at(PicFilesModel::FullPath).toString();
QFile f(fullPath);
if(f.remove()){
@@ -328,19 +285,8 @@ void PictureViewer2::deleteCurrent(){
void PictureViewer2::showNewPicsDialog(){
mNewPicsDlg->clearFiles();
QStringList fileList;
- if(mMarkedFiles.isEmpty()){
- if(!mCurrentDir.isEmpty()){
- QDir d(mCurrentDir);
- foreach(QFileInfo fi, d.entryInfoList()){
- fileList << fi.absoluteFilePath();
- }
- }else{
- return;
- }
- }else{
- foreach(QVariantList v, mMarkedFiles){
- fileList << v.at(PicFilesModel::FullPath).toString();
- }
+ foreach(QVariantList v, mMarkedFiles){
+ fileList << v.at(PicFilesModel::FullPath).toString();
}
mNewPicsDlg->addFiles(fileList);
mNewPicsDlg->setFocusToMappings();
@@ -352,18 +298,6 @@ void PictureViewer2::addToNewPics(){
mNewPicsDlg->show();
}
-void PictureViewer2::markCurrent(){
- if(!mMarkedFiles.contains(mCurPicData)){
- mMarkedFiles << mCurPicData;
- mMarkA->setChecked(true);
- next();
- }else{
- mMarkedFiles.removeAll(mCurPicData);
- mMarkA->setChecked(false);
- }
- constructInfoItem(mCurPicData, QSize());
-}
-
void PictureViewer2::clearMarks(){
mMarkedFiles.clear();
constructInfoItem(mCurPicData, QSize());
@@ -446,7 +380,6 @@ void PictureViewer2::keyPressEvent(QKeyEvent *e){
if(e->key() == Qt::Key_Escape){
stopSlide();
- mHideA->toggle();
}
if(e->key() == Qt::Key_Space){
if(mTimer->isActive()){
@@ -455,9 +388,6 @@ void PictureViewer2::keyPressEvent(QKeyEvent *e){
startSlide();
}
}
- if(e->key() == Qt::Key_M){
- markCurrent();
- }
if((e->key() == Qt::Key_N) || (e->key() == Qt::Key_Down) || (e->key() == Qt::Key_Right)){
next();
@@ -478,17 +408,6 @@ void PictureViewer2::keyPressEvent(QKeyEvent *e){
e->accept();
}
-void PictureViewer2::showEvent(QShowEvent *e){
- mHideA->setChecked(true);
- QGraphicsView::showEvent(e);
-}
-
-void PictureViewer2::hideEvent(QHideEvent *e){
- stopSlide();
- mHideA->setChecked(false);
- QGraphicsView::hideEvent(e);
-}
-
void PictureViewer2::resizeEvent(QResizeEvent *event){
QGraphicsView::resizeEvent(event);
showFile(mCurPicData);
diff --git a/pictureviewer2.h b/pictureviewer2.h
index 3c57005..3813d93 100644
--- a/pictureviewer2.h
+++ b/pictureviewer2.h
@@ -58,7 +58,6 @@ class PictureViewer2 : public QGraphicsView {
void setShowMappingItem(bool show) { mShowMappingItem = show; }
void setShowMarkItem(bool show) { mShowMarkItem = show; }
void setCurrentDir(const QString &curDir) { mCurrentDir = curDir; }
- const PicDataList marked() { return mMarkedFiles; }
PicData picData(const QString &fullPath, int fileId = -1);
public slots:
@@ -70,12 +69,9 @@ class PictureViewer2 : public QGraphicsView {
void startSlide();
void readSettings();
void writeSettings();
- void initActions();
- void copyCurrent();
void deleteCurrent();
void showNewPicsDialog();
void addToNewPics();
- void markCurrent();
void clearMarks();
void showSlide();
void doSlide();
@@ -84,8 +80,6 @@ class PictureViewer2 : public QGraphicsView {
virtual void wheelEvent(QWheelEvent *event);
virtual void contextMenuEvent(QContextMenuEvent *e);
virtual void keyPressEvent(QKeyEvent *e);
- virtual void showEvent(QShowEvent *e);
- virtual void hideEvent(QHideEvent *e);
virtual void resizeEvent(QResizeEvent *event);
private slots:
@@ -126,9 +120,6 @@ class PictureViewer2 : public QGraphicsView {
QPointF mInfoPos;
QPointF mMappingPos;
QPointF mBoundingPos;
- QAction *mHideA;
- QAction *mMarkA;
- QAction *mDeleteA;
PicFilesModel *mPicFilesModel;
PicData mCurPicData;
NewPicsDialog *mNewPicsDlg;
diff --git a/shemov.cpp b/shemov.cpp
index 1168fc0..8eb699d 100644
--- a/shemov.cpp
+++ b/shemov.cpp
@@ -211,17 +211,11 @@ void SheMov::configure(){
}
void SheMov::tabChanged(int newTab){
- if(newTab == FileManager || newTab == Movies){
+ if(newTab == FileManager || newTab == Movies || newTab == Pictures){
menuBar()->setVisible(false);
}else{
menuBar()->setVisible(true);
}
- mEditPicMenuA->setVisible(newTab == Pictures);
- mViewPicMenuA->setVisible(newTab == Pictures);
- mPicActionGroup->setEnabled(newTab == Pictures);
- mPVSelectAllA->disconnect();
- mPVShowNPDialogA->setEnabled(newTab == FileManager);
- mPVAddToNPA->setEnabled(newTab == FileManager);
mArchiveBrowserViewMenuA->setVisible(newTab == ArchiveBrowserTab);
mRandomEditMenuA->setVisible(newTab == RandomDisp);
statusbarMessage(QString());
@@ -233,7 +227,6 @@ void SheMov::tabChanged(int newTab){
setWindowTitle(mMovieWidget->wTitle);
break;
case Pictures:
- connect(mPVSelectAllA, &QAction::triggered, mPicWidget->picView(), &PictureListView::setPVAll);
mPicWidget->constructWindowTitle();
setDuration(0x0, false);
break;
@@ -375,102 +368,9 @@ void SheMov::createActions(){
createHeaderMapper(abrowsermodel, mArchiveBrowser->archiveTree(), mArchiveBrowserAG);
mArchiveBrowser->archiveTree()->setHeaderGroup(mArchiveBrowserAG);
- /* very unfortunate naming of variables:
- * picViewer: the actual PictureViewer2 window
- * picView: the picture files TreeView
- * First: the Treeview -> picView */
-
- // Delete... + Edit Mappings...
- mPWDeletePicFromA = new QAction(QIcon(":/huge_balls_pierced.png"), tr("Delete..."), this);
- mPicWidget->picView()->addAction(mPWDeletePicFromA);
- connect(mPWDeletePicFromA, &QAction::triggered, mPicWidget->picView(), &PictureListView::deletePics);
- mPWEditPicMappingsA = new QAction(QIcon(":/squirting_nipple.png"), tr("Edit mappings..."), this);
- mPicWidget->picView()->addAction(mPWEditPicMappingsA);
- connect(mPWEditPicMappingsA, &QAction::triggered, mPicWidget->picView(), &PictureListView::editPicsMappings);
- mPicWidget->picView()->addAction(createSeparator());
-
- // Show slide dialog
PictureViewer2 *picViewer = SmGlobals::instance()->pictureViewer();
- mPVSlideDlgA = new QAction(QIcon(":/hourglass_figure.png"), tr("Show slide dialog..."), this);
- mPVSlideDlgA->setData(PictureViewer2::SlideAction);
- mPicWidget->picView()->addAction(mPVSlideDlgA);
- connect(mPVSlideDlgA, &QAction::triggered, picViewer, &PictureViewer2::showSlide);
- mPicWidget->picView()->addAction(createSeparator());
-
- // Show/Hide Picture Viewer
- mPVToggleA = new QAction(QIcon(":/dick_in_cage.png"), tr("Show/Hide Picture Viewer"), this);
- mPVToggleA->setCheckable(true);
- mPVToggleA->setData(PictureViewer2::HideAction);
- connect(mPVToggleA, &QAction::toggled, picViewer, &PictureViewer2::setVisible);
- mPVToggleA->setChecked(false);
- mPicWidget->picView()->addAction(mPVToggleA);
-
- // Add selected + Replace with selected
- mPVAddA = new QAction(QIcon(":/used_tampon.png"), tr("Add selected"), this);
- connect(mPVAddA, &QAction::triggered, [=] { mPicWidget->picView()->setPVData(false); });
- mPicWidget->picView()->addAction(mPVAddA);
- mPVReplaceA = new QAction(QIcon(":/clean_tampon.png"), tr("Replace with selected"), this);
- connect(mPVReplaceA, &QAction::triggered, [=] { mPicWidget->picView()->setPVData(true); });
- mPicWidget->picView()->addAction(mPVReplaceA);
-
- // Refresh
- mPicWidget->picView()->addAction(createSeparator());
- mPWRefreshA = new QAction(QIcon(":/huge_bra.png"), tr("Refresh"), this);
- mPicWidget->picView()->addAction(mPWRefreshA);
- connect(mPWRefreshA, &QAction::triggered, mPicWidget->picView(), &PictureListView::refresh);
- mPicWidget->setPicViewerAction(mPVToggleA);
-
- /* Now the context menu for the actual Viewer
- * picViewer -> PictureViewer2 */
-
- // Slide Dialog
- picViewer->addAction(mPVSlideDlgA);
- picViewer->addAction(createSeparator());
-
- // Show/Hide Picture Viewer
- picViewer->addAction(mPVToggleA);
-
- // Select all pics
- mPVSelectAllA = new QAction(QIcon(":/blue_syringe.png"), tr("Select all pics"), this);
- picViewer->addAction(mPVSelectAllA);
-
- // PictureViewer mark Action
- picViewer->addAction(createSeparator());
- mPVMarkA = new QAction(QIcon(":/higheels.png"), tr("(Un-)Mark"), this);
- mPVMarkA->setCheckable(true);
- mPVMarkA->setData(PictureViewer2::MarkAction);
- connect(mPVMarkA, &QAction::triggered, picViewer, &PictureViewer2::markCurrent);
- picViewer->addAction(mPVMarkA);
- mPVClearMarksA = new QAction(tr("Clear marks"), this);
- connect(mPVClearMarksA, &QAction::triggered, picViewer, &PictureViewer2::clearMarks);
- picViewer->addAction(mPVClearMarksA);
- mPVDeleteA = new QAction(QIcon(":/delete.png"), tr("Delete..."), this);
- mPVDeleteA->setData(PictureViewer2::DeleteAction);
- connect(mPVDeleteA, &QAction::triggered, picViewer, &PictureViewer2::deleteCurrent);
- picViewer->addAction(mPVDeleteA);
- picViewer->addAction(createSeparator());
-
- // Copy to...
- mPVCopyToA = new QAction(tr("Copy to..."), this);
- connect(mPVCopyToA, &QAction::triggered, picViewer, &PictureViewer2::copyCurrent);
- picViewer->addAction(mPVCopyToA);
-
- // NewPicsDialog actions
- mPVShowNPDialogA = new QAction(tr("Show new pics dialog..."), this);
- mPVShowNPDialogA->setShortcut(tr("CTRL+s"));
- connect(mPVShowNPDialogA, &QAction::triggered, picViewer, &PictureViewer2::showNewPicsDialog);
- picViewer->addAction(mPVShowNPDialogA);
- mPVAddToNPA = new QAction(tr("Set file in new pics dialog"), this);
- mPVAddToNPA->setShortcut(tr("CTRL+a"));
- connect(mPVAddToNPA, &QAction::triggered, picViewer, &PictureViewer2::addToNewPics);
- picViewer->addAction(mPVAddToNPA);
-
- // assign actions to PictureViewer2 members, so they can be toggled from within
- picViewer->initActions();
picViewer->hide();
- /* picView(er) END Actions! */
-
//ArchiveBrowser Actions
mArchiveBrowserMoveToBurnA = new QAction(QIcon(":/shackles.png"), tr("Move to burn..."), this);
connect(mArchiveBrowserMoveToBurnA, &QAction::triggered, mArchiveBrowser, &ArchiveBrowser::moveToBurn);
@@ -484,16 +384,6 @@ void SheMov::createActions(){
connect(mArchiveBrowserExpandAllA, &QAction::triggered, mArchiveBrowser->archiveTree(), &SmTreeView::expandAll);
mArchiveBrowserCollapseAllA = new QAction(tr("Collapse all"), this);
connect(mArchiveBrowserCollapseAllA, &QAction::triggered, mArchiveBrowser->archiveTree(), &SmTreeView::collapseAll);
-
- // db analyzer dialogs
- // analyze actors
-
-
- //don't add actions with checkable(true) unless you know what you're doing!
- mPicActionGroup = new QActionGroup(this);
- mPicActionGroup->addAction(mPWDeletePicFromA);
- mPicActionGroup->addAction(mPWEditPicMappingsA);
- mPicActionGroup->addAction(mPWRefreshA);
}
void SheMov::createMenus(){
@@ -505,24 +395,8 @@ void SheMov::createMenus(){
analyzeMenu->addAction(mAnalyzeSeriesA);
analyzeMenu->addAction(mAnalyzePartsA);
- //Pictures edit menu
- mEditPicMenu = new QMenu(tr("&Edit"), this);
- mEditPicMenu->addAction(mPWDeletePicFromA);
- mEditPicMenu->addAction(mPWEditPicMappingsA);
- mEditPicMenuA = menuBar()->addMenu(mEditPicMenu);
-
- //Pictures view menu
- mPicViewMenu = new QMenu(tr("&View"), this);
- mPicViewMenu->addAction(mPVToggleA);
- mPicViewMenu->addAction(mPVAddA);
- mPicViewMenu->addAction(mPVReplaceA);
- mPicViewMenu->addSeparator();
QMenu *headerMenu = new QMenu(tr("Show headers"), this);
headerMenu->addActions(mPicsTreeHeaderGroup->actions());
- mPicViewMenu->addMenu(headerMenu);
- mPicViewMenu->addSeparator();
- mPicViewMenu->addAction(mPWRefreshA);
- mViewPicMenuA = menuBar()->addMenu(mPicViewMenu);
//Archive Browser view menu
mArchiveBrowserViewMenu = new QMenu(tr("&View"), this);
diff --git a/shemov.h b/shemov.h
index 4c2a674..27e126c 100644
--- a/shemov.h
+++ b/shemov.h
@@ -83,26 +83,7 @@ class SheMov : public QMainWindow {
QAction *mConsistencyA;
QAction *mSearchDialogA;
QActionGroup *mPicsTreeHeaderGroup;
-
- //PictureWidget Actions
- //PW = mPicWidget
- //PV = pictureViewer
- QAction *mPWDeletePicFromA;
- QAction *mPWEditPicMappingsA;
- QAction *mPWRefreshA;
- QAction *mPVToggleA;
- QAction *mPVAddA;
- QAction *mPVMarkA;
- QAction *mPVDeleteA;
- QAction *mPVClearMarksA;
- QAction *mPVReplaceA;
- QAction *mPVSelectAllA;
- QAction *mPVCopyToA;
- QAction *mPVShowNPDialogA;
- QAction *mPVAddToNPA;
- QAction *mPVSlideDlgA;
QActionGroup *mPicActionGroup;
- //EndActions
//ArchiveBrowser
QAction *mArchiveBrowserViewMenuA;
@@ -130,14 +111,9 @@ class SheMov : public QMainWindow {
QAction *mAnalyzeSeriesA;
QAction *mAnalyzePartsA;
- QMenu *mEditPicMenu;
QMenu *mPlaySelectedTimesMenuFS;
- QMenu *mPicViewMenu;
QMenu *mArchiveBrowserViewMenu;
QMenu *mRandomEditMenu;
- QAction *mEditFSMenuA;
- QAction *mEditPicMenuA;
- QAction *mViewPicMenuA;
QAction *mRandomEditMenuA;