/// <summary> /// new layer /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void LayerAdd_Click(object sender, RoutedEventArgs e) { var layer = new LayerControl(); MainCanvas.Children.Add(layer); LayersWidgets.Add(layer.Widget); // new level ZOrder to top LayerWidget last = LayersWidgets.Last(); for (int i = LayersWidgets.Count - 1; i > 0; i--) { LayersWidgets[i] = LayersWidgets[i - 1]; } LayersWidgets[0] = last; GlobalState.LayersIndexes++; if (LayerList.Items.Count > 0) { LayerList.SelectedIndex = 0; } layer.CheckedChanged += SelectLayer; layer.Delete += DeleteLayer; }
public void LayerAdded() { if (LayerControl != null) { LayerControl.AddLayer(CollectionLayer); } }
public LayerEffectAddedAction(LayerEffect effect) { _newEffect = effect; if (LayerControl.CurrentDrag != null) { _layerControl = LayerControl.CurrentDrag; } else { _layerControl = LayerControl.Current; } if (effect.Type == EffectType.Entry) { _oldEffect = _layerControl.Layer.EntryEffect.Copy(false); } else if (effect.Type == EffectType.Emphasis) { _oldEffect = _layerControl.Layer.EmphasisEffect.Copy(false); } else if (effect.Type == EffectType.Exit) { _oldEffect = _layerControl.Layer.ExitEffect.Copy(false); } else { _oldEffect = LayerEffect.Empty; } //_oldEffect.ShapeLayer = _layerControl.Layer; Name = string.Format("add a <{0}> Effect", effect.Type); }
/// <summary> /// Добавление нового слоя на холст и обновление коллекции виджетов /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void LayerAdd_Click(object sender, RoutedEventArgs e) { var layer = new LayerControl(); MainCanvas.Children.Add(layer); LayersWidgets.Add(layer.Widget); // Перемещение элемента в самый верх списка, для наглядности отображения верхних слоев пользователю LayerWidget last = LayersWidgets.Last(); for (int i = LayersWidgets.Count - 1; i > 0; i--) { LayersWidgets[i] = LayersWidgets[i - 1]; } LayersWidgets[0] = last; GlobalState.LayersIndexes++; if (LayerList.Items.Count > 0) { LayerList.SelectedIndex = 0; } layer.CheckedChanged += SelectLayer; layer.Delete += DeleteLayer; }
public LayerMoveActionNew(MessageControl layerContainer, LayerControl source, LayerControl dest) { this.layerContainer = layerContainer; this.source = source; this.dest = dest; Name = "item move"; }
private void Mc_MouseLeftButtonUp(object sender, MouseButtonEventArgs e) { WellLocation wl = GetClickWell(e); if (wl != null) { LayerControl lc = this.AssociatedObject as LayerControl; SelectWellLocations.Add(wl.WellNum); WellPosition = new Point(wl.X, wl.Y); Point p = lc.Root.RenderTransform.Transform(WellPosition);//转换到圆心 WellPointList.Add(p); this.TrackAdorner.RemoveLastPoint(); this.TrackAdorner.AddPoint(p); this.TrackAdorner.AddPoint(p); //执行画线事件 if (OnDrawWellLine != null) { UndoWellPointListHistory.Clear(); UndoSelectWellLocationstHistory.Clear(); OnDrawWellLine.Invoke(this); } } }
public LayerManagerPanel() { InitializeComponent(); // Create other command var control = new LayerControl(); control.ControlsClicked += LayerCommand_ControlsClicked; // Add to dropdown list var dropdown = new ToolStripDropDown(); dropdown.Items.Add(new ToolStripControlHost(control)); btnLayer.DropDown = dropdown; // Add sign btnAdd.Tag = LayerCommand.Add; // Set border width _borderWidth = 4F; // Set serveral option for paint SetStyle( ControlStyles.AllPaintingInWmPaint | ControlStyles.OptimizedDoubleBuffer | ControlStyles.ResizeRedraw | ControlStyles.UserPaint, true); }
private WellLocation GetClickWell(MouseButtonEventArgs e) { if (IsStopMove) { return(null); } LayerControl lc = this.AssociatedObject as LayerControl; Point p = e.GetPosition(lc); HitTestResult hr = VisualTreeHelper.HitTest(lc, p); if (hr == null || hr.VisualHit == null) { return(null); } Shape sp = hr.VisualHit as Shape; if (sp == null) { return(null); } WellLocation wl = sp.DataContext as WellLocation; if (wl == null) { return(null); } return(wl); }
public LayerManagerPanel() { InitializeComponent(); // Create other command var control = new LayerControl(); control.ControlsClicked += LayerCommand_ControlsClicked; // Add to dropdown list var dropdown = new ToolStripDropDown(); dropdown.Items.Add(new ToolStripControlHost(control)); btnLayer.DropDown = dropdown; // Add sign btnAdd.Tag = LayerCommand.Add; // Set border width _borderWidth = 4F; // Set serveral option for paint SetStyle( ControlStyles.AllPaintingInWmPaint | ControlStyles.OptimizedDoubleBuffer | ControlStyles.ResizeRedraw | ControlStyles.UserPaint, true); }
public LayerEffectRemovedAction(LayerControl frameLayer, LayerEffect effect) { _removedEffect = effect; _layerControl = frameLayer; Name = string.Format("remove a <{0}> Effect", effect.Type); }
public void UpdatePages() { MatrControl.UpdateMatrices(); CompControl.Update(); PlaceControl.Update(); TraceControl.Update(); LayerControl.Update(); }
public LayerAddedAction(LayerControl frameLayer) : base(frameLayer) { Name = string.Format("add <{0}> shape ", frameLayer.Shape.Type); if (frameLayer.Layer != null) { //_layer = frameLayer.Layer.Copy(); _layer = frameLayer.Layer; } }
/// <summary> /// add item added uploadAction /// </summary> /// <param name="shape"></param> /// <param name="frameLayer"></param> public static void AddLayerAddedAction(LayerControl frameLayer) { if (_current != null && _current.CanAddAction && MessageControl.Current != null && frameLayer != null) { UndoService.AddAction(new LayerAddedAction(frameLayer)); } }
public static void AddLayerEffectRemovedAction(LayerControl framelayer, LayerEffect effect) { if (_current != null && _current.CanAddAction && effect != null && framelayer != null) { _current.AddAction(new LayerEffectRemovedAction(framelayer, effect)); } }
private void CustomLayerControl_Selected(LayerControl LayerControl) { if (selectedLayerControl != null) { selectedLayerControl.IsSelected = false; selectedLayerControl.Refresh(); } LayerControl.IsSelected = true; LayerControl.Refresh(); selectedLayerControl = LayerControl; }
/// <summary> /// Function: Add item move uploadAction /// Author : Jerry Xu /// Date : 2008-8-22 /// </summary> /// <param name="layerContainer">FrameLayerContainerNew</param> /// <param name="source">FrameLayerNew</param> /// <param name="dest">FrameLayerNew</param> public static void AddLayerMoveAction(MessageControl layerContainer, LayerControl source, LayerControl dest) { if (_current != null && _current.CanAddAction && layerContainer != null && source != null && dest != null) { UndoService.AddAction(new LayerMoveActionNew(layerContainer, source, dest)); } }
public static bool ClearManipulator(LayerControl SectionLayer) { if (SectionLayer == null) { return(false); } BehaviorCollection bc = Interaction.GetBehaviors(SectionLayer); bc.Clear(); return(true); }
protected override void OnDetaching() { base.OnDetaching(); if (this.AssociatedObject == null) { return; } LayerControl lc = this.AssociatedObject as LayerControl; MapControl mc = FindChild.FindVisualParent <MapControl>(lc); mc.MouseMove -= Mc_MouseMove; mc.MouseLeftButtonUp -= Mc_MouseLeftButtonUp; }
public static bool SetManipulator(ManipulatorBase mp, LayerControl SectionLayer) { if (mp == null || SectionLayer == null) { return(false); } BehaviorCollection bc = Interaction.GetBehaviors(SectionLayer); bc.Clear(); bc.Add(mp); return(true); }
public static bool IsContainManipulator(this LayerControl SectionLayer) { if (SectionLayer == null) { return(false); } BehaviorCollection bc = Interaction.GetBehaviors(SectionLayer); if (bc.Count > 0) { return(true); } return(false); }
private void Layers_LayerChanged(LayerControl sender, LayerItem layer) { List <Layer> layers = sender.Items.Select(li => li.Layer).ToList(); byte start = (byte)((layer.Start) ? layer.Index : sender.StartLayer); if (layer.State == ListViewItemStates.Selected) { MapControl.CurrentLayer = (short)layer.Index; } MapControl.SetLayers(layers, start); redoButton.Enabled = MapControl.CanRedo; undoButton.Enabled = MapControl.CanUndo; IsDirty = true; }
private void btDown_Click(object Sender, System.EventArgs E) { if (selectedLayerControl != null) { int currentIndex = flpLayers.Controls.GetChildIndex(selectedLayerControl); if (currentIndex < flpLayers.Controls.Count - 1) { int targetIndex = currentIndex + 1; LayerControl targetControl = (LayerControl)flpLayers.Controls[targetIndex]; flpLayers.Controls.SetChildIndex(targetControl, currentIndex); flpLayers.Controls.SetChildIndex(selectedLayerControl, targetIndex); LayerIndexChanged?.Invoke(selectedLayerControl.LayerName, flpLayers.Controls.IndexOf(selectedLayerControl)); } } }
/// <summary> /// Adds a layer. /// </summary> /// <param name="LayerName">Name of the layer</param> /// <param name="IsCustom">Flag indicating whether the layer is a custom layer</param> public void AddLayer(string LayerName, bool IsCustom) { if (IsCustom) { var newLayerControl = new LayerControl(LayerName, true); newLayerControl.Selected += CustomLayerControl_Selected; newLayerControl.NameChanged += CustomLayerControl_NameChanged; flpLayers.Controls.Add(newLayerControl); flpLayers.Height += newLayerControl.Height + 6; } else { flpLayers.Controls.Add(new LayerControl(LayerName)); } Refresh(); }
private void Mc_MouseDown(object sender, System.Windows.Input.MouseButtonEventArgs e) { if (e.MiddleButton == System.Windows.Input.MouseButtonState.Pressed) { MapControl mc = this.AssociatedObject as MapControl; if (mc == null || mc.Items.IsEmpty) { return; } LayerControl lc = mc.GetLayerControl(0); if (lc == null) { return; } AdornerDecorator ad = mc.GetLayerControlAdornerDecorator(0); mousedown = e.GetPosition(ad); } }
private void LayerList_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (LayerList.SelectedItems.Count > 0) { LayerWidget selectedWidget = LayersWidgets[LayerList.SelectedIndex]; object layer = null; if (MainCanvas.Children.Count > selectedWidget.ThisLayer.LayerIndex) { layer = MainCanvas.Children[selectedWidget.ThisLayer.LayerIndex]; } if (layer != null && layer is UIElement) { (layer as UIElement).Focus(); } else { return; } foreach (var child in MainCanvas.Children) { if (child is LayerControl && child != layer) { LayerControl layCtrl = child as LayerControl; layCtrl.NonFocus(null, null); } } } if (LayersWidgets.Count == 0) { return; } if (LayerList.SelectedIndex < 0) { LayerList.SelectedIndex = 0; } var selectedObj = LayersWidgets[LayerList.SelectedIndex]; var host = selectedObj.ThisLayer.VisualHost; SizeX.Text = Math.Round(host.SpaceSize.Width, 0).ToString(); SizeY.Text = Math.Round(host.SpaceSize.Height, 0).ToString(); }
private void Layers_LayerVisibilityChanged(LayerControl sender, LayerItem layer) { Map.Layers[layer.Index].Visible = layer.Visible; foreach (Entity ent in Map.Entities) { if (ent.Layer == layer.Index) { ent.Visible = layer.Visible; } } foreach (Zone zone in Map.Zones) { if (zone.Layer == layer.Index) { zone.Visible = layer.Visible; } } MapControl.Invalidate(); IsDirty = true; }
private void AssociatedObject_MouseWheel(object sender, System.Windows.Input.MouseWheelEventArgs e) { MapControl mc = this.AssociatedObject as MapControl; if (mc == null || mc.Items.IsEmpty) { return; } LayerControl lc = mc.GetLayerControl(0); if (lc == null) { return; } AdornerDecorator ad = mc.GetLayerControlAdornerDecorator(0); Point cp = e.GetPosition(ad); Zoom(mc, cp, e.Delta); }
private void btDel_Click(object Sender, System.EventArgs E) { if (selectedLayerControl == null) { return; } LayerRemoved?.Invoke(selectedLayerControl); int layerIndex = flpLayers.Controls.IndexOf(selectedLayerControl); flpLayers.Height -= selectedLayerControl.Height + 6; flpLayers.Controls.Remove(selectedLayerControl); int currentIndex = 0; foreach (LayerControl lc in flpLayers.Controls) { if (layerIndex <= currentIndex) { LayerIndexChanged?.Invoke(lc.LayerName, currentIndex); } currentIndex++; } selectedLayerControl = null; Refresh(); }
private void BuildColumn2DGraph(Column column) { foreach (var layer in column.ListOfLayers.AsEnumerable().Reverse()) { var layerControl = new LayerControl($"{layer.LayerName}:{layer.LayerNumber}"); switch (layer.LayerName) { case "DP-I": layerControl.LayerName.FontSize = 10; layerControl.Height = 85; layerControl.FillWithGatesContainedInALayer(layer); StackPanelForLayers.Children.Add(layerControl); break; case "DP-II": layerControl.LayerName.FontSize = 10; layerControl.Height = 85; layerControl.FillWithGatesContainedInALayer(layer); StackPanelForLayers.Children.Add(layerControl); break; case "AND": layerControl.Height = 500; layerControl.FillWithGatesContainedInALayer(layer); layerControl.AddLevel((layer.LayerUp.LayerNumber + layer.LayerDown.LayerNumber) / 2); StackPanelForLayers.Children.Add(layerControl); break; case "INPUT": case "OR": layerControl.LayerName.FontSize = 15; layerControl.Height = 85; layerControl.FillWithGatesContainedInALayer(layer); StackPanelForLayers.Children.Add(layerControl); break; case "FUZZY": layerControl.LayerName.FontSize = 15; layerControl.Height = 500; var listOfXCellsFuzzyMaster = ((FUZZYLayer)layer).ListOfXCellsFuzzyMaster; if (listOfXCellsFuzzyMaster != null) { foreach (var xCellFuzzyMaster in listOfXCellsFuzzyMaster) { var userControlXCeldaFuzzyMaster = new UserControlXCeldaFuzzyMaster(); foreach (var xCellOrExplode in xCellFuzzyMaster.ORExplodeLayer.ListOfXCellsOrExplode) { var gateOrExplode = new Gate(1, 20, 20, xCellOrExplode.GetType().ToString(), xCellOrExplode.Id); userControlXCeldaFuzzyMaster.PutAGateInAOrXplodeLevel((layer.LayerUp.LayerNumber + layer.LayerNumber - 1) / 2, gateOrExplode); //.LayerControlOrExplode.StackPanelInScrollViewerLevel.Children.Add(gateOrExplode); } double widthXCellsFuzzy = 0; foreach (var xCellFuzzy in xCellFuzzyMaster.ListOfXCellFuzzy) { var userControlXCeldaFuzzy = new UserControlXCeldaFuzzy(xCellFuzzy.Id); userControlXCeldaFuzzyMaster.PutAXCellFuzzyInLayerControlForXCellsFuzzy(userControlXCeldaFuzzy); widthXCellsFuzzy += 53; } (double lowerLimit, double upperLimit)previousRegion = (default(double), default(double)); var widthRegionsManagerUC = widthXCellsFuzzy; // userControlXCeldaFuzzyMaster.ActualWidth;// = 100;// userControlXCeldaFuzzyMaster.RegionsManagerUC.ActualWidth; foreach (var region in xCellFuzzyMaster.RegionsManager.ListOfRegions.OrderBy(reg => reg.lowerLimit).ToList()) { userControlXCeldaFuzzyMaster.RegionsManagerUC.AddRegion(widthRegionsManagerUC * (region.lowerLimit - previousRegion.upperLimit) / Convert.ToDouble(xCellFuzzyMaster.RegionsManager.R), false); userControlXCeldaFuzzyMaster.RegionsManagerUC.AddRegion(widthRegionsManagerUC * (region.upperLimit - region.lowerLimit) / Convert.ToDouble(xCellFuzzyMaster.RegionsManager.R), true); previousRegion = region; } var widthColumnHistogram = 2 * widthRegionsManagerUC / Convert.ToDouble(((XCellInput)(xCellFuzzyMaster.ListOfInputChannels[0].XCellOrigin)).CounterOfValues.Count()); var sumOfCountsHistogram = Convert.ToDouble(((XCellInput)(xCellFuzzyMaster.ListOfInputChannels[0].XCellOrigin)).GetSumOfAllCounters()); foreach (var count in ((XCellInput)(xCellFuzzyMaster.ListOfInputChannels[0].XCellOrigin)).CounterOfValues) { userControlXCeldaFuzzyMaster.HistogramUC.AddColumn(count, sumOfCountsHistogram, 100.0, widthColumnHistogram); } layerControl.StackPanelInScrollViewerLevel.Children.Add(userControlXCeldaFuzzyMaster); } } StackPanelForLayers.Children.Add(layerControl); break; } } }
protected override bool DoPaste() { if (ClipboardService.ContainsImage()) { var img = ClipboardService.GetImage(); var imgFile = Constance.LibraryImageDir + Constance.DirectorySeparator + DateTime.Now.Ticks.ToString() + ".jpg"; IOHelper.SaveImage(img, imgFile); innerControl.AddImageLayer(imgFile); return(true); } foreach (var item in items) { if (item.Layer.Shape.LayerType == LayerType.Paint) { LayerControl lc = innerControl.GetLayerControl(item.Shape); if (lc != null || innerControl.IsExistShapeDraw) { ShapeBase pastedShape = item.Shape; pastedShape.ID = KeyGenerator.Shape; pastedShape.Move(Point.Empty); innerControl.AddLayer(pastedShape, ShapeAddMode.Clone); } else { IShapeLayer sl = item.Layer.Copy(); if (sl.Shape.Type == ShapeType.ShapeDraw) { ShapeDraw sd = sl.Shape as ShapeDraw; sd.Clear(); sd.AddChildShape(item.Shape); //sl.Shape = sd; } sl.Shape.Move(Point.Empty); LayerControl tmlayer = innerControl.NewLayerControl(sl as ShapeLayer, true); innerControl.AddLayer(tmlayer, ShapeAddMode.Clone); tmlayer.Shape.Zoom = item.Shape.Zoom; } } else { //LayerControl layerControl = innerControl.GetLayerControl(item.Shape); //if (layerControl != null) //{ // bool isBackGround = layerControl.Shape.IsBackground; // ShapeLayer item = layerControl.Layer.Copy(); // item.Shape = item.Shape.Copy(); // item.Shape.Move(Point.Empty); // if (isBackGround) // { // item.Shape.BeginEdit(); // item.Shape.IsBackground = false; // item.Shape.EndEdit(); // } // innerControl.AddLayer(innerControl.NewLayerControl(item, true), ShapeAddMode.Clone); // if(isBackGround) // item.Shape.IsBackground = isBackGround; //} //else //{ bool isBackGround = item.Layer.Shape.IsBackground; if (isBackGround) { item.Layer.Shape.BeginEdit(); item.Layer.Shape.IsBackground = false; item.Layer.Shape.EndEdit(); } var sl = item.Layer.Copy(); sl.Shape.Move(Point.Empty); innerControl.AddLayer(innerControl.NewLayerControl(sl as ShapeLayer, true), ShapeAddMode.Clone); if (isBackGround) { item.Layer.Shape.IsBackground = isBackGround; } //} } } innerControl.ShapeControl.Invalidate(); return(true); }
//private void rotateX_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e) //{ // RotateX(e.NewValue); //} //private void rotationY_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e) //{ // RotateY(e.NewValue); //} //private void rotationZ_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e) //{ // RotateZ(e.NewValue); //} //public void RotateX(double angle) //{ // rotX.Angle = angle; //} //public void RotateY(double angle) //{ // rotY.Angle = angle; //} //public void RotateZ(double angle) //{ // rotZ.Angle = angle; //} //private void Window_MouseWheel(object sender, MouseWheelEventArgs e) //{ // mCamera.Position = new System.Windows.Media.Media3D.Point3D( // mCamera.Position.X, // mCamera.Position.Y, // mCamera.Position.Z - e.Delta / 250D); //} private void BuildColumn3DGraph(Column column) { CubeBuilder cubeBuilder = null; CuadraticPrismBuilder cuadraticPrismBuilder = null; //PiramidBuilder piramidBuilder = null; var offsetX = 0; var offsetY = 0; var cubeSide = 5; var lastHeight = 0; var i = 0; var j = 0; while (i < 5) { offsetX += 7; while (j < 5) { offsetY += 7; foreach (var layer in column.ListOfLayers.AsEnumerable().Reverse()) { var layerControl = new LayerControl(layer.LayerName); switch (layer.LayerName) { case "DP-I": cubeBuilder = new CubeBuilder(ModelBuilder.ColorGreen); cubeBuilder.CreateCube(offsetX, offsetY, lastHeight, cubeSide, group); //mainViewport.Children.Add(cubeBuilder.CreateCube(offsetX, offsetY, lastHeight, cubeSide)); lastHeight += cubeSide; break; case "DP-II": cubeBuilder = new CubeBuilder(ModelBuilder.ColorOrange); cubeBuilder.CreateCube(offsetX, offsetY, lastHeight, cubeSide, group); //mainViewport.Children.Add(cubeBuilder.CreateCube(offsetX, offsetY, lastHeight, cubeSide)); lastHeight += cubeSide; break; case "AND": cuadraticPrismBuilder = new CuadraticPrismBuilder(ModelBuilder.ColorYellow); cuadraticPrismBuilder.CreateCuadraticPrism(offsetX, offsetY, lastHeight, cubeSide, 20, group); //mainViewport.Children.Add(cuadraticPrismBuilder.CreateCuadraticPrism(offsetX, offsetY, lastHeight, cubeSide, 20)); lastHeight += 20; break; case "INPUT": cuadraticPrismBuilder = new CuadraticPrismBuilder(ModelBuilder.ColorViolet); cuadraticPrismBuilder.CreateCuadraticPrism(offsetX, offsetY, lastHeight, cubeSide, 10, group); //mainViewport.Children.Add(cuadraticPrismBuilder.CreateCuadraticPrism(offsetX, offsetY, lastHeight, cubeSide, 10)); lastHeight += 10; break; case "OR": cuadraticPrismBuilder = new CuadraticPrismBuilder(ModelBuilder.ColorRed); cuadraticPrismBuilder.CreateCuadraticPrism(offsetX, offsetY, lastHeight, cubeSide, 10, group); //mainViewport.Children.Add(cuadraticPrismBuilder.CreateCuadraticPrism(offsetX, offsetY, lastHeight, cubeSide, 10)); lastHeight += 10; break; } } lastHeight = 0; j++; } offsetY = 0; j = 0; i++; } var center = ModelBuilder.GetCenter(group); Vector3D cVect = new Vector3D(center.X, center.Y, center.Z); group.Transform = new TranslateTransform3D(-cVect); }