From 7b31aae44693de5d7e30c3606fc3eb7ee58e9ab8 Mon Sep 17 00:00:00 2001 From: skomoroh Date: Thu, 7 Dec 2006 22:19:52 +0000 Subject: [PATCH] + 4 new games * updated russian translation git-svn-id: file:///home/shlomif/Backup/svn-dumps/PySolFC/svnsync-repos/pysolfc/PySolFC/trunk@106 efabe8c0-fbe8-4139-b769-b5e6d273206e --- data/html-src/wikipedia/bigben.html | 64 +++++ po/games.pot | 56 ++++- po/pysol.pot | 356 ++++++++++++++-------------- po/ru_games.po | 59 ++++- po/ru_pysol.po | 355 +++++++++++++-------------- pysollib/games/freecell.py | 22 ++ pysollib/games/grandfathersclock.py | 115 +++++++++ pysollib/games/royalcotillion.py | 79 +++++- pysollib/games/windmill.py | 11 +- pysollib/layout.py | 2 +- 10 files changed, 761 insertions(+), 358 deletions(-) create mode 100644 data/html-src/wikipedia/bigben.html diff --git a/data/html-src/wikipedia/bigben.html b/data/html-src/wikipedia/bigben.html new file mode 100644 index 00000000..1d2d39da --- /dev/null +++ b/data/html-src/wikipedia/bigben.html @@ -0,0 +1,64 @@ +

Big Ben

+

From Wikipedia, the free encyclopedia

+

+Big Ben (or known in other solitaire brands as Clock) is a solitaire card game +which uses two decks of playing cards mixed together. It is basically a +large-scale, two-deck version of Grandfather's Clock and is probably named +after Big Ben, the colloquially used nickname for the clock face at the tower +of the Palace of Westminster in London. +

+Before the start of the game, the following cards are separated from the +decks: 2, 3, 4, 5, 6, 7, 8, 9, 10, J, Q, K. These cards to form a +circle arranged like numbers on a clock face with the 2 on the "9 o' clock" position, the 5 at the "12 o' clock" position, and the K at the "8 o' clock." This will be the foundations, or +the "inner circle" (otherwise known as the "clock"). +

+Twelves piles of three cards are then dealt around the inner circle. These +piles form the tableau, or the "outer circle." The top cards of the outer +circle are available for play to the inner circle or around the outer circle. +Building on the outer circle is down by suit, while the foundations in the +inner circle are built up by suit until the last card corresponds to the its +position on the clock (i.e. the Q should be built +up to 7, for instance). Building is also +continuous, with Aces placed over Kings in the inner circle and vice versa in +the outer circle. +

+It should be noted that the minimum number of cards in each pile in the outer +circle is three. A pile containing less than three cards is said to have gaps; +an empty pile has three "gaps," a pile having one card has two "gaps," and a +pile with two cards has one "gap." As cards are built, "gaps" are formed and +the only way these are "filled" is by dealing cards from the stock. Building +on a pile having cards less than three is like "filling a gap" from the +tableau and is therefore not allowed. +

+It is the player's discretion when to fill the "gaps," but when the player +decides to do so, one has to fill all "gaps," i. e. replenish all piles with +less than three cards so each of them contains three cards once again. For +example, two piles are empty, one pile has one card left, and two piles have +two cards left. So the player has to fill a total of 10 gaps. He does this by +dealing cards one card per pile at a time clockwise starting from the pile +above the "12 o' clock" foundation. No building is done until this process is +complete. The player can do this as long as there are "gaps." +

+Sometimes, the player cannot make any moves even when all piles contain three +cards each. So the player can deal cards from the stock one at a time. Cards +that cannot be built either onto the inner or outer circles are placed on the +wastepile (as a suggestion, one can place the wastepile at the center of the +inner circle for convenience). Again, cards at the wastepile cannot be used to +fill "gaps." But once the stock is exhausted, there are no redeals; the game +ends sooner after this or later. +

+The game is successfully won when all foundations show cards corresponding to +their positions in the clock (J on "11 o' clock," +Q on "12 o' clock," A on +"1 o' clock," and so on.) +

