1package body agar.gui.widget.console is 2 3 package cbinds is 4 procedure set_padding 5 (console : console_access_t; 6 padding : c.int); 7 pragma import (c, set_padding, "AG_ConsoleSetPadding"); 8 9 function message 10 (console : console_access_t; 11 text : cs.chars_ptr) return line_access_t; 12 pragma import (c, message, "AG_ConsoleMsgS"); 13 14 function append_line 15 (console : console_access_t; 16 text : cs.chars_ptr) return line_access_t; 17 pragma import (c, append_line, "AG_ConsoleAppendLine"); 18 end cbinds; 19 20 procedure set_padding 21 (console : console_access_t; 22 padding : natural) is 23 begin 24 cbinds.set_padding 25 (console => console, 26 padding => c.int (padding)); 27 end set_padding; 28 29 function append_line 30 (console : console_access_t; 31 text : string) return line_access_t 32 is 33 ca_text : aliased c.char_array := c.to_c (text); 34 begin 35 return cbinds.append_line 36 (console => console, 37 text => cs.to_chars_ptr (ca_text'unchecked_access)); 38 end append_line; 39 40 function widget (console : console_access_t) return widget_access_t is 41 begin 42 return console.widget'access; 43 end widget; 44 45end agar.gui.widget.console; 46