📄 sm1doc.h
字号:
CSmil1ShowSiteEvent* getShowHideEvent(IHXSite* pRegionSite, IHXSite* pRendererSite, BOOL bShowEvent); HX_RESULT insertSiteInfo (void* pInfo); void removeGroupEvents (UINT16 uGroupIndex); void showSite (IHXSite* pSite, BOOL bShow); void resizeSite (HXxSize newSize); void resizeSite (IHXSite* pSite, double dXScale, double dYScale); void resizeRegionSiteAbs(CSmil1BasicRegion* pRegion, double dXAbsScale, double dYAbsScale); BOOL draw (HXxEvent* pEvent, IHXSite* pSite, HXxColor ulBgColor); void insertZOrder (IHXSite* pSite, INT32 lZOrder); void setZOrder (); HX_RESULT handleElements (); void setProperty (IHXValues* pValues, const char* pName, const char* pValue); HX_RESULT parseDimension (const char* pDimensionString, REF(UINT32) ulValue, REF(BOOL) bIsPercent); HX_RESULT regionToRect (CSmil1Region* pElement, HXxRect* pRect, BOOL& bWidthUnspecified, BOOL& bHeightUnspecified); CSmil1AAnchorElement* findHyperlinkElement (const char* pID, UINT16 uXPos, UINT16 uYPos); HX_RESULT convertURL (const char* pURL, CHXString& newURL); HX_RESULT updateStreamTiming (const char* pElementID, UINT32 ulDuration); HX_RESULT updateStreamDelay (UINT16 uGroupIndex, UINT32 ulDelay); HX_RESULT updateSiteEvents (UINT16 uGroupIndex); HX_RESULT createRegionSites (); void RemoveEvents (UINT32 ulGroupIndex, IHXSite* pSite); HX_RESULT flushAllEvents (UINT32 ulFlushToTime, BOOL bBreak=FALSE ); inline HX_RESULT flushAllEvents () { return flushAllEvents( m_ulCurrentTime ); } BOOL IsFullScreen(); void computeMediaFitSize(HXxSize cRegSize, HXxSize cMedSize, const char* pszFitAttr, REF(HXxSize) rcFitSize); HX_RESULT getPreference(IUnknown* pContext, const char* pszKey, REF(IHXBuffer*) rpValue); HX_RESULT getBooleanPreference(IUnknown* pContext, const char* pszKey, REF(BOOL) rbValue);#if defined(_UNIX) && (!(defined(_BEOS))) && (!(defined(_MAC_UNIX))) void ConvertPNxColorToXColor(HXxColor hxxColor, XColor& xcolor); XData* InitXVisualSupport(IHXSite* pSite, HXxWindow* pWnd);#endif CSmil1Renderer* m_pParent; CSmil1Parser* m_pSmilParser; HX_RESULT m_ulParseResult; IHXSite* m_pMISUSSite; IHXScheduler* m_pScheduler;public: HXxSize m_topSiteSize; HXxSize m_topSiteOriginalSize;private: IHXValues* m_pValues; char* m_pFragment; CHXMapStringToOb* m_pRegionMap; CHXMapPtrToPtr* m_pSiteInfoByRendererMap; CHXMapPtrToPtr* m_pSiteWatcherMap; CHXMapLongToObj* m_pGroupInfoMap; CHXMapLongToObj* m_pGroupMap; CHXMapStringToOb* m_pDeferredSourceMap; CHXMapStringToOb* m_pRepeatIDMap; CHXSimpleList* m_pSiteInfoList; CHXSimpleList* m_pPlayToAssocList; CHXSimpleList* m_pEventList; CHXSimpleList* m_pZOrderList; LISTPOSITION m_ulEventListPosition; INT16 m_uCurrentGroupIndex; INT16 m_nFragmentTracks; UINT32 m_ulCurrentTime; LONG32 m_lRefCount; IUnknown* m_pContext; IHXSiteManager* m_pSiteMgr; IHXStatusMessage* m_pStatusMessage; BOOL m_bFirstTimeSync; BOOL m_bSettingFragment; BOOL m_bInHyperlink; BOOL m_bShowDependencies; BOOL m_bSiteLayoutComplete; BOOL m_bStatusMessageSet; double m_dResizeXScale; double m_dResizeYScale; UINT32 m_ulPktnum; UINT16 m_usOldXPos; UINT16 m_usOldYPos; ProcessElementCallback* m_pProcessElementCallback;#ifdef _WINDOWS HCURSOR m_hHyperlinkCursor; HCURSOR m_hPreHyperlinkCursor; BOOL m_bNeedToSetHyperlinkCursor;#endif#if defined(_MACINTOSH) || defined(_MAC_UNIX) BOOL m_bResetCursor; CursHandle m_hHyperlinkCursor; CResourceLoader* m_pResourceLoader;#endif#if defined(_UNIX) && (!(defined(_BEOS))) && (!(defined(_MAC_UNIX))) // needed for background drawing XVisualInfo* m_pVisualInfo; Cursor m_hHyperlinkCursor; Cursor m_hCurrentCursor; Display* m_pDisplay; Window m_Window; Display* m_pPixmapDisplay; CHXMapPtrToPtr m_siteToXDataMap;#endif BOOL m_bRootLayoutWidthSet; BOOL m_bRootLayoutHeightSet; UINT32 m_ulRootLayoutHeight; UINT32 m_ulRootLayoutWidth; HXxColor m_ulRootLayoutBGColor; UINT32 m_ulGroupIndex; UINT32 m_ulTrackIndex; UINT16 m_uGroupIndexWithin; BOOL m_bSitesDetached; BOOL m_bInRAM20; BOOL m_bLastGroupInRAM20; INT32 m_ulPersistentComponentDelay; UINT32 m_ulPersistentComponentID; UINT16 m_uPersistentGroupID; UINT16 m_uPersistentTrackID; ElementWithinTag m_elementWithinTag; IHXValues* m_pPersistentProperties; IHXPersistentRenderer* m_pPersistentParentRenderer; BOOL m_bCloseCalled; HX_RESULT InitPersistent(UINT32 ulPersistentComponentID, UINT16 uPersistentGroupID, UINT16 uPersistentTrackID, IHXPersistentRenderer* pPersistentParent); HX_RESULT setupRootLayout(); BOOL IsNestedMetaSupported(UINT16& uSupportedType); void PersistentDurationSet(UINT32 ulDuration, UINT32 ulDelay, BOOL bIsLive);};class CSmil1SiteWatcher: public CHXBaseCountingObject, public IHXSiteWatcher{public: CSmil1SiteWatcher (CSmil1DocumentRenderer* pDoc, const char* pID, BOOL bIsChildSite); ~CSmil1SiteWatcher (); HX_RESULT close (); IHXSite* GetSite() { return m_pSite; } void SiteChangingSize(BOOL bFlag) { m_bChangingSize = bFlag; } /* * IUnknown methods */ STDMETHOD(QueryInterface) (THIS_ REFIID riid, void** ppvObj); STDMETHOD_(ULONG32, AddRef) (THIS); STDMETHOD_(ULONG32, Release) (THIS); /* * IHXSiteWatcher methods */ STDMETHOD(AttachSite) (THIS_ IHXSite* pSite); STDMETHOD(DetachSite) (THIS); STDMETHOD(ChangingPosition) (THIS_ HXxPoint posOld, REF(HXxPoint) posNew); STDMETHOD(ChangingSize) (THIS_ HXxSize sizeOld, REF(HXxSize) posNew);private: CHXString m_id; CSmil1DocumentRenderer* m_pDoc; IHXSite* m_pSite; BOOL m_bIsChildSite; BOOL m_bChangingSize; LONG32 m_lRefCount; BOOL m_bFirstSetSize;};class CSmil1EventHook: public CHXBaseCountingObject, public IHXEventHook{public: CSmil1EventHook (CSmil1DocumentRenderer* pDoc, const char* pRegionName, const char* pChannelName, BOOL bNoRegion); virtual ~CSmil1EventHook (); /* * IUnknown methods */ STDMETHOD(QueryInterface) (THIS_ REFIID riid, void** ppvObj); STDMETHOD_(ULONG32, AddRef) (THIS); STDMETHOD_(ULONG32, Release) (THIS); /* * IHXEventHook methods */ STDMETHOD(HandleEvent) (IHXSite* pSite, HXxEvent* pEvent); STDMETHOD(SiteAdded) (IHXSite* pSite); STDMETHOD(SiteRemoved) (IHXSite* pSite); char* m_pChannelName;private: CSmil1DocumentRenderer* m_pDoc; char* m_pRegionName; IHXSite* m_pSite; BOOL m_bNoRegion; CSmil1PassiveSiteWatcher* m_pSiteWatcher; LONG32 m_lRefCount;};class CSmil1PassiveSiteWatcher: public CHXBaseCountingObject, public IHXPassiveSiteWatcher{public: CSmil1PassiveSiteWatcher (CSmil1DocumentRenderer* pDoc, const char* pRegionName); ~CSmil1PassiveSiteWatcher (); /* * IUnknown methods */ STDMETHOD(QueryInterface) (THIS_ REFIID riid, void** ppvObj); STDMETHOD_(ULONG32, AddRef) (THIS); STDMETHOD_(ULONG32, Release) (THIS); /* * IHXPassiveSiteWatcher methods */ STDMETHOD(PositionChanged) (THIS_ HXxPoint* pPoint); STDMETHOD(SizeChanged) (THIS_ HXxSize* pSize);private: LONG32 m_lRefCount; CSmil1DocumentRenderer* m_pDoc; char* m_pRegionName;};class CSmil1SiteUser: public CHXBaseCountingObject, public IHXSiteUser{public: CSmil1SiteUser (CSmil1DocumentRenderer* pDoc, HXxColor ulBGColor); ~CSmil1SiteUser (); /* * IUnknown methods */ STDMETHOD(QueryInterface) (THIS_ REFIID riid, void** ppvObj); STDMETHOD_(ULONG32, AddRef) (THIS); STDMETHOD_(ULONG32, Release) (THIS); /* * IHXSiteUser methods */ STDMETHOD(AttachSite) (THIS_ IHXSite* pSite); STDMETHOD(DetachSite) (THIS); STDMETHOD(HandleEvent) (THIS_ HXxEvent* pEvent); STDMETHOD_(BOOL,NeedsWindowedSites) (THIS);private: LONG32 m_lRefCount; HXxColor m_ulBGColor; CSmil1DocumentRenderer* m_pDoc; IHXSite* m_pSite;};/* * CSmil1BasicRegion methods */class CSmil1BasicRegion : public CHXBaseCountingObject{public: CSmil1BasicRegion (const char* pName, HXxRect rect, INT32 lZindex, const char* pFit, HXxColor ulBgColor, BOOL bBgColorSet, BOOL bImplicitRegion, BOOL bWidthUnspecified, BOOL bHeightUnspecified); ~CSmil1BasicRegion(); HXxRect m_rect; HXxRect m_originalRect; HXxSize m_mediaSize; HXxSize m_originalMediaSize; BOOL m_bMediaSizeSet; IHXSite* m_pSite; IHXSiteUser* m_pSiteUser; INT32 m_lZIndex; CHXString m_region; CHXString m_fit; HXxColor m_ulBgColor; BOOL m_bBgColorSet; BOOL m_bImplicitRegion; BOOL m_bWidthUnspecified; BOOL m_bHeightUnspecified;};class ProcessElementCallback : public IHXCallback{public: CHXString m_elementID; CSmil1DocumentRenderer* m_pOwner; CallbackHandle m_PendingHandle; BOOL m_bIsCallbackPending; ProcessElementCallback(); /* * IUnknown methods */ STDMETHOD(QueryInterface) (THIS_ REFIID riid, void** ppvObj); STDMETHOD_(ULONG32,AddRef) (THIS); STDMETHOD_(ULONG32,Release) (THIS); /* * IHXCallback methods */ STDMETHOD(Func) (THIS);protected: ~ProcessElementCallback(); LONG32 m_lRefCount;};#endif /* _SM1DOC_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -