2D API Help and Drawing Text

screen_width = 1100
	screen_height = 650

	guide_height = 400
	guide_width = 1000
	
	cell_height = 50
	cell_width = 200
	cell_width_margin = 2
	cell_height_margin = 2
	

	epg_start_x = 200
	epg_start_y = 200

	epg_rows = 5
	number_programs = 4
	current_row = 1 

	screen = CreateObject("roScreen")
       
   
	port = CreateObject("roMessagePort")
	codes = bslUniversalControlEventCodes()

	screen.SetMessagePort(port)
	screen.SetAlphaEnable(true)
	'screen.Clear(&h0000FFFF)

	cell_bm = CreateObject("roBitmap", "pkg:/images/cell.png")
	cell_bm.SetAlphaEnable(true)

	start_x = epg_start_x
	start_y = epg_start_y

	fontRegistry = CreateObject("roFontRegistry")
    font = fontRegistry.GetDefaultFont()

	for i=0 to epg_rows step 1
		
		for j=0 to number_programs step 1
			'screen.DrawRect(start_x, start_y, cell_width, cell_height, yellow)
			render_text(screen, font, "test episode", start_x, start_y)
			screen.DrawObject(start_x, start_y, cell_bm)
			start_x = start_x +  cell_width + cell_width_margin
			
			
		end for
		
		start_y = start_y + cell_height + cell_height_margin
		start_x = epg_start_x
		
		
	end for
	
	screen.Finish()

I am trying to generate an EPG grid with cells that contain text. The example above generates the epg grid but the text is underneath the green cell. How can I make the text appear over the drawn object? How could I remove the grid cells for an update to an EPG program data? On a related note, how could I clip the text to appear within the confines of the cell? I don’t see anything native for the draw text to enable the use of ellipsis (…). Would this need to be written as extended functionality of the drawText. I’ve read the 2D API but would love to see some more examples using it.

Thanks for any insight or help.

To make text appear on top of an object, draw the object first and then draw the text.
Generally an app using roScreen will redraw the entire screen on a update.
This post describes how to truncate text to a desired width.

–Mark