public NodeViewModel Add(string name, IMasterPage masterPage = null) { _document.IsDirty = true; NodeViewModel newNode; if (this.IsRootNode) { ITreeNode treeNode = _treeNodeObject.AddChild(TreeNodeType.MasterPage); if (masterPage == null) { treeNode.AttachedObject = CreatePage(name); } else { treeNode.AttachedObject = masterPage; } newNode = new NodeViewModel(_undoManager, treeNode, this); Children.Add(newNode); } else { newNode = AddNodeAfter(name, masterPage); } return(newNode); }
public IMasterPage DuplicateMasterPage(Guid pageGuid) { CheckOpen(); if (!MasterPages.Contains(pageGuid)) { throw new ArgumentException("pageGuid"); } Serializer writer = new Serializer(_workingDirectoryGuid, Guid.Empty, _workingImagesDirectory); MasterPage sourcePage = MasterPages[pageGuid] as MasterPage; writer.AddMasterPage(sourcePage); IMasterPage newPage = null; using (Stream stream = writer.WriteToStream()) { IObjectContainer container = AddMasterPages(stream); if (container.MasterPageList.Count > 0) { newPage = container.MasterPageList[0]; } } newPage.IsLockedToMasterLocation = sourcePage.IsLockedToMasterLocation; return(newPage); }
public void DuplicateChild(NodeViewModel parent) { ITreeNode treeNode = parent._treeNodeObject.AddChild(NodeType); if (this.NodeType == TreeNodeType.MasterPage) { IDocumentPage sourcePage = this.TreeNodeObject.AttachedObject; IMasterPage newPage = _document.DuplicateMasterPage(sourcePage.Guid); treeNode.AttachedObject = newPage; _document.AddMasterPage(newPage); } else { treeNode.Name = this.Name; } var idx = IndexInParent; NodeViewModel newNode = new NodeViewModel(_undoManager, treeNode, parent); parent.Children.Insert(idx, newNode); newNode.IsExpanded = true; foreach (var item in Children) { item.DuplicateChild(newNode); } }
public AddMasterViewModel(IMasterPage page) { _masterPage = page; _model = PageListModel.GetInstance(); _model.LoadPageTree(); _selectedPageList = new List <IPage>(); }
public IMasterPage CreateMasterPage(ISerializeWriter writer, string pageName, Stream thumbnail) { if (writer == null) { throw new ArgumentNullException("writer"); } CheckOpen(); IMasterPage newMasterPage = CreateMasterPage(pageName); newMasterPage.Open(); PageView baseView = newMasterPage.PageViews[AdaptiveViewSet.Base.Guid] as PageView; IObjectContainer container = baseView.AddObjects(writer.WriteToStream()); // Adjust widgets position from coordinate (0,0); baseView.PageViewStyle.X = 0; baseView.PageViewStyle.Y = 0; if (thumbnail != null) { newMasterPage.Thumbnail = thumbnail; } newMasterPage.Close(); return(newMasterPage); }
private void SelectionPageChangeHandler(Guid pageGuid) { if (pageGuid == Guid.Empty) { bSet2Document = false; Raw_NoteTexts = string.Empty; return; } if (_document != null) { IPage page = _document.Pages.GetPage(pageGuid); if (page != null) { _pageAnnotation = page.Annotation; if (selectVlaue != null) { bSet2Document = false; Raw_NoteTexts = _pageAnnotation.GetextValue(selectVlaue); } bSet2Document = true; PageNoteEanbled = true; } IMasterPage masterPage = _document.MasterPages.GetPage(pageGuid); if (masterPage != null) { PageNoteEanbled = false; } } }
public static string GetHash(IMasterPage page, bool bIsSetTarget = false) { if (page.IsOpened == false) { page.Open(); } else { //MD5 code had been created. //if(string.IsNullOrEmpty(page.MD5)==false) //{ // return page.MD5; //} } //Create new MD% code now SerialPage target = new SerialPage(page); string md5 = CreaetMD5Hash(target, bIsSetTarget); if (bIsSetTarget == true) { page.MD5 = md5; } return(md5); }
private void AddConvertedMasterHandler(object parameter) { IMasterPage page = parameter as IMasterPage; if (page != null) { AddMaster(page.Name, page, false); } }
public IObjectContainer AddMasterPageObject(Guid masterPageGuid, Guid viewGuid, double x = 0, double y = 0) { IObjectContainer container = ParentPage.AddMasterPageObject(masterPageGuid, viewGuid); IMasterPage masterPage = ParentDocument.MasterPages[masterPageGuid]; masterPage.Open(); PageView masterPageView = masterPage.PageViews[viewGuid] as PageView; if (masterPageView == null) { masterPageView = masterPage.PageViews[ParentDocument.AdaptiveViewSet.Base.Guid] as PageView; } double xDelta = masterPageView.PageViewStyle.X - x; double yDelta = masterPageView.PageViewStyle.Y - y; foreach (Widget widget in container.WidgetList) { // Set the created view as the current view because this is the first time when the widget // is added in the current document. widget.CreatedViewGuid = _viewGuid; // Set this flag to false. PlaceWidgetInternal method will set this flag base on checking // if this is base view. widget.HasBeenPlacedInBaseView = false; // Get widget style in this view. IWidgetStyle widgetViewStyle = widget.GetWidgetStyle(_viewGuid); // Widgets in master page should have same relative location, so make them have the same delta. widgetViewStyle.X -= xDelta; widgetViewStyle.Y -= yDelta; if (widget is IHamburgerMenu) { IHamburgerMenu menu = widget as IHamburgerMenu; IHamburgerMenuButton button = menu.MenuButton; IWidgetStyle buttonViewStyle = button.GetWidgetStyle(_viewGuid); buttonViewStyle.X -= xDelta; buttonViewStyle.Y -= yDelta; } PlaceWidgetInternal(widget, true); } // Master Page doesn't contain masters, so we don't handle container.MasterList. return(container); }
private void AddMaster(string name, IMasterPage page = null, bool isEditable = true) { NodeViewModel Node = GetOperationNode().Add(name, page); if (Node != null) { Node.IsSelected = true; Node.IsNodeEditable = isEditable; //CreatePageCommand cmd = new CreatePageCommand(this, Node, Node.Parent, Node.IndexInParent, _pageTree); //_undoManager.Push(cmd); } }
public void AddPage(IMasterPage p) { _pages.Add(p); if (_pages.Count == 1) { showPage((TheMasterPage)p); CurrentPageIndex = 0; } onCurrentIndexChanged(); setNextEnabled(); setBackEnabled(); }
public void AddMasterPage(IMasterPage page) { CheckOpen(); MasterPage pageToAdd = page as MasterPage; if (pageToAdd != null && !_documentData.MasterPages.Contains(pageToAdd.Guid)) { _documentData.MasterPages.Add(pageToAdd.Guid, pageToAdd); pageToAdd.ParentDocument = this; pageToAdd.OnAddToDocument(); } }
private void AddMasterEventCommandHandler(object obj) { IMasterPage MPage = obj as IMasterPage; if (MPage == null) { return; } if (MPage.ActiveConsumerPageGuidList.Contains(PageGID) == false) { return; } DeselectAll(); UpdateAddedMaster2Canvas(MPage.Guid); RefreshZOrders(); }
public UserModule(IUser userImplementation, IMasterPage masterPageImplementation) : base("/user") { _user = userImplementation; _masterPage = masterPageImplementation; _masterPage.Title = "Not Set"; Get["/"] = parameters => "Invalid Path"; Get["/list"] = _ => ListUsers(); Get["/{id:int}"] = parameters => GetUser(parameters); Get["/delete/{id:int}", runAsync : true] = async(x, ct) => await RemoveUser(x); Get["/add"] = parameters => DisplayAddUser(parameters); Post["/add", runAsync : true] = async(x, ct) => await AddUser(x); }
//this function just can be called by deleting a mater page. private void DeletMasterEventCommandHandler(object obj) { IMasterPage MPage = obj as IMasterPage; if (MPage == null) { return; } //if(MPage.ActiveConsumerPageGuidList.Contains(PageGID)==false) //{ // return; //} UpdateRemovedMasterFromCanvas(MPage.Guid); RefreshZOrders(); //avoiding operation conflict, so clear the undo-stack this.UndoManager.Clear(); }
private void DeleteFromAllPagesExecute(object cmdParameter) { if ((!GetOperationNode().IsRootNode) && _bVisible) { NodeViewModel Node = NodeInfo.SelectedNode; IMasterPage masterPage = Node.TreeNodeObject.AttachedObject as IMasterPage; if (masterPage != null && masterPage.ActiveConsumerPageGuidList.Count > 0) { IDocumentService doc = ServiceLocator.Current.GetInstance <IDocumentService>(); #region re-order the Z in page where master is deleted foreach (var guid in masterPage.AllConsumerPageGuidList) { var page = doc.Document.Pages.GetPage(guid); if (page == null) { continue; } bool isOpened = page.IsOpened; if (!isOpened) { page.Open(); } var masterList = page.Masters.Where(a => a.MasterPageGuid == masterPage.Guid).ToList(); foreach (var master in masterList) { page.DeleteMaster(master.Guid); } ReOrderZ(page); if (!isOpened) { page.Close(); } } #endregion _ListEventAggregator.GetEvent <DeleteMasterPageEvent>().Publish(masterPage); } } }
/// <summary> /// Add new master to the end of the list. /// </summary> public NodeViewModel AddNodeAfter(string name, IMasterPage masterPage = null) { _document.IsDirty = true; ITreeNode treeNode = _treeNodeObject.ParentNode.AddChild(TreeNodeType.MasterPage); if (masterPage == null) { treeNode.AttachedObject = CreatePage(name); } else { treeNode.AttachedObject = masterPage; } NodeViewModel newNode = new NodeViewModel(_undoManager, treeNode, Parent); Parent.Children.Add(newNode); return(newNode); }
/// <summary> /// Duplicate page,folder or Branch /// </summary> /// <param name="bBranch">Is duplicate branch or node only</param> /// <returns></returns> public NodeViewModel Duplicate(bool bBranch = true) { string nodename = GetCopyeName(this.Name); _document.IsDirty = true; ITreeNode treeNode = _treeNodeObject.InsertSiblingAfter(NodeType); if (this.NodeType == TreeNodeType.MasterPage) { IDocumentPage sourcePage = this.TreeNodeObject.AttachedObject; IMasterPage newPage = _document.DuplicateMasterPage(sourcePage.Guid); treeNode.AttachedObject = newPage; _document.AddMasterPage(newPage); //open this page _ListEventAggregator.GetEvent <OpenMasterPageEvent>().Publish(newPage.Guid); } else { treeNode.Name = nodename; } var idx = IndexInParent; NodeViewModel newNode = new NodeViewModel(_undoManager, treeNode, Parent); newNode.IsExpanded = true; newNode.IsNodeEditable = true; newNode.IsSelected = true; Parent.Children.Insert(++idx, newNode); //clone child node page if (bBranch) { foreach (var item in Children) { item.DuplicateChild(newNode); } } return(newNode); }
protected override void RunInternal() { Program.Service.NewDocument(DocumentType.Standard); IDocument document = Program.Service.Document; IMasterPage masterPage = document.CreateMasterPage("Master 1"); ITreeNode masterPageNode = document.DocumentSettings.LayoutSetting.MasterPageTree.AddChild(TreeNodeType.MasterPage); masterPageNode.AttachedObject = masterPage; masterPage.Open(); IPageView masterBaseView = masterPage.PageViews[document.AdaptiveViewSet.Base.Guid]; IShape diamond = masterBaseView.CreateWidget(WidgetType.Shape) as IShape; diamond.ShapeType = ShapeType.Diamond; diamond.WidgetStyle.Height = 200; diamond.WidgetStyle.Width = 200; diamond.WidgetStyle.X = 0; diamond.WidgetStyle.Y = 0; diamond.WidgetStyle.Z = 0; diamond.Name = "Z_0_In_MasterPage"; diamond.SetRichText("Z_0_In_MasterPage"); IShape ellipse = masterBaseView.CreateWidget(WidgetType.Shape) as IShape; ellipse.ShapeType = ShapeType.Ellipse; ellipse.WidgetStyle.Height = 200; ellipse.WidgetStyle.Width = 200; ellipse.WidgetStyle.X = 50; ellipse.WidgetStyle.Y = 50; ellipse.WidgetStyle.Z = 1; ellipse.Name = "Z_1_In_MasterPage"; ellipse.SetRichText("Z_1_In_MasterPage"); IShape rectangle = masterBaseView.CreateWidget(WidgetType.Shape) as IShape; rectangle.ShapeType = ShapeType.Rectangle; rectangle.WidgetStyle.Height = 200; rectangle.WidgetStyle.Width = 200; rectangle.WidgetStyle.X = 100; rectangle.WidgetStyle.Y = 100; rectangle.WidgetStyle.Z = 2; rectangle.Name = "Z_2_In_MasterPage"; rectangle.SetRichText("Z_2_In_MasterPage"); List <Guid> guidList = new List <Guid>(); guidList.Add(ellipse.Guid); guidList.Add(rectangle.Guid); IGroup groupInMaster = masterBaseView.CreateGroup(guidList); groupInMaster.Name = "Group_In_MasterPage"; IDocumentPage page = document.CreatePage("Page 1"); ITreeNode pageNode = document.DocumentSettings.LayoutSetting.PageTree.AddChild(TreeNodeType.Page); pageNode.AttachedObject = page; page.Open(); IPageView baseView = page.PageViews[document.AdaptiveViewSet.Base.Guid]; IShape round = baseView.CreateWidget(WidgetType.Shape) as IShape; round.ShapeType = ShapeType.RoundedRectangle; round.WidgetStyle.Height = 200; round.WidgetStyle.Width = 200; round.WidgetStyle.X = 0; round.WidgetStyle.Y = 0; round.WidgetStyle.Z = 0; round.Name = "Z_0_In_Page"; round.SetRichText("Z_0_In_Page"); IMaster master1 = baseView.CreateMaster(masterPage.Guid); master1.MasterStyle.X = 250; master1.MasterStyle.Y = 250; master1.MasterStyle.Z = 1; IShape triangle = baseView.CreateWidget(WidgetType.Shape) as IShape; triangle.ShapeType = ShapeType.Triangle; triangle.WidgetStyle.Height = 200; triangle.WidgetStyle.Width = 200; triangle.WidgetStyle.X = 100; triangle.WidgetStyle.Y = 100; triangle.WidgetStyle.Z = 2; triangle.Name = "Z_2_In_Page"; triangle.SetRichText("Z_2_In_Page"); triangle.WidgetStyle.FillColor = new StyleColor(ColorFillType.Solid, -22550); IMaster master2 = baseView.CreateMaster(masterPage.Guid); master2.MasterStyle.X = 500; master2.MasterStyle.Y = 500; master2.MasterStyle.Z = 3; IShape triangle1 = baseView.CreateWidget(WidgetType.Shape) as IShape; triangle1.ShapeType = ShapeType.Triangle; triangle1.WidgetStyle.Height = 200; triangle1.WidgetStyle.Width = 200; triangle1.WidgetStyle.X = 100; triangle1.WidgetStyle.Y = 100; triangle1.WidgetStyle.Z = 4; triangle1.Name = "Z_4_In_Page"; triangle1.SetRichText("Z_4_In_Page"); triangle1.WidgetStyle.FillColor = new StyleColor(ColorFillType.Solid, -22550); ISerializeWriter writer = document.CreateSerializeWriter(Guid.Empty); writer.AddPage(page); Stream stream = writer.WriteToStream(); // Create another document DocumentService Service = new DocumentService(); Service.NewDocument(DocumentType.Standard); IDocument document2 = Service.Document; IObjectContainer container = document2.AddPages(stream); stream.Close(); foreach (IStandardPage newPage in container.StandardPageList) { ITreeNode node22 = document2.DocumentSettings.LayoutSetting.PageTree.AddChild(TreeNodeType.Page); node22.AttachedObject = newPage; } string target = Path.Combine(Program.WORKING_DIRECTORY, _caseName + "_Target.pn"); Service.Save(target); Service.Close(); // Save the document to a pn file. string source = Path.Combine(Program.WORKING_DIRECTORY, _caseName + "_Source.pn"); Program.Service.Save(source); Program.Service.Close(); }
protected override void RunInternal() { Program.Service.NewDocument(DocumentType.Standard); IDocument document = Program.Service.Document; IMasterPage masterPage = document.CreateMasterPage("Master 1"); ITreeNode masterPageNode = document.DocumentSettings.LayoutSetting.MasterPageTree.AddChild(TreeNodeType.MasterPage); masterPageNode.AttachedObject = masterPage; masterPage.Open(); IPageView masterBaseView = masterPage.PageViews[document.AdaptiveViewSet.Base.Guid]; IButton button = masterBaseView.CreateWidget(WidgetType.Button) as IButton; button.Annotation.SetTextValue("CreatedTime", DateTime.Now.ToString()); // Size button.WidgetStyle.Height = 30; button.WidgetStyle.Width = 100; // Location button.WidgetStyle.X = 0; button.WidgetStyle.Y = 0; button.WidgetStyle.Z = 0; // Text things button.Name = "Button 1"; button.Text = "Button"; button.Tooltip = "Html button."; IImage image = masterBaseView.CreateWidget(WidgetType.Image) as IImage; image.Annotation.SetTextValue("CreatedTime", DateTime.Now.ToString()); image.WidgetStyle.Height = 267; image.WidgetStyle.Width = 116; image.WidgetStyle.X = 150; image.WidgetStyle.Y = 100; image.WidgetStyle.Z = 5; image.Name = "4.png"; image.Tooltip = "A png image has 116 x 267 in size"; // It is a png image by default. Set image stream string imageFile = Path.Combine(Program.WORKING_IMAGES_DIRECTORY, "HangGame", "4.png"); if (File.Exists(imageFile)) { using (FileStream fileStream = new FileStream(imageFile, FileMode.Open, FileAccess.Read)) { MemoryStream imageStream = new MemoryStream(); fileStream.CopyTo(imageStream); image.ImageStream = imageStream; } } IShape lable = masterBaseView.CreateWidget(WidgetType.Shape) as IShape; lable.ShapeType = ShapeType.Paragraph; lable.Annotation.SetTextValue("CreatedTime", DateTime.Now.ToString()); lable.WidgetStyle.Height = 100; lable.WidgetStyle.Width = 200; lable.WidgetStyle.X = 150; lable.WidgetStyle.Y = 300; lable.WidgetStyle.Z = 9; lable.Name = "Label 1"; lable.Tooltip = "A label."; lable.SetRichText("Label"); lable.WidgetStyle.LineColor = new StyleColor(ColorFillType.Solid, -16777216); lable.WidgetStyle.LineWidth = 0; // No border lable.WidgetStyle.FillColor = new StyleColor(ColorFillType.Solid, 16777215); // Transparent lable.WidgetStyle.HorzAlign = Alignment.Left; lable.WidgetStyle.VertAlign = Alignment.Top; IDocumentPage page = document.CreatePage("Page 1"); ITreeNode pageNode = document.DocumentSettings.LayoutSetting.PageTree.AddChild(TreeNodeType.Page); pageNode.AttachedObject = page; page.Open(); IPageView baseView = page.PageViews[document.AdaptiveViewSet.Base.Guid]; IMaster master = baseView.CreateMaster(masterPage.Guid); IDocumentPage page2 = document.DuplicatePage(page.Guid); ITreeNode pageNode2 = document.DocumentSettings.LayoutSetting.PageTree.AddChild(TreeNodeType.Page); pageNode2.AttachedObject = page2; // Save the document to a pn file. string fileName = Path.Combine(Program.WORKING_DIRECTORY, _caseName + ".pn"); Program.Service.Save(fileName); // Close this document when you don't work on it anymore. Program.Service.Close(); }
protected override void RunInternal() { Program.Service.NewDocument(DocumentType.Standard); IDocument document = Program.Service.Document; IMasterPage masterPage = document.CreateMasterPage("Master 1"); ITreeNode masterPageNode = document.DocumentSettings.LayoutSetting.MasterPageTree.AddChild(TreeNodeType.MasterPage); masterPageNode.AttachedObject = masterPage; masterPage.Open(); IPageView masterBaseView = masterPage.PageViews[document.AdaptiveViewSet.Base.Guid]; IButton button = masterBaseView.CreateWidget(WidgetType.Button) as IButton; button.Annotation.SetTextValue("CreatedTime", DateTime.Now.ToString()); // Size button.WidgetStyle.Height = 30; button.WidgetStyle.Width = 100; // Location button.WidgetStyle.X = 0; button.WidgetStyle.Y = 0; button.WidgetStyle.Z = 0; // Text things button.Name = "Button 1"; button.Text = "Button"; button.Tooltip = "Html button."; IImage image = masterBaseView.CreateWidget(WidgetType.Image) as IImage; image.Annotation.SetTextValue("CreatedTime", DateTime.Now.ToString()); image.WidgetStyle.Height = 267; image.WidgetStyle.Width = 116; image.WidgetStyle.X = 150; image.WidgetStyle.Y = 100; image.WidgetStyle.Z = 5; image.Name = "4.png"; image.Tooltip = "A png image has 116 x 267 in size"; // It is a png image by default. Set image stream string imageFile = Path.Combine(Program.WORKING_IMAGES_DIRECTORY, "HangGame", "4.png"); if (File.Exists(imageFile)) { using (FileStream fileStream = new FileStream(imageFile, FileMode.Open, FileAccess.Read)) { MemoryStream imageStream = new MemoryStream(); fileStream.CopyTo(imageStream); image.ImageStream = imageStream; } } IShape lable = masterBaseView.CreateWidget(WidgetType.Shape) as IShape; lable.ShapeType = ShapeType.Paragraph; lable.Annotation.SetTextValue("CreatedTime", DateTime.Now.ToString()); lable.WidgetStyle.Height = 100; lable.WidgetStyle.Width = 200; lable.WidgetStyle.X = 350; lable.WidgetStyle.Y = 300; lable.WidgetStyle.Z = 9; lable.Name = "Label 1"; lable.Tooltip = "A label."; lable.SetRichText("Label"); lable.WidgetStyle.FillColor = new StyleColor(ColorFillType.Solid, -999); List <Guid> guidList = new List <Guid>(); guidList.Add(image.Guid); guidList.Add(lable.Guid); masterBaseView.CreateGroup(guidList); IDocumentPage page = document.CreatePage("Page 1"); ITreeNode pageNode = document.DocumentSettings.LayoutSetting.PageTree.AddChild(TreeNodeType.Page); pageNode.AttachedObject = page; page.Open(); IPageView baseView = page.PageViews[document.AdaptiveViewSet.Base.Guid]; IMaster master = baseView.CreateMaster(masterPage.Guid); master.MasterStyle.X = 150; master.MasterStyle.Y = 50; // Copy master in the same page. ISerializeWriter writer = document.CreateSerializeWriter(document.AdaptiveViewSet.Base.Guid); writer.AddMaster(master); Stream stream = writer.WriteToStream(); // Create another document DocumentService Service = new DocumentService(); Service.NewDocument(DocumentType.Standard); IDocument document2 = Service.Document; IDocumentPage page2 = document2.CreatePage("Page 1"); ITreeNode pageNode2 = document2.DocumentSettings.LayoutSetting.PageTree.AddChild(TreeNodeType.Page); pageNode2.AttachedObject = page2; page2.Open(); IPageView baseView2 = page2.PageViews[document2.AdaptiveViewSet.Base.Guid]; baseView2.AddObjects(stream); string target = Path.Combine(Program.WORKING_DIRECTORY, _caseName + "_Target.pn"); Service.Save(target); Service.Close(); string source = Path.Combine(Program.WORKING_DIRECTORY, _caseName + "_Source.pn"); Program.Service.Save(source); Program.Service.Close(); }
public MasterPagePresenter(IMasterPage iMasterPage, Account loginUser) : base(loginUser) { _IMasterPage = iMasterPage; }
public AddMasterWindow(IMasterPage masterPage) { InitializeComponent(); this.DataContext = new AddMasterViewModel(masterPage); }
private void DeleteMasterExecute(object cmdParameter) { if ((!GetOperationNode().IsRootNode) && _bVisible) { NodeViewModel Node = NodeInfo.SelectedNode; bool containedInPages = false; IMasterPage masterPage = Node.TreeNodeObject.AttachedObject as IMasterPage; if (masterPage != null && masterPage.AllConsumerPageGuidList.Count > 0) { MessageBoxResult ret = MessageBox.Show(GlobalData.FindResource("MasterDelete_AlertContent"), GlobalData.FindResource("MasterDelete_AlertTitle"), MessageBoxButton.OKCancel); if (ret.Equals(MessageBoxResult.Cancel)) { return; } containedInPages = true; } NodeViewModel parent = Node.Parent; //int index = Node.IndexInParent; Node.Remove(); if (containedInPages) { IDocumentService doc = ServiceLocator.Current.GetInstance <IDocumentService>(); #region re-order the Z in page where master is deleted foreach (var guid in masterPage.AllConsumerPageGuidList) { var page = doc.Document.Pages.GetPage(guid); if (page == null) { continue; } bool isOpened = page.IsOpened; if (!isOpened) { page.Open(); } ReOrderZ(page); if (!isOpened) { page.Close(); } } #endregion _ListEventAggregator.GetEvent <DeleteMasterPageEvent>().Publish(masterPage); } //if (index >= 0) //{ // DeletePageCommand cmd = new DeletePageCommand(this, Node, parent, index, _pageTree); // _undoManager.Push(cmd); //} } if (_pageTree != null) { _pageTree.Focus(); } }
protected override void RunInternal() { Program.Service.NewDocument(DocumentType.Standard); IDocument document = Program.Service.Document; IMasterPage masterPage = document.CreateMasterPage("Master 1"); ITreeNode masterPageNode = document.DocumentSettings.LayoutSetting.MasterPageTree.AddChild(TreeNodeType.MasterPage); masterPageNode.AttachedObject = masterPage; masterPage.Open(); IPageView masterBaseView = masterPage.PageViews[document.AdaptiveViewSet.Base.Guid]; IButton button = masterBaseView.CreateWidget(WidgetType.Button) as IButton; button.Annotation.SetTextValue("CreatedTime", DateTime.Now.ToString()); // Size button.WidgetStyle.Height = 30; button.WidgetStyle.Width = 100; // Location button.WidgetStyle.X = 0; button.WidgetStyle.Y = 0; button.WidgetStyle.Z = 0; // Text things button.Name = "Button 1"; button.Text = "Button"; button.Tooltip = "Html button."; IImage image = masterBaseView.CreateWidget(WidgetType.Image) as IImage; image.Annotation.SetTextValue("CreatedTime", DateTime.Now.ToString()); image.WidgetStyle.Height = 267; image.WidgetStyle.Width = 116; image.WidgetStyle.X = 150; image.WidgetStyle.Y = 100; image.WidgetStyle.Z = 5; image.Name = "4.png"; image.Tooltip = "A png image has 116 x 267 in size"; // It is a png image by default. Set image stream string imageFile = Path.Combine(Program.WORKING_IMAGES_DIRECTORY, "HangGame", "4.png"); if (File.Exists(imageFile)) { using (FileStream fileStream = new FileStream(imageFile, FileMode.Open, FileAccess.Read)) { MemoryStream imageStream = new MemoryStream(); fileStream.CopyTo(imageStream); image.ImageStream = imageStream; } } IShape lable = masterBaseView.CreateWidget(WidgetType.Shape) as IShape; lable.ShapeType = ShapeType.Paragraph; lable.Annotation.SetTextValue("CreatedTime", DateTime.Now.ToString()); lable.WidgetStyle.Height = 100; lable.WidgetStyle.Width = 200; lable.WidgetStyle.X = 150; lable.WidgetStyle.Y = 300; lable.WidgetStyle.Z = 9; lable.Name = "Label 1"; lable.Tooltip = "A label."; lable.SetRichText("Label"); lable.WidgetStyle.LineColor = new StyleColor(ColorFillType.Solid, -16777216); lable.WidgetStyle.LineWidth = 0; // No border lable.WidgetStyle.FillColor = new StyleColor(ColorFillType.Solid, 16777215); // Transparent lable.WidgetStyle.HorzAlign = Alignment.Left; lable.WidgetStyle.VertAlign = Alignment.Top; IDocumentPage page = document.CreatePage("Page 1"); ITreeNode pageNode = document.DocumentSettings.LayoutSetting.PageTree.AddChild(TreeNodeType.Page); pageNode.AttachedObject = page; page.Open(); IPageView baseView = page.PageViews[document.AdaptiveViewSet.Base.Guid]; IMaster master = baseView.CreateMaster(masterPage.Guid); IDocumentPage page2 = document.CreatePage("Page 2"); ITreeNode pageNode2 = document.DocumentSettings.LayoutSetting.PageTree.AddChild(TreeNodeType.Page); pageNode2.AttachedObject = page2; page2.Open(); IPageView baseView2 = page2.PageViews[document.AdaptiveViewSet.Base.Guid]; IMaster master2 = baseView2.CreateMaster(masterPage.Guid); IHamburgerMenu hamburgerMenu = baseView2.CreateWidget(WidgetType.HamburgerMenu) as IHamburgerMenu; hamburgerMenu.Annotation.SetTextValue("CreatedTime", DateTime.Now.ToString()); hamburgerMenu.WidgetStyle.Height = 280; hamburgerMenu.WidgetStyle.Width = 150; hamburgerMenu.WidgetStyle.X = 0; hamburgerMenu.WidgetStyle.Y = 700; hamburgerMenu.WidgetStyle.Z = 14; hamburgerMenu.Name = "HamburgerMenu 1"; hamburgerMenu.Tooltip = "A hamburger menu."; // Menu botton hamburgerMenu.MenuButton.WidgetStyle.Height = 50; hamburgerMenu.MenuButton.WidgetStyle.Width = 50; hamburgerMenu.MenuButton.WidgetStyle.X = 0; hamburgerMenu.MenuButton.WidgetStyle.Y = 700; hamburgerMenu.MenuButton.WidgetStyle.Z = 0; // Menu page, add a shape IPage menuPage = hamburgerMenu.MenuPage; menuPage.Open(); // Open page to edit. // Get the base view of menu page. IPageView menuBaseView = menuPage.PageViews[document.AdaptiveViewSet.Base.Guid]; // Create widgts on the base view in the menu page. IShape diamond = menuBaseView.CreateWidget(WidgetType.Shape) as IShape; diamond.ShapeType = ShapeType.Diamond; diamond.Annotation.SetTextValue("CreatedTime", DateTime.Now.ToString()); diamond.WidgetStyle.Height = 100; diamond.WidgetStyle.Width = 100; diamond.Name = "Diamond 1"; diamond.Tooltip = "A Diamond."; diamond.SetRichText("Diamond"); menuPage.Close(); // Close Page to release resources. page2.Close(); // Save the document to a pn file. string before = Path.Combine(Program.WORKING_DIRECTORY, _caseName + "_Before.pn"); Program.Service.Save(before); // Delete master page. document.DeleteMasterPage(masterPage.Guid); document.DocumentSettings.LayoutSetting.MasterPageTree.RemoveChild(masterPageNode); string after = Path.Combine(Program.WORKING_DIRECTORY, _caseName + "_After_DeleteFromOpenedPage.pn"); Program.Service.Save(after); page2.Open(); string after2 = Path.Combine(Program.WORKING_DIRECTORY, _caseName + "_After_DeleteFromClosedPage.pn"); Program.Service.Save(after2); // Close this document when you don't work on it anymore. Program.Service.Close(); }