Zusatzmenu fuer Einsteiger

kerlimann
Semiprofi
Semiprofi
Beiträge: 1208
Registriert: Donnerstag 26. Dezember 2002, 07:26

Zusatzmenu fuer Einsteiger

Beitrag von kerlimann »

hi,
hier sind ein paar codeschnipsel (diff), wie man sich ein zusatzmenu baut. hat bisher keine funktion, ausser das ihr ein menu mehr habt. es mag dem ein oder anderen als einstieg dienen, nur dazu ist es gedacht. fuer den eingefleischten DEV ist es sicherlich laecherlich. sollten allerdings grundlegende fehler drin sein, wuerde ich mich ueber ein feedback freuen.

ich werde dieses menu hier nach und nach erweitern. wer dann den erweiterten code einbaut (wenn ueberhaupt), und in welchem menu er ihn einbaut, ist im endeffekt egal (geschmackssache).
ich habe dieses menu EXPERIMENTAL genannt. auf die locale files greife ich bisher nicht zurueck, bin halt kein language freak, englisch genuegt mir, und EXPERIMENTAL ist eigentlich in jeder sprache selbsterklaerend.

zu aendern sind neutrino.cpp und neutrino.h:

Code: Alles auswählen

--- neutrino.cpp	2003-10-19 18:10:33.000000000 +0200
+++ neutrino.cpp.xtramenu	2003-10-19 17:34:11.000000000 +0200
@@ -1111,7 +1111,8 @@
 void CNeutrinoApp::InitMainMenu(CMenuWidget &mainMenu, CMenuWidget &mainSettings,  CMenuWidget &audioSettings, CMenuWidget &parentallockSettings,
 				CMenuWidget &networkSettings, CMenuWidget &recordingSettings, CMenuWidget &colorSettings, CMenuWidget &lcdSettings,
 				CMenuWidget &keySettings, CMenuWidget &videoSettings, CMenuWidget &languageSettings, CMenuWidget &miscSettings,
-				CMenuWidget &service, CMenuWidget &fontSettings, CMenuWidget &mp3picSettings, CMenuWidget &streamingSettings)
+				CMenuWidget &service, CMenuWidget &fontSettings, CMenuWidget &mp3picSettings, CMenuWidget &streamingSettings,
+				CMenuWidget &experimental)
 {
 	dprintf(DEBUG_DEBUG, "init mainmenue\n");
 	mainMenu.addItem(GenericMenuSeparator);
@@ -1132,7 +1133,8 @@
 	mainMenu.addItem(new CMenuForwarder("mainmenu.settings", true, NULL, &mainSettings));
 	mainMenu.addItem(new CLockedMenuForwarder("mainmenu.service", g_settings.parentallock_pincode, false, true, NULL, &service) );
 	mainMenu.addItem(GenericMenuSeparatorLine);
-
+	mainMenu.addItem(new CLockedMenuForwarder("Experimental", g_settings.parentallock_pincode, false, true, NULL, &experimental) );
+	mainMenu.addItem(GenericMenuSeparatorLine);
 	mainMenu.addItem(new CMenuForwarder("mainmenu.sleeptimer", true, NULL, new CSleepTimerWidget));
 	mainMenu.addItem(new CMenuForwarder("mainmenu.shutdown", true, NULL, this, "shutdown", true, CRCInput::RC_standby, "power.raw") );

@@ -1389,6 +1391,16 @@
 	}
 }

+
+void CNeutrinoApp::InitExperimentalSettings(CMenuWidget &experimental)
+{
+	dprintf(DEBUG_DEBUG, "init experimentalSettings\n");
+	experimental.addItem(GenericMenuSeparator);
+	experimental.addItem(GenericMenuBack);
+	experimental.addItem(GenericMenuSeparatorLine);
+
+}
+
 void CNeutrinoApp::InitMp3PicSettings(CMenuWidget &mp3PicSettings)
 {
 	dprintf(DEBUG_DEBUG, "init mp3_pic_settings\n");
@@ -2500,14 +2512,18 @@
 	CMenuWidget mp3picSettings("mp3picsettings.general", NEUTRINO_ICON_SETTINGS);
 	CMenuWidget scanSettings("servicemenu.scants", NEUTRINO_ICON_SETTINGS);
 	CMenuWidget service("servicemenu.head", NEUTRINO_ICON_SETTINGS);
-
+	CMenuWidget experimental("EXPERIMENTAL", NEUTRINO_ICON_SETTINGS);
+
 	InitMainMenu(mainMenu, mainSettings, audioSettings, parentallockSettings, networkSettings, recordingSettings,
 					 colorSettings, lcdSettings, keySettings, videoSettings, languageSettings, miscSettings,
-					 service, fontSettings, mp3picSettings, streamingSettings);
+					 service, fontSettings, mp3picSettings, streamingSettings, experimental);

 	//service
 	InitServiceSettings(service, scanSettings);

+	//experimental
+	InitExperimentalSettings(experimental);
+
 	//language Setup
 	InitLanguageSettings(languageSettings);
 

Code: Alles auswählen

--- neutrino.h	2003-10-19 18:12:59.000000000 +0200
+++ neutrino.h.xtramenu	2003-10-19 17:14:06.000000000 +0200
@@ -146,6 +146,7 @@
 		void InitZapper();
 		void InitKeySettings(CMenuWidget &);
 		void InitServiceSettings(CMenuWidget &, CMenuWidget &);
+		void InitExperimentalSettings(CMenuWidget &);
 		void InitColorSettingsMenuColors(CMenuWidget &);
 		void InitAudioSettings(CMenuWidget &audioSettings, CAudioSetupNotifier* audioSetupNotifier);
 		void InitColorSettings(CMenuWidget &, CMenuWidget &);
@@ -169,7 +170,7 @@
 		                  CMenuWidget &parentallockSettings, CMenuWidget &networkSettings, CMenuWidget &networkSettings,
 		                  CMenuWidget &colorSettings, CMenuWidget &lcdSettings, CMenuWidget &keySettings, CMenuWidget &videoSettings,
 		                  CMenuWidget &languageSettings, CMenuWidget &miscSettings, CMenuWidget &service, CMenuWidget &fontSettings,
-                        	  CMenuWidget &mp3picSettings, CMenuWidget &streamingSettings);
+                        	  CMenuWidget &mp3picSettings, CMenuWidget &streamingSettings, CMenuWidget &experimental);
 		void SetupFonts();
 		void SetupTiming();
 		void SetupFrameBuffer();
die diffs laufen mit dem HEAD von heute, 19.OCT.03. zum spaeteren zeitpunkt sind diese ggf anzupassen.