Leaked source code of windows server 2003
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.
 
 
 
 
 
 

121 lines
3.0 KiB

//#--------------------------------------------------------------
//
// File: langchange.h
//
// Synopsis: This file holds the declarations of the
// CLangChange class
//
//
// History: 05/24/2000 BalajiB Created
//
// Copyright (C) 1999-2000 Microsoft Corporation
// All rights reserved.
//
//#--------------------------------------------------------------
#ifndef _LANGCHANGE_H_
#define _LANGCHANGE_H_
#include "stdafx.h"
#include "salangchange.h"
#include "satrace.h"
//
// declaration of CLangChange class
//
class CLangChange : public ISALangChange
{
public:
//
// constructor
//
CLangChange() : m_lRef(0),
m_hWnd(NULL)
{}
//
// destructor cleans up resources
//
~CLangChange() {}
//
// IUnknown members
//
STDMETHODIMP QueryInterface(REFIID, LPVOID *);
STDMETHODIMP_(ULONG) AddRef(void);
STDMETHODIMP_(ULONG) Release(void);
//
// IDispatch interface - not implemented
//
STDMETHODIMP GetTypeInfoCount(
/*[out]*/ UINT __RPC_FAR *pctinfo
)
{
return E_NOTIMPL;
}
STDMETHODIMP GetTypeInfo(
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo
)
{
return E_NOTIMPL;
}
STDMETHODIMP GetIDsOfNames(
/* [in] */ REFIID riid,
/* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
/* [in] */ UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ DISPID __RPC_FAR *rgDispId
)
{
return E_NOTIMPL;
}
STDMETHODIMP Invoke(
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
/* [out] */ VARIANT __RPC_FAR *pVarResult,
/* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
/* [out] */ UINT __RPC_FAR *puArgErr
)
{
return E_NOTIMPL;
}
STDMETHODIMP InformChange(
/*[in]*/ BSTR bstrLangDisplayName,
/*[in]*/ BSTR bstrLangISOName,
/*[in]*/ unsigned long ulLangID
);
//
// method provided by class so that CDisplayWorker::Initialize
// can set the I/O completion port handle to be used by
// InformChange()
//
void OnLangChangeCallback(HWND hWnd)
{
m_hWnd = hWnd;
}
void ClearCallback(void)
{
m_hWnd = NULL;
}
private:
LONG m_lRef;
HWND m_hWnd;
};
#endif // _LANGCHANGE_H_