From 7431bddea712728a48c4b4da2b98b5699207bf1a Mon Sep 17 00:00:00 2001 From: wmayer Date: Sat, 13 Nov 2021 21:43:58 +0100 Subject: [PATCH] Spreadsheet: get access to the sheet view from the view provider via Python --- .../Spreadsheet/Gui/ViewProviderSpreadsheetPy.xml | 7 ++++++- .../Spreadsheet/Gui/ViewProviderSpreadsheetPyImp.cpp | 12 ++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheetPy.xml b/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheetPy.xml index e1054e446f..d14f891c03 100644 --- a/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheetPy.xml +++ b/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheetPy.xml @@ -41,5 +41,10 @@ select(topLeft, bottomRight, flags): Select the specified range using the given Set the current active cell + + + Get access to the sheet view + + - \ No newline at end of file + diff --git a/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheetPyImp.cpp b/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheetPyImp.cpp index c7a7f5c375..68273bdec1 100644 --- a/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheetPyImp.cpp +++ b/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheetPyImp.cpp @@ -94,6 +94,18 @@ PyObject* ViewProviderSpreadsheetPy::setCurrentIndex(PyObject* args) return Py_None; } +PyObject* ViewProviderSpreadsheetPy::getView(PyObject* args) +{ + if (!PyArg_ParseTuple(args, "")) + return nullptr; + + ViewProviderSheet* vp = this->getViewProviderSheetPtr(); + SheetView* sheetView = vp->getView(); + if (sheetView) + return sheetView->getPyObject(); + Py_RETURN_NONE; +} + PyObject *ViewProviderSpreadsheetPy::getCustomAttributes(const char* /*attr*/) const { return nullptr;