LINUX.ORG.RU

Сообщения InFineTy

 

Проблема с инициализацией объектов UI с JSON файла

У меня есть два файла это ui.cpp и loadui.cpp

ui.cpp - все классы UI объектов, например: кнопки, текст и т.д, есть функция .render(renderer), которая рендерит все объекты.

loadui.cpp - функция которая возвращает все UI объекты и добавляет в список, который позже возвращается.

В цикле в main.cpp есть данный код:

LayoutUI main_screen("./layouts/main_screen.json");
vector<Button> buttons = main_screen.load(renderer);

SDL_Event event;
while(programRunning)
{
    while(SDL_PollEvent(&event) != 0)
    {
        if(event.type == SDL_QUIT)
            programRunning = false;

        for (Button& btn : buttons) {
            btn.handleEvent(event);
        }
    }

    SDL_SetRenderDrawColor(renderer, 255, 255, 255, 255);

    SDL_RenderClear(renderer);

    for (Button& btn : buttons) {
        btn.render(renderer);
    } 

    SDL_RenderPresent(renderer);
}

SDL_DestroyRenderer(renderer);
SDL_DestroyWindow(window);
SDL_Quit();

return 0;

В цикле основного цикла идут ивенты, они работают прекрасно, то есть, происходят нажатия кнопок и т.д.

После цикла ивента возникают проблемы с прорисовкой UI объектов, которые не отображаются должным образом.

Но, если я это сделаю вручную, то всё заработает.

 

InFineTy
()

RSS подписка на новые темы