Ejemplo n.º 1
0
        public void CreateRepository()
        {
            var path = @"c:\temp\GithubRepos\testRepo2";

            if (Directory.Exists(path))
            {
                Directory.Delete(path, true);
            }

            var  gh     = new GitHelper();
            bool result = gh.CreateRepository(path, "*.saved.md\r\n*.bak\r\n*.tmp");

            Assert.IsTrue(result);
            Assert.IsTrue(Directory.Exists(path));


            var fileToAdd = Path.Combine(path, "test.txt");

            var list = new ObservableCollection <RepositoryStatusItem>()
            {
                new RepositoryStatusItem {
                    Filename = fileToAdd
                }
            };

            gh.OpenRepository(path);
            Assert.IsTrue(gh.Commit(list, "first commit", "ras", "*****@*****.**"), gh.ErrorMessage);

            ShellUtils.OpenFileInExplorer(path);
        }
Ejemplo n.º 2
0
        void Command_WeblogForm()
        {
            WeblogFormCommand = new CommandBase((parameter, command) =>
            {
                var action = parameter as string;
                if (string.IsNullOrEmpty(action))
                {
                    return;
                }

                if (action == "openweblogfolder")
                {
                    ShellUtils.OpenFileInExplorer(WeblogModel.Configuration.PostsFolder);
                    return;
                }

                // actions that require form to be open
                var form = new WeblogForm(WeblogModel)
                {
                    Owner = Model.Window
                };
                form.Model.AppModel = Model;
                form.Show();

                switch (action)
                {
                case "posttoweblog":
                    form.TabControl.SelectedIndex = 0;
                    break;

                case "newweblogpost":
                    form.TabControl.SelectedIndex = 1;
                    break;

                case "downloadweblogpost":
                    form.TabControl.SelectedIndex = 2;
                    break;

                case "configureweblog":
                    form.TabControl.SelectedIndex = 3;
                    break;
                }
            }, (p, c) =>
            {
                var action = p as string;
                if (string.IsNullOrEmpty(action))
                {
                    return(true);
                }

                if (action == "posttoweblog")
                {
                    return(Model.ActiveEditor != null);
                }

                return(true);
            });
        }
        private void MenuOpenInExplorer_Click(object sender, RoutedEventArgs e)
        {
            var selected = ListChangedItems.SelectedItem as RepositoryStatusItem;

            if (selected == null)
            {
                return;
            }

            ShellUtils.OpenFileInExplorer(selected.FullPath);
        }
Ejemplo n.º 4
0
        private void On_OpenStaticScriptFile(object sender, System.Windows.RoutedEventArgs e)
        {
            var mi           = sender as MenuItem;
            var relativeFile = mi.CommandParameter as string;
            var file         = Path.Combine(
                Model.ActiveProject.ProjectDirectory,
                "_kavadocs\\Themes\\",
                relativeFile);

            if (File.Exists(file))
            {
                ShellUtils.GoUrl(file);
            }

            if (Directory.Exists(file))
            {
                ShellUtils.OpenFileInExplorer(file);
            }
        }
Ejemplo n.º 5
0
        void Command_ShowFileInExplorer()
        {
            ShowFileInExplorerCommand = new CommandBase((parameter, command) =>
            {
                var file = parameter as string;

                if (string.IsNullOrEmpty(file))
                {
                    return;
                }

                if (File.Exists(file))
                {
                    ShellUtils.OpenFileInExplorer(file);
                }

                var path = Path.GetDirectoryName(file);
                ShellUtils.OpenFileInExplorer(path);
            }, (p, c) => true);
        }
Ejemplo n.º 6
0
        void Command_BuildHtml()
        {
            BuildHtmlCommand = new CommandBase((parameter, command) =>
            {
                mmApp.Model.Window.ShowStatusProgress("Generating project to Html output...");

                Task.Run(() =>
                {
                    var project = kavaUi.AddinModel.ActiveProject;
                    var output  = new HtmlOutputGenerator(project);
                    output.Generate();

                    mmApp.Model.Window.Dispatcher.Invoke(
                        () =>
                    {
                        ShellUtils.OpenFileInExplorer(project.OutputDirectory);
                        mmApp.Model.Window.ShowStatusSuccess("Project output has been generated.");
                    });
                });
            }, (p, c) => true);
        }
Ejemplo n.º 7
0
        private void Button_BackupToZip(object sender, RoutedEventArgs e)
        {
            SaveFileDialog sd = new SaveFileDialog
            {
                FilterIndex      = 1,
                InitialDirectory = Model.AppModel.Configuration.CommonFolder,
                FileName         = $"Markdown-Monster-Configuration-Backup-{DateTime.Now.ToString("yyyy-MM-dd")}.zip",
                CheckFileExists  = false,
                OverwritePrompt  = true,
                CheckPathExists  = true,
                RestoreDirectory = true
            };

            sd.Filter =
                "Zip files (*.zip)|*.zip|All files (*.*)|*.*";

            bool?result = null;

            result = sd.ShowDialog();
            if (result == null || !result.Value)
            {
                return;
            }

            var outputZipFile = sd.FileName;

            var bu = new BackupManager();

            if (!bu.BackupToZip(sd.FileName))
            {
                StatusBar.ShowStatusError("Backup failed. Files have not been backed up.");
            }
            else
            {
                StatusBar.ShowStatusSuccess("Backup completed.");
                ShellUtils.OpenFileInExplorer(sd.FileName);
            }
        }
Ejemplo n.º 8
0
        public void MenuOpenInExplorer_Click(object sender, RoutedEventArgs e)
        {
            string folder = Sidebar.FolderPath;

            var selected = TreeFolderBrowser.SelectedItem as PathItem;

            if (selected != null)
            {
                folder = selected.FullPath;     // Path.GetDirectoryName(selected.FullPath);
            }
            if (string.IsNullOrEmpty(folder))
            {
                return;
            }

            if (selected == null || selected.IsFolder)
            {
                ShellUtils.GoUrl(folder);
            }
            else
            {
                ShellUtils.OpenFileInExplorer(folder);
            }
        }
Ejemplo n.º 9
0
        public void CreateAndAddRemoteTest()
        {
            var path = @"c:\temp\GithubRepos\testRepo2";

            if (Directory.Exists(path))
            {
                Directory.Delete(path, true);
            }

            var  gh     = new GitHelper();
            bool result = gh.CreateRepository(path, "*.saved.md\r\n*.bak\r\n*.tmp");

            Assert.IsTrue(result);
            Assert.IsTrue(Directory.Exists(path));


            var fileToAdd = Path.Combine(path, "test.txt");

            File.WriteAllText(fileToAdd, "test");

            var list = new ObservableCollection <RepositoryStatusItem>()
            {
                new RepositoryStatusItem {
                    Filename = fileToAdd
                }
            };

            gh.OpenRepository(path);
            Assert.IsTrue(gh.Commit(list, "first commit", "ras", "*****@*****.**"), gh.ErrorMessage);

            Assert.IsTrue(gh.AddRemote("https://github.com/RickStrahl/Test5.git", "origin"), gh.ErrorMessage);

            Assert.IsTrue(gh.Push(path, "master"), gh.ErrorMessage);

            ShellUtils.OpenFileInExplorer(path);
        }
        private void ButtonOpenSettingsFolder_Click(object sender, RoutedEventArgs e)
        {
            var file = Path.Combine(mmApp.Configuration.CommonFolder, "MarkdownMonster.json");

            ShellUtils.OpenFileInExplorer(file);
        }