1 #pragma once 2 #include "stdafx.h" 3 4 class IPlayerUI 5 { 6 public: 7 struct UIButton //界面中绘制的按钮 8 { 9 CRect rect; //按钮的矩形区域 10 bool hover{ false }; //鼠标是否指向按钮 11 bool pressed{ false }; //按钮是否按下 12 bool enable{ true }; //按钮是否启用 13 }; 14 15 public: IPlayerUI()16 IPlayerUI(){} ~IPlayerUI()17 virtual ~IPlayerUI(){} 18 19 virtual void Init(CDC* pDC) = 0; 20 virtual void DrawInfo(bool reset = false) = 0; 21 virtual void ClearInfo() = 0; 22 23 virtual bool LButtonDown(CPoint point) = 0; 24 virtual void RButtonUp(CPoint point) = 0; 25 virtual void MouseMove(CPoint point) = 0; 26 virtual bool LButtonUp(CPoint point) = 0; 27 virtual void RButtonDown(CPoint point) = 0; 28 virtual bool MouseWheel(int delta, CPoint point) = 0; 29 virtual bool DoubleClick(CPoint point) = 0; 30 31 virtual CRect GetThumbnailClipArea() = 0; 32 33 virtual void UpdateMouseToolTip(int btn, LPCTSTR str) = 0; 34 virtual void UpdateToolTipPosition() = 0; 35 virtual void UpdatePlayPauseButtonTip() = 0; 36 virtual void UpdateFullScreenTip() = 0; 37 38 virtual bool SetCursor() = 0; 39 virtual void MouseLeave() = 0; 40 41 virtual CToolTipCtrl& GetToolTipCtrl() = 0; 42 };