57  void create(rdpContext* context);
 
   60  bool isRunning() 
const;
 
   61  bool isVisible() 
const;
 
   63  bool handleEvent(
const SDL_Event& event);
 
   65  WINPR_ATTR_FORMAT_ARG(2, 3)
 
   66  void setTitle(WINPR_FORMAT_ARG 
const char* fmt, ...);
 
   67  void setTitle(
const std::string& title);
 
   69  WINPR_ATTR_FORMAT_ARG(2, 3)
 
   70  void showInfo(WINPR_FORMAT_ARG 
const char* fmt, ...);
 
   71  void showInfo(
const std::string& info);
 
   73  WINPR_ATTR_FORMAT_ARG(2, 3)
 
   74  void showWarn(WINPR_FORMAT_ARG 
const char* fmt, ...);
 
   75  void showWarn(
const std::string& info);
 
   77  WINPR_ATTR_FORMAT_ARG(2, 3)
 
   78  void showError(WINPR_FORMAT_ARG 
const char* fmt, ...);
 
   79  void showError(
const std::string& error);
 
   81  void show(SdlConnectionDialogWrapper::MsgType type, 
const std::string& msg);
 
   83  void show(
bool visible = 
true);
 
   91    explicit EventArg(
bool visible);
 
   92    explicit EventArg(
const std::string& title);
 
   93    EventArg(SdlConnectionDialogWrapper::MsgType type, 
const std::string& msg, 
bool visible);
 
   95    [[nodiscard]] 
bool hasTitle() 
const;
 
   96    [[nodiscard]] 
const std::string& title() 
const;
 
   98    [[nodiscard]] 
bool hasMessage() 
const;
 
   99    [[nodiscard]] 
const std::string& message() 
const;
 
  101    [[nodiscard]] 
bool hasType() 
const;
 
  102    [[nodiscard]] SdlConnectionDialogWrapper::MsgType type() 
const;
 
  104    [[nodiscard]] 
bool hasVisibility() 
const;
 
  105    [[nodiscard]] 
bool visible() 
const;
 
  107    [[nodiscard]] std::string str() 
const;
 
  111    std::string _message;
 
  112    SdlConnectionDialogWrapper::MsgType _type = MSG_NONE;
 
  113    bool _visible = 
false;
 
  116  void push(EventArg&& arg);
 
  118  mutable std::mutex _mux;
 
  119  std::unique_ptr<SDLConnectionDialog> _connection_dialog{};
 
  120  std::queue<EventArg> _queue{};
 
  121  wLog* _log = 
nullptr;