fix for canAllocateChannel
[enigma2.git] / lib / gui / elistboxcontent.cpp
index 1391a2b56f2e44a320c12caac075b7216bfd7d8a..6e49dcb565a03ad89760a52ddebf60668323df03 100644 (file)
@@ -110,7 +110,7 @@ void eListboxTestContent::setSize(const eSize &size)
 
 void eListboxTestContent::paint(gPainter &painter, eWindowStyle &style, const ePoint &offset, int selected)
 {
-       ePtr<gFont> fnt = new gFont("Arial", 20);
+       ePtr<gFont> fnt = new gFont("Regular", 20);
        painter.clip(eRect(offset, m_size));
        style.setStyle(painter, selected ? eWindowStyle::styleListboxSelected : eWindowStyle::styleListboxNormal);
        painter.clear();
@@ -219,7 +219,7 @@ void eListboxStringContent::setSize(const eSize &size)
 
 void eListboxStringContent::paint(gPainter &painter, eWindowStyle &style, const ePoint &offset, int selected)
 {
-       ePtr<gFont> fnt = new gFont("Arial", 20);
+       ePtr<gFont> fnt = new gFont("Regular", 20);
        painter.clip(eRect(offset, m_itemsize));
        style.setStyle(painter, selected ? eWindowStyle::styleListboxSelected : eWindowStyle::styleListboxNormal);
        painter.clear();
@@ -246,6 +246,7 @@ void eListboxStringContent::setList(std::list<std::string> &list)
        m_list = list;
        m_size = list.size();
        cursorHome();
+       m_listbox->entryReset(false);
 }
 
 //////////////////////////////////////
@@ -327,7 +328,7 @@ void eListboxPythonStringContent::setSize(const eSize &size)
 
 void eListboxPythonStringContent::paint(gPainter &painter, eWindowStyle &style, const ePoint &offset, int selected)
 {
-       ePtr<gFont> fnt = new gFont("Arial", 20);
+       ePtr<gFont> fnt = new gFont("Regular", 20);
        painter.clip(eRect(offset, m_itemsize));
        style.setStyle(painter, selected ? eWindowStyle::styleListboxSelected : eWindowStyle::styleListboxNormal);
        painter.clear();
@@ -366,9 +367,8 @@ void eListboxPythonStringContent::setList(PyObject *list)
                Py_INCREF(m_list);
        }
 
-       //always invalidate when we get a new list
        if (m_listbox)
-               m_listbox->invalidate();
+               m_listbox->entryReset(false);
 }
 
 PyObject *eListboxPythonStringContent::getCurrentSelection()
@@ -398,8 +398,8 @@ void eListboxPythonStringContent::invalidate()
 
 void eListboxPythonConfigContent::paint(gPainter &painter, eWindowStyle &style, const ePoint &offset, int selected)
 {
-       ePtr<gFont> fnt = new gFont("Arial", 20);
-       ePtr<gFont> fnt2 = new gFont("Arial", 16);
+       ePtr<gFont> fnt = new gFont("Regular", 20);
+       ePtr<gFont> fnt2 = new gFont("Regular", 16);
        painter.clip(eRect(offset, m_itemsize));
        style.setStyle(painter, selected ? eWindowStyle::styleListboxSelected : eWindowStyle::styleListboxNormal);
        painter.clear();
@@ -422,7 +422,7 @@ void eListboxPythonConfigContent::paint(gPainter &painter, eWindowStyle &style,
                                /* handle left part. get item from tuple, convert to string, display. */
                                
                        text = PyTuple_GetItem(item, 0);
-                       text = PyObject_Str(text);
+                       text = PyObject_Str(text); /* creates a new object - old object was borrowed! */
                        const char *string = (text && PyString_Check(text)) ? PyString_AsString(text) : "<not-a-string>";
                        eSize item_left = eSize(m_seperation, m_itemsize.height());
                        eSize item_right = eSize(m_itemsize.width() - m_seperation, m_itemsize.height());
@@ -525,7 +525,7 @@ void eListboxPythonConfigContent::paint(gPainter &painter, eWindowStyle &style,
                                                        /* plist is 0 or borrowed */
                                        }
                                }
-                               Py_XDECREF(type);
+                                       /* type is borrowed */
                        } else
                                eWarning("eListboxPythonConfigContent: second value of tuple is not a tuple.");
                                /* value is borrowed */