Support for graphics in text buffers
[rodin/chimara.git] / libchimara / gestalt.c
index 1729a878350c9c333eab0f88d6ea321583f61bbd..e3529094233d4f88cf055abc7af0023b76562421 100644 (file)
@@ -103,18 +103,33 @@ glk_gestalt_ext(glui32 sel, glui32 val, glui32 *arr, glui32 arrlen)
                /* Timer capabilities present */
                case gestalt_Timer:
                        return 1;
-                       
-               /* Unsupported capabilities */
+
+               /* Hyperlink capabilities present */
+               case gestalt_Hyperlinks:
+                       return 1;
+
+               /* Hyperlinks supported on textbuffers and textgrids */
+               case gestalt_HyperlinkInput:
+                       return val == wintype_TextBuffer || val == wintype_TextGrid;
+
+               /* 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;
+                       
+               /* Unsupported capabilities */
                case gestalt_Sound:
                case gestalt_SoundVolume:
                case gestalt_SoundNotify:
-               case gestalt_Hyperlinks:
-               case gestalt_HyperlinkInput:
                case gestalt_SoundMusic:
-               case gestalt_GraphicsTransparency:
                /* Selector not supported */    
                default:
                        return 0;