diff -Nru atomix-3.19.3/autogen.sh atomix-3.19.4/autogen.sh --- atomix-3.19.3/autogen.sh 2015-12-14 17:23:54.000000000 +0000 +++ atomix-3.19.4/autogen.sh 2016-01-18 21:09:32.000000000 +0000 @@ -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 @@ exit 1 } -USE_GNOME2_MACROS=1 . gnome-autogen.sh +. gnome-autogen.sh diff -Nru atomix-3.19.3/configure.ac atomix-3.19.4/configure.ac --- atomix-3.19.3/configure.ac 2015-12-14 17:23:54.000000000 +0000 +++ atomix-3.19.4/configure.ac 2016-01-18 21:09:32.000000000 +0000 @@ -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 -Nru atomix-3.19.3/data/atomix.desktop.in atomix-3.19.4/data/atomix.desktop.in --- atomix-3.19.3/data/atomix.desktop.in 2015-12-14 17:23:54.000000000 +0000 +++ atomix-3.19.4/data/atomix.desktop.in 2016-01-18 21:09:32.000000000 +0000 @@ -3,7 +3,7 @@ _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; Binary files /tmp/tmpAWAlsw/jaDiX5Od6b/atomix-3.19.3/data/atomix-icon.png and /tmp/tmpAWAlsw/2gwZ9tf27Q/atomix-3.19.4/data/atomix-icon.png differ diff -Nru atomix-3.19.3/data/atomix.svg atomix-3.19.4/data/atomix.svg --- atomix-3.19.3/data/atomix.svg 1970-01-01 00:00:00.000000000 +0000 +++ atomix-3.19.4/data/atomix.svg 2016-01-18 21:09:32.000000000 +0000 @@ -0,0 +1,198 @@ + + + + + Atomix icon + + + + + + + + + + + + + + + + + + + + image/svg+xml + + Atomix icon + + + + + + + + + Leonardo Pereira +Robert Roth + + + Vector icon for the GNOME Atomix game + + + + + + + + + + + + + + + + + + + + + + + + + diff -Nru atomix-3.19.3/data/Makefile.am atomix-3.19.4/data/Makefile.am --- atomix-3.19.3/data/Makefile.am 2015-12-14 17:23:54.000000000 +0000 +++ atomix-3.19.4/data/Makefile.am 2016-01-18 21:09:32.000000000 +0000 @@ -5,8 +5,8 @@ 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 -Nru atomix-3.19.3/data/ui/interface.ui atomix-3.19.4/data/ui/interface.ui --- atomix-3.19.3/data/ui/interface.ui 2015-12-14 17:23:54.000000000 +0000 +++ atomix-3.19.4/data/ui/interface.ui 2016-01-18 21:09:32.000000000 +0000 @@ -2,11 +2,12 @@ - + 678 520 False - 6 + 0 + atomix Atomix @@ -33,6 +34,7 @@ False _New Game True + win.GameNew @@ -42,6 +44,7 @@ False _End Game True + win.GameEnd @@ -56,6 +59,7 @@ False _Skip Level True + win.GameSkip @@ -65,6 +69,7 @@ False _Reset Level True + win.GameReset @@ -73,6 +78,7 @@ False _Undo Move True + win.GameUndo @@ -82,6 +88,7 @@ False _Pause Game True + win.GamePause @@ -91,6 +98,7 @@ False _Continue Game True + win.GameContinue @@ -106,6 +114,7 @@ False _Quit True + app.GameQuit @@ -128,6 +137,7 @@ True False _About + app.GameAbout True @@ -379,4 +389,52 @@ + +
+ + New Game + win.GameNew + <Primary>n + + + End Game + win.GameEnd + + + Skip Level + win.GameSkip + <Primary>s + + + Reset Level + win.GameReset + + + Undo Move + win.GameUndo + <Primary>z + + + Pause Game + win.GamePause + <Primary>c + + + Continue Game + win.GameContinue + <Primary>c + +
+
+ + About + app.GameAbout + + + Quit + app.GameQuit + <Primary>q + +
+
diff -Nru atomix-3.19.3/debian/atomix-data.install atomix-3.19.4/debian/atomix-data.install --- atomix-3.19.3/debian/atomix-data.install 2015-12-19 00:25:51.000000000 +0000 +++ atomix-3.19.4/debian/atomix-data.install 2016-01-24 15:35:43.000000000 +0000 @@ -1,5 +1,6 @@ -debian/atomix-icon.xpm usr/share/pixmaps +debian/atomix-icon.xpm usr/share/pixmaps usr/share/games/atomix -usr/share/games/pixmaps usr/share usr/share/locale -usr/share/games/appdata usr/share +usr/share/games/appdata usr/share +usr/share/games/icons/hicolor/scalable/apps usr/share/icons/hicolor/scalable + diff -Nru atomix-3.19.3/debian/changelog atomix-3.19.4/debian/changelog --- atomix-3.19.3/debian/changelog 2015-12-19 00:25:51.000000000 +0000 +++ atomix-3.19.4/debian/changelog 2016-01-24 15:35:43.000000000 +0000 @@ -1,3 +1,12 @@ +atomix (3.19.4-1) unstable; urgency=medium + + * Imported Upstream version 3.19.4. + * Vcs-Git: Use https. + * Drop icon-path.patch. No longer needed because a new svg icon is provided + now. + + -- Markus Koschany Sun, 24 Jan 2016 15:44:58 +0100 + atomix (3.19.3-1) unstable; urgency=medium * Imported Upstream version 3.19.3. diff -Nru atomix-3.19.3/debian/control atomix-3.19.4/debian/control --- atomix-3.19.3/debian/control 2015-12-19 00:25:51.000000000 +0000 +++ atomix-3.19.4/debian/control 2016-01-24 15:35:43.000000000 +0000 @@ -14,7 +14,7 @@ libxml2-dev Standards-Version: 3.9.6 Homepage: https://wiki.gnome.org/Apps/Atomix -Vcs-Git: git://anonscm.debian.org/pkg-games/atomix.git +Vcs-Git: https://anonscm.debian.org/pkg-games/atomix.git Vcs-Browser: https://anonscm.debian.org/cgit/pkg-games/atomix.git Package: atomix diff -Nru atomix-3.19.3/debian/copyright atomix-3.19.4/debian/copyright --- atomix-3.19.3/debian/copyright 2015-12-19 00:25:51.000000000 +0000 +++ atomix-3.19.4/debian/copyright 2016-01-24 15:35:43.000000000 +0000 @@ -5,7 +5,7 @@ Files: * Copyright: 1999-2002, Jens Finke 2005, Guilherme de S. Pastore - 2015, Robert Roth + 2015-2016, Robert Roth License: GPL-2+ Files: src/games-show.* @@ -20,7 +20,7 @@ Files: debian/* Copyright: 2010, Petter Reinholdtsen 2005-2012, Guilherme de S. Pastore - 2013-2015, Markus Koschany + 2013-2016, Markus Koschany License: GPL-2+ License: GPL-2+ diff -Nru atomix-3.19.3/debian/patches/icon-path.patch atomix-3.19.4/debian/patches/icon-path.patch --- atomix-3.19.3/debian/patches/icon-path.patch 2015-12-19 00:25:51.000000000 +0000 +++ atomix-3.19.4/debian/patches/icon-path.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,22 +0,0 @@ -From: Markus Koschany -Date: Sat, 3 Oct 2015 13:13:13 +0200 -Subject: icon path - -Forwarded: not-needed ---- - src/main.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/main.c b/src/main.c -index 5b90401..6198620 100644 ---- a/src/main.c -+++ b/src/main.c -@@ -650,7 +650,7 @@ static AtomixApp *create_gui (void) - - g_object_unref (builder); - -- icon_path = g_build_filename (DATADIR, -+ icon_path = g_build_filename ("/usr/share/", - "pixmaps", - "atomix-icon.png", - NULL); diff -Nru atomix-3.19.3/debian/patches/series atomix-3.19.4/debian/patches/series --- atomix-3.19.3/debian/patches/series 2015-12-19 00:25:51.000000000 +0000 +++ atomix-3.19.4/debian/patches/series 2016-01-24 15:35:43.000000000 +0000 @@ -1,2 +1 @@ fix-locale-dir.patch -icon-path.patch diff -Nru atomix-3.19.3/NEWS atomix-3.19.4/NEWS --- atomix-3.19.3/NEWS 2015-12-14 17:23:54.000000000 +0000 +++ atomix-3.19.4/NEWS 2016-01-18 21:09:32.000000000 +0000 @@ -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@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 -Nru atomix-3.19.3/po/cs.po atomix-3.19.4/po/cs.po --- atomix-3.19.3/po/cs.po 2015-12-14 17:23:54.000000000 +0000 +++ atomix-3.19.4/po/cs.po 2016-01-18 21:09:32.000000000 +0000 @@ -3,18 +3,19 @@ # Copyright (C) 1999, 2000, 2001, 2002 Jens Finke. # Copyright (C) 2006 Lukas Novotny . # This file is distributed under the same license as the atomix package. +# # Michal Bukovjan , 2002. # Miloslav Trmac , 2004. # Lukas Novotny , 2006. -# Marek Černocký , 2010, 2015. +# Marek Černocký , 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ý \n" "Language-Team: Czech \n" "Language: cs\n" @@ -25,7 +26,7 @@ "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 @@ "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 @@ "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 @@ 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 @@ 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ý \n" "Marek Černocký " -#: ../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 -Nru atomix-3.19.3/po/de.po atomix-3.19.4/po/de.po --- atomix-3.19.3/po/de.po 2015-12-14 17:23:54.000000000 +0000 +++ atomix-3.19.4/po/de.po 2016-01-18 21:09:32.000000000 +0000 @@ -6,24 +6,25 @@ # Jens Finke , 2006. # Mario Blättermann , 2010. # Wolfgang Stöggl , 2015. +# Mario Blättermann , 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 \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 \n" "Language-Team: German \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 @@ "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 @@ 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 @@ #: ../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 @@ 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 @@ 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 \n" "Christian Meyer \n" "Jens Finke \n" -"Mario Blättermann " +"Mario Blättermann " -#: ../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 @@ 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 -Nru atomix-3.19.3/po/es.po atomix-3.19.4/po/es.po --- atomix-3.19.3/po/es.po 2015-12-14 17:23:54.000000000 +0000 +++ atomix-3.19.4/po/es.po 2016-01-18 21:09:32.000000000 +0000 @@ -5,15 +5,15 @@ # Francisco Javier F. Serrador , 2003. # Jorge González , 2010. # -# Daniel Mustieles , 2015. , 2015. +# Daniel Mustieles , 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 \n" "Language-Team: Español; Castellano \n" "Language: \n" @@ -24,7 +24,7 @@ "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 @@ 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 @@ 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 @@ 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 , 2015\n" "Jorge González , 2010\n" "Francisco Javier F. Serrador " -#: ../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 -Nru atomix-3.19.3/po/pl.po atomix-3.19.4/po/pl.po --- atomix-3.19.3/po/pl.po 2015-12-14 17:23:54.000000000 +0000 +++ atomix-3.19.4/po/pl.po 2016-01-18 21:09:32.000000000 +0000 @@ -11,8 +11,8 @@ 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 \n" "Language-Team: Polish \n" "Language: pl\n" @@ -25,7 +25,7 @@ "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 @@ 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 @@ 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 @@ 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 , 2002\n" "Piotr Drąg , 2012-2015\n" "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 -Nru atomix-3.19.3/po/sr@latin.po atomix-3.19.4/po/sr@latin.po --- atomix-3.19.3/po/sr@latin.po 2015-12-14 17:23:54.000000000 +0000 +++ atomix-3.19.4/po/sr@latin.po 2016-01-18 21:09:32.000000000 +0000 @@ -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ć -# Miroslav Nikolić , 2011. +# Aleksandar Urošević , 2003—2006 +# Miroslav Nikolić , 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ć \n" "Language-Team: Serbian \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" +#: ../data/ui/interface.ui.h:2 +msgid "_File" +msgstr "_Datoteka" + +#: ../data/ui/interface.ui.h:3 +#| msgid "New Game" +msgid "_New Game" +msgstr "_Nova igra" + +#: ../data/ui/interface.ui.h:4 +#| msgid "End Game" +msgid "_End Game" +msgstr "_Kraj igre" + +#: ../data/ui/interface.ui.h:5 +#| msgid "Skip Level" +msgid "_Skip Level" +msgstr "Preskoči _nivo" + +#: ../data/ui/interface.ui.h:6 +#| msgid "Reset Level" +msgid "_Reset Level" +msgstr "_Ponovo postavi nivo" + +#: ../data/ui/interface.ui.h:7 +#| msgid "_Undo move" +msgid "_Undo Move" +msgstr "_Opozovi potez" -#: ../src/games-scores-dialog.c:537 -msgid "Name" -msgstr "Igra" - -#. Empty title shows up as "" on maemo -#: ../src/games-show.c:151 -msgid "Error" -msgstr "Greška" - -#: ../src/level-manager.c:176 -msgid "Couldn't find level sequence description." -msgstr "Ne mogu pronaći opis akcija nivoa." - -#: ../src/level-manager.c:190 -msgid "No level found." -msgstr "Nivo nije pronađen." - -#: ../src/level-manager.c:286 -#, c-format -msgid "Found level '%s' in: %s" -msgstr "Pronađen nivo „%s“ u: %s" - -#: ../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:8 +msgid "_Pause Game" +msgstr "Pauziraj _igru" -#: ../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:9 +msgid "_Continue Game" +msgstr "_Nastavi igru" -#: ../src/main.c:170 -msgid "translator-credits" -msgstr "" -"Aleksandar Urošević \n" -"\n" -"http://prevod.org — prevodi na srpski jezik" +#: ../data/ui/interface.ui.h:10 +msgid "_Quit" +msgstr "_Izađi" -#: ../src/main.c:493 -msgid "Congratulations! You have finished all Atomix levels." -msgstr "Čestitam! Prešli ste sve nivoe Atomiksa." - -#: ../src/main.c:503 -msgid "Couldn't find at least one level." -msgstr "Ne mogu pronaći nijedan nivo." - -#: ../src/main.c:508 -msgid "Do you want to finish the game?" -msgstr "Želite li da završite igru?" +#: ../data/ui/interface.ui.h:11 +msgid "_Help" +msgstr "Po_moć" -#. create statistics frame -#: ../src/main.c:701 -msgid "Statistics" -msgstr "Statistika" +#: ../data/ui/interface.ui.h:12 +#| msgid "About" +msgid "_About" +msgstr "_O igri" -#: ../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" +#: ../data/ui/interface.ui.h:24 +#| msgid "_Undo move" +msgid "Undo Move" +msgstr "Opozovi potez" + +#: ../data/ui/interface.ui.h:25 +#| msgid "_Pause Game" +msgid "Pause Game" msgstr "Pauziraj igru" -#: ../src/main.c:742 -msgid "_Continue Game" -msgstr "_Nastavi 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ć \n" +"Miroslav Nikolić \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 @@ #~ 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 -Nru atomix-3.19.3/po/sr.po atomix-3.19.4/po/sr.po --- atomix-3.19.3/po/sr.po 2015-12-14 17:23:54.000000000 +0000 +++ atomix-3.19.4/po/sr.po 2016-01-18 21:09:32.000000000 +0000 @@ -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: Александар Урошевић -# Мирослав Николић , 2011. +# Александар Урошевић , 2003—2006 +# Мирослав Николић , 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: Мирослав Николић \n" "Language-Team: Serbian \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 "Нова игра" +#: ../data/ui/interface.ui.h:2 +msgid "_File" +msgstr "_Датотека" + +#: ../data/ui/interface.ui.h:3 +#| msgid "New Game" +msgid "_New Game" +msgstr "_Нова игра" + +#: ../data/ui/interface.ui.h:4 +#| msgid "End Game" +msgid "_End Game" +msgstr "_Крај игре" + +#: ../data/ui/interface.ui.h:5 +#| msgid "Skip Level" +msgid "_Skip Level" +msgstr "Прескочи _ниво" + +#: ../data/ui/interface.ui.h:6 +#| msgid "Reset Level" +msgid "_Reset Level" +msgstr "_Поново постави ниво" + +#: ../data/ui/interface.ui.h:7 +#| msgid "_Undo move" +msgid "_Undo Move" +msgstr "_Опозови потез" -#: ../src/games-scores-dialog.c:537 -msgid "Name" -msgstr "Игра" - -#. Empty title shows up as "" on maemo -#: ../src/games-show.c:151 -msgid "Error" -msgstr "Грешка" - -#: ../src/level-manager.c:176 -msgid "Couldn't find level sequence description." -msgstr "Не могу пронаћи опис акција нивоа." - -#: ../src/level-manager.c:190 -msgid "No level found." -msgstr "Ниво није пронађен." - -#: ../src/level-manager.c:286 -#, c-format -msgid "Found level '%s' in: %s" -msgstr "Пронађен ниво „%s“ у: %s" - -#: ../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:8 +msgid "_Pause Game" +msgstr "Паузирај _игру" -#: ../src/main.c:166 -msgid "A puzzle game about atoms and molecules" -msgstr "Логичка слагалица са атомима и молекулима" +#: ../data/ui/interface.ui.h:9 +msgid "_Continue Game" +msgstr "_Настави игру" -#: ../src/main.c:170 -msgid "translator-credits" -msgstr "" -"Александар Урошевић \n" -"\n" -"http://prevod.org — преводи на српски језик" +#: ../data/ui/interface.ui.h:10 +msgid "_Quit" +msgstr "_Изађи" -#: ../src/main.c:493 -msgid "Congratulations! You have finished all Atomix levels." -msgstr "Честитам! Прешли сте све нивое Атомикса." - -#: ../src/main.c:503 -msgid "Couldn't find at least one level." -msgstr "Не могу пронаћи ниједан ниво." - -#: ../src/main.c:508 -msgid "Do you want to finish the game?" -msgstr "Желите ли да завршите игру?" +#: ../data/ui/interface.ui.h:11 +msgid "_Help" +msgstr "По_моћ" -#. create statistics frame -#: ../src/main.c:701 -msgid "Statistics" -msgstr "Статистика" +#: ../data/ui/interface.ui.h:12 +#| msgid "About" +msgid "_About" +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" +#: ../data/ui/interface.ui.h:24 +#| msgid "_Undo move" +msgid "Undo Move" +msgstr "Опозови потез" + +#: ../data/ui/interface.ui.h:25 +#| msgid "_Pause Game" +msgid "Pause Game" msgstr "Паузирај игру" -#: ../src/main.c:742 -msgid "_Continue 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 "" +"Александар Урошевић \n" +"Мирослав Николић \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 @@ #~ msgid "_Preferences ..." #~ msgstr "_Подешавања ..." -#~ msgid "_Undo move" -#~ msgstr "_Опозови потез" - # note(slobo): без уобичајеног персирања, ово је за децу! Мада деци ТРЕБА # персирати! #~ msgid "" diff -Nru atomix-3.19.3/po/tr.po atomix-3.19.4/po/tr.po --- atomix-3.19.3/po/tr.po 2015-12-14 17:23:54.000000000 +0000 +++ atomix-3.19.4/po/tr.po 2016-01-18 21:09:32.000000000 +0000 @@ -2,28 +2,29 @@ # Copyright (C) 2001 Free Software Foundation, Inc. # A.Burak Ilgicioglu , 2001. # Görkem Çetin , 2002. -# Muhammet Kara , 2011. # Kaan Özdinçer , 2015. +# Muhammet Kara , 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 \n" -"Language-Team: Turkish \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 \n" +"Language-Team: Türkçe \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 @@ 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 @@ # 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 @@ msgstr "_Yardım" #: ../data/ui/interface.ui.h:12 -#| msgid "About" msgid "_About" msgstr "_Hakkında" @@ -219,40 +218,97 @@ 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 \n" "Kaan Özdinçer " # 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 -Nru atomix-3.19.3/src/atomix-application.h atomix-3.19.4/src/atomix-application.h --- atomix-3.19.3/src/atomix-application.h 1970-01-01 00:00:00.000000000 +0000 +++ atomix-3.19.4/src/atomix-application.h 2016-01-18 21:09:32.000000000 +0000 @@ -0,0 +1,62 @@ +/* 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 + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#ifndef _ATOMIX_APPLICATION_H_ +#define _ATOMIX_APPLICATION_H_ + +#include +#include "theme-manager.h" +#include "level-manager.h" +#include "goal.h" +#include "atomix-application.h" + +typedef enum +{ + GAME_STATE_NOT_RUNNING, + GAME_STATE_RUNNING_UNMOVED, + GAME_STATE_RUNNING, + GAME_STATE_PAUSED +} GameState; + +typedef struct +{ + GtkWidget *mainwin; + GApplication *app_instance; + + 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; + +#endif /* _ATOMIX_APPLICATION_H_ */ diff -Nru atomix-3.19.3/src/main.c atomix-3.19.4/src/main.c --- atomix-3.19.3/src/main.c 2015-12-14 17:23:54.000000000 +0000 +++ atomix-3.19.4/src/main.c 2016-01-18 21:09:32.000000000 +0000 @@ -67,47 +67,47 @@ 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 @@ 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 @@ 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 @@ 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 @@ { 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 @@ 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 @@ 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_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_main (); - return 0; + gtk_app = gtk_application_new ("org.gnome.atomix", G_APPLICATION_FLAGS_NONE); + g_signal_connect (gtk_app, "activate", G_CALLBACK (app_activate), NULL); + + status = g_application_run (G_APPLICATION (gtk_app), argc, argv); + g_object_unref (gtk_app); + + return status; } diff -Nru atomix-3.19.3/src/main.h atomix-3.19.4/src/main.h --- atomix-3.19.3/src/main.h 2015-12-14 17:23:54.000000000 +0000 +++ atomix-3.19.4/src/main.h 2016-01-18 21:09:32.000000000 +0000 @@ -20,44 +20,8 @@ #ifndef _ATOMIX_MAIN_H_ #define _ATOMIX_MAIN_H_ -#include #include -#include -#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); diff -Nru atomix-3.19.3/src/Makefile.am atomix-3.19.4/src/Makefile.am --- atomix-3.19.3/src/Makefile.am 2015-12-14 17:23:54.000000000 +0000 +++ atomix-3.19.4/src/Makefile.am 2016-01-18 21:09:32.000000000 +0000 @@ -15,6 +15,7 @@ noinst_PROGRAMS = pf-test atomix_SOURCES = \ + atomix-application.h \ main.c main.h \ board-gtk.c board-gtk.h \ undo.c undo.h \