Ejemplo n.º 1
0
 void ProgramsWebServiceClient_GetProgramsCompleted(object sender, SoapHttpClientEventArgs e)
 {
     // Make sure method is executed on the same thread as this control.
     ControlsHelper.BeginInvoke(() =>
     {
         MainForm.Current.AddTask(TaskName.GetPrograms);
         if (e.Error != null)
         {
             var error = e.Error.Message;
             if (e.Error.InnerException != null)
             {
                 error += "\r\n" + e.Error.InnerException.Message;
             }
             MainForm.Current.SetBodyError(error);
         }
         else if (e.Result == null)
         {
             MainForm.Current.SetBodyError("No results were returned by the web service!");
         }
         else
         {
             var result = (List <x360ce.Engine.Data.Program>)e.Result;
             ImportAndBindItems(result);
         }
         MainForm.Current.RemoveTask(TaskName.GetPrograms);
     });
 }
Ejemplo n.º 2
0
 void ProgramsWebServiceClient_GetProgramsCompleted(object sender, SoapHttpClientEventArgs e)
 {
     // Make sure method is executed on the same thread as this control.
     ControlsHelper.BeginInvoke(() =>
     {
         MainForm.Current.LoadingCircle = false;
         if (e.Error != null)
         {
             var error = e.Error.Message;
             if (e.Error.InnerException != null)
             {
                 error += "\r\n" + e.Error.InnerException.Message;
             }
             MainForm.Current.UpdateHelpHeader(error, MessageBoxIcon.Error);
         }
         else if (e.Result == null)
         {
             MainForm.Current.UpdateHelpHeader("No results were returned by the web service!", MessageBoxIcon.Error);
         }
         else
         {
             var result = (List <x360ce.Engine.Data.Program>)e.Result;
             ImportAndBindPrograms(result);
         }
     });
 }
Ejemplo n.º 3
0
        void wsPresets_SearchSettingsCompleted(object sender, SoapHttpClientEventArgs e)
        {
            var ws = (WebServiceClient)sender;

            ws.SearchSettingsCompleted -= wsPresets_SearchSettingsCompleted;
            // Make sure method is executed on the same thread as this control.
            ControlsHelper.BeginInvoke(() =>
            {
                refreshed = true;
                if (e.Error != null || e.Result == null)
                {
                    var showResult = (bool)e.UserState;
                    if (showResult)
                    {
                        mainForm.UpdateHelpHeader(string.Format("{0: yyyy-MM-dd HH:mm:ss}: No Presets received.", DateTime.Now), MessageBoxIcon.Information);
                    }
                }
                else
                {
                    var result = (SearchResult)e.Result;
                    UpdateList(result.Presets, SettingManager.Presets.Items);
                    UpdateList(result.PadSettings, SettingManager.PadSettings.Items);
                    if ((bool)e.UserState)
                    {
                        var presetsCount     = (result.Presets == null) ? 0 : result.Presets.Length;
                        var padSettingsCount = (result.PadSettings == null) ? 0 : result.PadSettings.Length;
                        mainForm.UpdateHelpHeader(string.Format("{0: yyyy-MM-dd HH:mm:ss}: {1} Presets and {2} PAD Settings received.", DateTime.Now, presetsCount, padSettingsCount), MessageBoxIcon.Information);
                    }
                }
                mainForm.LoadingCircle = false;
            });
        }
