Update to Blorb protocol 1.5
[projects/chimara/chimara.git] / docs / reference / chimara-sections.txt
1 <SECTION>
2 <FILE>chimara-glk</FILE>
3 <INCLUDE>libchimara/chimara-glk.h</INCLUDE>
4 <TITLE>ChimaraGlk</TITLE>
5 ChimaraGlk
6 ChimaraError
7 CHIMARA_ERROR
8 chimara_error_quark
9 ChimaraResourceLoadFunc
10 ChimaraResourceType
11 ChimaraGlkWindowType
12 chimara_glk_new
13 chimara_glk_set_interactive
14 chimara_glk_get_interactive
15 chimara_glk_set_protect
16 chimara_glk_get_protect
17 chimara_glk_set_spacing
18 chimara_glk_get_spacing
19 chimara_glk_set_css_to_default
20 chimara_glk_set_css_from_file
21 chimara_glk_set_css_from_string
22 chimara_glk_run
23 chimara_glk_run_file
24 chimara_glk_stop
25 chimara_glk_wait
26 chimara_glk_unload_plugin
27 chimara_glk_get_running
28 chimara_glk_feed_char_input
29 chimara_glk_feed_line_input
30 chimara_glk_is_char_input_pending
31 chimara_glk_is_line_input_pending
32 chimara_glk_get_tag
33 chimara_glk_get_tag_names
34 chimara_glk_update_style
35 chimara_glk_set_resource_load_callback
36 <SUBSECTION Standard>
37 CHIMARA_GLK
38 CHIMARA_IS_GLK
39 CHIMARA_TYPE_GLK
40 chimara_glk_get_type
41 CHIMARA_GLK_CLASS
42 CHIMARA_IS_GLK_CLASS
43 CHIMARA_GLK_GET_CLASS
44 </SECTION>
45
46 <SECTION>
47 <FILE>chimara-if</FILE>
48 <INCLUDE>libchimara/chimara-if.h</INCLUDE>
49 ChimaraIFFormat
50 ChimaraIFInterpreter
51 ChimaraIFZmachineVersion
52 <TITLE>ChimaraIF</TITLE>
53 ChimaraIF
54 chimara_if_new
55 chimara_if_set_preferred_interpreter
56 chimara_if_get_preferred_interpreter
57 chimara_if_run_game
58 chimara_if_run_game_file
59 chimara_if_get_format
60 chimara_if_get_interpreter
61 <SUBSECTION Standard>
62 CHIMARA_IF
63 CHIMARA_IS_IF
64 CHIMARA_TYPE_IF
65 chimara_if_get_type
66 CHIMARA_IF_CLASS
67 CHIMARA_IS_IF_CLASS
68 CHIMARA_IF_GET_CLASS
69 </SECTION>
70
71 <INCLUDE>libchimara/glk.h</INCLUDE>
72
73 <SECTION>
74 <FILE>glk-exiting</FILE>
75 <TITLE>Exiting Your Program</TITLE>
76 glk_exit
77 <SUBSECTION Private>
78 glk_main
79 </SECTION>
80
81 <SECTION>
82 <FILE>glk-interrupt</FILE>
83 <TITLE>The Interrupt Handler</TITLE>
84 glk_set_interrupt_handler
85 </SECTION>
86
87 <SECTION>
88 <FILE>glk-tick</FILE>
89 <TITLE>The Tick Thing</TITLE>
90 glk_tick
91 </SECTION>
92
93 <SECTION>
94 <FILE>glk-types</FILE>
95 <TITLE>Basic Types</TITLE>
96 glui32
97 glsi32
98 </SECTION>
99
100 <SECTION>
101 <FILE>glk-opaque-objects</FILE>
102 <TITLE>Opaque Objects</TITLE>
103 winid_t
104 strid_t
105 frefid_t
106 schanid_t
107 </SECTION>
108
109 <SECTION>
110 <FILE>glk-gestalt</FILE>
111 <TITLE>The Gestalt System</TITLE>
112 glk_gestalt_ext
113 glk_gestalt
114 <SUBSECTION Constants>
115 gestalt_Version
116 gestalt_Unicode
117 GLK_MODULE_UNICODE
118 gestalt_UnicodeNorm
119 GLK_MODULE_UNICODE_NORM
120 gestalt_CharOutput
121 gestalt_CharOutput_CannotPrint
122 gestalt_CharOutput_ApproxPrint
123 gestalt_CharOutput_ExactPrint
124 gestalt_LineInput
125 gestalt_LineInputEcho
126 GLK_MODULE_LINE_ECHO
127 gestalt_LineTerminators
128 GLK_MODULE_LINE_TERMINATORS
129 gestalt_LineTerminatorKey
130 gestalt_CharInput
131 gestalt_MouseInput
132 gestalt_Timer
133 gestalt_Graphics
134 gestalt_DrawImage
135 gestalt_Sound2
136 gestalt_Sound
137 gestalt_SoundVolume
138 gestalt_SoundNotify
139 gestalt_Hyperlinks
140 gestalt_HyperlinkInput
141 gestalt_SoundMusic
142 gestalt_GraphicsTransparency
143 gestalt_DateTime
144 gestalt_ResourceStream
145 GLK_MODULE_RESOURCE_STREAM
146 </SECTION>
147
148 <SECTION>
149 <FILE>glk-character-input</FILE>
150 <TITLE>Character Input</TITLE>
151 keycode_Unknown
152 keycode_Left
153 keycode_Right
154 keycode_Up
155 keycode_Down
156 keycode_Return
157 keycode_Delete
158 keycode_Escape
159 keycode_Tab
160 keycode_PageUp
161 keycode_PageDown
162 keycode_Home
163 keycode_End
164 keycode_Func1
165 keycode_Func2
166 keycode_Func3
167 keycode_Func4
168 keycode_Func5
169 keycode_Func6
170 keycode_Func7
171 keycode_Func8
172 keycode_Func9
173 keycode_Func10
174 keycode_Func11
175 keycode_Func12
176 <SUBSECTION Private>
177 keycode_MAXVAL
178 </SECTION>
179
180 <SECTION>
181 <FILE>glk-case</FILE>
182 <TITLE>Upper and Lower Case</TITLE>
183 glk_char_to_lower
184 glk_char_to_upper
185 glk_buffer_to_lower_case_uni
186 glk_buffer_to_upper_case_uni
187 glk_buffer_to_title_case_uni
188 </SECTION>
189
190 <SECTION>
191 <FILE>glk-normalize</FILE>
192 <TITLE>Unicode String Normalization</TITLE>
193 glk_buffer_canon_decompose_uni
194 glk_buffer_canon_normalize_uni
195 </SECTION>
196
197 <SECTION>
198 <FILE>glk-window-opening</FILE>
199 <TITLE>Window Opening, Closing, and Constraints</TITLE>
200 glk_window_open
201 winmethod_Left
202 winmethod_Right
203 winmethod_Above
204 winmethod_Below
205 winmethod_Fixed
206 winmethod_Proportional
207 winmethod_Border
208 winmethod_NoBorder
209 glk_window_close
210 <SUBSECTION Private>
211 winmethod_DirMask
212 winmethod_DivisionMask
213 winmethod_BorderMask
214 </SECTION>
215
216 <SECTION>
217 <FILE>glk-window-constraints</FILE>
218 <TITLE>Changing Window Constraints</TITLE>
219 glk_window_get_size
220 glk_window_set_arrangement
221 glk_window_get_arrangement
222 </SECTION>
223
224 <SECTION>
225 <FILE>glk-window-types</FILE>
226 <TITLE>The Types of Windows</TITLE>
227 wintype_Blank
228 wintype_Pair
229 wintype_TextBuffer
230 wintype_TextGrid
231 glk_window_move_cursor
232 wintype_Graphics
233 wintype_AllTypes
234 </SECTION>
235
236 <SECTION>
237 <FILE>glk-echo-streams</FILE>
238 <TITLE>Echo Streams</TITLE>
239 glk_window_set_echo_stream
240 glk_window_get_echo_stream
241 </SECTION>
242
243 <SECTION>
244 <FILE>glk-window-other</FILE>
245 <TITLE>Other Window Functions</TITLE>
246 glk_window_iterate
247 glk_window_get_rock
248 glk_window_get_type
249 glk_window_get_parent
250 glk_window_get_sibling
251 glk_window_get_root
252 glk_window_clear
253 glk_window_get_stream
254 glk_set_window
255 </SECTION>
256
257 <SECTION>
258 <FILE>glk-events</FILE>
259 <TITLE>Events</TITLE>
260 glk_select
261 event_t
262 glk_select_poll
263 <SUBSECTION Constants>
264 evtype_None
265 evtype_Timer
266 evtype_CharInput
267 evtype_LineInput
268 evtype_MouseInput
269 evtype_Arrange
270 evtype_Redraw
271 evtype_SoundNotify
272 evtype_Hyperlink
273 evtype_VolumeNotify
274 </SECTION>
275
276 <SECTION>
277 <FILE>glk-character-input-events</FILE>
278 <TITLE>Character Input Events</TITLE>
279 glk_request_char_event
280 glk_request_char_event_uni
281 glk_cancel_char_event
282 </SECTION>
283
284 <SECTION>
285 <FILE>glk-line-input-events</FILE>
286 <TITLE>Line Input Events</TITLE>
287 glk_request_line_event
288 glk_request_line_event_uni
289 glk_cancel_line_event
290 glk_set_echo_line_event
291 glk_set_terminators_line_event
292 </SECTION>
293
294 <SECTION>
295 <FILE>glk-mouse-events</FILE>
296 <TITLE>Mouse Input Events</TITLE>
297 glk_request_mouse_event
298 glk_cancel_mouse_event
299 </SECTION>
300
301 <SECTION>
302 <FILE>glk-timer-events</FILE>
303 <TITLE>Timer Events</TITLE>
304 glk_request_timer_events
305 </SECTION>
306
307 <SECTION>
308 <FILE>glk-streams</FILE>
309 <TITLE>Streams</TITLE>
310 glk_stream_set_current
311 glk_stream_get_current
312 <SUBSECTION Constants>
313 filemode_Write
314 filemode_Read
315 filemode_ReadWrite
316 filemode_WriteAppend
317 </SECTION>
318
319 <SECTION>
320 <FILE>glk-print</FILE>
321 <TITLE>How to Print</TITLE>
322 glk_put_char
323 glk_put_string
324 glk_put_buffer
325 glk_put_char_stream
326 glk_put_string_stream
327 glk_put_buffer_stream
328 glk_put_char_uni
329 glk_put_string_uni
330 glk_put_buffer_uni
331 glk_put_char_stream_uni
332 glk_put_string_stream_uni
333 glk_put_buffer_stream_uni
334 </SECTION>
335
336 <SECTION>
337 <FILE>glk-read</FILE>
338 <TITLE>How to Read</TITLE>
339 glk_get_char_stream
340 glk_get_buffer_stream
341 glk_get_line_stream
342 glk_get_char_stream_uni
343 glk_get_buffer_stream_uni
344 glk_get_line_stream_uni
345 </SECTION>
346
347 <SECTION>
348 <FILE>glk-closing-streams</FILE>
349 <TITLE>Closing Streams</TITLE>
350 glk_stream_close
351 stream_result_t
352 </SECTION>
353
354 <SECTION>
355 <FILE>glk-stream-positions</FILE>
356 <TITLE>Stream Positions</TITLE>
357 glk_stream_set_position
358 glk_stream_get_position
359 <SUBSECTION Constants>
360 seekmode_Start
361 seekmode_Current
362 seekmode_End
363 </SECTION>
364
365 <SECTION>
366 <FILE>glk-styles</FILE>
367 <TITLE>Styles</TITLE>
368 glk_set_style
369 glk_set_style_stream
370 <SUBSECTION Constants>
371 style_Normal
372 style_Emphasized
373 style_Preformatted
374 style_Header
375 style_Subheader
376 style_Alert
377 style_Note
378 style_BlockQuote
379 style_Input
380 style_User1
381 style_User2
382 <SUBSECTION Private>
383 style_NUMSTYLES
384 </SECTION>
385
386 <SECTION>
387 <FILE>glk-stylehints</FILE>
388 <TITLE>Suggesting the Appearance of Styles</TITLE>
389 glk_stylehint_set
390 glk_stylehint_clear
391 <SUBSECTION Constants>
392 stylehint_Indentation
393 stylehint_ParaIndentation
394 stylehint_Justification
395 stylehint_Size
396 stylehint_Weight
397 stylehint_Oblique
398 stylehint_Proportional
399 stylehint_TextColor
400 stylehint_BackColor
401 stylehint_ReverseColor
402 stylehint_just_LeftFlush
403 stylehint_just_LeftRight
404 stylehint_just_Centered
405 stylehint_just_RightFlush
406 <SUBSECTION Private>
407 stylehint_NUMHINTS
408 </SECTION>
409
410 <SECTION>
411 <FILE>glk-style-measure</FILE>
412 <TITLE>Testing the Appearance of Styles</TITLE>
413 glk_style_distinguish
414 glk_style_measure
415 </SECTION>
416
417 <SECTION>
418 <FILE>glk-stream-types</FILE>
419 <TITLE>The Types of Streams</TITLE>
420 glk_stream_open_memory
421 glk_stream_open_memory_uni
422 glk_stream_open_file
423 glk_stream_open_file_uni
424 glk_stream_open_resource
425 glk_stream_open_resource_uni
426 </SECTION>
427
428 <SECTION>
429 <FILE>glk-stream-other</FILE>
430 <TITLE>Other Stream Functions</TITLE>
431 glk_stream_iterate
432 glk_stream_get_rock
433 </SECTION>
434
435 <SECTION>
436 <FILE>glk-fileref</FILE>
437 <TITLE>File References</TITLE>
438 fileusage_Data
439 fileusage_SavedGame
440 fileusage_Transcript
441 fileusage_InputRecord
442 fileusage_TextMode
443 fileusage_BinaryMode
444 <SUBSECTION Private>
445 fileusage_TypeMask
446 </SECTION>
447
448 <SECTION>
449 <FILE>glk-fileref-types</FILE>
450 <TITLE>The Types of File References</TITLE>
451 glk_fileref_create_temp
452 glk_fileref_create_by_prompt
453 glk_fileref_create_by_name
454 glk_fileref_create_from_fileref
455 </SECTION>
456
457 <SECTION>
458 <FILE>glk-fileref-other</FILE>
459 <TITLE>Other File Reference Functions</TITLE>
460 glk_fileref_destroy
461 glk_fileref_iterate
462 glk_fileref_get_rock
463 glk_fileref_delete_file
464 glk_fileref_does_file_exist
465 </SECTION>
466
467 <SECTION>
468 <FILE>glk-image-resources</FILE>
469 <TITLE>Image Resources</TITLE>
470 glk_image_get_info
471 glk_image_draw
472 glk_image_draw_scaled
473 </SECTION>
474
475 <SECTION>
476 <FILE>glk-graphics-windows</FILE>
477 <TITLE>Graphics in Graphics Windows</TITLE>
478 glk_window_set_background_color
479 glk_window_fill_rect
480 glk_window_erase_rect
481 </SECTION>
482
483 <SECTION>
484 <FILE>glk-graphics-text</FILE>
485 <TITLE>Graphics in Text Buffer Windows</TITLE>
486 glk_window_flow_break
487 <SUBSECTION Constants>
488 imagealign_InlineUp
489 imagealign_InlineDown
490 imagealign_InlineCenter
491 imagealign_MarginLeft
492 imagealign_MarginRight
493 </SECTION>
494
495 <SECTION>
496 <FILE>glk-graphics-testing</FILE>
497 <TITLE>Testing for Graphics Capabilities</TITLE>
498 GLK_MODULE_IMAGE
499 </SECTION>
500
501 <SECTION>
502 <FILE>glk-sound-channels</FILE>
503 <TITLE>Creating and Destroying Sound Channels</TITLE>
504 glk_schannel_create
505 glk_schannel_create_ext
506 glk_schannel_destroy
507 </SECTION>
508
509 <SECTION>
510 <FILE>glk-playing-sounds</FILE>
511 <TITLE>Playing Sounds</TITLE>
512 glk_schannel_play
513 glk_schannel_play_ext
514 glk_schannel_play_multi
515 glk_schannel_stop
516 glk_schannel_pause
517 glk_schannel_unpause
518 glk_schannel_set_volume
519 glk_schannel_set_volume_ext
520 glk_sound_load_hint
521 </SECTION>
522
523 <SECTION>
524 <FILE>glk-sound-other</FILE>
525 <TITLE>Other Sound Channel Functions</TITLE>
526 glk_schannel_iterate
527 glk_schannel_get_rock
528 </SECTION>
529
530 <SECTION>
531 <FILE>glk-sound-testing</FILE>
532 <TITLE>Testing for Sound Capabilities</TITLE>
533 GLK_MODULE_SOUND
534 GLK_MODULE_SOUND2
535 </SECTION>
536
537 <SECTION>
538 <FILE>glk-creating-hyperlinks</FILE>
539 <TITLE>Creating Hyperlinks</TITLE>
540 glk_set_hyperlink
541 glk_set_hyperlink_stream
542 </SECTION>
543
544 <SECTION>
545 <FILE>glk-accepting-hyperlinks</FILE>
546 <TITLE>Accepting Hyperlink Events</TITLE>
547 glk_request_hyperlink_event
548 glk_cancel_hyperlink_event
549 </SECTION>
550
551 <SECTION>
552 <FILE>glk-hyperlinks-testing</FILE>
553 <TITLE>Testing for Hyperlink Capabilities</TITLE>
554 GLK_MODULE_HYPERLINKS
555 </SECTION>
556
557 <SECTION>
558 <FILE>glk-clock</FILE>
559 <TITLE>The System Clock</TITLE>
560 glktimeval_t
561 glk_current_time
562 glk_current_simple_time
563 </SECTION>
564
565 <SECTION>
566 <FILE>glk-clock-conversions</FILE>
567 <TITLE>Time and Date Conversions</TITLE>
568 glkdate_t
569 glk_time_to_date_utc
570 glk_time_to_date_local
571 glk_simple_time_to_date_utc
572 glk_simple_time_to_date_local
573 glk_date_to_time_utc
574 glk_date_to_time_local
575 glk_date_to_simple_time_utc
576 glk_date_to_simple_time_local
577 </SECTION>
578
579 <SECTION>
580 <FILE>glk-clock-testing</FILE>
581 <TITLE>Testing for Clock Capabilities</TITLE>
582 GLK_MODULE_DATETIME
583 </SECTION>
584
585 <INCLUDE>libchimara/glk.h, libchimara/gi-dispa.h</INCLUDE>
586
587 <SECTION>
588 <FILE>dispatch-interrogating</FILE>
589 <TITLE>Interrogating the Interface</TITLE>
590 gidispatch_count_classes
591 gidispatch_get_class
592 gidispatch_count_intconst
593 gidispatch_get_intconst
594 gidispatch_intconst_t
595 gidispatch_count_functions
596 gidispatch_get_function
597 gidispatch_function_t
598 gidispatch_get_function_by_id
599 <SUBSECTION Constants>
600 gidisp_Class_Window
601 gidisp_Class_Stream
602 gidisp_Class_Fileref
603 gidisp_Class_Schannel
604 </SECTION>
605
606 <SECTION>
607 <FILE>dispatch-dispatching</FILE>
608 <TITLE>Dispatching</TITLE>
609 gidispatch_call
610 gluniversal_t
611 </SECTION>
612
613 <SECTION>
614 <FILE>dispatch-prototypes</FILE>
615 <TITLE>Getting Argument Prototypes</TITLE>
616 gidispatch_prototype
617 </SECTION>
618
619 <SECTION>
620 <FILE>dispatch-library-functions</FILE>
621 <TITLE>Functions the Library Must Provide</TITLE>
622 gidispatch_set_object_registry
623 gidispatch_rock_t
624 gidispatch_get_objrock
625 gidispatch_set_retained_registry
626 </SECTION>
627
628 <INCLUDE>libchimara/glk.h, libchimara/gi-blorb.h</INCLUDE>
629
630 <SECTION>
631 <FILE>blorb-program</FILE>
632 <TITLE>What the Program Does</TITLE>
633 giblorb_set_resource_map
634 giblorb_get_resource_map
635 giblorb_map_t
636 </SECTION>
637
638 <SECTION>
639 <FILE>blorb-layer</FILE>
640 <TITLE>What the Blorb Layer Does</TITLE>
641 giblorb_create_map
642 giblorb_destroy_map
643 giblorb_result_t
644 giblorb_load_chunk_by_type
645 giblorb_load_chunk_by_number
646 giblorb_unload_chunk
647 giblorb_load_resource
648 giblorb_count_resources
649 <SUBSECTION Constants>
650 giblorb_method_DontLoad
651 giblorb_method_Memory
652 giblorb_method_FilePos
653 giblorb_ID_Exec
654 giblorb_ID_Snd
655 giblorb_ID_Pict
656 giblorb_ID_Data
657 giblorb_ID_Copyright
658 giblorb_ID_AUTH
659 giblorb_ID_ANNO
660 giblorb_ID_TEXT
661 giblorb_ID_BINA
662 <SUBSECTION Private>
663 giblorb_make_id
664 </SECTION>
665
666 <SECTION>
667 <FILE>blorb-errors</FILE>
668 <TITLE>Blorb Errors</TITLE>
669 giblorb_err_t
670 <SUBSECTION Constants>
671 giblorb_err_None
672 giblorb_err_CompileTime
673 giblorb_err_Alloc
674 giblorb_err_Read
675 giblorb_err_NotAMap
676 giblorb_err_Format
677 giblorb_err_NotFound
678 </SECTION>
679
680 <INCLUDE>libchimara/glk.h, libchimara/glkstart.h</INCLUDE>
681
682 <SECTION>
683 <FILE>glkext-startup</FILE>
684 <TITLE>Startup Code</TITLE>
685 glkunix_argumentlist_t
686 glkunix_startup_t
687 <SUBSECTION Constants>
688 glkunix_arg_NoValue
689 glkunix_arg_ValueFollows
690 glkunix_arg_ValueCanFollow
691 glkunix_arg_NumberValue
692 glkunix_arg_End
693 <SUBSECTION Private>
694 glkunix_startup_code
695 NULL
696 </SECTION>
697
698 <SECTION>
699 <FILE>glkext-unix</FILE>
700 <TITLE>Unix Extensions</TITLE>
701 glkunix_stream_open_pathname_gen
702 glkunix_stream_open_pathname
703 glkunix_set_base_file
704 </SECTION>
705
706 <SECTION>
707 <FILE>glkext-garglk</FILE>
708 <TITLE>Gargoyle Extensions</TITLE>
709 <INCLUDE>libchimara/glk.h, libchimara/garglk.h</INCLUDE>
710 GARGLK
711 <SUBSECTION Functions>
712 garglk_fileref_get_name
713 garglk_set_program_name
714 garglk_set_program_info
715 garglk_set_story_name
716 garglk_set_story_title
717 garglk_unput_string
718 garglk_unput_string_uni
719 garglk_set_zcolors
720 garglk_set_zcolors_stream
721 garglk_set_reversevideo
722 garglk_set_reversevideo_stream
723 <SUBSECTION Constants>
724 zcolor_Current
725 zcolor_Default
726 zcolor_Cursor
727 zcolor_Transparent
728 keycode_Erase
729 keycode_MouseWheelUp
730 keycode_MouseWheelDown
731 </SECTION>