示例#1
0
        public static string GetSaveObjFileName(string name)
        {
            var saveMessage = new SaveFileDialogMessage
            {
                DefaultExtension = ".obj",
                Filter           = "OBJ files (*.obj)|*.obj",
                FileName         = string.IsNullOrEmpty(name) ? null : System.IO.Path.GetFileNameWithoutExtension(name)
            };

            Messenger.Instance.Notify(saveMessage);

            return(saveMessage.FileName);
        }
示例#2
0
        public static string GetSaveTextureFileName(string name)
        {
            var saveMessage = new SaveFileDialogMessage
            {
                DefaultExtension = ".png",
                Filter           = "Textures (*.png, *.bmp)|*.png;*.bmp|PNG files (*.png)|*.png|BMP files (*.bmp)|*.bmp",
                FileName         = string.IsNullOrEmpty(name) ? null : System.IO.Path.GetFileNameWithoutExtension(name)
            };

            Messenger.Instance.Notify(saveMessage);

            return(saveMessage.FileName);
        }
示例#3
0
        private void OnSaveFileDialogMessage(SaveFileDialogMessage message)
        {
            Action action = () =>
            {
                var dialog = new SaveFileDialog();
                dialog.AddExtension = true;
                dialog.DefaultExt   = message.DefaultExtension;
                dialog.Filter       = message.Filter;
                dialog.FileName     = message.FileName;

                if (dialog.ShowDialog(this) == true)
                {
                    message.FileName = dialog.FileName;
                }
                else
                {
                    message.FileName = null;
                }
            };

            this.Dispatcher.Invoke(action);
        }
示例#4
0
        private void OnSaveFileDialogMessage(SaveFileDialogMessage message)
        {
            CommonSaveFileDialog csfd = new CommonSaveFileDialog
            {
                Title            = message.Title,
                EnsurePathExists = true,

                DefaultFileName  = message.DefaultFileName,
                DefaultExtension = message.DefaultFileExtension,
                EnsureValidNames = true
            };

            CommonFileDialogResult sResult = csfd.ShowDialog();

            csfd.Dispose();
            if (sResult == CommonFileDialogResult.Ok)
            {
                message.Callback?.Invoke(true, csfd.FileName);
            }
            else
            {
                message.Callback?.Invoke(false, null);
            }
        }