Beispiel #1
0
        private static void Run()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            DebugHelper.WriteLine(Title);
            DebugHelper.WriteLine("Build: " + Build);
            DebugHelper.WriteLine("Command line: " + Environment.CommandLine);
            DebugHelper.WriteLine("Personal path: " + PersonalFolder);
            DebugHelper.WriteLine("Operating system: " + Helpers.GetWindowsProductName());

            SilentRun = CLI.IsCommandExist("silent", "s");

#if STEAM
            SteamFirstTimeConfig = CLI.IsCommandExist("SteamConfig");
#endif

            IgnoreHotkeyWarning = CLI.IsCommandExist("NoHotkeys");

            CheckPuushMode();
            DebugWriteFlags();
            CleanTempFiles();

            SettingManager.LoadInitialSettings();

            Uploader.UpdateServicePointManager();
            UpdateManager = new GitHubUpdateManager("ShareX", "ShareX", Dev, Portable);

            LanguageHelper.ChangeLanguage(Settings.Language);

            Helpers.TryFixHandCursor();
            DebugHelper.WriteLine("MainForm init started.");
            MainForm = new MainForm();
            DebugHelper.WriteLine("MainForm init finished.");

            Application.Run(MainForm);

            if (WatchFolderManager != null)
            {
                WatchFolderManager.Dispose();
            }
            SettingManager.SaveAllSettings();

            DebugHelper.Logger.AsyncWrite = false;
            DebugHelper.WriteLine("ShareX closing.");
        }
Beispiel #2
0
        private void btnResetSettings_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show(Resources.ApplicationSettingsForm_btnResetSettings_Click_WouldYouLikeToResetShareXSettings, "ShareX - " + Resources.Confirmation,
                                MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation) == DialogResult.Yes)
            {
                SettingManager.ResetSettings();
                SettingManager.SaveAllSettings();

                UpdateControls();

                LanguageHelper.ChangeLanguage(Program.Settings.Language);

                Program.MainForm.UpdateControls();

                DebugHelper.WriteLine("Settings reset.");
            }
        }
Beispiel #3
0
        public static void CloseSequence()
        {
            if (!closeSequenceStarted)
            {
                closeSequenceStarted = true;

                DebugHelper.Logger.AsyncWrite = false;
                DebugHelper.WriteLine("ShareX closing.");

                if (WatchFolderManager != null)
                {
                    WatchFolderManager.Dispose();
                }
                SettingManager.SaveAllSettings();

                DebugHelper.WriteLine("ShareX closed.");
            }
        }
Beispiel #4
0
        private async void btnExport_Click(object sender, EventArgs e)
        {
            bool exportSettings = cbExportSettings.Checked;
            bool exportHistory  = cbExportHistory.Checked;

            if (exportSettings || exportHistory)
            {
                using (SaveFileDialog sfd = new SaveFileDialog())
                {
                    sfd.DefaultExt = "sxb";
                    sfd.FileName   = $"ShareX-{Application.ProductVersion}-backup.sxb";
                    sfd.Filter     = "ShareX backup (*.sxb)|*.sxb|All files (*.*)|*.*";

                    if (sfd.ShowDialog() == DialogResult.OK)
                    {
                        btnExport.Enabled       = false;
                        btnImport.Enabled       = false;
                        pbExportImport.Location = btnExport.Location;
                        pbExportImport.Visible  = true;

                        string exportPath = sfd.FileName;

                        DebugHelper.WriteLine($"Export started: {exportPath}");

                        await Task.Run(() =>
                        {
                            SettingManager.SaveAllSettings();
                            SettingManager.Export(exportPath, exportSettings, exportHistory);
                        });

                        if (!IsDisposed)
                        {
                            pbExportImport.Visible = false;
                            btnExport.Enabled      = true;
                            btnImport.Enabled      = true;
                        }

                        DebugHelper.WriteLine($"Export completed: {exportPath}");
                    }
                }
            }
        }