29#include "sdl_widget_list.hpp"
30#include "sdl_widget.hpp"
31#include "sdl_buttons.hpp"
32#include "sdl_connection_dialog_wrapper.hpp"
45 bool setTitle(
const char* fmt, ...);
46 bool showInfo(
const char* fmt, ...);
47 bool showWarn(
const char* fmt, ...);
48 bool showError(
const char* fmt, ...);
54 bool wait(
bool ignoreRdpContextQuit =
false);
56 bool handle(
const SDL_Event& event);
58 bool visible()
const override;
61 bool updateInternal()
override;
67 bool updateMsg(SdlConnectionDialogWrapper::MsgType type);
71 bool show(SdlConnectionDialogWrapper::MsgType type,
const char* fmt, va_list ap);
72 bool show(SdlConnectionDialogWrapper::MsgType type);
74 static std::string print(
const char* fmt, va_list ap);
75 bool setTimer(Uint32 timeoutMS = 15000);
78 static Uint32 timeout(
void* pvthis, SDL_TimerID timerID, Uint32 intervalMS);
82 SDL_Color fgcolor = {};
83 SDL_Color bgcolor = {};
87 rdpContext* _context =
nullptr;
88 mutable std::mutex _mux;
91 SdlConnectionDialogWrapper::MsgType _type_active = SdlConnectionDialogWrapper::MSG_NONE;
92 SDL_TimerID _timer = 0;
93 bool _running =
false;
94 std::vector<widget_cfg_t> _list{};