using System.Windows;
using System.Windows.Media;
namespace PunkHPX8_UI.Themes.Attach
{
   public class ElementBackground
   {
      /// 
      /// Panel背景色
      /// Combox下拉、日期选择面板
      /// 
      public static readonly DependencyProperty PanelBackgroundProperty = DependencyProperty.RegisterAttached(
            "PanelBackground", typeof(SolidColorBrush), typeof(ElementBackground), new PropertyMetadata(default(SolidColorBrush)));
      public static void SetPanelBackground(DependencyObject element, SolidColorBrush value)
          => element.SetValue(PanelBackgroundProperty, value);
      public static SolidColorBrush GetPanelBackground(DependencyObject element)
          => (SolidColorBrush)element.GetValue(PanelBackgroundProperty);
      /// 
      /// 默认颜色
      /// 
      public static readonly DependencyProperty NormalBackgroundProperty = DependencyProperty.RegisterAttached(
            "NormalBackground", typeof(SolidColorBrush), typeof(ElementBackground), new PropertyMetadata(default(SolidColorBrush)));
      public static void SetNormalBackground(DependencyObject element, SolidColorBrush value)
          => element.SetValue(NormalBackgroundProperty, value);
      public static SolidColorBrush GetNormalBackground(DependencyObject element)
          => (SolidColorBrush)element.GetValue(NormalBackgroundProperty);
      /// 
      /// 高亮颜色
      /// 
      public static readonly DependencyProperty HighlightBackgroundProperty = DependencyProperty.RegisterAttached(
            "HighlightBackground", typeof(SolidColorBrush), typeof(ElementBackground), new PropertyMetadata(default(SolidColorBrush)));
      public static void SetHighlightBackground(DependencyObject element, SolidColorBrush value)
          => element.SetValue(HighlightBackgroundProperty, value);
      public static SolidColorBrush GetHighlightBackground(DependencyObject element)
          => (SolidColorBrush)element.GetValue(HighlightBackgroundProperty);
      /// 
      /// 选中颜色
      /// 
      public static readonly DependencyProperty SelectedBackgroundProperty = DependencyProperty.RegisterAttached(
            "SelectedBackground", typeof(SolidColorBrush), typeof(ElementBackground), new PropertyMetadata(default(SolidColorBrush)));
      public static void SetSelectedBackground(DependencyObject element, SolidColorBrush value)
          => element.SetValue(SelectedBackgroundProperty, value);
      public static SolidColorBrush GetSelectedBackground(DependencyObject element)
          => (SolidColorBrush)element.GetValue(SelectedBackgroundProperty);
      /// 
      /// 鼠标悬浮颜色
      /// 
      public static readonly DependencyProperty MouseOverBackgroundProperty = DependencyProperty.RegisterAttached(
            "MouseOverBackground", typeof(SolidColorBrush), typeof(ElementBackground), new PropertyMetadata(default(SolidColorBrush)));
      public static void SetMouseOverBackground(DependencyObject element, SolidColorBrush value)
          => element.SetValue(MouseOverBackgroundProperty, value);
      public static SolidColorBrush GetMouseOverBackground(DependencyObject element)
          => (SolidColorBrush)element.GetValue(MouseOverBackgroundProperty);
      /// 
      /// 鼠标悬浮颜色
      /// 
      public static readonly DependencyProperty PressedBackgroundProperty = DependencyProperty.RegisterAttached(
            "PressedBackground", typeof(SolidColorBrush), typeof(ElementBackground), new PropertyMetadata(default(SolidColorBrush)));
      public static void SetPressedBackground(DependencyObject element, SolidColorBrush value)
          => element.SetValue(PressedBackgroundProperty, value);
      public static SolidColorBrush GetPressedBackground(DependencyObject element)
          => (SolidColorBrush)element.GetValue(PressedBackgroundProperty);
      /// 
      /// 禁用颜色
      /// 
      public static readonly DependencyProperty DisabledBackgroundProperty = DependencyProperty.RegisterAttached(
            "DisabledBackground", typeof(SolidColorBrush), typeof(ElementBackground), new PropertyMetadata(default(SolidColorBrush)));
      public static void SetDisabledBackground(DependencyObject element, SolidColorBrush value)
          => element.SetValue(DisabledBackgroundProperty, value);
      public static SolidColorBrush GetDisabledBackground(DependencyObject element)
          => (SolidColorBrush)element.GetValue(DisabledBackgroundProperty);
   }
}