Core/Mod: modernize C++11

* use nullptr
This commit is contained in:
wmayer
2022-03-09 21:55:31 +01:00
parent f4a51f3788
commit 08b77bff08
16 changed files with 248 additions and 241 deletions

View File

@@ -66,8 +66,8 @@ PyObject* ViewProviderPy::addProperty(PyObject *args)
std::string sDocStr;
PyObject *ro = Py_False, *hd = Py_False;
if (!PyArg_ParseTuple(args, "s|ssethO!O!", &sType,&sName,&sGroup,"utf-8",&sDoc,&attr,
&PyBool_Type, &ro, &PyBool_Type, &hd)) // convert args: Python->C
return NULL; // NULL triggers exception
&PyBool_Type, &ro, &PyBool_Type, &hd))
return nullptr;
if (sDoc) {
sDocStr = sDoc;
@@ -95,7 +95,7 @@ PyObject* ViewProviderPy::removeProperty(PyObject *args)
{
char *sName;
if (!PyArg_ParseTuple(args, "s", &sName))
return NULL;
return nullptr;
try {
bool ok = getViewProviderPtr()->removeDynamicProperty(sName);
@@ -108,8 +108,8 @@ PyObject* ViewProviderPy::removeProperty(PyObject *args)
PyObject* ViewProviderPy::supportedProperties(PyObject *args)
{
if (!PyArg_ParseTuple(args, "")) // convert args: Python->C
return NULL; // NULL triggers exception
if (!PyArg_ParseTuple(args, ""))
return nullptr;
std::vector<Base::Type> ary;
Base::Type::getAllDerivedFrom(App::Property::getClassTypeId(), ary);
@@ -126,8 +126,8 @@ PyObject* ViewProviderPy::supportedProperties(PyObject *args)
PyObject* ViewProviderPy::show(PyObject *args)
{
if (!PyArg_ParseTuple(args, "")) // convert args: Python->C
return NULL; // NULL triggers exception
if (!PyArg_ParseTuple(args, ""))
return nullptr;
PY_TRY {
getViewProviderPtr()->show();
Py_Return;
@@ -136,8 +136,8 @@ PyObject* ViewProviderPy::show(PyObject *args)
PyObject* ViewProviderPy::hide(PyObject *args)
{
if (!PyArg_ParseTuple(args, "")) // convert args: Python->C
return NULL; // NULL triggers exception
if (!PyArg_ParseTuple(args, ""))
return nullptr;
PY_TRY {
getViewProviderPtr()->hide();
Py_Return;
@@ -146,8 +146,8 @@ PyObject* ViewProviderPy::hide(PyObject *args)
PyObject* ViewProviderPy::isVisible(PyObject *args)
{
if (!PyArg_ParseTuple(args, "")) // convert args: Python->C
return NULL; // NULL triggers exception
if (!PyArg_ParseTuple(args, ""))
return nullptr;
PY_TRY {
return Py_BuildValue("O", (getViewProviderPtr()->isShow() ? Py_True : Py_False));
} PY_CATCH;
@@ -157,14 +157,14 @@ PyObject* ViewProviderPy::canDragObject(PyObject *args)
{
PyObject *obj = Py_None;
if (!PyArg_ParseTuple(args, "|O", &obj))
return NULL;
return nullptr;
PY_TRY {
bool ret;
if(obj == Py_None)
ret = getViewProviderPtr()->canDragObjects();
else if(!PyObject_TypeCheck(obj,&App::DocumentObjectPy::Type)) {
PyErr_SetString(PyExc_TypeError, "exepcting a type of DocumentObject");
return 0;
return nullptr;
}else
ret = getViewProviderPtr()->canDragObject(
static_cast<App::DocumentObjectPy*>(obj)->getDocumentObjectPtr());
@@ -179,21 +179,21 @@ PyObject* ViewProviderPy::canDropObject(PyObject *args)
PyObject *pyElements = Py_None;
const char *subname = 0;
if (!PyArg_ParseTuple(args, "|OOsO", &obj,&owner,&subname,&pyElements))
return NULL;
return nullptr;
PY_TRY {
bool ret;
if(obj == Py_None)
ret = getViewProviderPtr()->canDropObjects();
else if(!PyObject_TypeCheck(obj,&App::DocumentObjectPy::Type)) {
PyErr_SetString(PyExc_TypeError, "exepcting 'obj' to be of type DocumentObject");
return 0;
return nullptr;
}
auto pcObject = static_cast<App::DocumentObjectPy*>(obj)->getDocumentObjectPtr();
App::DocumentObject *pcOwner = 0;
App::DocumentObject *pcOwner = nullptr;
if(owner!=Py_None) {
if(!PyObject_TypeCheck(owner,&App::DocumentObjectPy::Type)) {
PyErr_SetString(PyExc_TypeError, "exepcting 'owner' to be of type DocumentObject");
return NULL;
return nullptr;
}
pcOwner = static_cast<App::DocumentObjectPy*>(owner)->getDocumentObjectPtr();
}
@@ -201,9 +201,10 @@ PyObject* ViewProviderPy::canDropObject(PyObject *args)
if(pyElements!=Py_None) {
try {
elements.setPyObject(pyElements);
}catch(...) {
}
catch(...) {
PyErr_SetString(PyExc_TypeError, "exepcting the forth argument to be of type sequence of strings");
return 0;
return nullptr;
}
}
ret = getViewProviderPtr()->canDropObjectEx(pcObject,pcOwner,subname,elements.getValues());
@@ -309,8 +310,8 @@ PyObject* ViewProviderPy::addDisplayMode(PyObject * args)
PyObject* ViewProviderPy::listDisplayModes(PyObject *args)
{
if (!PyArg_ParseTuple(args, "")) // convert args: Python->C
return NULL; // NULL triggers exception
if (!PyArg_ParseTuple(args, ""))
return nullptr;
PY_TRY {
std::vector<std::string> modes = getViewProviderPtr()->getDisplayModes();
PyObject* pyList = PyList_New(modes.size());
@@ -327,8 +328,8 @@ PyObject* ViewProviderPy::listDisplayModes(PyObject *args)
PyObject* ViewProviderPy::toString(PyObject *args)
{
if (!PyArg_ParseTuple(args, "")) // convert args: Python->C
return NULL; // NULL triggers exception
if (!PyArg_ParseTuple(args, ""))
return nullptr;
PY_TRY {
std::string buffer = getViewProviderPtr()->toString();
return Py::new_reference_to(Py::String(buffer));
@@ -358,7 +359,7 @@ PyObject* ViewProviderPy::setTransformation(PyObject *args)
PyObject* ViewProviderPy::claimChildren(PyObject* args)
{
if (!PyArg_ParseTuple(args, ""))
return NULL; // NULL triggers exception
return nullptr;
std::vector<App::DocumentObject*> children = this->getViewProviderPtr()->claimChildren();
Py::List ret;
@@ -376,7 +377,7 @@ PyObject* ViewProviderPy::partialRender(PyObject* args)
PyObject *value = Py_None;
PyObject *clear = Py_False;
if (!PyArg_ParseTuple(args, "|OO",&value,&clear))
return NULL; // NULL triggers exception
return nullptr;
std::vector<std::string> values;
if(value != Py_None) {
@@ -412,7 +413,7 @@ PyObject* ViewProviderPy::getElementColors(PyObject* args)
{
const char *element = 0;
if (!PyArg_ParseTuple(args, "|s", &element))
return 0;
return nullptr;
Py::Dict dict;
for(auto &v : getViewProviderPtr()->getElementColors(element)) {
@@ -427,7 +428,7 @@ PyObject* ViewProviderPy::setElementColors(PyObject* args)
{
PyObject *pyObj;
if (!PyArg_ParseTuple(args, "O", &pyObj))
return 0;
return nullptr;
if(!PyDict_Check(pyObj))
throw Py::TypeError("Expect a dict");
@@ -451,8 +452,8 @@ PyObject* ViewProviderPy::getElementPicked(PyObject* args)
{
PyObject *obj;
if (!PyArg_ParseTuple(args, "O",&obj))
return NULL;
void *ptr = 0;
return nullptr;
void *ptr = nullptr;
Base::Interpreter().convertSWIGPointerObj("pivy.coin", "_p_SoPickedPoint", obj, &ptr, 0);
SoPickedPoint *pp = reinterpret_cast<SoPickedPoint*>(ptr);
if(!pp)
@@ -469,8 +470,8 @@ PyObject* ViewProviderPy::getDetailPath(PyObject* args)
PyObject *path;
PyObject *append = Py_True;
if (!PyArg_ParseTuple(args, "sO|O",&sub,&path,&append))
return NULL;
void *ptr = 0;
return nullptr;
void *ptr = nullptr;
Base::Interpreter().convertSWIGPointerObj("pivy.coin", "_p_SoPath", path, &ptr, 0);
SoPath *pPath = reinterpret_cast<SoPath*>(ptr);
if(!pPath)
@@ -490,17 +491,17 @@ PyObject* ViewProviderPy::getDetailPath(PyObject* args)
PyObject *ViewProviderPy::signalChangeIcon(PyObject *args)
{
if (!PyArg_ParseTuple(args, ""))
return NULL;
return nullptr;
getViewProviderPtr()->signalChangeIcon();
Py_Return;
}
PyObject *ViewProviderPy::getBoundingBox(PyObject *args) {
PyObject *transform=Py_True;
PyObject *pyView = 0;
const char *subname = 0;
PyObject *pyView = nullptr;
const char *subname = nullptr;
if (!PyArg_ParseTuple(args, "|sOO!", &subname,&transform,View3DInventorPy::type_object(),&pyView))
return NULL;
return nullptr;
PY_TRY {
View3DInventor *view = 0;
if(pyView)
@@ -513,7 +514,7 @@ PyObject *ViewProviderPy::getBoundingBox(PyObject *args) {
PyObject *ViewProviderPy::doubleClicked(PyObject *args) {
if(!PyArg_ParseTuple(args, ""))
return 0;
return nullptr;
PY_TRY {
return Py::new_reference_to(Py::Boolean(getViewProviderPtr()->doubleClicked()));
}PY_CATCH;
@@ -526,7 +527,7 @@ PyObject *ViewProviderPy::getCustomAttributes(const char* attr) const
if (prop)
return prop->getPyObject();
else
return 0;
return nullptr;
}
int ViewProviderPy::setCustomAttributes(const char* attr, PyObject* value)