+ if (beforeCurrent && m_size)
+ m_list.insert(m_cursor, service);
+ else
+ m_list.push_back(service);
+ if (m_size++)
+ {
+ ++m_cursor_number;
+ if (m_listbox)
+ m_listbox->entryAdded(m_cursor_number-1);
+ }
+ else
+ {
+ m_cursor = m_list.begin();
+ m_cursor_number=0;
+ m_listbox->entryAdded(0);
+ }
+}
+
+void eListboxServiceContent::removeCurrent()
+{
+ if (m_size && m_listbox)
+ {
+ if (m_cursor_number == --m_size)
+ {
+ m_list.erase(m_cursor--);
+ if (m_size)
+ {
+ --m_cursor_number;
+ m_listbox->entryRemoved(m_cursor_number+1);
+ }
+ else
+ m_listbox->entryRemoved(m_cursor_number);
+ }
+ else
+ {
+ m_list.erase(m_cursor++);
+ m_listbox->entryRemoved(m_cursor_number);
+ }
+ }