protected void ReadSavedConfig() { if (File.Exists(ConfigFilePath)) { XmlDocument xmldoc = new XmlDocument(); xmldoc.Load(ConfigFilePath); XmlNode libraryNode = xmldoc.SelectSingleNode("Library"); XmlNode presetsNode = libraryNode.SelectSingleNode("Presets"); XmlNodeList presetNodes = presetsNode.SelectNodes("Preset"); foreach (XmlNode presetNode in presetNodes) { // Create preset object, then assign Name, Territory, etc. Presets.Add(new WaymarkPreset()); Presets.Last().Name = presetNode.Attributes.GetNamedItem("Name").Value; Presets.Last().ZoneID = UInt16.Parse(presetNode.Attributes.GetNamedItem("ZoneID").Value); Presets.Last().LastModified = DateTimeOffset.Parse(presetNode.Attributes.GetNamedItem("Time").Value); XmlNodeList waymarkNodes = presetNode.SelectNodes("Waymarks/Waymark"); // Assign the data for each waymark in the preset. foreach (XmlNode waymarkNode in waymarkNodes) { int waymarkNumber = WaymarkPreset.GetWaymarkNumber(waymarkNode.Attributes.GetNamedItem("ID").Value.First()); if (waymarkNumber < 0) { throw new Exception("Error: Invalid waymark ID while reading waymark library."); } Presets.Last().Waymarks[waymarkNumber].IsEnabled = bool.Parse(waymarkNode.Attributes.GetNamedItem("Active").Value); XmlNode coordsNode = waymarkNode.SelectSingleNode("Coordinates"); Presets.Last().Waymarks[waymarkNumber].Pos.X = Double.Parse(coordsNode.Attributes.GetNamedItem("X").Value); Presets.Last().Waymarks[waymarkNumber].Pos.Y = Double.Parse(coordsNode.Attributes.GetNamedItem("Y").Value); Presets.Last().Waymarks[waymarkNumber].Pos.Z = Double.Parse(coordsNode.Attributes.GetNamedItem("Z").Value); } } } }
public void ReplacePreset(uint index, WaymarkPreset preset) { if (index < Presets.Length) { Presets[index] = preset; } }
public GamePresetContainer(GamePresetContainer objToCopy) { Presets = new WaymarkPreset[objToCopy.Presets.Length]; for (uint i = 0u; i < Presets.Length; ++i) { Presets[i] = new WaymarkPreset(objToCopy.Presets[i]); } }
public GamePresetContainer(uint numPresets) { Presets = new WaymarkPreset[numPresets]; for (uint i = 0u; i < Presets.Length; ++i) { Presets[i] = new WaymarkPreset(); } }
private void LibraryPresetNewButton_Click(object sender, EventArgs e) { WaymarkPreset newPreset = new WaymarkPreset(); newPreset.Name = "New Preset"; mPresetLibrary.AddPreset(newPreset); PopulateLibraryListBox(); }
public WaymarkPreset(WaymarkPreset objToCopy) { Name = objToCopy.Name; ZoneID = objToCopy.ZoneID; LastModified = objToCopy.LastModified; Waymarks = new Waymark[objToCopy.Waymarks.Length]; for (uint i = 0u; i < Waymarks.Length; ++i) { Waymarks[i] = new Waymark(objToCopy.Waymarks[i]); } }
private void CopyToLibraryButton_Click(object sender, EventArgs e) { if (GamePresetListBox.SelectedIndex > -1 && GamePresetListBox.SelectedIndex < mSettings.GameDataSettings.NumberOfPresets && CharacterListDropdown.SelectedIndex > -1 && CharacterListDropdown.SelectedIndex < mCharacterFolderList.Length) { WaymarkPreset newPreset = new WaymarkPreset(mGamePresetContainer.Presets[GamePresetListBox.SelectedIndex]); newPreset.Name = mSettings.CharacterAliasSettings.GetAlias(mCharacterFolderList[CharacterListDropdown.SelectedIndex].Split('\\').Last()) + " Slot " + (GamePresetListBox.SelectedIndex + 1).ToString(); mPresetLibrary.AddPreset(newPreset); PopulateLibraryListBox(); } }
protected int PresetSortCompare(WaymarkPreset a, WaymarkPreset b) { if (a == null || b == null) { return(0); } else { return(a.ZoneID.CompareTo(b.ZoneID)); } }
public void Reload() { ReadSavedConfig(); WaymarkPreset.SetWaymarkIDOrder(WaymarkIDOrder); }
private void LibraryPresetExportButton_Click(object sender, EventArgs e) { if (LibraryListBox.SelectedIndex > -1 && LibraryListBox.SelectedIndex < mPresetLibrary.Presets.Count) { PresetExportObject exportObj = new PresetExportObject(); exportObj.Name = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Name; exportObj.ZoneID = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].ZoneID; exportObj.Time = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].LastModified; exportObj.A.X = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('A')].Pos.X; exportObj.A.Y = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('A')].Pos.Y; exportObj.A.Z = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('A')].Pos.Z; exportObj.A.ID = WaymarkPreset.GetWaymarkNumber('A'); exportObj.A.Active = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('A')].IsEnabled; exportObj.B.X = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('B')].Pos.X; exportObj.B.Y = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('B')].Pos.Y; exportObj.B.Z = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('B')].Pos.Z; exportObj.B.ID = WaymarkPreset.GetWaymarkNumber('B'); exportObj.B.Active = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('B')].IsEnabled; exportObj.C.X = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('C')].Pos.X; exportObj.C.Y = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('C')].Pos.Y; exportObj.C.Z = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('C')].Pos.Z; exportObj.C.ID = WaymarkPreset.GetWaymarkNumber('C'); exportObj.C.Active = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('C')].IsEnabled; exportObj.D.X = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('D')].Pos.X; exportObj.D.Y = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('D')].Pos.Y; exportObj.D.Z = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('D')].Pos.Z; exportObj.D.ID = WaymarkPreset.GetWaymarkNumber('D'); exportObj.D.Active = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('D')].IsEnabled; exportObj.One.X = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('1')].Pos.X; exportObj.One.Y = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('1')].Pos.Y; exportObj.One.Z = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('1')].Pos.Z; exportObj.One.ID = WaymarkPreset.GetWaymarkNumber('1'); exportObj.One.Active = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('1')].IsEnabled; exportObj.Two.X = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('2')].Pos.X; exportObj.Two.Y = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('2')].Pos.Y; exportObj.Two.Z = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('2')].Pos.Z; exportObj.Two.ID = WaymarkPreset.GetWaymarkNumber('2'); exportObj.Two.Active = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('2')].IsEnabled; exportObj.Three.X = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('3')].Pos.X; exportObj.Three.Y = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('3')].Pos.Y; exportObj.Three.Z = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('3')].Pos.Z; exportObj.Three.ID = WaymarkPreset.GetWaymarkNumber('3'); exportObj.Three.Active = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('3')].IsEnabled; exportObj.Four.X = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('4')].Pos.X; exportObj.Four.Y = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('4')].Pos.Y; exportObj.Four.Z = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('4')].Pos.Z; exportObj.Four.ID = WaymarkPreset.GetWaymarkNumber('4'); exportObj.Four.Active = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('4')].IsEnabled; string objString = JsonConvert.SerializeObject(exportObj); Interaction.InputBox("Copy the JSON export string below:", "Preset Export", objString); } }
private void LibraryPresetImportButton_Click(object sender, EventArgs e) { string input = Interaction.InputBox("Paste the JSON (*barf*) for the preset that you wish to import. Accepts Paisley Park exports as well, but you'll have to manually set the zone ID for them.", "Import Preset"); try { WaymarkPreset newPreset = new WaymarkPreset(); dynamic importObj = JsonConvert.DeserializeObject(input); newPreset.Name = importObj.Name; if (DynamicObjectPropertyExists(importObj, "ZoneID")) { newPreset.ZoneID = importObj.ZoneID; } if (DynamicObjectPropertyExists(importObj, "Time")) { newPreset.LastModified = importObj.Time; } if (DynamicObjectPropertyExists(importObj, "A")) { newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('A')].IsEnabled = importObj.A.Active; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('A')].Pos.X = importObj.A.X; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('A')].Pos.Y = importObj.A.Y; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('A')].Pos.Z = importObj.A.Z; } if (DynamicObjectPropertyExists(importObj, "B")) { newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('B')].IsEnabled = importObj.B.Active; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('B')].Pos.X = importObj.B.X; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('B')].Pos.Y = importObj.B.Y; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('B')].Pos.Z = importObj.B.Z; } if (DynamicObjectPropertyExists(importObj, "C")) { newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('C')].IsEnabled = importObj.C.Active; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('C')].Pos.X = importObj.C.X; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('C')].Pos.Y = importObj.C.Y; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('C')].Pos.Z = importObj.C.Z; } if (DynamicObjectPropertyExists(importObj, "D")) { newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('D')].IsEnabled = importObj.D.Active; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('D')].Pos.X = importObj.D.X; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('D')].Pos.Y = importObj.D.Y; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('D')].Pos.Z = importObj.D.Z; } if (DynamicObjectPropertyExists(importObj, "One")) { newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('1')].IsEnabled = importObj.One.Active; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('1')].Pos.X = importObj.One.X; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('1')].Pos.Y = importObj.One.Y; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('1')].Pos.Z = importObj.One.Z; } if (DynamicObjectPropertyExists(importObj, "Two")) { newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('2')].IsEnabled = importObj.Two.Active; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('2')].Pos.X = importObj.Two.X; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('2')].Pos.Y = importObj.Two.Y; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('2')].Pos.Z = importObj.Two.Z; } if (DynamicObjectPropertyExists(importObj, "Three")) { newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('3')].IsEnabled = importObj.Three.Active; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('3')].Pos.X = importObj.Three.X; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('3')].Pos.Y = importObj.Three.Y; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('3')].Pos.Z = importObj.Three.Z; } if (DynamicObjectPropertyExists(importObj, "Four")) { newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('4')].IsEnabled = importObj.Four.Active; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('4')].Pos.X = importObj.Four.X; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('4')].Pos.Y = importObj.Four.Y; newPreset.Waymarks[WaymarkPreset.GetWaymarkNumber('4')].Pos.Z = importObj.Four.Z; } mPresetLibrary.AddPreset(newPreset); } catch { MessageBox.Show("Unable to import the provided data. This is probably due to improperly-formed JSON or missing fields.", "Import Failed!"); } PopulateLibraryListBox(); }
private void LibraryPresetUpdateButton_Click(object sender, EventArgs e) { if (LibraryListBox.SelectedIndex > -1 && LibraryListBox.SelectedIndex < mPresetLibrary.Presets.Count) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Name = PresetNameTextBox.Text; mPresetLibrary.Presets[LibraryListBox.SelectedIndex].LastModified = (PresetDatePicker.Value.Date + PresetTimePicker.Value.TimeOfDay).ToUniversalTime(); // The Zone ID will always come from the text box because the dropdown will populate that in the event that the user cannot edit it. UInt16 tempShort; if (UInt16.TryParse(PresetZoneTextBox.Text, out tempShort)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].ZoneID = tempShort; } double tempDouble; mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('A')].IsEnabled = WaymarkACheckbox.Checked; if (double.TryParse(WaymarkATextBox_X.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('A')].Pos.X = tempDouble; } if (double.TryParse(WaymarkATextBox_Y.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('A')].Pos.Y = tempDouble; } if (double.TryParse(WaymarkATextBox_Z.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('A')].Pos.Z = tempDouble; } mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('B')].IsEnabled = WaymarkACheckbox.Checked; if (double.TryParse(WaymarkBTextBox_X.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('B')].Pos.X = tempDouble; } if (double.TryParse(WaymarkBTextBox_Y.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('B')].Pos.Y = tempDouble; } if (double.TryParse(WaymarkBTextBox_Z.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('B')].Pos.Z = tempDouble; } mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('C')].IsEnabled = WaymarkCCheckbox.Checked; if (double.TryParse(WaymarkCTextBox_X.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('C')].Pos.X = tempDouble; } if (double.TryParse(WaymarkCTextBox_Y.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('C')].Pos.Y = tempDouble; } if (double.TryParse(WaymarkCTextBox_Z.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('C')].Pos.Z = tempDouble; } mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('D')].IsEnabled = WaymarkDCheckbox.Checked; if (double.TryParse(WaymarkDTextBox_X.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('D')].Pos.X = tempDouble; } if (double.TryParse(WaymarkDTextBox_Y.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('D')].Pos.Y = tempDouble; } if (double.TryParse(WaymarkDTextBox_Z.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('D')].Pos.Z = tempDouble; } mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('1')].IsEnabled = Waymark1Checkbox.Checked; if (double.TryParse(Waymark1TextBox_X.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('1')].Pos.X = tempDouble; } if (double.TryParse(Waymark1TextBox_Y.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('1')].Pos.Y = tempDouble; } if (double.TryParse(Waymark1TextBox_Z.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('1')].Pos.Z = tempDouble; } mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('2')].IsEnabled = Waymark2Checkbox.Checked; if (double.TryParse(Waymark2TextBox_X.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('2')].Pos.X = tempDouble; } if (double.TryParse(Waymark2TextBox_Y.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('2')].Pos.Y = tempDouble; } if (double.TryParse(Waymark2TextBox_Z.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('2')].Pos.Z = tempDouble; } mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('3')].IsEnabled = Waymark3Checkbox.Checked; if (double.TryParse(Waymark3TextBox_X.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('3')].Pos.X = tempDouble; } if (double.TryParse(Waymark3TextBox_Y.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('3')].Pos.Y = tempDouble; } if (double.TryParse(Waymark3TextBox_Z.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('3')].Pos.Z = tempDouble; } mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('4')].IsEnabled = Waymark4Checkbox.Checked; if (double.TryParse(Waymark4TextBox_X.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('4')].Pos.X = tempDouble; } if (double.TryParse(Waymark4TextBox_Y.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('4')].Pos.Y = tempDouble; } if (double.TryParse(Waymark4TextBox_Z.Text, out tempDouble)) { mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('4')].Pos.Z = tempDouble; } PopulateLibraryListBox(); } }
private void PopulatePresetEditor(bool clear = false) { if (!clear && LibraryListBox.SelectedIndex > -1 && LibraryListBox.SelectedIndex < mPresetLibrary.Presets.Count) { PresetNameTextBox.Enabled = true; PresetDatePicker.Enabled = true; PresetTimePicker.Enabled = true; PresetZoneDropdown.Enabled = true; PresetZoneTextBox.Enabled = true; WaymarkACheckbox.Enabled = true; WaymarkATextBox_X.Enabled = true; WaymarkATextBox_Y.Enabled = true; WaymarkATextBox_Z.Enabled = true; WaymarkBCheckbox.Enabled = true; WaymarkBTextBox_X.Enabled = true; WaymarkBTextBox_Y.Enabled = true; WaymarkBTextBox_Z.Enabled = true; WaymarkCCheckbox.Enabled = true; WaymarkCTextBox_X.Enabled = true; WaymarkCTextBox_Y.Enabled = true; WaymarkCTextBox_Z.Enabled = true; WaymarkDCheckbox.Enabled = true; WaymarkDTextBox_X.Enabled = true; WaymarkDTextBox_Y.Enabled = true; WaymarkDTextBox_Z.Enabled = true; Waymark1Checkbox.Enabled = true; Waymark1TextBox_X.Enabled = true; Waymark1TextBox_Y.Enabled = true; Waymark1TextBox_Z.Enabled = true; Waymark2Checkbox.Enabled = true; Waymark2TextBox_X.Enabled = true; Waymark2TextBox_Y.Enabled = true; Waymark2TextBox_Z.Enabled = true; Waymark3Checkbox.Enabled = true; Waymark3TextBox_X.Enabled = true; Waymark3TextBox_Y.Enabled = true; Waymark3TextBox_Z.Enabled = true; Waymark4Checkbox.Enabled = true; Waymark4TextBox_X.Enabled = true; Waymark4TextBox_Y.Enabled = true; Waymark4TextBox_Z.Enabled = true; LibraryPresetUpdateButton.Enabled = true; PresetNameTextBox.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Name; PresetDatePicker.Value = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].LastModified.LocalDateTime.Date; PresetTimePicker.Value = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].LastModified.LocalDateTime; // Set the zone in the dropdown if recognized; otherwise set custom and enable the text box for manual entry. Remember that the indices will be off by one since we have custom as a zone ID option at the top of the list. bool isKnownZone = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].ZoneID != 0 && mSettings.ZoneInfoSettings.ZoneDataExists(mPresetLibrary.Presets[LibraryListBox.SelectedIndex].ZoneID); PresetZoneDropdown.SelectedIndex = isKnownZone ? mSettings.ZoneInfoSettings.GetIndex(mPresetLibrary.Presets[LibraryListBox.SelectedIndex].ZoneID) + 1 : 0; PresetZoneTextBox.Enabled = !isKnownZone; PresetZoneTextBox.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].ZoneID.ToString(); WaymarkACheckbox.Checked = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('A')].IsEnabled; WaymarkATextBox_X.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('A')].Pos.X.ToString(); WaymarkATextBox_Y.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('A')].Pos.Y.ToString(); WaymarkATextBox_Z.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('A')].Pos.Z.ToString(); WaymarkBCheckbox.Checked = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('B')].IsEnabled; WaymarkBTextBox_X.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('B')].Pos.X.ToString(); WaymarkBTextBox_Y.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('B')].Pos.Y.ToString(); WaymarkBTextBox_Z.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('B')].Pos.Z.ToString(); WaymarkCCheckbox.Checked = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('C')].IsEnabled; WaymarkCTextBox_X.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('C')].Pos.X.ToString(); WaymarkCTextBox_Y.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('C')].Pos.Y.ToString(); WaymarkCTextBox_Z.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('C')].Pos.Z.ToString(); WaymarkDCheckbox.Checked = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('D')].IsEnabled; WaymarkDTextBox_X.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('D')].Pos.X.ToString(); WaymarkDTextBox_Y.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('D')].Pos.Y.ToString(); WaymarkDTextBox_Z.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('D')].Pos.Z.ToString(); Waymark1Checkbox.Checked = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('1')].IsEnabled; Waymark1TextBox_X.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('1')].Pos.X.ToString(); Waymark1TextBox_Y.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('1')].Pos.Y.ToString(); Waymark1TextBox_Z.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('1')].Pos.Z.ToString(); Waymark2Checkbox.Checked = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('2')].IsEnabled; Waymark2TextBox_X.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('2')].Pos.X.ToString(); Waymark2TextBox_Y.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('2')].Pos.Y.ToString(); Waymark2TextBox_Z.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('2')].Pos.Z.ToString(); Waymark3Checkbox.Checked = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('3')].IsEnabled; Waymark3TextBox_X.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('3')].Pos.X.ToString(); Waymark3TextBox_Y.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('3')].Pos.Y.ToString(); Waymark3TextBox_Z.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('3')].Pos.Z.ToString(); Waymark4Checkbox.Checked = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('4')].IsEnabled; Waymark4TextBox_X.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('4')].Pos.X.ToString(); Waymark4TextBox_Y.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('4')].Pos.Y.ToString(); Waymark4TextBox_Z.Text = mPresetLibrary.Presets[LibraryListBox.SelectedIndex].Waymarks[WaymarkPreset.GetWaymarkNumber('4')].Pos.Z.ToString(); } else { PresetNameTextBox.Enabled = false; PresetDatePicker.Enabled = false; PresetTimePicker.Enabled = false; PresetZoneDropdown.Enabled = false; PresetZoneTextBox.Enabled = false; WaymarkACheckbox.Enabled = false; WaymarkATextBox_X.Enabled = false; WaymarkATextBox_Y.Enabled = false; WaymarkATextBox_Z.Enabled = false; WaymarkBCheckbox.Enabled = false; WaymarkBTextBox_X.Enabled = false; WaymarkBTextBox_Y.Enabled = false; WaymarkBTextBox_Z.Enabled = false; WaymarkCCheckbox.Enabled = false; WaymarkCTextBox_X.Enabled = false; WaymarkCTextBox_Y.Enabled = false; WaymarkCTextBox_Z.Enabled = false; WaymarkDCheckbox.Enabled = false; WaymarkDTextBox_X.Enabled = false; WaymarkDTextBox_Y.Enabled = false; WaymarkDTextBox_Z.Enabled = false; Waymark1Checkbox.Enabled = false; Waymark1TextBox_X.Enabled = false; Waymark1TextBox_Y.Enabled = false; Waymark1TextBox_Z.Enabled = false; Waymark2Checkbox.Enabled = false; Waymark2TextBox_X.Enabled = false; Waymark2TextBox_Y.Enabled = false; Waymark2TextBox_Z.Enabled = false; Waymark3Checkbox.Enabled = false; Waymark3TextBox_X.Enabled = false; Waymark3TextBox_Y.Enabled = false; Waymark3TextBox_Z.Enabled = false; Waymark4Checkbox.Enabled = false; Waymark4TextBox_X.Enabled = false; Waymark4TextBox_Y.Enabled = false; Waymark4TextBox_Z.Enabled = false; LibraryPresetUpdateButton.Enabled = false; PresetNameTextBox.Text = ""; PresetDatePicker.Value = DateTime.Now; PresetTimePicker.Value = DateTime.Now; PresetZoneDropdown.SelectedIndex = 0; PresetZoneTextBox.Text = ""; WaymarkACheckbox.Checked = false; WaymarkATextBox_X.Text = ""; WaymarkATextBox_Y.Text = ""; WaymarkATextBox_Z.Text = ""; WaymarkBCheckbox.Checked = false; WaymarkBTextBox_X.Text = ""; WaymarkBTextBox_Y.Text = ""; WaymarkBTextBox_Z.Text = ""; WaymarkCCheckbox.Checked = false; WaymarkCTextBox_X.Text = ""; WaymarkCTextBox_Y.Text = ""; WaymarkCTextBox_Z.Text = ""; WaymarkDCheckbox.Checked = false; WaymarkDTextBox_X.Text = ""; WaymarkDTextBox_Y.Text = ""; WaymarkDTextBox_Z.Text = ""; Waymark1Checkbox.Checked = false; Waymark1TextBox_X.Text = ""; Waymark1TextBox_Y.Text = ""; Waymark1TextBox_Z.Text = ""; Waymark2Checkbox.Checked = false; Waymark2TextBox_X.Text = ""; Waymark2TextBox_Y.Text = ""; Waymark2TextBox_Z.Text = ""; Waymark3Checkbox.Checked = false; Waymark3TextBox_X.Text = ""; Waymark3TextBox_Y.Text = ""; Waymark3TextBox_Z.Text = ""; Waymark4Checkbox.Checked = false; Waymark4TextBox_X.Text = ""; Waymark4TextBox_Y.Text = ""; Waymark4TextBox_Z.Text = ""; } }
public bool AddPreset(WaymarkPreset preset) { Presets.Add(preset); SortPresets(); return(true); }