Пример #1
0
        public async Task AddTemplateButton(EventTokenButton token)
        {
            try
            {
                // Show Dialog
                var td = new TemplateDialog
                {
                    AccentColor = (new ColorUtil.HSV((float)MathUtil.Rand() * 360, 1.0f, 1.0f)).ToColor(),
                };
                Hot.KeybordShortcutDisabledFlags["AddTemplate"] = true;
                var res = await td.ShowAsync();

                if (res == ContentDialogResult.Primary)
                {
                    AddTemplateChip(td.TemplateName, td.AccentColor, td.TemplateRemarks);
                    LOG.AddMes(LLV.INF, new LogAccessor.Image {
                        Key = "Lump16"
                    }, "FeatureJitTemplatePanel-CannotUndo");
                }
            }
            finally
            {
                Hot.KeybordShortcutDisabledFlags["AddTemplate"] = false;
            }
        }
Пример #2
0
 public void Start(EventTokenButton token)
 {
     Mes.ChangeLanguage(LanguageCode);
     if (IsMute == false)
     {
         LOG.AddMes(LLV.WAR, "RestartForLanguage").Solo();
     }
     Redraw();
 }
Пример #3
0
        public async Task OpenAsync(EventTokenButton token)
        {
            var text   = LOG.GetAllLogText();
            var folder = ApplicationData.Current.TemporaryFolder;
            var file   = await folder.CreateFileAsync("fcLogOpen_temp.txt", CreationCollisionOption.GenerateUniqueName);

            await FileIO.WriteTextAsync(file, text);  // テンポラリファイルを消す

            await Launcher.LaunchFileAsync(file);     // URLスキームで起動
        }
Пример #4
0
        public void Redo(EventTokenButton token)
        {
            if (Hot.ActiveTemplate.UndoRedoCurrenttPointer > Hot.ActiveTemplate.RedoStream.Count - 1)
            {
                LOG.AddMes(LLV.WAR, "FeatureUndoRedo-NoRedo").Solo();
                return;
            }

            Hot.ActiveTemplate.UndoRedoRequestedPointer++;
            QueueConsumptionTask(null);
        }
Пример #5
0
        public async Task Open(EventTokenButton token)
        {
            var fd = new FileOpenPicker
            {
                SuggestedStartLocation = PickerLocationId.DocumentsLibrary,
            };
            var last = ConfigUtil.Get("LastStudyFilePath", string.Empty);

            fd.FileTypeFilter.Add(".jmt");
            var file = await fd.PickSingleFileAsync();

            await LoadFromJson(file, token);

            LOG.AddMes(LLV.INF, "FeatureOpenStudy-LoadCompletely", file.Name, file.Path);
            ControlUtil.SetTitleText(file.Name);
            Cold.StudyFilePath = file.Path;
            ConfigUtil.Set("LastStudyFilePath", Cold.StudyFilePath);
        }
Пример #6
0
        public async Task Save(EventTokenButton token)
        {
            var fd = new FileSavePicker
            {
                DefaultFileExtension = ".jmt",
                SuggestedFileName    = Cold.StudyFilePath != null?Path.GetFileName(Cold.StudyFilePath) : $"Jit Model {(DateTime.Now.ToString("yyyyMMdd-HHmmss"))}",
            };

            fd.FileTypeChoices.Add("Jit Stream Designer", new List <string>()
            {
                ".jmt", ".json", ".txt"
            });
            var file = await fd.PickSaveFileAsync();

            await WriteAsJson(file);

            LOG.AddMes(LLV.INF, "FeatureSaveStudy-SaveCompletely", file.Name, file.Path);
            ControlUtil.SetTitleText(file.Name);
            Cold.StudyFilePath = file.Path;
            ConfigUtil.Set("LastStudyFilePath", Cold.StudyFilePath);
        }
Пример #7
0
        private void zoomWithProperty(EventTokenButton ta)
        {
            var zx = MathUtil.Trim(Pane.Target.ZoomX * ZoomTimes + ZoomPlus, 500, 100000);
            var zy = MathUtil.Trim(Pane.Target.ZoomY * ZoomTimes + ZoomPlus, 500, 100000);

            if (double.IsNaN(ZoomXSet) == false)
            {
                zx = MathUtil.Trim(ZoomXSet, 500, 100000);
            }
            if (double.IsNaN(ZoomYSet) == false)
            {
                zy = MathUtil.Trim(ZoomYSet, 500, 100000);
            }
            Pane.Target.ZoomX = zx;
            Pane.Target.ZoomY = zy;
            Token.Link(ta, new EventTokenPaneChanged
            {
                TokenID    = TokensGeneral.Zoomed,
                Sender     = this,
                Remarks    = "button zoomed",
                TargetPane = Pane.Target,
            });
            Redraw();
        }
Пример #8
0
 public void Start(EventTokenButton token)
 {
     zoomWithProperty(token);
 }