예제 #1
0
 public void MouseDown(object sender, GeoOperatorMouseEventArgs e)
 {
     if (e.Button == MouseButtons.Left)
     {
         List<GeoSite> rnList;
         List<GeoCell> cellList;
         double x = m_Helper.ScreenToPlanetOfX(e.X);
         double y = m_Helper.ScreenToPlanetOfY(e.Y);
         double longitude = 0.0;
         double latitude = 0.0;
         GeoBLPoint point = m_Helper.ScreenToLat(e.X, e.Y);
         if (point != null)
         {
             longitude = point.L;
             latitude = point.B;
         }
         GeoRelayNodeEventArgs addRelayNodeArgs = new GeoRelayNodeEventArgs();   //Edited by liangwenli 20110304
         GeoSite item = new GeoSite(x, y, longitude, latitude);
         addRelayNodeArgs.RelayNodeList.Add(item);
         this.m_NetEvent.GeoAddRelayMsg(addRelayNodeArgs, out rnList, out cellList);
         //this.m_NetEvent.GeoAddSiteMsg(addRelayNodeArgs, out rnList, out cellList);
         if ((rnList != null) && (rnList.Count > 0))
         {
             this.m_NetEntityData.AddRelay(rnList, cellList);
             this.m_NetEntityData.RaiseDataChangedEvent(sender, e);
         }
         e.Handled = true;
     }
 }
예제 #2
0
 public void MouseUp(object sender, GeoOperatorMouseEventArgs e)
 {
     if (e.Button == MouseButtons.Left)
     {
         this.m_IsMouseDown = false;
         e.Handled = true;
     }
 }
예제 #3
0
 public void MouseDown(object sender, GeoOperatorMouseEventArgs e)
 {
     if (e.Button == MouseButtons.Left)
     {
         GeoXYPoint point = this.m_Helper.ScreenToPlanet(e.Location);
         this.m_ScreenLine.AddPoint(point);
     }
 }
예제 #4
0
 public void MouseDown(object sender, GeoOperatorMouseEventArgs e)
 {
     if (e.Button == MouseButtons.Left)
     {
         this.m_IsMouseDown = true;
         this.m_TileMgr.StartMovePoint = e.Location;
         this.m_LastMovingPoint = e.Location;
         e.Handled = true;
     }
 }
예제 #5
0
 public void MouseDown(object sender, GeoOperatorMouseEventArgs e)
 {
     if (e.Button == MouseButtons.Left)
     {
         this.m_SelectionPolygon.Points.Clear();
         this.m_GlassPanel.AddPolygonRegion(this.m_SelectionRegion, this.m_RectangleStyle);
         this.m_StartScreenPoint = e.Location;
         this.m_StartPlanePoint = this.m_Helper.ScreenToPlanet(e.Location);
         e.Handled = true;
     }
 }
예제 #6
0
 public void MouseDown(object sender, GeoOperatorMouseEventArgs e)
 {
     if (e.Button == MouseButtons.Left)
     {
         this.m_EventMgr.OnScaleChanged(true);
         e.Handled = true;
     }
     else if (e.Button == MouseButtons.Right)
     {
         this.m_EventMgr.OnScaleChanged(false);
         e.Handled = true;
     }
 }
예제 #7
0
 public void MouseDoubleClick(object sender, GeoOperatorMouseEventArgs e)
 {
     List<GeoXYPoint> pointsList = new List<GeoXYPoint>();
     List<GeoPointStyle> pointStylesList = new List<GeoPointStyle>();
     this.m_SimulationData.GetPointStyleDict(pointsList, pointStylesList);
     for (int i = 0; i < pointsList.Count; i++)
     {
         GeoXYPoint point = pointsList[i];
         GeoPointStyle style = pointStylesList[i];
         if (this.m_SelectionHelper.IsPointOnPoint(e.Location, point, style))
         {
             this.m_GisAnalyEvent.AnalyGeoNodeInfo(point, -1.0);
             e.Handled = true;
             break;
         }
     }
 }
