Ejemplo n.º 1
0
		public static bool ShowSubMenu ()
		{
			List<IMenuItem> items = new List<IMenuItem> ();
			var nameItem = new MenuItemWithCharacterInput("Name", "Enter Name", "Anders");
			var ageItem = new MenuItemWithNumericInput("Age", 29, 0, 100);
			var genderItem = new MenuItemWithOptions<string>("Option", new string[]{"Male","Female"});
			var programItem = new MenuItemWithCheckBox("Loves C#", true);
			var checkBoxWithActionItem = new MenuItemWithCheckBox("Execute", true, TurnCheckBoxOnOff);
			
			items.Add(nameItem);
			items.Add(ageItem);
			items.Add(genderItem);
			items.Add(programItem);
			items.Add(checkBoxWithActionItem);
			
			//Show the menu
			Menu m = new Menu ("Sub Menu", items);
			m.Show ();
			Console.WriteLine("Your name is " + nameItem.Text);
			Console.WriteLine("Your genger is " + genderItem.GetSelection().ToString());
			Console.WriteLine("Your age is " + ageItem.Value);
			if(programItem.Checked)
				Console.WriteLine(nameItem.Text + " loves C#");
			Console.WriteLine("Is checked: " + checkBoxWithActionItem.Checked);			
			return false;
		}
Ejemplo n.º 2
0
 static bool ShowWiFiMenu()
 {
     List<IMenuItem> items = new List<IMenuItem> ();
     var ssidItem = new MenuItemWithCharacterInput("SSID", "Enter SSID", settings.WiFiSettings.SSID);
     ssidItem.OnDialogExit += delegate(string text) {
         new Thread(delegate() {
             settings.WiFiSettings.SSID = text;
             settings.Save();
         }).Start();
     };
     var passwordItem = new MenuItemWithCharacterInput("Password", "Password", settings.WiFiSettings.Password, true);
     passwordItem.OnDialogExit += delegate(string text) {
         new Thread(delegate() {
             settings.WiFiSettings.Password = text;
             settings.Save();
         }).Start();
     };
     var encryptionItem = new MenuItemWithOptions<string>("Encryption", new string[]{"None","WPA/2"}, settings.WiFiSettings.Encryption ? 1 : 0);
     encryptionItem.OnOptionChanged += delegate(string newOpstion) {
         new Thread(delegate() {
             if(newOpstion == "None")
                 settings.WiFiSettings.Encryption = false;
             else
                 settings.WiFiSettings.Encryption = true;
             settings.Save();
         }).Start();
     };
     var connectItem = new MenuItemWithCheckBox("Connect", WiFiDevice.IsLinkUp(),
         delegate(bool WiFiOn)
      		{
             bool isOn = WiFiOn;
             var createFileStep = new StepContainer(
                 delegate()
                 {
                     WriteWpaSupplicantConfiguration(settings.WiFiSettings.SSID,settings.WiFiSettings.Password,settings.WiFiSettings.Encryption);
                     return true;
                 },
                 "Creating file", "Error creating WPA file");
             var progressDialog = new ProgressDialog("WiFi", createFileStep);
             progressDialog.Show();
             if(WiFiOn){
                 var turnOffStep = new StepContainer(
                 delegate()
                 {
                     WiFiDevice.TurnOff();
                     return true;
                 },
                 "Turning Off","Error turning off WiFi","WiFi Disabled");
                 var dialog = new ProgressDialog("WiFi", turnOffStep);
                 dialog.Show();
                 isOn = false;
             }
             else{
                 var turnOnStep = new StepContainer(
                 delegate()
                 {
                     return WiFiDevice.TurnOn(60000);
                 },
                 "Connecting", "Failed to connect");
                 Dialog dialog = new ProgressDialog("WiFi", turnOnStep);
                 if(dialog.Show()){
                     if(settings.WiFiSettings.ConnectAtStartUp == false){
                         var question = new QuestionDialog("Do you want to connect at start-up?", "Settings");
                         if(question.Show()){
                             new Thread(delegate() {
                                 settings.WiFiSettings.ConnectAtStartUp = true;
                                 settings.Save();
                             }).Start();
                         }
                     }
                     dialog = new InfoDialog("Connected Successfully " + WiFiDevice.GetIpAddress(), true, "WiFi");
                     dialog.Show();
                     isOn = true;
                 }
                 else{
                     isOn = false;
                 }
             }
             return isOn;
      		}
     );
     items.Add(ssidItem);
     items.Add(passwordItem);
     items.Add(encryptionItem);
     items.Add(connectItem);
     //Show the menu
     Menu m = new Menu ("WiFi Connection", items);
     m.Show ();
     return false;
 }