FLImaging 6.5.8.1
GUISliderStyled.h
1#pragma once
2#include <afxwin.h>
3#include "GUIWndCtrlBase.h"
4
5namespace FLImaging
6{
7 namespace GUI
8 {
9 class FL_EXPORT CGUISliderStyled : public CSliderCtrl, public CGUIWndCtrlBase
10 {
11 public:
12 CGUISliderStyled();
13 virtual ~CGUISliderStyled();
14
15 protected:
16 static COLORREF clrBackground;
17 static COLORREF clrItemChannel;
18 static COLORREF clrItemThumbNormal;
19 static COLORREF clrItemThumbHotlight;
20
21 COLORREF m_clrBackground;
22 COLORREF m_clrItemChannel;
23 COLORREF m_clrItemThumbNormal;
24 COLORREF m_clrItemThumbHotlight;
25
26 CBrush m_brBackground;
27 CBrush m_brItemChannel;
28 CBrush m_brItemThumbNormal;
29 CBrush m_brItemThumbHotlight;
30 CBrush m_brItemThumbDisabled;
31
32 public:
33 static void SetBackgroundColorGlobal(COLORREF clr);
34 static COLORREF GetBackgroundColorGlobal();
35
36 static void SetItemChannelColorGlobal(COLORREF clr);
37 static COLORREF GetItemChannelColorGlobal();
38
39 static void SetItemThumbNormalColorGlobal(COLORREF clr);
40 static COLORREF GetItemThumbNormalColorGlobal();
41
42 static void SetItemThumbHotlightColorGlobal(COLORREF clr);
43 static COLORREF GetItemThumbHotlightColorGlobal();
44
45 virtual void SetFillColor(COLORREF clrFillColor) override;
46 virtual void SetBackgroundColor(COLORREF clr);
47 virtual COLORREF GetBackgroundColor() const;
48
49 virtual void SetItemChannelColor(COLORREF clr);
50 virtual COLORREF GetItemChannelColor() const;
51
52 virtual void SetItemThumbNormalColor(COLORREF clr);
53 virtual COLORREF GetItemThumbNormalColor() const;
54
55 virtual void SetItemThumbHotlightColor(COLORREF clr);
56 virtual COLORREF GetItemThumbHotlightColor() const;
57
58 virtual void UpdateTheme() override;
59
60 DECLARE_MESSAGE_MAP()
61 public:
62 afx_msg void OnNMCustomdraw(NMHDR* pNMHDR, LRESULT* pResult);
63 afx_msg HBRUSH CtlColor(CDC* /*pDC*/, UINT /*nCtlColor*/);
64 afx_msg BOOL OnEraseBkgnd(CDC* pDC);
65 };
66 }
67}