예제 #8
0
 public void MouseDown(object sender, GeoOperatorMouseEventArgs e)
 {
     if (e.Button == MouseButtons.Left)
     {
         this.m_StartScreenPoint = e.Location;
         this.m_StartPlanePoint = this.m_Helper.ScreenToPlanet(e.Location);
         this.m_OuterLeft = this.m_Helper.ScreenToPlanetOfX(-1);
         this.m_OuterRight = this.m_Helper.ScreenToPlanetOfX((sender as Control).Width);
         this.m_OuterBottom = this.m_Helper.ScreenToPlanetOfY((sender as Control).Height);
         this.m_OuterTop = this.m_Helper.ScreenToPlanetOfY(-1);
         this.m_OuterBoundPolygon.Points.Clear();
         this.m_OuterBoundPolygon.Points.Add(new GeoXYPoint(this.m_OuterLeft, this.m_OuterTop));
         this.m_OuterBoundPolygon.Points.Add(new GeoXYPoint(this.m_OuterRight, this.m_OuterTop));
         this.m_OuterBoundPolygon.Points.Add(new GeoXYPoint(this.m_OuterRight, this.m_OuterBottom));
         this.m_OuterBoundPolygon.Points.Add(new GeoXYPoint(this.m_OuterLeft, this.m_OuterBottom));
         e.Handled = true;
     }
 }
예제 #9
0
 public void MouseDoubleClick(object sender, GeoOperatorMouseEventArgs e)
 {
     e.Handled = true;
     if (e.Button == MouseButtons.Left)
     {
         this.m_ScreenLine.Points.RemoveAt(this.m_ScreenLine.PointsCount - 1);
         if (this.m_ScreenLine.PointsCount < 2)
         {
             MessageBoxUtil.ShowError(GISGlobalResourceEx.GIS_UI_VERTEX_LACK_STR);
             this.ResetStatus();
         }
         else
         {
             this.m_BaseData.AddLine(this.m_ScreenLine);
             this.ResetStatus();
             this.m_BaseData.RaiseDataChangedEvent(sender, e);
         }
     }
 }
예제 #10
0
 public void MouseUp(object sender, GeoOperatorMouseEventArgs e)
 {
     e.Handled = true;
     if (e.Button == MouseButtons.Left)
     {
         System.Drawing.Point location = e.Location;
         int num = Math.Min(location.X, this.m_StartScreenPoint.X);
         int num2 = Math.Max(location.X, this.m_StartScreenPoint.X);
         int num3 = Math.Min(location.Y, this.m_StartScreenPoint.Y);
         int num4 = Math.Max(location.Y, this.m_StartScreenPoint.Y);
         this.m_GlassPanel.RemovePolygon(this.m_SelectionRegion.ID);
         if (((num2 - num) > 0) && ((num4 - num3) > 0))
         {
             this.m_Helper.ZoomedIn(num, num3, num2, num4);
             this.m_EventMgr.MapImported("1:" + ((this.m_GeoMapMgr.ActualScale * 100)).ToString());
             this.m_GeoMapMgr.RaiseMapChangedEvent(this, e);
         }
     }
 }
예제 #11
0
 public void MouseUp(object sender, GeoOperatorMouseEventArgs e)
 {
     e.Handled = true;
 }
예제 #12
0
 public void MouseUp(object sender, GeoOperatorMouseEventArgs e)
 {
     if (this.m_SelectedVector != null)
     {
         if (e.Button == MouseButtons.Right)
         {
             Feature feature = GeoDataMgr.GetFeatureByVector(this.m_VectorDatas, this.m_SelectedVector, "DBFProperties");
             Feature feature2 = GeoDataMgr.GetFeatureByVector(this.m_VectorDatas, this.m_SelectedVector, "TextName");
             if ((feature.Value != null) || (feature2.Value != null))
             {
                 this.m_ContextMenuStrip.Show(sender as Control, e.Location);
             }
         }
         e.Handled = true;
     }
 }
