Exemple #1
0
        private void BrowseFolder()
        {
            var dlg = new FolderBrowser2();

            dlg.DirectoryPath = PathHelper.GetFullPath(BasePath, Path);
            if (dlg.ShowDialog(null) == DialogResult.OK)
            {
                Path = string.IsNullOrEmpty(BasePath) ? dlg.DirectoryPath : PathHelper.GetInnerPath(BasePath, dlg.DirectoryPath);
            }
        }
    public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value)
    {
        FolderBrowser2 browser = new FolderBrowser2();

        if (value != null)
        {
            browser.DirectoryPath = string.Format("{0}", value);
        }
        if (browser.ShowDialog(null) == DialogResult.OK)
        {
            return(browser.DirectoryPath);
        }
        return(value);
    }
Exemple #3
0
        private void OnBrowseFolderButtonClick(object sender, EventArgs e)
        {
            string folderPath = Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles);
            var    browser    = new FolderBrowser2
            {
                DirectoryPath = folderPath
            };

            if (!string.IsNullOrEmpty(nodeLocationText.Text))
            {
                browser.DirectoryPath = nodeLocationText.Text;
            }

            if (browser.ShowDialog(this) != DialogResult.OK)
            {
                return;
            }

            nodeLocationText.Text = browser.DirectoryPath;
        }
        /// <summary>
        /// Callback called by the UI manager when user clicks a button
        /// Should do something meaningful when corresponding action is called.
        /// </summary>
        public void OnCommand(string commandId)
        {
            try
            {
                var doc = Application.ActiveDocument;

                var settings = SettingsManager.LoadOrCreate(doc);

                switch (commandId)
                {
                case "ExportVBA":
                    if (string.IsNullOrEmpty(settings.TargetFolder))
                    {
                        OnCommand("ExportVBAFolder");
                        return;
                    }

                    VisioVBA.ExportVBA(doc, settings.TargetFolder, settings);
                    MessageBox.Show(
                        string.Format("The VBA code was successfully exported from the document {0} to the folder {1} ", doc.Name, settings.TargetFolder),
                        "VBA Import Export", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    break;

                case "ExportVBAFolder":
                    var exportFolderBrowser = new FolderBrowser2
                    {
                        DirectoryPath = settings.TargetFolder
                    };
                    if (exportFolderBrowser.ShowDialog(null) == DialogResult.OK)
                    {
                        settings.TargetFolder = exportFolderBrowser.DirectoryPath;
                        SettingsManager.Store(doc, settings);

                        OnCommand("ExportVBA");
                    }
                    return;

                case "ImportVBA":
                    if (string.IsNullOrEmpty(settings.TargetFolder))
                    {
                        OnCommand("ImportVBAFolder");
                        return;
                    }

                    VisioVBA.ImportVBA(doc, settings.TargetFolder, settings, false);
                    MessageBox.Show(
                        string.Format("The VBA code was successfully imported from the folder {0} to the document {1}", settings.TargetFolder, doc.Name),
                        "VBA Import Export", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    break;

                case "ImportVBAFolder":
                    var importFolderBrowser = new FolderBrowser2
                    {
                        DirectoryPath = settings.TargetFolder
                    };
                    if (importFolderBrowser.ShowDialog(null) == DialogResult.OK)
                    {
                        settings.TargetFolder = importFolderBrowser.DirectoryPath;
                        SettingsManager.Store(doc, settings);

                        OnCommand("ImportVBA");
                    }
                    return;

                case "ClearBeforeImport":
                {
                    settings.ClearBeforeImport = !settings.ClearBeforeImport;
                    SettingsManager.Store(doc, settings);
                    UpdateUI();
                }
                break;

                case "IncludeStencils":
                {
                    settings.IncludeStencils = !settings.IncludeStencils;
                    SettingsManager.Store(doc, settings);
                    UpdateUI();
                }
                break;
                }
            }
            catch (Exception e)
            {
                MessageBox.Show(e.Message, "VBA Import Export", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
        }