public static void nk_textedit_layout_row(nk_text_edit_row *r, nk_text_edit edit, int line_start_id, float row_height, NkUserFont font) { int glyphs = (int)(0); char *remaining; int len = (int)(edit._string_.Len); fixed(char *str2 = edit._string_.Str) { char *end = str2 + len; char * text = str2 + line_start_id; NkVec2 size = (NkVec2) (nk_text_calculate_text_bounds(font, text, (int)(end - text), (float)(row_height), &remaining, null, &glyphs, true)); r->x0 = (float)(0.0f); r->x1 = (float)(size.x); r->baseline_y_delta = (float)(size.y); r->ymin = (float)(0.0f); r->ymax = (float)(size.y); r->num_chars = (int)(glyphs); } }
public static void nk_textedit_layout_row(nk_text_edit_row *r, nk_text_edit edit, int line_start_id, float row_height, nk_font font) { int glyphs = (int)(0); StringSegment remaining; int len = (int)(edit.Text.len); StringSegment str2 = edit.Text.str; StringSegment text = str2 + line_start_id; Vector2 out_offset; Vector2 size = (font.nk_text_calculate_text_bounds(text, (float)(row_height), out remaining, out out_offset, out glyphs, (int)(NK_STOP_ON_NEW_LINE))); r->x0 = (float)(0.0f); r->x1 = (float)(size.X); r->baseline_y_delta = (float)(size.Y); r->ymin = (float)(0.0f); r->ymax = (float)(size.Y); r->num_chars = (int)(glyphs); }