714dd74636
git-svn-id: svn://10.65.10.50/trunk@5350 c028cbd2-c16b-5b4b-a496-9718f37d4682
130 lines
3.3 KiB
C++
Executable File
130 lines
3.3 KiB
C++
Executable File
//
|
|
// CXL_WILD.CPP
|
|
//
|
|
// Source file for ArchiveLib 2.0
|
|
//
|
|
// Copyright (c) Greenleaf Software, Inc. 1994-1996
|
|
// All Rights Reserved
|
|
//
|
|
// CONTENTS
|
|
//
|
|
// ALExpanderGetNextFile()
|
|
//
|
|
// REVISION HISTORY
|
|
//
|
|
// February 14, 1996 2.0A : New release
|
|
//
|
|
|
|
#include "arclib.h"
|
|
#if !defined( AL_IBM )
|
|
#pragma hdrstop
|
|
#endif
|
|
|
|
#include "wildcard.h"
|
|
#include "_vbutil.h"
|
|
|
|
//
|
|
// NAME
|
|
//
|
|
// ALWildCardExpander::GetNextFile()
|
|
//
|
|
// PLATFORMS/ENVIRONMENTS
|
|
//
|
|
// Console Windows PM
|
|
// C++ C VB Delphi
|
|
//
|
|
// SHORT DESCRIPTION
|
|
//
|
|
// Get the next expanded file from an expander.
|
|
//
|
|
// C++ SYNOPSIS
|
|
//
|
|
// #include "arclib.h"
|
|
// #include "wildcard.h"
|
|
//
|
|
// char *ALWildCardExpander::GetNextFile();
|
|
//
|
|
// C SYNOPSIS
|
|
//
|
|
// #include "arclib.h"
|
|
// #include "wildcard.h"
|
|
//
|
|
// char *ALExpanderGetNextFile( hALExpander this_object );
|
|
//
|
|
// VB SYNOPSIS
|
|
//
|
|
// Declare Function ALExpanderGetNextFile Lib "AL20LW"
|
|
// Alias "ALExpanderGetNextFileVB"
|
|
// (ByVal this_object&) As String
|
|
//
|
|
// DELPHI SYNOPSIS
|
|
//
|
|
// function ALExpanderGetNextFile( this_object : hALExpander ) : PChar;
|
|
//
|
|
// ARGUMENTS
|
|
//
|
|
// this_object : A handle for (pointer to) an ALWildCardExpander
|
|
// object.
|
|
//
|
|
// DESCRIPTION
|
|
//
|
|
// There are several different versions of the C++ function. You
|
|
// can find them in: ..\CPP_FS.DOS\WILDDOS.CPP, et. al. They
|
|
// have a complete explanation of how the function works.
|
|
//
|
|
// This file just has the C/VB/Delphi translation code. These routines
|
|
// call the C++ member functions, which is found elswhere. See those
|
|
// files for details on what happens for each O/S.
|
|
//
|
|
// RETURNS
|
|
//
|
|
// A string containing the next expanded wild card generated by
|
|
// the wild card engine. Note that under C, you will get a pointer
|
|
// to a string that is residing inside the ALWildCardExpander
|
|
// object, which you are free to copy or duplicate. The VB translation
|
|
// function actually creates a new string using the ALCreateVBString
|
|
// function.
|
|
//
|
|
// EXAMPLE
|
|
//
|
|
// SEE ALSO
|
|
//
|
|
// REVISION HISTORY
|
|
//
|
|
// February 14, 1996 2.0A : New release
|
|
//
|
|
|
|
extern "C" AL_LINKAGE char AL_DLL_FAR * AL_FUNCTION
|
|
ALExpanderGetNextFile( hALExpander this_object ) /* Tag public function */
|
|
{
|
|
AL_ASSERT_OBJECT( this_object, ALWildCardExpander, "ALExpanderGetNextFile" );
|
|
return ( (ALWildCardExpander *) this_object )->GetNextFile();
|
|
}
|
|
|
|
#if defined( AL_VB )
|
|
|
|
extern "C" AL_LINKAGE long AL_FUNCTION
|
|
ALExpanderGetNextFileVB( hALExpander this_object ) /* Tag public function */
|
|
{
|
|
AL_ASSERT_OBJECT( this_object, ALWildCardExpander, "ALExpanderGetNextFileVB" );
|
|
char _far *ret_guy = ( (ALWildCardExpander *) this_object )->GetNextFile();
|
|
if ( ret_guy == 0 )
|
|
ret_guy = "";
|
|
return ALCreateVBString( ret_guy, (unsigned short int) _fstrlen( ret_guy ) );
|
|
}
|
|
|
|
#elif defined( AL_VB32 )
|
|
|
|
extern "C" AL_LINKAGE BSTR AL_FUNCTION
|
|
ALExpanderGetNextFileVB( hALExpander this_object ) /* Tag public function */
|
|
{
|
|
AL_ASSERT_OBJECT( this_object, ALWildCardExpander, "ALExpanderGetNextFileVB" );
|
|
char *ret_guy = ( (ALWildCardExpander *) this_object )->GetNextFile();
|
|
if ( ret_guy == 0 )
|
|
ret_guy = "";
|
|
return SysAllocStringByteLen( ret_guy, strlen( ret_guy ) );
|
|
}
|
|
|
|
#endif
|
|
|