UIFlash.h 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. /*
  2. 创建日期: 2012/11/05 15:09:48
  3. 作者: daviyang35@gmail.com
  4. 描述: FlashUI
  5. */
  6. #ifndef __UIFLASH_H__
  7. #define __UIFLASH_H__
  8. #pragma once
  9. #include "Utils/FlashEventHandler.h"
  10. #include "Utils/flash11.tlh"
  11. namespace DuiLib
  12. {
  13. class UILIB_API CFlashUI
  14. : public CActiveXUI
  15. , public _IShockwaveFlashEvents
  16. , public ITranslateAccelerator
  17. {
  18. public:
  19. CFlashUI(void);
  20. ~CFlashUI(void);
  21. void SetFlashEventHandler(CFlashEventHandler* pHandler);
  22. virtual bool DoCreateControl();
  23. IShockwaveFlash* m_pFlash;
  24. private:
  25. virtual LPCTSTR GetClass() const;
  26. virtual LPVOID GetInterface( LPCTSTR pstrName );
  27. virtual void SetAttribute(LPCTSTR pstrName, LPCTSTR pstrValue);
  28. virtual HRESULT STDMETHODCALLTYPE GetTypeInfoCount( __RPC__out UINT *pctinfo );
  29. virtual HRESULT STDMETHODCALLTYPE GetTypeInfo( UINT iTInfo, LCID lcid, __RPC__deref_out_opt ITypeInfo **ppTInfo );
  30. virtual HRESULT STDMETHODCALLTYPE GetIDsOfNames( __RPC__in REFIID riid, __RPC__in_ecount_full(cNames ) LPOLESTR *rgszNames, UINT cNames, LCID lcid, __RPC__out_ecount_full(cNames) DISPID *rgDispId);
  31. virtual HRESULT STDMETHODCALLTYPE Invoke( DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr );
  32. virtual HRESULT STDMETHODCALLTYPE QueryInterface( REFIID riid, void **ppvObject );
  33. virtual ULONG STDMETHODCALLTYPE AddRef( void );
  34. virtual ULONG STDMETHODCALLTYPE Release( void );
  35. HRESULT OnReadyStateChange (long newState);
  36. HRESULT OnProgress(long percentDone );
  37. HRESULT FSCommand (_bstr_t command, _bstr_t args);
  38. HRESULT FlashCall (_bstr_t request );
  39. virtual void ReleaseControl();
  40. HRESULT RegisterEventHandler(BOOL inAdvise);
  41. // ITranslateAccelerator
  42. // Duilib消息分发给WebBrowser
  43. virtual LRESULT TranslateAccelerator( MSG *pMsg );
  44. private:
  45. LONG m_dwRef;
  46. DWORD m_dwCookie;
  47. CFlashEventHandler* m_pFlashEventHandler;
  48. };
  49. }
  50. #endif // __UIFLASH_H__