Esempio n. 1
0
        void goButton_Click(object sender, RoutedEventArgs e)
        {
            // save settings
            Properties.Settings.Default.mode   = _vm.Sources.SelectedItem.TypeTag;
            Properties.Settings.Default.skin   = _vm.Skins.SelectedItem.Name;
            Properties.Settings.Default.skinbg = _vm.Backgrounds.SelectedItem.Name;
            Properties.Settings.Default.delay  = _vm.DelayInMilliseconds;
            Properties.Settings.Default.Save();

            // then proceed
            this.Hide();

            try {
                var reader = _vm.Sources.SelectedItem.BuildReader(_vm.Ports.SelectedItem);
                if (_vm.DelayInMilliseconds > 0)
                {
                    reader = new DelayedControllerReader(reader, _vm.DelayInMilliseconds);
                }

                new ViewWindow(_vm.Skins.SelectedItem,
                               _vm.Backgrounds.SelectedItem,
                               reader)
                .ShowDialog();
            }
#if DEBUG
            catch (ConfigParseException ex) {
#else
            catch (Exception ex) {
#endif
                MessageBox.Show(ex.Message, "NintendoSpy", MessageBoxButton.OK, MessageBoxImage.Error);
            }

            this.Show();
        }
Esempio n. 2
0
        void goButton_Click(object sender, RoutedEventArgs e)
        {
            this.Hide();

            try {
                var reader = _vm.Sources.SelectedItem.BuildReader(_vm.Ports.SelectedItem);
                if (_vm.DelayInMilliseconds > 0)
                {
                    reader = new DelayedControllerReader(reader, _vm.DelayInMilliseconds);
                }

                new ViewWindow(_vm.Skins.SelectedItem,
                               _vm.Backgrounds.SelectedItem,
                               reader)
                .ShowDialog();
            }
#if DEBUG
            catch (ConfigParseException ex) {
#else
            catch (Exception ex) {
#endif
                MessageBox.Show(ex.Message, "NintendoSpy", MessageBoxButton.OK, MessageBoxImage.Error);
            }

            this.Show();
        }
Esempio n. 3
0
        void goButton_Click(object sender, RoutedEventArgs e)
        {
            this.Hide();
            Properties.Settings.Default.Source     = _vm.Sources.GetSelectedId();
            Properties.Settings.Default.Skin       = _vm.Skins.GetSelectedId();
            Properties.Settings.Default.Delay      = _vm.DelayInMilliseconds;
            Properties.Settings.Default.Background = _vm.Backgrounds.GetSelectedId();
            Properties.Settings.Default.Save();

            try {
                IControllerReader reader;
                if (_vm.Sources.SelectedItem == InputSource.PAD || _vm.Sources.SelectedItem == InputSource.PADATOD)
                {
                    reader = _vm.Sources.SelectedItem.BuildReader(_vm.XIAndGamepad.SelectedItem.ToString());
                }
                else if (_vm.Sources.SelectedItem == InputSource.PC360)
                {
                    reader = _vm.Sources.SelectedItem.BuildReader(_vm.XIAndGamepad.SelectedItem.ToString());
                }
                else
                {
                    reader = _vm.Sources.SelectedItem.BuildReader(_vm.Ports.SelectedItem);
                }
                if (_vm.DelayInMilliseconds > 0)
                {
                    reader = new DelayedControllerReader(reader, _vm.DelayInMilliseconds);
                }

                new ViewWindow(_vm.Skins.SelectedItem,
                               _vm.Backgrounds.SelectedItem,
                               reader)
                .ShowDialog();
            }
#if DEBUG
            catch (ConfigParseException ex) {
#else
            catch (Exception ex) {
#endif
                MessageBox.Show(ex.Message, "RetroSpy", MessageBoxButton.OK, MessageBoxImage.Error);
            }

            this.Show();
        }
        void goButton_Click(object sender, RoutedEventArgs e)
        {
            this.Hide();

            try
            {
                IControllerReader reader = null;

                if (_vm.Sources.SelectedItem.RequiresIPAdd)
                {
                    reader = _vm.Sources.SelectedItem.BuildReader(_vm.IPAddress);
                }
                else
                {
                    reader = _vm.Sources.SelectedItem.BuildReader(_vm.Ports.SelectedItem);
                }

                if (_vm.DelayInMilliseconds > 0)
                {
                    reader = new DelayedControllerReader(reader, _vm.DelayInMilliseconds);
                }

                new ViewWindow(_vm.Skins.SelectedItem,
                               _vm.Backgrounds.SelectedItem,
                               reader)
                .ShowDialog();
            }
#if DEBUG
            catch (ConfigParseException ex) {
#else
            catch (Exception ex) {
#endif
                MessageBox.Show(ex.Message, "NintendoSpy", MessageBoxButton.OK, MessageBoxImage.Error);
            }

            Properties.Settings.Default.ipAddress       = _vm.IPAddress;
            Properties.Settings.Default.lastInputChoice = _vm.Sources.SelectedItem.TypeTag;
            Properties.Settings.Default.Save();

            this.Show();
        }
Esempio n. 5
0
        void goButton_Click(object sender, RoutedEventArgs e)
        {
            this.Hide();
            Properties.Settings.Default.Port                   = _vm.Ports.SelectedItem;
            Properties.Settings.Default.Port2                  = _vm.Ports2.SelectedItem;
            Properties.Settings.Default.Source                 = _vm.Sources.GetSelectedId();
            Properties.Settings.Default.Skin                   = _vm.Skins.GetSelectedId();
            Properties.Settings.Default.Delay                  = _vm.DelayInMilliseconds;
            Properties.Settings.Default.Background             = _vm.Backgrounds.GetSelectedId();
            Properties.Settings.Default.Hostname               = _vm.Hostname;
            Properties.Settings.Default.StaticViewerWindowName = _vm.StaticViewerWindowName;
            Properties.Settings.Default.Save();

            try
            {
                IControllerReader reader;
                if (_vm.Sources.SelectedItem == InputSource.PAD)
                {
                    reader = _vm.Sources.SelectedItem.BuildReader(_vm.XIAndGamepad.SelectedItem.ToString());
                }
                else if (_vm.Sources.SelectedItem == InputSource.PC360)
                {
                    reader = _vm.Sources.SelectedItem.BuildReader(_vm.XIAndGamepad.SelectedItem.ToString());
                }
                else if (_vm.Sources.SelectedItem == InputSource.XBOX || _vm.Sources.SelectedItem == InputSource.PSCLASSIC ||
                         _vm.Sources.SelectedItem == InputSource.SWITCH || _vm.Sources.SelectedItem == InputSource.XBOX360 ||
                         _vm.Sources.SelectedItem == InputSource.GENMINI || _vm.Sources.SelectedItem == InputSource.C64MINI ||
                         _vm.Sources.SelectedItem == InputSource.NEOGEOMINI || _vm.Sources.SelectedItem == InputSource.PS3 ||
                         _vm.Sources.SelectedItem == InputSource.PS4)
                {
                    reader = _vm.Sources.SelectedItem.BuildReader(txtHostname.Text);
                }
                else if (_vm.Sources.SelectedItem == InputSource.PADDLES || _vm.Sources.SelectedItem == InputSource.CD32 || _vm.Sources.SelectedItem == InputSource.ATARI5200)
                {
                    if (_vm.Ports.SelectedItem == _vm.Ports2.SelectedItem)
                    {
                        throw new Exception("Port 1 and Port 2 cannot be the same!");
                    }
                    reader = _vm.Sources.SelectedItem.BuildReader2(_vm.Ports.SelectedItem, _vm.Ports2.SelectedItem);
                }
                //else if (_vm.Sources.SelectedItem == InputSource.XBOX)
                //{
                //    reader = _vm.Sources.SelectedItem.BuildReader(_vm.XIAndGamepad.SelectedItem.ToString());
                //}
                //else if (_vm.Sources.SelectedItem == InputSource.WII)
                //{
                //    reader = _vm.Sources.SelectedItem.BuildReader(_vm.XIAndGamepad.SelectedItem.ToString());
                //}
                else
                {
                    reader = _vm.Sources.SelectedItem.BuildReader(_vm.Ports.SelectedItem);
                }
                if (_vm.DelayInMilliseconds > 0)
                {
                    reader = new DelayedControllerReader(reader, _vm.DelayInMilliseconds);
                }

                new ViewWindow(_vm.Skins.SelectedItem,
                               _vm.Backgrounds.SelectedItem,
                               reader, _vm.StaticViewerWindowName)
                .ShowDialog();
            }
#if DEBUG
            catch (ConfigParseException ex) {
#else
            catch (Exception ex) {
#endif
                MessageBox.Show(ex.Message, "RetroSpy", MessageBoxButton.OK, MessageBoxImage.Error);
            }

            this.Show();
        }
Esempio n. 6
0
        private void GoButton_Click(object sender, RoutedEventArgs e)
        {
            ViewWindow v = null;

            Hide();
            Properties.Settings.Default.Port                     = _vm.Ports.SelectedItem;
            Properties.Settings.Default.Port2                    = _vm.Ports2.SelectedItem;
            Properties.Settings.Default.Source                   = _vm.Sources.GetSelectedId();
            Properties.Settings.Default.Skin                     = _vm.Skins.GetSelectedId();
            Properties.Settings.Default.Delay                    = _vm.DelayInMilliseconds;
            Properties.Settings.Default.Background               = _vm.Backgrounds.GetSelectedId();
            Properties.Settings.Default.Hostname                 = _vm.Hostname;
            Properties.Settings.Default.StaticViewerWindowName   = _vm.StaticViewerWindowName;
            Properties.Settings.Default.LegacyKeybindingBehavior = _vm.LegacyKeybindingBehavior;
            Properties.Settings.Default.FilterCOMPorts           = _vm.FilterCOMPorts;
            Properties.Settings.Default.DontSavePassword         = _vm.DontSavePassword;
            Properties.Settings.Default.UseLagFix                = _vm.UseLagFix;
            if (_vm.Sources.SelectedItem == InputSource.MISTER)
            {
                Properties.Settings.Default.MisterUsername = _vm.Username;
                Properties.Settings.Default.MisterPassword = _vm.DontSavePassword ? "" : txtPassword.Password;
            }
            else
            {
                Properties.Settings.Default.BeagleboneUsername = _vm.Username;
                Properties.Settings.Default.BeaglebonePassword = _vm.DontSavePassword ? "" : txtPassword.Password;
            }
            Properties.Settings.Default.Save();

            try
            {
                IControllerReader reader;
                if (_vm.Sources.SelectedItem == InputSource.PAD)
                {
                    reader = _vm.Sources.SelectedItem.BuildReader(_vm.XIAndGamepad.SelectedItem.ToString(CultureInfo.CurrentCulture), false);
                }
                else if (_vm.Sources.SelectedItem == InputSource.PC360)
                {
                    reader = _vm.Sources.SelectedItem.BuildReader(_vm.XIAndGamepad.SelectedItem.ToString(CultureInfo.CurrentCulture), false);
                }
                else if (_vm.Sources.SelectedItem == InputSource.PCKEYBOARD)
                {
                    reader = _vm.Sources.SelectedItem.BuildReader3;
                }
                else if (_vm.Sources.SelectedItem == InputSource.XBOX || _vm.Sources.SelectedItem == InputSource.PSCLASSIC ||
                         _vm.Sources.SelectedItem == InputSource.SWITCH || _vm.Sources.SelectedItem == InputSource.XBOX360 ||
                         _vm.Sources.SelectedItem == InputSource.GENMINI || _vm.Sources.SelectedItem == InputSource.C64MINI ||
                         _vm.Sources.SelectedItem == InputSource.NEOGEOMINI || _vm.Sources.SelectedItem == InputSource.PS3 ||
                         _vm.Sources.SelectedItem == InputSource.PS4 || _vm.Sources.SelectedItem == InputSource.TG16MINI ||
                         _vm.Sources.SelectedItem == InputSource.ATARIVCS || _vm.Sources.SelectedItem == InputSource.EVERCADE)
                {
                    reader = _vm.Sources.SelectedItem.BuildReader4(txtHostname.Text, txtUsername.Text, txtPassword.Password);
                }
                else if (_vm.Sources.SelectedItem == InputSource.MISTER)
                {
                    reader = _vm.Sources.SelectedItem.BuildReader5(txtHostname.Text, txtUsername.Text, txtPassword.Password, _vm.MisterGamepad.SelectedItem.ToString(CultureInfo.CurrentCulture));
                }
                else if (_vm.Sources.SelectedItem == InputSource.PADDLES || _vm.Sources.SelectedItem == InputSource.CD32 ||
                         _vm.Sources.SelectedItem == InputSource.ATARI5200 || _vm.Sources.SelectedItem == InputSource.COLECOVISION ||
                         _vm.Sources.SelectedItem == InputSource.GAMECUBE)
                {
                    if (_vm.Ports.SelectedItem == _vm.Ports2.SelectedItem)
                    {
                        throw new ConfigParseException(_resources.GetString("Port1And2CannotBeTheSame", CultureInfo.CurrentUICulture));
                    }

                    reader = _vm.Sources.SelectedItem.BuildReader2(_vm.Ports.SelectedItem, _vm.Ports2.SelectedItem, _vm.UseLagFix);
                }
                //else if (_vm.Sources.SelectedItem == InputSource.XBOX)
                //{
                //    reader = _vm.Sources.SelectedItem.BuildReader(_vm.XIAndGamepad.SelectedItem.ToString());
                //}
                //else if (_vm.Sources.SelectedItem == InputSource.WII)
                //{
                //    reader = _vm.Sources.SelectedItem.BuildReader(_vm.XIAndGamepad.SelectedItem.ToString());
                //}
                else
                {
                    reader = _vm.Sources.SelectedItem.BuildReader(_vm.Ports.SelectedItem, _vm.UseLagFix);
                }
                if (_vm.DelayInMilliseconds > 0)
                {
#pragma warning disable CA2000 // Dispose objects before losing scope
                    reader = new DelayedControllerReader(reader, _vm.DelayInMilliseconds, _vm.LegacyKeybindingBehavior);
#pragma warning restore CA2000 // Dispose objects before losing scope
                }

                if (_vm.Sources.SelectedItem == InputSource.PRINTER)
                {
                    _ = new GameBoyPrinterEmulatorWindow(reader).ShowDialog();
                }
                else
                {
                    _portListUpdateTimer.Stop();
                    v = new ViewWindow(_vm.Skins.SelectedItem,
                                       _vm.Backgrounds.SelectedItem,
                                       reader, _vm.StaticViewerWindowName);
                    v.ShowDialog();
                }
            }
            catch (ConfigParseException ex)
            {
                _ = MessageBox.Show(ex.Message, _resources.GetString("RetroSpy", CultureInfo.CurrentUICulture), MessageBoxButton.OK, MessageBoxImage.Error);
            }
            catch (System.Net.Sockets.SocketException)
            {
                _ = MessageBox.Show(string.Format(new CultureInfo("en-US"), "Cannot connect to {0}.", txtHostname.Text), _resources.GetString("RetroSpy", CultureInfo.CurrentUICulture), MessageBoxButton.OK, MessageBoxImage.Error);
            }
            catch (UnauthorizedAccessException ex)
            {
                _ = MessageBox.Show(ex.Message, _resources.GetString("RetroSpy", CultureInfo.CurrentUICulture), MessageBoxButton.OK, MessageBoxImage.Error);
            }
            catch (SSHMonitorDisconnectException)
            {
                v?.Close();
            }
#pragma warning disable CA1031 // Do not catch general exception types
            catch (Exception ex)
#pragma warning restore CA1031 // Do not catch general exception types
            {
                _ = MessageBox.Show(ex.Message + "\n\n" + ex.StackTrace, _resources.GetString("RetroSpy", CultureInfo.CurrentUICulture), MessageBoxButton.OK, MessageBoxImage.Error);
                v?.Close();
            }

            _portListUpdateTimer.Start();
            Show();
        }