From d920bf678e2de7653db324deef91d2bed849706d Mon Sep 17 00:00:00 2001
From: NaBian <836904362@qq.com>
Date: Mon, 13 May 2019 23:27:11 +0800
Subject: [PATCH] Adjust the file structure
---
.../HandyControl_Net_GE45.csproj | 5 +
.../UserControl/Main/OverView.xaml | 2 +-
.../Styles/ToggleButtonDemoCtl.xaml | 4 +-
.../Controls/Attach/StatusSwitchElement.cs | 8 +-
.../Controls/ColorPicker/ColorDropper.cs | 9 ++
.../{Other => ColorPicker}/ColorPicker.cs | 79 +++++++-------
.../Controls/Other/MouseHook.cs | 102 ------------------
.../HandyControl_Shared.projitems | 4 +-
.../Interactivity/ControlCommands.cs | 2 -
.../HandyControl_Shared/Resources/dropper.cur | Bin 0 -> 10646 bytes
.../Themes/Basic/Geometries.xaml | 2 +-
.../Themes/Basic/Paths.xaml | 3 -
.../Styles/Base/ProgressButtonBaseStyle.xaml | 2 +-
.../Themes/Styles/ColorPicker.xaml | 37 +++----
.../Themes/Styles/ToggleButton.xaml | 2 +-
.../Tools/Hook/MouseHook.cs | 7 ++
16 files changed, 95 insertions(+), 173 deletions(-)
create mode 100644 src/Shared/HandyControl_Shared/Controls/ColorPicker/ColorDropper.cs
rename src/Shared/HandyControl_Shared/Controls/{Other => ColorPicker}/ColorPicker.cs (93%)
delete mode 100644 src/Shared/HandyControl_Shared/Controls/Other/MouseHook.cs
create mode 100644 src/Shared/HandyControl_Shared/Resources/dropper.cur
create mode 100644 src/Shared/HandyControl_Shared/Tools/Hook/MouseHook.cs
diff --git a/src/Net_GE45/HandyControl_Net_GE45/HandyControl_Net_GE45.csproj b/src/Net_GE45/HandyControl_Net_GE45/HandyControl_Net_GE45.csproj
index c989b1c4..fa66936d 100644
--- a/src/Net_GE45/HandyControl_Net_GE45/HandyControl_Net_GE45.csproj
+++ b/src/Net_GE45/HandyControl_Net_GE45/HandyControl_Net_GE45.csproj
@@ -141,6 +141,11 @@
Lang.Designer.cs
+
+
+ Resources\dropper.cur
+
+
\ No newline at end of file
diff --git a/src/Shared/HandyControlDemo_Shared/UserControl/Main/OverView.xaml b/src/Shared/HandyControlDemo_Shared/UserControl/Main/OverView.xaml
index 0a72a138..2cde78c4 100644
--- a/src/Shared/HandyControlDemo_Shared/UserControl/Main/OverView.xaml
+++ b/src/Shared/HandyControlDemo_Shared/UserControl/Main/OverView.xaml
@@ -26,7 +26,7 @@
-
+
diff --git a/src/Shared/HandyControlDemo_Shared/UserControl/Styles/ToggleButtonDemoCtl.xaml b/src/Shared/HandyControlDemo_Shared/UserControl/Styles/ToggleButtonDemoCtl.xaml
index f5680d6d..2a71ecd2 100644
--- a/src/Shared/HandyControlDemo_Shared/UserControl/Styles/ToggleButtonDemoCtl.xaml
+++ b/src/Shared/HandyControlDemo_Shared/UserControl/Styles/ToggleButtonDemoCtl.xaml
@@ -77,7 +77,7 @@
-
+
@@ -87,7 +87,7 @@
-
+
diff --git a/src/Shared/HandyControl_Shared/Controls/Attach/StatusSwitchElement.cs b/src/Shared/HandyControl_Shared/Controls/Attach/StatusSwitchElement.cs
index 350c82d9..998c88d5 100644
--- a/src/Shared/HandyControl_Shared/Controls/Attach/StatusSwitchElement.cs
+++ b/src/Shared/HandyControl_Shared/Controls/Attach/StatusSwitchElement.cs
@@ -18,11 +18,11 @@ namespace HandyControl.Controls
///
/// 是否隐藏元素
///
- public static readonly DependencyProperty HiddenElementProperty = DependencyProperty.RegisterAttached(
- "HiddenElement", typeof(bool), typeof(StatusSwitchElement), new PropertyMetadata(ValueBoxes.FalseBox));
+ public static readonly DependencyProperty HideUncheckedElementProperty = DependencyProperty.RegisterAttached(
+ "HideUncheckedElement", typeof(bool), typeof(StatusSwitchElement), new PropertyMetadata(ValueBoxes.FalseBox));
- public static void SetHiddenElement(DependencyObject element, bool value) => element.SetValue(HiddenElementProperty, value);
+ public static void SetHideUncheckedElement(DependencyObject element, bool value) => element.SetValue(HideUncheckedElementProperty, value);
- public static bool GetHiddenElement(DependencyObject element) => (bool) element.GetValue(HiddenElementProperty);
+ public static bool GetHideUncheckedElement(DependencyObject element) => (bool) element.GetValue(HideUncheckedElementProperty);
}
}
\ No newline at end of file
diff --git a/src/Shared/HandyControl_Shared/Controls/ColorPicker/ColorDropper.cs b/src/Shared/HandyControl_Shared/Controls/ColorPicker/ColorDropper.cs
new file mode 100644
index 00000000..9c8d5459
--- /dev/null
+++ b/src/Shared/HandyControl_Shared/Controls/ColorPicker/ColorDropper.cs
@@ -0,0 +1,9 @@
+using System.Windows.Controls;
+
+namespace HandyControl.Controls
+{
+ public class ColorDropper : Control
+ {
+
+ }
+}
\ No newline at end of file
diff --git a/src/Shared/HandyControl_Shared/Controls/Other/ColorPicker.cs b/src/Shared/HandyControl_Shared/Controls/ColorPicker/ColorPicker.cs
similarity index 93%
rename from src/Shared/HandyControl_Shared/Controls/Other/ColorPicker.cs
rename to src/Shared/HandyControl_Shared/Controls/ColorPicker/ColorPicker.cs
index 009e2edd..ef1a39f1 100644
--- a/src/Shared/HandyControl_Shared/Controls/Other/ColorPicker.cs
+++ b/src/Shared/HandyControl_Shared/Controls/ColorPicker/ColorPicker.cs
@@ -1,13 +1,14 @@
using System;
using System.Collections.Generic;
using System.Linq;
-using System.Runtime.InteropServices;
using System.Windows;
using System.Windows.Controls;
+using System.Windows.Controls.Primitives;
using System.Windows.Input;
using System.Windows.Media;
using HandyControl.Data;
using HandyControl.Interactivity;
+using HandyControl.Tools;
using HandyControl.Tools.Extension;
namespace HandyControl.Controls
@@ -22,6 +23,7 @@ namespace HandyControl.Controls
[TemplatePart(Name = ElementSliderColor, Type = typeof(Panel))]
[TemplatePart(Name = ElementSliderOpacity, Type = typeof(Panel))]
[TemplatePart(Name = ElementPanelRgb, Type = typeof(Panel))]
+ [TemplatePart(Name = ElementButtonDropper, Type = typeof(ToggleButton))]
public class ColorPicker : Control, ISingleOpen
{
#region Constants
@@ -33,11 +35,16 @@ namespace HandyControl.Controls
private const string ElementSliderColor = "PART_SliderColor";
private const string ElementSliderOpacity = "PART_SliderOpacity";
private const string ElementPanelRgb = "PART_PanelRgb";
+ private const string ElementButtonDropper = "PART_ButtonDropper";
#endregion Constants
#region Data
+ private Cursor _dropperCursor;
+
+ private ToggleButton _toggleButtonDropper;
+
private Panel _panelRgb;
private Border _borderColor;
@@ -338,7 +345,6 @@ namespace HandyControl.Controls
CommandBindings.Add(new CommandBinding(ControlCommands.Confirm, ButtonConfirm_OnClick));
CommandBindings.Add(new CommandBinding(ControlCommands.Switch, ButtonSwitch_OnClick));
CommandBindings.Add(new CommandBinding(ControlCommands.Cancel, ButtonCancel_OnClick));
- CommandBindings.Add(new CommandBinding(ControlCommands.Dropper, ButtonDropper_OnClick));
Loaded += (s, e) =>
{
@@ -363,6 +369,11 @@ namespace HandyControl.Controls
_sliderOpacity.ValueChanged -= SliderOpacity_OnValueChanged;
}
+ if (_toggleButtonDropper != null)
+ {
+ _toggleButtonDropper.Click -= ToggleButtonDropper_Click;
+ }
+
_panelColor?.Children.Clear();
_panelRgb?.RemoveHandler(NumericUpDown.ValueChangedEvent, new EventHandler>(NumericUpDownRgb_OnValueChanged));
@@ -376,6 +387,7 @@ namespace HandyControl.Controls
_sliderColor = GetTemplateChild(ElementSliderColor) as Slider;
_sliderOpacity = GetTemplateChild(ElementSliderOpacity) as Slider;
_panelRgb = GetTemplateChild(ElementPanelRgb) as Panel;
+ _toggleButtonDropper = GetTemplateChild(ElementButtonDropper) as ToggleButton;
if (_sliderColor != null)
{
@@ -397,6 +409,11 @@ namespace HandyControl.Controls
collection.Add(behavior);
}
+ if (_toggleButtonDropper != null)
+ {
+ _toggleButtonDropper.Click += ToggleButtonDropper_Click;
+ }
+
_appliedTemplate = true;
if (_isLoaded)
{
@@ -430,7 +447,7 @@ namespace HandyControl.Controls
var button = new Button
{
Margin = new Thickness(0, 0, 12, 12),
- Style = FindResource("ButtonCustom") as Style,
+ Style = ResourceHelper.GetResource
-
\ No newline at end of file
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Base/ProgressButtonBaseStyle.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Base/ProgressButtonBaseStyle.xaml
index 4f7000b0..78538abe 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Base/ProgressButtonBaseStyle.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Base/ProgressButtonBaseStyle.xaml
@@ -50,7 +50,7 @@
-
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/ColorPicker.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/ColorPicker.xaml
index 07876378..a6b7748b 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/ColorPicker.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/ColorPicker.xaml
@@ -9,6 +9,7 @@
+