1 /* 2 Code common to the X11/Windows windowing modules 3 JBS 28 Feb 1996 4 */ 5 text_of(int y)6static char *text_of(int y) 7 { 8 int i; 9 static char buff[MAX_SLACK+1]; 10 for(i = 0; i < MAX_SLACK; ++i) 11 buff[i] = con.row[y].slack[i].text; 12 /* buff[i] = '\0'; */ 13 return buff; 14 } 15 after(console_cell * slack,int current,int held)16static int after(console_cell *slack, int current, int held) 17 { 18 int z = current + 1; 19 while(z < held 20 && slack[z].attr.font == slack[current].attr.font 21 && slack[z].attr.fore == slack[current].attr.fore 22 && slack[z].attr.back == slack[current].attr.back 23 ) 24 ++z; 25 return z; 26 } 27 after_space(console_cell * slack,int current,int held)28static int after_space(console_cell *slack, int current, int held) 29 { 30 int z = current + 1; 31 while(z < held 32 && !is_a_space(slack[z]) 33 && slack[z].attr.font == slack[current].attr.font 34 && slack[z].attr.fore == slack[current].attr.fore 35 && slack[z].attr.back == slack[current].attr.back 36 ) 37 ++z; 38 return z; 39 } 40 more(void)41void more(void) 42 { 43 char c; 44 int fixed = hd_get_fixed(); 45 console_context cell = con.cursor; 46 con.cursor.align = 0; 47 con.cursor.attr.font = FONT_EMPH; 48 con.cursor.attr.fore = 2; 49 con.cursor.attr.back = 9; 50 hd_set_fixed(0); 51 raw_display("More ..."); 52 c = get_ch(); 53 if(c > ' ') unget_ch(c); 54 put_char('\r'); 55 con.cursor = cell; 56 hd_set_fixed(fixed); 57 erase_to_eoln(); 58 } 59 60