[atomix] 02/10: Imported Upstream version 3.19.4

Markus Koschany apo-guest at moszumanska.debian.org
Sun Jan 24 15:40:00 UTC 2016


This is an automated email from the git hooks/post-receive script.

apo-guest pushed a commit to branch master
in repository atomix.

commit 19a4ed61f4dfb237df039cf8a4f2f10117476f4e
Author: Markus Koschany <apo at debian.org>
Date:   Sun Jan 24 15:43:54 2016 +0100

    Imported Upstream version 3.19.4
---
 NEWS                                 |  17 ++
 autogen.sh                           |   4 +-
 configure.ac                         |   2 +-
 data/Makefile.am                     |   4 +-
 data/atomix-icon.png                 | Bin 4295 -> 0 bytes
 data/atomix.desktop.in               |   2 +-
 data/atomix.svg                      | 198 ++++++++++++++++++++
 data/ui/interface.ui                 |  62 ++++++-
 po/cs.po                             |  57 ++++--
 po/de.po                             | 148 +++++++--------
 po/es.po                             |  59 +++++-
 po/pl.po                             |  48 ++++-
 po/sr.po                             | 337 +++++++++++++++++++++--------------
 po/sr at latin.po                       | 337 +++++++++++++++++++++--------------
 po/tr.po                             | 108 ++++++++---
 src/Makefile.am                      |   1 +
 src/{main.h => atomix-application.h} |  15 +-
 src/main.c                           | 167 ++++++++---------
 src/main.h                           |  38 +---
 19 files changed, 1065 insertions(+), 539 deletions(-)

