public void InitializeData() { configWindow = this.Owner as ConfigWindow; outbounds = Utilities.DeepClone(configWindow.outbounds); subscriptionBox.Text = String.Join("\n", configWindow.subscriptions); routingRuleSets = Utilities.DeepClone(configWindow.routingRuleSets); foreach (Dictionary <string, object> set in routingRuleSets) { set["rules"] = new List <object>(set["rules"] as IList <object>); } enableRestoreBox.Items.Clear(); enableRestoreBox.Items.Add(V2RayW.Resources.Strings.RestoreTurnOff); enableRestoreBox.Items.Add(V2RayW.Resources.Strings.RestoreTurnOn); enableRestoreBox.SelectedIndex = configWindow.enableRestore ? 1 : 0; configScanner.DoWork += ConfigScanner_DoWork; configScanner.RunWorkerCompleted += ConfigScanner_RunWorkerCompleted; RefreshButton_Click(this, null); RefreshListBox(outboundListBox, outbounds, "tag"); RefreshListBox(ruleSetListBox, routingRuleSets, "name"); RefreshListBox(ruleSetListBox, routingRuleSets, "name"); ruleSetListBox.SelectedIndex = 0; }
public void InitializeData() { configWindow = this.Owner as ConfigWindow; Dictionary <string, object> muxSettings = configWindow.profiles[configWindow.vmessListBox.SelectedIndex]["mux"] as Dictionary <string, object>; Dictionary <string, object> streamSettings = configWindow.profiles[configWindow.vmessListBox.SelectedIndex]["streamSettings"] as Dictionary <string, object>; FillinData(streamSettings, muxSettings); }
private void ShowConfigWindow(object sender, RoutedEventArgs e) { if (this.configWindow == null) { this.configWindow = new ConfigWindow { mainWindow = this }; } this.configWindow.InitializeData(); this.configWindow.Show(); this.configWindow.Focus(); }