Moin !
Also hab es endlich hinbekommen mir nen Menü aufm OSD ausgeben zu lassen ( Objekt: MainMenuAction). Nur wie bekomme ich es jetzt hin wenn ich ein Menü Punkt auswähle und sich ein weiteres Menü öffnen soll ?
MfG
Tex
Moin !
Also hab es endlich hinbekommen mir nen Menü aufm OSD ausgeben zu lassen ( Objekt: MainMenuAction). Nur wie bekomme ich es jetzt hin wenn ich ein Menü Punkt auswähle und sich ein weiteres Menü öffnen soll ?
MfG
Tex
Dann erzeugst Du ein neues Menü und registrierst es via AddSubmenu oder so ähnlich, wenn ich mich recht erinnere. Dann musst Du allerdings in ProcessKey beachten, dass Du zunächst das Submenü über einen Tastendruck informierst.
Schau mal in menu.c von den VDR-Sourcen, so schwer ist es gar nicht.
Lars
Schwer isses meistens nicht, für mich aber neu !
Wo Muß ich denn dann das AddSubMenu aufrufen/ausführen ???
hi,
das sollte verstaendlich sein ...
... ansonsten einfach mal die sourcen anderer lesen
// --- cMenuVdrrip ---------------------------------------------------------
cMenuVdrrip::cMenuVdrrip():cOsdMenu("Vdrrip") {Set();}
void cMenuVdrrip::Set() {
Clear();
Add(new cOsdItem(tr("encode vdr-recording"), osUser1));
Add(new cOsdItem(tr("edit encoding queue"), osUser3));
Add(new cOsdItem(tr("edit templates"), osUser4));
}
eOSState cMenuVdrrip::ProcessKey(eKeys Key) {
eOSState state = cOsdMenu::ProcessKey(Key);
switch (state) {
case osUser1: {
AddSubMenu(new cMenuVdrripEncode);
break;
}
case osUser3: {
AddSubMenu(new cMenuVdrripQueue);
break;
}
case osUser4: {
AddSubMenu(new cMenuVdrripTemplates);
break;
}
default: break;
}
return state;
}
Alles anzeigen
gruesse
herbsl
Also die einzelnen Sub Menüs sind dann abgeleitet cOsdMenu Klassen (mal so aus reiner Verständniss Frage) ????
jep ...
... read the source, luke !
ciao
herbsl
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!