diff --git a/NEWS b/NEWS
index 1774a6d..088228d 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,20 @@
+2016-01-18: Release versions 3.19.4
+
+  * New and updated translations
+    - cs, courtesy of Marek Černocký 
+    - de, courtesy of Mario Blättermann 
+    - es, courtesy of Daniel Mustieles 
+    - pl, courtesy of Piotr Drąg 
+    - sr, courtesy of Мирослав Николић 
+    - sr at latin, courtesy of Miroslav Nikolić 
+    - tr, courtesy of Muhammet Kara
+  * Added scalable icon (bug #746471)
+  * Use new icon and GtkApplication (bug #742871) 
+  * Single-instance application
+  * Remove window border
+  * Register window actions
+  * Fixed autogen deprecation warnings
+
 2015-12-14: Release version 3.19.3
 
    * New and updated translations
diff --git a/autogen.sh b/autogen.sh
index fd83618..6d62767 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -4,8 +4,6 @@
 srcdir=`dirname $0`
 test -z "$srcdir" && srcdir=.
 
-PKG_NAME="Atomix"
-
 (test -f $srcdir/configure.ac \
   && test -f $srcdir/ChangeLog \
   && test -f $srcdir/src/level.h) || {
@@ -19,4 +17,4 @@ which gnome-autogen.sh || {
     exit 1
 }
 
-USE_GNOME2_MACROS=1 . gnome-autogen.sh
+. gnome-autogen.sh
diff --git a/configure.ac b/configure.ac
index 2b1adad..0b1306e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,6 +1,6 @@
 AC_PREREQ([2.63])
 
-AC_INIT([atomix],[3.19.3],[http://bugzilla.gnome.org/enter_bug.cgi?product=atomix])
+AC_INIT([atomix],[3.19.4],[http://bugzilla.gnome.org/enter_bug.cgi?product=atomix])
 
 AC_CONFIG_HEADERS([config.h])
 AC_CONFIG_SRCDIR([src/main.c])
diff --git a/data/Makefile.am b/data/Makefile.am
index 7d67378..e237baa 100644
--- a/data/Makefile.am
+++ b/data/Makefile.am
@@ -5,8 +5,8 @@ SUBDIRS = level themes ui
 logodir = $(pkgdatadir)
 logo_DATA = atomix-logo.png
 
-icondir = $(datadir)/pixmaps
-icon_DATA = atomix-icon.png
+icondir = $(datadir)/icons/hicolor/scalable/apps
+icon_DATA = atomix.svg
 
 @INTLTOOL_DESKTOP_RULE@
 
diff --git a/data/atomix-icon.png b/data/atomix-icon.png
deleted file mode 100644
index 49d0255..0000000
Binary files a/data/atomix-icon.png and /dev/null differ
diff --git a/data/atomix.desktop.in b/data/atomix.desktop.in
index 3511f4e..fa4204d 100644
--- a/data/atomix.desktop.in
+++ b/data/atomix.desktop.in
@@ -3,7 +3,7 @@ _Name=Atomix
 _GenericName=Molecule puzzle game
 _Comment=A puzzle game about atoms and molecules
 Exec=atomix
-Icon=atomix-icon
+Icon=atomix
 Terminal=false
 Type=Application
 Categories=GNOME;GTK;Game;LogicGame;
diff --git a/data/atomix.svg b/data/atomix.svg
new file mode 100644
index 0000000..fcb7935
--- /dev/null
+++ b/data/atomix.svg
@@ -0,0 +1,198 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48pt"
+   height="48pt"
+   viewBox="0 0 60.000002 60"
+   id="svg2"
+   version="1.1"
+   inkscape:version="0.91 r13725"
+   sodipodi:docname="atomix.svg"
+   inkscape:export-filename="/home/evfool/Projects/gnome/atomix/data/atomix.png"
+   inkscape:export-xdpi="59.380001"
+   inkscape:export-ydpi="59.380001">
+  <title
+     id="title4152">Atomix icon</title>
+  <defs
+     id="defs4">
+    <linearGradient
+       id="linearGradient4302"
+       inkscape:collect="always">
+      <stop
+         id="stop4304"
+         offset="0"
+         style="stop-color:#eeeeec;stop-opacity:1" />
+      <stop
+         id="stop4306"
+         offset="1"
+         style="stop-color:#babdb6;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="ball-2">
+      <stop
+         style="stop-color:#ffd100;stop-opacity:1"
+         offset="0"
+         id="stop4253" />
+      <stop
+         id="stop4278"
+         offset="0.25586772"
+         style="stop-color:#ff881d;stop-opacity:1" />
+      <stop
+         id="stop4267"
+         offset="0.71834469"
+         style="stop-color:#d5592e;stop-opacity:1" />
+      <stop
+         style="stop-color:#492e06;stop-opacity:1"
+         offset="1"
+         id="stop4255" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#ball-2"
+       id="radialGradient4257"
+       cx="281.78571"
+       cy="367.00504"
+       fx="281.78571"
+       fy="367.00504"
+       r="70.785713"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.77376081,0.89596509,-0.73769567,0.63707844,348.93788,-151.26044)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4302"
+       id="linearGradient4298"
+       x1="395.2027"
+       y1="309.60416"
+       x2="445.5976"
+       y2="317.85077"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4302"
+       id="linearGradient4300"
+       x1="450.18311"
+       y1="316.29572"
+       x2="494.16571"
+       y2="316.29572"
+       gradientUnits="userSpaceOnUse" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="3.2460736"
+     inkscape:cx="61.299959"
+     inkscape:cy="-62.611903"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="false"
+     fit-margin-top="3.3"
+     fit-margin-left="0"
+     fit-margin-right="0"
+     fit-margin-bottom="3.3"
+     inkscape:window-width="1877"
+     inkscape:window-height="1025"
+     inkscape:window-x="43"
+     inkscape:window-y="29"
+     inkscape:window-maximized="1"
+     units="pt" />
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title>Atomix icon</dc:title>
+        <cc:license
+           rdf:resource="http://creativecommons.org/licenses/by/3.0/" />
+        <dc:creator>
+          <cc:Agent>
+            <dc:title />
+          </cc:Agent>
+        </dc:creator>
+        <dc:contributor>
+          <cc:Agent>
+            <dc:title>Leonardo Pereira
+Robert Roth</dc:title>
+          </cc:Agent>
+        </dc:contributor>
+        <dc:description>Vector icon for the GNOME Atomix game</dc:description>
+      </cc:Work>
+      <cc:License
+         rdf:about="http://creativecommons.org/licenses/by/3.0/">
+        <cc:permits
+           rdf:resource="http://creativecommons.org/ns#Reproduction" />
+        <cc:permits
+           rdf:resource="http://creativecommons.org/ns#Distribution" />
+        <cc:requires
+           rdf:resource="http://creativecommons.org/ns#Notice" />
+        <cc:requires
+           rdf:resource="http://creativecommons.org/ns#Attribution" />
+        <cc:permits
+           rdf:resource="http://creativecommons.org/ns#DerivativeWorks" />
+      </cc:License>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(-279.16681,-271.55795)">
+    <g
+       id="g4273"
+       transform="matrix(0.30926477,0,0,0.30926477,205.02536,193.10506)">
+      <g
+         transform="scale(0.95604013,1.0459812)"
+         style="font-style:normal;font-weight:normal;font-size:47.47603226px;line-height:125%;font-family:Sans;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:0.40223466;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         id="text4269">
+        <g
+           id="g4288">
+          <g
+             id="g4310">
+            <circle
+               style="fill:url(#radialGradient4257);fill-opacity:1;stroke:#000000;stroke-width:8;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+               id="path3449"
+               cx="310.52026"
+               cy="358.59213"
+               r="66.785713"
+               transform="scale(1.0459812,0.95604013)" />
+            <path
+               id="path4281"
+               style="font-style:normal;font-weight:bold;font-size:83.08305359px;line-height:125%;font-family:Sans;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:0.40223466;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+               d="m 296.72796,309.80914 15.61864,0 0,23.08314 23.04257,0 0,-23.08314 15.61864,0 0,60.56787 -15.61864,0 0,-25.67947 -23.04257,0 0,25.67947 -15.61864,0 0,-60.56787 z"
+               inkscape:connector-curvature="0" />
+            <path
+               style="opacity:1;fill:url(#linearGradient4298);fill-opacity:1;stroke:#000000;stroke-width:7.8306818;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+               d="m 405.40701,260.83066 44.00594,7.02583 -3.84357,37.31633 -28.00191,69.60442 -20.8054,-4.08062 -0.2994,-76.37262 z"
+               id="rect4283"
+               inkscape:connector-curvature="0"
+               sodipodi:nodetypes="ccccccc" />
+            <rect
+               style="opacity:1;fill:url(#linearGradient4300);fill-opacity:1;stroke:#000000;stroke-width:8.48453712;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+               id="rect4286"
+               width="35.498055"
+               height="33.776306"
+               x="454.42538"
+               y="299.40756"
+               transform="matrix(0.98623205,0.16536728,-0.19678412,0.98044684,0,0)" />
+          </g>
+        </g>
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/data/ui/interface.ui b/data/ui/interface.ui
index aa9e2ea..be5b251 100644
--- a/data/ui/interface.ui
+++ b/data/ui/interface.ui
@@ -2,11 +2,12 @@
 <!-- Generated with glade 3.18.3 -->
 <interface>
   <requires lib="gtk+" version="3.10"/>
-  <object class="GtkWindow" id="mainwin">
+  <object class="GtkApplicationWindow" id="mainwin">
     <property name="width_request">678</property>
     <property name="height_request">520</property>
     <property name="can_focus">False</property>
-    <property name="border_width">6</property>
+    <property name="border_width">0</property>
+    <property name="icon_name">atomix</property>
     <property name="title" translatable="yes">Atomix</property>
     <child>
       <object class="GtkBox" id="win_content">
@@ -33,6 +34,7 @@
                         <property name="can_focus">False</property>
                         <property name="label" translatable="yes">_New Game</property>
                         <property name="use_underline">True</property>
+                        <property name="action_name">win.GameNew</property>
                         <accelerator key="n" signal="activate" modifiers="GDK_CONTROL_MASK"/>
                       </object>
                     </child>
@@ -42,6 +44,7 @@
                         <property name="can_focus">False</property>
                         <property name="label" translatable="yes">_End Game</property>
                         <property name="use_underline">True</property>
+                        <property name="action_name">win.GameEnd</property>
                       </object>
                     </child>
                     <child>
@@ -56,6 +59,7 @@
                         <property name="can_focus">False</property>
                         <property name="label" translatable="yes">_Skip Level</property>
                         <property name="use_underline">True</property>
+                        <property name="action_name">win.GameSkip</property>
                         <accelerator key="s" signal="activate" modifiers="GDK_CONTROL_MASK"/>
                       </object>
                     </child>
@@ -65,6 +69,7 @@
                         <property name="can_focus">False</property>
                         <property name="label" translatable="yes">_Reset Level</property>
                         <property name="use_underline">True</property>
+                        <property name="action_name">win.GameReset</property>
                       </object>
                     </child>
                     <child>
@@ -73,6 +78,7 @@
                         <property name="can_focus">False</property>
                         <property name="label" translatable="yes">_Undo Move</property>
                         <property name="use_underline">True</property>
+                        <property name="action_name">win.GameUndo</property>
                         <accelerator key="z" signal="activate" modifiers="GDK_CONTROL_MASK"/>
                       </object>
                     </child>
@@ -82,6 +88,7 @@
                         <property name="can_focus">False</property>
                         <property name="label" translatable="yes">_Pause Game</property>
                         <property name="use_underline">True</property>
+                        <property name="action_name">win.GamePause</property>
                         <accelerator key="c" signal="activate" modifiers="GDK_CONTROL_MASK"/>
                       </object>
                     </child>
@@ -91,6 +98,7 @@
                         <property name="can_focus">False</property>
                         <property name="label" translatable="yes">_Continue Game</property>
                         <property name="use_underline">True</property>
+                        <property name="action_name">win.GameContinue</property>
                         <accelerator key="c" signal="activate" modifiers="GDK_CONTROL_MASK"/>
                       </object>
                     </child>
@@ -106,6 +114,7 @@
                         <property name="can_focus">False</property>
                         <property name="label" translatable="yes">_Quit</property>
                         <property name="use_underline">True</property>
+                        <property name="action_name">app.GameQuit</property>
                         <accelerator key="q" signal="activate" modifiers="GDK_CONTROL_MASK"/>
                       </object>
                     </child>
@@ -128,6 +137,7 @@
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="label" translatable="yes">_About</property>
+			<property name="action_name">app.GameAbout</property>
                         <property name="use_underline">True</property>
                       </object>
                     </child>
@@ -379,4 +389,52 @@
       </object>
     </child>
   </object>
+  <menu id="app-menu">
+    <section>
+      <item>
+        <attribute name="label" translatable="yes">New Game</attribute>
+        <attribute name="action">win.GameNew</attribute>
+        <attribute name="accel"><Primary>n</attribute>
+      </item>
+      <item>
+        <attribute name="label" translatable="yes">End Game</attribute>
+        <attribute name="action">win.GameEnd</attribute>
+      </item>
+      <item>
+        <attribute name="label" translatable="yes">Skip Level</attribute>
+        <attribute name="action">win.GameSkip</attribute>
+        <attribute name="accel"><Primary>s</attribute>
+      </item>
+      <item>
+        <attribute name="label" translatable="yes">Reset Level</attribute>
+        <attribute name="action">win.GameReset</attribute>
+      </item>
+      <item>
+        <attribute name="label" translatable="yes">Undo Move</attribute>
+        <attribute name="action">win.GameUndo</attribute>
+        <attribute name="accel"><Primary>z</attribute>
+      </item>
+      <item>
+        <attribute name="label" translatable="yes">Pause Game</attribute>
+        <attribute name="action">win.GamePause</attribute>
+        <attribute name="accel"><Primary>c</attribute>
+      </item>
+      <item>
+        <attribute name="label" translatable="yes">Continue Game</attribute>
+        <attribute name="action">win.GameContinue</attribute>
+        <attribute name="accel"><Primary>c</attribute>
+      </item>
+    </section>
+    <section>
+      <item>
+        <attribute name="label" translatable="yes">About</attribute>
+        <attribute name="action">app.GameAbout</attribute>
+      </item>
+      <item>
+        <attribute name="label" translatable="yes">Quit</attribute>
+        <attribute name="action">app.GameQuit</attribute>
+        <attribute name="accel"><Primary>q</attribute>
+      </item>
+    </section>
+  </menu>
 </interface>
diff --git a/po/cs.po b/po/cs.po
index f985d3a..2c4ba06 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -3,18 +3,19 @@
 # Copyright (C) 1999, 2000, 2001, 2002 Jens Finke.
 # Copyright (C) 2006 Lukas Novotny <lukasnov at cvs.gnome.org>.
 # This file is distributed under the same license as the atomix package.
+#
 # Michal Bukovjan <bukm at centrum.cz>, 2002.
 # Miloslav Trmac <mitr at volny.cz>, 2004.
 # Lukas Novotny <lukasnov at cvs.gnome.org>, 2006.
-# Marek Černocký <marek at manet.cz>, 2010, 2015.
+# Marek Černocký <marek at manet.cz>, 2010, 2015, 2016.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: atomix\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
 "product=atomix&keywords=I18N+L10N&component=general\n"
-"POT-Creation-Date: 2015-11-23 19:50+0000\n"
-"PO-Revision-Date: 2015-11-24 16:24+0100\n"
+"POT-Creation-Date: 2016-01-01 15:57+0000\n"
+"PO-Revision-Date: 2016-01-01 19:59+0100\n"
 "Last-Translator: Marek Černocký <marek at manet.cz>\n"
 "Language-Team: Czech <gnome-cs-list at gnome.org>\n"
 "Language: cs\n"
@@ -25,7 +26,7 @@ msgstr ""
 "X-Generator: Gtranslator 2.91.7\n"
 
 #: ../data/atomix.appdata.xml.in.h:1 ../data/atomix.desktop.in.h:1
-#: ../data/ui/interface.ui.h:1 ../src/main.c:127 ../src/main.c:684
+#: ../data/ui/interface.ui.h:1 ../src/main.c:128 ../src/main.c:669
 msgid "Atomix"
 msgstr "Atomix"
 
@@ -41,7 +42,7 @@ msgid ""
 "wall or another atom."
 msgstr ""
 "Atomix je logická hra, ve které je cílem sestavit molekuly z jednotlivých "
-"atomů jejich přesouváním po hracím poli. Atomy si ale nemůžete přesouvat, "
+"atomů jejich přesouváním po hracím poli. Atomy ale nemůžete přesouvat, "
 "jak vás napadne. Po udaní směru se samy pohybují, až dokud nenarazí do zdi "
 "nebo do jiného atomu."
 
@@ -50,14 +51,14 @@ msgid ""
 "Try to build the molecules as fast as you can on each level to earn a higher "
 "score."
 msgstr ""
-"Molekuly v jednotlivých úrovních zkuste sestavit co nejrychleji dokážete, "
+"Molekuly v jednotlivých úrovních se snažte sestavit co nejrychleji dokážete, "
 "abyste dosáhli vyššího skóre."
 
 #: ../data/atomix.desktop.in.h:2
 msgid "Molecule puzzle game"
 msgstr "Logická hra s molekulami"
 
-#: ../data/atomix.desktop.in.h:3 ../src/main.c:129
+#: ../data/atomix.desktop.in.h:3 ../src/main.c:131
 msgid "A puzzle game about atoms and molecules"
 msgstr "Logická hra s atomy a molekulami"
 
@@ -209,7 +210,43 @@ msgstr "prázdné"
 msgid "Statistics"
 msgstr "Statistika"
 
-#: ../src/board-gtk.c:332
+#: ../data/ui/interface.ui.h:20
+msgid "New Game"
+msgstr "Nová hra"
+
+#: ../data/ui/interface.ui.h:21
+msgid "End Game"
+msgstr "Konec hry"
+
+#: ../data/ui/interface.ui.h:22
+msgid "Skip Level"
+msgstr "Přeskočit úroveň"
+
+#: ../data/ui/interface.ui.h:23
+msgid "Reset Level"
+msgstr "Úroveň od začátku"
+
+#: ../data/ui/interface.ui.h:24
+msgid "Undo Move"
+msgstr "Tah zpět"
+
+#: ../data/ui/interface.ui.h:25
+msgid "Pause Game"
+msgstr "Pozastavit hru"
+
+#: ../data/ui/interface.ui.h:26
+msgid "Continue Game"
+msgstr "Pokračovat ve hře"
+
+#: ../data/ui/interface.ui.h:27
+msgid "About"
+msgstr "O aplikaci"
+
+#: ../data/ui/interface.ui.h:28
+msgid "Quit"
+msgstr "Ukončit"
+
+#: ../src/board-gtk.c:338
 msgid ""
 "Guide the atoms through the maze to form molecules.\n"
 "Click, or use the arrow keys and Enter, to select an atom and move it.\n"
@@ -232,13 +269,13 @@ msgstr "Nebyla nalezena žádná úroveň."
 msgid "Found level '%s' in: %s"
 msgstr "Nalezena úroveň „%s“ v: %s"
 
-#: ../src/main.c:133
+#: ../src/main.c:135
 msgid "translator-credits"
 msgstr ""
 "Lukáš Novotný <lukasnov at cvs.gnome.org>\n"
 "Marek Černocký <marek at manet.cz>"
 
-#: ../src/main.c:440
+#: ../src/main.c:438
 msgid "Congratulations! You have finished all Atomix levels."
 msgstr "Gratulace! Dokončil jste všechny úrovně hry Atomix."
 
diff --git a/po/de.po b/po/de.po
index b2eeb6f..10d4fe3 100644
--- a/po/de.po
+++ b/po/de.po
@@ -6,24 +6,25 @@
 # Jens Finke <jens at gnome.org>, 2006.
 # Mario Blättermann <mariobl at gnome.org>, 2010.
 # Wolfgang Stöggl <c72578 at yahoo.de>, 2015.
+# Mario Blättermann <mario.blaettermann at gmail.com>, 2015.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: atomix master\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
 "product=atomix&keywords=I18N+L10N&component=general\n"
-"POT-Creation-Date: 2015-09-27 13:19+0000\n"
-"PO-Revision-Date: 2015-11-28 07:31+0100\n"
-"Last-Translator: Wolfgang Stoeggl <c72578 at yahoo.de>\n"
+"POT-Creation-Date: 2015-12-30 03:57+0000\n"
+"PO-Revision-Date: 2015-12-30 12:42+0100\n"
+"Last-Translator: Mario Blättermann <mario.blaettermann at gmail.com>\n"
 "Language-Team: German <gnome-de at gnome.org>\n"
 "Language: de\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Poedit 1.8.6\n"
+"X-Generator: Poedit 1.8.5\n"
 
 #: ../data/atomix.appdata.xml.in.h:1 ../data/atomix.desktop.in.h:1
-#: ../data/ui/interface.ui.h:1 ../src/main.c:127 ../src/main.c:684
+#: ../data/ui/interface.ui.h:1 ../src/main.c:128 ../src/main.c:669
 msgid "Atomix"
 msgstr "Atomix"
 
@@ -41,7 +42,7 @@ msgstr ""
 "Atomix ist ein Puzzle-Spiel mit dem Ziel, Moleküle aus den vorhandenen "
 "Atomen durch deren Bewegung auf dem Spielfeld zusammenzubauen. Die Atome "
 "bewegen sich allerdings nicht so, wie Sie sie vielleicht bewegen möchten. "
-"Sie gleiten bis sie entweder auf eine Wand oder ein anderes Atom treffen."
+"Sie gleiten, bis sie entweder auf eine Wand oder ein anderes Atom treffen."
 
 #: ../data/atomix.appdata.xml.in.h:4
 msgid ""
@@ -55,6 +56,10 @@ msgstr ""
 msgid "Molecule puzzle game"
 msgstr "Molekül-Puzzlespiel"
 
+#: ../data/atomix.desktop.in.h:3 ../src/main.c:131
+msgid "A puzzle game about atoms and molecules"
+msgstr "Ein Puzzlespiel über Atome und Moleküle"
+
 #: ../data/level/aceticacid.atomix.xml.h:1
 msgid "Acetic Acid"
 msgstr "Essigsäure"
@@ -73,15 +78,15 @@ msgstr "Cyclobutan"
 
 #: ../data/level/dimethylether.atomix.xml.h:1
 msgid "Dimethyl Ether"
-msgstr "Dimethylether"
+msgstr "Dimethyläther"
 
 #: ../data/level/ethanal.atomix.xml.h:1
 msgid "Ethanal"
-msgstr "Ethanal"
+msgstr "Äthanal"
 
 #: ../data/level/ethane.atomix.xml.h:1
 msgid "Ethane"
-msgstr "Ethan"
+msgstr "Äthan"
 
 #: ../data/level/ethanol.atomix.xml.h:1
 msgid "Ethanol"
@@ -203,6 +208,53 @@ msgstr "leer"
 msgid "Statistics"
 msgstr "Statistik"
 
+#: ../data/ui/interface.ui.h:20
+msgid "New Game"
+msgstr "Neues Spiel"
+
+#: ../data/ui/interface.ui.h:21
+msgid "End Game"
+msgstr "Spiel beenden"
+
+#: ../data/ui/interface.ui.h:22
+msgid "Skip Level"
+msgstr "Level überspringen"
+
+#: ../data/ui/interface.ui.h:23
+msgid "Reset Level"
+msgstr "Level zurücksetzen"
+
+#: ../data/ui/interface.ui.h:24
+msgid "Undo Move"
+msgstr "Zug zurücknehmen"
+
+#: ../data/ui/interface.ui.h:25
+msgid "Pause Game"
+msgstr "Spiel pausieren"
+
+#: ../data/ui/interface.ui.h:26
+msgid "Continue Game"
+msgstr "Spiel fortsetzen"
+
+#: ../data/ui/interface.ui.h:27
+msgid "About"
+msgstr "Info"
+
+#: ../data/ui/interface.ui.h:28
+msgid "Quit"
+msgstr "Beenden"
+
+#: ../src/board-gtk.c:338
+msgid ""
+"Guide the atoms through the maze to form molecules.\n"
+"Click, or use the arrow keys and Enter, to select an atom and move it.\n"
+"Be careful, though: an atom keeps moving until it hits a wall.\n"
+msgstr ""
+"Führen Sie die Atome durch das Labyrinth, um Moleküle zu formen.\n"
+"Klicken Sie oder verwenden sie die Pfeiltasten und die Eingabetaste,\n"
+"um ein Atom auszuwählen und es zu verschieben. Seien Sie vorsichtig,\n"
+"denn Atom bewegt sich weiter, bis es eine Wand erreicht.\n"
+
 #: ../src/level-manager.c:200
 msgid "Couldn't find level sequence description."
 msgstr "Levelsequenz-Beschreibung wurde nicht gefunden."
@@ -216,19 +268,15 @@ msgstr "Keine Level gefunden."
 msgid "Found level '%s' in: %s"
 msgstr "Level »%s« gefunden in: %s"
 
-#: ../src/main.c:129
-msgid "A puzzle game about atoms and molecules"
-msgstr "Ein Puzzlespiel über Atome und Moleküle"
-
-#: ../src/main.c:133
+#: ../src/main.c:135
 msgid "translator-credits"
 msgstr ""
 "Hendrik Brandt <heb at gnome-de.org>\n"
 "Christian Meyer <chrisime at gnome.org>\n"
 "Jens Finke <jens at gnome.org>\n"
-"Mario Blättermann <mariobl at gnome.org>"
+"Mario Blättermann <mario.blaettermann at gmail.com>"
 
-#: ../src/main.c:440
+#: ../src/main.c:438
 msgid "Congratulations! You have finished all Atomix levels."
 msgstr "Glückwunsch! Sie haben erfolgreich alle Atomix-Level abgeschlossen."
 
@@ -241,71 +289,3 @@ msgstr "Keine Themen gefunden."
 msgid "Found theme '%s' in: %s"
 msgstr "Thema »%s« gefunden in: %s"
 
-#~ msgid "Could not show link"
-#~ msgstr "Link konnte nicht angezeigt werden"
-
-#~ msgid "Time"
-#~ msgstr "Zeit"
-
-#~ msgid "Score"
-#~ msgstr "Punktzahl"
-
-#~ msgid "%dm %ds"
-#~ msgstr "%dm %ds"
-
-#~ msgid "Name"
-#~ msgstr "Name"
-
-#~ msgid "Error"
-#~ msgstr "Fehler"
-
-#~ msgid "Couldn't find at least one level."
-#~ msgstr "Es konnte kein einziges Level gefunden werden."
-
-#~ msgid "Do you want to finish the game?"
-#~ msgstr "Möchten Sie das Spiel wirklich beenden?"
-
-#~ msgid "_Game"
-#~ msgstr "_Spiel"
-
-#~ msgid "_Scores..."
-#~ msgstr "Ruhmes_halle …"
-
-#~ msgid "Continue paused game"
-#~ msgstr "Spiel _fortsetzen"
-
-#~ msgid "End a game"
-#~ msgstr "Spiel beenden"
-
-#~ msgid "Pause the running game"
-#~ msgstr "Laufendes Spiel anhalten"
-
-#~ msgid "Restores start situation"
-#~ msgstr "Startsituation wiederherstellen"
-
-#~ msgid "Set preferences"
-#~ msgstr "Einstellungen"
-
-#~ msgid "Skip the current level"
-#~ msgstr "Aktuellen _Level überspringen"
-
-#~ msgid "Start a new game"
-#~ msgstr "Ein neues Spiel starten"
-
-#~ msgid "Undo the last move"
-#~ msgstr "Letzten Zug zurücknehmen"
-
-#~ msgid "View highscores"
-#~ msgstr "Ruhmeshalle anzeigen"
-
-#~ msgid "_Preferences ..."
-#~ msgstr "Einstellungen …"
-
-#~ msgid ""
-#~ "You have not achieved any scores yet. Play a little before coming back!"
-#~ msgstr ""
-#~ "Sie haben bis jetzt noch keine Punkte erhalten. Spielen Sie noch etwas "
-#~ "weiter und schauen Sie später erneut nach."
-
-#~ msgid "Couldn't find file: %s"
-#~ msgstr "Datei konnte nicht gefunden werden: %s"
diff --git a/po/es.po b/po/es.po
index fffc81c..c57fb0c 100644
--- a/po/es.po
+++ b/po/es.po
@@ -5,15 +5,15 @@
 # Francisco Javier F. Serrador <serrador at cvs.gnome.org>, 2003.
 # Jorge González <jorgegonz at svn.gnome.org>, 2010.
 # 
-# Daniel Mustieles <daniel.mustieles at gmail.com>, 2015.
, 2015.
+# Daniel Mustieles <daniel.mustieles at gmail.com>, 2015.
, 2016.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: atomix.master\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
 "product=atomix&keywords=I18N+L10N&component=general\n"
-"POT-Creation-Date: 2015-12-01 03:57+0000\n"
-"PO-Revision-Date: 2015-12-02 15:34+0100\n"
+"POT-Creation-Date: 2016-01-07 03:57+0000\n"
+"PO-Revision-Date: 2016-01-07 11:40+0100\n"
 "Last-Translator: Daniel Mustieles <daniel.mustieles at gmail.com>\n"
 "Language-Team: Español; Castellano <gnome-es-list at gnome.org>\n"
 "Language: \n"
@@ -24,7 +24,7 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ../data/atomix.appdata.xml.in.h:1 ../data/atomix.desktop.in.h:1
-#: ../data/ui/interface.ui.h:1 ../src/main.c:127 ../src/main.c:684
+#: ../data/ui/interface.ui.h:1 ../src/main.c:128 ../src/main.c:669
 msgid "Atomix"
 msgstr "Atomix"
 
@@ -56,7 +56,7 @@ msgstr ""
 msgid "Molecule puzzle game"
 msgstr "Puzle con moléculas"
 
-#: ../data/atomix.desktop.in.h:3 ../src/main.c:129
+#: ../data/atomix.desktop.in.h:3 ../src/main.c:131
 msgid "A puzzle game about atoms and molecules"
 msgstr "Un juego de puzles sobre átomos y moléculas"
 
@@ -208,6 +208,51 @@ msgstr "vaciar"
 msgid "Statistics"
 msgstr "Estadísticas"
 
+#: ../data/ui/interface.ui.h:20
+#| msgid "_New Game"
+msgid "New Game"
+msgstr "Juego nuevo"
+
+#: ../data/ui/interface.ui.h:21
+#| msgid "_End Game"
+msgid "End Game"
+msgstr "Finalizar el juego"
+
+#: ../data/ui/interface.ui.h:22
+#| msgid "_Skip Level"
+msgid "Skip Level"
+msgstr "Saltar nivel"
+
+#: ../data/ui/interface.ui.h:23
+#| msgid "_Reset Level"
+msgid "Reset Level"
+msgstr "Reiniciar nivel"
+
+#: ../data/ui/interface.ui.h:24
+#| msgid "_Undo Move"
+msgid "Undo Move"
+msgstr "Deshacer movimiento"
+
+#: ../data/ui/interface.ui.h:25
+#| msgid "_Pause Game"
+msgid "Pause Game"
+msgstr "Pausar juego"
+
+#: ../data/ui/interface.ui.h:26
+#| msgid "_Continue Game"
+msgid "Continue Game"
+msgstr "Continuar juego"
+
+#: ../data/ui/interface.ui.h:27
+#| msgid "_About"
+msgid "About"
+msgstr "Acerca de"
+
+#: ../data/ui/interface.ui.h:28
+#| msgid "_Quit"
+msgid "Quit"
+msgstr "Salir"
+
 #: ../src/board-gtk.c:338
 msgid ""
 "Guide the atoms through the maze to form molecules.\n"
@@ -232,14 +277,14 @@ msgstr "No se encontró ningún nivel."
 msgid "Found level '%s' in: %s"
 msgstr "Encontrado nivel «%s» en: %s"
 
-#: ../src/main.c:133
+#: ../src/main.c:135
 msgid "translator-credits"
 msgstr ""
 "Daniel Mustieles <daniel.mustieles at gmail.com>, 2015\n"
 "Jorge González <jorgegonz at svn.gnome.org>, 2010\n"
 "Francisco Javier F. Serrador <serrador at cvs.gnome.org>"
 
-#: ../src/main.c:440
+#: ../src/main.c:438
 msgid "Congratulations! You have finished all Atomix levels."
 msgstr "¡Felicidades! Ha terminado todos los niveles de Atomix."
 
diff --git a/po/pl.po b/po/pl.po
index a19d5c1..b6ee6a6 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: atomix\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2015-11-29 22:27+0100\n"
-"PO-Revision-Date: 2015-11-29 22:28+0100\n"
+"POT-Creation-Date: 2015-12-28 01:01+0100\n"
+"PO-Revision-Date: 2015-12-28 01:02+0100\n"
 "Last-Translator: Piotr Drąg <piotrdrag at gmail.com>\n"
 "Language-Team: Polish <gnomepl at aviary.pl>\n"
 "Language: pl\n"
@@ -25,7 +25,7 @@ msgstr ""
 "X-Poedit-Country: Poland\n"
 
 #: ../data/atomix.appdata.xml.in.h:1 ../data/atomix.desktop.in.h:1
-#: ../data/ui/interface.ui.h:1 ../src/main.c:127 ../src/main.c:684
+#: ../data/ui/interface.ui.h:1 ../src/main.c:128 ../src/main.c:669
 msgid "Atomix"
 msgstr "Atomix"
 
@@ -56,7 +56,7 @@ msgstr ""
 msgid "Molecule puzzle game"
 msgstr "Gra logiczna w układanie cząsteczek"
 
-#: ../data/atomix.desktop.in.h:3 ../src/main.c:129
+#: ../data/atomix.desktop.in.h:3 ../src/main.c:131
 msgid "A puzzle game about atoms and molecules"
 msgstr "Gra logiczna o atomach i cząsteczkach"
 
@@ -208,6 +208,42 @@ msgstr "puste"
 msgid "Statistics"
 msgstr "Statystyki"
 
+#: ../data/ui/interface.ui.h:20
+msgid "New Game"
+msgstr "Nowa gra"
+
+#: ../data/ui/interface.ui.h:21
+msgid "End Game"
+msgstr "Zakończ grę"
+
+#: ../data/ui/interface.ui.h:22
+msgid "Skip Level"
+msgstr "Pomiń poziom"
+
+#: ../data/ui/interface.ui.h:23
+msgid "Reset Level"
+msgstr "Przywróć poziom"
+
+#: ../data/ui/interface.ui.h:24
+msgid "Undo Move"
+msgstr "Cofnij ruch"
+
+#: ../data/ui/interface.ui.h:25
+msgid "Pause Game"
+msgstr "Wstrzymaj grę"
+
+#: ../data/ui/interface.ui.h:26
+msgid "Continue Game"
+msgstr "Kontynuuj grę"
+
+#: ../data/ui/interface.ui.h:27
+msgid "About"
+msgstr "O grze"
+
+#: ../data/ui/interface.ui.h:28
+msgid "Quit"
+msgstr "Zakończ"
+
 #: ../src/board-gtk.c:338
 msgid ""
 "Guide the atoms through the maze to form molecules.\n"
@@ -231,14 +267,14 @@ msgstr "Nie odnaleziono poziomu."
 msgid "Found level '%s' in: %s"
 msgstr "Odnaleziono poziom „%s” w: %s"
 
-#: ../src/main.c:133
+#: ../src/main.c:135
 msgid "translator-credits"
 msgstr ""
 "Zbigniew Chyla <zbigniew.chyla at gmail.com>, 2002\n"
 "Piotr Drąg <piotrdrag at gmail.com>, 2012-2015\n"
 "Aviary.pl <gnomepl at aviary.pl>, 2012-2015"
 
-#: ../src/main.c:440
+#: ../src/main.c:438
 msgid "Congratulations! You have finished all Atomix levels."
 msgstr "Gratulacje! Udało się ukończyć wszystkie poziomy gry Atomix."
 
diff --git a/po/sr.po b/po/sr.po
index ea1c14b..8e3dfa2 100644
--- a/po/sr.po
+++ b/po/sr.po
@@ -1,247 +1,329 @@
 # Serbian translation of atomix
-# Courtesy of Prevod.org team (http://www.prevod.org/) -- 2003, 2004, 2005, 2006
+# Courtesy of Prevod.org team (http://www.prevod.org/) -- 2003—2015
 # This file is distributed under the same license as the atomix package.
-# Maintainer: Александар Урошевић <urke at gmx.net>
-# Мирослав Николић <miroslavnikolic at rocketmail.com>, 2011.
+# Александар Урошевић <urke at gmx.net>, 2003—2006
+# Мирослав Николић <miroslavnikolic at rocketmail.com>, 2011—2015.
 msgid ""
 msgstr ""
 "Project-Id-Version: atomix\n"
-"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
-"product=atomix&keywords=I18N+L10N&component=general\n"
-"POT-Creation-Date: 2011-05-12 16:27+0000\n"
-"PO-Revision-Date: 2011-05-18 05:06+0200\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=atomix&"
+"keywords=I18N+L10N&component=general\n"
+"POT-Creation-Date: 2015-12-26 18:13+0000\n"
+"PO-Revision-Date: 2015-12-28 11:45+0200\n"
 "Last-Translator: Мирослав Николић <miroslavnikolic at rocketmail.com>\n"
 "Language-Team: Serbian <gnom at prevod.org>\n"
+"Language: sr\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: Serbian (sr)\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
-"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-"X-Generator: Virtaal 0.5.2\n"
+"Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : "
+"n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
+"X-Project-Style: gnome\n"
 
-#: ../level/aceticacid.atomix.xml.h:1
+#: ../data/atomix.appdata.xml.in.h:1 ../data/atomix.desktop.in.h:1
+#: ../data/ui/interface.ui.h:1 ../src/main.c:128 ../src/main.c:669
+msgid "Atomix"
+msgstr "Атомикс"
+
+#: ../data/atomix.appdata.xml.in.h:2
+msgid "Build molecules out of single atoms"
+msgstr "Изградите молекуле од појединачних атома"
+
+#: ../data/atomix.appdata.xml.in.h:3
+msgid ""
+"Atomix is a puzzle game where your goal is to assemble molecules from "
+"compound atoms by moving them on the playfield. However, atoms don't just "
+"move wherever you want to move them to, they slide until they hit either a "
+"wall or another atom."
+msgstr ""
+"Атомикс је игра слагалице у којој је ваш циљ да саставите молекуле од "
+"основних атома премештајући их по пољу игре. Међутим, атоми једноставно не "
+"иду тамо где ви желите да их преместите, већ се померају све док не ударе "
+"или у зид или у други атом."
+
+#: ../data/atomix.appdata.xml.in.h:4
+msgid ""
+"Try to build the molecules as fast as you can on each level to earn a higher "
+"score."
+msgstr ""
+"Покушајте да изградите молекуле што брже можете на сваком нивоу да остварите "
+"већи резултат."
+
+#: ../data/atomix.desktop.in.h:2
+msgid "Molecule puzzle game"
+msgstr "Логичка слагалица са молекулима"
+
+#: ../data/atomix.desktop.in.h:3 ../src/main.c:131
+msgid "A puzzle game about atoms and molecules"
+msgstr "Логичка слагалица са атомима и молекулима"
+
+#: ../data/level/aceticacid.atomix.xml.h:1
 msgid "Acetic Acid"
 msgstr "Ацетна киселина"
 
-#: ../level/acetone.atomix.xml.h:1
+#: ../data/level/acetone.atomix.xml.h:1
 msgid "Acetone"
 msgstr "Ацетин"
 
-#: ../level/butanol.atomix.xml.h:1
+#: ../data/level/butanol.atomix.xml.h:1
 msgid "Butanol"
 msgstr "Бутанол"
 
-#: ../level/cyclobutane.atomix.xml.h:1
+#: ../data/level/cyclobutane.atomix.xml.h:1
 msgid "Cyclobutane"
 msgstr "Циклобутан"
 
-#: ../level/dimethylether.atomix.xml.h:1
+#: ../data/level/dimethylether.atomix.xml.h:1
 msgid "Dimethyl Ether"
 msgstr "Диметил Етер"
 
-#: ../level/ethanal.atomix.xml.h:1
+#: ../data/level/ethanal.atomix.xml.h:1
 msgid "Ethanal"
 msgstr "Етанал"
 
-#: ../level/ethane.atomix.xml.h:1
+#: ../data/level/ethane.atomix.xml.h:1
 msgid "Ethane"
 msgstr "Етан"
 
-#: ../level/ethanol.atomix.xml.h:1
+#: ../data/level/ethanol.atomix.xml.h:1
 msgid "Ethanol"
 msgstr "Етанол"
 
-#: ../level/ethylene.atomix.xml.h:1
+#: ../data/level/ethylene.atomix.xml.h:1
 msgid "Ethylene"
 msgstr "Еталин"
 
-#: ../level/glycerin.atomix.xml.h:1
+#: ../data/level/glycerin.atomix.xml.h:1
 msgid "Glycerin"
 msgstr "Глицерин"
 
-#: ../level/lactic-acid.atomix.xml.h:1
+#: ../data/level/lactic-acid.atomix.xml.h:1
 msgid "Lactic Acid"
 msgstr "Млечна киселина"
 
-#: ../level/methanal.atomix.xml.h:1
+#: ../data/level/methanal.atomix.xml.h:1
 msgid "Methanal"
 msgstr "Метанал"
 
-#: ../level/methane.atomix.xml.h:1
+#: ../data/level/methane.atomix.xml.h:1
 msgid "Methane"
 msgstr "Метан"
 
-#: ../level/methanol.atomix.xml.h:1
+#: ../data/level/methanol.atomix.xml.h:1
 msgid "Methanol"
 msgstr "Метанол"
 
-#: ../level/propanal.atomix.xml.h:1
+#: ../data/level/propanal.atomix.xml.h:1
 msgid "Propanal"
 msgstr "Пропанол"
 
-#: ../level/propylene.atomix.xml.h:1
+#: ../data/level/propylene.atomix.xml.h:1
 msgid "Propylene"
 msgstr "Пропилен"
 
-#: ../level/pyran.atomix.xml.h:1
+#: ../data/level/pyran.atomix.xml.h:1
 msgid "Pyran"
 msgstr "Пиран"
 
-#: ../level/transbutylen.atomix.xml.h:1
+#: ../data/level/transbutylen.atomix.xml.h:1
 msgid "Trans Butylen"
 msgstr "Транс-бутелин"
 
-#: ../level/water.atomix.xml.h:1
+#: ../data/level/water.atomix.xml.h:1
 msgid "Water"
 msgstr "Вода"
 
-#: ../src/games-runtime.c:273
-msgid "Could not show link"
-msgstr "Не могу да прикажем везицу"
-
-#: ../src/games-scores-dialog.c:113
-msgid "Time"
-msgstr "Време:"
-
-#. Note that this assumes the default style is plain.
-#: ../src/games-scores-dialog.c:118 ../src/games-scores-dialog.c:545
-msgid "Score"
-msgstr "Резултат:"
-
-#. Translators: this is for a minutes, seconds time display.
-#: ../src/games-scores-dialog.c:276
-#, c-format
-msgid "%dm %ds"
-msgstr "%dm %ds"
-
-#: ../src/games-scores-dialog.c:437 ../src/main.c:736
-msgid "New Game"
-msgstr "Нова игра"
-
-#: ../src/games-scores-dialog.c:537
-msgid "Name"
-msgstr "Игра"
+#: ../data/ui/interface.ui.h:2
+msgid "_File"
+msgstr "_Датотека"
 
-#. Empty title shows up as "<unnamed>" on maemo
-#: ../src/games-show.c:151
-msgid "Error"
-msgstr "Грешка"
+#: ../data/ui/interface.ui.h:3
+#| msgid "New Game"
+msgid "_New Game"
+msgstr "_Нова игра"
 
-#: ../src/level-manager.c:176
-msgid "Couldn't find level sequence description."
-msgstr "Не могу пронаћи опис акција нивоа."
+#: ../data/ui/interface.ui.h:4
+#| msgid "End Game"
+msgid "_End Game"
+msgstr "_Крај игре"
 
-#: ../src/level-manager.c:190
-msgid "No level found."
-msgstr "Ниво није пронађен."
+#: ../data/ui/interface.ui.h:5
+#| msgid "Skip Level"
+msgid "_Skip Level"
+msgstr "Прескочи _ниво"
 
-#: ../src/level-manager.c:286
-#, c-format
-msgid "Found level '%s' in: %s"
-msgstr "Пронађен ниво „%s“ у: %s"
+#: ../data/ui/interface.ui.h:6
+#| msgid "Reset Level"
+msgid "_Reset Level"
+msgstr "_Поново постави ниво"
 
-#: ../src/main.c:121 ../src/main.c:775 ../src/main.c:832
-#: ../atomix.desktop.in.h:1
-msgid "Atomix"
-msgstr "Атомикс"
+#: ../data/ui/interface.ui.h:7
+#| msgid "_Undo move"
+msgid "_Undo Move"
+msgstr "_Опозови потез"
 
-#: ../src/main.c:166
-msgid "A puzzle game about atoms and molecules"
-msgstr "Логичка слагалица са атомима и молекулима"
+#: ../data/ui/interface.ui.h:8
+msgid "_Pause Game"
+msgstr "Паузирај _игру"
 
-#: ../src/main.c:170
-msgid "translator-credits"
-msgstr ""
-"Александар Урошевић <urke at gmx.net>\n"
-"\n"
-"http://prevod.org — преводи на српски језик"
+#: ../data/ui/interface.ui.h:9
+msgid "_Continue Game"
+msgstr "_Настави игру"
 
-#: ../src/main.c:493
-msgid "Congratulations! You have finished all Atomix levels."
-msgstr "Честитам! Прешли сте све нивое Атомикса."
+#: ../data/ui/interface.ui.h:10
+msgid "_Quit"
+msgstr "_Изађи"
 
-#: ../src/main.c:503
-msgid "Couldn't find at least one level."
-msgstr "Не могу пронаћи ниједан ниво."
+#: ../data/ui/interface.ui.h:11
+msgid "_Help"
+msgstr "По_моћ"
 
-#: ../src/main.c:508
-msgid "Do you want to finish the game?"
-msgstr "Желите ли да завршите игру?"
+#: ../data/ui/interface.ui.h:12
+#| msgid "About"
+msgid "_About"
+msgstr "_О игри"
 
-#. create statistics frame
-#: ../src/main.c:701
-msgid "Statistics"
-msgstr "Статистика"
-
-#: ../src/main.c:707
+#: ../data/ui/interface.ui.h:13
 msgid "Level:"
 msgstr "Ниво:"
 
-#: ../src/main.c:708
+#: ../data/ui/interface.ui.h:14
 msgid "Molecule:"
 msgstr "Молекул:"
 
-#: ../src/main.c:709
+#: ../data/ui/interface.ui.h:15
 msgid "Formula:"
 msgstr "Формула:"
 
-#: ../src/main.c:710
+#: ../data/ui/interface.ui.h:16
 msgid "Score:"
 msgstr "Резултат:"
 
-#: ../src/main.c:711
+#: ../data/ui/interface.ui.h:17
 msgid "Time:"
 msgstr "Време:"
 
-#: ../src/main.c:734
-msgid "_Game"
-msgstr "_Игра"
+#: ../data/ui/interface.ui.h:18
+msgid "empty"
+msgstr "празно"
 
-#: ../src/main.c:735
-msgid "_Help"
-msgstr "_Помоћ"
+#: ../data/ui/interface.ui.h:19
+msgid "Statistics"
+msgstr "Статистика"
+
+#: ../data/ui/interface.ui.h:20
+msgid "New Game"
+msgstr "Нова игра"
 
-#: ../src/main.c:737
+#: ../data/ui/interface.ui.h:21
 msgid "End Game"
 msgstr "Крај игре"
 
-#: ../src/main.c:738
+#: ../data/ui/interface.ui.h:22
 msgid "Skip Level"
 msgstr "Прескочи ниво"
 
-#: ../src/main.c:739
+#: ../data/ui/interface.ui.h:23
 msgid "Reset Level"
 msgstr "Поново постави ниво"
 
-#: ../src/main.c:741
-msgid "_Pause Game"
-msgstr "Паузирај игру"
+#: ../data/ui/interface.ui.h:24
+#| msgid "_Undo move"
+msgid "Undo Move"
+msgstr "Опозови потез"
 
-#: ../src/main.c:742
-msgid "_Continue Game"
-msgstr "_Настави игру"
+#: ../data/ui/interface.ui.h:25
+#| msgid "_Pause Game"
+msgid "Pause Game"
+msgstr "Паузирај игру"
 
-#: ../src/main.c:743
-msgid "_Scores..."
-msgstr "_Резултати ..."
+#: ../data/ui/interface.ui.h:26
+#| msgid "_Continue Game"
+msgid "Continue Game"
+msgstr "Настави игру"
 
-#: ../src/main.c:745
+#: ../data/ui/interface.ui.h:27
 msgid "About"
 msgstr "О игри"
 
-#: ../src/theme-manager.c:136
+#: ../data/ui/interface.ui.h:28
+msgid "Quit"
+msgstr "Изађи"
+
+#: ../src/board-gtk.c:338
+msgid ""
+"Guide the atoms through the maze to form molecules.\n"
+"Click, or use the arrow keys and Enter, to select an atom and move it.\n"
+"Be careful, though: an atom keeps moving until it hits a wall.\n"
+msgstr ""
+"Водите атоме кроз гомилу како би створили молекуле.\n"
+"Притисните тастер миша, или користите тастере стрелица и Унеси, да изаберете "
+"атом и да га преместите.\n"
+"Будите пажљиви, јер: атом наставља да се креће све док не лупи о зид.\n"
+
+#: ../src/level-manager.c:200
+msgid "Couldn't find level sequence description."
+msgstr "Не могу пронаћи опис радњи нивоа."
+
+#: ../src/level-manager.c:214
+msgid "No level found."
+msgstr "Ниво није пронађен."
+
+#: ../src/level-manager.c:283
+#, c-format
+msgid "Found level '%s' in: %s"
+msgstr "Пронађен ниво „%s“ у: %s"
+
+#: ../src/main.c:135
+msgid "translator-credits"
+msgstr ""
+"Александар Урошевић <urke at gmx.net>\n"
+"Мирослав Николић <miroslavnikolic at rocketmail.com>\n"
+"\n"
+"http://prevod.org — преводи на српски језик"
+
+#: ../src/main.c:438
+msgid "Congratulations! You have finished all Atomix levels."
+msgstr "Честитам! Прешли сте све нивое Атомикса."
+
+#: ../src/theme-manager.c:225
 msgid "No themes found."
 msgstr "Тема није пронађена."
 
-#: ../src/theme-manager.c:194
+#: ../src/theme-manager.c:283
 #, c-format
 msgid "Found theme '%s' in: %s"
 msgstr "Пронађена је тема „%s‟ у: %s"
 
-#: ../atomix.desktop.in.h:2
-msgid "Molecule puzzle game"
-msgstr "Логичка слагалица са молекулима"
+#~ msgid "Could not show link"
+#~ msgstr "Не могу да прикажем везицу"
+
+#~ msgid "Time"
+#~ msgstr "Време:"
+
+#~ msgid "Score"
+#~ msgstr "Резултат:"
+
+#~ msgid "%dm %ds"
+#~ msgstr "%dm %ds"
+
+#~ msgid "Name"
+#~ msgstr "Игра"
+
+#~ msgid "Error"
+#~ msgstr "Грешка"
+
+#~ msgid "Couldn't find at least one level."
+#~ msgstr "Не могу пронаћи ниједан ниво."
+
+#~ msgid "Do you want to finish the game?"
+#~ msgstr "Желите ли да завршите игру?"
+
+#~ msgid "_Game"
+#~ msgstr "_Игра"
+
+#~ msgid "_Scores..."
+#~ msgstr "_Резултати ..."
 
 #~ msgid "Continue paused game"
 #~ msgstr "Наставак паузиране игре"
@@ -273,9 +355,6 @@ msgstr "Логичка слагалица са молекулима"
 #~ msgid "_Preferences ..."
 #~ msgstr "_Подешавања ..."
 
-#~ msgid "_Undo move"
-#~ msgstr "_Опозови потез"
-
 # note(slobo): без уобичајеног персирања, ово је за децу! Мада деци ТРЕБА
 # персирати!
 #~ msgid ""
diff --git a/po/sr at latin.po b/po/sr at latin.po
index a5756f5..d9b98af 100644
--- a/po/sr at latin.po
+++ b/po/sr at latin.po
@@ -1,247 +1,329 @@
 # Serbian translation of atomix
-# Courtesy of Prevod.org team (http://www.prevod.org/) -- 2003, 2004, 2005, 2006
+# Courtesy of Prevod.org team (http://www.prevod.org/) -- 2003—2015
 # This file is distributed under the same license as the atomix package.
-# Maintainer: Aleksandar Urošević <urke at gmx.net>
-# Miroslav Nikolić <miroslavnikolic at rocketmail.com>, 2011.
+# Aleksandar Urošević <urke at gmx.net>, 2003—2006
+# Miroslav Nikolić <miroslavnikolic at rocketmail.com>, 2011—2015.
 msgid ""
 msgstr ""
 "Project-Id-Version: atomix\n"
-"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
-"product=atomix&keywords=I18N+L10N&component=general\n"
-"POT-Creation-Date: 2011-05-12 16:27+0000\n"
-"PO-Revision-Date: 2011-05-18 05:06+0200\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=atomix&"
+"keywords=I18N+L10N&component=general\n"
+"POT-Creation-Date: 2015-12-26 18:13+0000\n"
+"PO-Revision-Date: 2015-12-28 11:45+0200\n"
 "Last-Translator: Miroslav Nikolić <miroslavnikolic at rocketmail.com>\n"
 "Language-Team: Serbian <gnom at prevod.org>\n"
+"Language: sr\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: Serbian (sr)\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
-"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-"X-Generator: Virtaal 0.5.2\n"
+"Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : "
+"n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
+"X-Project-Style: gnome\n"
 
-#: ../level/aceticacid.atomix.xml.h:1
+#: ../data/atomix.appdata.xml.in.h:1 ../data/atomix.desktop.in.h:1
+#: ../data/ui/interface.ui.h:1 ../src/main.c:128 ../src/main.c:669
+msgid "Atomix"
+msgstr "Atomiks"
+
+#: ../data/atomix.appdata.xml.in.h:2
+msgid "Build molecules out of single atoms"
+msgstr "Izgradite molekule od pojedinačnih atoma"
+
+#: ../data/atomix.appdata.xml.in.h:3
+msgid ""
+"Atomix is a puzzle game where your goal is to assemble molecules from "
+"compound atoms by moving them on the playfield. However, atoms don't just "
+"move wherever you want to move them to, they slide until they hit either a "
+"wall or another atom."
+msgstr ""
+"Atomiks je igra slagalice u kojoj je vaš cilj da sastavite molekule od "
+"osnovnih atoma premeštajući ih po polju igre. Međutim, atomi jednostavno ne "
+"idu tamo gde vi želite da ih premestite, već se pomeraju sve dok ne udare "
+"ili u zid ili u drugi atom."
+
+#: ../data/atomix.appdata.xml.in.h:4
+msgid ""
+"Try to build the molecules as fast as you can on each level to earn a higher "
+"score."
+msgstr ""
+"Pokušajte da izgradite molekule što brže možete na svakom nivou da ostvarite "
+"veći rezultat."
+
+#: ../data/atomix.desktop.in.h:2
+msgid "Molecule puzzle game"
+msgstr "Logička slagalica sa molekulima"
+
+#: ../data/atomix.desktop.in.h:3 ../src/main.c:131
+msgid "A puzzle game about atoms and molecules"
+msgstr "Logička slagalica sa atomima i molekulima"
+
+#: ../data/level/aceticacid.atomix.xml.h:1
 msgid "Acetic Acid"
 msgstr "Acetna kiselina"
 
-#: ../level/acetone.atomix.xml.h:1
+#: ../data/level/acetone.atomix.xml.h:1
 msgid "Acetone"
 msgstr "Acetin"
 
-#: ../level/butanol.atomix.xml.h:1
+#: ../data/level/butanol.atomix.xml.h:1
 msgid "Butanol"
 msgstr "Butanol"
 
-#: ../level/cyclobutane.atomix.xml.h:1
+#: ../data/level/cyclobutane.atomix.xml.h:1
 msgid "Cyclobutane"
 msgstr "Ciklobutan"
 
-#: ../level/dimethylether.atomix.xml.h:1
+#: ../data/level/dimethylether.atomix.xml.h:1
 msgid "Dimethyl Ether"
 msgstr "Dimetil Eter"
 
-#: ../level/ethanal.atomix.xml.h:1
+#: ../data/level/ethanal.atomix.xml.h:1
 msgid "Ethanal"
 msgstr "Etanal"
 
-#: ../level/ethane.atomix.xml.h:1
+#: ../data/level/ethane.atomix.xml.h:1
 msgid "Ethane"
 msgstr "Etan"
 
-#: ../level/ethanol.atomix.xml.h:1
+#: ../data/level/ethanol.atomix.xml.h:1
 msgid "Ethanol"
 msgstr "Etanol"
 
-#: ../level/ethylene.atomix.xml.h:1
+#: ../data/level/ethylene.atomix.xml.h:1
 msgid "Ethylene"
 msgstr "Etalin"
 
-#: ../level/glycerin.atomix.xml.h:1
+#: ../data/level/glycerin.atomix.xml.h:1
 msgid "Glycerin"
 msgstr "Glicerin"
 
-#: ../level/lactic-acid.atomix.xml.h:1
+#: ../data/level/lactic-acid.atomix.xml.h:1
 msgid "Lactic Acid"
 msgstr "Mlečna kiselina"
 
-#: ../level/methanal.atomix.xml.h:1
+#: ../data/level/methanal.atomix.xml.h:1
 msgid "Methanal"
 msgstr "Metanal"
 
-#: ../level/methane.atomix.xml.h:1
+#: ../data/level/methane.atomix.xml.h:1
 msgid "Methane"
 msgstr "Metan"
 
-#: ../level/methanol.atomix.xml.h:1
+#: ../data/level/methanol.atomix.xml.h:1
 msgid "Methanol"
 msgstr "Metanol"
 
-#: ../level/propanal.atomix.xml.h:1
+#: ../data/level/propanal.atomix.xml.h:1
 msgid "Propanal"
 msgstr "Propanol"
 
-#: ../level/propylene.atomix.xml.h:1
+#: ../data/level/propylene.atomix.xml.h:1
 msgid "Propylene"
 msgstr "Propilen"
 
-#: ../level/pyran.atomix.xml.h:1
+#: ../data/level/pyran.atomix.xml.h:1
 msgid "Pyran"
 msgstr "Piran"
 
-#: ../level/transbutylen.atomix.xml.h:1
+#: ../data/level/transbutylen.atomix.xml.h:1
 msgid "Trans Butylen"
 msgstr "Trans-butelin"
 
-#: ../level/water.atomix.xml.h:1
+#: ../data/level/water.atomix.xml.h:1
 msgid "Water"
 msgstr "Voda"
 
-#: ../src/games-runtime.c:273
-msgid "Could not show link"
-msgstr "Ne mogu da prikažem vezicu"
-
-#: ../src/games-scores-dialog.c:113
-msgid "Time"
-msgstr "Vreme:"
-
-#. Note that this assumes the default style is plain.
-#: ../src/games-scores-dialog.c:118 ../src/games-scores-dialog.c:545
-msgid "Score"
-msgstr "Rezultat:"
-
-#. Translators: this is for a minutes, seconds time display.
-#: ../src/games-scores-dialog.c:276
-#, c-format
-msgid "%dm %ds"
-msgstr "%dm %ds"
-
-#: ../src/games-scores-dialog.c:437 ../src/main.c:736
-msgid "New Game"
-msgstr "Nova igra"
-
-#: ../src/games-scores-dialog.c:537
-msgid "Name"
-msgstr "Igra"
+#: ../data/ui/interface.ui.h:2
+msgid "_File"
+msgstr "_Datoteka"
 
-#. Empty title shows up as "<unnamed>" on maemo
-#: ../src/games-show.c:151
-msgid "Error"
-msgstr "Greška"
+#: ../data/ui/interface.ui.h:3
+#| msgid "New Game"
+msgid "_New Game"
+msgstr "_Nova igra"
 
-#: ../src/level-manager.c:176
-msgid "Couldn't find level sequence description."
-msgstr "Ne mogu pronaći opis akcija nivoa."
+#: ../data/ui/interface.ui.h:4
+#| msgid "End Game"
+msgid "_End Game"
+msgstr "_Kraj igre"
 
-#: ../src/level-manager.c:190
-msgid "No level found."
-msgstr "Nivo nije pronađen."
+#: ../data/ui/interface.ui.h:5
+#| msgid "Skip Level"
+msgid "_Skip Level"
+msgstr "Preskoči _nivo"
 
-#: ../src/level-manager.c:286
-#, c-format
-msgid "Found level '%s' in: %s"
-msgstr "Pronađen nivo „%s“ u: %s"
+#: ../data/ui/interface.ui.h:6
+#| msgid "Reset Level"
+msgid "_Reset Level"
+msgstr "_Ponovo postavi nivo"
 
-#: ../src/main.c:121 ../src/main.c:775 ../src/main.c:832
-#: ../atomix.desktop.in.h:1
-msgid "Atomix"
-msgstr "Atomiks"
+#: ../data/ui/interface.ui.h:7
+#| msgid "_Undo move"
+msgid "_Undo Move"
+msgstr "_Opozovi potez"
 
-#: ../src/main.c:166
-msgid "A puzzle game about atoms and molecules"
-msgstr "Logička slagalica sa atomima i molekulima"
+#: ../data/ui/interface.ui.h:8
+msgid "_Pause Game"
+msgstr "Pauziraj _igru"
 
-#: ../src/main.c:170
-msgid "translator-credits"
-msgstr ""
-"Aleksandar Urošević <urke at gmx.net>\n"
-"\n"
-"http://prevod.org — prevodi na srpski jezik"
+#: ../data/ui/interface.ui.h:9
+msgid "_Continue Game"
+msgstr "_Nastavi igru"
 
-#: ../src/main.c:493
-msgid "Congratulations! You have finished all Atomix levels."
-msgstr "Čestitam! Prešli ste sve nivoe Atomiksa."
+#: ../data/ui/interface.ui.h:10
+msgid "_Quit"
+msgstr "_Izađi"
 
-#: ../src/main.c:503
-msgid "Couldn't find at least one level."
-msgstr "Ne mogu pronaći nijedan nivo."
+#: ../data/ui/interface.ui.h:11
+msgid "_Help"
+msgstr "Po_moć"
 
-#: ../src/main.c:508
-msgid "Do you want to finish the game?"
-msgstr "Želite li da završite igru?"
+#: ../data/ui/interface.ui.h:12
+#| msgid "About"
+msgid "_About"
+msgstr "_O igri"
 
-#. create statistics frame
-#: ../src/main.c:701
-msgid "Statistics"
-msgstr "Statistika"
-
-#: ../src/main.c:707
+#: ../data/ui/interface.ui.h:13
 msgid "Level:"
 msgstr "Nivo:"
 
-#: ../src/main.c:708
+#: ../data/ui/interface.ui.h:14
 msgid "Molecule:"
 msgstr "Molekul:"
 
-#: ../src/main.c:709
+#: ../data/ui/interface.ui.h:15
 msgid "Formula:"
 msgstr "Formula:"
 
-#: ../src/main.c:710
+#: ../data/ui/interface.ui.h:16
 msgid "Score:"
 msgstr "Rezultat:"
 
-#: ../src/main.c:711
+#: ../data/ui/interface.ui.h:17
 msgid "Time:"
 msgstr "Vreme:"
 
-#: ../src/main.c:734
-msgid "_Game"
-msgstr "_Igra"
+#: ../data/ui/interface.ui.h:18
+msgid "empty"
+msgstr "prazno"
 
-#: ../src/main.c:735
-msgid "_Help"
-msgstr "_Pomoć"
+#: ../data/ui/interface.ui.h:19
+msgid "Statistics"
+msgstr "Statistika"
+
+#: ../data/ui/interface.ui.h:20
+msgid "New Game"
+msgstr "Nova igra"
 
-#: ../src/main.c:737
+#: ../data/ui/interface.ui.h:21
 msgid "End Game"
 msgstr "Kraj igre"
 
-#: ../src/main.c:738
+#: ../data/ui/interface.ui.h:22
 msgid "Skip Level"
 msgstr "Preskoči nivo"
 
-#: ../src/main.c:739
+#: ../data/ui/interface.ui.h:23
 msgid "Reset Level"
 msgstr "Ponovo postavi nivo"
 
-#: ../src/main.c:741
-msgid "_Pause Game"
-msgstr "Pauziraj igru"
+#: ../data/ui/interface.ui.h:24
+#| msgid "_Undo move"
+msgid "Undo Move"
+msgstr "Opozovi potez"
 
-#: ../src/main.c:742
-msgid "_Continue Game"
-msgstr "_Nastavi igru"
+#: ../data/ui/interface.ui.h:25
+#| msgid "_Pause Game"
+msgid "Pause Game"
+msgstr "Pauziraj igru"
 
-#: ../src/main.c:743
-msgid "_Scores..."
-msgstr "_Rezultati ..."
+#: ../data/ui/interface.ui.h:26
+#| msgid "_Continue Game"
+msgid "Continue Game"
+msgstr "Nastavi igru"
 
-#: ../src/main.c:745
+#: ../data/ui/interface.ui.h:27
 msgid "About"
 msgstr "O igri"
 
-#: ../src/theme-manager.c:136
+#: ../data/ui/interface.ui.h:28
+msgid "Quit"
+msgstr "Izađi"
+
+#: ../src/board-gtk.c:338
+msgid ""
+"Guide the atoms through the maze to form molecules.\n"
+"Click, or use the arrow keys and Enter, to select an atom and move it.\n"
+"Be careful, though: an atom keeps moving until it hits a wall.\n"
+msgstr ""
+"Vodite atome kroz gomilu kako bi stvorili molekule.\n"
+"Pritisnite taster miša, ili koristite tastere strelica i Unesi, da izaberete "
+"atom i da ga premestite.\n"
+"Budite pažljivi, jer: atom nastavlja da se kreće sve dok ne lupi o zid.\n"
+
+#: ../src/level-manager.c:200
+msgid "Couldn't find level sequence description."
+msgstr "Ne mogu pronaći opis radnji nivoa."
+
+#: ../src/level-manager.c:214
+msgid "No level found."
+msgstr "Nivo nije pronađen."
+
+#: ../src/level-manager.c:283
+#, c-format
+msgid "Found level '%s' in: %s"
+msgstr "Pronađen nivo „%s“ u: %s"
+
+#: ../src/main.c:135
+msgid "translator-credits"
+msgstr ""
+"Aleksandar Urošević <urke at gmx.net>\n"
+"Miroslav Nikolić <miroslavnikolic at rocketmail.com>\n"
+"\n"
+"http://prevod.org — prevodi na srpski jezik"
+
+#: ../src/main.c:438
+msgid "Congratulations! You have finished all Atomix levels."
+msgstr "Čestitam! Prešli ste sve nivoe Atomiksa."
+
+#: ../src/theme-manager.c:225
 msgid "No themes found."
 msgstr "Tema nije pronađena."
 
-#: ../src/theme-manager.c:194
+#: ../src/theme-manager.c:283
 #, c-format
 msgid "Found theme '%s' in: %s"
 msgstr "Pronađena je tema „%s‟ u: %s"
 
-#: ../atomix.desktop.in.h:2
-msgid "Molecule puzzle game"
-msgstr "Logička slagalica sa molekulima"
+#~ msgid "Could not show link"
+#~ msgstr "Ne mogu da prikažem vezicu"
+
+#~ msgid "Time"
+#~ msgstr "Vreme:"
+
+#~ msgid "Score"
+#~ msgstr "Rezultat:"
+
+#~ msgid "%dm %ds"
+#~ msgstr "%dm %ds"
+
+#~ msgid "Name"
+#~ msgstr "Igra"
+
+#~ msgid "Error"
+#~ msgstr "Greška"
+
+#~ msgid "Couldn't find at least one level."
+#~ msgstr "Ne mogu pronaći nijedan nivo."
+
+#~ msgid "Do you want to finish the game?"
+#~ msgstr "Želite li da završite igru?"
+
+#~ msgid "_Game"
+#~ msgstr "_Igra"
+
+#~ msgid "_Scores..."
+#~ msgstr "_Rezultati ..."
 
 #~ msgid "Continue paused game"
 #~ msgstr "Nastavak pauzirane igre"
@@ -273,9 +355,6 @@ msgstr "Logička slagalica sa molekulima"
 #~ msgid "_Preferences ..."
 #~ msgstr "_Podešavanja ..."
 
-#~ msgid "_Undo move"
-#~ msgstr "_Opozovi potez"
-
 # note(slobo): bez uobičajenog persiranja, ovo je za decu! Mada deci TREBA
 # persirati!
 #~ msgid ""
diff --git a/po/tr.po b/po/tr.po
index 5f99e2f..55f0834 100644
--- a/po/tr.po
+++ b/po/tr.po
@@ -2,28 +2,29 @@
 # Copyright (C) 2001 Free Software Foundation, Inc.
 # A.Burak Ilgicioglu <ilgici at turk.net>, 2001.
 # Görkem Çetin <gorkem at gelecek.com.tr>, 2002.
-# Muhammet Kara <muhammet.k at gmail.com>, 2011.
 # Kaan Özdinçer <kaanozdincer at gmail.com>, 2015.
+# Muhammet Kara <muhammetk at gmail.com>, 2011, 2015.
+#
 msgid ""
 msgstr ""
 "Project-Id-Version: atomix 0.4.3\n"
-"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=atomix&"
-"keywords=I18N+L10N&component=general\n"
-"POT-Creation-Date: 2015-01-18 17:28+0000\n"
-"PO-Revision-Date: 2015-06-11 17:03+0000\n"
-"Last-Translator: Kaan Özdinçer <kaanozdincer at gmail.com>\n"
-"Language-Team: Turkish <gnome-turk at gnome.org>\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"product=atomix&keywords=I18N+L10N&component=general\n"
+"POT-Creation-Date: 2015-12-31 15:57+0000\n"
+"PO-Revision-Date: 2015-12-31 22:38+0200\n"
+"Last-Translator: Muhammet Kara <muhammetk at gmail.com>\n"
+"Language-Team: Türkçe <gnome-turk at gnome.org>\n"
 "Language: tr\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Pootle 2.5.1.1\n"
+"X-Generator: Gtranslator 2.91.7\n"
 "X-POOTLE-MTIME: 1434042213.000000\n"
 
 # editor/interface.c:225
 #: ../data/atomix.appdata.xml.in.h:1 ../data/atomix.desktop.in.h:1
-#: ../data/ui/interface.ui.h:1 ../src/main.c:686
+#: ../data/ui/interface.ui.h:1 ../src/main.c:128 ../src/main.c:669
 msgid "Atomix"
 msgstr "Atomix"
 
@@ -56,6 +57,10 @@ msgstr ""
 msgid "Molecule puzzle game"
 msgstr "Molekül yapboz oyunu"
 
+#: ../data/atomix.desktop.in.h:3 ../src/main.c:131
+msgid "A puzzle game about atoms and molecules"
+msgstr "Atomlar ve moleküller hakkında bir yapboz oyunu"
+
 #: ../data/level/aceticacid.atomix.xml.h:1
 msgid "Acetic Acid"
 msgstr "Asetik Asit"
@@ -138,29 +143,24 @@ msgstr "_Dosya"
 
 # editor/interface.c:2030
 #: ../data/ui/interface.ui.h:3
-#| msgid "New Game"
 msgid "_New Game"
 msgstr "_Yeni Oyun"
 
 #: ../data/ui/interface.ui.h:4
-#| msgid "End Game"
 msgid "_End Game"
 msgstr "Oyunu _Bitir"
 
 # src/interface.c:26
 #: ../data/ui/interface.ui.h:5
-#| msgid "Skip Level"
 msgid "_Skip Level"
 msgstr "Seviye _Atla"
 
 # editor/interface.c:68
 #: ../data/ui/interface.ui.h:6
-#| msgid "Reset Level"
 msgid "_Reset Level"
 msgstr "Seviyeyi _Sıfırla"
 
 #: ../data/ui/interface.ui.h:7
-#| msgid "_Undo move"
 msgid "_Undo Move"
 msgstr "Hareketi _Geri Al"
 
@@ -183,7 +183,6 @@ msgid "_Help"
 msgstr "_Yardım"
 
 #: ../data/ui/interface.ui.h:12
-#| msgid "About"
 msgid "_About"
 msgstr "_Hakkında"
 
@@ -219,40 +218,97 @@ msgstr "boş"
 msgid "Statistics"
 msgstr "İstatistikler"
 
-#: ../src/level-manager.c:207
+# editor/interface.c:2030
+#: ../data/ui/interface.ui.h:20
+#| msgid "_New Game"
+msgid "New Game"
+msgstr "Yeni Oyun"
+
+#: ../data/ui/interface.ui.h:21
+#| msgid "_End Game"
+msgid "End Game"
+msgstr "Oyunu Bitir"
+
+# src/interface.c:26
+#: ../data/ui/interface.ui.h:22
+#| msgid "_Skip Level"
+msgid "Skip Level"
+msgstr "Seviyeyi Atla"
+
+# editor/interface.c:68
+#: ../data/ui/interface.ui.h:23
+#| msgid "_Reset Level"
+msgid "Reset Level"
+msgstr "Seviyeyi Sıfırla"
+
+#: ../data/ui/interface.ui.h:24
+#| msgid "_Undo Move"
+msgid "Undo Move"
+msgstr "Hareketi Geri Al"
+
+# src/interface.c:35
+#: ../data/ui/interface.ui.h:25
+#| msgid "_Pause Game"
+msgid "Pause Game"
+msgstr "Oyunu Duraklat"
+
+# src/interface.c:35
+#: ../data/ui/interface.ui.h:26
+#| msgid "_Continue Game"
+msgid "Continue Game"
+msgstr "Oyuna Devam Et"
+
+#: ../data/ui/interface.ui.h:27
+#| msgid "_About"
+msgid "About"
+msgstr "Hakkında"
+
+#: ../data/ui/interface.ui.h:28
+#| msgid "_Quit"
+msgid "Quit"
+msgstr "Çıkış"
+
+#: ../src/board-gtk.c:338
+msgid ""
+"Guide the atoms through the maze to form molecules.\n"
+"Click, or use the arrow keys and Enter, to select an atom and move it.\n"
+"Be careful, though: an atom keeps moving until it hits a wall.\n"
+msgstr ""
+"Molekülleri oluşturmak için atomlara labirentte rehberlik edin.\n"
+"Bir atomu seçmek ve hareket ettirmek için tıklayın ya da ok tuşlarını ve "
+"Enter tuşunu kullanın.\n"
+"Ama dikkatli olun: bir atom duvara çarpana kadar hareket etmeye devam eder.\n"
+
+#: ../src/level-manager.c:200
 msgid "Couldn't find level sequence description."
 msgstr "Seviye sıra açıklaması bulunamadı."
 
 # src/main.c:163
-#: ../src/level-manager.c:221
+#: ../src/level-manager.c:214
 msgid "No level found."
 msgstr "Seviye bulunamadı."
 
-#: ../src/level-manager.c:317
+#: ../src/level-manager.c:283
 #, c-format
 msgid "Found level '%s' in: %s"
 msgstr "%s seviyesi bulundu: %s"
 
-#: ../src/main.c:132
-msgid "A puzzle game about atoms and molecules"
-msgstr "Atomlar ve moleküller hakkında bir yapboz oyunu"
-
-#: ../src/main.c:136
+#: ../src/main.c:135
 msgid "translator-credits"
 msgstr ""
 "Muhammet Kara <muhammet.k at gmail.com>\n"
 "Kaan Özdinçer <kaanozdincer at gmail.com>"
 
 # src/interface.c:616
-#: ../src/main.c:446
+#: ../src/main.c:438
 msgid "Congratulations! You have finished all Atomix levels."
 msgstr "Tebrikler! Tüm Atomix seviyelerini başarıyla bitirdiniz."
 
-#: ../src/theme-manager.c:224
+#: ../src/theme-manager.c:225
 msgid "No themes found."
 msgstr "Tema bulunamadı."
 
-#: ../src/theme-manager.c:282
+#: ../src/theme-manager.c:283
 #, c-format
 msgid "Found theme '%s' in: %s"
 msgstr "%s teması bulundu: %s"
diff --git a/src/Makefile.am b/src/Makefile.am
index 55bd8a3..8e40ef8 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -15,6 +15,7 @@ bin_PROGRAMS = atomix
 noinst_PROGRAMS = pf-test
 
 atomix_SOURCES = \
+	atomix-application.h \
 	main.c main.h \
 	board-gtk.c board-gtk.h	\
 	undo.c undo.h \
diff --git a/src/main.h b/src/atomix-application.h
similarity index 87%
copy from src/main.h
copy to src/atomix-application.h
index a5e51d7..1b07e59 100644
--- a/src/main.h
+++ b/src/atomix-application.h
@@ -1,6 +1,7 @@
 /* Atomix -- a little puzzle game about atoms and molecules.
  * Copyright (C) 1999 Jens Finke
  * Copyright (C) 2005 Guilherme de S. Pastore
+ * Copyright (C) 2015 Robert Roth
  *
  * 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
@@ -17,15 +18,14 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
  */
 
-#ifndef _ATOMIX_MAIN_H_
-#define _ATOMIX_MAIN_H_
+#ifndef _ATOMIX_APPLICATION_H_
+#define _ATOMIX_APPLICATION_H_
 
-#include <glib.h>
-#include <glib/gi18n.h>
 #include <gtk/gtk.h>
 #include "theme-manager.h"
 #include "level-manager.h"
 #include "goal.h"
+#include "atomix-application.h"
 
 typedef enum
 {
@@ -38,7 +38,7 @@ typedef enum
 typedef struct
 {
   GtkWidget *mainwin;
-  GHashTable *actions;
+  GApplication *app_instance;
 
   GtkWidget *fi_matrix;
   GtkWidget *fi_goal;
@@ -59,7 +59,4 @@ typedef struct
   guint score;
 } AtomixApp;
 
-void game_level_finished (void);
-void update_menu_item_state (void);
-
-#endif /* _ATOMIX_MAIN_H_ */
+#endif /* _ATOMIX_APPLICATION_H_ */
diff --git a/src/main.c b/src/main.c
index 5b90401..d2342a1 100644
--- a/src/main.c
+++ b/src/main.c
@@ -67,47 +67,47 @@ static void calculate_score (void);
              Menu callback  functions 
 
 -------------------------------------------------------------- */
-static void verb_GameNew_cb (GtkMenuItem * action, gpointer data)
+static void verb_GameNew_cb (GSimpleAction *action, GVariant *variant, gpointer data)
 {
   controller_handle_action (GAME_ACTION_NEW);
 }
 
-static void verb_GameEnd_cb (GtkMenuItem * action, gpointer data)
+static void verb_GameEnd_cb (GSimpleAction *action, GVariant *variant, gpointer data)
 {
   controller_handle_action (GAME_ACTION_END);
 }
 
-static void verb_GameSkip_cb (GtkMenuItem * action, gpointer data)
+static void verb_GameSkip_cb (GSimpleAction *action, GVariant *variant, gpointer data)
 {
   controller_handle_action (GAME_ACTION_SKIP);
 }
 
-static void verb_GameReset_cb (GtkMenuItem * action, gpointer data)
+static void verb_GameReset_cb (GSimpleAction *action, GVariant *variant, gpointer data)
 {
   controller_handle_action (GAME_ACTION_RESTART);
 }
 
-static void verb_GamePause_cb (GtkMenuItem * action, gpointer data)
+static void verb_GamePause_cb (GSimpleAction *action, GVariant *variant, gpointer data)
 {
   controller_handle_action (GAME_ACTION_PAUSE);
 }
 
-static void verb_GameContinue_cb (GtkMenuItem * action, gpointer data)
+static void verb_GameContinue_cb (GSimpleAction *action, GVariant *variant, gpointer data)
 {
   controller_handle_action (GAME_ACTION_CONTINUE);
 }
 
-static void verb_GameUndo_cb (GtkMenuItem * action, gpointer data)
+static void verb_GameUndo_cb (GSimpleAction *action, GVariant *variant, gpointer data)
 {
   controller_handle_action (GAME_ACTION_UNDO);
 }
 
-static void verb_GameExit_cb (GtkMenuItem * action, gpointer data)
+static void verb_GameExit_cb (GSimpleAction *action, GVariant *variant, gpointer data)
 {
   atomix_exit ();
 }
 
-static void verb_HelpAbout_cb (GtkMenuItem * action, gpointer data)
+static void verb_HelpAbout_cb (GSimpleAction *action, GVariant *variant, gpointer data)
 {
   const char *authors[] =
     {
@@ -123,8 +123,10 @@ static void verb_HelpAbout_cb (GtkMenuItem * action, gpointer data)
       NULL
     };
 
+
   gtk_show_about_dialog(GTK_WINDOW(app->mainwin),
   					"program-name", _("Atomix"),
+					"logo-icon-name", "atomix",
   					"version", VERSION,
   					"comments", _("A puzzle game about atoms and molecules"),
   					"website", "https://github.com/GNOME/atomix",
@@ -356,13 +358,9 @@ static void atomix_exit (void)
   if (app->tm)
     g_object_unref (app->tm);
 
-  if (app->actions)
-    g_hash_table_destroy (app->actions);
-
   /* quit application */
   gtk_widget_destroy (app->mainwin);
 
-  gtk_main_quit ();
 }
 
 static gboolean on_key_press_event (GObject *widget, GdkEventKey *event,
@@ -494,6 +492,24 @@ typedef struct
   gboolean enabled;
 } CmdEnable;
 
+
+static const GActionEntry app_entries[] =
+  {
+    { "GameAbout", verb_HelpAbout_cb, NULL, NULL, NULL},
+    { "GameQuit", verb_GameExit_cb, NULL, NULL, NULL}
+  };
+
+static const GActionEntry win_entries[] =
+  {
+    { "GameNew", verb_GameNew_cb, NULL, NULL, NULL},
+    { "GameEnd", verb_GameEnd_cb, NULL, NULL, NULL},
+    { "GameSkip", verb_GameSkip_cb, NULL, NULL, NULL},
+    { "GameReset", verb_GameReset_cb, NULL, NULL, NULL},
+    { "GameUndo", verb_GameUndo_cb, NULL, NULL, NULL},
+    { "GamePause", verb_GamePause_cb, NULL, NULL, NULL},
+    { "GameContinue", verb_GameContinue_cb, NULL, NULL, NULL},
+  };
+
 static const CmdEnable not_running[] =
   {
     { "GameNew",      TRUE  },
@@ -551,12 +567,12 @@ void update_menu_item_state (void)
 {
   gint i;
   const CmdEnable *cmd_list = state_sensitivity[app->state];
-  GtkWidget *widget;
+  GAction *action;
 
   for (i = 0; cmd_list[i].cmd != NULL; i++)
     {
-      widget = g_hash_table_lookup (app->actions, cmd_list[i].cmd);
-      gtk_widget_set_sensitive (widget, cmd_list[i].enabled);
+      action = g_action_map_lookup_action (G_ACTION_MAP (app->mainwin), cmd_list[i].cmd);
+      g_simple_action_set_enabled (G_SIMPLE_ACTION (action), cmd_list[i].enabled);
     }
 }
 
@@ -565,67 +581,26 @@ void update_menu_item_state (void)
              GUI creation  functions 
 
 -------------------------------------------------------------- */
-static AtomixApp *create_gui (void)
+static AtomixApp *create_gui (GApplication *app_instance)
 {
   AtomixApp *app;
   gchar *ui_path;
-  gchar *icon_path;
   GtkBuilder *builder;
   GtkWidget *stats_grid;
   GtkWidget *time_label;
-  GtkWidget *menu_item;
 
   app = g_new0 (AtomixApp, 1);
   app->level = NULL;
+  app->app_instance = app_instance;
 
   builder = gtk_builder_new ();
-  
+
   ui_path = g_build_filename (PKGDATADIR, "ui", "interface.ui", NULL);
   gtk_builder_add_from_file (builder, ui_path, NULL);
   g_free (ui_path);
 
-//  ui_path = g_build_filename (PKGDATADIR, "ui", "menus.ui", NULL);
-//  gtk_builder_add_from_file (builder, ui_path, NULL);
-//  g_free (ui_path);
-
   app->mainwin = GTK_WIDGET (gtk_builder_get_object (builder, "mainwin"));
 
-  app->actions = g_hash_table_new (NULL, NULL);
-
-  menu_item = GTK_WIDGET (gtk_builder_get_object (builder, "gameNew"));
-  g_hash_table_insert (app->actions, "GameNew", menu_item);
-  g_signal_connect (menu_item, "activate", (GCallback)verb_GameNew_cb, NULL);
-
-  menu_item = GTK_WIDGET (gtk_builder_get_object (builder, "gameEnd"));
-  g_hash_table_insert (app->actions, "GameEnd", menu_item);
-  g_signal_connect (menu_item, "activate", (GCallback)verb_GameEnd_cb, NULL);
-
-  menu_item = GTK_WIDGET (gtk_builder_get_object (builder, "gameSkip"));
-  g_hash_table_insert (app->actions, "GameSkip", menu_item);
-  g_signal_connect (menu_item, "activate", (GCallback)verb_GameSkip_cb, NULL);
-
-  menu_item = GTK_WIDGET (gtk_builder_get_object (builder, "gameReset"));
-  g_hash_table_insert (app->actions, "GameReset", menu_item);
-  g_signal_connect (menu_item, "activate", (GCallback)verb_GameReset_cb, NULL);
-
-  menu_item = GTK_WIDGET (gtk_builder_get_object (builder, "gameUndo"));
-  g_hash_table_insert (app->actions, "GameUndo", menu_item);
-  g_signal_connect (menu_item, "activate", (GCallback)verb_GameUndo_cb, NULL);
-
-  menu_item = GTK_WIDGET (gtk_builder_get_object (builder, "gamePause"));
-  g_hash_table_insert (app->actions, "GamePause", menu_item);
-  g_signal_connect (menu_item, "activate", (GCallback)verb_GamePause_cb, NULL);
-
-  menu_item = GTK_WIDGET (gtk_builder_get_object (builder, "gameContinue"));
-  g_hash_table_insert (app->actions, "GameContinue", menu_item);
-  g_signal_connect (menu_item, "activate", (GCallback)verb_GameContinue_cb, NULL);
-
-  menu_item = GTK_WIDGET (gtk_builder_get_object (builder, "gameQuit"));
-  g_signal_connect (menu_item, "activate", (GCallback)verb_GameExit_cb, NULL);
-
-  menu_item = GTK_WIDGET (gtk_builder_get_object (builder, "gameAbout"));
-  g_signal_connect (menu_item, "activate", (GCallback)verb_HelpAbout_cb, NULL);
-
   g_signal_connect (G_OBJECT (app->mainwin), "delete_event",
                     (GCallback) on_app_destroy_event, app);
 
@@ -648,54 +623,60 @@ static AtomixApp *create_gui (void)
   app->lb_formula = GTK_WIDGET (gtk_builder_get_object (builder, "formula_value"));
   app->lb_score = GTK_WIDGET (gtk_builder_get_object (builder, "score_value"));
 
-  g_object_unref (builder);
+  gtk_widget_show_all (GTK_WIDGET (app->mainwin));
 
-  icon_path = g_build_filename (DATADIR,
-							    "pixmaps",
-							    "atomix-icon.png",
-							    NULL);
-  gtk_window_set_default_icon_from_file (icon_path,
-					 		   NULL);
-  g_free (icon_path);
 
-  gtk_widget_show_all (GTK_WIDGET (app->mainwin));
+  if (gtk_application_prefers_app_menu (GTK_APPLICATION (app_instance))) {
+    GMenu * menu = G_MENU (gtk_builder_get_object (builder, "app-menu"));
+    gtk_application_set_app_menu (GTK_APPLICATION (app->app_instance), G_MENU_MODEL (menu));
+//    GtkWidget *menubar = GTK_WIDGET (gtk_builder_get_object (builder, "menubar"));
+//    gtk_widget_set_visible (menubar, FALSE);
+  }
+
+  g_object_unref (builder);
 
   return app;
 }
 
-int main (int argc, char *argv[])
+static void
+app_activate (GApplication *app_instance, gpointer user_data)
 {
-  GOptionContext *context;
-  gboolean retval;
-  GError *error = NULL;
-
-  context = g_option_context_new (NULL);
-  g_option_context_set_translation_domain (context, GETTEXT_PACKAGE);
-  g_option_context_add_group (context, gtk_get_option_group (TRUE));
-
-  retval = g_option_context_parse (context, &argc, &argv, &error);
-  g_option_context_free (context);
-  if (!retval) {
-    g_print ("%s", error->message);
-    g_error_free (error);
-    exit (1);
+
+  if (app == NULL) {
+    /* make a few initalisations here */
+    g_action_map_add_action_entries (G_ACTION_MAP (app_instance), app_entries, G_N_ELEMENTS (app_entries), app_instance);
+
+    app = create_gui (app_instance);
+    g_action_map_add_action_entries (G_ACTION_MAP (app->mainwin), win_entries, G_N_ELEMENTS (win_entries), app_instance);
+
+    game_init ();
+    gtk_widget_set_size_request (GTK_WIDGET (app->mainwin), 678, 520);
+
+    //gtk_window_set_resizable (GTK_WINDOW (app->mainwin), FALSE);
+    gtk_widget_show (app->mainwin);
+    gtk_application_add_window (GTK_APPLICATION (app_instance), GTK_WINDOW (app->mainwin));
+  } else {
+    gtk_window_present (GTK_WINDOW (app->mainwin));
   }
+}
+
+int main (int argc, char *argv[])
+{
+  GtkApplication *gtk_app;
+
+  int status;
 
   g_set_application_name (_("Atomix"));
 
   bindtextdomain (GETTEXT_PACKAGE, GNOMELOCALEDIR);
   bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
   textdomain (GETTEXT_PACKAGE);
-  
-  /* make a few initalisations here */
-  app = create_gui ();
 
-  game_init ();
+  gtk_app = gtk_application_new ("org.gnome.atomix", G_APPLICATION_FLAGS_NONE);
+  g_signal_connect (gtk_app, "activate", G_CALLBACK (app_activate), NULL);
 
-  gtk_widget_set_size_request (GTK_WIDGET (app->mainwin), 678, 520);
-  //gtk_window_set_resizable (GTK_WINDOW (app->mainwin), FALSE);
-  gtk_widget_show (app->mainwin);
+  status = g_application_run (G_APPLICATION (gtk_app), argc, argv);
+  g_object_unref (gtk_app);
 
-  gtk_main ();
-  return 0;
+  return status;
 }
diff --git a/src/main.h b/src/main.h
index a5e51d7..f2efd0e 100644
--- a/src/main.h
+++ b/src/main.h
@@ -20,44 +20,8 @@
 #ifndef _ATOMIX_MAIN_H_
 #define _ATOMIX_MAIN_H_
 
-#include <glib.h>
 #include <glib/gi18n.h>
-#include <gtk/gtk.h>
-#include "theme-manager.h"
-#include "level-manager.h"
-#include "goal.h"
-
-typedef enum
-{
-  GAME_STATE_NOT_RUNNING,
-  GAME_STATE_RUNNING_UNMOVED,
-  GAME_STATE_RUNNING,
-  GAME_STATE_PAUSED
-} GameState;
-
-typedef struct
-{
-  GtkWidget *mainwin;
-  GHashTable *actions;
-
-  GtkWidget *fi_matrix;
-  GtkWidget *fi_goal;
-  GtkWidget *lb_level;
-  GtkWidget *lb_name;
-  GtkWidget *lb_formula;
-  GtkWidget *lb_score;
-  GtkWidget *clock;
-
-  LevelManager *lm;
-  ThemeManager *tm;
-  Theme *theme;
-
-  GameState state;
-  Level *level;
-  Goal *goal;
-  gint level_no;
-  guint score;
-} AtomixApp;
+#include "atomix-application.h"
 
 void game_level_finished (void);
 void update_menu_item_state (void);

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/atomix.git



More information about the Pkg-games-commits mailing list