Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

85 lines
2.7 KiB

// spttsengui.cpp : Implementation of SpTtsEngUI
#include "stdafx.h"
#include "spttsengui.h"
#include "ttspropertiesdialog.h"
#include "spddkhlp.h"
/****************************************************************************
* SpTtsEngUI::IsUISupported *
*-------------------------*
* Description: Determines if the supplied standard UI component is
* supported by the engine.
*
* Returns:
* *pfSupported - set to TRUE if the specified standard UI component
* is supported.
* E_INVALIDARG - If one of the supplied arguments is invalid.
*
********************************************************************* AH ***/
STDMETHODIMP SpTtsEngUI::IsUISupported( const WCHAR * pszTypeOfUI,
void * /* pvExtraData */,
ULONG /* cbExtraData */,
IUnknown * /* punkObject */,
BOOL * pfSupported )
{
SPDBG_FUNC("SpTtsEngUI::IsUISupported");
// Validate the params
if ( pfSupported == NULL ||
SP_IS_BAD_WRITE_PTR( pfSupported ) )
{
return E_INVALIDARG;
}
*pfSupported = FALSE;
// Test to see if the UI is supported
if ( wcscmp( pszTypeOfUI, SPDUI_EngineProperties ) == 0 )
{
*pfSupported = TRUE;
}
return S_OK;
} /* IsUISupported */
/****************************************************************************
* SpTtsEngUI::DisplayUI *
*---------------------*
* Description:
*
* Returns:
*
********************************************************************* AH ***/
STDMETHODIMP SpTtsEngUI::DisplayUI( HWND hwndParent,
const WCHAR * pszTitle,
const WCHAR * pszTypeOfUI,
void * /* pvExtraData */,
ULONG /* cbExtraData */,
ISpObjectToken * pToken,
IUnknown * /* punkObject */)
{
SPDBG_FUNC("SpTtsEngUI::DisplayUI");
// Validate the params
if ( !IsWindow( hwndParent ) ||
SP_IS_BAD_READ_PTR( pszTitle ) ||
SP_IS_BAD_INTERFACE_PTR( pToken ) )
{
return E_INVALIDARG;
}
HRESULT hr = S_OK;
// Display the UI
if ( SUCCEEDED( hr ) )
{
if ( wcscmp( pszTypeOfUI, SPDUI_EngineProperties ) == 0)
{
CTTSPropertiesDialog dlg( _Module.GetModuleInstance(), hwndParent );
hr = dlg.Run();
}
}
return hr;
} /* DisplayUI */