home *** CD-ROM | disk | FTP | other *** search
- // spindemo.cpp : implementation file
- //
-
- #include "stdafx.h"
- #include "vbxdemo.h"
- #include "spindemo.h"
-
- #ifdef _DEBUG
- #undef THIS_FILE
- static char BASED_CODE THIS_FILE[] = __FILE__;
- #endif
-
-
- LPSTR CustomSpinList[] = { "<Item 1>", "<Item 2>", "<Item 3>" };
-
-
- /////////////////////////////////////////////////////////////////////////////
- // CSpinDemo dialog
-
-
- CSpinDemo::CSpinDemo(CWnd* pParent /*=NULL*/)
- : CDialog(CSpinDemo::IDD, pParent)
- {
- //{{AFX_DATA_INIT(CSpinDemo)
- m_pEditDate = NULL;
- m_szCustomEdit = "";
- m_pSpinDate = NULL;
- m_pSpinCustom = NULL;
- m_pEditCustom = NULL;
- //}}AFX_DATA_INIT
- }
-
- void CSpinDemo::DoDataExchange(CDataExchange* pDX)
- {
- CDialog::DoDataExchange(pDX);
- //{{AFX_DATA_MAP(CSpinDemo)
- DDX_VBEdit(pDX, IDC_VBEDIT3, m_pEditDate);
- DDX_VBText(pDX, IDC_VBEDIT4, 41, m_szCustomEdit);
- DDX_VBSpin(pDX, IDC_VBSPIN4, m_pSpinDate);
- DDX_VBSpin(pDX, IDC_VBSPIN5, m_pSpinCustom);
- DDX_VBEdit(pDX, IDC_VBEDIT4, m_pEditCustom);
- //}}AFX_DATA_MAP
- }
-
- BEGIN_MESSAGE_MAP(CSpinDemo, CDialog)
- //{{AFX_MSG_MAP(CSpinDemo)
- ON_WM_DESTROY()
- ON_BN_CLICKED(IDHELP, OnHelp)
- ON_VBXEVENT(VBN_SCROLLUP, IDC_VBSPIN4, OnScrollupVbspin4)
- ON_VBXEVENT(VBN_SCROLLDN, IDC_VBSPIN4, OnScrolldnVbspin4)
- ON_VBXEVENT(VBN_SCROLLUP, IDC_VBSPIN5, OnScrollupVbspin5)
- ON_VBXEVENT(VBN_SCROLLDN, IDC_VBSPIN5, OnScrolldnVbspin5)
- //}}AFX_MSG_MAP
- END_MESSAGE_MAP()
-
-
- /////////////////////////////////////////////////////////////////////////////
- // CSpinDemo message handlers
-
- void CSpinDemo::OnDestroy()
- {
- CDialog::OnDestroy();
- ::WinHelp( m_hWnd, "VBXSTD12.HLP", HELP_QUIT, NULL );
- }
-
- BOOL CSpinDemo::OnInitDialog()
- {
- CDialog::OnInitDialog();
- m_szCustomEdit = "<Item 1>"; // required because we use UpdateData...
- UpdateData( FALSE );
- if ( !IsHlpHere() )
- GetDlgItem( IDHELP )->EnableWindow( FALSE );
-
- return TRUE; // return TRUE unless you set the focus to a control
- }
-
- void CSpinDemo::OnHelp()
- {
- CString FAR szWinDir, szName, szMsg;
- GetSystemDirectory( szWinDir.GetBuffer(250), 248 );
- szWinDir.ReleaseBuffer();
- if ( szWinDir.GetLength() > 3 )
- szWinDir += "\\";
- szName = szWinDir;
- szName += "VBXSTD12.HLP";
- if ( !IsHlpHere() )
- return;
- ::WinHelp( m_hWnd, szName, HELP_KEY, (long)"VBSpin" );
- }
-
- void CSpinDemo::OnScrollupVbspin4(UINT, int, CWnd*, LPVOID)
- {
- m_pSpinDate->Value() = 0; // we use the VBEdit 'spin' properties instead...
- m_pEditDate->Increment() = TRUE; // yes, that' s all!
-
- }
-
- void CSpinDemo::OnScrolldnVbspin4(UINT, int, CWnd*, LPVOID)
- {
- m_pSpinDate->Value() = 0; // we use the VBEdit 'spin' properties instead...
- m_pEditDate->Decrement() = TRUE; // yes, that' s all!
-
- }
-
- void CSpinDemo::OnScrollupVbspin5(UINT, int, CWnd*, LPVOID)
- {
- // Now, we are looking for difficulties...
- // we have a look at the edit control text
- if ( m_szCustomEdit == CustomSpinList[0] )
- {
- m_pSpinCustom->Value() += 1;
- m_szCustomEdit = CustomSpinList[1];
- UpdateData( FALSE );
- m_pEditCustom->SetFocus();
- m_pEditCustom->SetSel() = TRUE;
- return;
- }
- if ( m_szCustomEdit == CustomSpinList[1] )
- {
- m_pSpinCustom->Value() += 1;
- m_szCustomEdit = CustomSpinList[2];
- UpdateData( FALSE );
- m_pEditCustom->SetFocus();
- m_pEditCustom->SetSel() = TRUE;
- return;
- }
- m_pSpinCustom->Value() = 2; // the last one
- m_szCustomEdit = CustomSpinList[2];
- UpdateData( FALSE );
- m_pEditCustom->SetFocus();
- m_pEditCustom->SetSel() = TRUE;
- }
-
- void CSpinDemo::OnScrolldnVbspin5(UINT, int, CWnd*, LPVOID)
- {
- // Now, we are looking for difficulties...
- // we have a look at the edit control text
- if ( m_szCustomEdit == CustomSpinList[2] )
- {
- m_pSpinCustom->Value() -= 1;
- m_szCustomEdit = CustomSpinList[1];
- UpdateData( FALSE );
- m_pEditCustom->SetFocus();
- m_pEditCustom->SetSel() = TRUE;
- return;
- }
- if ( m_szCustomEdit == CustomSpinList[1] )
- {
- m_pSpinCustom->Value() -= 1;
- m_szCustomEdit = CustomSpinList[0];
- UpdateData( FALSE );
- m_pEditCustom->SetFocus();
- m_pEditCustom->SetSel() = TRUE;
- return;
- }
- m_pSpinCustom->Value() = 0; // the last one
- m_szCustomEdit = CustomSpinList[0];
- UpdateData( FALSE );
- m_pEditCustom->SetFocus();
- m_pEditCustom->SetSel() = TRUE;
- }
-
-