コード例 #1
0
        private void GeoContextMenuStrip_Opening(object sender, CancelEventArgs e)
        {
            var pointTypes             = new MeasureType[] { MeasureType.Point, MeasureType.Circle, MeasureType.PointCircle, MeasureType.CrossPoint };
            var menuContext            = sender as ContextMenuStrip;
            var name                   = "SetCoordinateSystemToolStripMenuItem";
            GeoDataGridViewModel model = getContextMenuGeoDataGridViewModel(menuContext);

            if (model != null)
            {
                var menuItem    = menuContext.Items[name];             //.OfType<ToolStripMenuItem>().SingleOrDefault(p => p.Name == name);
                var isPointType = (pointTypes.Contains(model.GeoType));
                menuItem.Enabled = isPointType;
            }
        }
コード例 #2
0
 private void GeoContextMenuStrip_Opening(object sender, CancelEventArgs e)
 {
     var pointTypes = new MeasureType[] { MeasureType.Point, MeasureType.Circle, MeasureType.PointCircle, MeasureType.CrossPoint };
     var menuContext = sender as ContextMenuStrip;
     var name = "SetCoordinateSystemToolStripMenuItem";
     GeoDataGridViewModel model = getContextMenuGeoDataGridViewModel(menuContext);
     if (model != null)
     {
         var menuItem = menuContext.Items[name];//.OfType<ToolStripMenuItem>().SingleOrDefault(p => p.Name == name);
         var isPointType = (pointTypes.Contains(model.GeoType));
         menuItem.Enabled = isPointType;
     }
 }
コード例 #3
0
        private void reAssignModelValue(GeoDataGridViewModel oldModel, GeoDataGridViewModel newModel)
        {
            var lineTypes = new MeasureType[] { MeasureType.Distance,
                                                MeasureType.DistanceX,
                                                MeasureType.DistanceY,
                                                MeasureType.SymmetryLine };

            var isCrossPoint = (oldModel.GeoType == MeasureType.CrossPoint);
            var isCircleType = (oldModel.GeoType == MeasureType.Circle || oldModel.GeoType == MeasureType.PointCircle);
            if (newModel == null)
            {
                modelSetToDefault(oldModel);
            }
            else
            {
                oldModel.Row1 = newModel.Row1;
                oldModel.Col1 = newModel.Col1;
                if (!isCrossPoint)
                {
                    if (lineTypes.Contains(oldModel.GeoType))
                    {
                        oldModel.Row2 = newModel.Row2;
                        oldModel.Col2 = newModel.Col2;
                    }
                    oldModel.Distance = (isCircleType) ? newModel.Distance * _circleDistanceSetting : newModel.Distance;
                    oldModel.WorldDistance = (isCircleType) ? newModel.WorldDistance * _circleDistanceSetting : newModel.WorldDistance;
                }
            }
            if (isCrossPoint)
            {
                updateDependGeoObject(oldModel);
            }
        }