PyObject* scribus_deletemasterpage(PyObject* /* self */, PyObject* args) { char* name = nullptr; if (!PyArg_ParseTuple(args, "es", const_cast<char*>("utf-8"), &name)) return nullptr; if (!checkHaveDocument()) return nullptr; const QString masterPageName(name); ScribusDoc* currentDoc = ScCore->primaryMainWindow()->doc; if (!currentDoc->MasterNames.contains(masterPageName)) { PyErr_SetString(PyExc_ValueError, "Master page does not exist"); return nullptr; } if (masterPageName == "Normal") { PyErr_SetString(PyExc_ValueError, "Can not delete the Normal master page"); return nullptr; } bool oldMode = currentDoc->masterPageMode(); currentDoc->setMasterPageMode(true); ScCore->primaryMainWindow()->deletePage2(currentDoc->MasterNames[masterPageName]); currentDoc->setMasterPageMode(oldMode); Py_RETURN_NONE; }