Hallo!
Ich versuche gerade, ein Plugin für ein eigenes Aufzeichnungsmenü zu entwickeln.
Dabei will ich aber die meisten Funktionen vom originalen verwenden. Also dachte
ich mir, ich leite von cMenuRecordings ab und füge meine Erweiterungen ein.
Nur bekomm ich beim VDR Start ein Undefinied Symbol. Es liegt an der
MainMenuAction, die new cMyMenuRecordings zurückliefern soll.
Hier mymenu.h:
C
#ifndef __MYMENU_H
#define __MYMENU_H
#include <vdr/menu.h>
class cArchive;
class cMyMenuRecordings : public cMenuRecordings {
private:
eOSState Play(void);
eOSState Delete(void);
public:
cMyMenuRecordings();
~cMyMenuRecordings();
static cArchive *Archive;
};
#endif
Alles anzeigen
und mymenu.c:
C
#include "mymenu.h"
#include "archive.h"
cMyMenuRecordings::cMyMenuRecordings()
{
}
cMyMenuRecordings::~cMyMenuRecordings()
{
}
eOSState cMyMenuRecordings::Play(void)
{
cMyRecording *ri = (cMyRecording *)Get(Current());
if (ri->Recording()->IsArchive()) {
Archive = new cArchive(ri);
if (!Archive->IsLinked()) {
delete Archive;
Archive = NULL;
return osContinue;
}
}
return cMenuRecordings::Play();
}
eOSState cMyMenuRecordings::Delete(void)
{
cMyRecording *ri = (cMyRecording *)Get(Current());
if (ri->Recording()->IsArchive()) {
Skins.Message(mtError, tr("Cannot delete archived recording!"));
return osContinue;
}
return cMenuRecordings::Delete();
}
Alles anzeigen
Welchen Fehler mache ich?