1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- #ifndef NULLSOFT_VIDEOOSDH
- #define NULLSOFT_VIDEOOSDH
- #include <windows.h>
- #define NUM_WIDGETS 11
- class IVideoOSD
- {
- public:
- IVideoOSD();
- ~IVideoOSD();
- void SetParent(HWND _parent)
- {
- parent=_parent;
- }
- bool Showing();
- bool Ready();
- void Show();
- void Hide();
- void Draw();
- int GetBarHeight();
- bool Mouse(int x, int y, WPARAM wParam, bool moving);
- int ctrlrects_ready;
- virtual bool MouseDown(int x, int y, WPARAM wParam) {return false;};
- virtual bool MouseMove(int x, int y, WPARAM wParam) {return false;};
- virtual bool MouseUp(int x, int y, WPARAM wParam) {return false;};
-
- protected:
- HWND parent;
- private:
- bool CloseHitTest(int x, int y);
- void HitTest(int x, int y, int dragging);
- int osdLastClickItem;
- int osdMemBMW;
- int osdMemBMH;
- int osdLastMouseX;
- int osdLastMouseY;
- RECT ctrlrect[NUM_WIDGETS];
- RECT ctrlrect_all;
- bool show_osd;
-
- static void CALLBACK TimerCallback(HWND hwnd, UINT uMsg, UINT_PTR idEvent, DWORD dwTime);
- int ignore_mousemove_count;
- int last_close_height, last_close_width;
- };
- #endif
|