UK Idee fuer cvs menu edits ide on/off menu

PT-1
Moderator english
Beiträge: 2458
Registriert: Donnerstag 20. Dezember 2001, 00:00

UK Idee fuer cvs menu edits ide on/off menu

Beitrag von PT-1 »

cvs menu edits ide on/off menu



1st you need to edit /var/etc/init.d/rcS starting here

add this line after the # If appropriate, load ide drivers and file system drivers

Code: Alles auswählen

if [ -e /var/etc/.hdd ]; then
so it looks like this

Code: Alles auswählen

# If appropriate, load ide drivers and file system drivers
	if [ -e /var/etc/.hdd ]; 
then add this line before the # Mount file systems in /etc/fstab
fi
so it looks like this

Code: Alles auswählen

	fi
# Mount file systems in /etc/fstabthe 
The ide drivers will now only load when /var/etc/.hdd exists

neutrino.cpp

add the following to the top of your neutrino.cpp after all of the includes

Code: Alles auswählen

//int for ide
	int active_ide=0; 
add the following above your main menu function so before this bit
void CNeutrinoApp::InitMainMenu(CMenuWidget &mainMenu,

Code: Alles auswählen

// define IDE select
	#define IDESEL_OPTION_COUNT 2
	const CMenuOptionChooser::keyval IDESEL_OPTIONS[IDESEL_OPTION_COUNT] = {
		{ 0, LOCALE_IDEON },
		{ 1, LOCALE_IDEOFF }
	}; 
then add this little snippet into your main menu before

Code: Alles auswählen

	mainMenu.addItem(GenericMenuSeparator);

	mainMenu.addItem(new CMenuForwarder(LOCALE_MAINMENU_TVMODE, true, NULL, this, "tv", CRCInput::RC_red, NEUTRINO_ICON_BUTTON_RED), true); 

and after

Code: Alles auswählen


								CMenuWidget &streamingSettings,
								CMenuWidget &moviePlayer)
{
	dprintf(DEBUG_DEBUG, "init mainmenue\n");

Code: Alles auswählen

//ide Menu
	isopen = fopen("/var/etc/.hdd", "r");
	if(isopen){
		fclose(isopen);
		active_ide = 0;
	}
	isopen = fopen("/var/etc/.hddoff", "r");
	if(isopen){
		fclose(isopen);
		active_ide = 1;
	}

	CMenuWidget* ideMenu = new CMenuWidget(LOCALE_IDEMENU, "softupdate.raw");
		ideMenu->addItem(GenericMenuSeparator);
		ideMenu->addItem(GenericMenuBack);
		ideMenu->addItem(GenericMenuSeparatorLine);
		ideMenu->addItem(new CMenuForwarder(LOCALE_MAINSETTINGS_SAVESETTINGSNOW , true, NULL, this, "applyidemenu", CRCInput::RC_red, NEUTRINO_ICON_BUTTON_RED));
		ideMenu->addItem(GenericMenuSeparatorLine);
		CMenuOptionChooser *ide_sel = ( new CMenuOptionChooser(LOCALE_IDEMENU_SELIDE, &active_ide, IDESEL_OPTIONS, IDESEL_OPTION_COUNT, true));
		ideMenu->addItem(ide_sel);
	// End IDE Menu
Then this bit where the dwmenu is called

Code: Alles auswählen

	if (g_PluginList->hasPlugin(CPlugins::P_TYPE_SCRIPT))
		mainMenu.addItem(new CMenuForwarder(LOCALE_MAINMENU_SCRIPTS, true, NULL, new CPluginList(LOCALE_MAINMENU_SCRIPTS,CPlugins::P_TYPE_SCRIPT), "",
											CRCInput::convertDigitToKey(shortcut++)));
//add dwmenu and submenu's
	mainMenu.addItem(new CMenuForwarder(LOCALE_DWMENU, true, NULL, dwMenu, NULL, CRCInput::convertDigitToKey(shortcut++)));


	dwMenu->addItem(new CMenuForwarder(LOCALE_IDEMENU, true, NULL, ideMenu, NULL, CRCInput::convertDigitToKey(dwshortcut++)));
//end dwmenu and submenu's
	}					//End userlevel 1+2
	mainMenu.addItem(GenericMenuSeparatorLine);

	mainMenu.addItem(new CMenuForwarder(LOCALE_MAINMENU_SETTINGS, true, NULL, &mainSettings, NULL,
then just add the following to the "else if(actionKey==" bit of the code

Code: Alles auswählen

//end ucode menu 
//ide code
	else if(actionKey == "applyidemenu"){

		if(active_ide == 0){
			remove("/var/etc/.hddoff");
			system("touch /var/etc/.hdd");
		}
		else if(active_ide == 1){
			remove("/var/etc/.hdd");
			system("touch /var/etc/.hddoff");
		}
	}


//end ide code
you also need to edit the locals.h, locals_intern.h and english.locale

to add these items
LOCALE_IDEMENU_SELIDE,
LOCALE_DEFAULTIDE,
LOCALE_IDEON,
LOCALE_IDEOFF,
LOCALE_IDEMENU,
LOCALE_IDE_INFO,
just_me
Einsteiger
Einsteiger
Beiträge: 123
Registriert: Montag 28. November 2005, 11:31

Re: UK Idee fuer cvs menu edits ide on/off menu

Beitrag von just_me »

PT-1 hat geschrieben:

Code: Alles auswählen

if [ -e /var/etc/.hdd ]; then
Ich glaube nicht, dass es eine gute Idee ist, Einstellungen mithilfe versteckter Dateien vorzunehmen.
jmittelst
Tuxboxer
Tuxboxer
Beiträge: 6044
Registriert: Montag 17. November 2003, 06:48

Re: UK Idee fuer cvs menu edits ide on/off menu

Beitrag von jmittelst »

just_me hat geschrieben:
PT-1 hat geschrieben:

Code: Alles auswählen

if [ -e /var/etc/.hdd ]; then
Ich glaube nicht, dass es eine gute Idee ist, Einstellungen mithilfe versteckter Dateien vorzunehmen.
Das ist aber im Tuxbox-Projekt doch eingeführt.

In meinem Ordner /var/etc tummeln sich unter anderem: .cable - .hw_sections - .no_enxwatchdog - .no_watchdog - .oldrec - .pmt_update - .sptsfix

cu
Jens
PT-1
Moderator english
Beiträge: 2458
Registriert: Donnerstag 20. Dezember 2001, 00:00

Beitrag von PT-1 »

Don't shoot the Messenger ;-)

Ich habe den Vorschlag mal weiter geleitet
ellie1998
Neugieriger
Neugieriger
Beiträge: 10
Registriert: Mittwoch 19. April 2006, 11:28

Re: UK Idee fuer cvs menu edits ide on/off menu

Beitrag von ellie1998 »

just_me hat geschrieben:
PT-1 hat geschrieben:

Code: Alles auswählen

if [ -e /var/etc/.hdd ]; then
Ich glaube nicht, dass es eine gute Idee ist, Einstellungen mithilfe versteckter Dateien vorzunehmen.
it is used in the cvs
/var/etc/.boot_info
/var/etc/.hw_sections
/var/etc/.no_watchdog

I didn't chose to make it hidden, just followed what the cvs already does.

sorry I can't type german
-----------------------------------------
es wird in den cvs
/var/etc/.boot_info
/var/etc/.hw_sections
/var/etc/.no_watchdog
das verwendet ich nicht beschloß, es zu bilden versteckt, gerade gefolgt, was die cvs bereits.
traurig kann ich nicht Deutschen schreiben
.
Have Fun

.