windows-nt/Source/XPSP1/NT/admin/netui/common/h/bltssn.hxx
2020-09-26 16:20:57 +08:00

95 lines
3.2 KiB
C++

/**********************************************************************/
/** Microsoft Windows/NT **/
/** Copyright(c) Microsoft Corp., 1991 **/
/**********************************************************************/
/*
bltssn.hxx
Header file for the SPIN_SLE_NUM object
FILE HISTORY:
terryk 16-Apr-1991 created
terryk 10-Jul-1991 second code review change. Attend:
beng rustanl chuckc annmc terryk
terryk 11-Nov-1991 Change the return type to LONG
terryk 22-Mar-1992 Changed LONG to ULONG
terryk 20-Apr-1992 Saved the value during validation time
*/
#ifndef _BLTSSN_HXX_
#define _BLTSSN_HXX_
#include "bltctrl.hxx"
#include "bltedit.hxx"
/**********************************************************************
NAME: SPIN_SLE_NUM
SYNOPSIS: SPIN ITEM object which handles numerical input
INTERFACE:
SPIN_SLE_NUM() - constructor
~SPIN_SLE_NUM() - destructor
QueryContent() - get the current window context
SaveCurrentData() - get the current window context
and save it to the internal variable.
Update() - update the screen value
PARENT: SLE, CHANGEABLE_SPIN_ITEM
HISTORY:
terryk 23-May-91 Created
beng 04-Oct-1991 Win32 conversion
**********************************************************************/
DLL_CLASS SPIN_SLE_NUM: public SLE, public CHANGEABLE_SPIN_ITEM
{
private:
BOOL _fActive; // set whether the item next to update
// or not
static const TCHAR * _pszClassName; // default window class type
INT _cchMaxInput; // max input character
BLT_BACKGROUND_EDIT * _pbkgndframe; // background edit frame
VOID SetMaxInput(); // set the max input character length
VOID DisplayNum( ULONG nValue ); // display the given number to the
// text window
protected:
virtual BOOL OnChar( const CHAR_EVENT & event );
virtual BOOL OnEnter( const CONTROL_EVENT & event );
virtual BOOL OnDefocus( const FOCUS_EVENT &event );
virtual BOOL OnFocus( const FOCUS_EVENT &event );
virtual BOOL OnKeyDown( const VKEY_EVENT &event );
public:
SPIN_SLE_NUM( OWNER_WINDOW * powin, CID cidEdit,
ULONG nValue=0, ULONG nMin=0,
ULONG dRange=0, BOOL fWrap=TRUE, CID cidFrame = -1);
SPIN_SLE_NUM( OWNER_WINDOW * powin, CID cidEdit,
XYPOINT xy, XYDIMENSION dxy, ULONG flStyle =
ES_CENTER | ES_MULTILINE | WS_TABSTOP | WS_CHILD,
ULONG nValue=0, ULONG nMin=0,
ULONG dRange=0, BOOL fWrap=TRUE, CID cidFrame = -1);
~SPIN_SLE_NUM( );
VOID QueryContent( ULONG * pnValue ) const;
VOID QueryContent( NLS_STR * pnlsStr ) const;
VOID QueryContent( TCHAR * pszBuf, UINT cbBufSize ) const;
APIERR SaveCurrentData( );
VOID Update();
VOID SetMin( const ULONG nMin );
VOID SetRange( const ULONG dRange );
APIERR SetSaveValue( const ULONG nValue );
virtual APIERR Validate() { return SaveCurrentData(); };
};
#endif // _BLTSSN_HXX_