diff --git a/src/Mod/Spreadsheet/Gui/CMakeLists.txt b/src/Mod/Spreadsheet/Gui/CMakeLists.txt index 61ff766fa2..cbffc4e9b3 100644 --- a/src/Mod/Spreadsheet/Gui/CMakeLists.txt +++ b/src/Mod/Spreadsheet/Gui/CMakeLists.txt @@ -8,12 +8,10 @@ include_directories( ${XercesC_INCLUDE_DIRS} ) -generate_from_xml(SpreadsheetViewPy) generate_from_xml(ViewProviderSpreadsheetPy) # The XML files set(SpreadsheetGui_XML_SRCS - SpreadsheetViewPy.xml ViewProviderSpreadsheetPy.xml ) @@ -77,7 +75,6 @@ SET(SpreadsheetGui_SRCS Resources/Spreadsheet.qrc SpreadsheetView.cpp SpreadsheetView.h - SpreadsheetViewPyImp.cpp SpreadsheetDelegate.h SpreadsheetDelegate.cpp SheetTableView.cpp diff --git a/src/Mod/Spreadsheet/Gui/SpreadsheetViewPy.xml b/src/Mod/Spreadsheet/Gui/SpreadsheetViewPy.xml deleted file mode 100644 index 618ddfa7b4..0000000000 --- a/src/Mod/Spreadsheet/Gui/SpreadsheetViewPy.xml +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - SpreadsheetView object - - - - returns the sheet being displayed - - - - - diff --git a/src/Mod/Spreadsheet/Gui/SpreadsheetViewPyImp.cpp b/src/Mod/Spreadsheet/Gui/SpreadsheetViewPyImp.cpp deleted file mode 100644 index 08b47d8e5d..0000000000 --- a/src/Mod/Spreadsheet/Gui/SpreadsheetViewPyImp.cpp +++ /dev/null @@ -1,32 +0,0 @@ -#include "PreCompiled.h" - -#include "SpreadsheetViewPy.h" -#include "SpreadsheetViewPy.cpp" -#include "ui_Sheet.h" - -#include - -using namespace SpreadsheetGui; - -PyObject* SpreadsheetViewPy::getSheet(PyObject *args) -{ - if (!PyArg_ParseTuple(args, "")) - return nullptr; - return new Spreadsheet::SheetPy(getSheetViewPtr()->getSheet()); -} - -// returns a string which represents the object e.g. when printed in python -std::string SpreadsheetViewPy::representation(void) const -{ - return std::string(""); -} - -PyObject *SpreadsheetViewPy::getCustomAttributes(const char* /*attr*/) const -{ - return 0; -} - -int SpreadsheetViewPy::setCustomAttributes(const char* /*attr*/, PyObject* /*obj*/) -{ - return 0; -} diff --git a/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheetPy.xml b/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheetPy.xml index d14f891c03..2434e12d36 100644 --- a/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheetPy.xml +++ b/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheetPy.xml @@ -15,32 +15,6 @@ ViewProviderSheet class - - - returns a list with the selected ranges of cells - - - - - returns a list with the selected cells - - - - - select(index, flags): Select the specified cell using the given QItemSelectionModel.SelectionFlag set -select(topLeft, bottomRight, flags): Select the specified range using the given QItemSelectionModel.SelectionFlag set - - - - - Get the current active cell - - - - - Set the current active cell - - Get access to the sheet view diff --git a/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheetPyImp.cpp b/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheetPyImp.cpp index bea7958ee6..12ba9d5684 100644 --- a/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheetPyImp.cpp +++ b/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheetPyImp.cpp @@ -14,83 +14,6 @@ std::string ViewProviderSpreadsheetPy::representation(void) const return std::string(""); } - -PyObject* ViewProviderSpreadsheetPy::selectedRanges(PyObject* /*obj*/) -{ - ViewProviderSheet* vp = this->getViewProviderSheetPtr(); - SheetView *sheetView = vp->getView(); - std::vector ranges = sheetView->selectedRanges(); - Py::List list; - for (const auto &range : ranges) - { - list.append(Py::String(range.rangeString())); - } - - return Py::new_reference_to(list); -} - -PyObject* ViewProviderSpreadsheetPy::selectedCells(PyObject* /*obj*/) -{ - ViewProviderSheet* vp = this->getViewProviderSheetPtr(); - SheetView *sheetView = vp->getView(); - QModelIndexList cells = sheetView->selectedIndexes(); - Py::List list; - for (const auto &cell : cells) { - list.append(Py::String(App::CellAddress(cell.row(), cell.column()).toString())); - } - - return Py::new_reference_to(list); -} - -PyObject* ViewProviderSpreadsheetPy::select(PyObject* _args) -{ - ViewProviderSheet* vp = this->getViewProviderSheetPtr(); - SheetView* sheetView = vp->getView(); - - Py::Sequence args(_args); - - const char* cell; - const char* topLeft; - const char* bottomRight; - int flags = 0; - if (args.size() == 2 && PyArg_ParseTuple(_args, "si", &cell, &flags)) { - sheetView->select(App::CellAddress(cell), static_cast(flags)); - } - else if (args.size() == 3 && PyArg_ParseTuple(_args, "ssi", &topLeft, &bottomRight, &flags)) { - sheetView->select(App::CellAddress(topLeft), App::CellAddress(bottomRight), static_cast(flags)); - } - else { - if (args.size() == 2) - throw Base::TypeError("Expects the arguments to be a cell name (e.g. 'A1') and QItemSelectionModel.SelectionFlags"); - else if (args.size() == 3) - throw Base::TypeError("Expects the arguments to be a cell name (e.g. 'A1'), a second cell name (e.g. 'B5'), and QItemSelectionModel.SelectionFlags"); - else - throw Base::TypeError("Wrong arguments to select: specify either a cell, or two cells (for a range), and QItemSelectionModel.SelectionFlags"); - } - Py_RETURN_NONE; -} - -PyObject* ViewProviderSpreadsheetPy::currentIndex(PyObject* /*_args*/) -{ - ViewProviderSheet* vp = this->getViewProviderSheetPtr(); - SheetView* sheetView = vp->getView(); - auto index = sheetView->currentIndex(); - Py::String str(App::CellAddress(index.row(), index.column()).toString()); - return Py::new_reference_to(str); -} - -PyObject* ViewProviderSpreadsheetPy::setCurrentIndex(PyObject* args) -{ - ViewProviderSheet* vp = this->getViewProviderSheetPtr(); - SheetView* sheetView = vp->getView(); - - const char* cell; - if (PyArg_ParseTuple(args, "s", &cell)) { - sheetView->setCurrentIndex(App::CellAddress(cell)); - } - Py_RETURN_NONE; -} - PyObject* ViewProviderSpreadsheetPy::getView(PyObject* args) { if (!PyArg_ParseTuple(args, ""))