[sdl2] fully drawn
This commit is contained in:
parent
809d44e97f
commit
1fdcd0679b
1 changed files with 9 additions and 21 deletions
|
@ -542,7 +542,7 @@ static void _draw_header( void )
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void __create_buttons( void )
|
static void create_buttons_textures( void )
|
||||||
{
|
{
|
||||||
unsigned x, y;
|
unsigned x, y;
|
||||||
|
|
||||||
|
@ -681,21 +681,8 @@ static void __create_buttons( void )
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
SDL_SetRenderTarget( renderer, NULL );
|
// Give back to renderer as it was
|
||||||
}
|
|
||||||
|
|
||||||
static void __draw_buttons( void )
|
|
||||||
{
|
|
||||||
SDL_SetRenderTarget( renderer, main_texture );
|
SDL_SetRenderTarget( renderer, main_texture );
|
||||||
|
|
||||||
for ( int i = FIRST_HPKEY; i <= LAST_HPKEY; i++ )
|
|
||||||
__draw_texture( KEYBOARD_OFFSET_X + BUTTONS[ i ].x, KEYBOARD_OFFSET_Y + BUTTONS[ i ].y, BUTTONS[ i ].w, BUTTONS[ i ].h,
|
|
||||||
keyboard[ i ].pressed ? buttons_textures[ i ].off : buttons_textures[ i ].on );
|
|
||||||
|
|
||||||
// Always immediately update annunciators
|
|
||||||
SDL_SetRenderTarget( renderer, NULL );
|
|
||||||
SDL_RenderCopy( renderer, main_texture, NULL, NULL );
|
|
||||||
SDL_RenderPresent( renderer );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void _draw_keypad( void )
|
static void _draw_keypad( void )
|
||||||
|
@ -707,8 +694,6 @@ static void _draw_keypad( void )
|
||||||
unsigned colorbg;
|
unsigned colorbg;
|
||||||
int wl, wr, ws;
|
int wl, wr, ws;
|
||||||
|
|
||||||
__create_buttons();
|
|
||||||
|
|
||||||
for ( i = FIRST_HPKEY; i <= LAST_HPKEY; i++ ) {
|
for ( i = FIRST_HPKEY; i <= LAST_HPKEY; i++ ) {
|
||||||
if ( BUTTONS[ i ].is_menu ) {
|
if ( BUTTONS[ i ].is_menu ) {
|
||||||
// draw the dark shade under the label
|
// draw the dark shade under the label
|
||||||
|
@ -827,9 +812,10 @@ static void _draw_keypad( void )
|
||||||
write_text( x, y, BUTTONS[ i ].right, strlen( BUTTONS[ i ].right ), RIGHT, BLACK );
|
write_text( x, y, BUTTONS[ i ].right, strlen( BUTTONS[ i ].right ), RIGHT, BLACK );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
__draw_buttons();
|
__draw_texture( KEYBOARD_OFFSET_X + BUTTONS[ i ].x, KEYBOARD_OFFSET_Y + BUTTONS[ i ].y, BUTTONS[ i ].w, BUTTONS[ i ].h,
|
||||||
|
keyboard[ i ].pressed ? buttons_textures[ i ].off : buttons_textures[ i ].on );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void _draw_bezel_LCD( void )
|
static void _draw_bezel_LCD( void )
|
||||||
|
@ -1191,8 +1177,6 @@ void sdl_draw_annunc( void )
|
||||||
bool annunc_state;
|
bool annunc_state;
|
||||||
last_annunc_state = saturn.annunc;
|
last_annunc_state = saturn.annunc;
|
||||||
|
|
||||||
create_annunciators_textures();
|
|
||||||
|
|
||||||
SDL_SetRenderTarget( renderer, main_texture );
|
SDL_SetRenderTarget( renderer, main_texture );
|
||||||
|
|
||||||
for ( int i = 0; i < NB_ANNUNCIATORS; i++ ) {
|
for ( int i = 0; i < NB_ANNUNCIATORS; i++ ) {
|
||||||
|
@ -1287,9 +1271,13 @@ void init_sdl2_ui( int argc, char** argv )
|
||||||
|
|
||||||
colors_setup();
|
colors_setup();
|
||||||
|
|
||||||
|
create_annunciators_textures();
|
||||||
|
|
||||||
if ( !config.hide_chrome ) {
|
if ( !config.hide_chrome ) {
|
||||||
int cut = BUTTONS[ HPKEY_MTH ].y + KEYBOARD_OFFSET_Y - 19;
|
int cut = BUTTONS[ HPKEY_MTH ].y + KEYBOARD_OFFSET_Y - 19;
|
||||||
|
|
||||||
|
create_buttons_textures();
|
||||||
|
|
||||||
_draw_background( width, cut, width, height );
|
_draw_background( width, cut, width, height );
|
||||||
_draw_bezel( cut, KEYBOARD_OFFSET_Y, width, height );
|
_draw_bezel( cut, KEYBOARD_OFFSET_Y, width, height );
|
||||||
_draw_header();
|
_draw_header();
|
||||||
|
|
Loading…
Reference in a new issue