Example #1
0
 /* ----------------------------------------------------------------- */
 ///
 /// Invoke
 ///
 /// <summary>
 /// 処理を実行します。
 /// </summary>
 ///
 /* ----------------------------------------------------------------- */
 protected override void Invoke(OpenDirectoryMessage e)
 {
     base.Invoke(e);
     if (!e.Cancel && AssociatedObject is TextBox tb)
     {
         tb.Text = e.Value;
     }
 }
Example #2
0
 /* ----------------------------------------------------------------- */
 ///
 /// Invoke
 ///
 /// <summary>
 /// 処理を実行します。
 /// </summary>
 ///
 /* ----------------------------------------------------------------- */
 protected override void Invoke(OpenDirectoryMessage e)
 {
     base.Invoke(e);
     if (e.Result && AssociatedObject is TextBox tb)
     {
         tb.Text = e.FileName;
     }
 }
        public void Create_OpenDirectoryMessage()
        {
            var src = new OpenDirectoryMessage();

            Assert.That(src.Text, Is.Empty);
            Assert.That(src.Value, Is.Empty);
            Assert.That(src.NewButton, Is.True);
            Assert.That(src.Cancel, Is.False);
        }
Example #4
0
 /* ----------------------------------------------------------------- */
 ///
 /// Send
 ///
 /// <summary>
 /// Sends the specified message, and invokes the specified action
 /// when not canceled by the user.
 /// </summary>
 ///
 /// <param name="message">Message to send.</param>
 /// <param name="next">
 /// Action to be invoked when not canceled by the user.
 /// </param>
 ///
 /* ----------------------------------------------------------------- */
 protected async Task Send(OpenDirectoryMessage message, Action <string> next)
 {
     Send(message);
     if (message.Cancel)
     {
         return;
     }
     await Track(() => next(message.Value));
 }
Example #5
0
        private void OnOpenDirectoryMessage(OpenDirectoryMessage openDirectoryMessage)
        {
            var folderDlg = new FolderBrowserDialog
            {
                ShowNewFolderButton = true
            };

            openDirectoryMessage.Execute(folderDlg.ShowDialog() == System.Windows.Forms.DialogResult.OK
                                             ? new OpenDirectoryResult(folderDlg.SelectedPath)
                                             : OpenDirectoryResult.DoNothing);
        }
Example #6
0
        /* ----------------------------------------------------------------- */
        ///
        /// ForSaveDirectory
        ///
        /// <summary>
        /// Creates a new instance of the OpenDirectoryMessage class with
        /// the specified source.
        /// </summary>
        ///
        /// <param name="src">Query source object.</param>
        ///
        /// <returns>OpenDirectoryMessage object.</returns>
        ///
        /* ----------------------------------------------------------------- */
        public static OpenDirectoryMessage ForSaveDirectory(string src)
        {
            var dest = new OpenDirectoryMessage
            {
                Text      = Properties.Resources.MessageSave,
                NewButton = true,
            };

            if (src.HasValue())
            {
                dest.Value = src;
            }
            return(dest);
        }
Example #7
0
        private static IMessage GetMessage(RepositoryFilterOptions options)
        {
            // default should be listing all repositories
            IMessage message = new ListRepositoriesMessage();

            ApplyMessageFilters(options);

            if (options is ListOptions)
            {
                if (options.HasFileFilter)
                {
                    message = new ListRepositoryFilesMessage(options);
                }
                else
                {
                    message = new ListRepositoriesMessage(options);
                }
            }

            if (options is ChangeDirectoryOptions)
            {
                message = new ChangeToDirectoryMessage(options);
            }

            if (options is GetDirectoryOptions)
            {
                message = new GetDirectoryMessage(options);
            }

            if (options is OpenDirectoryOptions)
            {
                if (options.HasFileFilter)
                {
                    message = new OpenFileMessage(options);
                }
                else
                {
                    message = new OpenDirectoryMessage(options);
                }
            }

            return(message);
        }
Example #8
0
        private static void ParseCommandLineOptions(string verb, object options, out IMessage message)
        {
            // default should be listing all repositories
            message = new ListRepositoriesMessage();

            var filter = options as RepositoryFilterOptions;

            if (filter != null)
            {
                ApplyMessageFilters(filter);

                if (verb == CommandLineOptions.ListCommand)
                {
                    if (filter.HasFileFilter)
                    {
                        message = new ListRepositoryFilesMessage(filter);
                    }
                    else
                    {
                        message = new ListRepositoriesMessage(filter);
                    }
                }

                if (verb == CommandLineOptions.ChangeDirectoryCommand)
                {
                    message = new ChangeToDirectoryMessage(filter);
                }

                if (verb == CommandLineOptions.OpenDirectoryCommand)
                {
                    if (filter.HasFileFilter)
                    {
                        message = new OpenFileMessage(filter);
                    }
                    else
                    {
                        message = new OpenDirectoryMessage(filter);
                    }
                }
            }
        }
Example #9
0
        private void OnOpenDirectoryMessage(OpenDirectoryMessage openDirectoryMessage)
        {
            var folderDlg = new FolderBrowserDialog
            {
                ShowNewFolderButton = true
            };

            openDirectoryMessage.Execute(folderDlg.ShowDialog() == System.Windows.Forms.DialogResult.OK
                                             ? new OpenDirectoryResult(folderDlg.SelectedPath)
                                             : OpenDirectoryResult.DoNothing);
        }