private void duplicateLayoutToolStripMenuItem_Click(object sender, EventArgs e) { var zLayout = (ProjectLayout)treeView.SelectedNode.Tag; var zLayoutCopy = new ProjectLayout(zLayout.Name + " copy"); zLayoutCopy.DeepCopy(zLayout); ProjectManager.Instance.AddLayout(zLayoutCopy); }
private void addCardLayoutFromTemplateToolStripMenuItem_Click(object sender, EventArgs e) { const string TEMPLATE = "template"; const string NAME = "name"; const string COUNT = "count"; var listTemplateNames = new List <string>(); LayoutTemplateManager.Instance.LayoutTemplates.ForEach(x => listTemplateNames.Add(x.ToString())); var zQuery = new QueryPanelDialog("Select Layout Template", 600, false); zQuery.SetIcon(Resources.CardMakerIcon); zQuery.AddTextBox("New Layout Name", "New Layout", false, NAME); zQuery.AddNumericBox("Number to create", 1, 1, 256, COUNT); var zTxtFilter = zQuery.AddTextBox("Template Filter", string.Empty, false, TEMPLATE + NAME); var zListBoxTemplates = zQuery.AddListBox("Template", listTemplateNames.ToArray(), null, false, 240, TEMPLATE); zListBoxTemplates.Anchor = AnchorStyles.Top | AnchorStyles.Bottom | AnchorStyles.Right | AnchorStyles.Left; zTxtFilter.TextChanged += (o, args) => { var txtBox = (TextBox)o; zListBoxTemplates.Items.Clear(); if (string.IsNullOrWhiteSpace(txtBox.Text)) { listTemplateNames.ForEach(zTemplate => zListBoxTemplates.Items.Add(zTemplate)); } else { listTemplateNames.Where(sTemplateName => sTemplateName.ToLower().Contains(txtBox.Text.ToLower())).ToList().ForEach(zTemplate => zListBoxTemplates.Items.Add(zTemplate)); } }; zQuery.AllowResize(); while (DialogResult.OK == zQuery.ShowDialog(this)) { var nSelectedIndex = listTemplateNames.IndexOf(zQuery.GetString(TEMPLATE)); if (-1 == nSelectedIndex) { MessageBox.Show("Please select a layout template"); continue; } ProjectLayout zSelectedLayout = LayoutTemplateManager.Instance.LayoutTemplates[nSelectedIndex].Layout; for (int nCount = 0; nCount < zQuery.GetDecimal(COUNT); nCount++) { var zLayout = new ProjectLayout(zQuery.GetString(NAME)); zLayout.DeepCopy(zSelectedLayout); ProjectManager.Instance.AddLayout(zLayout); } break; } }
private void defineAsTemplateLayoutToolStripMenuItem_Click(object sender, EventArgs e) { const string NAME = "name"; //const string COPY_REFS = "copy_refs"; var zQuery = new QueryPanelDialog("Template Name", 450, 80, false); zQuery.SetIcon(Resources.CardMakerIcon); zQuery.AddTextBox("Name", "New Template", false, NAME); // TODO: is there really a case where the refs should be copied? //zQuery.AddCheckBox("Copy References", false, COPY_REFS); if (DialogResult.OK == zQuery.ShowDialog(this)) { var zLayout = new ProjectLayout(); zLayout.DeepCopy((ProjectLayout)treeView.SelectedNode.Tag, /*zQuery.GetBool(COPY_REFS)*/ false); var zTemplate = new LayoutTemplate(zQuery.GetString(NAME), zLayout); if (LayoutTemplateManager.Instance.SaveLayoutTemplate(CardMakerInstance.StartupPath, zTemplate)) { LayoutTemplateManager.Instance.LayoutTemplates.Add(zTemplate); } } }
private void addCardLayoutFromTemplateToolStripMenuItem_Click(object sender, EventArgs e) { const string TEMPLATE = "template"; const string NAME = "name"; const string COUNT = "count"; var listItems = new List <string>(); LayoutTemplateManager.Instance.LayoutTemplates.ForEach(x => listItems.Add(x.ToString())); var zQuery = new QueryPanelDialog("Select Layout Template", 450, false); zQuery.SetIcon(Resources.CardMakerIcon); zQuery.AddTextBox("New Layout Name", "New Layout", false, NAME); zQuery.AddNumericBox("Number to create", 1, 1, 256, COUNT); zQuery.AddListBox("Template", listItems.ToArray(), null, false, 120, TEMPLATE); zQuery.AllowResize(); while (DialogResult.OK == zQuery.ShowDialog(this)) { int nSelectedIndex = zQuery.GetIndex(TEMPLATE); if (-1 == nSelectedIndex) { MessageBox.Show("Please select a layout template"); continue; } ProjectLayout zSelectedLayout = LayoutTemplateManager.Instance.LayoutTemplates[nSelectedIndex].Layout; for (int nCount = 0; nCount < zQuery.GetDecimal(COUNT); nCount++) { var zLayout = new ProjectLayout(zQuery.GetString(NAME)); zLayout.DeepCopy(zSelectedLayout); ProjectManager.Instance.AddLayout(zLayout); } break; } }
public LayoutTemplate(string sName, ProjectLayout layout) { Layout = new ProjectLayout(sName); Layout.DeepCopy(layout); }