+(Retrieved from http://en.wikipedia.org/wiki/Big_Ben_(solitaire)) diff --git a/po/games.pot b/po/games.pot index cac81607..98a2c2ed 100644 --- a/po/games.pot +++ b/po/games.pot @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: PySol 0.0.1\n" -"POT-Creation-Date: Thu Nov 30 16:31:56 2006\n" +"POT-Creation-Date: Thu Dec 7 15:25:59 2006\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -36,6 +36,9 @@ msgstr "" msgid " 9x9 Matrix" msgstr "" +msgid " Pyramid's Stones" +msgstr "" + msgid "10 x 8" msgstr "" @@ -339,6 +342,9 @@ msgstr "" msgid "Boar" msgstr "" +msgid "Board Patience" +msgstr "" + msgid "Boat" msgstr "" @@ -408,6 +414,9 @@ msgstr "" msgid "Brunswick" msgstr "" +msgid "Brush" +msgstr "" + msgid "Buffalo Bill" msgstr "" @@ -462,6 +471,9 @@ msgstr "" msgid "Casino Klondike" msgstr "" +msgid "Casket" +msgstr "" + msgid "Cassim" msgstr "" @@ -567,6 +579,9 @@ msgstr "" msgid "Cockroach" msgstr "" +msgid "Colonel" +msgstr "" + msgid "Colorado" msgstr "" @@ -654,6 +669,9 @@ msgstr "" msgid "Dead King Golf" msgstr "" +msgid "Deck" +msgstr "" + msgid "Deep" msgstr "" @@ -690,6 +708,9 @@ msgstr "" msgid "Dhanpati" msgstr "" +msgid "Dial" +msgstr "" + msgid "Diamond" msgstr "" @@ -972,6 +993,9 @@ msgstr "" msgid "Falling Star" msgstr "" +msgid "Famous Fifty" +msgstr "" + msgid "Fan" msgstr "" @@ -999,6 +1023,9 @@ msgstr "" msgid "Fatimeh's Game Relaxed" msgstr "" +msgid "Fechter's Game" +msgstr "" + msgid "Fifteen" msgstr "" @@ -1047,6 +1074,9 @@ msgstr "" msgid "Floradora" msgstr "" +msgid "Florentine Patience" +msgstr "" + msgid "Flower Arrangement" msgstr "" @@ -1068,6 +1098,9 @@ msgstr "" msgid "ForeCell" msgstr "" +msgid "Formic" +msgstr "" + msgid "Fort" msgstr "" @@ -1203,6 +1236,9 @@ msgstr "" msgid "Giza" msgstr "" +msgid "Glacier" +msgstr "" + msgid "Glade" msgstr "" @@ -1335,6 +1371,9 @@ msgstr "" msgid "Helios" msgstr "" +msgid "Hemispheres" +msgstr "" + msgid "Hex A Klon" msgstr "" @@ -1362,6 +1401,9 @@ msgstr "" msgid "Horse" msgstr "" +msgid "Hospital Patience" +msgstr "" + msgid "House in the Wood" msgstr "" @@ -1518,6 +1560,9 @@ msgstr "" msgid "Khadga" msgstr "" +msgid "Khedive" +msgstr "" + msgid "King Albert" msgstr "" @@ -1527,6 +1572,9 @@ msgstr "" msgid "King Only Hex A Klon" msgstr "" +msgid "King Tut" +msgstr "" + msgid "KingCell" msgstr "" @@ -3384,6 +3432,9 @@ msgstr "" msgid "The Familiar" msgstr "" +msgid "The Four Continents" +msgstr "" + msgid "The Garden" msgstr "" @@ -3399,6 +3450,9 @@ msgstr "" msgid "The Little Corporal" msgstr "" +msgid "The Red and the Black" +msgstr "" + msgid "The Spark" msgstr "" diff --git a/po/pysol.pot b/po/pysol.pot index a4d66a8a..5554841e 100644 --- a/po/pysol.pot +++ b/po/pysol.pot @@ -14,7 +14,7 @@ msgid "" msgstr "" "#-#-#-#-# pysol-1.pot (PACKAGE VERSION) #-#-#-#-#\n" "Project-Id-Version: PACKAGE VERSION\n" -"POT-Creation-Date: Thu Nov 30 16:32:59 2006\n" +"POT-Creation-Date: Thu Dec 7 15:27:04 2006\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -24,7 +24,7 @@ msgstr "" "Generated-By: pygettext.py 1.5\n" "#-#-#-#-# pysol-2.pot (PACKAGE VERSION) #-#-#-#-#\n" "Project-Id-Version: PACKAGE VERSION\n" -"POT-Creation-Date: 2006-11-30 16:33+0300\n" +"POT-Creation-Date: 2006-12-07 15:27+0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -37,8 +37,8 @@ msgstr "" msgid "New game" msgstr "" -#: pysollib/actions.py:272 pysollib/tile/menubar.py:821 -#: pysollib/tile/menubar.py:835 pysollib/tk/menubar.py:815 +#: pysollib/actions.py:272 pysollib/tile/menubar.py:820 +#: pysollib/tile/menubar.py:834 pysollib/tk/menubar.py:815 #: pysollib/tk/menubar.py:829 msgid "Select game" msgstr "" @@ -74,10 +74,10 @@ msgstr "" #: pysollib/app.py:1176 pysollib/game.py:933 pysollib/game.py:1865 #: pysollib/tile/colorsdialog.py:123 pysollib/tile/edittextdialog.py:83 #: pysollib/tile/fontsdialog.py:145 pysollib/tile/fontsdialog.py:205 -#: pysollib/tile/gameinfodialog.py:155 pysollib/tile/menubar.py:1336 -#: pysollib/tile/playeroptionsdialog.py:111 pysollib/tile/selectcardset.py:397 -#: pysollib/tile/selecttile.py:161 pysollib/tile/soundoptionsdialog.py:171 -#: pysollib/tile/soundoptionsdialog.py:209 pysollib/tile/timeoutsdialog.py:94 +#: pysollib/tile/gameinfodialog.py:155 pysollib/tile/menubar.py:1335 +#: pysollib/tile/playeroptionsdialog.py:111 pysollib/tile/selectcardset.py:388 +#: pysollib/tile/selecttile.py:161 pysollib/tile/soundoptionsdialog.py:168 +#: pysollib/tile/soundoptionsdialog.py:206 pysollib/tile/timeoutsdialog.py:94 #: pysollib/tile/tkhtml.py:501 pysollib/tile/tkstats.py:211 #: pysollib/tile/tkstats.py:381 pysollib/tile/tkstats.py:450 #: pysollib/tile/tkstats.py:473 pysollib/tile/tkstats.py:516 @@ -103,9 +103,9 @@ msgstr "" #: pysollib/game.py:1338 pysollib/game.py:1344 #: pysollib/tile/colorsdialog.py:123 pysollib/tile/edittextdialog.py:83 #: pysollib/tile/fontsdialog.py:145 pysollib/tile/fontsdialog.py:205 -#: pysollib/tile/playeroptionsdialog.py:111 pysollib/tile/selectcardset.py:243 -#: pysollib/tile/selectgame.py:267 pysollib/tile/selectgame.py:407 -#: pysollib/tile/selecttile.py:161 pysollib/tile/soundoptionsdialog.py:171 +#: pysollib/tile/playeroptionsdialog.py:111 pysollib/tile/selectcardset.py:237 +#: pysollib/tile/selectgame.py:267 pysollib/tile/selectgame.py:397 +#: pysollib/tile/selecttile.py:161 pysollib/tile/soundoptionsdialog.py:168 #: pysollib/tile/timeoutsdialog.py:94 pysollib/tile/tkwidget.py:319 #: pysollib/tk/colorsdialog.py:122 pysollib/tk/edittextdialog.py:82 #: pysollib/tk/fontsdialog.py:143 pysollib/tk/fontsdialog.py:205 @@ -201,7 +201,7 @@ msgstr "" msgid "Statistics for " msgstr "" -#: pysollib/actions.py:583 pysollib/tile/selectgame.py:349 +#: pysollib/actions.py:583 pysollib/tile/selectgame.py:344 #: pysollib/tile/toolbar.py:247 pysollib/tk/selectgame.py:350 #: pysollib/tk/toolbar.py:208 msgid "Statistics" @@ -266,7 +266,7 @@ msgid "Unknown" msgstr "" #: pysollib/app.py:883 pysollib/game.py:1316 pysollib/game.py:1331 -#: pysollib/game.py:1338 pysollib/game.py:1344 pysollib/tile/menubar.py:367 +#: pysollib/game.py:1338 pysollib/game.py:1344 pysollib/tile/menubar.py:366 #: pysollib/tk/menubar.py:363 msgid "&New game" msgstr "" @@ -685,11 +685,15 @@ msgid "Puzzle type" msgstr "" #: pysollib/games/auldlangsyne.py:158 pysollib/games/calculation.py:104 -#: pysollib/games/numerica.py:90 pysollib/games/numerica.py:272 -#: pysollib/games/numerica.py:644 pysollib/games/numerica.py:757 +#: pysollib/games/numerica.py:94 pysollib/games/numerica.py:276 +#: pysollib/games/numerica.py:666 pysollib/games/numerica.py:779 msgid "Tableau. Build regardless of rank and suit." msgstr "" +#: pysollib/games/auldlangsyne.py:555 +msgid "Foundation. Build up or down regardless of suit." +msgstr "" + #: pysollib/games/braid.py:248 pysollib/games/camelot.py:555 #: pysollib/games/napoleon.py:182 pysollib/games/ultra/dashavatara.py:959 #: pysollib/games/ultra/hanafuda1.py:257 pysollib/games/ultra/hexadeck.py:1190 @@ -804,7 +808,7 @@ msgstr "" msgid "Deal %d" msgstr "" -#: pysollib/games/numerica.py:259 pysollib/games/royalcotillion.py:849 +#: pysollib/games/numerica.py:263 pysollib/games/royalcotillion.py:850 msgid "Foundation. Build up by color." msgstr "" @@ -1259,7 +1263,7 @@ msgid "" "Please check your %s installation.\n" msgstr "" -#: pysollib/main.py:74 pysollib/main.py:277 pysollib/tile/menubar.py:386 +#: pysollib/main.py:74 pysollib/main.py:277 pysollib/tile/menubar.py:385 #: pysollib/tk/menubar.py:382 msgid "&Quit" msgstr "" @@ -1934,7 +1938,7 @@ msgstr "" msgid "Select color" msgstr "" -#: pysollib/tile/findcarddialog.py:54 pysollib/tile/menubar.py:439 +#: pysollib/tile/findcarddialog.py:54 pysollib/tile/menubar.py:438 #: pysollib/tk/findcarddialog.py:54 pysollib/tk/menubar.py:435 msgid "Find card" msgstr "" @@ -1994,493 +1998,493 @@ msgstr "" msgid "Style" msgstr "" -#: pysollib/tile/menubar.py:96 pysollib/tk/menubar.py:94 +#: pysollib/tile/menubar.py:95 pysollib/tk/menubar.py:94 msgid "Compound" msgstr "" -#: pysollib/tile/menubar.py:102 pysollib/tk/menubar.py:100 +#: pysollib/tile/menubar.py:101 pysollib/tk/menubar.py:100 msgid "Hide" msgstr "" -#: pysollib/tile/menubar.py:105 pysollib/tk/menubar.py:103 +#: pysollib/tile/menubar.py:104 pysollib/tk/menubar.py:103 msgid "Top" msgstr "" -#: pysollib/tile/menubar.py:108 pysollib/tk/menubar.py:106 +#: pysollib/tile/menubar.py:107 pysollib/tk/menubar.py:106 msgid "Bottom" msgstr "" -#: pysollib/tile/menubar.py:111 pysollib/tk/menubar.py:109 +#: pysollib/tile/menubar.py:110 pysollib/tk/menubar.py:109 msgid "Left" msgstr "" -#: pysollib/tile/menubar.py:114 pysollib/tk/menubar.py:112 +#: pysollib/tile/menubar.py:113 pysollib/tk/menubar.py:112 msgid "Right" msgstr "" -#: pysollib/tile/menubar.py:118 pysollib/tk/menubar.py:116 +#: pysollib/tile/menubar.py:117 pysollib/tk/menubar.py:116 msgid "Small icons" msgstr "" -#: pysollib/tile/menubar.py:121 pysollib/tk/menubar.py:119 +#: pysollib/tile/menubar.py:120 pysollib/tk/menubar.py:119 msgid "Large icons" msgstr "" -#: pysollib/tile/menubar.py:127 pysollib/tk/menubar.py:125 +#: pysollib/tile/menubar.py:126 pysollib/tk/menubar.py:125 msgid "Customize toolbar" msgstr "" -#: pysollib/tile/menubar.py:366 pysollib/tk/menubar.py:362 +#: pysollib/tile/menubar.py:365 pysollib/tk/menubar.py:362 msgid "&File" msgstr "" -#: pysollib/tile/menubar.py:368 pysollib/tk/menubar.py:364 +#: pysollib/tile/menubar.py:367 pysollib/tk/menubar.py:364 msgid "R&ecent games" msgstr "" -#: pysollib/tile/menubar.py:370 pysollib/tk/menubar.py:366 +#: pysollib/tile/menubar.py:369 pysollib/tk/menubar.py:366 msgid "Select &random game" msgstr "" -#: pysollib/tile/menubar.py:371 pysollib/tk/menubar.py:367 +#: pysollib/tile/menubar.py:370 pysollib/tk/menubar.py:367 msgid "&All games" msgstr "" -#: pysollib/tile/menubar.py:372 pysollib/tk/menubar.py:368 +#: pysollib/tile/menubar.py:371 pysollib/tk/menubar.py:368 msgid "Games played and &won" msgstr "" -#: pysollib/tile/menubar.py:373 pysollib/tk/menubar.py:369 +#: pysollib/tile/menubar.py:372 pysollib/tk/menubar.py:369 msgid "Games played and ¬ won" msgstr "" -#: pysollib/tile/menubar.py:374 pysollib/tk/menubar.py:370 +#: pysollib/tile/menubar.py:373 pysollib/tk/menubar.py:370 msgid "Games not &played" msgstr "" -#: pysollib/tile/menubar.py:375 pysollib/tk/menubar.py:371 +#: pysollib/tile/menubar.py:374 pysollib/tk/menubar.py:371 msgid "Select game by nu&mber..." msgstr "" -#: pysollib/tile/menubar.py:377 pysollib/tk/menubar.py:373 +#: pysollib/tile/menubar.py:376 pysollib/tk/menubar.py:373 msgid "Fa&vorite games" msgstr "" -#: pysollib/tile/menubar.py:378 pysollib/tk/menubar.py:374 +#: pysollib/tile/menubar.py:377 pysollib/tk/menubar.py:374 msgid "A&dd to favorites" msgstr "" -#: pysollib/tile/menubar.py:379 pysollib/tk/menubar.py:375 +#: pysollib/tile/menubar.py:378 pysollib/tk/menubar.py:375 msgid "R&emove from favorites" msgstr "" -#: pysollib/tile/menubar.py:381 pysollib/tk/menubar.py:377 +#: pysollib/tile/menubar.py:380 pysollib/tk/menubar.py:377 msgid "&Open..." msgstr "" -#: pysollib/tile/menubar.py:382 pysollib/tk/menubar.py:378 +#: pysollib/tile/menubar.py:381 pysollib/tk/menubar.py:378 msgid "&Save" msgstr "" -#: pysollib/tile/menubar.py:383 pysollib/tk/menubar.py:379 +#: pysollib/tile/menubar.py:382 pysollib/tk/menubar.py:379 msgid "Save &as..." msgstr "" -#: pysollib/tile/menubar.py:385 pysollib/tk/menubar.py:381 +#: pysollib/tile/menubar.py:384 pysollib/tk/menubar.py:381 msgid "&Hold and quit" msgstr "" -#: pysollib/tile/menubar.py:390 pysollib/tile/selectgame.py:407 +#: pysollib/tile/menubar.py:389 pysollib/tile/selectgame.py:397 #: pysollib/tk/menubar.py:386 pysollib/tk/selectgame.py:407 msgid "&Select" msgstr "" -#: pysollib/tile/menubar.py:395 pysollib/tk/menubar.py:391 +#: pysollib/tile/menubar.py:394 pysollib/tk/menubar.py:391 msgid "&Edit" msgstr "" -#: pysollib/tile/menubar.py:396 pysollib/tk/menubar.py:392 +#: pysollib/tile/menubar.py:395 pysollib/tk/menubar.py:392 msgid "&Undo" msgstr "" -#: pysollib/tile/menubar.py:397 pysollib/tk/menubar.py:393 +#: pysollib/tile/menubar.py:396 pysollib/tk/menubar.py:393 msgid "&Redo" msgstr "" -#: pysollib/tile/menubar.py:398 pysollib/tk/menubar.py:394 +#: pysollib/tile/menubar.py:397 pysollib/tk/menubar.py:394 msgid "Redo &all" msgstr "" -#: pysollib/tile/menubar.py:401 pysollib/tk/menubar.py:397 +#: pysollib/tile/menubar.py:400 pysollib/tk/menubar.py:397 msgid "&Set bookmark" msgstr "" -#: pysollib/tile/menubar.py:403 pysollib/tile/menubar.py:407 +#: pysollib/tile/menubar.py:402 pysollib/tile/menubar.py:406 #: pysollib/tk/menubar.py:399 pysollib/tk/menubar.py:403 msgid "Bookmark %d" msgstr "" -#: pysollib/tile/menubar.py:405 pysollib/tk/menubar.py:401 +#: pysollib/tile/menubar.py:404 pysollib/tk/menubar.py:401 msgid "Go&to bookmark" msgstr "" -#: pysollib/tile/menubar.py:410 pysollib/tk/menubar.py:406 +#: pysollib/tile/menubar.py:409 pysollib/tk/menubar.py:406 msgid "&Clear bookmarks" msgstr "" -#: pysollib/tile/menubar.py:413 pysollib/tile/toolbar.py:237 +#: pysollib/tile/menubar.py:412 pysollib/tile/toolbar.py:237 #: pysollib/tk/menubar.py:409 pysollib/tk/toolbar.py:198 msgid "Restart" msgstr "" -#: pysollib/tile/menubar.py:415 pysollib/tk/menubar.py:411 +#: pysollib/tile/menubar.py:414 pysollib/tk/menubar.py:411 msgid "&Game" msgstr "" -#: pysollib/tile/menubar.py:416 pysollib/tk/menubar.py:412 +#: pysollib/tile/menubar.py:415 pysollib/tk/menubar.py:412 msgid "&Deal cards" msgstr "" -#: pysollib/tile/menubar.py:417 pysollib/tk/menubar.py:413 +#: pysollib/tile/menubar.py:416 pysollib/tk/menubar.py:413 msgid "&Auto drop" msgstr "" -#: pysollib/tile/menubar.py:418 pysollib/tk/menubar.py:414 +#: pysollib/tile/menubar.py:417 pysollib/tk/menubar.py:414 msgid "&Pause" msgstr "" -#: pysollib/tile/menubar.py:421 pysollib/tk/menubar.py:417 +#: pysollib/tile/menubar.py:420 pysollib/tk/menubar.py:417 msgid "S&tatus..." msgstr "" -#: pysollib/tile/menubar.py:422 pysollib/tk/menubar.py:418 +#: pysollib/tile/menubar.py:421 pysollib/tk/menubar.py:418 msgid "&Comments..." msgstr "" -#: pysollib/tile/menubar.py:424 pysollib/tk/menubar.py:420 +#: pysollib/tile/menubar.py:423 pysollib/tk/menubar.py:420 msgid "&Statistics" msgstr "" -#: pysollib/tile/menubar.py:425 pysollib/tile/menubar.py:433 +#: pysollib/tile/menubar.py:424 pysollib/tile/menubar.py:432 #: pysollib/tk/menubar.py:421 pysollib/tk/menubar.py:429 msgid "Current game..." msgstr "" -#: pysollib/tile/menubar.py:426 pysollib/tile/menubar.py:434 +#: pysollib/tile/menubar.py:425 pysollib/tile/menubar.py:433 #: pysollib/tk/menubar.py:422 pysollib/tk/menubar.py:430 msgid "All games..." msgstr "" -#: pysollib/tile/menubar.py:428 pysollib/tk/menubar.py:424 +#: pysollib/tile/menubar.py:427 pysollib/tk/menubar.py:424 msgid "Session log..." msgstr "" -#: pysollib/tile/menubar.py:429 pysollib/tk/menubar.py:425 +#: pysollib/tile/menubar.py:428 pysollib/tk/menubar.py:425 msgid "Full log..." msgstr "" -#: pysollib/tile/menubar.py:432 pysollib/tk/menubar.py:428 +#: pysollib/tile/menubar.py:431 pysollib/tk/menubar.py:428 msgid "D&emo statistics" msgstr "" -#: pysollib/tile/menubar.py:436 pysollib/tk/menubar.py:432 +#: pysollib/tile/menubar.py:435 pysollib/tk/menubar.py:432 msgid "&Assist" msgstr "" -#: pysollib/tile/menubar.py:437 pysollib/tk/menubar.py:433 +#: pysollib/tile/menubar.py:436 pysollib/tk/menubar.py:433 msgid "&Hint" msgstr "" -#: pysollib/tile/menubar.py:438 pysollib/tk/menubar.py:434 +#: pysollib/tile/menubar.py:437 pysollib/tk/menubar.py:434 msgid "Highlight p&iles" msgstr "" -#: pysollib/tile/menubar.py:441 pysollib/tk/menubar.py:437 +#: pysollib/tile/menubar.py:440 pysollib/tk/menubar.py:437 msgid "&Demo" msgstr "" -#: pysollib/tile/menubar.py:442 pysollib/tk/menubar.py:438 +#: pysollib/tile/menubar.py:441 pysollib/tk/menubar.py:438 msgid "Demo (&all games)" msgstr "" -#: pysollib/tile/menubar.py:444 pysollib/tk/menubar.py:440 +#: pysollib/tile/menubar.py:443 pysollib/tk/menubar.py:440 msgid "Piles description" msgstr "" -#: pysollib/tile/menubar.py:448 pysollib/tk/menubar.py:444 +#: pysollib/tile/menubar.py:447 pysollib/tk/menubar.py:444 msgid "&Options" msgstr "" -#: pysollib/tile/menubar.py:449 pysollib/tk/menubar.py:445 +#: pysollib/tile/menubar.py:448 pysollib/tk/menubar.py:445 msgid "&Player options..." msgstr "" -#: pysollib/tile/menubar.py:450 pysollib/tk/menubar.py:446 +#: pysollib/tile/menubar.py:449 pysollib/tk/menubar.py:446 msgid "&Automatic play" msgstr "" -#: pysollib/tile/menubar.py:451 pysollib/tk/menubar.py:447 +#: pysollib/tile/menubar.py:450 pysollib/tk/menubar.py:447 msgid "Auto &face up" msgstr "" -#: pysollib/tile/menubar.py:452 pysollib/tk/menubar.py:448 +#: pysollib/tile/menubar.py:451 pysollib/tk/menubar.py:448 msgid "A&uto drop" msgstr "" -#: pysollib/tile/menubar.py:453 pysollib/tk/menubar.py:449 +#: pysollib/tile/menubar.py:452 pysollib/tk/menubar.py:449 msgid "Auto &deal" msgstr "" -#: pysollib/tile/menubar.py:455 pysollib/tk/menubar.py:451 +#: pysollib/tile/menubar.py:454 pysollib/tk/menubar.py:451 msgid "&Quick play" msgstr "" -#: pysollib/tile/menubar.py:456 pysollib/tk/menubar.py:452 +#: pysollib/tile/menubar.py:455 pysollib/tk/menubar.py:452 msgid "Assist &level" msgstr "" -#: pysollib/tile/menubar.py:457 pysollib/tk/menubar.py:453 +#: pysollib/tile/menubar.py:456 pysollib/tk/menubar.py:453 msgid "Enable &undo" msgstr "" -#: pysollib/tile/menubar.py:458 pysollib/tk/menubar.py:454 +#: pysollib/tile/menubar.py:457 pysollib/tk/menubar.py:454 msgid "Enable &bookmarks" msgstr "" -#: pysollib/tile/menubar.py:459 pysollib/tk/menubar.py:455 +#: pysollib/tile/menubar.py:458 pysollib/tk/menubar.py:455 msgid "Enable &hint" msgstr "" -#: pysollib/tile/menubar.py:460 pysollib/tk/menubar.py:456 +#: pysollib/tile/menubar.py:459 pysollib/tk/menubar.py:456 msgid "Enable highlight p&iles" msgstr "" -#: pysollib/tile/menubar.py:461 pysollib/tk/menubar.py:457 +#: pysollib/tile/menubar.py:460 pysollib/tk/menubar.py:457 msgid "Enable highlight &cards" msgstr "" -#: pysollib/tile/menubar.py:462 pysollib/tk/menubar.py:458 +#: pysollib/tile/menubar.py:461 pysollib/tk/menubar.py:458 msgid "Enable highlight same &rank" msgstr "" -#: pysollib/tile/menubar.py:463 pysollib/tk/menubar.py:459 +#: pysollib/tile/menubar.py:462 pysollib/tk/menubar.py:459 msgid "Highlight &no matching" msgstr "" -#: pysollib/tile/menubar.py:465 pysollib/tk/menubar.py:461 +#: pysollib/tile/menubar.py:464 pysollib/tk/menubar.py:461 msgid "&Show removed tiles (in Mahjongg games)" msgstr "" -#: pysollib/tile/menubar.py:466 pysollib/tk/menubar.py:462 +#: pysollib/tile/menubar.py:465 pysollib/tk/menubar.py:462 msgid "Show hint &arrow (in Shisen-Sho games)" msgstr "" -#: pysollib/tile/menubar.py:468 pysollib/tk/menubar.py:464 +#: pysollib/tile/menubar.py:467 pysollib/tk/menubar.py:464 msgid "&Sound..." msgstr "" -#: pysollib/tile/menubar.py:476 pysollib/tk/menubar.py:472 +#: pysollib/tile/menubar.py:475 pysollib/tk/menubar.py:472 msgid "Cards&et..." msgstr "" -#: pysollib/tile/menubar.py:477 pysollib/tk/menubar.py:473 +#: pysollib/tile/menubar.py:476 pysollib/tk/menubar.py:473 msgid "Table t&ile..." msgstr "" -#: pysollib/tile/menubar.py:479 pysollib/tk/menubar.py:475 +#: pysollib/tile/menubar.py:478 pysollib/tk/menubar.py:475 msgid "Card &background" msgstr "" -#: pysollib/tile/menubar.py:480 pysollib/tk/menubar.py:476 +#: pysollib/tile/menubar.py:479 pysollib/tk/menubar.py:476 msgid "Card &view" msgstr "" -#: pysollib/tile/menubar.py:481 pysollib/tk/menubar.py:477 +#: pysollib/tile/menubar.py:480 pysollib/tk/menubar.py:477 msgid "Card shado&w" msgstr "" -#: pysollib/tile/menubar.py:482 pysollib/tk/menubar.py:478 +#: pysollib/tile/menubar.py:481 pysollib/tk/menubar.py:478 msgid "Shade &legal moves" msgstr "" -#: pysollib/tile/menubar.py:483 pysollib/tk/menubar.py:479 +#: pysollib/tile/menubar.py:482 pysollib/tk/menubar.py:479 msgid "&Negative cards bottom" msgstr "" -#: pysollib/tile/menubar.py:484 pysollib/tk/menubar.py:480 +#: pysollib/tile/menubar.py:483 pysollib/tk/menubar.py:480 msgid "Shrink face-down cards" msgstr "" -#: pysollib/tile/menubar.py:485 pysollib/tk/menubar.py:481 +#: pysollib/tile/menubar.py:484 pysollib/tk/menubar.py:481 msgid "Shade &filled stacks" msgstr "" -#: pysollib/tile/menubar.py:486 pysollib/tk/menubar.py:482 +#: pysollib/tile/menubar.py:485 pysollib/tk/menubar.py:482 msgid "A&nimations" msgstr "" -#: pysollib/tile/menubar.py:487 pysollib/tk/menubar.py:483 +#: pysollib/tile/menubar.py:486 pysollib/tk/menubar.py:483 msgid "&None" msgstr "" -#: pysollib/tile/menubar.py:488 pysollib/tk/menubar.py:484 +#: pysollib/tile/menubar.py:487 pysollib/tk/menubar.py:484 msgid "&Timer based" msgstr "" -#: pysollib/tile/menubar.py:489 pysollib/tk/menubar.py:485 +#: pysollib/tile/menubar.py:488 pysollib/tk/menubar.py:485 msgid "&Fast" msgstr "" -#: pysollib/tile/menubar.py:490 pysollib/tk/menubar.py:486 +#: pysollib/tile/menubar.py:489 pysollib/tk/menubar.py:486 msgid "&Slow" msgstr "" -#: pysollib/tile/menubar.py:491 pysollib/tk/menubar.py:487 +#: pysollib/tile/menubar.py:490 pysollib/tk/menubar.py:487 msgid "&Very slow" msgstr "" -#: pysollib/tile/menubar.py:492 pysollib/tk/menubar.py:488 +#: pysollib/tile/menubar.py:491 pysollib/tk/menubar.py:488 msgid "&Mouse" msgstr "" -#: pysollib/tile/menubar.py:493 pysollib/tk/menubar.py:489 +#: pysollib/tile/menubar.py:492 pysollib/tk/menubar.py:489 msgid "&Drag-and-Drop" msgstr "" -#: pysollib/tile/menubar.py:494 pysollib/tk/menubar.py:490 +#: pysollib/tile/menubar.py:493 pysollib/tk/menubar.py:490 msgid "&Point-and-Click" msgstr "" -#: pysollib/tile/menubar.py:495 pysollib/tk/menubar.py:491 +#: pysollib/tile/menubar.py:494 pysollib/tk/menubar.py:491 msgid "&Sticky mouse" msgstr "" -#: pysollib/tile/menubar.py:497 pysollib/tk/menubar.py:493 +#: pysollib/tile/menubar.py:496 pysollib/tk/menubar.py:493 msgid "Use mouse for undo/redo" msgstr "" -#: pysollib/tile/menubar.py:499 pysollib/tk/menubar.py:495 +#: pysollib/tile/menubar.py:498 pysollib/tk/menubar.py:495 msgid "&Fonts..." msgstr "" -#: pysollib/tile/menubar.py:500 pysollib/tk/menubar.py:496 +#: pysollib/tile/menubar.py:499 pysollib/tk/menubar.py:496 msgid "&Colors..." msgstr "" -#: pysollib/tile/menubar.py:501 pysollib/tk/menubar.py:497 +#: pysollib/tile/menubar.py:500 pysollib/tk/menubar.py:497 msgid "Time&outs..." msgstr "" -#: pysollib/tile/menubar.py:503 +#: pysollib/tile/menubar.py:502 msgid "Set t&heme" msgstr "" -#: pysollib/tile/menubar.py:505 pysollib/tk/menubar.py:499 +#: pysollib/tile/menubar.py:504 pysollib/tk/menubar.py:499 msgid "&Toolbar" msgstr "" -#: pysollib/tile/menubar.py:507 pysollib/tk/menubar.py:501 +#: pysollib/tile/menubar.py:506 pysollib/tk/menubar.py:501 msgid "Stat&usbar" msgstr "" -#: pysollib/tile/menubar.py:508 pysollib/tk/menubar.py:502 +#: pysollib/tile/menubar.py:507 pysollib/tk/menubar.py:502 msgid "Show &statusbar" msgstr "" -#: pysollib/tile/menubar.py:509 pysollib/tk/menubar.py:503 +#: pysollib/tile/menubar.py:508 pysollib/tk/menubar.py:503 msgid "Show &number of cards" msgstr "" -#: pysollib/tile/menubar.py:510 pysollib/tk/menubar.py:504 +#: pysollib/tile/menubar.py:509 pysollib/tk/menubar.py:504 msgid "Show &help bar" msgstr "" -#: pysollib/tile/menubar.py:511 pysollib/tk/menubar.py:505 +#: pysollib/tile/menubar.py:510 pysollib/tk/menubar.py:505 msgid "Save games &geometry" msgstr "" -#: pysollib/tile/menubar.py:512 pysollib/tk/menubar.py:506 +#: pysollib/tile/menubar.py:511 pysollib/tk/menubar.py:506 msgid "&Demo logo" msgstr "" -#: pysollib/tile/menubar.py:513 pysollib/tk/menubar.py:507 +#: pysollib/tile/menubar.py:512 pysollib/tk/menubar.py:507 msgid "Startup splash sc&reen" msgstr "" -#: pysollib/tile/menubar.py:519 pysollib/tk/menubar.py:513 +#: pysollib/tile/menubar.py:518 pysollib/tk/menubar.py:513 msgid "&Help" msgstr "" -#: pysollib/tile/menubar.py:520 pysollib/tk/menubar.py:514 +#: pysollib/tile/menubar.py:519 pysollib/tk/menubar.py:514 msgid "&Contents" msgstr "" -#: pysollib/tile/menubar.py:521 pysollib/tk/menubar.py:515 +#: pysollib/tile/menubar.py:520 pysollib/tk/menubar.py:515 msgid "&How to play" msgstr "" -#: pysollib/tile/menubar.py:522 pysollib/tk/menubar.py:516 +#: pysollib/tile/menubar.py:521 pysollib/tk/menubar.py:516 msgid "&Rules for this game" msgstr "" -#: pysollib/tile/menubar.py:523 pysollib/tk/menubar.py:517 +#: pysollib/tile/menubar.py:522 pysollib/tk/menubar.py:517 msgid "&License terms" msgstr "" -#: pysollib/tile/menubar.py:526 pysollib/tk/menubar.py:520 +#: pysollib/tile/menubar.py:525 pysollib/tk/menubar.py:520 msgid "&About " msgstr "" -#: pysollib/tile/menubar.py:638 pysollib/tk/menubar.py:632 +#: pysollib/tile/menubar.py:637 pysollib/tk/menubar.py:632 msgid "All &games..." msgstr "" -#: pysollib/tile/menubar.py:640 pysollib/tk/menubar.py:634 +#: pysollib/tile/menubar.py:639 pysollib/tk/menubar.py:634 msgid "Playable pre&view..." msgstr "" -#: pysollib/tile/menubar.py:689 pysollib/tk/menubar.py:683 +#: pysollib/tile/menubar.py:688 pysollib/tk/menubar.py:683 msgid "&Mahjongg games" msgstr "" -#: pysollib/tile/menubar.py:727 pysollib/tk/menubar.py:721 +#: pysollib/tile/menubar.py:726 pysollib/tk/menubar.py:721 msgid "&Popular games" msgstr "" -#: pysollib/tile/menubar.py:735 pysollib/tk/menubar.py:729 +#: pysollib/tile/menubar.py:734 pysollib/tk/menubar.py:729 msgid "&French games" msgstr "" -#: pysollib/tile/menubar.py:742 pysollib/tk/menubar.py:736 +#: pysollib/tile/menubar.py:741 pysollib/tk/menubar.py:736 msgid "&Oriental games" msgstr "" -#: pysollib/tile/menubar.py:750 pysollib/tk/menubar.py:744 +#: pysollib/tile/menubar.py:749 pysollib/tk/menubar.py:744 msgid "&Special games" msgstr "" -#: pysollib/tile/menubar.py:756 pysollib/tk/menubar.py:750 +#: pysollib/tile/menubar.py:755 pysollib/tk/menubar.py:750 msgid "&All games by name" msgstr "" -#: pysollib/tile/menubar.py:1029 pysollib/tk/menubar.py:1023 +#: pysollib/tile/menubar.py:1028 pysollib/tk/menubar.py:1023 #: data/glade-translations:72 msgid "Sound settings" msgstr "" -#: pysollib/tile/menubar.py:1129 pysollib/tk/menubar.py:1127 +#: pysollib/tile/menubar.py:1128 pysollib/tk/menubar.py:1127 msgid "Select " msgstr "" -#: pysollib/tile/menubar.py:1176 pysollib/tk/menubar.py:1179 +#: pysollib/tile/menubar.py:1175 pysollib/tk/menubar.py:1179 msgid "Select table background" msgstr "" -#: pysollib/tile/menubar.py:1331 +#: pysollib/tile/menubar.py:1330 msgid "Change theme" msgstr "" -#: pysollib/tile/menubar.py:1332 +#: pysollib/tile/menubar.py:1331 msgid "" "This settings will take effect\n" "the next time you restart " @@ -2559,37 +2563,37 @@ msgstr "" msgid "XLarge cardsets" msgstr "" -#: pysollib/tile/selectcardset.py:242 pysollib/tk/menubar.py:1124 +#: pysollib/tile/selectcardset.py:236 pysollib/tk/menubar.py:1124 msgid "&Info..." msgstr "" -#: pysollib/tile/selectcardset.py:243 pysollib/tk/menubar.py:1122 +#: pysollib/tile/selectcardset.py:237 pysollib/tk/menubar.py:1122 #: pysollib/tk/menubar.py:1124 pysollib/tk/selectcardset.py:241 msgid "&Load" msgstr "" -#: pysollib/tile/selectcardset.py:320 pysollib/tk/selectcardset.py:320 +#: pysollib/tile/selectcardset.py:313 pysollib/tk/selectcardset.py:320 msgid "About cardset" msgstr "" -#: pysollib/tile/selectcardset.py:336 pysollib/tile/selectgame.py:364 +#: pysollib/tile/selectcardset.py:327 pysollib/tile/selectgame.py:354 #: pysollib/tk/selectcardset.py:336 pysollib/tk/selectgame.py:365 msgid "Type:" msgstr "" -#: pysollib/tile/selectcardset.py:337 pysollib/tk/selectcardset.py:337 +#: pysollib/tile/selectcardset.py:328 pysollib/tk/selectcardset.py:337 msgid "Styles:" msgstr "" -#: pysollib/tile/selectcardset.py:338 pysollib/tk/selectcardset.py:338 +#: pysollib/tile/selectcardset.py:329 pysollib/tk/selectcardset.py:338 msgid "Nationality:" msgstr "" -#: pysollib/tile/selectcardset.py:339 pysollib/tk/selectcardset.py:339 +#: pysollib/tile/selectcardset.py:330 pysollib/tk/selectcardset.py:339 msgid "Year:" msgstr "" -#: pysollib/tile/selectcardset.py:341 pysollib/tk/selectcardset.py:341 +#: pysollib/tile/selectcardset.py:332 pysollib/tk/selectcardset.py:341 msgid "Size:" msgstr "" @@ -2645,27 +2649,27 @@ msgstr "" msgid "by Skill Level" msgstr "" -#: pysollib/tile/selectgame.py:171 pysollib/tile/selectgame.py:533 +#: pysollib/tile/selectgame.py:171 pysollib/tile/selectgame.py:523 #: pysollib/tk/selectgame.py:170 pysollib/tk/selectgame.py:533 msgid "Luck only" msgstr "" -#: pysollib/tile/selectgame.py:172 pysollib/tile/selectgame.py:534 +#: pysollib/tile/selectgame.py:172 pysollib/tile/selectgame.py:524 #: pysollib/tk/selectgame.py:171 pysollib/tk/selectgame.py:534 msgid "Mostly luck" msgstr "" -#: pysollib/tile/selectgame.py:173 pysollib/tile/selectgame.py:535 +#: pysollib/tile/selectgame.py:173 pysollib/tile/selectgame.py:525 #: pysollib/tk/selectgame.py:172 pysollib/tk/selectgame.py:535 msgid "Balanced" msgstr "" -#: pysollib/tile/selectgame.py:174 pysollib/tile/selectgame.py:536 +#: pysollib/tile/selectgame.py:174 pysollib/tile/selectgame.py:526 #: pysollib/tk/selectgame.py:173 pysollib/tk/selectgame.py:536 msgid "Mostly skill" msgstr "" -#: pysollib/tile/selectgame.py:175 pysollib/tile/selectgame.py:537 +#: pysollib/tile/selectgame.py:175 pysollib/tile/selectgame.py:527 #: pysollib/tk/selectgame.py:174 pysollib/tk/selectgame.py:537 msgid "Skill only" msgstr "" @@ -2782,81 +2786,81 @@ msgstr "" msgid "Relaxed Variants" msgstr "" -#: pysollib/tile/selectgame.py:348 pysollib/tk/selectgame.py:349 +#: pysollib/tile/selectgame.py:341 pysollib/tk/selectgame.py:349 msgid "About game" msgstr "" -#: pysollib/tile/selectgame.py:361 pysollib/tk/selectgame.py:362 +#: pysollib/tile/selectgame.py:351 pysollib/tk/selectgame.py:362 msgid "Name:" msgstr "" -#: pysollib/tile/selectgame.py:362 pysollib/tk/selectgame.py:363 +#: pysollib/tile/selectgame.py:352 pysollib/tk/selectgame.py:363 msgid "Alternate names:" msgstr "" -#: pysollib/tile/selectgame.py:363 pysollib/tk/selectgame.py:364 +#: pysollib/tile/selectgame.py:353 pysollib/tk/selectgame.py:364 msgid "Category:" msgstr "" -#: pysollib/tile/selectgame.py:365 pysollib/tk/selectgame.py:366 +#: pysollib/tile/selectgame.py:355 pysollib/tk/selectgame.py:366 msgid "Skill level:" msgstr "" -#: pysollib/tile/selectgame.py:366 pysollib/tk/selectgame.py:367 +#: pysollib/tile/selectgame.py:356 pysollib/tk/selectgame.py:367 msgid "Decks:" msgstr "" -#: pysollib/tile/selectgame.py:367 pysollib/tk/selectgame.py:368 +#: pysollib/tile/selectgame.py:357 pysollib/tk/selectgame.py:368 msgid "Redeals:" msgstr "" -#: pysollib/tile/selectgame.py:369 pysollib/tk/selectgame.py:370 +#: pysollib/tile/selectgame.py:359 pysollib/tk/selectgame.py:370 msgid "Played:" msgstr "" -#: pysollib/tile/selectgame.py:370 pysollib/tile/tkstats.py:107 +#: pysollib/tile/selectgame.py:360 pysollib/tile/tkstats.py:107 #: pysollib/tile/tkstats.py:159 pysollib/tk/selectgame.py:371 #: pysollib/tk/tkstats.py:111 pysollib/tk/tkstats.py:163 #: data/glade-translations:9 data/glade-translations:13 msgid "Won:" msgstr "" -#: pysollib/tile/selectgame.py:371 pysollib/tile/tkstats.py:108 +#: pysollib/tile/selectgame.py:361 pysollib/tile/tkstats.py:108 #: pysollib/tile/tkstats.py:160 pysollib/tk/selectgame.py:372 #: pysollib/tk/tkstats.py:112 pysollib/tk/tkstats.py:164 #: data/glade-translations:11 data/glade-translations:14 msgid "Lost:" msgstr "" -#: pysollib/tile/selectgame.py:372 pysollib/tile/tkstats.py:615 +#: pysollib/tile/selectgame.py:362 pysollib/tile/tkstats.py:615 #: pysollib/tk/selectgame.py:373 pysollib/tk/tkstats.py:736 #: data/glade-translations:18 msgid "Playing time:" msgstr "" -#: pysollib/tile/selectgame.py:373 pysollib/tile/tkstats.py:622 +#: pysollib/tile/selectgame.py:363 pysollib/tile/tkstats.py:622 #: pysollib/tk/selectgame.py:374 pysollib/tk/tkstats.py:743 #: data/glade-translations:19 msgid "Moves:" msgstr "" -#: pysollib/tile/selectgame.py:374 pysollib/tk/selectgame.py:375 +#: pysollib/tile/selectgame.py:364 pysollib/tk/selectgame.py:375 msgid "% won:" msgstr "" -#: pysollib/tile/selectgame.py:406 pysollib/tk/selectgame.py:407 +#: pysollib/tile/selectgame.py:396 pysollib/tk/selectgame.py:407 msgid "&Rules" msgstr "" -#: pysollib/tile/selectgame.py:486 pysollib/tk/selectgame.py:486 +#: pysollib/tile/selectgame.py:476 pysollib/tk/selectgame.py:486 msgid "Playable Preview - " msgstr "" -#: pysollib/tile/selectgame.py:540 pysollib/tk/selectgame.py:540 +#: pysollib/tile/selectgame.py:530 pysollib/tk/selectgame.py:540 msgid "variable" msgstr "" -#: pysollib/tile/selectgame.py:541 pysollib/tk/selectgame.py:541 +#: pysollib/tile/selectgame.py:531 pysollib/tk/selectgame.py:541 msgid "unlimited" msgstr "" @@ -2988,22 +2992,22 @@ msgstr "" msgid "Music volume:" msgstr "" -#: pysollib/tile/soundoptionsdialog.py:146 +#: pysollib/tile/soundoptionsdialog.py:145 #: pysollib/tk/soundoptionsdialog.py:144 data/glade-translations:76 msgid "Enable samles" msgstr "" -#: pysollib/tile/soundoptionsdialog.py:171 +#: pysollib/tile/soundoptionsdialog.py:168 #: pysollib/tk/soundoptionsdialog.py:170 msgid "&Apply" msgstr "" -#: pysollib/tile/soundoptionsdialog.py:204 +#: pysollib/tile/soundoptionsdialog.py:201 #: pysollib/tk/soundoptionsdialog.py:206 msgid "Sound preferences info" msgstr "" -#: pysollib/tile/soundoptionsdialog.py:205 +#: pysollib/tile/soundoptionsdialog.py:202 #: pysollib/tk/soundoptionsdialog.py:207 msgid "" "Changing DirectX settings will take effect\n" @@ -3324,15 +3328,15 @@ msgstr "" msgid "Quit" msgstr "" -#: pysollib/tile/toolbar.py:268 pysollib/tk/toolbar.py:225 +#: pysollib/tile/toolbar.py:265 pysollib/tk/toolbar.py:225 msgid "Player" msgstr "" -#: pysollib/tile/toolbar.py:269 pysollib/tk/toolbar.py:226 +#: pysollib/tile/toolbar.py:266 pysollib/tk/toolbar.py:226 msgid "Player options" msgstr "" -#: pysollib/tile/toolbar.py:490 pysollib/tk/toolbar.py:466 +#: pysollib/tile/toolbar.py:485 pysollib/tk/toolbar.py:466 msgid "Toolbar" msgstr "" diff --git a/po/ru_games.po b/po/ru_games.po index 466d6684..e2ef3e0c 100644 --- a/po/ru_games.po +++ b/po/ru_games.po @@ -5,8 +5,8 @@ msgid "" msgstr "" "Project-Id-Version: PySol 0.0.1\n" -"POT-Creation-Date: Thu Nov 30 16:31:56 2006\n" -"PO-Revision-Date: 2006-12-04 16:26+0300\n" +"POT-Creation-Date: Thu Dec 7 15:25:59 2006\n" +"PO-Revision-Date: 2006-12-07 15:51+0300\n" "Last-Translator: Скоморох \n" "Language-Team: Russian \n" "MIME-Version: 1.0\n" @@ -35,6 +35,9 @@ msgstr "Матрица 8x8" msgid " 9x9 Matrix" msgstr "Матрица 9x9" +msgid " Pyramid's Stones" +msgstr "Камни пирамид" + msgid "10 x 8" msgstr "10 x 8" @@ -341,6 +344,9 @@ msgstr "Голубая луна" msgid "Boar" msgstr "Боров" +msgid "Board Patience" +msgstr "Полочный пасьянс" + msgid "Boat" msgstr "Лодка" @@ -410,6 +416,9 @@ msgstr "Британский квадрат" msgid "Brunswick" msgstr "Брюнсвик" +msgid "Brush" +msgstr "Щётка" + msgid "Buffalo Bill" msgstr "Буффало Билл" @@ -464,6 +473,9 @@ msgstr "Карфаген" msgid "Casino Klondike" msgstr "Казино Клондайк" +msgid "Casket" +msgstr "Шкатулка" + msgid "Cassim" msgstr "" @@ -570,6 +582,9 @@ msgstr "" msgid "Cockroach" msgstr "Таракан" +msgid "Colonel" +msgstr "Полковник" + msgid "Colorado" msgstr "Колорадо" @@ -658,6 +673,9 @@ msgstr "Дашаватара Круги" msgid "Dead King Golf" msgstr "Гольф Смертельный Король" +msgid "Deck" +msgstr "Колода" + msgid "Deep" msgstr "Глубокий" @@ -694,6 +712,9 @@ msgstr "Двойки" msgid "Dhanpati" msgstr "Dhanpati" +msgid "Dial" +msgstr "Циферблат" + msgid "Diamond" msgstr "Буби" @@ -981,6 +1002,9 @@ msgstr "Ковёр" msgid "Falling Star" msgstr "Падающая звезда" +msgid "Famous Fifty" +msgstr "" + msgid "Fan" msgstr "Веер" @@ -1008,6 +1032,9 @@ msgstr "Пасьянс Фатимы" msgid "Fatimeh's Game Relaxed" msgstr "Облегчённый Пасьянс Фатимы" +msgid "Fechter's Game" +msgstr "Пасьянс Фехтера" + msgid "Fifteen" msgstr "Пятнадцать" @@ -1058,6 +1085,9 @@ msgstr "Плавающий город" msgid "Floradora" msgstr "Флорадора" +msgid "Florentine Patience" +msgstr "Флорентийский пасьянс" + msgid "Flower Arrangement" msgstr "Аранжировка цветов" @@ -1080,6 +1110,9 @@ msgstr "Летящий дракон" msgid "ForeCell" msgstr "Свободная ячейка" +msgid "Formic" +msgstr "Муравьиный" + msgid "Fort" msgstr "Форт" @@ -1218,6 +1251,9 @@ msgstr "Великан" msgid "Giza" msgstr "Гиза" +msgid "Glacier" +msgstr "Ледник" + msgid "Glade" msgstr "Поляна" @@ -1352,6 +1388,9 @@ msgstr "Головы и хвосты" msgid "Helios" msgstr "Гелиос" +msgid "Hemispheres" +msgstr "" + msgid "Hex A Klon" msgstr "Шестнадцатиричный Клондайк" @@ -1379,6 +1418,9 @@ msgstr "Классы" msgid "Horse" msgstr "Конь" +msgid "Hospital Patience" +msgstr "Больничный пасьянс" + msgid "House in the Wood" msgstr "Дом в лесу" @@ -1537,6 +1579,9 @@ msgstr "Облегчённый Пасьянс Катрины" msgid "Khadga" msgstr "Khadga" +msgid "Khedive" +msgstr "Хедив" + msgid "King Albert" msgstr "Король Альберт" @@ -1546,6 +1591,10 @@ msgstr "" msgid "King Only Hex A Klon" msgstr "Королевский Шестнадцатиричный Клондайк" +#, fuzzy +msgid "King Tut" +msgstr "Король Альберт" + msgid "KingCell" msgstr "Королевская Ячейка" @@ -3426,6 +3475,9 @@ msgstr "Дверь" msgid "The Familiar" msgstr "Близкий" +msgid "The Four Continents" +msgstr "Четыре континента" + msgid "The Garden" msgstr "Сад" @@ -3441,6 +3493,9 @@ msgstr "Последний Монарх II" msgid "The Little Corporal" msgstr "Маленький Капрал" +msgid "The Red and the Black" +msgstr "Красное и Чёрное II" + msgid "The Spark" msgstr "Вспышка" diff --git a/po/ru_pysol.po b/po/ru_pysol.po index 1d04ff1c..aa807baf 100644 --- a/po/ru_pysol.po +++ b/po/ru_pysol.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: PySol 0.0.1\n" -"POT-Creation-Date: Thu Nov 30 16:32:59 2006\n" +"POT-Creation-Date: Thu Dec 7 15:27:04 2006\n" "PO-Revision-Date: 2006-11-30 16:36+0300\n" "Last-Translator: Скоморох \n" "Language-Team: Russian \n" @@ -19,8 +19,8 @@ msgstr "" msgid "New game" msgstr "Новая игра" -#: pysollib/actions.py:272 pysollib/tile/menubar.py:821 -#: pysollib/tile/menubar.py:835 pysollib/tk/menubar.py:815 +#: pysollib/actions.py:272 pysollib/tile/menubar.py:820 +#: pysollib/tile/menubar.py:834 pysollib/tk/menubar.py:815 #: pysollib/tk/menubar.py:829 msgid "Select game" msgstr "Выбрать игру" @@ -59,10 +59,10 @@ msgstr "&Следующий номер" #: pysollib/app.py:1176 pysollib/game.py:933 pysollib/game.py:1865 #: pysollib/tile/colorsdialog.py:123 pysollib/tile/edittextdialog.py:83 #: pysollib/tile/fontsdialog.py:145 pysollib/tile/fontsdialog.py:205 -#: pysollib/tile/gameinfodialog.py:155 pysollib/tile/menubar.py:1336 -#: pysollib/tile/playeroptionsdialog.py:111 pysollib/tile/selectcardset.py:397 -#: pysollib/tile/selecttile.py:161 pysollib/tile/soundoptionsdialog.py:171 -#: pysollib/tile/soundoptionsdialog.py:209 pysollib/tile/timeoutsdialog.py:94 +#: pysollib/tile/gameinfodialog.py:155 pysollib/tile/menubar.py:1335 +#: pysollib/tile/playeroptionsdialog.py:111 pysollib/tile/selectcardset.py:388 +#: pysollib/tile/selecttile.py:161 pysollib/tile/soundoptionsdialog.py:168 +#: pysollib/tile/soundoptionsdialog.py:206 pysollib/tile/timeoutsdialog.py:94 #: pysollib/tile/tkhtml.py:501 pysollib/tile/tkstats.py:211 #: pysollib/tile/tkstats.py:381 pysollib/tile/tkstats.py:450 #: pysollib/tile/tkstats.py:473 pysollib/tile/tkstats.py:516 @@ -88,9 +88,9 @@ msgstr "&ОК" #: pysollib/game.py:1338 pysollib/game.py:1344 #: pysollib/tile/colorsdialog.py:123 pysollib/tile/edittextdialog.py:83 #: pysollib/tile/fontsdialog.py:145 pysollib/tile/fontsdialog.py:205 -#: pysollib/tile/playeroptionsdialog.py:111 pysollib/tile/selectcardset.py:243 -#: pysollib/tile/selectgame.py:267 pysollib/tile/selectgame.py:407 -#: pysollib/tile/selecttile.py:161 pysollib/tile/soundoptionsdialog.py:171 +#: pysollib/tile/playeroptionsdialog.py:111 pysollib/tile/selectcardset.py:237 +#: pysollib/tile/selectgame.py:267 pysollib/tile/selectgame.py:397 +#: pysollib/tile/selecttile.py:161 pysollib/tile/soundoptionsdialog.py:168 #: pysollib/tile/timeoutsdialog.py:94 pysollib/tile/tkwidget.py:319 #: pysollib/tk/colorsdialog.py:122 pysollib/tk/edittextdialog.py:82 #: pysollib/tk/fontsdialog.py:143 pysollib/tk/fontsdialog.py:205 @@ -192,7 +192,7 @@ msgstr " для " msgid "Statistics for " msgstr "Статистика игры " -#: pysollib/actions.py:583 pysollib/tile/selectgame.py:349 +#: pysollib/actions.py:583 pysollib/tile/selectgame.py:344 #: pysollib/tile/toolbar.py:247 pysollib/tk/selectgame.py:350 #: pysollib/tk/toolbar.py:208 msgid "Statistics" @@ -263,7 +263,7 @@ msgid "Unknown" msgstr "Неизвестный" #: pysollib/app.py:883 pysollib/game.py:1316 pysollib/game.py:1331 -#: pysollib/game.py:1338 pysollib/game.py:1344 pysollib/tile/menubar.py:367 +#: pysollib/game.py:1338 pysollib/game.py:1344 pysollib/tile/menubar.py:366 #: pysollib/tk/menubar.py:363 msgid "&New game" msgstr "&Новая игра" @@ -725,11 +725,16 @@ msgid "Puzzle type" msgstr "Пазлы" #: pysollib/games/auldlangsyne.py:158 pysollib/games/calculation.py:104 -#: pysollib/games/numerica.py:90 pysollib/games/numerica.py:272 -#: pysollib/games/numerica.py:644 pysollib/games/numerica.py:757 +#: pysollib/games/numerica.py:94 pysollib/games/numerica.py:276 +#: pysollib/games/numerica.py:666 pysollib/games/numerica.py:779 msgid "Tableau. Build regardless of rank and suit." msgstr "Игровой стол. Складывать не считаясь с мастью и достоинством." +#: pysollib/games/auldlangsyne.py:555 +#, fuzzy +msgid "Foundation. Build up or down regardless of suit." +msgstr "Базовая ячейка. Складывать не считаясь с мастью." + #: pysollib/games/braid.py:248 pysollib/games/camelot.py:555 #: pysollib/games/napoleon.py:182 pysollib/games/ultra/dashavatara.py:959 #: pysollib/games/ultra/hanafuda1.py:257 pysollib/games/ultra/hexadeck.py:1190 @@ -864,7 +869,7 @@ msgstr "Раунд %d/%d" msgid "Deal %d" msgstr "Сдача %d" -#: pysollib/games/numerica.py:259 pysollib/games/royalcotillion.py:849 +#: pysollib/games/numerica.py:263 pysollib/games/royalcotillion.py:850 msgid "Foundation. Build up by color." msgstr "Базовая ячейка. Складывать по возрастанию в соответствии с цветом." @@ -1366,7 +1371,7 @@ msgstr "" "\n" "Пожалуйста проверьте установку %s.\n" -#: pysollib/main.py:74 pysollib/main.py:277 pysollib/tile/menubar.py:386 +#: pysollib/main.py:74 pysollib/main.py:277 pysollib/tile/menubar.py:385 #: pysollib/tk/menubar.py:382 msgid "&Quit" msgstr "В&ыход" @@ -2089,7 +2094,7 @@ msgstr "Подсветка отсутствия совпадения:" msgid "Select color" msgstr "Выбрать цвет" -#: pysollib/tile/findcarddialog.py:54 pysollib/tile/menubar.py:439 +#: pysollib/tile/findcarddialog.py:54 pysollib/tile/menubar.py:438 #: pysollib/tk/findcarddialog.py:54 pysollib/tk/menubar.py:435 msgid "Find card" msgstr "Найти карту" @@ -2149,493 +2154,493 @@ msgstr "Выбрать шрифт" msgid "Style" msgstr "Стиль" -#: pysollib/tile/menubar.py:96 pysollib/tk/menubar.py:94 +#: pysollib/tile/menubar.py:95 pysollib/tk/menubar.py:94 msgid "Compound" msgstr "Компоновка" -#: pysollib/tile/menubar.py:102 pysollib/tk/menubar.py:100 +#: pysollib/tile/menubar.py:101 pysollib/tk/menubar.py:100 msgid "Hide" msgstr "Спрятать" -#: pysollib/tile/menubar.py:105 pysollib/tk/menubar.py:103 +#: pysollib/tile/menubar.py:104 pysollib/tk/menubar.py:103 msgid "Top" msgstr "Сверху" -#: pysollib/tile/menubar.py:108 pysollib/tk/menubar.py:106 +#: pysollib/tile/menubar.py:107 pysollib/tk/menubar.py:106 msgid "Bottom" msgstr "Внизу" -#: pysollib/tile/menubar.py:111 pysollib/tk/menubar.py:109 +#: pysollib/tile/menubar.py:110 pysollib/tk/menubar.py:109 msgid "Left" msgstr "Слева" -#: pysollib/tile/menubar.py:114 pysollib/tk/menubar.py:112 +#: pysollib/tile/menubar.py:113 pysollib/tk/menubar.py:112 msgid "Right" msgstr "Справа" -#: pysollib/tile/menubar.py:118 pysollib/tk/menubar.py:116 +#: pysollib/tile/menubar.py:117 pysollib/tk/menubar.py:116 msgid "Small icons" msgstr "Маленькие пиктограммы" -#: pysollib/tile/menubar.py:121 pysollib/tk/menubar.py:119 +#: pysollib/tile/menubar.py:120 pysollib/tk/menubar.py:119 msgid "Large icons" msgstr "Большие пиктограммы" -#: pysollib/tile/menubar.py:127 pysollib/tk/menubar.py:125 +#: pysollib/tile/menubar.py:126 pysollib/tk/menubar.py:125 msgid "Customize toolbar" msgstr "Настроить панель инструментов" -#: pysollib/tile/menubar.py:366 pysollib/tk/menubar.py:362 +#: pysollib/tile/menubar.py:365 pysollib/tk/menubar.py:362 msgid "&File" msgstr "&Файл" -#: pysollib/tile/menubar.py:368 pysollib/tk/menubar.py:364 +#: pysollib/tile/menubar.py:367 pysollib/tk/menubar.py:364 msgid "R&ecent games" msgstr "Выбрать н&едавнюю игру" -#: pysollib/tile/menubar.py:370 pysollib/tk/menubar.py:366 +#: pysollib/tile/menubar.py:369 pysollib/tk/menubar.py:366 msgid "Select &random game" msgstr "С&лучайная игра" -#: pysollib/tile/menubar.py:371 pysollib/tk/menubar.py:367 +#: pysollib/tile/menubar.py:370 pysollib/tk/menubar.py:367 msgid "&All games" msgstr "&Все игры" -#: pysollib/tile/menubar.py:372 pysollib/tk/menubar.py:368 +#: pysollib/tile/menubar.py:371 pysollib/tk/menubar.py:368 msgid "Games played and &won" msgstr "&Выигранные игры" -#: pysollib/tile/menubar.py:373 pysollib/tk/menubar.py:369 +#: pysollib/tile/menubar.py:372 pysollib/tk/menubar.py:369 msgid "Games played and ¬ won" msgstr "&Невыигранные игры" -#: pysollib/tile/menubar.py:374 pysollib/tk/menubar.py:370 +#: pysollib/tile/menubar.py:373 pysollib/tk/menubar.py:370 msgid "Games not &played" msgstr "Не&сыгранные игры" -#: pysollib/tile/menubar.py:375 pysollib/tk/menubar.py:371 +#: pysollib/tile/menubar.py:374 pysollib/tk/menubar.py:371 msgid "Select game by nu&mber..." msgstr "Выбрать игру по &номеру..." -#: pysollib/tile/menubar.py:377 pysollib/tk/menubar.py:373 +#: pysollib/tile/menubar.py:376 pysollib/tk/menubar.py:373 msgid "Fa&vorite games" msgstr "&Избранные игры" -#: pysollib/tile/menubar.py:378 pysollib/tk/menubar.py:374 +#: pysollib/tile/menubar.py:377 pysollib/tk/menubar.py:374 msgid "A&dd to favorites" msgstr "&Добавить в избранное" -#: pysollib/tile/menubar.py:379 pysollib/tk/menubar.py:375 +#: pysollib/tile/menubar.py:378 pysollib/tk/menubar.py:375 msgid "R&emove from favorites" msgstr "&Удалить из избранных" -#: pysollib/tile/menubar.py:381 pysollib/tk/menubar.py:377 +#: pysollib/tile/menubar.py:380 pysollib/tk/menubar.py:377 msgid "&Open..." msgstr "&Открыть..." -#: pysollib/tile/menubar.py:382 pysollib/tk/menubar.py:378 +#: pysollib/tile/menubar.py:381 pysollib/tk/menubar.py:378 msgid "&Save" msgstr "&Сохранить" -#: pysollib/tile/menubar.py:383 pysollib/tk/menubar.py:379 +#: pysollib/tile/menubar.py:382 pysollib/tk/menubar.py:379 msgid "Save &as..." msgstr "Сохранить &как..." -#: pysollib/tile/menubar.py:385 pysollib/tk/menubar.py:381 +#: pysollib/tile/menubar.py:384 pysollib/tk/menubar.py:381 msgid "&Hold and quit" msgstr "Со&храниться и выйти" -#: pysollib/tile/menubar.py:390 pysollib/tile/selectgame.py:407 +#: pysollib/tile/menubar.py:389 pysollib/tile/selectgame.py:397 #: pysollib/tk/menubar.py:386 pysollib/tk/selectgame.py:407 msgid "&Select" msgstr "&Выбрать" -#: pysollib/tile/menubar.py:395 pysollib/tk/menubar.py:391 +#: pysollib/tile/menubar.py:394 pysollib/tk/menubar.py:391 msgid "&Edit" msgstr "Р&едактировать" -#: pysollib/tile/menubar.py:396 pysollib/tk/menubar.py:392 +#: pysollib/tile/menubar.py:395 pysollib/tk/menubar.py:392 msgid "&Undo" msgstr "&Отмена" -#: pysollib/tile/menubar.py:397 pysollib/tk/menubar.py:393 +#: pysollib/tile/menubar.py:396 pysollib/tk/menubar.py:393 msgid "&Redo" msgstr "&Повтор" -#: pysollib/tile/menubar.py:398 pysollib/tk/menubar.py:394 +#: pysollib/tile/menubar.py:397 pysollib/tk/menubar.py:394 msgid "Redo &all" msgstr "Вернуть все" -#: pysollib/tile/menubar.py:401 pysollib/tk/menubar.py:397 +#: pysollib/tile/menubar.py:400 pysollib/tk/menubar.py:397 msgid "&Set bookmark" msgstr "Установить &закладку" -#: pysollib/tile/menubar.py:403 pysollib/tile/menubar.py:407 +#: pysollib/tile/menubar.py:402 pysollib/tile/menubar.py:406 #: pysollib/tk/menubar.py:399 pysollib/tk/menubar.py:403 msgid "Bookmark %d" msgstr "Закладка %d" -#: pysollib/tile/menubar.py:405 pysollib/tk/menubar.py:401 +#: pysollib/tile/menubar.py:404 pysollib/tk/menubar.py:401 msgid "Go&to bookmark" msgstr "&Перейти к закладке" -#: pysollib/tile/menubar.py:410 pysollib/tk/menubar.py:406 +#: pysollib/tile/menubar.py:409 pysollib/tk/menubar.py:406 msgid "&Clear bookmarks" msgstr "О&чистить закладки" -#: pysollib/tile/menubar.py:413 pysollib/tile/toolbar.py:237 +#: pysollib/tile/menubar.py:412 pysollib/tile/toolbar.py:237 #: pysollib/tk/menubar.py:409 pysollib/tk/toolbar.py:198 msgid "Restart" msgstr "Начало" -#: pysollib/tile/menubar.py:415 pysollib/tk/menubar.py:411 +#: pysollib/tile/menubar.py:414 pysollib/tk/menubar.py:411 msgid "&Game" msgstr "&Игра" -#: pysollib/tile/menubar.py:416 pysollib/tk/menubar.py:412 +#: pysollib/tile/menubar.py:415 pysollib/tk/menubar.py:412 msgid "&Deal cards" msgstr "&Сдать карты" -#: pysollib/tile/menubar.py:417 pysollib/tk/menubar.py:413 +#: pysollib/tile/menubar.py:416 pysollib/tk/menubar.py:413 msgid "&Auto drop" msgstr "С&бросить карты" -#: pysollib/tile/menubar.py:418 pysollib/tk/menubar.py:414 +#: pysollib/tile/menubar.py:417 pysollib/tk/menubar.py:414 msgid "&Pause" msgstr "&Пауза" -#: pysollib/tile/menubar.py:421 pysollib/tk/menubar.py:417 +#: pysollib/tile/menubar.py:420 pysollib/tk/menubar.py:417 msgid "S&tatus..." msgstr "С&татус" -#: pysollib/tile/menubar.py:422 pysollib/tk/menubar.py:418 +#: pysollib/tile/menubar.py:421 pysollib/tk/menubar.py:418 msgid "&Comments..." msgstr "&Комментарии..." -#: pysollib/tile/menubar.py:424 pysollib/tk/menubar.py:420 +#: pysollib/tile/menubar.py:423 pysollib/tk/menubar.py:420 msgid "&Statistics" msgstr "Ст&атистика" -#: pysollib/tile/menubar.py:425 pysollib/tile/menubar.py:433 +#: pysollib/tile/menubar.py:424 pysollib/tile/menubar.py:432 #: pysollib/tk/menubar.py:421 pysollib/tk/menubar.py:429 msgid "Current game..." msgstr "Текущая игра..." -#: pysollib/tile/menubar.py:426 pysollib/tile/menubar.py:434 +#: pysollib/tile/menubar.py:425 pysollib/tile/menubar.py:433 #: pysollib/tk/menubar.py:422 pysollib/tk/menubar.py:430 msgid "All games..." msgstr "Все игры..." -#: pysollib/tile/menubar.py:428 pysollib/tk/menubar.py:424 +#: pysollib/tile/menubar.py:427 pysollib/tk/menubar.py:424 msgid "Session log..." msgstr "Лог сессии..." -#: pysollib/tile/menubar.py:429 pysollib/tk/menubar.py:425 +#: pysollib/tile/menubar.py:428 pysollib/tk/menubar.py:425 msgid "Full log..." msgstr "Полный лог..." -#: pysollib/tile/menubar.py:432 pysollib/tk/menubar.py:428 +#: pysollib/tile/menubar.py:431 pysollib/tk/menubar.py:428 msgid "D&emo statistics" msgstr "Статистика демо" -#: pysollib/tile/menubar.py:436 pysollib/tk/menubar.py:432 +#: pysollib/tile/menubar.py:435 pysollib/tk/menubar.py:432 msgid "&Assist" msgstr "&Подсказка" -#: pysollib/tile/menubar.py:437 pysollib/tk/menubar.py:433 +#: pysollib/tile/menubar.py:436 pysollib/tk/menubar.py:433 msgid "&Hint" msgstr "Подсказать &ход" -#: pysollib/tile/menubar.py:438 pysollib/tk/menubar.py:434 +#: pysollib/tile/menubar.py:437 pysollib/tk/menubar.py:434 msgid "Highlight p&iles" msgstr "П&оказать группы" -#: pysollib/tile/menubar.py:441 pysollib/tk/menubar.py:437 +#: pysollib/tile/menubar.py:440 pysollib/tk/menubar.py:437 msgid "&Demo" msgstr "&Демо" -#: pysollib/tile/menubar.py:442 pysollib/tk/menubar.py:438 +#: pysollib/tile/menubar.py:441 pysollib/tk/menubar.py:438 msgid "Demo (&all games)" msgstr "Демо (&все игры)" -#: pysollib/tile/menubar.py:444 pysollib/tk/menubar.py:440 +#: pysollib/tile/menubar.py:443 pysollib/tk/menubar.py:440 msgid "Piles description" msgstr "Описания ячеек" -#: pysollib/tile/menubar.py:448 pysollib/tk/menubar.py:444 +#: pysollib/tile/menubar.py:447 pysollib/tk/menubar.py:444 msgid "&Options" msgstr "&Настройка" -#: pysollib/tile/menubar.py:449 pysollib/tk/menubar.py:445 +#: pysollib/tile/menubar.py:448 pysollib/tk/menubar.py:445 msgid "&Player options..." msgstr "Настройки &игрока..." -#: pysollib/tile/menubar.py:450 pysollib/tk/menubar.py:446 +#: pysollib/tile/menubar.py:449 pysollib/tk/menubar.py:446 msgid "&Automatic play" msgstr "Настройки &автоматической игры" -#: pysollib/tile/menubar.py:451 pysollib/tk/menubar.py:447 +#: pysollib/tile/menubar.py:450 pysollib/tk/menubar.py:447 msgid "Auto &face up" msgstr "Автоматически &переворачивать" -#: pysollib/tile/menubar.py:452 pysollib/tk/menubar.py:448 +#: pysollib/tile/menubar.py:451 pysollib/tk/menubar.py:448 msgid "A&uto drop" msgstr "А&втоматически сбрасывать карты" -#: pysollib/tile/menubar.py:453 pysollib/tk/menubar.py:449 +#: pysollib/tile/menubar.py:452 pysollib/tk/menubar.py:449 msgid "Auto &deal" msgstr "Автоматически &сдавать карты" -#: pysollib/tile/menubar.py:455 pysollib/tk/menubar.py:451 +#: pysollib/tile/menubar.py:454 pysollib/tk/menubar.py:451 msgid "&Quick play" msgstr "&Быстрая игра" -#: pysollib/tile/menubar.py:456 pysollib/tk/menubar.py:452 +#: pysollib/tile/menubar.py:455 pysollib/tk/menubar.py:452 msgid "Assist &level" msgstr "&Уровень подсказки" -#: pysollib/tile/menubar.py:457 pysollib/tk/menubar.py:453 +#: pysollib/tile/menubar.py:456 pysollib/tk/menubar.py:453 msgid "Enable &undo" msgstr "Разрешить &возврат хода" -#: pysollib/tile/menubar.py:458 pysollib/tk/menubar.py:454 +#: pysollib/tile/menubar.py:457 pysollib/tk/menubar.py:454 msgid "Enable &bookmarks" msgstr "Разрешить &закладки" -#: pysollib/tile/menubar.py:459 pysollib/tk/menubar.py:455 +#: pysollib/tile/menubar.py:458 pysollib/tk/menubar.py:455 msgid "Enable &hint" msgstr "Разрешить &подсказки" -#: pysollib/tile/menubar.py:460 pysollib/tk/menubar.py:456 +#: pysollib/tile/menubar.py:459 pysollib/tk/menubar.py:456 msgid "Enable highlight p&iles" msgstr "Разрешить показывать к&учи" -#: pysollib/tile/menubar.py:461 pysollib/tk/menubar.py:457 +#: pysollib/tile/menubar.py:460 pysollib/tk/menubar.py:457 msgid "Enable highlight &cards" msgstr "Разрешить показывать &карты" -#: pysollib/tile/menubar.py:462 pysollib/tk/menubar.py:458 +#: pysollib/tile/menubar.py:461 pysollib/tk/menubar.py:458 msgid "Enable highlight same &rank" msgstr "Разрешить показывать карты &одного достоинства" -#: pysollib/tile/menubar.py:463 pysollib/tk/menubar.py:459 +#: pysollib/tile/menubar.py:462 pysollib/tk/menubar.py:459 msgid "Highlight &no matching" msgstr "Подсветка отсутствия &совпадения" -#: pysollib/tile/menubar.py:465 pysollib/tk/menubar.py:461 +#: pysollib/tile/menubar.py:464 pysollib/tk/menubar.py:461 msgid "&Show removed tiles (in Mahjongg games)" msgstr "Показывать удалённые (в Маджонг)" -#: pysollib/tile/menubar.py:466 pysollib/tk/menubar.py:462 +#: pysollib/tile/menubar.py:465 pysollib/tk/menubar.py:462 msgid "Show hint &arrow (in Shisen-Sho games)" msgstr "Показывать стрелку (в Шисен-Сё)" -#: pysollib/tile/menubar.py:468 pysollib/tk/menubar.py:464 +#: pysollib/tile/menubar.py:467 pysollib/tk/menubar.py:464 msgid "&Sound..." msgstr "&Звук..." -#: pysollib/tile/menubar.py:476 pysollib/tk/menubar.py:472 +#: pysollib/tile/menubar.py:475 pysollib/tk/menubar.py:472 msgid "Cards&et..." msgstr "Коло&да..." -#: pysollib/tile/menubar.py:477 pysollib/tk/menubar.py:473 +#: pysollib/tile/menubar.py:476 pysollib/tk/menubar.py:473 msgid "Table t&ile..." msgstr "Игровой &стол..." -#: pysollib/tile/menubar.py:479 pysollib/tk/menubar.py:475 +#: pysollib/tile/menubar.py:478 pysollib/tk/menubar.py:475 msgid "Card &background" msgstr "&Рубашка карты" -#: pysollib/tile/menubar.py:480 pysollib/tk/menubar.py:476 +#: pysollib/tile/menubar.py:479 pysollib/tk/menubar.py:476 msgid "Card &view" msgstr "&Вид карты" -#: pysollib/tile/menubar.py:481 pysollib/tk/menubar.py:477 +#: pysollib/tile/menubar.py:480 pysollib/tk/menubar.py:477 msgid "Card shado&w" msgstr "Тень карты" -#: pysollib/tile/menubar.py:482 pysollib/tk/menubar.py:478 +#: pysollib/tile/menubar.py:481 pysollib/tk/menubar.py:478 msgid "Shade &legal moves" msgstr "Подсвечивать &разрешённые ходы" -#: pysollib/tile/menubar.py:483 pysollib/tk/menubar.py:479 +#: pysollib/tile/menubar.py:482 pysollib/tk/menubar.py:479 msgid "&Negative cards bottom" msgstr "&Негативные контуры карты" -#: pysollib/tile/menubar.py:484 pysollib/tk/menubar.py:480 +#: pysollib/tile/menubar.py:483 pysollib/tk/menubar.py:480 msgid "Shrink face-down cards" msgstr "Сжимать закрытые карты" -#: pysollib/tile/menubar.py:485 pysollib/tk/menubar.py:481 +#: pysollib/tile/menubar.py:484 pysollib/tk/menubar.py:481 msgid "Shade &filled stacks" msgstr "Затемнять заполненные ячейки" -#: pysollib/tile/menubar.py:486 pysollib/tk/menubar.py:482 +#: pysollib/tile/menubar.py:485 pysollib/tk/menubar.py:482 msgid "A&nimations" msgstr "Анимаци&я" -#: pysollib/tile/menubar.py:487 pysollib/tk/menubar.py:483 +#: pysollib/tile/menubar.py:486 pysollib/tk/menubar.py:483 msgid "&None" msgstr "&Нет" -#: pysollib/tile/menubar.py:488 pysollib/tk/menubar.py:484 +#: pysollib/tile/menubar.py:487 pysollib/tk/menubar.py:484 msgid "&Timer based" msgstr "Базирующаяся на &таймере" -#: pysollib/tile/menubar.py:489 pysollib/tk/menubar.py:485 +#: pysollib/tile/menubar.py:488 pysollib/tk/menubar.py:485 msgid "&Fast" msgstr "&Быстрая" -#: pysollib/tile/menubar.py:490 pysollib/tk/menubar.py:486 +#: pysollib/tile/menubar.py:489 pysollib/tk/menubar.py:486 msgid "&Slow" msgstr "&Медленная" -#: pysollib/tile/menubar.py:491 pysollib/tk/menubar.py:487 +#: pysollib/tile/menubar.py:490 pysollib/tk/menubar.py:487 msgid "&Very slow" msgstr "&Очень медленная" -#: pysollib/tile/menubar.py:492 pysollib/tk/menubar.py:488 +#: pysollib/tile/menubar.py:491 pysollib/tk/menubar.py:488 msgid "&Mouse" msgstr "&Мышь" -#: pysollib/tile/menubar.py:493 pysollib/tk/menubar.py:489 +#: pysollib/tile/menubar.py:492 pysollib/tk/menubar.py:489 msgid "&Drag-and-Drop" msgstr "" -#: pysollib/tile/menubar.py:494 pysollib/tk/menubar.py:490 +#: pysollib/tile/menubar.py:493 pysollib/tk/menubar.py:490 msgid "&Point-and-Click" msgstr "" -#: pysollib/tile/menubar.py:495 pysollib/tk/menubar.py:491 +#: pysollib/tile/menubar.py:494 pysollib/tk/menubar.py:491 msgid "&Sticky mouse" msgstr "&Липкая мышь" -#: pysollib/tile/menubar.py:497 pysollib/tk/menubar.py:493 +#: pysollib/tile/menubar.py:496 pysollib/tk/menubar.py:493 msgid "Use mouse for undo/redo" msgstr "Использовать мышь для вперёд/назад" -#: pysollib/tile/menubar.py:499 pysollib/tk/menubar.py:495 +#: pysollib/tile/menubar.py:498 pysollib/tk/menubar.py:495 msgid "&Fonts..." msgstr "&Шрифты..." -#: pysollib/tile/menubar.py:500 pysollib/tk/menubar.py:496 +#: pysollib/tile/menubar.py:499 pysollib/tk/menubar.py:496 msgid "&Colors..." msgstr "&Цвета..." -#: pysollib/tile/menubar.py:501 pysollib/tk/menubar.py:497 +#: pysollib/tile/menubar.py:500 pysollib/tk/menubar.py:497 msgid "Time&outs..." msgstr "Тайма&уты..." -#: pysollib/tile/menubar.py:503 +#: pysollib/tile/menubar.py:502 msgid "Set t&heme" msgstr "Установить &тему" -#: pysollib/tile/menubar.py:505 pysollib/tk/menubar.py:499 +#: pysollib/tile/menubar.py:504 pysollib/tk/menubar.py:499 msgid "&Toolbar" msgstr "Панель и&нструментов" -#: pysollib/tile/menubar.py:507 pysollib/tk/menubar.py:501 +#: pysollib/tile/menubar.py:506 pysollib/tk/menubar.py:501 msgid "Stat&usbar" msgstr "Панель с&остояния" -#: pysollib/tile/menubar.py:508 pysollib/tk/menubar.py:502 +#: pysollib/tile/menubar.py:507 pysollib/tk/menubar.py:502 msgid "Show &statusbar" msgstr "Показывать панель состояния" -#: pysollib/tile/menubar.py:509 pysollib/tk/menubar.py:503 +#: pysollib/tile/menubar.py:508 pysollib/tk/menubar.py:503 msgid "Show &number of cards" msgstr "Показывать количество карт" -#: pysollib/tile/menubar.py:510 pysollib/tk/menubar.py:504 +#: pysollib/tile/menubar.py:509 pysollib/tk/menubar.py:504 msgid "Show &help bar" msgstr "Показывать панель помощи" -#: pysollib/tile/menubar.py:511 pysollib/tk/menubar.py:505 +#: pysollib/tile/menubar.py:510 pysollib/tk/menubar.py:505 msgid "Save games &geometry" msgstr "Сохранение &геометрии игры" -#: pysollib/tile/menubar.py:512 pysollib/tk/menubar.py:506 +#: pysollib/tile/menubar.py:511 pysollib/tk/menubar.py:506 msgid "&Demo logo" msgstr "Д&емо лого" -#: pysollib/tile/menubar.py:513 pysollib/tk/menubar.py:507 +#: pysollib/tile/menubar.py:512 pysollib/tk/menubar.py:507 msgid "Startup splash sc&reen" msgstr "О&кно запуска" -#: pysollib/tile/menubar.py:519 pysollib/tk/menubar.py:513 +#: pysollib/tile/menubar.py:518 pysollib/tk/menubar.py:513 msgid "&Help" msgstr "&Помощь" -#: pysollib/tile/menubar.py:520 pysollib/tk/menubar.py:514 +#: pysollib/tile/menubar.py:519 pysollib/tk/menubar.py:514 msgid "&Contents" msgstr "&Содержание" -#: pysollib/tile/menubar.py:521 pysollib/tk/menubar.py:515 +#: pysollib/tile/menubar.py:520 pysollib/tk/menubar.py:515 msgid "&How to play" msgstr "Как &играть" -#: pysollib/tile/menubar.py:522 pysollib/tk/menubar.py:516 +#: pysollib/tile/menubar.py:521 pysollib/tk/menubar.py:516 msgid "&Rules for this game" msgstr "&Правила текущей игры" -#: pysollib/tile/menubar.py:523 pysollib/tk/menubar.py:517 +#: pysollib/tile/menubar.py:522 pysollib/tk/menubar.py:517 msgid "&License terms" msgstr "&Лицензия" -#: pysollib/tile/menubar.py:526 pysollib/tk/menubar.py:520 +#: pysollib/tile/menubar.py:525 pysollib/tk/menubar.py:520 msgid "&About " msgstr "&О программе " -#: pysollib/tile/menubar.py:638 pysollib/tk/menubar.py:632 +#: pysollib/tile/menubar.py:637 pysollib/tk/menubar.py:632 msgid "All &games..." msgstr "&Все игры..." -#: pysollib/tile/menubar.py:640 pysollib/tk/menubar.py:634 +#: pysollib/tile/menubar.py:639 pysollib/tk/menubar.py:634 msgid "Playable pre&view..." msgstr "Играемый &предпросмотр..." -#: pysollib/tile/menubar.py:689 pysollib/tk/menubar.py:683 +#: pysollib/tile/menubar.py:688 pysollib/tk/menubar.py:683 msgid "&Mahjongg games" msgstr "Игры маджонг" -#: pysollib/tile/menubar.py:727 pysollib/tk/menubar.py:721 +#: pysollib/tile/menubar.py:726 pysollib/tk/menubar.py:721 msgid "&Popular games" msgstr "&Популярные игры" -#: pysollib/tile/menubar.py:735 pysollib/tk/menubar.py:729 +#: pysollib/tile/menubar.py:734 pysollib/tk/menubar.py:729 msgid "&French games" msgstr "&Классические игры" -#: pysollib/tile/menubar.py:742 pysollib/tk/menubar.py:736 +#: pysollib/tile/menubar.py:741 pysollib/tk/menubar.py:736 msgid "&Oriental games" msgstr "&Восточные игры" -#: pysollib/tile/menubar.py:750 pysollib/tk/menubar.py:744 +#: pysollib/tile/menubar.py:749 pysollib/tk/menubar.py:744 msgid "&Special games" msgstr "&Особые игры" -#: pysollib/tile/menubar.py:756 pysollib/tk/menubar.py:750 +#: pysollib/tile/menubar.py:755 pysollib/tk/menubar.py:750 msgid "&All games by name" msgstr "&Все игры по имени" -#: pysollib/tile/menubar.py:1029 pysollib/tk/menubar.py:1023 +#: pysollib/tile/menubar.py:1028 pysollib/tk/menubar.py:1023 #: data/glade-translations:72 msgid "Sound settings" msgstr "Настройка звука" -#: pysollib/tile/menubar.py:1129 pysollib/tk/menubar.py:1127 +#: pysollib/tile/menubar.py:1128 pysollib/tk/menubar.py:1127 msgid "Select " msgstr "Выбрать " -#: pysollib/tile/menubar.py:1176 pysollib/tk/menubar.py:1179 +#: pysollib/tile/menubar.py:1175 pysollib/tk/menubar.py:1179 msgid "Select table background" msgstr "Выбрать фоновое изображение" -#: pysollib/tile/menubar.py:1331 +#: pysollib/tile/menubar.py:1330 msgid "Change theme" msgstr "Изменение темы" -#: pysollib/tile/menubar.py:1332 +#: pysollib/tile/menubar.py:1331 msgid "" "This settings will take effect\n" "the next time you restart " @@ -2718,37 +2723,37 @@ msgstr "Большие колоды" msgid "XLarge cardsets" msgstr "Очень большие колоды" -#: pysollib/tile/selectcardset.py:242 pysollib/tk/menubar.py:1124 +#: pysollib/tile/selectcardset.py:236 pysollib/tk/menubar.py:1124 msgid "&Info..." msgstr "&Информация..." -#: pysollib/tile/selectcardset.py:243 pysollib/tk/menubar.py:1122 +#: pysollib/tile/selectcardset.py:237 pysollib/tk/menubar.py:1122 #: pysollib/tk/menubar.py:1124 pysollib/tk/selectcardset.py:241 msgid "&Load" msgstr "&Загрузить" -#: pysollib/tile/selectcardset.py:320 pysollib/tk/selectcardset.py:320 +#: pysollib/tile/selectcardset.py:313 pysollib/tk/selectcardset.py:320 msgid "About cardset" msgstr "О наборе карт" -#: pysollib/tile/selectcardset.py:336 pysollib/tile/selectgame.py:364 +#: pysollib/tile/selectcardset.py:327 pysollib/tile/selectgame.py:354 #: pysollib/tk/selectcardset.py:336 pysollib/tk/selectgame.py:365 msgid "Type:" msgstr "Тип:" -#: pysollib/tile/selectcardset.py:337 pysollib/tk/selectcardset.py:337 +#: pysollib/tile/selectcardset.py:328 pysollib/tk/selectcardset.py:337 msgid "Styles:" msgstr "Стиль:" -#: pysollib/tile/selectcardset.py:338 pysollib/tk/selectcardset.py:338 +#: pysollib/tile/selectcardset.py:329 pysollib/tk/selectcardset.py:338 msgid "Nationality:" msgstr "Национальность:" -#: pysollib/tile/selectcardset.py:339 pysollib/tk/selectcardset.py:339 +#: pysollib/tile/selectcardset.py:330 pysollib/tk/selectcardset.py:339 msgid "Year:" msgstr "Год:" -#: pysollib/tile/selectcardset.py:341 pysollib/tk/selectcardset.py:341 +#: pysollib/tile/selectcardset.py:332 pysollib/tk/selectcardset.py:341 msgid "Size:" msgstr "Размер:" @@ -2804,27 +2809,27 @@ msgstr "Популярные игры" msgid "by Skill Level" msgstr "По уровню мастерства" -#: pysollib/tile/selectgame.py:171 pysollib/tile/selectgame.py:533 +#: pysollib/tile/selectgame.py:171 pysollib/tile/selectgame.py:523 #: pysollib/tk/selectgame.py:170 pysollib/tk/selectgame.py:533 msgid "Luck only" msgstr "Только на везение" -#: pysollib/tile/selectgame.py:172 pysollib/tile/selectgame.py:534 +#: pysollib/tile/selectgame.py:172 pysollib/tile/selectgame.py:524 #: pysollib/tk/selectgame.py:171 pysollib/tk/selectgame.py:534 msgid "Mostly luck" msgstr "В основном на везение" -#: pysollib/tile/selectgame.py:173 pysollib/tile/selectgame.py:535 +#: pysollib/tile/selectgame.py:173 pysollib/tile/selectgame.py:525 #: pysollib/tk/selectgame.py:172 pysollib/tk/selectgame.py:535 msgid "Balanced" msgstr "Сбалансированные" -#: pysollib/tile/selectgame.py:174 pysollib/tile/selectgame.py:536 +#: pysollib/tile/selectgame.py:174 pysollib/tile/selectgame.py:526 #: pysollib/tk/selectgame.py:173 pysollib/tk/selectgame.py:536 msgid "Mostly skill" msgstr "В основном на мастерство" -#: pysollib/tile/selectgame.py:175 pysollib/tile/selectgame.py:537 +#: pysollib/tile/selectgame.py:175 pysollib/tile/selectgame.py:527 #: pysollib/tk/selectgame.py:174 pysollib/tk/selectgame.py:537 msgid "Skill only" msgstr "Только на мастерство" @@ -2941,81 +2946,81 @@ msgstr "Открытые игры (все карты видны)" msgid "Relaxed Variants" msgstr "Облегчённые варианты" -#: pysollib/tile/selectgame.py:348 pysollib/tk/selectgame.py:349 +#: pysollib/tile/selectgame.py:341 pysollib/tk/selectgame.py:349 msgid "About game" msgstr "Об игре " -#: pysollib/tile/selectgame.py:361 pysollib/tk/selectgame.py:362 +#: pysollib/tile/selectgame.py:351 pysollib/tk/selectgame.py:362 msgid "Name:" msgstr "Имя:" -#: pysollib/tile/selectgame.py:362 pysollib/tk/selectgame.py:363 +#: pysollib/tile/selectgame.py:352 pysollib/tk/selectgame.py:363 msgid "Alternate names:" msgstr "Другие имена:" -#: pysollib/tile/selectgame.py:363 pysollib/tk/selectgame.py:364 +#: pysollib/tile/selectgame.py:353 pysollib/tk/selectgame.py:364 msgid "Category:" msgstr "Категория:" -#: pysollib/tile/selectgame.py:365 pysollib/tk/selectgame.py:366 +#: pysollib/tile/selectgame.py:355 pysollib/tk/selectgame.py:366 msgid "Skill level:" msgstr "Уровень мастерства:" -#: pysollib/tile/selectgame.py:366 pysollib/tk/selectgame.py:367 +#: pysollib/tile/selectgame.py:356 pysollib/tk/selectgame.py:367 msgid "Decks:" msgstr "Колод:" -#: pysollib/tile/selectgame.py:367 pysollib/tk/selectgame.py:368 +#: pysollib/tile/selectgame.py:357 pysollib/tk/selectgame.py:368 msgid "Redeals:" msgstr "Пересдач:" -#: pysollib/tile/selectgame.py:369 pysollib/tk/selectgame.py:370 +#: pysollib/tile/selectgame.py:359 pysollib/tk/selectgame.py:370 msgid "Played:" msgstr "Играл:" -#: pysollib/tile/selectgame.py:370 pysollib/tile/tkstats.py:107 +#: pysollib/tile/selectgame.py:360 pysollib/tile/tkstats.py:107 #: pysollib/tile/tkstats.py:159 pysollib/tk/selectgame.py:371 #: pysollib/tk/tkstats.py:111 pysollib/tk/tkstats.py:163 #: data/glade-translations:9 data/glade-translations:13 msgid "Won:" msgstr "Выиграл:" -#: pysollib/tile/selectgame.py:371 pysollib/tile/tkstats.py:108 +#: pysollib/tile/selectgame.py:361 pysollib/tile/tkstats.py:108 #: pysollib/tile/tkstats.py:160 pysollib/tk/selectgame.py:372 #: pysollib/tk/tkstats.py:112 pysollib/tk/tkstats.py:164 #: data/glade-translations:11 data/glade-translations:14 msgid "Lost:" msgstr "Проиграл:" -#: pysollib/tile/selectgame.py:372 pysollib/tile/tkstats.py:615 +#: pysollib/tile/selectgame.py:362 pysollib/tile/tkstats.py:615 #: pysollib/tk/selectgame.py:373 pysollib/tk/tkstats.py:736 #: data/glade-translations:18 msgid "Playing time:" msgstr "Игровое время:" -#: pysollib/tile/selectgame.py:373 pysollib/tile/tkstats.py:622 +#: pysollib/tile/selectgame.py:363 pysollib/tile/tkstats.py:622 #: pysollib/tk/selectgame.py:374 pysollib/tk/tkstats.py:743 #: data/glade-translations:19 msgid "Moves:" msgstr "Ходов:" -#: pysollib/tile/selectgame.py:374 pysollib/tk/selectgame.py:375 +#: pysollib/tile/selectgame.py:364 pysollib/tk/selectgame.py:375 msgid "% won:" msgstr "% побед:" -#: pysollib/tile/selectgame.py:406 pysollib/tk/selectgame.py:407 +#: pysollib/tile/selectgame.py:396 pysollib/tk/selectgame.py:407 msgid "&Rules" msgstr "&Правила" -#: pysollib/tile/selectgame.py:486 pysollib/tk/selectgame.py:486 +#: pysollib/tile/selectgame.py:476 pysollib/tk/selectgame.py:486 msgid "Playable Preview - " msgstr "Играемый предпросмотр - " -#: pysollib/tile/selectgame.py:540 pysollib/tk/selectgame.py:540 +#: pysollib/tile/selectgame.py:530 pysollib/tk/selectgame.py:540 msgid "variable" msgstr "переменное кол-во" -#: pysollib/tile/selectgame.py:541 pysollib/tk/selectgame.py:541 +#: pysollib/tile/selectgame.py:531 pysollib/tk/selectgame.py:541 msgid "unlimited" msgstr "неограниченное кол-во" @@ -3147,22 +3152,22 @@ msgstr "Уровень звуков:" msgid "Music volume:" msgstr "Уровень музыки:" -#: pysollib/tile/soundoptionsdialog.py:146 +#: pysollib/tile/soundoptionsdialog.py:145 #: pysollib/tk/soundoptionsdialog.py:144 data/glade-translations:76 msgid "Enable samles" msgstr "Включить звуки" -#: pysollib/tile/soundoptionsdialog.py:171 +#: pysollib/tile/soundoptionsdialog.py:168 #: pysollib/tk/soundoptionsdialog.py:170 msgid "&Apply" msgstr "&Применить" -#: pysollib/tile/soundoptionsdialog.py:204 +#: pysollib/tile/soundoptionsdialog.py:201 #: pysollib/tk/soundoptionsdialog.py:206 msgid "Sound preferences info" msgstr "Информация о настройках звука" -#: pysollib/tile/soundoptionsdialog.py:205 +#: pysollib/tile/soundoptionsdialog.py:202 #: pysollib/tk/soundoptionsdialog.py:207 msgid "" "Changing DirectX settings will take effect\n" @@ -3503,15 +3508,15 @@ msgstr "Правила текущей игры" msgid "Quit" msgstr "Выйти" -#: pysollib/tile/toolbar.py:268 pysollib/tk/toolbar.py:225 +#: pysollib/tile/toolbar.py:265 pysollib/tk/toolbar.py:225 msgid "Player" msgstr "Игрок" -#: pysollib/tile/toolbar.py:269 pysollib/tk/toolbar.py:226 +#: pysollib/tile/toolbar.py:266 pysollib/tk/toolbar.py:226 msgid "Player options" msgstr "Установки игрока" -#: pysollib/tile/toolbar.py:490 pysollib/tk/toolbar.py:466 +#: pysollib/tile/toolbar.py:485 pysollib/tk/toolbar.py:466 msgid "Toolbar" msgstr "Панель инструментов" diff --git a/pysollib/games/freecell.py b/pysollib/games/freecell.py index ed53fcb8..b2ca6a8c 100644 --- a/pysollib/games/freecell.py +++ b/pysollib/games/freecell.py @@ -606,6 +606,26 @@ class Headquarters(Game): shallHighlightMatch = Game._shallHighlightMatch_AC +# /*********************************************************************** +# // Can Can +# ************************************************************************/ + +class CanCan(FreeCell): + Hint_Class = DefaultHint + RowStack_Class = KingAC_RowStack + ReserveStack_Class = StackWrapper(OpenStack, max_accept=0) + + def createGame(self): + FreeCell.createGame(self, rows=13, reserves=3) + + def startGame(self): + for i in range(3): + self.s.talon.dealRow(frames=0) + self.startDealSample() + self.s.talon.dealRow(rows=self.s.reserves) + self.s.talon.dealRowAvail() + + # register the game registerGame(GameInfo(5, RelaxedFreeCell, "Relaxed FreeCell", @@ -652,4 +672,6 @@ registerGame(GameInfo(542, KingCell, "KingCell", GI.GT_FREECELL | GI.GT_OPEN, 1, 0, GI.SL_MOSTLY_SKILL)) registerGame(GameInfo(648, Headquarters, "Headquarters", GI.GT_FREECELL | GI.GT_OPEN | GI.GT_ORIGINAL, 2, 0, GI.SL_MOSTLY_SKILL)) +registerGame(GameInfo(698, CanCan, "Can Can", + GI.GT_RAGLAN | GI.GT_OPEN, 1, 0, GI.SL_MOSTLY_SKILL)) diff --git a/pysollib/games/grandfathersclock.py b/pysollib/games/grandfathersclock.py index 1fbf4138..95b6772e 100644 --- a/pysollib/games/grandfathersclock.py +++ b/pysollib/games/grandfathersclock.py @@ -361,6 +361,118 @@ class Hemispheres(Game): return card1.color == card2.color and abs(card1.rank-card2.rank) == 1 +# /*********************************************************************** +# // Big Ben +# ************************************************************************/ + +class BigBen_Talon(DealRowTalonStack): + + def dealCards(self, sound=0): + rows = [s for s in self.game.s.rows if len(s.cards) < 3] + if not rows: + if sound and not self.game.demo: + self.game.playSample("dealwaste") + return self.dealRow(rows=[self.game.s.waste], sound=0) + if sound and self.game.app.opt.animations: + self.game.startDealSample() + ncards = 0 + while rows: + n = self.dealRowAvail(rows=rows, sound=0) + if not n: + break + ncards += n + rows = [s for s in self.game.s.rows if len(s.cards) < 3] + if sound: + self.game.stopSamples() + return ncards + +class BigBen_RowStack(SS_RowStack): + def acceptsCards(self, from_stack, cards): + if not SS_RowStack.acceptsCards(self, from_stack, cards): + return False + if len(self.cards) < 3: + return False + return True + +class BigBen(Game): + Hint_Class = CautiousDefaultHint + + def createGame(self): + l, s = Layout(self), self.s + self.setSize(l.XM+12*l.XS, l.YM+5.5*l.YS) + + y = l.YM + for i in range(2): + x = l.XM + for j in range(6): + s.rows.append(BigBen_RowStack(x, y, self, max_move=1, mod=13)) + x += l.XS + y += 2.75*l.YS + + x0, y0 = l.XM+6*l.XS, l.YM + rank = 1 + for xx, yy in ( + (0, 1.5), + (0.5, 0.5), + (1.5, 0.15), + (2.5, 0), + (3.5, 0.15), + (4.5, 0.5), + (5, 1.5), + (4.5, 2.5), + (3.5, 2.85), + (2.5, 3), + (1.5, 2.85), + (0.5, 2.5), + ): + x = int(x0 + xx*l.XS) + y = int(y0 + yy*l.YS) + suit=(3,0,2,1)[rank%4] + max_cards = rank <= 4 and 8 or 9 + s.foundations.append(SS_FoundationStack(x, y, self, suit=suit, + max_cards=max_cards, base_rank=rank, + mod=13, max_move=0)) + rank += 1 + + x, y = self.width-l.XS, self.height-l.YS + s.talon = BigBen_Talon(x, y, self, max_rounds=1) + l.createText(s.talon, 'n') + x -= l.XS + s.waste = WasteStack(x, y, self) + l.createText(s.waste, 'n') + + l.defaultStackGroups() + + def _shuffleHook(self, cards): + # move clock cards to top of the Talon (i.e. first cards to be dealt) + C, S, H, D = range(4) # suits + t = [(1,C), (2,H), (3,S), (4,D), (5,C), (6,H), + (7,S), (8,D), (9,C), (JACK,H), (QUEEN,S), (KING,D)] + clocks = [] + for c in cards[:]: + if (c.rank, c.suit) in t: + t.remove((c.rank, c.suit)) + cards.remove(c) + clocks.append(c) + if not t: + break + # sort clocks reverse by rank + clocks.sort(lambda a, b: cmp(b.rank, a.rank)) + return cards+clocks + + def startGame(self): + self.startDealSample() + self.s.talon.dealRow(rows=self.s.foundations) + for i in range(3): + self.s.talon.dealRow() + + def _autoDeal(self, sound=1): + # don't deal a card to the waste if the waste is empty + return 0 + + shallHighlightMatch = Game._shallHighlightMatch_SSW + + # register the game registerGame(GameInfo(261, GrandfathersClock, "Grandfather's Clock", @@ -370,4 +482,7 @@ registerGame(GameInfo(682, Dial, "Dial", registerGame(GameInfo(690, Hemispheres, "Hemispheres", GI.GT_2DECK_TYPE, 2, 0, GI.SL_BALANCED, altnames=("The Four Continents",) )) +registerGame(GameInfo(697, BigBen, "Big Ben", + GI.GT_2DECK_TYPE, 2, 0, GI.SL_BALANCED, + altnames=("Clock",) )) diff --git a/pysollib/games/royalcotillion.py b/pysollib/games/royalcotillion.py index f002e572..e85fdc98 100644 --- a/pysollib/games/royalcotillion.py +++ b/pysollib/games/royalcotillion.py @@ -462,7 +462,8 @@ class BritishConstitution(Game): # create stacks x, y = l.XM+l.XS, l.YM for i in range(8): - s.foundations.append(BritishConstitution_Foundation(x, y, self, suit=int(i/2), max_cards=11)) + s.foundations.append(BritishConstitution_Foundation(x, y, self, + suit=int(i/2), max_cards=11)) x += l.XS y = l.YM+l.YS @@ -1084,6 +1085,80 @@ class Colonel(Game): shallHighlightMatch = Game._shallHighlightMatch_SS +# /*********************************************************************** +# // The Red and the Black +# ************************************************************************/ + + + +class TheRedAndTheBlack_Foundation(AC_FoundationStack): + def acceptsCards(self, from_stack, cards): + if not AC_FoundationStack.acceptsCards(self, from_stack, cards): + return False + if from_stack is self.game.s.waste or from_stack in self.game.s.rows: + return True + return False + +class TheRedAndTheBlack_Reserve(ReserveStack): + def acceptsCards(self, from_stack, cards): + if not ReserveStack.acceptsCards(self, from_stack, cards): + return False + if from_stack is self.game.s.waste: + return True + return False + +class TheRedAndTheBlack_RowStack(AC_RowStack): + def getBottomImage(self): + return self.game.app.images.getReserveBottom() + + +class TheRedAndTheBlack(Game): + Hint_Class = CautiousDefaultHint + + def createGame(self): + + l, s = Layout(self), self.s + self.setSize(l.XM + 8*l.XS, l.YM + 4.5*l.YS) + + x, y = l.XM, l.YM + for i in range(8): + s.foundations.append(TheRedAndTheBlack_Foundation(x, y, self, + suit=i/2)) + x += l.XS + x, y = l.XM+2*l.XS, l.YM+l.YS + for i in range(4): + stack = TheRedAndTheBlack_RowStack(x, y, self, max_move=1) + stack.CARD_YOFFSET = 0 + s.rows.append(stack) + x += l.XS + x, y = l.XM+2*l.XS, l.YM+2*l.YS + for i in range(4): + s.reserves.append(TheRedAndTheBlack_Reserve(x, y, self)) + x += l.XS + x, y = l.XM+3*l.XS, l.YM+3.5*l.YS + s.talon = WasteTalonStack(x, y, self, max_rounds=1) + l.createText(s.talon, "sw") + x += l.XS + s.waste = WasteStack(x, y, self) + l.createText(s.waste, "se") + + # define stack-groups + l.defaultStackGroups() + + def startGame(self): + self.s.talon.dealRow(rows=self.s.foundations, frames=0) + self.startDealSample() + self.s.talon.dealRow() + self.s.talon.dealRow(rows=self.s.reserves) + self.s.talon.dealCards() # deal first card to WasteStack + + def _shuffleHook(self, cards): + # move Aces to top of the Talon (i.e. first cards to be dealt) + return self._shuffleHookMoveToTop(cards, lambda c: (c.rank == ACE, c.suit)) + + shallHighlightMatch = Game._shallHighlightMatch_AC + + # register the game registerGame(GameInfo(54, RoyalCotillion, "Royal Cotillion", @@ -1124,4 +1199,6 @@ registerGame(GameInfo(676, BoxingTheCompass, "Boxing the Compass", GI.GT_2DECK_TYPE, 2, 1, GI.SL_BALANCED)) registerGame(GameInfo(693, Colonel, "Colonel", GI.GT_2DECK_TYPE, 2, 0, GI.SL_MOSTLY_SKILL)) +registerGame(GameInfo(695, TheRedAndTheBlack, "The Red and the Black", + GI.GT_2DECK_TYPE, 2, 0, GI.SL_BALANCED)) diff --git a/pysollib/games/windmill.py b/pysollib/games/windmill.py index 5a78cab3..509edaec 100644 --- a/pysollib/games/windmill.py +++ b/pysollib/games/windmill.py @@ -325,6 +325,7 @@ class Corners(Game): # /*********************************************************************** # // Czarina # // Four Seasons +# // Florentine Patience # ************************************************************************/ class Czarina_RowStack(RK_RowStack): @@ -336,10 +337,10 @@ class Czarina(Corners): Hint_Class = CautiousDefaultHint RowStack_Class = StackWrapper(Czarina_RowStack, mod=13, max_move=1) - def createGame(self): + def createGame(self, max_rounds=1): # extra settings self.base_card = None - Corners.createGame(self, max_rounds=1) + Corners.createGame(self, max_rounds=max_rounds) def startGame(self): self.startDealSample() @@ -375,6 +376,10 @@ class FourSeasons(Czarina): def fillStack(self, stack): pass +class FlorentinePatience(FourSeasons): + def createGame(self): + Czarina.createGame(self, max_rounds=2) + # /*********************************************************************** # // Simplicity @@ -464,4 +469,6 @@ registerGame(GameInfo(484, FourSeasons, "Four Seasons", altnames=('Corner Card', 'Vanishing Cross') )) registerGame(GameInfo(561, DutchSolitaire, "Dutch Solitaire", GI.GT_2DECK_TYPE, 2, 0, GI.SL_MOSTLY_SKILL)) +registerGame(GameInfo(696, FlorentinePatience, "Florentine Patience", + GI.GT_1DECK_TYPE, 1, 1, GI.SL_MOSTLY_LUCK)) diff --git a/pysollib/layout.py b/pysollib/layout.py index 74b7d282..58977332 100644 --- a/pysollib/layout.py +++ b/pysollib/layout.py @@ -375,7 +375,7 @@ class Layout: for i in range(rows): self.s.rows.append(S(x, y)) x = x + XS - self.setRegion(self.s.rows, (-999, y - YM / 2, 999999, 999999)) + self.setRegion(self.s.rows, (-999, y - CH / 2, 999999, 999999)) # create talon x, y = XM, h - YS