private FixedDocumentSequence CreateFixedDocumentSequence(IEnumerable <IEnumerable <string> > projects, Size areaExtent, Size areaOrigin, bool fixedStrokeThickness, DiagramTable table) { var fixedDocumentSeq = new FixedDocumentSequence() { Name = "diagrams" }; foreach (var diagrams in projects) { var fixedDocument = CreateFixedDocument(diagrams, areaExtent, areaOrigin, fixedStrokeThickness, table); var documentRef = new DocumentReference(); documentRef.BeginInit(); documentRef.SetDocument(fixedDocument); documentRef.EndInit(); (fixedDocumentSeq as IAddChild).AddChild(documentRef); } return(fixedDocumentSeq); }
private void DxfExportDlg(bool shortenStart, bool shortenEnd, DiagramTable table) { var dlg = new Microsoft.Win32.SaveFileDialog() { Filter = "Dxf R12 (*.dxf)|*.dxf|Dxf AutoCAD 2000 (*.dxf)|*.dxf|All Files (*.*)|*.*", FilterIndex = 2, Title = "Export Diagram to Dxf", FileName = "diagram" }; var res = dlg.ShowDialog(); if (res == true) { var filter = dlg.FilterIndex; var fileName = dlg.FileName; var canvas = Editor.Context.CurrentCanvas; DxfExportDiagram(fileName, canvas, shortenStart, shortenEnd, FilterToAcadVer(filter), table); } }
/// <summary> /// Initializes the model required /// </summary> public DiagramController() { validatepermissions = new validatePermissions(); DiagramModel = new DiagramTable(); ProcessModel = new ProcessesTable(); HardwareModel = new HardwareTable(); FlowModel = new FlowTable(); hardwareReferenceTable = new HardwareReferenceTable(); }
public FixedDocument CreateFixedDocument(IEnumerable <string> diagrams, Size areaExtent, Size areaOrigin, bool fixedStrokeThickness, DiagramTable table) { var origin = new Point(areaOrigin.Width, areaOrigin.Height); var area = new Rect(origin, areaExtent); var scale = Math.Min(areaExtent.Width / PageWidth, areaExtent.Height / PageHeight); var fixedDocument = new FixedDocument() { Name = "diagrams" }; //fixedDocument.DocumentPaginator.PageSize = new Size(areaExtent.Width, areaExtent.Height); SetElementResources(fixedDocument.Resources, fixedStrokeThickness); foreach (var diagram in diagrams) { var pageContent = new PageContent(); var fixedPage = new FixedPage(); //pageContent.Child = fixedPage; ((IAddChild)pageContent).AddChild(fixedPage); fixedDocument.Pages.Add(pageContent); fixedPage.Width = areaExtent.Width; fixedPage.Height = areaExtent.Height; var element = CreateDiagramElement(diagram, areaExtent, origin, area, fixedStrokeThickness, fixedDocument.Resources, table); // transform and scale for print element.LayoutTransform = new ScaleTransform(scale, scale); // set element position FixedPage.SetLeft(element, areaOrigin.Width); FixedPage.SetTop(element, areaOrigin.Height); // add element to page fixedPage.Children.Add(element); // update fixed page layout //fixedPage.Measure(areaExtent); //fixedPage.Arrange(area); } return(fixedDocument); }
private void SetCurrentTable() { var table = new DiagramTable() { Id = 0, Revision1 = new Revision() { Version = "", Date = "", Remarks = "", }, Revision2 = new Revision() { Version = "", Date = "", Remarks = "", }, Revision3 = new Revision() { Version = "", Date = "", Remarks = "", }, PathLogo1 = "", PathLogo2 = "", Drawn = new Person() { Name = "user", Date = DateTime.Today.ToString("yyyy-MM-dd") }, Checked = new Person() { Name = "user", Date = DateTime.Today.ToString("yyyy-MM-dd") }, Approved = new Person() { Name = "user", Date = DateTime.Today.ToString("yyyy-MM-dd") }, Title = "LOGIC DIAGRAM", SubTitle1 = "DIAGRAM", SubTitle2 = "", SubTitle3 = "", Rev = "0", Status = "-", Page = "-", Pages = "-", Project = "Sample", OrderNo = "", DocumentNo = "", ArchiveNo = "" }; TableGrid.SetData(this, table); }
public MonitorController() { locationTable = new LocationTable(); // _fieldsTable = new CustomFieldsTable("LocationCustomFields"); _processesTable = new ProcessesTable(); _diagramTable = new DiagramTable(); _circuitTable = new CircuitTable(); _usertable = new UserTable(); _monitorTable = new ObjectRealMonitorTable(); }
private void DxfExportDiagram(string fileName, ICanvas canvas, bool shortenStart, bool shortenEnd, DxfAcadVer version, DiagramTable table) { string model = ModelEditor.GenerateDiagram(canvas, null, canvas.GetProperties()); string dxf = DxfGenerate(model, shortenStart, shortenEnd, version, table); DxfSave(fileName, dxf); }
private string DxfGenerate(string model, bool shortenStart, bool shortenEnd, DxfAcadVer version, DiagramTable table) { var dxf = new DxfDiagramCreator() { ShortenStart = shortenStart, ShortenEnd = shortenEnd, DiagramProperties = Editor.Context.CurrentCanvas.GetProperties(), Tags = Editor.Context.Tags }; return(dxf.GenerateDxf(model, version, table)); }
private void TableList_PreviewMouseMove(object sender, MouseEventArgs e) { Point point = e.GetPosition(null); Vector diff = DragStartPoint - point; if (e.LeftButton == MouseButtonState.Pressed && (Math.Abs(diff.X) > SystemParameters.MinimumHorizontalDragDistance || Math.Abs(diff.Y) > SystemParameters.MinimumVerticalDragDistance)) { var listView = sender as ListView; var listViewItem = FindVisualParent <ListViewItem>((DependencyObject)e.OriginalSource); if (listViewItem != null) { DiagramTable table = (DiagramTable)listView.ItemContainerGenerator.ItemFromContainer(listViewItem); DataObject dragData = new DataObject("Table", table); DragDrop.DoDragDrop(listViewItem, dragData, DragDropEffects.Move); } } }
private FrameworkElement CreateDiagramElement(string diagram, Size areaExtent, Point origin, Rect area, bool fixedStrokeThickness, ResourceDictionary resources, DiagramTable table) { var grid = new Grid() { ClipToBounds = true, Resources = resources }; var template = new Control() { Template = grid.Resources[ResourceConstants.KeyLandscapePageTemplate] as ControlTemplate }; var canvas = new DiagramCanvas() { Width = PageWidth, Height = PageHeight }; ModelEditor.Parse(diagram, canvas, this.DiagramCreator, 0, 0, false, false, false, true); grid.Children.Add(template); grid.Children.Add(canvas); LineEx.SetShortenStart(grid, ShortenStart); LineEx.SetShortenEnd(grid, ShortenEnd); TableGrid.SetData(grid, table); return(grid); }
public void Print(IEnumerable <string> diagrams, string name, DiagramTable table) { if (diagrams == null) { throw new ArgumentNullException(); } var dlg = new PrintDialog(); ShowPrintDialog(dlg); var caps = dlg.PrintQueue.GetPrintCapabilities(dlg.PrintTicket); var areaExtent = new Size(caps.PageImageableArea.ExtentWidth, caps.PageImageableArea.ExtentHeight); var areaOrigin = new Size(caps.PageImageableArea.OriginWidth, caps.PageImageableArea.OriginHeight); var fixedDocument = CreateFixedDocument(diagrams, areaExtent, areaOrigin, false, table); dlg.PrintDocument(fixedDocument.DocumentPaginator, name); }
private void UpdateCurrentTable(DiagramTable table) { TableGrid.SetData(this, null); TableGrid.SetData(this, table); }
private void CreateNewTable() { int id = Tables.Count > 0 ? Tables.Cast <DiagramTable>().Max(x => x.Id) + 1 : 0; string strId = id.ToString(); var table = new DiagramTable() { Id = id, Revision1 = new Revision() { Version = "", Date = "", Remarks = "", }, Revision2 = new Revision() { Version = "", Date = "", Remarks = "", }, Revision3 = new Revision() { Version = "", Date = "", Remarks = "", }, PathLogo1 = "", PathLogo2 = "", Drawn = new Person() { Name = "user", Date = DateTime.Today.ToString("yyyy-MM-dd") }, Checked = new Person() { Name = "user", Date = DateTime.Today.ToString("yyyy-MM-dd") }, Approved = new Person() { Name = "user", Date = DateTime.Today.ToString("yyyy-MM-dd") }, Title = "LOGIC DIAGRAM", SubTitle1 = "DIAGRAM" + strId, SubTitle2 = "", SubTitle3 = "", Rev = "0", Status = "-", Page = "-", Pages = "-", Project = "Sample", OrderNo = "", DocumentNo = "", ArchiveNo = "" }; Tables.Add(table); int index = TableList.Items.Add(table); TableList.SelectedIndex = index; TableList.ScrollIntoView(TableList.SelectedItem); }