Пример #1
0
        public async Task OpenDocument(StorageFolder folder)
        {
            command_New.Activate  = false;
            command_Open.Activate = false;
            await ApplyAllResources();

            CurrentDCDocument = new DirectCanvasDocument(DCRenderView.GetDevice(), folder);
            await CurrentDCDocument.LoadAsync();

            CurrentCanvasCase = CurrentDCDocument.canvasCase;
            foreach (StorageFile file in await CurrentDCDocument.animationsFolder.GetFilesAsync(Windows.Storage.Search.CommonFileQuery.OrderByName))
            {
                if (".DCAnimation".Equals(file.FileType, StringComparison.CurrentCultureIgnoreCase))
                {
                    var animation = await DirectCanvasAnimationFormat.LoadFromFileAsync(file);

                    LoadedAnimation.Add(animation.Guid, animation);
                }
                else if (".DCTimeline".Equals(file.FileType, StringComparison.CurrentCultureIgnoreCase))
                {
                    var timeline = await DirectCanvasTimelineFormat.LoadFromFileAsync(file);

                    LoadedTimeline.Add(timeline.Guid, timeline);
                }
            }

            command_Save.Activate   = true;
            command_Import.Activate = true;
            command_Export.Activate = true;
            command_Undo.CanvasCase = CurrentCanvasCase;
            command_Redo.CanvasCase = CurrentCanvasCase;

            command_ResetCanvasPosition.Activate = true;
            CurrentRenderDataProvider            = CurrentCanvasCase.ViewRenderer.RenderDataProvider;
            DefaultRenderDataProvider            = CurrentCanvasCase.ViewRenderer.RenderDataProvider;
        }