/// <summary> /// Stops the recording or the Pre-Start countdown. /// </summary> private async void Stop() { try { _capture.Stop(); FrameRate.Stop(); await Task.Delay(100); FrameCount = 0; if (Stage != Stage.Stopped && Stage != Stage.PreStarting && ListFrames.Any()) { #region Stop ExitArg = ExitAction.Recorded; DialogResult = false; #endregion } else if ((Stage == Stage.PreStarting || Stage == Stage.Snapping) && !ListFrames.Any()) { #region if Pre-Starting or in Snapmode and no Frames, Stops Stage = Stage.Stopped; //Enables the controls that are disabled while recording; FpsNumericUpDown.IsEnabled = true; RecordPauseButton.IsEnabled = true; HeightIntegerBox.IsEnabled = true; WidthIntegerBox.IsEnabled = true; IsRecording = false; Topmost = true; Title = "Screen To Gif"; AutoFitButtons(); #endregion } } catch (NullReferenceException nll) { var errorViewer = new Other.ExceptionViewer(nll); errorViewer.ShowDialog(); LogWriter.Log(nll, "NullPointer on the Stop function"); } catch (Exception ex) { var errorViewer = new Other.ExceptionViewer(ex); errorViewer.ShowDialog(); LogWriter.Log(ex, "Error on the Stop function"); } }
private void DonateEuroButton_Click(object sender, RoutedEventArgs e) { try { Process.Start("https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=JCY2BGLULSWVJ&lc=US&item_name=ScreenToGif&item_number=screentogif¤cy_code=EUR&bn=PP%2dDonationsBF%3abtn_donateCC_LG%2egif%3aNonHosted"); } catch (Exception ex) { LogWriter.Log(ex, "Error • Openning the Donation website"); var exception = new Other.ExceptionViewer(ex); exception.ShowDialog(); } }
private void BitcoinHyperlink_Click(object sender, RoutedEventArgs e) { try { Process.Start("https://www.coinbase.com/nicke"); } catch (Exception ex) { LogWriter.Log(ex, "Error • Openning the CoinBase website"); var exception = new Other.ExceptionViewer(ex); exception.ShowDialog(); } }
private void SteamHyperlink_Click(object sender, RoutedEventArgs e) { try { Process.Start("http://steamcommunity.com/id/nickesm/wishlist"); } catch (Exception ex) { LogWriter.Log(ex, "Error • Openning the Patreon website"); var exception = new Other.ExceptionViewer(ex); exception.ShowDialog(); } }
private void App_OnDispatcherUnhandledException(object sender, DispatcherUnhandledExceptionEventArgs e) { LogWriter.Log(e.Exception, "On Dispacher Unhandled Exception - Unknow"); try { var errorViewer = new ExceptionViewer(e.Exception); errorViewer.ShowDialog(); } catch (Exception) {} e.Handled = true; }
private void Stop_Executed(object sender, ExecutedRoutedEventArgs e) { try { _frameCount = 0; _timer.Stop(); if (Stage != Stage.Stopped && Stage != Stage.PreStarting && ListFrames.Any()) { #region If not Already Stoped nor Pre Starting and FrameCount > 0, Stops ExitArg = ExitAction.Recorded; DialogResult = false; #endregion } else if ((Stage == Stage.PreStarting || Stage == Stage.Snapping) && !ListFrames.Any()) { #region if Pre-Starting or in Snapmode and no Frames, Stops Stage = Stage.Stopped; //Enables the controls that are disabled while recording; FpsNumericUpDown.IsEnabled = true; RecordPauseButton.IsEnabled = true; RefreshButton.IsEnabled = true; VideoDevicesComboBox.IsEnabled = true; Topmost = true; Title = "Screen To Gif"; #endregion } } catch (NullReferenceException nll) { var errorViewer = new Other.ExceptionViewer(nll); errorViewer.ShowDialog(); LogWriter.Log(nll, "NullPointer in the Stop function"); } catch (Exception ex) { var errorViewer = new Other.ExceptionViewer(ex); errorViewer.ShowDialog(); LogWriter.Log(ex, "Error in the Stop function"); } }
private void LanguagePanel_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (!IsLoaded) { return; } try { LocalizationHelper.SelectCulture(Settings.Default.Language); } catch (Exception ex) { var errorViewer = new Other.ExceptionViewer(ex); errorViewer.ShowDialog(); LogWriter.Log(ex, "Error while trying to set the language."); } }
private void DonateOtherButton_Click(object sender, RoutedEventArgs e) { try { var label = CurrencyComboBox.SelectedValue as Label; var currency = label.Content.ToString().Substring(0, 3); Process.Start($"https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=JCY2BGLULSWVJ&lc=US&item_name=ScreenToGif&item_number=screentogif¤cy_code={currency}&bn=PP%2dDonationsBF%3abtn_donateCC_LG%2egif%3aNonHosted"); } catch (Exception ex) { LogWriter.Log(ex, "Error • Openning the Donation website"); var exception = new Other.ExceptionViewer(ex); exception.ShowDialog(); } }
private void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e) { var exception = e.ExceptionObject as Exception; if (exception == null) { return; } LogWriter.Log(exception, "Current Domain Unhandled Exception - Unknow"); try { var errorViewer = new ExceptionViewer(exception); errorViewer.ShowDialog(); } catch (Exception) {} }
private void DetailsButton_Click(object sender, RoutedEventArgs e) { var errorViewer = new ExceptionViewer(Exception); errorViewer.ShowDialog(); }
private void Application_Startup(object sender, StartupEventArgs e) { #region Unhandled Exceptions AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException; #endregion #region Arguments try { if (e.Args.Length > 0) { Argument.Prepare(e.Args); } } catch (Exception ex) { var errorViewer = new ExceptionViewer(ex); errorViewer.ShowDialog(); LogWriter.Log(ex, "Generic Exception - Arguments"); } #endregion #region Language try { LocalizationHelper.SelectCulture(UserSettings.All.LanguageCode); } catch (Exception ex) { var errorViewer = new ExceptionViewer(ex); errorViewer.ShowDialog(); LogWriter.Log(ex, "Language Settings Exception."); } #endregion //var select = new SelectFolderDialog(); //var select = new TestField(); //var select = new Encoder(); //select.ShowDialog(); //return; try { #region Startup if (UserSettings.All.StartUp == 0) { var startup = new Startup(); Current.MainWindow = startup; startup.ShowDialog(); } else if (UserSettings.All.StartUp == 4 || Argument.FileNames.Any()) { var edit = new Editor(); Current.MainWindow = edit; edit.ShowDialog(); } else { var editor = new Editor(); List <FrameInfo> frames = null; var exitArg = ExitAction.Exit; bool?result = null; #region Recorder, Webcam or Border switch (UserSettings.All.StartUp) { case 1: var rec = new Recorder(true); Current.MainWindow = rec; result = rec.ShowDialog(); exitArg = rec.ExitArg; frames = rec.ListFrames; break; case 2: var web = new Windows.Webcam(true); Current.MainWindow = web; result = web.ShowDialog(); exitArg = web.ExitArg; frames = web.ListFrames; break; case 3: var board = new Board(); Current.MainWindow = board; result = board.ShowDialog(); exitArg = board.ExitArg; frames = board.ListFrames; break; } #endregion if (result.HasValue && result.Value) { #region If Close Environment.Exit(0); #endregion } else if (result.HasValue) { #region If Backbutton or Stop Clicked if (exitArg == ExitAction.Recorded) { editor.ListFrames = frames; Current.MainWindow = editor; editor.ShowDialog(); } #endregion } } #endregion } catch (Exception ex) { var errorViewer = new ExceptionViewer(ex); errorViewer.ShowDialog(); LogWriter.Log(ex, "Generic Exception - Root"); } }
private void Application_Startup(object sender, StartupEventArgs e) { #region Unhandled Exceptions AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException; #endregion #region Arguments try { if (e.Args.Length > 0) { Argument.Prepare(e.Args); } } catch (Exception ex) { var errorViewer = new ExceptionViewer(ex); errorViewer.ShowDialog(); LogWriter.Log(ex, "Generic Exception - Arguments"); } #endregion #region Upgrade Application Settings //See http://stackoverflow.com/questions/534261/how-do-you-keep-user-config-settings-across-different-assembly-versions-in-net if (Settings.Default.UpgradeRequired) { Settings.Default.Upgrade(); Settings.Default.UpgradeRequired = false; Settings.Default.Save(); } #endregion #region Language try { LocalizationHelper.SelectCulture(Settings.Default.Language); } catch (Exception ex) { var errorViewer = new ExceptionViewer(ex); errorViewer.ShowDialog(); LogWriter.Log(ex, "Language Settings Exception."); } #endregion //var select = new SelectFolderDialog(); //select.ShowDialog(); //var select = new TestField(); //select.ShowDialog(); //return; try { #region Startup if (Settings.Default.StartUp == 0) { var startup = new Startup(); Current.MainWindow = startup; startup.ShowDialog(); } else if (Settings.Default.StartUp == 4 || Argument.FileNames.Any()) { var edit = new Editor(); Current.MainWindow = edit; edit.ShowDialog(); } else { var editor = new Editor(); List <FrameInfo> frames = null; var exitArg = ExitAction.Exit; bool?result = null; #region Recorder, Webcam or Border switch (Settings.Default.StartUp) { case 1: var rec = new Recorder(true); Current.MainWindow = rec; result = rec.ShowDialog(); exitArg = rec.ExitArg; frames = rec.ListFrames; break; case 2: var web = new Windows.Webcam(true); Current.MainWindow = web; result = web.ShowDialog(); exitArg = web.ExitArg; frames = web.ListFrames; break; case 3: var board = new Board(); Current.MainWindow = board; result = board.ShowDialog(); exitArg = board.ExitArg; frames = board.ListFrames; break; } #endregion if (result.HasValue && result.Value) { #region If Close Environment.Exit(0); #endregion } else if (result.HasValue) { #region If Backbutton or Stop Clicked if (exitArg == ExitAction.Recorded) { editor.ListFrames = frames; Current.MainWindow = editor; editor.ShowDialog(); } #endregion } } #endregion } catch (Exception ex) { var errorViewer = new ExceptionViewer(ex); errorViewer.ShowDialog(); LogWriter.Log(ex, "Generic Exception - Root"); } }
private void Application_Startup(object sender, StartupEventArgs e) { #region Unhandled Exceptions AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException; #endregion #region Arguments try { if (e.Args.Length > 0) { Argument.Prepare(e.Args); } } catch (Exception ex) { var errorViewer = new ExceptionViewer(ex); errorViewer.ShowDialog(); LogWriter.Log(ex, "Generic Exception - Arguments"); } #endregion #region Language try { LocalizationHelper.SelectCulture(UserSettings.All.LanguageCode); } catch (Exception ex) { var errorViewer = new ExceptionViewer(ex); errorViewer.ShowDialog(); LogWriter.Log(ex, "Language Settings Exception."); } #endregion #region Net Framework var array = Type.GetType("System.Array"); var method = array?.GetMethod("Empty"); if (array == null || method == null) { var ask = Dialog.Ask("Missing Dependency", "Net Framework 4.6.1 is not present", "In order to properly use this app, you need to download the correct version of the .Net Framework. Open the web page to download?"); if (ask) { Process.Start("https://www.microsoft.com/en-us/download/details.aspx?id=49981"); return; } } //try //{ // //If there's no Array.Empty, means that there's no .Net Framework 4.6.1 // //This is not the best way... // Array.Empty<int>(); //} //catch (MissingMethodException ex) //{ // var ask = Dialog.Ask("Missing Dependency", "Net Framework 4.6.1 is not present", "In order to properly use this app, you need to download the correct version of the .Net Framework. Open the web page to download?"); // if (ask) // { // Process.Start("https://www.microsoft.com/en-us/download/details.aspx?id=49981"); // return; // } // LogWriter.Log(ex, "Missing .Net Framework 4.6.1"); //} //if (Environment.Version.Build < 30319 && Environment.Version.Revision < 42000) //{ // var ask = Dialog.Ask("Missing Dependency", "Net Framework 4.6.1 is not present", "In order to properly use this app, you need to download the correct version of the .Net Framework. Open the page to download?"); // if (ask) // { // Process.Start("https://www.microsoft.com/en-us/download/details.aspx?id=49981"); // return; // } //} #endregion //var select = new SelectFolderDialog(); //var select = new TestField(); //var select = new Encoder(); //select.ShowDialog(); //return; try { #region Startup if (UserSettings.All.StartUp == 0) { var startup = new Startup(); Current.MainWindow = startup; startup.ShowDialog(); } else if (UserSettings.All.StartUp == 4 || Argument.FileNames.Any()) { var edit = new Editor(); Current.MainWindow = edit; edit.ShowDialog(); } else { var editor = new Editor(); List <FrameInfo> frames = null; var exitArg = ExitAction.Exit; bool?result = null; #region Recorder, Webcam or Border switch (UserSettings.All.StartUp) { case 1: var rec = new Recorder(true); Current.MainWindow = rec; result = rec.ShowDialog(); exitArg = rec.ExitArg; frames = rec.ListFrames; break; case 2: var web = new Windows.Webcam(true); Current.MainWindow = web; result = web.ShowDialog(); exitArg = web.ExitArg; frames = web.ListFrames; break; case 3: var board = new Board(); Current.MainWindow = board; result = board.ShowDialog(); exitArg = board.ExitArg; frames = board.ListFrames; break; } #endregion if (result.HasValue && result.Value) { #region If Close Environment.Exit(0); #endregion } else if (result.HasValue) { #region If Backbutton or Stop Clicked if (exitArg == ExitAction.Recorded) { editor.ListFrames = frames; Current.MainWindow = editor; editor.ShowDialog(); } #endregion } } #endregion } catch (Exception ex) { var errorViewer = new ExceptionViewer(ex); errorViewer.ShowDialog(); LogWriter.Log(ex, "Generic Exception - Root"); } }