void designPanel_DragOver(object sender, DragEventArgs e) { try { IDesignPanel designPanel = (IDesignPanel)sender; e.Effects = DragDropEffects.Copy; e.Handled = true; Point p = e.GetPosition(designPanel); if (moveLogic == null) { if (e.Data.GetData(typeof(CreateComponentTool)) != this) { return; } // TODO: dropLayer in designPanel designPanel.IsAdornerLayerHitTestVisible = false; DesignPanelHitTestResult result = designPanel.HitTest(p, false, true, HitTestType.Default); if (result.ModelHit != null) { designPanel.Focus(); DesignItem createdItem = CreateItem(designPanel.Context); if (AddItemWithDefaultSize(result.ModelHit, createdItem, e.GetPosition(result.ModelHit.View))) { moveLogic = new MoveLogic(createdItem); if (designPanel.Context.Services.Component is XamlComponentService) { ((XamlComponentService)designPanel.Context.Services.Component) .RaiseComponentRegisteredAndAddedToContainer(createdItem); } createPoint = p; // We'll keep the ChangeGroup open as long as the moveLogic is active. } else { // Abort the ChangeGroup created by the CreateItem() call. changeGroup.Abort(); } } } else if ((moveLogic.ClickedOn.View as FrameworkElement).IsLoaded) { if (moveLogic.Operation == null) { moveLogic.Start(createPoint); } else { moveLogic.Move(p); } } } catch (Exception x) { DragDropExceptionHandler.RaiseUnhandledException(x); } }
protected override void OnLostKeyboardFocus(KeyboardFocusChangedEventArgs e) { if (changeGroup != null && _isChangeGroupOpen) { changeGroup.Abort(); _isChangeGroupOpen = false; } base.OnLostKeyboardFocus(e); }
protected override void OnLostKeyboardFocus(KeyboardFocusChangedEventArgs e) { if (changeGroup != null && _isChangeGroupOpen) { changeGroup.Abort(); _isChangeGroupOpen = false; } if (textBlock != null) { textBlock.Visibility = Visibility.Visible; } Reset(); base.OnLostKeyboardFocus(e); }
void drag_Completed(DragListener drag) { if (operation != null) { if (drag.IsCanceled) { operation.Abort(); } else { operation.Commit(); } operation = null; } else { if (drag.IsCanceled) { changeGroup.Abort(); } else { changeGroup.Commit(); } changeGroup = null; } _isResizing = false; HideSizeAndShowHandles(); }
public void AbortEditing() { if (changeGroup != null && _isChangeGroupOpen) { changeGroup.Abort(); _isChangeGroupOpen = false; } this.Visibility = Visibility.Hidden; }
protected void Stop() { ReleaseMouseCapture(); mouseIsDown = false; if (activeChangeGroup != null) { activeChangeGroup.Abort(); activeChangeGroup = null; } }
protected override void OnStopped() { if (changeGroup != null) { changeGroup.Abort(); changeGroup = null; } if (services.Tool.CurrentTool is CreateComponentTool) { services.Tool.CurrentTool = services.Tool.PointerTool; } base.OnStopped(); }
protected override void OnStopped() { if (changeGroup != null) { changeGroup.Abort(); changeGroup = null; } if (services.Tool.CurrentTool is CreateComponentTool) { services.Tool.CurrentTool = services.Tool.PointerTool; } newLine.ReapplyAllExtensions(); base.OnStopped(); }
void designPanel_DragOver(object sender, DragEventArgs e) { try { IDesignPanel designPanel = (IDesignPanel)sender; e.Effects = DragDropEffects.Copy; e.Handled = true; Point p = e.GetPosition(designPanel); if (moveLogic == null) { if (ChangeGroup != null) { ChangeGroup.Abort(); ChangeGroup = null; } ChangeGroup = designPanel.Context.RootItem.OpenGroup("Add Control"); designPanel.IsAdornerLayerHitTestVisible = false; DesignPanelHitTestResult result = designPanel.HitTest(p, false, true, HitTestType.Default); if (result.ModelHit != null) { designPanel.Focus(); var items = CreateItemsWithPosition(designPanel.Context, e.GetPosition(result.ModelHit.View), e); if (items != null) { if (AddItems(result.ModelHit, items)) { moveLogic = new MoveLogic(items[0]); foreach (var designItem in items) { if (designPanel.Context.Services.Component is XamlComponentService) { ((XamlComponentService)designPanel.Context.Services.Component).RaiseComponentRegisteredAndAddedToContainer(designItem); } } createPoint = p; } else { ChangeGroup.Abort(); ChangeGroup = null; } } else { e.Effects = DragDropEffects.None; } } } else if ((moveLogic.ClickedOn.View as FrameworkElement).IsLoaded) { if (moveLogic.Operation == null) { moveLogic.Start(createPoint); } else { moveLogic.Move(p); } } } catch (Exception x) { DragDropExceptionHandler.RaiseUnhandledException(x); } }