Commit 76239934bdd1381da30ae031504c3a9f4d0ddbfa
1 parent
5c0206d3
Exists in
master
Incluindo conteúdo do buffer na posição do cursor na mensagem de posicionamento …
…para facilitar o redesenho do cursor pela aplicação principal
Showing
5 changed files
with
6 additions
and
6 deletions
Show diff stats
latest/src/gtk2/cursor.c
... | ... | @@ -100,7 +100,7 @@ |
100 | 100 | rCursor.height = terminal_font_info.height; |
101 | 101 | } |
102 | 102 | |
103 | - void update_cursor_position(H3270 *session, unsigned short row, unsigned short col) | |
103 | + void update_cursor_position(H3270 *session, unsigned short row, unsigned short col, unsigned char c, unsigned short attr) | |
104 | 104 | { |
105 | 105 | int addr = (row * screen->cols) + col; |
106 | 106 | ... | ... |
latest/src/gtk2/gui.h
... | ... | @@ -344,7 +344,7 @@ |
344 | 344 | LOCAL_EXTERN void unselect(void); |
345 | 345 | LOCAL_EXTERN void reselect(void); |
346 | 346 | |
347 | - LOCAL_EXTERN void update_cursor_position(H3270 *session, unsigned short row, unsigned short col); | |
347 | + LOCAL_EXTERN void update_cursor_position(H3270 *session, unsigned short row, unsigned short col, unsigned char c, unsigned short attr); | |
348 | 348 | LOCAL_EXTERN void update_cursor_info(void); |
349 | 349 | LOCAL_EXTERN void queue_draw_cursor(void); |
350 | 350 | LOCAL_EXTERN void update_cursor_pixmap(void); | ... | ... |
latest/src/gtk2/screen.c
... | ... | @@ -109,7 +109,7 @@ |
109 | 109 | settitle, // void (*title)(char *text); |
110 | 110 | gdk_beep, // void (*ring_bell)(void); |
111 | 111 | redraw, // void (*redraw)(void); |
112 | - update_cursor_position, // void (*move_cursor)(H3270 *session, unsigned short row, unsigned short col); | |
112 | + update_cursor_position, // void (*move_cursor)(H3270 *session, unsigned short row, unsigned short col, unsigned char c, unsigned short attr); | |
113 | 113 | SetSuspended, // int (*set_suspended)(int state); |
114 | 114 | SetScript, // void (*set_script)(SCRIPT_STATE state); |
115 | 115 | NULL, // void (*reset)(int lock); | ... | ... |
latest/src/include/lib3270/api.h
... | ... | @@ -268,7 +268,7 @@ |
268 | 268 | void (*update)(H3270 *session, int baddr, unsigned char c, unsigned short attr, unsigned char cursor); |
269 | 269 | void (*changed)(H3270 *session, int bstart, int bend); |
270 | 270 | |
271 | - void (*update_cursor)(H3270 *session, unsigned short row, unsigned short col); | |
271 | + void (*update_cursor)(H3270 *session, unsigned short row, unsigned short col, unsigned char c, unsigned short attr); | |
272 | 272 | void (*update_oia)(H3270 *session, OIA_FLAG id, unsigned char on); |
273 | 273 | void (*update_toggle)(H3270 *session, LIB3270_TOGGLE ix, unsigned char value, LIB3270_TOGGLE_TYPE reason, const char *name); |
274 | 274 | void (*update_luname)(H3270 *session, const char *name); |
... | ... | @@ -500,7 +500,7 @@ |
500 | 500 | void (*title)(char *text); |
501 | 501 | void (*ring_bell)(void); |
502 | 502 | void (*redraw)(void); |
503 | - void (*move_cursor)(H3270 *session, unsigned short row, unsigned short col); | |
503 | + void (*move_cursor)(H3270 *session, unsigned short row, unsigned short col, unsigned char c, unsigned short attr); | |
504 | 504 | int (*set_suspended)(int state); |
505 | 505 | void (*set_script)(SCRIPT_STATE state); |
506 | 506 | void (*reset)(int lock); | ... | ... |
latest/src/lib/screen.c
... | ... | @@ -489,7 +489,7 @@ LIB3270_EXPORT int lib3270_set_cursor_address(H3270 *h, int baddr) |
489 | 489 | h->cursor_addr = baddr; |
490 | 490 | |
491 | 491 | if(h->update_cursor) |
492 | - h->update_cursor(h,(unsigned short) (baddr/h->cols),(unsigned short) (baddr%h->cols)); | |
492 | + h->update_cursor(h,(unsigned short) (baddr/h->cols),(unsigned short) (baddr%h->cols),ea_buf[baddr].chr,ea_buf[baddr].attr); | |
493 | 493 | |
494 | 494 | return ret; |
495 | 495 | } | ... | ... |