Ejemplo n.º 4
0
        void ws_SearchSettingsCompleted(object sender, SoapHttpClientEventArgs e)
        {
            var ws = (WebServiceClient)sender;

            ws.SearchSettingsCompleted -= ws_SearchSettingsCompleted;
            // Make sure method is executed on the same thread as this control.
            ControlsHelper.BeginInvoke(() =>
            {
                refreshed = true;
                if (e.Error != null || e.Result == null)
                {
                    UpdateList(new List <UserSetting>(), SettingManager.Settings.Items);
                    UpdateList(new List <Summary>(), SettingManager.Summaries.Items);
                    if ((bool)e.UserState)
                    {
                        mainForm.UpdateHelpHeader(string.Format("{0: yyyy-MM-dd HH:mm:ss}: No data received.", DateTime.Now), MessageBoxIcon.Information);
                    }
                }
                else
                {
                    var result = (SearchResult)e.Result;
                    // Reorder summaries.
                    result.Summaries = result.Summaries.OrderBy(x => x.ProductName).ThenBy(x => x.FileName).ThenBy(x => x.FileProductName).ThenByDescending(x => x.Users).ToArray();
                    UpdateList(result.Settings, SettingManager.Settings.Items);
                    UpdateList(result.Summaries, SettingManager.Summaries.Items);
                    if ((bool)e.UserState)
                    {
                        mainForm.UpdateHelpHeader(string.Format("{0: yyyy-MM-dd HH:mm:ss}: {1} Your Settings and {2} General Settings received.", DateTime.Now, result.Settings.Length, result.Summaries.Length), MessageBoxIcon.Information);
                    }
                }
                mainForm.LoadingCircle = false;
            });
        }
Ejemplo n.º 5
0
        void ws_LoadSettingCompleted(object sender, SoapHttpClientEventArgs e)
        {
            var result = (SearchResult)e.Result;

            if (result.PadSettings.Length == 0)
            {
                mainForm.UpdateHelpHeader(string.Format("{0: yyyy-MM-dd HH:mm:ss}: Setting was not found.", DateTime.Now), MessageBoxIcon.Information);
            }
            else
            {
                var di             = _devices[ControllerComboBox.SelectedIndex];
                var padSectionName = SettingManager.Current.GetInstanceSection(di.InstanceGuid);
                SettingManager.Current.SetPadSetting(padSectionName, di);
                SettingManager.Current.SetPadSetting(padSectionName, result.PadSettings[0]);
                MainForm.Current.SuspendEvents();
                SettingManager.Current.ReadPadSettings(SettingManager.IniFileName, padSectionName, ControllerComboBox.SelectedIndex);
                MainForm.Current.ResumeEvents();
                var name = ((KeyValuePair)ControllerComboBox.SelectedItem).Key;
                mainForm.UpdateHelpHeader(string.Format("{0: yyyy-MM-dd HH:mm:ss}: Settings loaded into '{1}' successfully.", DateTime.Now, name), MessageBoxIcon.Information);
                // Save setting and notify if value changed.
                SettingManager.Current.SaveSettings();
                MainForm.Current.NotifySettingsChange();
                mainForm.UpdateTimer.Start();
            }
        }
Ejemplo n.º 6
0
        void ws_SearchSummariesCompleted(object sender, SoapHttpClientEventArgs e)
        {
            // Make sure method is executed on the same thread as this control.
            if (ControlsHelper.InvokeRequired)
            {
                var method = new EventHandler <SoapHttpClientEventArgs>(ws_SearchSummariesCompleted);
                ControlsHelper.BeginInvoke(method, new object[] { sender, e });
                return;
            }
            // Detach event handler so resource could be released.
            var ws = (WebServiceClient)sender;

            ws.SearchSettingsCompleted -= ws_SearchSummariesCompleted;
            if (e.Error != null)
            {
                var error = e.Error.Message;
                if (e.Error.InnerException != null)
                {
                    error += "\r\n" + e.Error.InnerException.Message;
                }
                _ParentControl.SetBodyError(error);
            }
            else if (e.Result == null)
            {
                _ParentControl.SetBodyInfo("No default settings received.");
            }
            else
            {
                var result           = (SearchResult)e.Result;
                var summariesCount   = result.Summaries?.Length ?? 0;
                var padSettingsCount = result.PadSettings?.Length ?? 0;
                if (summariesCount == 0)
                {
                    _ParentControl.SetBodyInfo("0 default settings received.");
                }
                else
                {
                    if (padSettingsCount == 0)
                    {
                        _ParentControl.SetBodyError("Error: {0} default settings received, but no PAD settings.", summariesCount);
                    }
                    else
                    {
                        // Reorder summaries.
                        result.Summaries = result.Summaries.OrderBy(x => x.ProductName).ThenBy(x => x.FileName).ThenBy(x => x.FileProductName).ThenByDescending(x => x.Users).ToArray();
                        AppHelper.UpdateList(result.Summaries, SettingsManager.Summaries.Items);
                        // Update pad settings.
                        SettingsManager.Current.UpsertPadSettings(result.PadSettings);
                        SettingsManager.Current.CleanupPadSettings();
                        _ParentControl.SetBodyInfo("{0} default settings and {1} PAD settings received.", summariesCount, padSettingsCount);
                    }
                }
            }
            _ParentControl.RemoveTask(TaskName.SearchSummaries);
            RefreshButton.IsEnabled = true;
        }
