summaryrefslogtreecommitdiffstats
path: root/pictureswidget.cpp
diff options
context:
space:
mode:
authorArno <arno@disconnect.de>2018-07-14 18:44:48 +0200
committerArno <arno@disconnect.de>2018-07-14 18:44:48 +0200
commit91e0b30ac38cec6ab7c8477615c0df129efed216 (patch)
tree881dc3b24dd3bca95ccc0ad2a1146db400d0f653 /pictureswidget.cpp
parentf6eb9eb58568b5fde537cc8119914dc77b25b46a (diff)
downloadSheMov-91e0b30ac38cec6ab7c8477615c0df129efed216.tar.gz
SheMov-91e0b30ac38cec6ab7c8477615c0df129efed216.tar.bz2
SheMov-91e0b30ac38cec6ab7c8477615c0df129efed216.zip
Remove the menuBar() from picture archive
The journey started innocent enough, but turned out to be a commit that should have been severals. In the end, the picture archive has no menuBar() any more, as expected, but it's also impossible to call the slide dialog. Will fix that soon.
Diffstat (limited to 'pictureswidget.cpp')
-rw-r--r--pictureswidget.cpp90
1 files changed, 58 insertions, 32 deletions
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();
}