diff options
Diffstat (limited to 'plugin/setup.cpp')
-rw-r--r-- | plugin/setup.cpp | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/plugin/setup.cpp b/plugin/setup.cpp index 4709afe..4113d02 100644 --- a/plugin/setup.cpp +++ b/plugin/setup.cpp @@ -170,7 +170,7 @@ cSetupMarkAdList::cSetupMarkAdList(struct setup *Setup) } if (!strcmp(name,cname)) { - Add(new cOsdItem(cString::sprintf("%i\t%s",channel->Number(),channel->Name()))); + Add(new cSetupMarkAdListItem(cString::sprintf("%i\t%s",channel->Number(),channel->Name()))); free(cname); break; } @@ -183,9 +183,26 @@ cSetupMarkAdList::cSetupMarkAdList(struct setup *Setup) } } } + Sort(); closedir(dir); } +int cSetupMarkAdListItem::Compare(const cListObject &ListObject) const +{ + const cSetupMarkAdListItem *la=(cSetupMarkAdListItem *) &ListObject; + const char *t1=strchr(Text(),'\t'); + const char *t2=strchr(la->Text(),'\t'); + if ((t1) && (t2)) + { + return strcasecmp(t1,t2); + } + else + { + return 0; + } + +} + eOSState cSetupMarkAdList::ProcessKey (eKeys Key) { eOSState state = cOsdMenu::ProcessKey(Key); |