コード例 #1
0
ファイル: AddFilterCommand.cs プロジェクト: lypvc/ImageViewer
        public override void Execute()
        {
            var ofd = new OpenFileDialog
            {
                Multiselect      = false,
                InitialDirectory = models.Settings.FilterPath
            };

            // set initial folder if first start
            if (string.IsNullOrEmpty(ofd.InitialDirectory))
            {
                ofd.InitialDirectory = models.Window.ExecutionPath + "\\Filter";
            }

            if (ofd.ShowDialog(models.Window.TopmostWindow) != true)
            {
                return;
            }
            models.Settings.FilterPath = System.IO.Path.GetDirectoryName(ofd.FileName);

            // create model
            try
            {
                var model = models.CreateFilter(ofd.FileName);

                // add to filter list
                viewModel.AddFilter(model);
            }
            catch (Exception e)
            {
                models.Window.ShowErrorDialog(e.Message);
            }
        }
コード例 #2
0
        public override void Execute()
        {
            path.UpdateDirectory(models.Settings.FilterPath, models.Window.ExecutionPath + "\\Filter");

            var ofd = new OpenFileDialog
            {
                Multiselect      = false,
                InitialDirectory = path.Directory
            };

            if (ofd.ShowDialog(models.Window.TopmostWindow) != true)
            {
                return;
            }
            models.Settings.FilterPath = System.IO.Path.GetDirectoryName(ofd.FileName);

            // create model
            try
            {
                var model = models.CreateFilter(ofd.FileName);

                // add to filter list
                viewModel.AddFilter(model);
            }
            catch (Exception e)
            {
                models.Window.ShowErrorDialog(e);
            }
        }
コード例 #3
0
ファイル: AddFilterCommand.cs プロジェクト: ux3d/ImageViewer
        public void Execute(object parameter)
        {
            var ofd = new OpenFileDialog
            {
                Multiselect      = false,
                InitialDirectory = Settings.Default.TonemapperPath
            };

            if (ofd.ShowDialog(models.App.Window) != true)
            {
                return;
            }
            Settings.Default.TonemapperPath = System.IO.Path.GetDirectoryName(ofd.FileName);

            // load tonemapper
            var disableGl = models.GlContext.Enable();

            try
            {
                // load shader
                var loader = new FilterLoader(ofd.FileName, models.GlContext);
                // create model
                var model = new FilterModel(loader);

                // add to list
                viewModel.AddFilter(model);
            }
            catch (Exception e)
            {
                App.ShowErrorDialog(models.App.Window, e.Message);
            }
            finally
            {
                if (disableGl)
                {
                    models.GlContext.Disable();
                }
            }
        }