36 lines
807 B
C++
36 lines
807 B
C++
#ifndef _FADETSK_H
|
|
#define _FADETSK_H
|
|
|
|
class CFadeTask : public IFadeTask
|
|
{
|
|
public:
|
|
// *** IUnknown ***
|
|
STDMETHODIMP QueryInterface(REFIID riid, void **ppv);
|
|
STDMETHODIMP_(ULONG) AddRef(void);
|
|
STDMETHODIMP_(ULONG) Release(void);
|
|
|
|
// *** IFadeTask ***
|
|
STDMETHODIMP FadeRect(LPCRECT prc);
|
|
|
|
private:
|
|
friend HRESULT CFadeTask_CreateInstance(IUnknown *punkOuter, REFIID riid, void **ppv);
|
|
CFadeTask();
|
|
~CFadeTask();
|
|
|
|
void _DoPreFade();
|
|
void _DoFade();
|
|
void _StopFade();
|
|
|
|
static DWORD WINAPI s_FadeThreadProc(LPVOID lpThreadParameter);
|
|
static DWORD WINAPI s_FadeSyncProc(LPVOID lpThreadParameter);
|
|
|
|
LONG _cRef;
|
|
HWND _hwndFader;
|
|
RECT _rect;
|
|
HDC _hdcFade;
|
|
HBITMAP _hbm;
|
|
HBITMAP _hbmOld;
|
|
};
|
|
|
|
#endif
|