Ich habe mir einen Schnellumschalter für den LB / PS Video Modus gebastelt.
Dieser funktionierte auch ohne Probleme.
Nun habe mich mich mal überwunden und das aktuelle CVS gezogen.
Dort musste ich feststellen, dass das Neutrinomenü jetzt einie eigene Datei besitzt.
Nun ja. Ich habe meine kleine Anpassung gemacht und nun funktioniert dieser Umschalter nicht mehr. Bzw. ich bekomme das CDK nicht mehr compiled.
Hier ersteinmal die Anpassungen:
neutrino.cpp
Code: Alles auswählen
// Formatswitch
#define MY_VIDEOFORMAT_OPTION_COUNT 2
const CMenuOptionChooser::keyval MY_VIDEOFORMAT_OPTIONS[MY_VIDEOFORMAT_OPTION_COUNT] =
{
{ 2, LOCALE_MY_VIDEO_LB },
{ 3, LOCALE_MY_VIDEO_PS }
};
class MyVideoSettings : public CMenuWidget, CChangeObserver
{
public:
MyVideoSettings() : CMenuWidget(LOCALE_MY_VIDEO_LBPS, "video.raw")
{
addItem(GenericMenuSeparator);
CMenuOptionChooser * oj = new CMenuOptionChooser(LOCALE_MY_VIDEO_LBPS, &g_settings.video_Format, MY_VIDEOFORMAT_OPTIONS, MY_VIDEOFORMAT_OPTION_COUNT, true, this, CRCInput::RC_blue, NEUTRINO_ICON_BUTTON_BLUE);
addItem(oj);
};
virtual bool changeNotify(const neutrino_locale_t OptionName, void *)
{
if (ARE_LOCALES_EQUAL(OptionName, LOCALE_MY_VIDEO_LBPS))
{
g_Controld->setVideoFormat(g_settings.video_Format);
}
return true;
};
virtual void paint()
{
g_settings.video_Format = g_Controld->getVideoFormat();
CMenuWidget::paint();
};
};
// Ende
In der Abfrage if( g_RemoteControl->are_subchannels ) vor dem return true;
Code: Alles auswählen
if ((g_settings.video_Format == 2 || g_settings.video_Format == 3) && g_Controld->getAspectRatio() != 0)
{
menu->addItem(GenericMenuSeparatorLine);
menu->addItem(new CMenuForwarder(LOCALE_MY_VIDEO_LBPS, true, NULL, new MyVideoSettings() , NULL, CRCInput::RC_blue, NEUTRINO_ICON_BUTTON_BLUE));
menu->addItem(GenericMenuSeparator);
}
error: `MyVideoSettings' has not been declared
Ändere ich new MyVideoSettings auf &myvideoSettings bekomme ich die gleiche Meldung nur mit dem Hinweis das myvideoSettings nicht deklariert ist.
Achso, das Menü habe ich auch entsprechend erweitert:
neutrino_menu.cpp
In CNeutrinoApp::InitMainMenu habe ich CMenuWidget &myvideoSettings, hinzugefügt
neutrino.cpp
MyVideoSettings myideoSettings;
In initMainMenu auch myvideoSettings;
Und in der neutrino.h habe ich die Anpassung auch gemacht.
Wie anfangs schon geschrieben. Vor der Umstellung (neutrino_menu.cpp) funktionierte das auch wunderbar. Nur jetzt bekomme ich halt den Fehler beim compilen und weis echt nicht mehr weiter.
Sicherlich etwas was meine müden Augen übersehen.
Wäre nett wenn das mal eben jemand überfliegen könnte.
Gruß