Hi all!
Merry Christmas and happy new Year 2014!
After some time, I post a new topic again. This time I'm striking with the "MenuBackend library". In the last days I've been tracking its older post:
http://forum.arduino.cc/index.php/topic,38053.0.html
but it seems a little bit updated. Anyway I have a problem whenever my application starts, because it does never go to the root MenuItem until I force my code to go there. Here is a piece of my code:
//beneath is list of menu items needed to build the menu
MenuItem miStart = MenuItem("Start");
MenuItem miStatus = MenuItem("Status");
MenuItem miEvent1 = MenuItem("Event1");
MenuItem miEvent2 = MenuItem("Event2");
MenuItem miAlarms = MenuItem("Alarms");
MenuItem miMemory = MenuItem("Datalog");
MenuItem miUserTab = MenuItem("UserTable");
MenuItem miLogTab = MenuItem("LogTable");
MenuItem miDiagn = MenuItem("Diagnostic");
MenuItem miDigIn = MenuItem("DigIn");
MenuItem miDigOut = MenuItem("DigOut");
MenuItem miCOM1 = MenuItem("COM1");
MenuItem miCOM2 = MenuItem("COM2");
MenuItem miSetUp = MenuItem("SetUp");
MenuItem miRTC = MenuItem("RTC");
MenuItem miLang = MenuItem("Lang");
//this function builds the menu and connects the correct items together
void MenuSetup() {
menu.getRoot().add(miStart);
miStart.addRight( miStatus );
miStatus.addRight( miMemory );
miStatus.addLeft( miStart );
miMemory.addRight( miDiagn );
miMemory.addLeft( miStatus );
miDiagn.addRight( miSetUp );
miDiagn.addLeft( miMemory );
miSetUp.addRight( miStart );
miSetUp.addLeft( miDiagn );
miStatus.addAfter( miEvent1 );
miEvent1.addAfter( miEvent2 );
miEvent1.addBefore( miAlarms );
miEvent1.addRight( miDiagn );
miEvent2.addAfter( miAlarms );
miEvent2.addBefore( miEvent1 );
miEvent2.addRight( miDiagn );
miAlarms.addAfter( miEvent1 );
miAlarms.addBefore( miEvent2 );
miAlarms.addRight( miDiagn );
miMemory.addAfter( miUserTab );
miUserTab.addAfter( miLogTab );
miUserTab.addRight( miDiagn );
miUserTab.addBefore( miLogTab );
miLogTab.addRight( miDiagn );
miLogTab.addBefore( miUserTab );
miLogTab.addAfter( miUserTab );
miDiagn.addAfter( miDigIn );
miDigIn.addBefore( miCOM2 );
miDigIn.addAfter( miDigOut );
miDigIn.addRight( miSetUp );
miDigOut.addBefore( miDigIn );
miDigOut.addAfter( miCOM1 );
miDigOut.addRight( miSetUp );
miCOM1.addBefore( miDigOut );
miCOM1.addAfter( miCOM2 );
miCOM1.addRight( miSetUp );
miCOM2.addBefore( miCOM1 );
miCOM2.addAfter( miDigIn );
miCOM2.addRight( miSetUp );
miSetUp.addAfter( miRTC );
miRTC.addRight( miStart );
miRTC.addBefore( miLang );
miRTC.addAfter( miLang );
miLang.addRight( miStart );
miLang.addBefore( miRTC );
miLang.addAfter( miRTC );
}
I assume that the root item must be "miStart" item, but it doesn't seem so.
Regards,