dcsimg

Color Dialog Control Set

WEBINAR:
On-Demand

Desktop-as-a-Service Designed for Any Cloud ? Nutanix Frame


Environment: VC6 SP4 (with newest platform SDK for GDI+)

There are three controls included with the demo project, which are CLumChooser, CHusSatChooser and CColorBox.

To make use of these controls, you can simply add a custom control to your dialog template and specific the correct Windows class name (which is declared inside CtrlSetting.h)

You are then required to add code to your dialog implementation file:

1) Add necessary DDX_Control to DoDataExchange

  DDX_Control(pDX, IDC_COLORBOX1, m_box[0]);
  DDX_Control(pDX, IDC_COLORBOX2, m_box[1]);
  DDX_Control(pDX, IDC_COLORBOX3, m_box[2]);
  DDX_Control(pDX, IDC_COLORBOX4, m_box[3]);
  DDX_Control(pDX, IDC_LUMCHOOSER, m_LumChooser);
  DDX_Control(pDX, IDC_HUESAT, m_HueSatChooser);

2) Add necessare Macros and routines to handle child notification

ON_NOTIFY(CHueSatChooser::NM_COLORCHANGE, 
          IDC_HUESAT, 
          OnHueSatChange)
ON_NOTIFY(CLumChooser::NM_COLORCHANGE,
          IDC_LUMCHOOSER, 
          OnLumChange)
ON_NOTIFY(CColorBox::NM_BOXCLICK,
          IDC_COLORBOX1, 
          OnColorBoxClick)
ON_NOTIFY(CColorBox::NM_BOXCLICK,
          IDC_COLORBOX2, 
          OnColorBoxClick)
ON_NOTIFY(CColorBox::NM_BOXCLICK,
          IDC_COLORBOX3, 
          OnColorBoxClick)
ON_NOTIFY(CColorBox::NM_BOXCLICK,
          IDC_COLORBOX4,
          OnColorBoxClick)

afx_msg void OnHueSatChange(NMHDR * pNotifyStruct,
                            LRESULT * result );
afx_msg void OnLumChange(NMHDR * pNotifyStruct,
                         LRESULT * result );
afx_msg void OnColorBoxClick(NMHDR * pNotifyStruct,
                             LRESULT * result );

If there is any kind of bugs or memory leaks, please let me know.

Have fun.

Downloads

Download demo project - 23 Kb


This article was originally published on April 18th, 2002

Most Popular Programming Stories

More for Developers

RSS Feeds

Thanks for your registration, follow us on our social networks to keep up-to-date