py3: Gui: files A-P ported to python3

This commit is contained in:
Yorik van Havre
2017-05-05 19:33:03 +02:00
committed by wmayer
parent 3299c363ab
commit 7e39fed862
10 changed files with 274 additions and 25 deletions

View File

@@ -81,7 +81,11 @@ Py::Object PythonStdout::write(const Py::Tuple& args)
if (PyUnicode_Check(output.ptr())) {
PyObject* unicode = PyUnicode_AsEncodedObject(output.ptr(), "utf-8", "strict");
if (unicode) {
#if PY_MAJOR_VERSION >= 3
const char* string = PyBytes_AsString(unicode);
#else
const char* string = PyString_AsString(unicode);
#endif
int maxlen = qstrlen(string) > 10000 ? 10000 : -1;
pyConsole->insertPythonOutput(QString::fromUtf8(string, maxlen));
Py_DECREF(unicode);
@@ -152,7 +156,11 @@ Py::Object PythonStderr::write(const Py::Tuple& args)
if (PyUnicode_Check(output.ptr())) {
PyObject* unicode = PyUnicode_AsEncodedObject(output.ptr(), "utf-8", "strict");
if (unicode) {
#if PY_MAJOR_VERSION >= 3
const char* string = PyBytes_AsString(unicode);
#else
const char* string = PyString_AsString(unicode);
#endif
int maxlen = qstrlen(string) > 10000 ? 10000 : -1;
pyConsole->insertPythonError(QString::fromUtf8(string, maxlen));
Py_DECREF(unicode);
@@ -222,7 +230,11 @@ Py::Object OutputStdout::write(const Py::Tuple& args)
if (PyUnicode_Check(output.ptr())) {
PyObject* unicode = PyUnicode_AsEncodedObject(output.ptr(), "utf-8", "strict");
if (unicode) {
#if PY_MAJOR_VERSION >= 3
const char* string = PyBytes_AsString(unicode);
#else
const char* string = PyString_AsString(unicode);
#endif
Base::Console().Message("%s",string);
Py_DECREF(unicode);
}
@@ -290,7 +302,11 @@ Py::Object OutputStderr::write(const Py::Tuple& args)
if (PyUnicode_Check(output.ptr())) {
PyObject* unicode = PyUnicode_AsEncodedObject(output.ptr(), "utf-8", "strict");
if (unicode) {
#if PY_MAJOR_VERSION >= 3
const char* string = PyBytes_AsString(unicode);
#else
const char* string = PyString_AsString(unicode);
#endif
Base::Console().Error("%s",string);
Py_DECREF(unicode);
}