81 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			V
		
	
	
			
		
		
	
	
			81 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			V
		
	
	
module fontstash
 | 
						|
 | 
						|
pub enum FonsFlags {
 | 
						|
	top_left = 1
 | 
						|
	bottom_left = 2
 | 
						|
}
 | 
						|
 | 
						|
pub enum FonsAlign {
 | 
						|
	// Horizontal align
 | 
						|
	left 		= 1	// Default
 | 
						|
	center 		= 2
 | 
						|
	right 		= 4
 | 
						|
	// Vertical align
 | 
						|
	top 		= 8
 | 
						|
	middle		= 16
 | 
						|
	bottom		= 32
 | 
						|
	baseline	= 64 // Default
 | 
						|
}
 | 
						|
 | 
						|
pub enum FonsErrorCode {
 | 
						|
	// Font atlas is full.
 | 
						|
	atlas_full = 1
 | 
						|
	// Scratch memory used to render glyphs is full, requested size reported in 'val', you may need to bump up FONS_SCRATCH_BUF_SIZE.
 | 
						|
	scratch_full = 2
 | 
						|
	// Calls to fonsPushState has created too large stack, if you need deep state stack bump up FONS_MAX_STATES.
 | 
						|
	states_overflow = 3
 | 
						|
	// Trying to pop too many states fonsPopState().
 | 
						|
	states_underflow = 4
 | 
						|
}
 | 
						|
 | 
						|
pub struct C.FONSparams {
 | 
						|
	width int
 | 
						|
	height int
 | 
						|
	flags char
 | 
						|
	userPtr voidptr
 | 
						|
	// int (*renderCreate)(void* uptr, int width, int height)
 | 
						|
	renderCreate fn(uptr voidptr, width int, height int) int
 | 
						|
	// int (*renderResize)(void* uptr, int width, int height)
 | 
						|
	renderResize fn(uptr voidptr, width int, height int) int
 | 
						|
	// void (*renderUpdate)(void* uptr, int* rect, const unsigned char* data)
 | 
						|
	renderUpdate fn(uptr voidptr, rect &int, data byteptr)
 | 
						|
	// void (*renderDraw)(void* uptr, const float* verts, const float* tcoords, const unsigned int* colors, int nverts)
 | 
						|
	renderDraw fn(uptr voidptr, verts &f32, tcoords &f32, colors &u32, nverts int)
 | 
						|
	// void (*renderDelete)(void* uptr)
 | 
						|
	renderDelete fn(uptr voidptr)
 | 
						|
}
 | 
						|
 | 
						|
pub struct C.FONSquad
 | 
						|
{
 | 
						|
	x0 f32
 | 
						|
	y0 f32
 | 
						|
	s0 f32
 | 
						|
	t0 f32
 | 
						|
	x1 f32
 | 
						|
	y1 f32
 | 
						|
	s1 f32
 | 
						|
	t1 f32
 | 
						|
}
 | 
						|
 | 
						|
pub struct C.FONStextIter {
 | 
						|
	x f32
 | 
						|
	y f32
 | 
						|
	nextx f32
 | 
						|
	nexty f32
 | 
						|
	scale f32
 | 
						|
	spacing f32
 | 
						|
	codepoint u32
 | 
						|
	isize i16
 | 
						|
	iblur i16
 | 
						|
	font &FONSfont
 | 
						|
	prevGlyphIndex int
 | 
						|
	str byteptr
 | 
						|
	next byteptr
 | 
						|
	end byteptr
 | 
						|
	utf8state u32
 | 
						|
}
 | 
						|
 | 
						|
pub struct C.FONSfont {}
 | 
						|
 | 
						|
pub struct C.FONScontext {}
 |