FLImaging 6.5.8.1
GUIPropertyItemSliderDualHandle.h
1#pragma once
2#include "GUIPropertyItemSliderBase.h"
3
13namespace FLImaging
14{
16 namespace GUI
17 {
18 class CGUISliderOwnerDrawnBase;
19
28 {
29 friend class CGUIPropertyGridPropertySliderDualHandle;
30
31 public:
41 CGUIPropertyItemSliderDualHandle(ESliderTemplateType eTemplateType = ESliderTemplateType_Int32);
42
50
66 virtual bool SetPropertyCallbackMin(CPropertyCallback* pFunc, bool bAutoDestroy = true);
67
79 virtual CPropertyCallback* GetPropertyCallbackMin() const;
80
96 virtual bool SetPropertyCallbackMax(CPropertyCallback* pFunc, bool bAutoDestroy = true);
97
109 virtual CPropertyCallback* GetPropertyCallbackMax() const;
110
124 virtual bool SetValueMin(Base::CFLString<wchar_t> strValue, bool bInvokeCallback = true);
125
139 virtual bool SetValueMax(Base::CFLString<wchar_t> strValue, bool bInvokeCallback = true);
140
156 virtual bool SetValue(Base::CFLString<wchar_t> strValueMin, Base::CFLString<wchar_t> strValueMax, bool bInvokeCallback = true);
157
169 virtual bool SetBufferValueMin(const Base::CFLString<wchar_t>& strValue);
170
182 virtual bool SetBufferValueMax(const Base::CFLString<wchar_t>& strValue);
183
197 virtual bool SetBufferValue(const Base::CFLString<wchar_t>& strValueMin, const Base::CFLString<wchar_t>& strValueMax);
198
209
220 virtual void GetValue(Base::CFLString<wchar_t>& strMin, Base::CFLString<wchar_t>& strMax) const;
221
232
243
254
265
277 virtual bool SetOrigValueMin(const Base::CFLString<wchar_t>& strValue);
278
290 virtual bool SetOrigValueMax(const Base::CFLString<wchar_t>& strValue);
291
301 virtual void SetDefaultValueMin(const Base::CFLString<wchar_t>& strDefaultValue);
302
312 virtual void SetDefaultValueMax(const Base::CFLString<wchar_t>& strDefaultValue);
313
325 virtual void SetDefaultValue(const Base::CFLString<wchar_t>& strDefaultValueMin, const Base::CFLString<wchar_t>& strDefaultValueMax);
326
337
348
358 virtual void ShowSlider(bool bShow);
359
369 virtual bool IsSliderVisible() const;
370
382 virtual void SetLabel(const Base::CFLString<wchar_t>& strMinLabel, const Base::CFLString<wchar_t>& strMaxLabel);
383
393 virtual void SetMinLabel(const Base::CFLString<wchar_t>& strLabel);
394
404 virtual void SetMaxLabel(const Base::CFLString<wchar_t>& strLabel);
405
416
427
439 virtual void SetLabelRatio(float f32MinRatio = 0.f, float f32MaxRatio = 0.f);
440
450 virtual void SetMinLabelRatio(float f32Ratio = 0.f);
451
461 virtual void SetMaxLabelRatio(float f32Ratio = 0.f);
462
472 virtual float GetMinLabelRatio() const;
473
483 virtual float GetMaxLabelRatio() const;
484
496 virtual const CResult SetHandleSlideTogether(bool bSet = true);
497
508 virtual bool IsHandleSlidingTogether() const;
509
510
511 virtual CMFCPropertyGridProperty* CreateGridProperty() override;
512 virtual bool Save(const Base::CFLString<wchar_t>& strFilePath) const override;
513 virtual bool Save(Base::CFLArray<Base::CFLString<wchar_t>>& flaData) const override;
514 virtual bool Load(const Base::CFLString<wchar_t>& strFilePath) override;
515 virtual bool Load(const Base::CFLArray<Base::CFLString<wchar_t>>& flaData) override;
516
517 private:
518 virtual bool SetValue(Base::CFLString<wchar_t> strValue, bool bInvokeCallback = true) override;
519 virtual bool SetBufferValue(Base::CFLString<wchar_t> strValue) override;
520 virtual Base::CFLString<wchar_t> GetValue() const override;
521 virtual Base::CFLString<wchar_t> GetBufferValue() const override;
522 virtual Base::CFLString<wchar_t> GetPrevBufferValue() const override;
523 virtual bool SetOrigValue(const Base::CFLString<wchar_t>& strValue) override;
524 virtual void SetDefaultValue(const Base::CFLString<wchar_t>& strDefaultValue) override;
525 virtual Base::CFLString<wchar_t> GetDefaultValue() const override;
526 virtual bool SetPropertyCallback(CPropertyCallback* pFunc, bool bAutoDestroy = true)override;
527 virtual CPropertyCallback* GetPropertyCallback() const override;
528
529 protected:
530 SVariant m_varValueMin;
531 SVariant m_varValueMax;
532
533 Base::CFLString<wchar_t> m_strDefaultValueMin;
534 Base::CFLString<wchar_t> m_strDefaultValueMax;
535
536 Base::CFLString<wchar_t> m_strInitialValueMin;
537 Base::CFLString<wchar_t> m_strInitialValueMax;
538
539 Base::CFLString<wchar_t> m_strBufferValueMin;
540 Base::CFLString<wchar_t> m_strBufferValueMax;
541
542 Base::CFLString<wchar_t> m_strPrevBufferValueMin;
543 Base::CFLString<wchar_t> m_strPrevBufferValueMax;
544
545 Base::CFLString<wchar_t> m_strLabelMin;
546 Base::CFLString<wchar_t> m_strLabelMax;
547
548 bool m_bDrawSlider;
549 bool m_bHandleSlidingTogether;
550 float m_f32LabelMinRatio;
551 float m_f32LabelMaxRatio;
552
553 CPropertyCallback* m_pPropertyCallbackMin;
554 CPropertyCallback* m_pPropertyCallbackMax;
555 bool m_bPropertyCallbackMinAutoDestroy;
556 bool m_bPropertyCallbackMaxAutoDestroy;
557 };
558 }
559}
560
Template type 의 배열 클래스.
Definition RangeTree.h:19
Template type 의 문자열 클래스
Definition INIUtilities.h:20
FLImaging 모듈의 수행 결과 객체
Definition ResultsDef.h:1514
슬라이더 프로퍼티 아이템의 베이스 클래스
Definition GUIPropertyItemSliderBase.h:28
핸들이 두 개 있는 슬라이더 프로퍼티 아이템 클래스
Definition GUIPropertyItemSliderDualHandle.h:28
virtual void ShowSlider(bool bShow)
슬라이더를 표시하는지 여부를 설정합니다.
virtual bool SetPropertyCallbackMin(CPropertyCallback *pFunc, bool bAutoDestroy=true)
Min 값 설정 시 수행되는 콜백 함수를 설정합니다.
virtual bool SetPropertyCallbackMax(CPropertyCallback *pFunc, bool bAutoDestroy=true)
Max 값 설정 시 수행되는 콜백 함수를 설정합니다.
virtual bool SetOrigValueMax(const Base::CFLString< wchar_t > &strValue)
this의 원래 최대 값을 설정합니다.
virtual Base::CFLString< wchar_t > GetValueMin() const
this의 최소 값을 반환합니다.
virtual ~CGUIPropertyItemSliderDualHandle()
CGUIPropertyItemSliderDualHandle 클래스의 소멸자입니다.
virtual float GetMinLabelRatio() const
슬라이더의 최소값에 대한 레이블 비율을 반환합니다.
virtual bool SetValue(Base::CFLString< wchar_t > strValueMin, Base::CFLString< wchar_t > strValueMax, bool bInvokeCallback=true)
문자열로부터 슬라이더의 최솟값과 최댓값을 설정합니다.
virtual bool Save(Base::CFLArray< Base::CFLString< wchar_t > > &flaData) const override
INI 데이터 배열에 this의 값을 기록하는 함수
CGUIPropertyItemSliderDualHandle(ESliderTemplateType eTemplateType=ESliderTemplateType_Int32)
CGUIPropertyItemSliderDualHandle 클래스의 생성자입니다.
virtual CPropertyCallback * GetPropertyCallbackMin() const
Min 값 설정 시 수행되는 콜백 함수를 가져옵니다.
virtual void SetMinLabel(const Base::CFLString< wchar_t > &strLabel)
슬라이더의 최소값에 대한 레이블을 설정합니다.
virtual void SetMaxLabelRatio(float f32Ratio=0.f)
슬라이더의 최대값에 대한 레이블 비율을 설정합니다.
virtual void SetMaxLabel(const Base::CFLString< wchar_t > &strLabel)
슬라이더의 최대값에 대한 레이블을 설정합니다.
virtual Base::CFLString< wchar_t > GetMinLabel() const
슬라이더의 최소값에 대한 레이블을 반환합니다.
virtual void SetDefaultValue(const Base::CFLString< wchar_t > &strDefaultValueMin, const Base::CFLString< wchar_t > &strDefaultValueMax)
this의 기본 최대 값을 설정합니다.
virtual Base::CFLString< wchar_t > GetMaxLabel() const
슬라이더의 최대값에 대한 레이블을 반환합니다.
virtual Base::CFLString< wchar_t > GetBufferValueMin() const
this의 최소 버퍼 값을 반환합니다.
virtual bool SetBufferValue(const Base::CFLString< wchar_t > &strValueMin, const Base::CFLString< wchar_t > &strValueMax)
this의 최솟값 및 최댓값 문자열을 설정합니다.
virtual bool Save(const Base::CFLString< wchar_t > &strFilePath) const override
ini 파일에 this의 값을 저장합니다.
virtual void SetLabelRatio(float f32MinRatio=0.f, float f32MaxRatio=0.f)
슬라이더의 최소값과 최대값에 대한 레이블 비율을 설정합니다.
virtual bool Load(const Base::CFLArray< Base::CFLString< wchar_t > > &flaData) override
문자열 배열로부터 this의 값을 로드합니다.
virtual Base::CFLString< wchar_t > GetValueMax() const
this의 최대 값을 반환합니다.
virtual Base::CFLString< wchar_t > GetPrevBufferValueMin() const
this의 이전 최소 버퍼 값을 반환합니다.
virtual bool SetBufferValueMin(const Base::CFLString< wchar_t > &strValue)
this의 최소 버퍼 값을 설정합니다.
virtual bool IsHandleSlidingTogether() const
핸들(thumb) 충돌 시 함께 이동하는지, 멈추는지 여부를 반환하는 함수.
virtual void SetMinLabelRatio(float f32Ratio=0.f)
슬라이더의 최소값에 대한 레이블 비율을 설정합니다.
virtual bool SetValueMin(Base::CFLString< wchar_t > strValue, bool bInvokeCallback=true)
문자열로부터 슬라이더의 최솟값을 설정합니다.
virtual bool IsSliderVisible() const
슬라이더를 표시하는지 여부를 얻어 옵니다.
virtual void SetLabel(const Base::CFLString< wchar_t > &strMinLabel, const Base::CFLString< wchar_t > &strMaxLabel)
슬라이더의 최소값과 최대값에 대한 레이블을 설정합니다.
virtual const CResult SetHandleSlideTogether(bool bSet=true)
핸들(thumb) 충돌 시 멈출 것인지, 함께 이동할 것인지를 설정하는 함수. 예를 들어 min 핸들을 max 핸들 위치까지 이동했을 때 max 핸들을 밀면서 계속 이동하거나,...
virtual bool SetValueMax(Base::CFLString< wchar_t > strValue, bool bInvokeCallback=true)
문자열로부터 슬라이더의 최댓값을 설정합니다.
virtual Base::CFLString< wchar_t > GetDefaultValueMax() const
this의 기본 최대 값을 반환합니다.
virtual void SetDefaultValueMin(const Base::CFLString< wchar_t > &strDefaultValue)
this의 기본 최소 값을 설정합니다.
virtual CMFCPropertyGridProperty * CreateGridProperty() override
this와 연결된 새로운 그리드 프로퍼티를 생성하고 반환합니다.
virtual void SetDefaultValueMax(const Base::CFLString< wchar_t > &strDefaultValue)
this의 기본 최대 값을 설정합니다.
virtual bool Load(const Base::CFLString< wchar_t > &strFilePath) override
ini 파일로부터 this의 값을 로드합니다.
virtual Base::CFLString< wchar_t > GetDefaultValueMin() const
this의 기본 최소 값을 반환합니다.
virtual float GetMaxLabelRatio() const
슬라이더의 최대값에 대한 레이블 비율을 반환합니다.
virtual CPropertyCallback * GetPropertyCallbackMax() const
Max 값 설정 시 수행되는 콜백 함수를 가져옵니다.
virtual bool SetOrigValueMin(const Base::CFLString< wchar_t > &strValue)
this의 원래 최소 값을 설정합니다.
virtual bool SetBufferValueMax(const Base::CFLString< wchar_t > &strValue)
this의 최대 버퍼 값을 설정합니다.
virtual Base::CFLString< wchar_t > GetBufferValueMax() const
this의 최대 버퍼 값을 반환합니다.
virtual Base::CFLString< wchar_t > GetPrevBufferValueMax() const
this의 이전 최대 버퍼 값을 반환합니다.
ESliderTemplateType
슬라이더 자료형
Definition GUIDefinitions.h:9926