/// <summary> /// Fires the ItemMouseMove Event, which handles the mouse moving over one of the legend items. /// </summary> /// <param name="e">An ItemMouseEventArgs</param> protected virtual void OnItemMouseMove(ItemMouseEventArgs e) { if (ItemMouseMove != null) { ItemMouseMove(this, e); } }
/// <summary> /// Connect edge. /// </summary> public override bool OnMouseClick(VCItem sender, ItemMouseEventArgs e) { var edge = edgeItem.Edge; var railway = context.Railway; if ((railway == null) || (railway.ModuleConnections.Any(x => (x.EdgeA == edge) || (x.EdgeB == edge)))) { return(base.OnMouseClick(sender, e)); } if (context.SelectedEdge == null) { context.SelectedEdge = edge; } else if (context.SelectedEdge.Module != edge.Module) { var connection = railway.ModuleConnections.AddNew(); connection.EdgeA = context.SelectedEdge; connection.EdgeB = edge; context.SelectedEdge = null; edgeItem.Invalidate(); context.Reload(); } return(true); }
private void c1LinearGauge1_ItemMouseUp(object sender, ItemMouseEventArgs e) { if (e.Button == MouseButtons.Left) { _pressedButton = 0; } }
private void DoItemMouseDown(ItemMouseEventArgs e) { Point loc = new Point(e.X + ControlRectangle.X, e.Location.Y + ControlRectangle.Top); // Toggle expansion if (e.ItemBox.ExpandBox.Contains(loc)) { e.ItemBox.Item.IsExpanded = !e.ItemBox.Item.IsExpanded; if (ExpandBoxMouseDown != null) { ExpandBoxMouseDown(this, e); } ResetLegend(); return; } if (e.ItemBox.Item.IsSelected) { // if we are already selected, prepare to edit in textbox _previousMouseDown = e.ItemBox; // Start dragging if (e.Button == MouseButtons.Left) { _isDragging = true; ILegendItem li = e.ItemBox.Item; while (li != null && li as ILayer == null) { li = li.GetParentItem(); } ILayer lyr = li as ILayer; if (lyr != null) { _dragItem = BoxFromItem(lyr); } else { _isDragging = false; } } } else { // Check for textbox clicking if (e.ItemBox.Textbox.Contains(loc)) { if (ModifierKeys != Keys.Shift) { ClearSelection(); } e.ItemBox.Item.IsSelected = true; //_selection.Add(e.ItemBox); //IsInitialized = false; //Invalidate(); //return; } } }
/// <summary> /// The coordinates are in legend coordinates, but a LegendBox is provided to define the /// coordinates of the specified object. /// </summary> /// <param name="e">An ItemMouseEventArgs</param> protected virtual void OnItemMouseDown(ItemMouseEventArgs e) { if (ItemMouseDown != null) { ItemMouseDown(this, e); } }
/// <summary> /// Checks for checkbox changes and fires the ItemMouseUp event. /// </summary> /// <param name="e"></param> protected virtual void OnItemMouseUp(ItemMouseEventArgs e) { if (ItemMouseUp != null) { ItemMouseUp(this, e); } }
public override bool OnMouseMove(VCItem sender, ItemMouseEventArgs e) { if (context.SelectedEdge != null) { e.Cursor = Cursors.Cross; } return(base.OnMouseMove(sender, e)); }
private void c1RadialGauge1_ItemMouseMove(object sender, ItemMouseEventArgs e) { if (e.Button == MouseButtons.Left) { C1GaugePointer p = e.Gauge.Pointer; p.Value = p.GetValueAt(e.X, e.Y); } }
private void HandleNameColumnMouseDown(object sender, ItemMouseEventArgs e) { RSSDiscover.RSSDiscoverResult result = (RSSDiscover.RSSDiscoverResult)e.Item; if (result.ExistingFeed != null) { e.Handled = true; FindForm().Close(); Core.UIManager.DisplayResourceInContext(result.ExistingFeed); } }
private void y2bList_MouseUp(object sender, MouseEventArgs e) { y2bList.Visible = false; ItemMouseEventArgs me = (ItemMouseEventArgs)e; this.videoId = me.Url; string videoUrl = Utils.VIDEO_URL.Replace("%VIDEO_ID%", this.videoId); loadUrl(videoUrl); }
/// <summary> /// Mouse is double clicked on this item /// </summary> /// <returns>True if the event was handled, false otherwise.</returns> public override bool OnMouseDoubleClick(VCItem sender, ItemMouseEventArgs e) { if (state.Direction.Requested == SwitchDirection.Straight) { state.Direction.Requested = SwitchDirection.Off; } else { state.Direction.Requested = SwitchDirection.Straight; } return(true); }
public override bool OnMouseUp(VCItem sender, ItemMouseEventArgs e) { if ((e.Button == System.Windows.Forms.MouseButtons.Right) && (e.Clicks == 1)) { // Show context menu if (sender is IEntityItem) { ((IEntityItem)sender).ShowContextMenu(e.Location); } } return(base.OnMouseUp(sender, e)); }
/// <summary> /// Mouse is double clicked on this item /// </summary> /// <returns>True if the event was handled, false otherwise.</returns> public override bool OnMouseDoubleClick(VCItem sender, ItemMouseEventArgs e) { if (state.Position.Requested < state.LastPosition) { state.Position.Requested++; } else { state.Position.Requested = state.FirstPosition; } return(true); }
/// <summary> /// Mouse is clicked on this item /// </summary> /// <returns>True if the event was handled, false otherwise.</returns> public override bool OnMouseClick(VCItem sender, ItemMouseEventArgs e) { Debug.WriteLine("Click on " + state.Description); var virtualMode = state.RailwayState.VirtualMode; if (virtualMode.Enabled) { virtualMode.EntityClick(state); return(true); } return(base.OnMouseClick(sender, e)); }
private void c1RadialGauge1_ItemMouseMove(object sender, ItemMouseEventArgs e) { if ((e.Button & MouseButtons.Left) == MouseButtons.Left) { C1GaugeEllipse el = e.Item as C1GaugeEllipse; if (el != null && el.Name == "back") { C1GaugePointer p = e.Gauge.Pointer; p.UpdateValue(p.GetValueAt(e.X, e.Y), 2.5); } } }
public override bool OnMouseClick(VCItem sender, ItemMouseEventArgs e) { if (e.Button == MouseButtons.Left) { item.RaiseClick(); return(true); } else { return(base.OnMouseClick(sender, e)); } }
private void c1LinearGauge1_ItemMouseDown(object sender, ItemMouseEventArgs e) { if (e.Button == MouseButtons.Left) { C1GaugePointer pointer = c1LinearGauge1.Pointer; if (e.Item is C1GaugeRange) { pointer.Value = pointer.GetValueAt(e.X, e.Y); } else if (e.Item is C1GaugeSingleMark) { _pressedTick = DateTime.UtcNow.Ticks + 3000000; switch (((C1GaugeSingleMark)e.Item).Name) { case "minusButton": if (pointer.Value > 0.0) { pointer.IncValue(-1, 5.0); } else { pointer.Value = double.NaN; } _pressedButton = 1; break; case "plusButton": if (!double.IsNaN(pointer.Value)) { pointer.IncValue(1, 5.0); } else { pointer.Value = 0.0; } _pressedButton = 2; break; case "offMark": pointer.Value = double.NaN; break; } } } }
/// <summary> /// Handles the case where the mouse down occurs. /// </summary> /// <param name="e">A MouseEventArgs</param> protected override void OnMouseDown(MouseEventArgs e) { HideEditBox(); if (_legendBoxes == null || _legendBoxes.Count == 0) { return; } Point loc = new Point(e.X + ControlRectangle.X, e.Location.Y + ControlRectangle.Top); foreach (LegendBox box in _legendBoxes) { if (box.Bounds.Contains(loc)) { ItemMouseEventArgs args = new ItemMouseEventArgs(e, box); DoItemMouseDown(args); } } base.OnMouseDown(e); }
private void OnMouseClick(object sender, ItemMouseEventArgs e) { IResource res = (IResource)e.Item; IResourceType type = Core.ResourceStore.ResourceTypes[res.Type]; if (type.HasFlag(ResourceTypeFlags.CanBeUnread)) { bool unreadState = res.HasProp(Core.Props.IsUnread); SetResourceUnreadState(res, unreadState); // If there is a command to propagate the reading status over // the whole thread (conversation) we need to set exactly the // same flag on all resources, not just toggle their flags // forward. if ((Control.ModifierKeys & Keys.Control) > 0) { PropagateUnreadState2Thread(res, unreadState); } e.Handled = false; } }
/// <summary> /// Performs the default handling for mouse movememnt, and decides /// whether or not to fire an ItemMouseMove event. /// </summary> /// <param name="e">A MouseEventArgs</param> protected override void OnMouseMove(MouseEventArgs e) { if (_legendBoxes == null) { return; } bool cursorHandled = false; LegendBox currentBox = null; Point loc = new Point(e.X + ControlRectangle.X, e.Location.Y + ControlRectangle.Top); foreach (LegendBox box in _legendBoxes) { if (box.Bounds.Contains(loc)) { currentBox = box; ItemMouseEventArgs args = new ItemMouseEventArgs(e, box); DoItemMouseMove(args); } } if (_isDragging) { _dragTarget = null; if (currentBox != null) { _dragTarget = currentBox; } if (ClientRectangle.Contains(e.Location)) { if (currentBox == null) { _dragTarget = BottomBox; } } if (_previousLine.IsEmpty == false) { Invalidate(_previousLine); } _previousLine = Rectangle.Empty; if (_dragTarget != null && _dragItem != null && _dragTarget != _dragItem) { LegendBox boxOverLine; int left = 0; LegendBox container = BoxFromItem(_dragTarget.Item.GetValidContainerFor(_dragItem.Item)); if (container != null) { left = (container.Indent + 1) * _indentation; } if (_dragTarget.Item.CanReceiveItem(_dragItem.Item)) { boxOverLine = _dragTarget; } else { boxOverLine = BoxFromItem(_dragTarget.Item.BottomMember()); } if (boxOverLine == null) { _previousLine = Rectangle.Empty; Cursor = Cursors.No; cursorHandled = true; } else { _previousLine = new Rectangle(left, boxOverLine.Bounds.Bottom, Width - left, 4); Cursor = Cursors.Hand; cursorHandled = true; Invalidate(_previousLine); } } if (cursorHandled == false) { Cursor = Cursors.No; cursorHandled = true; } } if (cursorHandled == false) { Cursor = Cursors.Arrow; } base.OnMouseMove(e); }
public override bool OnMouseMove(VCItem sender, ItemMouseEventArgs e) { item.IsMouseOver = true; e.Cursor = Cursors.Hand; return(true); }
/// <summary> /// Mouse is double clicked on this item /// </summary> /// <param name="e"></param> /// <returns>True if the event was handled, false otherwise.</returns> public override bool OnMouseDoubleClick(Controls.VirtualCanvas.VCItem sender, ItemMouseEventArgs e) { var blockState = item.State; var loc = blockState.LockedBy; if (loc != null) { item.Context.SelectLoc(loc); return(true); } return(base.OnMouseDoubleClick(sender, e)); }
/// <summary> /// Checks the Mouse Up event to see if it occurs inside a legend item. /// </summary> /// <param name="e"></param> protected override void OnMouseUp(MouseEventArgs e) { Point loc = new Point(e.X + ControlRectangle.X, e.Location.Y + ControlRectangle.Top); if (!_wasDoubleClick) { foreach (LegendBox box in _legendBoxes) { if (!box.Bounds.Contains(loc)) { continue; } ItemMouseEventArgs args = new ItemMouseEventArgs(e, box); DoItemMouseUp(args); } } if (_isDragging && _dragItem != null) { if (_dragTarget != null && _dragTarget.Item != _dragItem.Item) { ILegendItem potentialParent = _dragTarget.Item.GetValidContainerFor(_dragItem.Item); if (potentialParent != null) { potentialParent.ParentMapFrame().SuspendEvents(); // The target must be a group, and the item must be a layer. ILayer lyr = _dragItem.Item as ILayer; if (lyr != null) { IGroup grp = _dragItem.Item.GetParentItem() as IGroup; lyr.LockDispose(); //when original location is inside group, remove layer from the group. if (grp != null) { grp.Remove(lyr); } int index = _dragTarget.Item.InsertIndex(_dragItem.Item); if (index == -1) { index = 0; } grp = potentialParent as IGroup; if (grp != null) { grp.Insert(index, lyr); //when the target is a group, assign the parent item. lyr.SetParentItem(grp); } lyr.UnlockDispose(); } potentialParent.ParentMapFrame().ResumeEvents(); OnOrderChanged(); potentialParent.ParentMapFrame().Invalidate(); } } Cursor = Cursors.Arrow; _isDragging = false; Invalidate(); } _wasDoubleClick = false; base.OnMouseUp(e); }
private void DoItemMouseUp(ItemMouseEventArgs e) { //get the selected item _selectedItem = e.ItemBox.Item; Point loc = new Point(e.X + ControlRectangle.X, e.Location.Y + ControlRectangle.Top); if (e.Button == MouseButtons.Left) { if (e.ItemBox.Item.LegendSymbolMode == SymbolMode.Checkbox) { if (e.ItemBox.CheckBox.Contains(loc)) { IRenderableLegendItem rendItem = e.ItemBox.Item as IRenderableLegendItem; if (rendItem != null) { // force a re-draw in the case where we are talking about layers. rendItem.IsVisible = !rendItem.IsVisible; } else { e.ItemBox.Item.Checked = !e.ItemBox.Item.Checked; } if (CheckBoxMouseUp != null) { CheckBoxMouseUp(this, e); } RefreshNodes(); } } if (e.ItemBox.Textbox.Contains(loc)) { if (e.ItemBox == _previousMouseDown) { _isDragging = false; // Edit via text box _editBox.Left = e.ItemBox.Textbox.Left; _editBox.Width = e.ItemBox.Textbox.Width + 10; _editBox.Top = e.ItemBox.Bounds.Top; _editBox.Height = e.ItemBox.Bounds.Height; _editBox.SelectedText = e.ItemBox.Item.LegendText; _editBox.Font = Font; _editBox.Visible = true; } } } if (e.Button == MouseButtons.Right) { if (e.ItemBox.Item.ContextMenuItems == null) { return; } //show nothing when right click on the symbol //var category = e.ItemBox.Item as Category; //if (category != null) return; //_contextMenu.MenuItems.Clear(); ////items for map frame || symbol //var mapFrame = e.ItemBox.Item as Layer; //if (mapFrame == null) //{ // foreach (SymbologyMenuItem mi in e.ItemBox.Item.ContextMenuItems) // { // AddMenuItem(_contextMenu.MenuItems, mi); // } //} if (_selectedItem is FeatureLayer) { _contextMenu = ContextMenuService.CreateContextMenu(this, "/FrameWork/Legend/ContextMenu/FeatureLayer"); } else if (_selectedItem is RasterLayer) { _contextMenu = ContextMenuService.CreateContextMenu(this, "/FrameWork/Legend/ContextMenu/RasterLayer"); } else if (_selectedItem is ImageLayer) { _contextMenu = ContextMenuService.CreateContextMenu(this, "/FrameWork/Legend/ContextMenu/ImageLayer"); } else if (_selectedItem is MapFrame) { _contextMenu = ContextMenuService.CreateContextMenu(this, "/FrameWork/Legend/ContextMenu/MapFrame"); } else { _contextMenu = null; return; } //if (_legendContextMenu == null) //{ // _legendContextMenu = new LegendContextMenu(); //} //_legendContextMenu.OnSelectedItem(e.ItemBox.Item); //items for layer //var contextMenuItems = _contextMenu.MenuItems; //_legendContextMenu.AddLayerMenuItem(ref contextMenuItems); _contextMenu.Show(this, e.Location); _contextMenu.MenuItems.Clear(); } }
private void DoItemMouseMove(ItemMouseEventArgs e) { OnItemMouseMove(e); }
public override bool OnMouseDown(VCItem sender, ItemMouseEventArgs e) { Debug.WriteLine("Down on " + state.Description); return(base.OnMouseDown(sender, e)); }
/// <summary> /// Mouse is clicked on this item /// </summary> /// <returns>True if the event was handled, false otherwise.</returns> public override bool OnMouseClick(VCItem sender, ItemMouseEventArgs e) { state.Active.Requested = !state.Active.Requested; return(true); }
/// <summary> /// Mouse is clicked on this item /// </summary> /// <returns>True if the event was handled, false otherwise.</returns> public override bool OnMouseClick(VCItem sender, ItemMouseEventArgs e) { state.Color.Requested = state.GetNextColor(state.Color.Requested); return(true); }