public ActivityMappingControl(ActivityTypeMapping ac) { this.ac = ac; Init(); lblSTActivity.Tag = ac.SportTracks; lblSTActivity.Text = Plugin.SportTrackActivityTypes[ac.SportTracks]; string funbeatName = string.Empty; foreach (FunbeatService.FunbeatActivityType type in FunbeatService.FunbeatActivityTypes) if (type.Id == ac.Funbeat) { funbeatName = type.Name; break; } int selectedIndex = cbFunbeatActivity.FindString(funbeatName); cbFunbeatActivity.SelectedIndex = selectedIndex; }
internal static void PopulateInstance(System.Xml.XmlElement pluginNode, XmlNamespaceManager nsmgr, XmlDocument xmlDoc) { instance = new Settings(); foreach (XmlNode node in pluginNode.ChildNodes) { if (node.Name == "User") { instance.User.Username = node.Attributes[0].Value; //Saved username only used to display to user on settings page instance.User.HashedPassword = node.Attributes[1].Value; // Password only used to display to user on settings page } else if (node.Name == "Login") { instance.User.LoginId = node.Attributes[0].Value; instance.User.LoginSecret = node.Attributes[1].Value; } else if (node.Name == "ExportNameInComment") { instance.boExportNameInComment = bool.Parse(node.Attributes[0].Value); } else if (node.Name == "Mappings") { foreach (XmlNode mapping in node.ChildNodes) { ActivityTypeMapping atm = new ActivityTypeMapping(); atm.SportTracks = mapping.Attributes["st2"].Value; atm.Funbeat = int.Parse(mapping.Attributes["funbeat"].Value); instance.ActivityTypeMappings.Add(atm); } } else if (node.Name == "EquipmentMappings") { foreach (XmlNode mapping in node.ChildNodes) { EquipmentTypeMapping etm = new EquipmentTypeMapping(); etm.SportTracks = mapping.Attributes["st2"].Value; etm.Funbeat = mapping.Attributes["funbeat"].Value; instance.EquipmentTypeMappings.Add(etm); } } else if (node.Name == "RoutePrivacy") { int privacy; if (int.TryParse(node.Attributes[0].Value, out privacy)) instance.RoutePrivacyIndex = privacy; } } }
public SettingsControl() { InitializeComponent(); try { txtUsername.Text = Settings.Settings.Instance.User.Username; txtPassword.Text = Settings.Settings.Instance.User.Password; this.txtUsername.TextChanged += new System.EventHandler(this.OnUsernameChanged); this.txtPassword.TextChanged += new System.EventHandler(this.txtPassword_TextChanged); exportNameCheckBox.Checked = Settings.Settings.Instance.boExportNameInComment; String [] privacyStrings = {Privacy.NotSet.ToString(), Privacy.Me.ToString(), Privacy.Friends.ToString(), Privacy.Everyone.ToString()}; this.RoutePrivacyComboBox.Items.AddRange(privacyStrings); this.RoutePrivacyComboBox.SelectedIndex = Settings.Settings.Instance.RoutePrivacyIndex; // Activity type mappings List<Control> amcs = new List<Control>(); ActivityTypeMapping active = null; foreach (string ac in Plugin.SportTrackActivityTypes.Keys) { active = null; foreach (ActivityTypeMapping atm in Settings.Settings.Instance.ActivityTypeMappings) if (atm.SportTracks == ac) { active = atm; break; } if (active == null) { active = new ActivityTypeMapping(); active.SportTracks = ac; active.Funbeat = 51; Settings.Settings.Instance.ActivityTypeMappings.Add(active); } ActivityMappingControl amc = new ActivityMappingControl(active); amcs.Add(amc); } actMappingsFlowLayoutPanel.Controls.AddRange(amcs.ToArray()); // Equipment mappings List<Control> emcs = new List<Control>(); EquipmentTypeMapping activeEq = null; foreach (string ac in Plugin.SportTrackEquipment.Keys) { activeEq = null; foreach (EquipmentTypeMapping etm in Settings.Settings.Instance.EquipmentTypeMappings) if (etm.SportTracks == ac) { activeEq = etm; break; } if (activeEq == null) { activeEq = new EquipmentTypeMapping(); activeEq.SportTracks = ac; activeEq.Funbeat = ""; Settings.Settings.Instance.EquipmentTypeMappings.Add(activeEq); } EquipmentMappingControl emc = new EquipmentMappingControl(activeEq); emcs.Add(emc); } eqMappingsFlowLayoutPanel.Controls.AddRange(emcs.ToArray()); equipmentMappingsGroupBox.Location = new Point(actMappingsGroupBox.Location.X, actMappingsGroupBox.Location.Y + actMappingsGroupBox.Size.Height + 10); } catch (Exception ex) { TextBox ErrMessageBox = new TextBox(); ErrMessageBox.Text = string.Concat("Failed to read training type mappings from funbeat.\r\nException message:\r\n", ex.ToString()); ErrMessageBox.Size = actMappingsFlowLayoutPanel.Size; ErrMessageBox.ReadOnly = true; ErrMessageBox.Multiline = true; actMappingsFlowLayoutPanel.Controls.Add(ErrMessageBox); } }