public NewHomePageForm(FolderXmlElement parentEle, PageType pageType) { InitializeComponent(); this.Text = "新建索引页面"; // 初始化树:只加入频道 _parentEle = parentEle; m_tree = new MyTreeView(); m_tree.TreeMode = TreeMode.SelectTmplt; m_tree.SelectTmpltType = pageType; m_tree.LoadTreeData(); m_tree.HideSelection = false; m_tree.Dock = DockStyle.Fill; TreePanel.Controls.Add(m_tree); if (parentEle == null) { parentEle = (FolderXmlElement)((ElementNode)m_tree.SelectTreeRootChanNode).Element; } NameTextBox.Text = XmlUtilService.CreateIncreasePageTitle(parentEle, PageType.Home); OKBtn.Enabled = false; m_tree.AfterSelect += new TreeViewEventHandler(m_tree_AfterSelect); }
/// <summary> /// 实现执行函数 /// </summary> override public void Execute() { if (NewSnipData == null) { return; } TmpltDesignerPanel tDpanel = dPanel as TmpltDesignerPanel; tDpanel.SaveRects(); foreach (Rect rect in PastedSnipRects) { rect.SnipData = new SnipData(NewSnipData); SnipXmlElement newEle = (SnipXmlElement)Doc.ParseElement(rect.SnipData.SnipElementText); if (Doc.HasContentSnip && newEle.SnipType == PageSnipType.Content) { MessageService.Show("${res:tmpltDesign.tmpltDrawPanel.message.hasContentSnip}"); return; } SnipXmlElement ele = Doc.GetSnipElementById(rect.SnipID); ele.SelectSingleNode("parts").RemoveAll(); ele.SetAttribute("hasSnip", newEle.GetAttribute("hasSnip")); ele.SetAttribute("type", newEle.GetAttribute("type")); XmlNodeList nodes = newEle.SelectSingleNode("parts").SelectNodes("//part"); foreach (XmlNode partNode in nodes) { (partNode as XmlElement).SetAttribute("partId", XmlUtilService.CreateIncreaseId()); ele.SelectSingleNode("parts").AppendChild(partNode); } rect.HasSnip = true; } dPanel.Modified = true; }
/// <summary> /// 新建文件夹 /// </summary> /// <param name="m_tree"></param> internal void NewFolder() { string title = XmlUtilService.CreateIncreaseFolderTitle(((BaseFolderElementNode)CurrentNode).Element as FolderXmlElement); SdsiteXmlDocument doc = Service.Sdsite.CurrentDocument; BaseFolderElementNode parentNode = (BaseFolderElementNode)CurrentNode; doc.CreateFolder(parentNode.Element.Id, title); }
/// <summary> /// 新增频道 /// </summary> /// <param name="m_tree"></param> public void NewChannel() { string title = XmlUtilService.CreateIncreaseChannelTitle(((BaseFolderElementNode)CurrentNode).Element as FolderXmlElement); SdsiteXmlDocument doc = Service.Sdsite.CurrentDocument; BaseFolderElementNode parentNode = (BaseFolderElementNode)this.CurrentNode; doc.CreateChannel(parentNode.Element.Id, title); }
void m_tree_AfterSelect(object sender, TreeViewEventArgs e) { BaseTreeNode myNode = e.Node as BaseTreeNode; if (myNode != null && (myNode.NodeType == TreeNodeType.TmpltFolder || myNode.NodeType == TreeNodeType.TmpltRootFolder)) { OKBtn.Enabled = true; nameTextBox.Text = XmlUtilService.CreateIncreaseTmpltTitle(((ElementNode)m_tree.CurrentNode).Element as FolderXmlElement, TranTmpltType); } else { OKBtn.Enabled = false; } }
public NewPageForm(FolderXmlElement parentEle, PageType pageType) { PageType = pageType; InitializeComponent(); Label label1 = new Label(); label1.AutoSize = true; label1.Location = new Point(24, 6); label1.Name = "label1"; label1.Size = new System.Drawing.Size(41, 12); label1.TabIndex = 0; panel3.Controls.Add(label1); // 初始化树:只加入频道 _parentEle = parentEle; m_tree = new MyTreeView(); m_tree.MultiSelect = true; m_tree.TreeMode = TreeMode.SelectTmplt; m_tree.SelectTmpltType = PageType; m_tree.LoadTreeData(); m_tree.HideSelection = false; if (parentEle != null) { TreeNode parentNode = GetFirstTmpltNode(); if (parentNode != null && parentNode.Nodes.Count > 0) { m_tree.CurrentNode = (BaseTreeNode)parentNode.Nodes[0]; } } m_tree.Dock = DockStyle.Fill; m_tree.ExpandAll(); TreePanel.Controls.Add(m_tree); label1.Text = "新建一个页面,请选择一个将要关联的模板!!"; if (parentEle == null) { parentEle = (FolderXmlElement)((ElementNode)m_tree.SelectTreeRootChanNode).Element; } NameTextBox.Text = XmlUtilService.CreateIncreasePageTitle(parentEle, pageType); OKBtn.Enabled = false; m_tree.SelectedNodesChanged += new EventHandler(m_tree_SelectedNodesChanged); }
/// <summary> /// 保存矩形 /// </summary> public void SaveRects() { float x = DrawPanel.CurZoom; DrawPanel.CurZoom = 1; Dictionary <string, XmlElement> _tempSnips = TmpltDoc.GetAllSnipElementClone(); XmlElement docEle = (XmlElement)TmpltDoc.DocumentElement.SelectSingleNode("rects"); docEle.RemoveAll(); RectLayer boundaryRect = new RectLayer(0, 0, DrawPanel.Width, DrawPanel.Height, TmpltDoc.TmpltCss); LineToRect(boundaryRect); AddRectToXml(docEle, new RectTreeNode(boundaryRect, null)); XmlNodeList snipNodes = docEle.SelectNodes(@"//snip"); foreach (XmlNode snipNode in snipNodes) { if (snipNode.NodeType == XmlNodeType.Element) { SnipXmlElement snipEle = (SnipXmlElement)snipNode; string id = snipEle.Id; if (_tempSnips.ContainsKey(id)) { CssSection tempCss = CssSection.Parse(snipEle.GetAttribute("css")); XmlUtilService.CopyXmlElement(_tempSnips[id], snipEle); snipEle.Width = tempCss.Properties["width"]; snipEle.Height = tempCss.Properties["height"]; snipEle.Css = tempCss.ToString(); } } } DrawPanel.CurZoom = x; TmpltDoc.Reseted = true; }
/// <summary> /// 新建文件夹 /// </summary> void NewResourcesFolder() { SdsiteXmlDocument doc = Service.Sdsite.CurrentDocument; FolderXmlElement parentFolderEle = filePaths[pathNum] as FolderXmlElement; FolderXmlElement newFolderEle = doc.CreateFolder(parentFolderEle, XmlUtilService.CreateIncreaseFolderTitle(parentFolderEle)); Directory.CreateDirectory(newFolderEle.AbsoluteFilePath); MyFolderItem mylvi = new MyFolderItem(newFolderEle); listView.Items.Add(mylvi); KeyValuePair <string, Image> keyImg = GetImageAndKey(mylvi.Element.AbsoluteFilePath); if (!listView.SmallImageList.Images.ContainsKey(keyImg.Key)) { listView.SmallImageList.Images.Add(keyImg.Key, keyImg.Value); } mylvi.ImageKey = keyImg.Key; mylvi.Selected = true; mylvi.BeginEdit(); }
/// <summary> /// 构造函数 /// </summary> public NewTmpltSetupForm(FolderXmlElement parentFolder, TmpltType type) { this._parentFolder = parentFolder; InitializeComponent(); PenSize = 1; PenColor = Color.Black; TmpltType = type; _imageScale = (float)panelGraghics.Width / (float)panelGraghics.Height; if (_backImage != null) { textBoxWidth.Text = _backImage.Width.ToString(); textBoxHeight.Text = _backImage.Height.ToString(); } _defaultHeight = panelGraghics.Height; _defaultWidth = panelGraghics.Width; _pen = new Pen(PenColor, PenSize); _pen.DashStyle = System.Drawing.Drawing2D.DashStyle.Dot; textBoxTitle.Text = XmlUtilService.CreateIncreaseTmpltTitle(_parentFolder, type); string _newTmpltIsUseImg = Service.DesignData.GetValue("NewTmpltIsUseImg"); if (_newTmpltIsUseImg == null) { checkBoxChooseImage.Checked = true; Service.DesignData.SetValue("NewTmpltIsUseImg", true.ToString()); } else { checkBoxChooseImage.Checked = Utility.Convert.StringToBool(_newTmpltIsUseImg); } InitEvent(); Resetimage(); }
/// <summary> /// 新建主页 /// </summary> /// <param name="m_tree"></param> internal void NewHome() { SdsiteXmlDocument doc = Service.Sdsite.CurrentDocument; BaseFolderElementNode parentNode = (BaseFolderElementNode)CurrentNode; KeyValuePair <string, string> myPair = doc.CreateHome(parentNode.Element, XmlUtilService.CreateIncreasePageTitle(((BaseFolderElementNode)CurrentNode).Element as FolderXmlElement, PageType.Home)); Service.Workbench.OpenWorkDocument(WorkDocumentType.TmpltDesigner, myPair.Key); }
/// <summary> /// 简单工厂,创建不同SnipPartType的Part /// </summary> static public SnipPagePart Create(SnipPageDesigner designer, SnipPartType type) { SnipPagePart part; switch (type) { case SnipPartType.None: case SnipPartType.Static: { part = new StaticPart(designer); part.Title = StringParserService.Parse("${res:snipDesign.text.staticPartText}"); break; } case SnipPartType.Box: { part = new SnipPagePart(designer); part.Title = StringParserService.Parse("${res:snipDesign.text.box}"); break; } case SnipPartType.Navigation: { part = new NavigationPart(designer); part.Title = StringParserService.Parse("${res:snipDesign.text.navigationPartText}"); break; } case SnipPartType.List: { part = ListPart.Create(designer); part.Title = StringParserService.Parse("${res:snipDesign.text.listPartText}"); break; } case SnipPartType.ListBox: { part = ListBoxPart.Create(designer); part.Title = StringParserService.Parse("${res:snipDesign.text.listBoxPartText}"); break; } case SnipPartType.Attribute: { part = AttributePart.Create(designer); part.Title = StringParserService.Parse("${res:snipDesign.text.attributePartText}"); break; } case SnipPartType.Path: { part = new PathPart(designer); part.Title = StringParserService.Parse("${res:snipDesign.text.pathPartText}"); break; } default: throw new Exception("开发期异常。未知的SnipPartType:" + type); } part.PartID = XmlUtilService.CreateIncreaseId(); part.PartType = type; return(part); }