Имгуи лист

nixware.cc
Участник
Статус
Оффлайн
Регистрация
26 Янв 2017
Сообщения
547
Реакции[?]
225
Поинты[?]
0
Как сделать такой лист на имгуи?
 
nixware.cc
Участник
Статус
Оффлайн
Регистрация
26 Янв 2017
Сообщения
547
Реакции[?]
225
Поинты[?]
0
Эксперт
Статус
Оффлайн
Регистрация
12 Июн 2014
Сообщения
999
Реакции[?]
1,209
Поинты[?]
3K
Просто мне нужно туда конфиги засунуть
все просто:

добавляем своеобразный callback
Код:
static auto vector_getter = [](void* vec, int idx, const char** out_text)
{
    auto& vector = *static_cast<std::vector<std::string>*>(vec);
    if (idx < 0 || idx >= static_cast<int>(vector.size())) { return false; }
    *out_text = vector.at(idx).c_str();
    return true;
};
обернем все:
Код:
bool ListBox(const char* label, int* currIndex, std::vector<std::string>& values)
{
    if (values.empty())
       return false; 
    return ImGui::ListBox(label, currIndex, vector_getter,static_cast<void*>(&values), values.size());
}

теперь помещаем список файлов в контейнер(пример показан тут: https://yougame.biz/threads/33147/) и отрисовываем все в ListBox

Код:
static int SelectedValue = 0;

ListBox("Cfg list",&SelectedValue,vNameFileList);
все)) теперь просто вызываешь выбранный тобой фаил:

Код:
путь_к_папке_с_cfg + vNameFileList[SelectedValue].c_str();
 
Сверху Снизу