public SettingsDialog(List <TFKey> keys, Settings settings) { InitializeComponent(); this.TFKeys = keys; List <String> keynames = new List <string>(); foreach (TFKey k in keys) { keynames.Add(k.DisplayText); } combReloadHud.Items.AddRange(keynames.ToArray()); foreach (string s in settings.GetStringArray("Launch Presets")) { try { string[] S = s.Split('?'); gridLaunch.Rows.Add(S[0], S[1], S[2], bool.Parse(S[3]), bool.Parse(S[4])); } catch { } } chkDev.Checked = settings.GetBool("Developer"); txtLaunchLine.Text = settings.GetString("Custom Launch Line"); TFKey tmp = new TFKey(); if (GetKeyByTF2Keyname(settings.GetString("TF2 Reload Scheme Key"), ref tmp)) { combReloadHud.SelectedItem = tmp.DisplayText; txtReloadConsoleCode.Text = "bind " + tmp.TFKeyName + @" ""hud_reloadscheme; echo hud_reloadscheme"""; } }
private void combReloadHud_SelectedIndexChanged(object sender, EventArgs e) { TFKey tmp = new TFKey(); if (GetKeyByDisplayText(combReloadHud.Text, ref tmp)) { txtReloadConsoleCode.Text = "bind " + tmp.TFKeyName + @" ""hud_reloadscheme; echo hud_reloadscheme"""; Set("TF2 Reload Scheme Key", tmp.TFKeyName); } }
public bool GetKeyByTF2Keyname(string TF2KeyName, ref TFKey key) { foreach (TFKey k in TFKeys) { if (k.TFKeyName == TF2KeyName) { key = k; return(true); } } return(false); }
public bool GetKeyByDisplayText(string displayText, ref TFKey key) { foreach (TFKey k in TFKeys) { if (k.DisplayText == displayText) { key = k; return(true); } } return(false); }
public Form1() { InitializeComponent(); if (File.Exists("4Hud Theme.txt")) { SetTheme(new Settings().AddLoadedFrom("4Hud Theme.txt")); } hotkeyReloadHud = GetKeyByDisplayText("Numpad Add"); mover.DoWork += new DoWorkEventHandler(mover_DoWork); mover.RunWorkerCompleted += new RunWorkerCompletedEventHandler(mover_RunWorkerCompleted); checker.DoWork += new DoWorkEventHandler(checker_DoWork); checker.RunWorkerCompleted += new RunWorkerCompletedEventHandler(checker_RunWorkerCompleted); //TIMERS timerTF2LaunchResize = new Timer(); timerTF2LaunchResize.Interval = 100; timerTF2LaunchResize.Tick += new EventHandler(timerTF2LaunchResize_Tick); timerTF2CheckClosed = new Timer(); timerTF2CheckClosed.Interval = 100; timerTF2CheckClosed.Tick += new EventHandler(timerTF2CheckClosed_Tick); //STEAM PATH if (!settings.Exists("Steam Path") || !File.Exists(settings.GetString("Steam Path"))) { if (File.Exists(@"C:\Program Files (x86)\Steam\Steam.exe")) { settings.Set("Steam Path", @"C:\Program Files (x86)\Steam\Steam.exe"); } else if (File.Exists(@"C:\Program Files\Steam\Steam.exe")) { settings.Set("Steam Path", @"C:\Program Files\Steam\Steam.exe"); } else { ShowSteamPathDialog(); } } //Events treeView.NodeMouseDoubleClick += new TreeNodeMouseClickEventHandler(treeView_NodeMouseDoubleClick); treeView.NodeMouseClick += new TreeNodeMouseClickEventHandler(treeView_NodeMouseClick); treeView.AfterLabelEdit += new NodeLabelEditEventHandler(treeView_AfterLabelEdit); treeView.AfterExpand += new TreeViewEventHandler(treeView_AfterExpand); treeViewSearch.NodeMouseDoubleClick += new TreeNodeMouseClickEventHandler(treeView_NodeMouseDoubleClick); treeViewSearch.NodeMouseClick += new TreeNodeMouseClickEventHandler(treeView_NodeMouseClick); treeViewSearch.AfterLabelEdit += new NodeLabelEditEventHandler(treeView_AfterLabelEdit); treeViewSearch.AfterExpand += new TreeViewEventHandler(treeView_AfterExpand); //Settings settings.SettingChanged += new Settings.SettingChangedHandler(settings_SettingChanged); settings.Load(settingsToLoad); if (File.Exists("4Hud.Settings")) { settings.LoadFrom("4Hud.Settings"); } //Maps and such if (File.Exists("4Script.Settings")) { log("settings exists"); settings4Script.LoadFrom("4Script.Settings"); if (settings4Script.Exists("Script Paths")) { foreach (var S in settings4Script.GetStringArray("Script Paths")) { try { if (S.Split('?')[1] == "Team Fortress 2") { #region getmaps string a = S.Split('?')[0]; if (Directory.Exists(a)) { maps = new List <string>(); maps.Add("_nomap"); try { if (Directory.Exists(a + @"..\maps")) { foreach (string s in Directory.GetFiles(a + @"..\maps")) { if (s.EndsWith(".bsp")) { if (!maps.Contains(s.Substring(s.LastIndexOf("\\") + 1).Remove(s.Substring(s.LastIndexOf("\\") + 1).Length - 4))) { maps.Add(s.Substring(s.LastIndexOf("\\") + 1).Remove(s.Substring(s.LastIndexOf("\\") + 1).Length - 4)); } } } } } catch { } try { if (Directory.Exists(a + @"..\custom\maps")) { foreach (string s in Directory.GetFiles(a + @"..\custom\maps")) { if (s.EndsWith(".bsp")) { if (!maps.Contains(s.Substring(s.LastIndexOf("\\") + 1).Remove(s.Substring(s.LastIndexOf("\\") + 1).Length - 4))) { maps.Add(s.Substring(s.LastIndexOf("\\") + 1).Remove(s.Substring(s.LastIndexOf("\\") + 1).Length - 4)); } } } } } catch { } try { if (Directory.Exists(a + @"..\download\maps")) { foreach (string s in Directory.GetFiles(a + @"..\download\maps")) { if (s.EndsWith(".bsp")) { if (!maps.Contains(s.Substring(s.LastIndexOf("\\") + 1).Remove(s.Substring(s.LastIndexOf("\\") + 1).Length - 4))) { maps.Add(s.Substring(s.LastIndexOf("\\") + 1).Remove(s.Substring(s.LastIndexOf("\\") + 1).Length - 4)); } } } } } catch { } } #endregion } } finally { tsMaps.Items.Clear(); foreach (string s in maps) { tsMaps.Items.Add(s); } } } } } editor1.ValueChanged += new SplitFCTB.ValueChangedHandler(editor_ValueChanged); editor2.ValueChanged += new SplitFCTB.ValueChangedHandler(editor_ValueChanged); //Path try { if (!settings.Exists("Use Installed Hud") || (settings.GetBool("Use Installed Hud") && !Directory.Exists(settings.GetString("Custom Path"))) || (!settings.GetBool("Use Installed Hud") && (!settings.Exists("Hud Paths") || !Directory.Exists(settings.GetStringArray("Hud Paths")[0])))) { showPathDialog(true); } } catch { showPathDialog(true); }; setCustomPath(); editor1.CurrentPath = currentPath; editor2.CurrentPath = currentPath; //Settings if (settings.Exists("Split 1")) { editor1.Split = settings.GetBool("Split 1"); } if (settings.Exists("Split 2")) { editor2.Split = settings.GetBool("Split 2"); } if (settings.Exists("Line Numbers 1")) { editor1.ShowLineNumbers = settings.GetBool("Line Numbers 1"); } if (settings.Exists("Line Numbers 2")) { editor2.ShowLineNumbers = settings.GetBool("Line Numbers 2"); } if (settings.Exists("Splitter Container Distance")) { splitContainer.SplitterDistance = settings.GetInt("Splitter Container Distance"); } if (settings.Exists("Splitter Distance")) { split.SplitterDistance = settings.GetInt("Splitter Distance"); } if (settings.Exists("Splitter Distance 1")) { editor1.SplitDistance = settings.GetInt("Splitter Distance 1"); } if (settings.Exists("Splitter TF2 Distance")) { splitContainer1.SplitterDistance = settings.GetInt("Splitter TF2 Distance"); } if (settings.Exists("Splitter Distance 2")) { editor2.SplitDistance = settings.GetInt("Splitter Distance 2"); } if (settings.Exists("Maximized")) { if (settings.GetBool("Maximized")) { WindowState = FormWindowState.Maximized; } } tsLaunchPresets.Text = settings.GetString("Last Launch Preset"); updateChecker.DoWork += new DoWorkEventHandler(updateChecker_DoWork); updateChecker.RunWorkerAsync(); loadFiles(); }
void settings_SettingChanged(object sender, SettingsChangedEventArgs e) { switch (e.ChangedName) { case "Window Size": try { Size = new Size(int.Parse(settings.GetStringArray("Window Size")[0]), int.Parse(settings.GetStringArray("Window Size")[1])); } catch { Size = new Size(800, 600); } break; case "Screen Position": try { StartPosition = FormStartPosition.Manual; Location = new Point(int.Parse(settings.GetStringArray("Screen Position")[0]), int.Parse(settings.GetStringArray("Screen Position")[1])); } catch { } break; case "Border Style": if (settings.GetInt("Border Style") == 0) { split.BorderStyle = BorderStyle.None; } else if (settings.GetInt("Border Style") == 1) { split.BorderStyle = BorderStyle.FixedSingle; } else { split.BorderStyle = BorderStyle.Fixed3D; } break; case "Developer": tsSettingsEditor.Visible = settings.GetBool("Developer"); break; case "TF2 Reload Scheme Key": hotkeyReloadHud = GetKeyByTF2KeyName(settings.GetString("TF2 Reload Scheme Key")); break; case "Launch Presets": tsLaunchPresets.Items.Clear(); List <string> l = settings.GetStringArray("Launch Presets"); foreach (string s in l) { try { string[] S = s.Split('?'); launchPresents.Add(new LaunchPresent(S[0], int.Parse(S[1]), int.Parse(S[2]), bool.Parse(S[3]), bool.Parse(S[4]))); tsLaunchPresets.Items.Add(S[0]); } catch { } } break; case "TopMost": tsTopMost.Checked = settings.GetBool("TopMost"); this.TopMost = settings.GetBool("TopMost"); break; } }