Ejemplo n.º 7
0
        void ws_SearchSettingsCompleted(object sender, SoapHttpClientEventArgs e)
        {
            // Make sure method is executed on the same thread as this control.
            if (ControlsHelper.InvokeRequired)
            {
                var method = new EventHandler <SoapHttpClientEventArgs>(ws_SearchSettingsCompleted);
                ControlsHelper.BeginInvoke(method, new object[] { sender, e });
                return;
            }
            // Detach event handler so resource could be released.
            var ws = (WebServiceClient)sender;

            ws.SearchSettingsCompleted -= ws_SearchSettingsCompleted;
            if (e.Error != null)
            {
                var error = e.Error.Message;
                if (e.Error.InnerException != null)
                {
                    error += "\r\n" + e.Error.InnerException.Message;
                }
                _ParentControl.SetBodyError(error);
            }
            else if (e.Result == null)
            {
                _ParentControl.SetBodyInfo("No user settings received.");
            }
            else
            {
                // Suspend DInput Service.
                Global.DHelper.Stop();
                MainDataGrid.ItemsSource = null;

                var result = (SearchResult)e.Result;
                // Reorder Settings.
                result.Settings = result.Settings.OrderBy(x => x.ProductName).ThenBy(x => x.FileName).ThenBy(x => x.FileProductName).ToArray();
                SettingsManager.Current.UpsertSettings(result.Settings);
                // Insert pad settings which are used by settings.
                SettingsManager.Current.UpsertPadSettings(result.PadSettings);
                // Remove unused pad settings.
                SettingsManager.Current.CleanupPadSettings();
                // Display results about operation.
                var settingsCount    = (result.Settings == null) ? 0 : result.Settings.Length;
                var padSettingsCount = (result.PadSettings == null) ? 0 : result.PadSettings.Length;
                _ParentControl.SetBodyInfo("{0} user settings and {1} PAD settings received.", settingsCount, padSettingsCount);

                MainDataGrid.ItemsSource = SettingsManager.UserSettings.Items;
                // Resume DInput Service.
                if (Global.AllowDHelperStart)
                {
                    Global.DHelper.Start();
                }
            }
            _ParentControl.RemoveTask(TaskName.SearchSettings);
            RefreshButton.IsEnabled = true;
        }
Ejemplo n.º 8
0
        void ws_LoadSettingCompleted(object sender, SoapHttpClientEventArgs e)
        {
            var result = (SearchResult)e.Result;

            if (result.PadSettings.Length == 0)
            {
                MainForm.Current.SetBodyInfo("Setting was not found.");
            }
            else
            {
                var padSectionName = SettingsManager.Current.GetInstanceSection(_di.InstanceGuid);
                //SettingsManager.Current.SetPadSetting(padSectionName, _di);
                //SettingManager.Current.SetPadSetting(padSectionName, result.PadSettings[0]);
                SettingsManager.Current.SuspendEvents();
                //SettingManager.Current.LoadPadSettings(SettingManager.IniFileName, padSectionName, _padIndex);
                SettingsManager.Current.ResumeEvents();
                MainForm.Current.SetBodyInfo("Settings loaded into '{0}.{1}' successfully.", _padIndex + 1, _di.ProductName);
            }
            this.DialogResult = System.Windows.Forms.DialogResult.OK;
        }
