windows-nt/Source/XPSP1/NT/admin/netui/common/h/fmx.hxx

145 lines
4.4 KiB
C++
Raw Normal View History

2020-09-26 03:20:57 -05:00
/**********************************************************************/
/** Microsoft LAN Manager **/
/** Copyright(c) Microsoft Corp., 1991 **/
/**********************************************************************/
/*
fmx.hxx
Header file for FMX class
FILE HISTORY:
rustanl 30-Apr-1991 Created
Yi-HsinS 04-Oct-1991 Modified QuerySelection and QueryDriveInfo
to return APIERRs
*/
#ifndef _FMX_HXX_
#define _FMX_HXX_
/*******************************************************************
NAME: GetSelItem
SYNOPSIS: Gets the currently selected item from the File Manager
Extensions.
ENTRY: hwnd - Handle passed by File Manager for FMX uses
pnlsSelItem - pointer to string to receive the selection
fGetDirOnly - Indicates if a file is selected, the file
should be stripped thus only the files parent dir
is returned
pfIsFile - Set to TRUE if the selection is a file
EXIT:
RETURNS: NERR_Success if successful, error code otherwise
NOTES:
HISTORY:
Johnl 21-Jan-1992 Moved from share stuff
********************************************************************/
APIERR GetSelItem( HWND hwnd,
NLS_STR *pnlsSelItem,
BOOL fGetDirOnly = TRUE,
BOOL *pfIsFile = NULL ) ;
/*******************************************************************
NAME: GetSelItem
SYNOPSIS: Retrieves the ith selection from the file manager
ENTRY: hwnd - FMX Window handle
iSelection - Retrieve this selection
pnlsSelItem - file name is copied here
pfIsFile - TRUE if file, FALSE if directory
EXIT:
RETURNS:
NOTES:
HISTORY:
Johnl 13-Feb-1992 Created
********************************************************************/
APIERR GetSelItem( HWND hwnd,
UINT iSelection,
NLS_STR *pnlsSelItem,
BOOL *pfIsFile ) ;
/*************************************************************************
NAME: FMX
SYNOPSIS: Communicates with File Man
INTERFACE: FMX - Constructor
QueryFocus - Returns where focus is
QuerySelCount - Returns number of selected items
QuerySelection - Returns a selected item, has a flag that
defaults to converting the path from
OEM to ANSI.
QueryDriveInfo - Returns drive info from the currently
active window
Refresh - Causes File Man to refresh
ReloadExtensions - Causes File Man to reload all FM extensions
PARENT:
CAVEATS: This is, admittedly, a primitive interface.
NOTES: FMX calls are only guaranteed to work during calls out to
FMExtensionProc. It would be nice if these classes could
attempt to enforce this. But then, on the other hand,
perhaps we'd still like to call in at some other time.
To get FM's hwnd, listen for the first FMExtensionProc
message. It would be nice if that could be done
automatically.
HISTORY:
rustanl 30-Apr-1991 Created
**************************************************************************/
DLL_CLASS FMX
{
private:
HWND _hwnd;
ULONG_PTR Command( UINT usMsg, UINT wParam = 0, LPARAM lParam = 0 ) const;
public:
FMX( HWND hwnd );
UINT QueryFocus( void ) const;
UINT QuerySelCount( void ) const;
APIERR QuerySelection( INT iSel, FMS_GETFILESEL * pselinfo,
BOOL fAnsi = TRUE );
APIERR QueryDriveInfo( FMS_GETDRIVEINFO * pdriveinfo );
void Refresh( void );
void Reload( void );
//
// Returns TRUE if one or more file *and* directory is selected. If
// FALSE is returned, pfIsHomogeneousSelFiles is set indicating whether
// the selection contains files or directories.
//
BOOL IsHeterogeneousSelection( BOOL * pfIsHomogeneousSelFiles = NULL ) ;
}; // class FMX
#endif // _FMX_HXX_