comparison src/ntplay.c @ 593:5fd7ba8b56e7

[xemacs-hg @ 2001-05-31 12:45:27 by ben] xemacs-faq.texi: Major rewrite. Update all MS Windows info to current. Redo section 6.1 almost completely. Incorporate sections 1 and 2 of Hrvoje's FAQ. etags.el: Fix infloop when going up to the root. s\cygwin32.h: Don't unilaterally include ntplay, but only when we're compiling with native sound (look in configure now). event-msw.c: Fix yet more problems with C-g handling. Implement debug-mswindows-events. event-stream.c, events.h, signal.c, sysdep.h: Rearrange the signal-handling code to eliminate the former spaghetti logic paths in it. Document clearly what "low-level" and "high-level" timeouts are. Rename some functions with unclear names (e.g. "...alarm...") to names that reflect what they actually do (e.g. "...async_timeout..."). Fix numerous bugs discovered in the process. console-x.h, event-Xt.c, event-msw.c, frame-x.c: Hopefully make XEmacs properly maintain the "iconified" state on frames at all times. This should fix the "can't delete a frame with C-x 5 0 when there's another iconified frame out there" bug. Put a notice in of further changes that should probably be made to clean up the frame-visibility support. (especially directed at Jan Vroonhof) lisp.h, miscplay.c: Rename SBufbyte to CBufbyte to avoid a misleading name. Eliminate UChar, which is not used anywhere and contributes no semantic info. Add a comment about the documentation-only properties of the char/unsigned char typedefs. Add SChar_Binary as an explicitly `signed' version of Char_Binary and put back the `signed' declarations in miscplay.c. alloc.c: Use char typedefs. console-msw.c, device-msw.c, dialog-msw.c, editfns.c, fileio.c, glyphs-eimage.c, menubar-msw.c, ntplay.c, objects-msw.c, realpath.c, redisplay-msw.c, select-msw.c, syswindows.h, win32.c: Eliminate numerous C++ errors. frame-msw.c: Eliminate numerous C++ errors and Mule-ize. glyphs-msw.c: Eliminate numerous C++ errors and use char typedefs. configure.in: Fix problems detecting both native and Linux sound on Cygwin when compiled with --with-msw=no. Rearrange file-coding handling a bit to avoid warning when compiling with Mule. configure.in, configure.usage, INSTALL: Document XEMACS_CC and corresponding compiler option --xemacs-compiler. Explain how to build xemacs using a C++ compiler.
author ben
date Thu, 31 May 2001 12:45:41 +0000
parents 183866b06e0b
children 943eaba38521
comparison
equal deleted inserted replaced
592:4f6ba8f1fb3d 593:5fd7ba8b56e7
19 02111-1307, USA.*/ 19 02111-1307, USA.*/
20 20
21 /* Synched up with: Not in FSF. */ 21 /* Synched up with: Not in FSF. */
22 22
23 /* This file Mule-ized by Ben Wing, 5-15-01. */ 23 /* This file Mule-ized by Ben Wing, 5-15-01. */
24
25 #define DONT_ENCAPSULATE
24 26
25 #include <config.h> 27 #include <config.h>
26 #include "lisp.h" 28 #include "lisp.h"
27 29
28 #include "sound.h" 30 #include "sound.h"
47 49
48 if (OpenFile (fnameext, &ofs, OF_EXIST) < 0) 50 if (OpenFile (fnameext, &ofs, OF_EXIST) < 0)
49 { 51 {
50 /* file isn't in the path so read it as data */ 52 /* file isn't in the path so read it as data */
51 int size; 53 int size;
52 UChar_Binary* data; 54 UChar_Binary *data;
53 int ofd = open (sound_file, O_RDONLY | OPEN_BINARY, 0); 55 int ofd = open (sound_file, O_RDONLY | OPEN_BINARY, 0);
54 56
55 if (ofd <0) 57 if (ofd <0)
56 return; 58 return;
57 59
58 size = lseek (ofd, 0, SEEK_END); 60 size = lseek (ofd, 0, SEEK_END);
59 data = (UChar_Binary *)xmalloc (size); 61 data = (UChar_Binary *) xmalloc (size);
60 lseek (ofd, 0, SEEK_SET); 62 lseek (ofd, 0, SEEK_SET);
61 63
62 if (!data) 64 if (!data)
63 { 65 {
64 close (ofd); 66 close (ofd);
84 static int 86 static int
85 play_sound_data_1 (UChar_Binary *data, int length, int volume, 87 play_sound_data_1 (UChar_Binary *data, int length, int volume,
86 int convert_to_malloc) 88 int convert_to_malloc)
87 { 89 {
88 DWORD flags = SND_ASYNC | SND_MEMORY | SND_NODEFAULT; 90 DWORD flags = SND_ASYNC | SND_MEMORY | SND_NODEFAULT;
89 static UChar_Binary* sound_data=0; 91 static UChar_Binary *sound_data = 0;
90 if (sound_data) 92 if (sound_data)
91 { 93 {
92 PlaySound (NULL, NULL, flags); 94 PlaySound (NULL, NULL, flags);
93 xfree (sound_data); 95 xfree (sound_data);
94 sound_data=0; 96 sound_data = 0;
95 } 97 }
96 98
97 if (convert_to_malloc) 99 if (convert_to_malloc)
98 { 100 {
99 sound_data = (UChar_Binary *)xmalloc (length); 101 sound_data = (UChar_Binary *) xmalloc (length);
100 memcpy (sound_data, data, length); 102 memcpy (sound_data, data, length);
101 } 103 }
102 else 104 else
103 sound_data = data; 105 sound_data = data;
104 106
105 PlaySound(sound_data, NULL, flags); 107 PlaySound ((Extbyte *) sound_data, NULL, flags);
106 108
107 /* #### Error handling? */ 109 /* #### Error handling? */
108 return 1; 110 return 1;
109 } 111 }
110 112