[gnome-mines/wip/cssstyling: 4/4] Added pause overlay
- From: Robert Roth <robertroth src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-mines/wip/cssstyling: 4/4] Added pause overlay
- Date: Sun, 20 Apr 2014 12:30:11 +0000 (UTC)
commit ee75eef24b5a59eafe9f6bcff3321a9ee13b8682
Author: Robert Roth <robert roth off gmail com>
Date: Sun Apr 20 15:29:31 2014 +0300
Added pause overlay
data/gnome-mines.css.in | 5 +++++
src/gnome-mines.vala | 23 +++++++++++++++++++++--
2 files changed, 26 insertions(+), 2 deletions(-)
---
diff --git a/data/gnome-mines.css.in b/data/gnome-mines.css.in
index 97d3d1c..133358a 100644
--- a/data/gnome-mines.css.in
+++ b/data/gnome-mines.css.in
@@ -68,3 +68,8 @@ Changes are applied instantly and globally, for the whole application.
background-color:#e9b96e;
}
+.pausedOverlay {
+ background-color:black;
+ color: white;
+ font-size:32px;
+}
diff --git a/src/gnome-mines.vala b/src/gnome-mines.vala
index bb51f2f..86140ce 100644
--- a/src/gnome-mines.vala
+++ b/src/gnome-mines.vala
@@ -32,6 +32,8 @@ public class Mines : Gtk.Application
private Gtk.Button high_scores_button;
private Gtk.Button new_game_button;
private Gtk.AspectFrame minefield_aspect;
+ private Gtk.Overlay minefield_overlay;
+ private Gtk.Box paused_box;
private Gtk.Label clock_label;
@@ -173,11 +175,27 @@ public class Mines : Gtk.Application
minefield_view = new MinefieldView (settings);
minefield_view.show ();
- minefield_view.button_press_event.connect (view_button_press_event);
+
+ minefield_overlay = new Gtk.Overlay ();
+ minefield_overlay.add (minefield_view);
+ minefield_overlay.show ();
minefield_aspect = new Gtk.AspectFrame (null, 0.5f, 0.5f, 1.0f , false);
minefield_aspect.set_shadow_type (Gtk.ShadowType.NONE);
- minefield_aspect.add (minefield_view);
+ minefield_aspect.add (minefield_overlay);
+
+ var paused_label = new Gtk.Label (_("Paused"));
+ paused_label.halign = Gtk.Align.CENTER;
+ paused_label.valign = Gtk.Align.CENTER;
+ paused_label.show ();
+
+ paused_box = new Gtk.Box (Gtk.Orientation.VERTICAL, 0);
+ paused_box.expand = true;
+ paused_box.pack_start (paused_label, true, true, 0);
+ paused_box.get_style_context ().add_class ("pausedOverlay");
+ paused_box.button_press_event.connect (view_button_press_event);
+
+ minefield_overlay.add_overlay (paused_box);
view_box.pack_start (minefield_aspect, true, true, 0);
@@ -624,6 +642,7 @@ public class Mines : Gtk.Application
display_unpause_button ();
else if (minefield.elapsed > 0)
display_pause_button ();
+ paused_box.visible = minefield.paused;
}
private void marks_changed_cb (Minefield minefield)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]