projects
/
projects
/
chimara
/
chimara.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add silent rule to documentation Makefile
[projects/chimara/chimara.git]
/
libchimara
/
gestalt.c
diff --git
a/libchimara/gestalt.c
b/libchimara/gestalt.c
index a9128ac6fbd948c4540ac0ef75ff8a2b39b02ea4..6dbffa1ade892881ac4e7dc3afc46fe83a41b4da 100644
(file)
--- a/
libchimara/gestalt.c
+++ b/
libchimara/gestalt.c
@@
-1,10
+1,12
@@
#include <stddef.h> /* Surprisingly, the only symbol needed is NULL */
#include <stddef.h> /* Surprisingly, the only symbol needed is NULL */
+#include <config.h>
#include "glk.h"
#include "glk.h"
+#include "input.h"
/* Version of the Glk specification implemented by this library */
#define MAJOR_VERSION 0
#define MINOR_VERSION 7
/* Version of the Glk specification implemented by this library */
#define MAJOR_VERSION 0
#define MINOR_VERSION 7
-#define SUB_VERSION
0
+#define SUB_VERSION
2
/**
* glk_gestalt:
/**
* glk_gestalt:
@@
-95,18
+97,6
@@
glk_gestalt_ext(glui32 sel, glui32 val, glui32 *arr, glui32 arrlen)
return gestalt_CharOutput_CannotPrint;
/* Can print all other characters */
return gestalt_CharOutput_ExactPrint;
return gestalt_CharOutput_CannotPrint;
/* Can print all other characters */
return gestalt_CharOutput_ExactPrint;
-
- /* Unicode capabilities present */
- case gestalt_Unicode:
- return 1;
-
- /* Timer capabilities present */
- case gestalt_Timer:
- return 1;
-
- /* Hyperlink capabilities present */
- case gestalt_Hyperlinks:
- return 1;
/* Hyperlinks supported on textbuffers and textgrids */
case gestalt_HyperlinkInput:
/* Hyperlinks supported on textbuffers and textgrids */
case gestalt_HyperlinkInput:
@@
-116,20
+106,39
@@
glk_gestalt_ext(glui32 sel, glui32 val, glui32 *arr, glui32 arrlen)
case gestalt_MouseInput:
return val == wintype_TextGrid;
case gestalt_MouseInput:
return val == wintype_TextGrid;
- case gestalt_Graphics:
- return 1;
-
case gestalt_DrawImage:
case gestalt_DrawImage:
- return val == wintype_Graphics;
+ return val == wintype_Graphics || val == wintype_TextBuffer;
+
+ /* Which keycodes can be used as line terminators */
+ case gestalt_LineTerminatorKey:
+ return is_valid_line_terminator(val)? 1 : 0;
+ /* Capabilities that are simply supported */
+ case gestalt_Unicode:
+ case gestalt_Timer:
+ case gestalt_Hyperlinks:
+ case gestalt_Graphics:
case gestalt_GraphicsTransparency:
case gestalt_GraphicsTransparency:
+ case gestalt_DateTime:
+ case gestalt_UnicodeNorm:
+ case gestalt_LineInputEcho:
+ case gestalt_LineTerminators:
return 1;
return 1;
-
- /*
Unsupported capabilities
*/
+
+ /*
Capabilities supported if compiled with GStreamer
*/
case gestalt_Sound:
case gestalt_SoundVolume:
case gestalt_SoundNotify:
case gestalt_SoundMusic:
case gestalt_Sound:
case gestalt_SoundVolume:
case gestalt_SoundNotify:
case gestalt_SoundMusic:
+#ifdef GSTREAMER_SOUND
+ return 1;
+#else
+ return 0;
+#endif
+
+ /* Unsupported capabilities */
+ /* none! */
+
/* Selector not supported */
default:
return 0;
/* Selector not supported */
default:
return 0;