Ejemplo n.º 9
0
        void ws_DeleteSettingCompleted(object sender, SoapHttpClientEventArgs e)
        {
            if (e.Error != null)
            {
                mainForm.UpdateHelpHeader(e.Error.Message, MessageBoxIcon.Error);
                throw e.Error;
            }
            var result = (string)e.Result;

            if (!string.IsNullOrEmpty(result))
            {
                mainForm.UpdateHelpHeader(result, MessageBoxIcon.Error);
            }
            else
            {
                var name = ((KeyValuePair)ControllerComboBox.SelectedItem).Key;
                mainForm.UpdateHelpHeader(string.Format("{0: yyyy-MM-dd HH:mm:ss}: '{1}' setting deleted successfully.", DateTime.Now, name), MessageBoxIcon.Information);
            }
            RefreshGrid(false);
        }
Ejemplo n.º 10
0
        void ws_LoadSettingCompleted(object sender, SoapHttpClientEventArgs e)
        {
            var result = (SearchResult)e.Result;

            if (result.PadSettings.Length == 0)
            {
                MainForm.Current.UpdateHelpHeader(string.Format("{0: yyyy-MM-dd HH:mm:ss}: Setting was not found.", DateTime.Now), MessageBoxIcon.Information);
            }
            else
            {
                var padSectionName = SettingManager.Current.GetInstanceSection(_di.InstanceGuid);
                SettingManager.Current.SetPadSetting(padSectionName, _di);
                SettingManager.Current.SetPadSetting(padSectionName, result.PadSettings[0]);
                MainForm.Current.SuspendEvents();
                SettingManager.Current.ReadPadSettings(SettingManager.IniFileName, padSectionName, _padIndex);
                MainForm.Current.ResumeEvents();
                MainForm.Current.UpdateHelpHeader(string.Format("{0: yyyy-MM-dd HH:mm:ss}: Settings loaded into '{1}' successfully.", DateTime.Now, (_padIndex + 1) + "." + _di.ProductName), MessageBoxIcon.Information);
            }
            this.DialogResult = System.Windows.Forms.DialogResult.OK;
        }
Ejemplo n.º 11
0
        void wsPresets_SearchSettingsCompleted(object sender, SoapHttpClientEventArgs e)
        {
            // Make sure method is executed on the same thread as this control.
            if (InvokeRequired)
            {
                var method = new EventHandler <SoapHttpClientEventArgs>(wsPresets_SearchSettingsCompleted);
                BeginInvoke(method, new object[] { sender, e });
                return;
            }
            // Detach event handler so resource could be released.
            var ws = (WebServiceClient)sender;

            ws.SearchSettingsCompleted -= wsPresets_SearchSettingsCompleted;
            if (e.Error != null)
            {
                var error = e.Error.Message;
                if (e.Error.InnerException != null)
                {
                    error += "\r\n" + e.Error.InnerException.Message;
                }
                _ParentForm.SetHeaderError(error);
            }
            else if (e.Result == null)
            {
                _ParentForm.SetHeaderInfo("No default settings received.");
            }
            else
            {
                var result = (SearchResult)e.Result;
                AppHelper.UpdateList(result.Presets, SettingsManager.Presets.Items);
                SettingsManager.Current.UpsertPadSettings(result.PadSettings);
                SettingsManager.Current.CleanupPadSettings();
                var presetsCount     = (result.Presets == null) ? 0 : result.Presets.Length;
                var padSettingsCount = (result.PadSettings == null) ? 0 : result.PadSettings.Length;
                _ParentForm.SetHeaderInfo("{0} default settings and {1} PAD settings received.", presetsCount, padSettingsCount);
            }
            _ParentForm.RemoveTask(TaskName.SearchPresets);
            PresetRefreshButton.Enabled = true;
        }
Ejemplo n.º 12
0
        void ws_SearchSettingsCompleted(object sender, SoapHttpClientEventArgs e)
        {
            sr = null;
            if (e.Error != null)
            {
                InternetPictureBox.Image = Properties.Resources.delete_16x16;
                return;
            }
            InternetPictureBox.Image = Properties.Resources.check_16x16;
            InternetLabel.Text      += " Done";
            var result = (SearchResult)e.Result;

            sr = result;
            // Reorder summaries
            sr.Summaries = sr.Summaries.OrderBy(x => x.ProductName).ThenBy(x => x.FileName).ThenBy(x => x.FileProductName).ThenByDescending(x => x.Users).ToArray();
            var s = GetBestSetting(result);

            if (s != null)
            {
                configs.Add(s);
            }
            Complete();
        }