public async void SaveButtonPressed(object sender, RoutedEventArgs args)
        {
            if (MainWindow.GetInstance().VersionController == null)
            {
                MessageBox.Show("No ChangeLog was open!", "Save Failed", MessageBoxButton.OK, MessageBoxImage.Error);
                return;
            }

            // check json is correct in changelog
            if (!ChangeLogPage.GetInstance().IsJsonValid())
            {
                MessageBox.Show("The ChangeLog's additional data is not valid JSON.", "Save Failed", MessageBoxButton.OK, MessageBoxImage.Error);
                return;
            }

            try
            {
                bool seriallizeWorked = await MainWindow.GetInstance().VersionController.Serialize();

                if (!seriallizeWorked)
                {
                    MessageBox.Show("Something went wrong.", "Save Failed", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }

                OpenFolder(((FileSystemProvider)MainWindow.GetInstance().VersionController.FileProvider).RootPath);
            }
            catch (Exception e)
            {
                MessageBox.Show(e.Message, "Save Failed", MessageBoxButton.OK, MessageBoxImage.Error);
                return;
            }

            if (random == null)
            {
                random = new Random();
            }

            if (random.Next(5) == 1)
            {
                if (MessageBox.Show("It took a lot of work to make this available for free. If you have any money going spare, please consider donating to keep the project alive. Would you like to donate now?", "Please Consider Donating", MessageBoxButton.YesNo, MessageBoxImage.Information) == MessageBoxResult.Yes)
                {
                    System.Diagnostics.Process.Start(@"https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=MLD56V6HQWCKU&source=url");
                }
            }

            await ContentArea.GetInstance().PostSerializeReload(MainWindow.GetInstance().VersionController);
        }
Esempio n. 2
0
        public void OpenPage(PageType pageType, VersionRef versionRef = null, ChangeRef changeRef = null)
        {
            EmptyPage.Visibility     = Visibility.Collapsed;
            ChangeLogPage.Visibility = Visibility.Collapsed;
            VersionPage.Visibility   = Visibility.Collapsed;
            ChangePage.Visibility    = Visibility.Collapsed;

            switch (pageType)
            {
            case PageType.Empty:
                EmptyPage.Visibility = Visibility.Visible;
                break;

            case PageType.ChangeLog:
                ChangeLogPage.Visibility = Visibility.Visible;
                ChangeLogPage.Refresh();
                break;

            case PageType.Version:
                if (versionRef == null)
                {
                    return;
                }

                VersionPage.Visibility = Visibility.Visible;
                VersionPage.Refresh(versionRef);
                break;

            case PageType.Change:
                if (changeRef == null)
                {
                    return;
                }

                ChangePage.Visibility = Visibility.Visible;
                ChangePage.Refresh(changeRef);
                break;
            }
        }
Esempio n. 3
0
 public void MoveDownPressed(object sender, RoutedEventArgs args)
 {
     ChangeLogPage.GetInstance().MoveDown(this);
 }
Esempio n. 4
0
 public void DeletePressed(object sender, RoutedEventArgs args)
 {
     ChangeLogPage.GetInstance().Delete(this);
 }
Esempio n. 5
0
 public void EditPressed(object sender, RoutedEventArgs args)
 {
     ChangeLogPage.GetInstance().Edit(this);
 }