예제 #13
0
 public void MouseDoubleClick(object sender, GeoOperatorMouseEventArgs e)
 {
     this.ResetStatus();
 }
예제 #14
0
 public void MouseUp(object sender, GeoOperatorMouseEventArgs e)
 {
     if (e.Button == MouseButtons.Left)
     {
         e.Handled = true;
         int num = Math.Abs((int) (e.X - this.m_StartScreenPoint.X));
         int num2 = Math.Abs((int) (e.Y - this.m_StartScreenPoint.Y));
         if ((num >= 1) && (num2 >= 1))
         {
             GeoXYPoint point = this.m_Helper.ScreenToPlanet(e.Location);
             GeoXYRect rect = new GeoXYRect(this.m_StartPlanePoint, point);
             this.m_EventMgr.SendSelectedAreaMsg(rect);
         }
     }
 }
예제 #15
0
 public void MouseDoubleClick(object sender, GeoOperatorMouseEventArgs e)
 {
     if ((e.Button == MouseButtons.Left) && (this.m_SelectedVector != null))
     {
         this.ProcessGeometryProperties(sender, e);
     }
 }
예제 #16
0
 public void MouseWheel(object sender, GeoOperatorMouseEventArgs e)
 {
 }
예제 #17
0
 public void MouseDoubleClick(object sender, GeoOperatorMouseEventArgs e)
 {
 }
예제 #18
0
 public void MouseDown(object sender, GeoOperatorMouseEventArgs e)
 {
     if (e.Button == MouseButtons.Left)
     {
         GeoXYPoint point = this.m_Helper.ScreenToPlanet(e.Location);
         this.m_ScreenLine.AddPoint(point);
         this.m_GlassPanel.AddPoint(point, this.m_VetexPointStyle);
         this.m_VectorIdCollection.Add(point.ID);
         e.Handled = true;
     }
 }
예제 #19
0
 public void MouseHover(object sender, GeoOperatorMouseEventArgs e)
 {
 }
예제 #20
0
 public void MouseDown(object sender, GeoOperatorMouseEventArgs e)
 {
     if (this.m_NeedRefresh)
     {
         this.m_NeedRefresh = false;
         Control control = sender as Control;
         if (control != null)
         {
             this.m_GeoEntityRegionMgr.RefreshGraphicsPathDict(control.ClientRectangle);
         }
     }
     this.m_SelectedVector = null;
     this.m_GlassPanel.RemoveVectors(this.m_SelectedVectorIdCollection);
     this.m_SelectedVectorIdCollection.Clear();
     if (this.m_GeoEntityRegionMgr.IsVectorSelected(e.Location, ref this.m_SelectedVector))
     {
         this.m_SelectedVectorIdCollection.Add(this.m_SelectedVector.ID);
         if (this.m_SelectedVector is GeoXYPoint)
         {
             GeoPointStyle pointStyle = this.GetPointStyleById(this.m_VectorDatas, this.m_SelectedVector.ID).Clone() as GeoPointStyle;
             pointStyle.SetSelectedStyleForGlassPanel();
             this.m_GlassPanel.AddPoint(this.m_SelectedVector as GeoXYPoint, pointStyle);
         }
         else if (this.m_SelectedVector is GeoXYLine)
         {
             GeoLineStyle lineStyle = this.GetLineStyleById(this.m_VectorDatas, this.m_SelectedVector.ID).Clone() as GeoLineStyle;
             lineStyle.SetSelectedStyleForGlassPanel();
             this.m_GlassPanel.AddLine(this.m_SelectedVector as GeoXYLine, lineStyle);
         }
         else if (this.m_SelectedVector is GeoPolygonRegion)
         {
             GeoPolygonStyle polygonStyle = this.GetPolygonStyleById(this.m_VectorDatas, this.m_SelectedVector.ID).Clone() as GeoPolygonStyle;
             polygonStyle.SetSelectedStyleForGlassPanel();
             this.m_GlassPanel.AddPolygonRegion(this.m_SelectedVector as GeoPolygonRegion, polygonStyle);
         }
         e.Handled = true;
     }
 }