tests/baseline_wxwidgets.cpp
8c34841f
 #ifdef GLBACKEND_WXWIDGETS
 
 
 // #include <wx/wx.h>
 #include <wx/app.h>
 #include <wx/defs.h>
 #include <wx/event.h>
 #include <wx/frame.h>
 #include <wx/window.h>
 
 
 class App : public wxApp
 {
 public:
     bool OnInit() override
     {
         // The default close event handler for wxFrame destroys the frame using
         // Destroy().
         // https://docs.wxwidgets.org/3.0/overview_windowdeletion.html#overview_windowdeletion_default
         auto * frame = new wxFrame(nullptr, wxID_ANY, "baseline_wdwidgets");
         if (!frame)
             return false;
         frame->Show(true);
         return true;
     }
     void OnIdle(wxIdleEvent & event)
     {
         (void)event;
         // Apparently, we only trigger LeakSanitizer if we handle a few
         // messages.
         auto static count = 0;
         if (count++ == 3)
             GetTopWindow()->Close();
     }
     wxDECLARE_EVENT_TABLE(); //NOLINT
 };
 
 
 #pragma GCC diagnostic push
 #pragma GCC diagnostic ignored "-Wzero-as-null-pointer-constant"
 wxBEGIN_EVENT_TABLE(App, wxApp) // NOLINT
     EVT_IDLE(App::OnIdle) // NOLINT
 wxEND_EVENT_TABLE() // NOLINT
 #pragma GCC diagnostic pop
 
 
 wxIMPLEMENT_APP(App);
 
 
 #else
 int main() {}
 #endif