FLImaging 6.5.8.1
GUISliderFloatingPoint.h
1#pragma once
2#include "GUISlider.h"
3
4namespace FLImaging
5{
6 namespace GUI
7 {
8 class FL_EXPORT CGUISliderFloatingPoint : public CGUISlider
9 {
10 public:
11 CGUISliderFloatingPoint();
12 virtual ~CGUISliderFloatingPoint();
13
14 protected:
15 double m_f64Min;
16 double m_f64Max;
17 double m_f64Value;
18 double m_f64Unit;
19 double m_f64UnitMin;
20 uint8_t m_u8DecimalPlace;
21
22 public:
23 virtual BOOL Create(DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID);
24
25 // Sets the minimum position for the slider in the trackbar control.
26 void SetRangeMin(double f64Min, BOOL bRedraw = FALSE);
27
28 // Sets the maximum position for the slider in the trackbar control.
29 void SetRangeMax(double f64Max, BOOL bRedraw = FALSE);
30
31 // Sets the minimum and maximum positions for the slider in the trackbar control.
32 void SetRange(double f64Min, double f64Max, BOOL bRedraw = FALSE);
33
34 // Retrieves the maximum position for the slider in the trackbar control.
35 double GetRangeMax() const;
36
37 // Retrieves the minimum position for the slider in the trackbar control.
38 double GetRangeMin() const;
39
40 // Retrieves the minimum and maximum positions for the slider in the trackbar control.
41 void GetRange(double& f64Min, double& f64Max) const;
42
49 void SetUnit(double f64Unit, BOOL bRedraw = FALSE);
50
56 double GetUnit() const;
57
63 void SetValue(double f64Value);
64
70 double GetValue();
71
77 void SetDecimalPlace(uint8_t u8DecimalPlace);
78
84 uint8_t GetDecimalPlace()const;
85
92 int32_t GetPosByValue(double f64Value)const;
93
100 double GetValueByPos(int32_t i32Pos)const;
101
102 DECLARE_MESSAGE_MAP()
103 public:
104 void OnNeedText(NMHDR* pnmh, LRESULT* pResult);
105 virtual BOOL PreTranslateMessage(MSG* pMsg);
106 };
107 }
108}