/*
- Copyright (C) 2008 Paul Davis
+ Copyright (C) 2008 Paul Davis
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
#include <gtkmm/label.h>
#include <gdkmm/pixbuf.h>
+#include "pbd/signals.h"
+
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);
-
- private:
+ void hide ();
+
+private:
+ static Splash* the_splash;
+
Glib::RefPtr<Gdk::Pixbuf> pixbuf;
Gtk::DrawingArea darea;
Glib::RefPtr<Pango::Layout> layout;
-};
+
+ 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__ */