Исходник Гайд [mimgui] Jam Icons - небольшой аналог fAwesome

lorgon

Известный
Автор темы
656
271
Установил. Иконки отображаются но без текста, приходится только так:
Lua:
imgui.PushFont(font["jam"])
imgui.Text(jam.COG)
imgui.PopFont()
imgui.SameLine()
imgui.Text(" Настройки")
А вот в кнопки уже никак не добавить
У меня обычный текст не предусмотрен вместе с иконками, к сожалению.

Как вариант сделать кастомные кнокпи.
 
Последнее редактирование:
  • Bug
Реакции: CaJlaT

DGarson

Участник
66
19
Очень жаль, ведь тема реально достойная.
мне @Pakulichev делал для selectable код с иконками,попробуй адаптировать если не лень)

Lua custom:
function imgui.CustomSelectable(drawlist, icon, text, is_selected)
  local vec2 = imgui.GetCursorPos()
  local sv2 = imgui.GetCursorScreenPos()
  local width = imgui.GetWindowWidth()
  local padding = 10
  imgui.PushFont(icons_font)
  local size = imgui.CalcTextSize(icon)
    local is_clicked, is_hovered = false, false
  if imgui.InvisibleButton("##"..text, imgui.ImVec2(width, size.y + padding * 2)) then is_clicked = true end
    imgui.SetCursorPos(imgui.ImVec2(vec2.x + padding, vec2.y + padding))
  if imgui.IsItemHovered() then is_hovered = true end
  drawlist:AddRectFilled(imgui.ImVec2(sv2.x, sv2.y), imgui.ImVec2(sv2.x + width, sv2.y + size.y + padding * 2),
  imgui.ColorConvertFloat4ToU32(imgui.ImVec4(0, 0, 0, is_selected and 0.6 or (is_hovered and 0.2 or 0.0))))
  imgui.Text(icon)
  imgui.PopFont()
  imgui.SameLine()
  imgui.PushFont(title_font)
  imgui.Text(text)
  imgui.PopFont()
  imgui.SetCursorPos(imgui.ImVec2(vec2.x, vec2.y + size.y + padding * 2))
    return is_clicked
end