/// <summary> /// Constructor. /// </summary> public MouseButtonMessage(Point location, XMouseButtons mouseButton, ButtonActions buttonAction, uint clickCount, bool control, bool alt, bool shift) { _location = location; _buttonAction = buttonAction; _clickCount = clickCount; _mouseButtonShortcut = new MouseButtonShortcut(mouseButton, control, alt, shift); }
private IMouseButtonHandler GetActiveMouseTool(MouseButtonShortcut shortcut) { if (shortcut == null) return null; return (from mouseTool in GetMouseTools() where mouseTool.Active && shortcut.Equals(mouseTool.MouseButton) select mouseTool).FirstOrDefault(); }
/// <summary> /// Constructor. /// </summary> /// <param name="tooltipPrefix">The tooltip prefix, which usually describes the tool's function.</param> protected MouseImageViewerTool(string tooltipPrefix) : base() { _tooltipPrefix = tooltipPrefix; _mousebuttonBehaviour = MouseButtonHandlerBehaviour.Default; _mouseButton = XMouseButtons.None; _defaultMouseButtonShortcut = null; _mouseWheelShortcut = null; _active = false; }
private IMouseButtonHandler GetActiveMouseTool(MouseButtonShortcut shortcut) { if (shortcut == null) { return(null); } return((from mouseTool in GetMouseTools() where mouseTool.Active && shortcut.Equals(mouseTool.MouseButton) select mouseTool).FirstOrDefault()); }
public IEnumerable <IMouseButtonHandler> GetMouseButtonHandlers(MouseButtonShortcut shortcut) { if (shortcut == null) { yield break; } var activeMouseTool = GetActiveMouseTool(shortcut); if (activeMouseTool != null) { yield return(activeMouseTool); } foreach (var defaultMouseTool in GetDefaultMouseTools(shortcut)) { yield return(defaultMouseTool); } }
private static void InitializeModifiedMouseToolButton(MouseImageViewerTool mouseTool) { MouseButtonShortcut defaultMouseButtonShortcut = null; // check for hardcoded assembly default settings object[] defaultButtonAssignments = mouseTool.GetType().GetCustomAttributes(typeof(DefaultMouseToolButtonAttribute), true); if (defaultButtonAssignments != null && defaultButtonAssignments.Length > 0) { DefaultMouseToolButtonAttribute attribute = (DefaultMouseToolButtonAttribute)defaultButtonAssignments[0]; defaultMouseButtonShortcut = attribute.Shortcut; } // check settings profile for an override specific to this tool Type mouseToolType = mouseTool.GetType(); if (MouseToolSettingsProfile.Current.HasEntry(mouseToolType)) { MouseToolSettingsProfile.Setting value = MouseToolSettingsProfile.Current[mouseToolType]; if (value.DefaultMouseButton.HasValue) { defaultMouseButtonShortcut = null; if (value.DefaultMouseButton.Value != XMouseButtons.None) { defaultMouseButtonShortcut = new MouseButtonShortcut(value.DefaultMouseButton.Value, value.DefaultMouseButtonModifiers.GetValueOrDefault(ModifierFlags.None)); } } } // apply the selected value to the tool (don't write back to the profile! - that's not for us to decide) try { mouseTool.DefaultMouseButtonShortcut = defaultMouseButtonShortcut; } catch (Exception e) { // JY: what exactly are we catching here? Platform.Log(LogLevel.Warn, e); } MouseToolSettingsProfile.Current[mouseToolType].DefaultMouseButton = defaultMouseButtonShortcut != null ? defaultMouseButtonShortcut.MouseButton : XMouseButtons.None; MouseToolSettingsProfile.Current[mouseToolType].DefaultMouseButtonModifiers = defaultMouseButtonShortcut != null ? defaultMouseButtonShortcut.Modifiers.ModifierFlags : ModifierFlags.None; }
private IEnumerable <TestTool> GetMouseButtonHandlers(MouseButtonShortcut shortcut) { return(GetShortcutManager().GetMouseButtonHandlers(shortcut).Cast <TestTool>()); }
private IEnumerable<IMouseButtonHandler> GetDefaultMouseTools(MouseButtonShortcut shortcut) { return (from mouseTool in GetMouseTools() where shortcut.Equals(mouseTool.DefaultMouseButtonShortcut) select mouseTool).Cast<IMouseButtonHandler>(); }
private static void InitializeModifiedMouseToolButton(MouseImageViewerTool mouseTool) { MouseButtonShortcut defaultMouseButtonShortcut = null; // check for hardcoded assembly default settings object[] defaultButtonAssignments = mouseTool.GetType().GetCustomAttributes(typeof (DefaultMouseToolButtonAttribute), true); if (defaultButtonAssignments != null && defaultButtonAssignments.Length > 0) { DefaultMouseToolButtonAttribute attribute = (DefaultMouseToolButtonAttribute) defaultButtonAssignments[0]; defaultMouseButtonShortcut = attribute.Shortcut; } // check settings profile for an override specific to this tool Type mouseToolType = mouseTool.GetType(); if (MouseToolSettingsProfile.Current.HasEntry(mouseToolType)) { MouseToolSettingsProfile.Setting value = MouseToolSettingsProfile.Current[mouseToolType]; if (value.DefaultMouseButton.HasValue) { defaultMouseButtonShortcut = null; if (value.DefaultMouseButton.Value != XMouseButtons.None) defaultMouseButtonShortcut = new MouseButtonShortcut(value.DefaultMouseButton.Value, value.DefaultMouseButtonModifiers.GetValueOrDefault(ModifierFlags.None)); } } // apply the selected value to the tool (don't write back to the profile! - that's not for us to decide) try { mouseTool.DefaultMouseButtonShortcut = defaultMouseButtonShortcut; } catch (Exception e) { // JY: what exactly are we catching here? Platform.Log(LogLevel.Warn, e); } MouseToolSettingsProfile.Current[mouseToolType].DefaultMouseButton = defaultMouseButtonShortcut != null ? defaultMouseButtonShortcut.MouseButton : XMouseButtons.None; MouseToolSettingsProfile.Current[mouseToolType].DefaultMouseButtonModifiers = defaultMouseButtonShortcut != null ? defaultMouseButtonShortcut.Modifiers.ModifierFlags : ModifierFlags.None; }
public IEnumerable<IMouseButtonHandler> GetMouseButtonHandlers(MouseButtonShortcut shortcut) { if (shortcut == null) yield break; var activeMouseTool = GetActiveMouseTool(shortcut); if (activeMouseTool != null) yield return activeMouseTool; foreach (var defaultMouseTool in GetDefaultMouseTools(shortcut)) yield return defaultMouseTool; }
/// <summary> /// Constructor. /// </summary> public DefaultMouseToolButtonAttribute(XMouseButtons mouseButton, ModifierFlags modifierFlags) { _shortcut = new MouseButtonShortcut(mouseButton, modifierFlags); }
private IEnumerable<TestTool> GetMouseButtonHandlers(MouseButtonShortcut shortcut) { return GetShortcutManager().GetMouseButtonHandlers(shortcut).Cast<TestTool>(); }
/// <summary> /// Constructor. /// </summary> public DefaultMouseToolButtonAttribute(XMouseButtons mouseButton) { _shortcut = new MouseButtonShortcut(mouseButton); }
private IEnumerable <IMouseButtonHandler> GetDefaultMouseTools(MouseButtonShortcut shortcut) { return((from mouseTool in GetMouseTools() where shortcut.Equals(mouseTool.DefaultMouseButtonShortcut) select mouseTool).Cast <IMouseButtonHandler>()); }