Sheet: enable Merge action only if at least 2 cells are selected

Both main menu and context menu
This commit is contained in:
0penBrain
2022-04-13 15:49:46 +02:00
committed by Chris Hennes
parent 9eca8454ca
commit cd007dd3c8
2 changed files with 5 additions and 3 deletions

View File

@@ -105,9 +105,11 @@ bool CmdSpreadsheetMergeCells::isActive()
{
if (getActiveGuiDocument()) {
Gui::MDIView* activeWindow = Gui::getMainWindow()->activeWindow();
if (activeWindow && freecad_dynamic_cast<SpreadsheetGui::SheetView>(activeWindow))
return true;
SpreadsheetGui::SheetView * sheetView = freecad_dynamic_cast<SpreadsheetGui::SheetView>(activeWindow);
if (sheetView) {
return (sheetView->selectedIndexesRaw().size() > 1);
}
}
return false;
}

View File

@@ -973,7 +973,7 @@ void SheetTableView::contextMenuEvent(QContextMenuEvent *)
actionDel->setEnabled(true);
actionSplit->setEnabled(selectedIndexes().size() == 1 &&
sheet->isMergedCell(CellAddress(currentIndex().row(),currentIndex().column())));
actionMerge->setEnabled(true);
actionMerge->setEnabled(selectedIndexes().size() > 1);
}
auto ranges = selectedRanges();