00001 /*************************************************************************** 00002 * Copyright (c) 2008 Werner Mayer <wmayer[at]users.sourceforge.net> * 00003 * * 00004 * This file is part of the FreeCAD CAx development system. * 00005 * * 00006 * This library is free software; you can redistribute it and/or * 00007 * modify it under the terms of the GNU Library General Public * 00008 * License as published by the Free Software Foundation; either * 00009 * version 2 of the License, or (at your option) any later version. * 00010 * * 00011 * This library is distributed in the hope that it will be useful, * 00012 * but WITHOUT ANY WARRANTY; without even the implied warranty of * 00013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 00014 * GNU Library General Public License for more details. * 00015 * * 00016 * You should have received a copy of the GNU Library General Public * 00017 * License along with this library; see the file COPYING.LIB. If not, * 00018 * write to the Free Software Foundation, Inc., 59 Temple Place, * 00019 * Suite 330, Boston, MA 02111-1307, USA * 00020 * * 00021 ***************************************************************************/ 00022 00023 00024 #include "PreCompiled.h" 00025 00026 #ifndef _PreComp_ 00027 # include <sstream> 00028 #endif 00029 00030 #include "Gui/ViewProviderDocumentObject.h" 00031 #include <App/DocumentObject.h> 00032 00033 // inclusion of the generated files (generated out of ViewProviderDocumentObjectPy.xml) 00034 #include "ViewProviderDocumentObjectPy.h" 00035 #include "ViewProviderDocumentObjectPy.cpp" 00036 00037 using namespace Gui; 00038 00039 // returns a string which represents the object e.g. when printed in python 00040 std::string ViewProviderDocumentObjectPy::representation(void) const 00041 { 00042 std::stringstream str; 00043 str << "<View provider object at " << getViewProviderDocumentObjectPtr() << ">"; 00044 00045 return str.str(); 00046 } 00047 00048 PyObject* ViewProviderDocumentObjectPy::update(PyObject *args) 00049 { 00050 if (!PyArg_ParseTuple(args, "")) // convert args: Python->C 00051 return NULL; // NULL triggers exception 00052 PY_TRY { 00053 getViewProviderDocumentObjectPtr()->updateView(); 00054 Py_Return; 00055 } PY_CATCH; 00056 } 00057 00058 Py::Object ViewProviderDocumentObjectPy::getObject(void) const 00059 { 00060 App::DocumentObject* obj = getViewProviderDocumentObjectPtr()->getObject(); 00061 return Py::Object(obj->getPyObject(), true); // do not inc'ref twice 00062 } 00063 00064 PyObject *ViewProviderDocumentObjectPy::getCustomAttributes(const char* /*attr*/) const 00065 { 00066 return 0; 00067 } 00068 00069 int ViewProviderDocumentObjectPy::setCustomAttributes(const char* /*attr*/, PyObject* /*obj*/) 00070 { 00071 return 0; 00072 }