Implement deleting of subpages

This commit is contained in:
G.K.MacGregor
2020-12-15 21:57:42 +00:00
parent 269500aeef
commit 19be00f4fe
6 changed files with 65 additions and 0 deletions

View File

@@ -343,6 +343,10 @@ void MainWindow::createActions()
insertCopyAct->setStatusTip(tr("Insert a subpage that's a copy of this subpage"));
connect(insertCopyAct, &QAction::triggered, [=]() { insertSubPage(false, true); });
m_deleteSubPageAction = editMenu->addAction(tr("Delete subpage"));
m_deleteSubPageAction->setStatusTip(tr("Delete this subpage"));
connect(m_deleteSubPageAction, &QAction::triggered, this, &MainWindow::deleteSubPage);
QMenu *viewMenu = menuBar()->addMenu(tr("&View"));
QAction *revealAct = viewMenu->addAction(tr("&Reveal"));
@@ -556,6 +560,14 @@ void MainWindow::insertSubPage(bool afterCurrentSubPage, bool copyCurrentSubPage
m_textWidget->document()->undoStack()->push(insertSubPageCommand);
}
void MainWindow::deleteSubPage()
{
if (m_textWidget->document()->numberOfSubPages() == 1)
return;
m_textWidget->document()->undoStack()->push(new DeleteSubPageCommand(m_textWidget->document()));
}
void MainWindow::setBorder(int newViewBorder)
{
m_viewBorder = newViewBorder;
@@ -869,6 +881,7 @@ void MainWindow::updatePageWidgets()
m_subPageLabel->setText(QString("%1/%2").arg(m_textWidget->document()->currentSubPageIndex()+1).arg(m_textWidget->document()->numberOfSubPages()));
m_previousSubPageButton->setEnabled(!(m_textWidget->document()->currentSubPageIndex() == 0));
m_nextSubPageButton->setEnabled(!(m_textWidget->document()->currentSubPageIndex() == (m_textWidget->document()->numberOfSubPages()) - 1));
m_deleteSubPageAction->setEnabled(m_textWidget->document()->numberOfSubPages() > 1);
m_pageOptionsDockWidget->updateWidgets();
m_pageEnhancementsDockWidget->updateWidgets();
m_x26DockWidget->loadX26List();