X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=libchimara%2Fgestalt.c;h=749bc43271aa2349d6b083be09ef9224eb9c8fc4;hb=8f32be2c6ce2d19e1b56188f71d51c9b248af3fa;hp=f7ac63a8a5cc5a84324086c57f3d12e3a423e454;hpb=632ef9d57c270608e01b1afdba772da0da7993ca;p=projects%2Fchimara%2Fchimara.git diff --git a/libchimara/gestalt.c b/libchimara/gestalt.c index f7ac63a..749bc43 100644 --- a/libchimara/gestalt.c +++ b/libchimara/gestalt.c @@ -1,4 +1,5 @@ #include /* Surprisingly, the only symbol needed is NULL */ +#include #include "glk.h" /* Version of the Glk specification implemented by this library */ @@ -111,16 +112,31 @@ glk_gestalt_ext(glui32 sel, glui32 val, glui32 *arr, glui32 arrlen) /* Hyperlinks supported on textbuffers and textgrids */ case gestalt_HyperlinkInput: return val == wintype_TextBuffer || val == wintype_TextGrid; - - /* Unsupported capabilities */ + + /* Mouse support present in textgrids */ case gestalt_MouseInput: + return val == wintype_TextGrid; + case gestalt_Graphics: + return 1; + case gestalt_DrawImage: + return val == wintype_Graphics || val == wintype_TextBuffer; + + case gestalt_GraphicsTransparency: + return 1; + case gestalt_Sound: +#ifdef GSTREAMER_SOUND + return 1; +#else + return 0; +#endif + + /* Unsupported capabilities */ case gestalt_SoundVolume: case gestalt_SoundNotify: case gestalt_SoundMusic: - case gestalt_GraphicsTransparency: /* Selector not supported */ default: return 0;