Prefer testing the session instead of using a global variable
[ardour.git] / gtk2_ardour / splash.h
index d6b103609a79cca21aafaa874c345ce419106d22..109b68a8be2c7507ffb42d9d326eda740a0df0be 100644 (file)
@@ -32,22 +32,24 @@ class ARDOUR_UI;
 
 class Splash : public Gtk::Window
 {
-  public:
+public:
        Splash ();
-       ~Splash () {}
+       ~Splash ();
 
        static Splash* instance() { return the_splash; }
 
+       void display ();
        void pop_back_for (Gtk::Window&);
        void pop_front ();
 
        bool expose (GdkEventExpose*);
        bool on_button_release_event (GdkEventButton*);
        void on_realize ();
-
+       bool on_map_event (GdkEventAny*);
        void message (const std::string& msg);
+       void hide ();
 
-  private:
+private:
        static Splash* the_splash;
 
        Glib::RefPtr<Gdk::Pixbuf> pixbuf;
@@ -56,6 +58,11 @@ class Splash : public Gtk::Window
 
        void boot_message (std::string);
        PBD::ScopedConnection msg_connection;
+
+       sigc::connection idle_connection;
+       volatile bool expose_done;
+       bool expose_is_the_one;
+       bool idle_after_expose ();
 };
 
 #endif /* __ardour_gtk_splash_h__ */