109 lines
2.9 KiB
C++
109 lines
2.9 KiB
C++
|
/**********************************************************************/
|
||
|
/** Microsoft Windows NT **/
|
||
|
/** Copyright(c) Microsoft Corp., 1992 **/
|
||
|
/**********************************************************************/
|
||
|
|
||
|
/*
|
||
|
Groups.hxx
|
||
|
|
||
|
This file contains common group definitions that other people might
|
||
|
find useful.
|
||
|
|
||
|
|
||
|
|
||
|
FILE HISTORY:
|
||
|
Johnl 11-Apr-1992 Created
|
||
|
|
||
|
*/
|
||
|
|
||
|
#ifndef _GROUPS_HXX_
|
||
|
#define _GROUPS_HXX_
|
||
|
|
||
|
#include "strlst.hxx"
|
||
|
|
||
|
/*************************************************************************
|
||
|
|
||
|
NAME: SLE_STRLB_GROUP
|
||
|
|
||
|
SYNOPSIS: This group defines the behaviour between an input SLE, a
|
||
|
string listbox that contains the inputted data (and supplies
|
||
|
the output data) and two buttons which controls the
|
||
|
input/output sequence. This is essentially a set control
|
||
|
except one of listboxes is replaced by an SLE.
|
||
|
|
||
|
INTERFACE:
|
||
|
|
||
|
Init
|
||
|
Fills the Listbox with the items in the STRLIST.
|
||
|
Must be called even if nothing is to be added the listbox.
|
||
|
|
||
|
PARENT: CONTROL_GROUP
|
||
|
|
||
|
USES: PUSH_BUTTON, SLE, STRING_LISTBOX
|
||
|
|
||
|
CAVEATS: Init is used because we can't reliably gurantee all of the
|
||
|
controls have been constructed at construct time.
|
||
|
|
||
|
|
||
|
NOTES: No action will be performed on the controls passed to the
|
||
|
constructor
|
||
|
|
||
|
|
||
|
HISTORY:
|
||
|
JohnL 11-Apr-1992 Created
|
||
|
KeithMo 12-Nov-1992 Added W_Add virtual worker.
|
||
|
|
||
|
**************************************************************************/
|
||
|
|
||
|
DLL_CLASS SLE_STRLB_GROUP : public CONTROL_GROUP
|
||
|
{
|
||
|
public:
|
||
|
|
||
|
SLE_STRLB_GROUP( OWNER_WINDOW * powin,
|
||
|
SLE * sleInput,
|
||
|
STRING_LISTBOX * pStrLB,
|
||
|
PUSH_BUTTON * pbuttonAdd,
|
||
|
PUSH_BUTTON * pbuttonRemove ) ;
|
||
|
~SLE_STRLB_GROUP() ;
|
||
|
|
||
|
APIERR Init( STRLIST * pstrlist = NULL ) ;
|
||
|
|
||
|
STRING_LISTBOX * QueryStrLB( void ) const
|
||
|
{ return _pStrLB ; }
|
||
|
|
||
|
SLE * QueryInputSLE( void ) const
|
||
|
{ return _psleInput ; }
|
||
|
|
||
|
protected:
|
||
|
|
||
|
APIERR OnAdd( void ) ;
|
||
|
APIERR OnRemove( void ) ;
|
||
|
|
||
|
virtual APIERR W_Add( const TCHAR * psz );
|
||
|
|
||
|
virtual APIERR OnUserAction( CONTROL_WINDOW * pcwin,
|
||
|
const CONTROL_EVENT & e ) ;
|
||
|
|
||
|
/* Grays buttons and disables controls based on the current state of the
|
||
|
* group.
|
||
|
*/
|
||
|
void SetState( void ) const ;
|
||
|
|
||
|
PUSH_BUTTON * QueryAddButton( void ) const
|
||
|
{ return _pbuttonAdd ; }
|
||
|
|
||
|
PUSH_BUTTON * QueryRemoveButton( void ) const
|
||
|
{ return _pbuttonRemove ; }
|
||
|
|
||
|
private:
|
||
|
|
||
|
STRING_LISTBOX * _pStrLB ;
|
||
|
SLE * _psleInput ;
|
||
|
|
||
|
PUSH_BUTTON * _pbuttonAdd ;
|
||
|
PUSH_BUTTON * _pbuttonRemove ;
|
||
|
} ;
|
||
|
|
||
|
|
||
|
#endif // _GROUPS_HXX_
|