1a4813c7d7437ce1dc0ba2eebdfe6b41dcd7238c
23 static void vg_convar_push( struct vg_convar cv
)
25 arrpush( vg_console
.convars
, cv
);
28 static void vg_console_draw( void )
30 int ptr
= vg_console
.current
- vg_console
.len
;
32 ptr
+= vg_list_size( vg_console
.lines
);
35 ui_global_ctx
.cursor
[0] = 0;
36 ui_global_ctx
.cursor
[1] = 0;
37 ui_global_ctx
.cursor
[3] = vg_console
.len
*8;
38 ui_fill_x( &ui_global_ctx
);
40 ui_new_node( &ui_global_ctx
);
42 ui_fill_rect( &ui_global_ctx
, ui_global_ctx
.cursor
, 0x77333333 );
44 ui_global_ctx
.cursor
[3] = 8;
45 ui_align_bottom( &ui_global_ctx
);
47 for( int i
= 0; i
< vg_console
.len
; i
++ )
49 ui_text( &ui_global_ctx
, vg_console
.lines
[ptr
], 1, 0 );
50 ui_global_ctx
.cursor
[1] -= 8;
54 ptr
= vg_list_size( vg_console
.lines
)-1;
57 ui_end_down( &ui_global_ctx
);
60 void vg_console_println( const char *str
)
62 if( vg_console
.len
< vg_list_size( vg_console
.lines
) )
65 strcpy( vg_console
.lines
[ vg_console
.current
++ ], str
);
67 if( vg_console
.current
>= vg_list_size( vg_console
.lines
) )
68 vg_console
.current
= 0;
71 static void vg_console_init(void)
73 vg_log_callback
= vg_console_println
;
76 static void vg_console_free(void)
78 arrfree( vg_console
.convars
);