| 1714 | } |
| 1715 | |
| 1716 | void ImDrawList::AddText(ImFont* font, float font_size, const ImVec2& pos, ImU32 col, const char* text_begin, const char* text_end, float wrap_width, const ImVec4* cpu_fine_clip_rect) |
| 1717 | { |
| 1718 | if ((col & IM_COL32_A_MASK) == 0) |
| 1719 | return; |
| 1720 | |
| 1721 | // Accept null ranges |
| 1722 | if (text_begin == text_end || text_begin[0] == 0) |
| 1723 | return; |
| 1724 | // No need to strlen() here: font->RenderText() will do it and may early out. |
| 1725 | |
| 1726 | // Pull default font/size from the shared ImDrawListSharedData instance |
| 1727 | if (font == NULL) |
| 1728 | font = _Data->Font; |
| 1729 | if (font_size == 0.0f) |
| 1730 | font_size = _Data->FontSize; |
| 1731 | |
| 1732 | ImVec4 clip_rect = _CmdHeader.ClipRect; |
| 1733 | if (cpu_fine_clip_rect) |
| 1734 | { |
| 1735 | clip_rect.x = ImMax(clip_rect.x, cpu_fine_clip_rect->x); |
| 1736 | clip_rect.y = ImMax(clip_rect.y, cpu_fine_clip_rect->y); |
| 1737 | clip_rect.z = ImMin(clip_rect.z, cpu_fine_clip_rect->z); |
| 1738 | clip_rect.w = ImMin(clip_rect.w, cpu_fine_clip_rect->w); |
| 1739 | } |
| 1740 | font->RenderText(this, font_size, pos, col, clip_rect, text_begin, text_end, wrap_width, (cpu_fine_clip_rect != NULL) ? ImDrawTextFlags_CpuFineClip : ImDrawTextFlags_None); |
| 1741 | } |
| 1742 | |
| 1743 | void ImDrawList::AddText(const ImVec2& pos, ImU32 col, const char* text_begin, const char* text_end) |
| 1744 | { |
no test coverage detected