예제 #1
0
        public IActionResult Settings(MgSettings settings)
        {
            // save new settings
            if (ModelState.IsValid)
            {
                _hlp.writeMgSettings(settings);
            }

            return(View(settings));
        }
예제 #2
0
        /// <summary>
        /// Occurs when this command is clicked
        /// </summary>
        public override void OnClick()
        {
            MgSettings MS = new MgSettings();

            if (!Directory.Exists(MS.RootDir))
            {
                MS.RootDir = Environment.GetFolderPath(Environment.SpecialFolder.Personal);
            }
            if (!Directory.Exists(MS.OutDir))
            {
                MS.OutDir = MS.RootDir;
            }
            MS.Save();

            MainForm M = new MainForm();

            if (M.ShowDialog() == DialogResult.OK)
            {
                MergeFunc MF = new MergeFunc(M.RootDir, M.Filename, M.OutDir);
                TM = new System.Windows.Forms.Timer();
                SW.Reset();

                Geoprocessor GP = new Geoprocessor()
                {
                    AddOutputsToMap = M.AddOutputsToMap,
                    OverwriteOutput = M.OverwriteOutput
                };

                GP.ToolExecuting += GP_ToolExecuting;
                GP.ToolExecuted  += GP_ToolExecuted;
                TM.Tick          += TM_Tick;

                ITrackCancel           pTrackCancel    = new CancelTrackerClass();
                IProgressDialogFactory pProgDlgFactory = new ProgressDialogFactoryClass();
                pProDlg = pProgDlgFactory.Create(pTrackCancel, m_application.hWnd) as IProgressDialog2;
                pProDlg.CancelEnabled = true;
                pProDlg.Title         = "Merge in progress...";
                pProDlg.Description   = "Please wait patiently...";
                pProDlg.Animation     = esriProgressAnimationTypes.esriProgressSpiral;

                pStepPro           = pProDlg as IStepProgressor;
                pStepPro.MinRange  = 0;
                pStepPro.MaxRange  = 100;
                pStepPro.StepValue = 1;
                pStepPro.Message   = "Initiating...";

                GP.Execute(MF.GetMerge(), pTrackCancel);
            }
            M.Dispose();
        }
예제 #3
0
        public void writeMgSettings(MgSettings newSettings)
        {
            //Description must not be overwritten. Better way??
            newSettings.FileSettings.ProfilePicturePath.Description = MgSettings.FileSettings.ProfilePicturePath.Description;
            newSettings.ApiSettings.AdhocSignerURL.Description      = MgSettings.ApiSettings.AdhocSignerURL.Description;
            newSettings.ApiSettings.SignerURL.Description           = MgSettings.ApiSettings.SignerURL.Description;
            newSettings.ApiSettings.VerifyURL.Description           = MgSettings.ApiSettings.VerifyURL.Description;


            using (StreamWriter file = File.CreateText(@"mgsettings.json"))
            {
                JsonSerializer serializer = new JsonSerializer();
                serializer.Formatting = Formatting.Indented;
                serializer.Serialize(file, newSettings);
            }

            //after writing re-read to update in-memory settings
            readMgSettings();
        }