void lay_widow( lay_tag ltag ) { char * p; condcode cc; int k; lay_att curr; att_args l_args; int cvterr; ltag = ltag; p = scan_start; if( !GlobalFlags.firstpass ) { scan_start = scan_stop; eat_lay_sub_tag(); return; // process during first pass only } if( ProcFlags.lay_xxx != el_widow ) { ProcFlags.lay_xxx = el_widow; } cc = get_lay_sub_and_value( &l_args ); // get one with value while( cc == pos ) { cvterr = -1; for( k = 0, curr = widow_att[k]; curr > 0; k++, curr = widow_att[k] ) { if( !strnicmp( att_names[curr], l_args.start[0], l_args.len[0] ) ) { p = l_args.start[1]; switch( curr ) { case e_threshold: cvterr = i_uint8( p, curr, &layout_work.widow.threshold ); break; default: out_msg( "WGML logic error.\n"); cvterr = true; break; } if( cvterr ) { // there was an error err_count++; g_err( err_att_val_inv ); file_mac_info(); } break; // break out of for loop } } if( cvterr < 0 ) { err_count++; g_err( err_att_name_inv ); file_mac_info(); } cc = get_lay_sub_and_value( &l_args ); // get one with value } scan_start = scan_stop; return; }
bool i_font_number( char *p, lay_att curr, font_number *tm ) { return( i_uint8( p, curr, tm ) ); }