/// <summary> /// Отображает диалоговое окно "Новый документ" и, в случае нажатия пользователем кнопки "OK" в нем, производит создание нового документа /// </summary> private void CreateNewDocument() { NewDocumentDialog newDocumentDialog = new NewDocumentDialog(); newDocumentDialog.PresetTemplates = CurrentTemplates; newDocumentDialog.Owner = this; // for WidnowsStartupLocation="CenterOwner" newDocumentDialog.ShowDialog(); if (newDocumentDialog.SelectedTemplate != null) { CurrentFilePath = null; MainCanvas.Children.Clear(); BackgroundManager backgoundManager = new BackgroundManager(newDocumentDialog.SelectedTemplate); backgoundManager.InitializeCanvas(MainCanvas); if (NoDocumentMode) { DisableNoDocumentMode(); } } }
/// <summary> /// Выгружает данный документ-раскадровку на рабочий холст программы /// </summary> /// <param name="storyboardCanvas">Рабочий холст программы, на который предполагается выгрузить данный документ-раскадроку</param> public void UnloadOntoCanvas(StoryboardCanvas storyboardCanvas) { storyboardCanvas.Children.Clear(); BackgroundManager backgoundManager = new BackgroundManager(Template); backgoundManager.InitializeCanvas(storyboardCanvas); for (int i = 0; i < Template.NumFrames; i++) { if (FrameBackgrounds[i] != null) { backgoundManager.AddImageToFrame(i, FrameBackgrounds[i]); } } foreach (ItemTuple itemTuple in StoryboardItems) { Image newImage = new Image(); newImage.Source = itemTuple.Item3; newImage.IsHitTestVisible = false; StoryboardItem newItem = new StoryboardItem(); newItem.Content = newImage; Rect itemRect = itemTuple.Item1; newItem.Width = itemRect.Width; newItem.Height = itemRect.Height; Canvas.SetLeft(newItem, itemRect.X); Canvas.SetTop(newItem, itemRect.Y); newItem.RenderTransform = itemTuple.Item2; storyboardCanvas.Children.Add(newItem); } }