X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/27ac653dea3ebb218d915604a8fce4b0d34d9278..6bdfaadd65fe35ba568799b0e42c54e5a95e27ed:/lib/python/enigma_python.i diff --git a/lib/python/enigma_python.i b/lib/python/enigma_python.i index ce776320..47d25ae8 100644 --- a/lib/python/enigma_python.i +++ b/lib/python/enigma_python.i @@ -92,8 +92,10 @@ is usually caused by not marking PSignals as immutable. extern void runMainloop(); extern void quitMainloop(int exit_code); extern eApplication *getApplication(); - -extern PSignal1 &keyPressedSignal(); +extern int getPrevAsciiCode(); +extern int isUTF8(const std::string &); +extern std::string convertUTF8DVB(const std::string &, int); +extern std::string convertDVBUTF8(const unsigned char *data, int len, int table, int tsidonid); %} %feature("ref") iObject "$this->AddRef(); /* eDebug(\"AddRef (%s:%d)!\", __FILE__, __LINE__); */ " @@ -120,7 +122,7 @@ extern PSignal1 &keyPressedSignal(); fragment="t_output_helper") {} %typemap(argout,fragment="t_out_helper"{Type}) Type *OUTPUT, Type &OUTPUT // generate None if smartpointer is NULL - "$result = t_output_helper($result, ((*$1) ? SWIG_NewPointerObj((void*)($1), $1_descriptor, 1) : (Py_INCREF(Py_None), Py_None)));" + "$result = t_output_helper($result, ((*$1) ? SWIG_NewPointerObj((void*)($1), $1_descriptor, 1) : (delete $1, Py_INCREF(Py_None), Py_None)));" %enddef @@ -153,6 +155,7 @@ typedef long time_t; %immutable pNavigation::m_event; %immutable eListbox::selectionChanged; %immutable eDVBCI_UI::ciStateChanged; +%immutable eDVBResourceManager::frontendUseMaskChanged; %include %include @@ -254,13 +257,21 @@ void addFont(const char *filename, const char *alias, int scale_factor, int is_r /************** debug **************/ +int getPrevAsciiCode(); void runMainloop(); void quitMainloop(int exit_code); eApplication *getApplication(); -%immutable keyPressed; -PSignal1 &keyPressedSignal(); - +int isUTF8(const std::string &); +std::string convertUTF8DVB(const std::string &, int); +std::string convertDVBUTF8(std::string text, int table); %{ + +std::string convertDVBUTF8(std::string text, int table) +{ + int len = text.length(); + return convertDVBUTF8(len?(unsigned char*)text.c_str():(unsigned char*)"", len, table, 0); +} + RESULT SwigFromPython(ePtr &result, PyObject *obj) { ePtr *res;