using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using ComponentFactory.Krypton.Toolkit; using ComponentFactory.Krypton.Navigator; using ComponentFactory.Krypton.Workspace; using ComponentFactory.Krypton.Docking; using System.IO; using System.Text.RegularExpressions; using SigmaDrawerStyle; namespace GeoSigmaViewer { public partial class FormViewer : Form { List viewers = new List(); List layers = new List(); Viewer viewer;// = new Viewer(); LayerTree layerTree; PanelProperty panelProperty = new PanelProperty(); KryptonPage pageProperty = new KryptonPage(); int nViewCount = 0; public FormViewer() { InitializeComponent(); } private void FormViewer_Load(object sender, EventArgs e) { KryptonDockingWorkspace w = kryptonDockingManager.ManageWorkspace(kryptonDockableWorkspace); kryptonDockingManager.ManageControl(kryptonPanel, w); kryptonDockingManager.ManageFloating(this); LoadPropertyPanel(); // OpenFile("c:\\temp\\钻探目标分布图2.dfd"); OpenFile("c:\\temp\\钻探目标分布图.dfd"); //OpenFile("c:\\temp\\self_a.dfd"); } private void btnOpenFile_Click(object sender, EventArgs e) { OpenFileDialog ofd = new OpenFileDialog(); if(ofd.ShowDialog()!=DialogResult.OK) { return; } OpenFile(ofd.FileName); } private void OpenFile(string fileName) { Viewer viewerCur = new Viewer(); if (viewerCur.OpenFile(fileName)==false) { return; } panelProperty.DrawViewer=viewerCur; // Create new page with title and image KryptonPage pageView = new KryptonPage(); pageView.Text="图形 "+(nViewCount+1); pageView.TextTitle=pageView.Text; pageView.TextDescription=pageView.Text; pageView.UniqueName=viewerCur.ID+""; pageView.ImageSmall=imageListSmall.Images[0]; // Add the control for display inside the page viewerCur.Dock=DockStyle.Fill; pageView.Controls.Add(viewerCur); nViewCount++; viewers.Add(viewerCur); viewer=viewerCur; for(int i = 0; i /// 放大 /// /// /// private void btnZoomIn_Click(object sender, EventArgs e) { viewer.ZoomIn(); } private void btnZoomOut_Click(object sender, EventArgs e) { viewer.ZoomOut(); } private void btnTestScroll_Click(object sender, EventArgs e) { viewer.Scroll2(400); } private void FormViewer_Resize(object sender, EventArgs e) { if (viewer==null) return; viewer.ReDrawWindow(); } private void tsbViewAll_Click(object sender, EventArgs e) { viewer.ViewAll(); } /// /// 恢复缺省状态 /// /// /// private void tsbToolDefault_Click(object sender, EventArgs e) { viewer.ActiveTool=DrawToolType.Default; } private void tsbPan_Click(object sender, EventArgs e) { viewer.ActiveTool=DrawToolType.ViewPan; } private void tsbViewWindow_Click(object sender, EventArgs e) { viewer.ActiveTool=DrawToolType.ViewWindow; } private void tsbSelect_Click(object sender, EventArgs e) { viewer.ActiveTool=DrawToolType.Select; } private void tsbPointAdd_Click(object sender, EventArgs e) { viewer.ActiveTool = DrawToolType.Point; } private void tsbCurveAdd_Click(object sender, EventArgs e) { //viewer. //this.ContextMenuStrip = this.contextMenuStrip1; viewer.ActiveTool = DrawToolType.Curve; } private void tsbProportionAdd_Click(object sender, EventArgs e) { viewer.ActiveTool = DrawToolType.Proportion; } private void rectangularCSGridButton_Click(object sender, EventArgs e) { viewer.ActiveTool = DrawToolType.RectangularCSGrid; } private void drawRectangleButton_Click(object sender, EventArgs e) { viewer.ActiveTool = DrawToolType.Rectangle; } private void drawEllipseButton_ButtonClick(object sender, EventArgs e) { viewer.ActiveTool = DrawToolType.Ellipse; } private void drawArcButton_Click(object sender, EventArgs e) { viewer.ActiveTool = DrawToolType.Arc; } private void drawChordButton_Click(object sender, EventArgs e) { viewer.ActiveTool = DrawToolType.Chord; } private void drawPieButton_Click(object sender, EventArgs e) { viewer.ActiveTool = DrawToolType.Pie; } private void drawEquilateralButton_Click(object sender, EventArgs e) { viewer.ActiveTool = DrawToolType.Equilateral; } private void drawTextButton_Click(object sender, EventArgs e) { viewer.ActiveTool = DrawToolType.Text; } private void breakDirectButton_Click(object sender, EventArgs e) { viewer.ActiveTool = DrawToolType.BreakDirect; } private void breakCurveButton_Click(object sender, EventArgs e) { viewer.ActiveTool = DrawToolType.Break; } private void deleteNormalButton_Click(object sender, EventArgs e) { viewer.ActiveTool = DrawToolType.Delete; } private void deleteInButton_Click(object sender, EventArgs e) { viewer.ActiveTool = DrawToolType.DeleteIn; } private void deleteOutButton_Click(object sender, EventArgs e) { viewer.ActiveTool = DrawToolType.DeleteOut; } } }