public SettingsWindow(ServiceBuilder serviceBuilder, HotKeysBuilder hotKeysBuilder) { InitializeComponent(); serverPortConverter = new IntConverter(); clientPortConverter = new IntNullableConverter() { AutoParseNullOrWhiteSpace = true, NullOrWhiteSpaceValue = null }; timMode.DataContext = ServiceBuilder = serviceBuilder; timHotKeys.DataContext = HotKeysBuilder = hotKeysBuilder; if (serviceBuilder.BuildServer) { tbxPort.Text = serverPortConverter.Convert(serviceBuilder.ServerPort); } else if (serviceBuilder.BuildClient) { tbxPort.Text = clientPortConverter.Convert(serviceBuilder.ClientPort); } else { tbxPort.Text = "1884"; } if (string.IsNullOrWhiteSpace(ServiceBuilder.ServerAddress)) { ServiceBuilder.ServerAddress = "127.0.0.1"; } }
private async void Window_Loaded(object sender, RoutedEventArgs e) { try { IEnumerable <string> args = Environment.GetCommandLineArgs().Skip(1); IntPtr windowHandle = new WindowInteropHelper(this).Handle; ServiceBuilder serviceBuilder = new ServiceBuilder() .WithArgs(args) .WithWindowHandler(windowHandle); DataContext = viewModel = new ViewModel(await serviceBuilder.Build()); } catch (Exception exc) { MessageBox.Show(Utils.GetTypeMessageAndStack(exc), "Building service", MessageBoxButton.OK, MessageBoxImage.Error); throw; } try { IEnumerable <string> args = Environment.GetCommandLineArgs().Skip(1); hotKeys = new HotKeysBuilder().WithArgs(args).Build(); hotKeys.Toggle_Pressed += OnTogglePlayPause; hotKeys.Next_Pressed += OnNext; hotKeys.Previous_Pressed += OnPrevious; hotKeys.Play_Pressed += OnPlay; hotKeys.Pause_Pressed += OnPause; hotKeys.Restart_Pressed += OnRestart; hotKeys.Register(); } catch (Exception exc) { MessageBox.Show(Utils.GetTypeMessageAndStack(exc), "Building hotkeys", MessageBoxButton.OK, MessageBoxImage.Warning); } }
private void RbnClient_Checked(object sender, RoutedEventArgs e) { ServiceBuilder.WithClient(tbxServerAddress.Text, clientPortConverter.Value); }
private void RbnServer_Checked(object sender, RoutedEventArgs e) { ServiceBuilder.WithServer(serverPortConverter.Value); }
private void RbnStandalone_Checked(object sender, RoutedEventArgs e) { ServiceBuilder.WithStandalone(); }