X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=libchimara%2Fgestalt.c;h=195733bd9c73d150168d7964b51cd2f8bc306215;hb=68a6bb0f8c5be236fe81af76961c85ac5cd63e22;hp=22683df91d7a8d0237a5aa2c8d43434a52f80cec;hpb=e61fa4c92aff9cfcf486308b95610d00754408cf;p=projects%2Fchimara%2Fchimara.git diff --git a/libchimara/gestalt.c b/libchimara/gestalt.c index 22683df..195733b 100644 --- a/libchimara/gestalt.c +++ b/libchimara/gestalt.c @@ -1,11 +1,12 @@ #include /* Surprisingly, the only symbol needed is NULL */ #include #include "glk.h" +#include "input.h" /* Version of the Glk specification implemented by this library */ #define MAJOR_VERSION 0 #define MINOR_VERSION 7 -#define SUB_VERSION 2 +#define SUB_VERSION 4 /** * glk_gestalt: @@ -108,6 +109,10 @@ glk_gestalt_ext(glui32 sel, glui32 val, glui32 *arr, glui32 arrlen) case gestalt_DrawImage: 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: @@ -117,22 +122,25 @@ glk_gestalt_ext(glui32 sel, glui32 val, glui32 *arr, glui32 arrlen) case gestalt_DateTime: case gestalt_UnicodeNorm: case gestalt_LineInputEcho: + case gestalt_LineTerminators: + case gestalt_ResourceStream: return 1; - /* Capabilities supported if compiled with GStreamer */ + /* Capabilities supported if compiled with sound support */ case gestalt_Sound: case gestalt_SoundVolume: case gestalt_SoundNotify: case gestalt_SoundMusic: -#ifdef GSTREAMER_SOUND + case gestalt_Sound2: +#ifdef HAVE_SOUND return 1; #else return 0; #endif /* Unsupported capabilities */ - case gestalt_LineTerminatorKey: - case gestalt_LineTerminators: + /* None! */ + /* Selector not supported */ default: return 0;