git.cweiske.de
/
enigma2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
default to 'complete' scan on DVB-C until problems with invalid NITs are fixed -...
[enigma2.git]
/
lib
/
gui
/
elistbox.h
diff --git
a/lib/gui/elistbox.h
b/lib/gui/elistbox.h
index 29349cbb2779255213d0ef8b0775891b67dbf8ad..2eb54dd96fe2ac717084e37f8b23cf26bd28a8ef 100644
(file)
--- a/
lib/gui/elistbox.h
+++ b/
lib/gui/elistbox.h
@@
-4,6
+4,9
@@
#include <lib/gui/ewidget.h>
#include <connection.h>
#include <lib/gui/ewidget.h>
#include <connection.h>
+class eListbox;
+class eSlider;
+
class iListboxContent: public iObject
{
public:
class iListboxContent: public iObject
{
public:
@@
-35,6
+38,8
@@
protected:
virtual int size()=0;
virtual int size()=0;
+ virtual int currentCursorSelectable();
+
void setListbox(eListbox *lb);
// void setOutputDevice ? (for allocating colors, ...) .. requires some work, though
void setListbox(eListbox *lb);
// void setOutputDevice ? (for allocating colors, ...) .. requires some work, though
@@
-49,9
+54,21
@@
protected:
class eListbox: public eWidget
{
class eListbox: public eWidget
{
+ void updateScrollBar();
public:
eListbox(eWidget *parent);
~eListbox();
public:
eListbox(eWidget *parent);
~eListbox();
+
+ PSignal0<void> selectionChanged;
+
+ enum {
+ showOnDemand,
+ showAlways,
+ showNever
+ };
+ void setScrollbarMode(int mode);
+ void setWrapAround(bool);
+
void setContent(iListboxContent *content);
/* enum Movement {
void setContent(iListboxContent *content);
/* enum Movement {
@@
-61,8
+78,13
@@
public:
moveEnd,
justCheck
}; */
moveEnd,
justCheck
}; */
-
+
+ int getCurrentIndex();
void moveSelection(int how);
void moveSelection(int how);
+ void moveSelectionTo(int index);
+ void moveToEnd();
+ bool atBegin();
+ bool atEnd();
enum ListboxActions {
moveUp,
enum ListboxActions {
moveUp,
@@
-75,7
+97,7
@@
public:
};
void setItemHeight(int h);
};
void setItemHeight(int h);
-
+ void setSelectionEnable(int en);
#ifndef SWIG
/* entryAdded: an entry was added *before* the given index. it's index is the given number. */
void entryAdded(int index);
#ifndef SWIG
/* entryAdded: an entry was added *before* the given index. it's index is the given number. */
void entryAdded(int index);
@@
-84,19
+106,24
@@
public:
/* entryChanged: the entry with the given index was changed and should be redrawn. */
void entryChanged(int index);
/* the complete list changed. you should not attemp to keep the current index. */
/* entryChanged: the entry with the given index was changed and should be redrawn. */
void entryChanged(int index);
/* the complete list changed. you should not attemp to keep the current index. */
- void entryReset();
+ void entryReset(
bool cursorHome=true
);
protected:
int event(int event, void *data=0, void *data2=0);
void recalcSize();
protected:
int event(int event, void *data=0, void *data2=0);
void recalcSize();
-
+
private:
private:
+ int m_scrollbar_mode, m_prev_scrollbar_page;
+ bool m_content_changed;
+ bool m_enabled_wrap_around;
+
int m_top, m_selected;
int m_itemheight;
int m_items_per_page;
int m_top, m_selected;
int m_itemheight;
int m_items_per_page;
+ int m_selection_enabled;
ePtr<iListboxContent> m_content;
ePtr<iListboxContent> m_content;
+ eSlider *m_scrollbar;
#endif
#endif
-
};
#endif
};
#endif