eListbox::~eListbox()
{
+ if (m_scrollbar)
+ delete m_scrollbar;
+
ePtr<eActionMap> ptr;
eActionMap::getInstance(ptr);
ptr->unbindAction(this, 0);
void eListbox::moveSelectionTo(int index)
{
- m_content->cursorHome();
- m_content->cursorMove(index);
- moveSelection(justCheck);
+ if ( m_content )
+ {
+ m_content->cursorHome();
+ m_content->cursorMove(index);
+ moveSelection(justCheck);
+ }
+}
+
+int eListbox::getCurrentIndex()
+{
+ if ( m_content && m_content->cursorValid() )
+ return m_content->cursorGet();
+ return 0;
}
void eListbox::updateScrollBar()
}
}
-void eListbox::entryReset()
+void eListbox::entryReset(bool cursorHome)
{
m_content_changed=true;
m_prev_scrollbar_page=-1;
- if (m_content)
- m_content->cursorHome();
- m_top = 0;
- m_selected = 0;
+ if ( cursorHome )
+ {
+ if (m_content)
+ m_content->cursorHome();
+ m_top = 0;
+ m_selected = 0;
+ }
moveSelection(justCheck);
invalidate();
}