From ff4a70f50e42152c5c391fd7801b916e64b181a4 Mon Sep 17 00:00:00 2001 From: Arno Date: Sun, 26 Feb 2012 09:31:49 +0100 Subject: Move some code from NewPicsDialog around Put mapping editor into a seperate class to make it easier using it for changing mappings later. --- newpicsdialog.cpp | 46 +++------------------------------------------- 1 file changed, 3 insertions(+), 43 deletions(-) (limited to 'newpicsdialog.cpp') diff --git a/newpicsdialog.cpp b/newpicsdialog.cpp index cc85a1b..6bb83df 100644 --- a/newpicsdialog.cpp +++ b/newpicsdialog.cpp @@ -57,27 +57,7 @@ NewPicsDialog::NewPicsDialog(QWidget *parent, Qt::WindowFlags f) : QDialog(paren mFilesWidget->setLayout(filesLayout); //mapping widget - mMappingWidget = new QWidget; - mMappingTreeWidget = new MappingTreeWidget; - mResultView = new MappingTreeResultView; - mResultModel = new MappingTreeResultModel(QStringList() << tr("Name") << tr("Id"), this); - mResultView->setModel(mResultModel); - mResultView->setAlternatingRowColors(true); - mResultView->setColumnHidden(1, true); - mAddMapping = new QPushButton(tr(">>")); - connect(mAddMapping, SIGNAL(clicked()), this, SLOT(addMapping())); - mRemoveMapping = new QPushButton(tr("<<")); - connect(mRemoveMapping, SIGNAL(clicked()), this, SLOT(removeMapping())); - QVBoxLayout *mappingButtonLayout = new QVBoxLayout; - mappingButtonLayout->addStretch(); - mappingButtonLayout->addWidget(mAddMapping); - mappingButtonLayout->addWidget(mRemoveMapping); - mappingButtonLayout->addStretch(); - QHBoxLayout *mappingLayout = new QHBoxLayout; - mappingLayout->addWidget(mMappingTreeWidget); - mappingLayout->addLayout(mappingButtonLayout); - mappingLayout->addWidget(mResultView); - mMappingWidget->setLayout(mappingLayout); + mMappingEditWidget = new MappingEditWidget; //dialog buttons mOk = new QPushButton(tr("Ok")); @@ -94,7 +74,7 @@ NewPicsDialog::NewPicsDialog(QWidget *parent, Qt::WindowFlags f) : QDialog(paren setMinimumHeight(400); mTab = new QTabWidget; mTab->addTab(mFilesWidget, tr("Files")); - mTab->addTab(mMappingWidget, tr("Mappings")); + mTab->addTab(mMappingEditWidget, tr("Mappings")); QVBoxLayout *mainLayout = new QVBoxLayout; mainLayout->addWidget(mTab); mainLayout->addLayout(dlgButtonLayout); @@ -136,30 +116,12 @@ void NewPicsDialog::removeFiles(){ } } -void NewPicsDialog::addMapping(){ - MappingData selected = mMappingTreeWidget->selectedItem(); - if(selected.id == -1){ - return; - } - mResultModel->addItem(selected); - mResultView->expandAll(); -} - -void NewPicsDialog::removeMapping(){ - QModelIndexList sel = mResultView->selectionModel()->selectedRows(); - if(sel.isEmpty()){ - return; - } - QModelIndex firstIdx = sel.first(); - mResultModel->removeRows(firstIdx.row(), 1, firstIdx.parent()); -} - void NewPicsDialog::accept(){ QList files = mFilesModel->validFiles(); if(files.isEmpty()){ return QDialog::accept(); } - QList mappingIds = mResultModel->mappingsIds(); + QList mappingIds = mMappingEditWidget->mappingIds(); mDb.transaction(); foreach(FileData d, files){ mAddFileQ->bindValue(":fn", d.fileName); @@ -191,8 +153,6 @@ void NewPicsDialog::accept(){ return QDialog::accept(); } -MappingTreeResultView::MappingTreeResultView(QWidget *parent) : QTreeView(parent) { } - NewPicFilesModel::NewPicFilesModel(const QStringList &header, QObject *parent) : SmTreeModel(header, parent){ mDb = QSqlDatabase::database("treedb"); mMd5Query = new QSqlQuery(mDb); -- cgit v1.2.3-70-g09d2