]>
Commit | Line | Data |
---|---|---|
1 | // ///////////////////////////////////////////////////////////////////////////// | |
2 | // Name: vidxanm.h | |
3 | // Purpose: wxMMedia | |
4 | // Author: Guilhem Lavaux | |
5 | // Created: 1997 | |
6 | // Updated: 1998 | |
7 | // Copyright: (C) 1997, 1998, Guilhem Lavaux | |
8 | // License: wxWindows license | |
9 | // ///////////////////////////////////////////////////////////////////////////// | |
10 | /* Real -*- C++ -*- */ | |
11 | #ifndef __VID_xanim_H__ | |
12 | #define __VID_xanim_H__ | |
13 | ||
14 | #ifdef __GNUG__ | |
15 | #pragma interface | |
16 | #endif | |
17 | ||
18 | #if defined(WXMMEDIA_INTERNAL) && (defined(__X__) || defined(__WXGTK__)) | |
19 | #include <X11/Xlib.h> | |
20 | #include <X11/Xatom.h> | |
21 | #endif | |
22 | ||
23 | #include "vidbase.h" | |
24 | ||
25 | #ifdef WXMMEDIA_INTERNAL | |
26 | typedef struct wxXANIMinternal { | |
27 | Display *xanim_dpy; | |
28 | Window xanim_window; | |
29 | Atom xanim_atom, xanim_ret; | |
30 | } wxXANIMinternal; | |
31 | ||
32 | #ifndef __XANIM_COMMAND__ | |
33 | #define __XANIM_COMMAND__ "/usr/X11R6/bin/xanim" | |
34 | #endif | |
35 | #endif | |
36 | ||
37 | class wxVideoXANIM : public wxVideoBaseDriver { | |
38 | DECLARE_DYNAMIC_CLASS(wxVideoXANIM) | |
39 | protected: | |
40 | bool m_xanim_started, m_paused; | |
41 | struct wxXANIMinternal *m_internal; | |
42 | wxString m_filename; | |
43 | public: | |
44 | wxVideoXANIM(); | |
45 | wxVideoXANIM(wxInputStream& str); | |
46 | ~wxVideoXANIM(); | |
47 | ||
48 | bool StartPlay(); | |
49 | bool Pause(); | |
50 | bool Resume(); | |
51 | void StopPlay(); | |
52 | ||
53 | bool SetVolume(wxUint8 vol); | |
54 | bool Resize(wxUint16 w, wxUint16 h); | |
55 | ||
56 | bool IsCapable(wxVideoType v_type); | |
57 | ||
58 | bool AttachOutput(wxVideoOutput& output); | |
59 | void DetachOutput(); | |
60 | ||
61 | protected: | |
62 | /// | |
63 | bool RestartXANIM(); | |
64 | /// | |
65 | bool SendCommand(const char *command, char **ret = NULL, | |
66 | wxUint32 *size = NULL); | |
67 | }; | |
68 | ||
69 | #endif |