1
0
Fork 0
mirror of https://github.com/shlomif/PySolFC.git synced 2025-04-05 00:02:29 -04:00

- updated russian translation

- added customization of sound-samples
- improved soundoptionsdialog


git-svn-id: https://pysolfc.svn.sourceforge.net/svnroot/pysolfc/PySolFC/trunk@7 39dd0a4e-7c14-0410-91b3-c4f2d318f732
This commit is contained in:
skomoroh 2006-06-10 21:21:22 +00:00
parent 0c3f1915da
commit 314f1a54b6
10 changed files with 503 additions and 463 deletions

View file

@ -5,7 +5,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PySol 0.0.1\n" "Project-Id-Version: PySol 0.0.1\n"
"POT-Creation-Date: Tue Jun 6 02:20:52 2006\n" "POT-Creation-Date: Sun Jun 11 00:30:03 2006\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -939,6 +939,9 @@ msgstr ""
msgid "Grampus" msgid "Grampus"
msgstr "" msgstr ""
msgid "Granada"
msgstr ""
msgid "Grandfather" msgid "Grandfather"
msgstr "" msgstr ""

View file

@ -5,7 +5,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: Tue Jun 6 02:20:47 2006\n" "POT-Creation-Date: Sun Jun 11 00:29:57 2006\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -19,8 +19,8 @@ msgstr ""
msgid "New game" msgid "New game"
msgstr "" msgstr ""
#: pysollib/actions.py:357 pysollib/tk/menubar.py:667 #: pysollib/actions.py:357 pysollib/tk/menubar.py:665
#: pysollib/tk/menubar.py:681 #: pysollib/tk/menubar.py:679
msgid "Select game" msgid "Select game"
msgstr "" msgstr ""
@ -52,34 +52,34 @@ msgstr ""
msgid "&Next number" msgid "&Next number"
msgstr "" msgstr ""
#: pysollib/actions.py:409 pysollib/app.py:1090 pysollib/app.py:1102 #: pysollib/actions.py:409 pysollib/app.py:1118 pysollib/app.py:1130
#: pysollib/game.py:828 pysollib/game.py:1642 pysollib/main.py:413 #: pysollib/game.py:830 pysollib/game.py:1644 pysollib/main.py:413
#: pysollib/main.py:421 pysollib/tk/colorsdialog.py:131 #: pysollib/main.py:421 pysollib/tk/colorsdialog.py:131
#: pysollib/tk/edittextdialog.py:82 pysollib/tk/fontsdialog.py:140 #: pysollib/tk/edittextdialog.py:82 pysollib/tk/fontsdialog.py:140
#: pysollib/tk/fontsdialog.py:204 pysollib/tk/gameinfodialog.py:133 #: pysollib/tk/fontsdialog.py:204 pysollib/tk/gameinfodialog.py:133
#: pysollib/tk/playeroptionsdialog.py:86 #: pysollib/tk/playeroptionsdialog.py:85
#: pysollib/tk/playeroptionsdialog.py:161 pysollib/tk/selectcardset.py:240 #: pysollib/tk/playeroptionsdialog.py:160 pysollib/tk/selectcardset.py:240
#: pysollib/tk/selectcardset.py:396 pysollib/tk/selecttile.py:158 #: pysollib/tk/selectcardset.py:396 pysollib/tk/selecttile.py:158
#: pysollib/tk/soundoptionsdialog.py:106 pysollib/tk/soundoptionsdialog.py:158 #: pysollib/tk/soundoptionsdialog.py:169 pysollib/tk/soundoptionsdialog.py:223
#: pysollib/tk/timeoutsdialog.py:92 pysollib/tk/tkhtml.py:459 #: pysollib/tk/timeoutsdialog.py:92 pysollib/tk/tkhtml.py:459
#: pysollib/tk/tkstats.py:288 pysollib/tk/tkstats.py:571 #: pysollib/tk/tkstats.py:288 pysollib/tk/tkstats.py:571
#: pysollib/tk/tkstats.py:645 pysollib/tk/tkstats.py:661 #: pysollib/tk/tkstats.py:645 pysollib/tk/tkstats.py:661
#: pysollib/tk/tkstats.py:703 pysollib/tk/tkstats.py:775 #: pysollib/tk/tkstats.py:703 pysollib/tk/tkstats.py:775
#: pysollib/tk/tkstats.py:859 pysollib/tk/tkwidget.py:159 #: pysollib/tk/tkstats.py:859 pysollib/tk/tkwidget.py:156
#: pysollib/tk/tkwidget.py:312 #: pysollib/tk/tkwidget.py:320
msgid "&OK" msgid "&OK"
msgstr "" msgstr ""
#: pysollib/actions.py:409 pysollib/app.py:1102 pysollib/game.py:828 #: pysollib/actions.py:409 pysollib/app.py:1130 pysollib/game.py:830
#: pysollib/game.py:1205 pysollib/game.py:1220 pysollib/game.py:1226 #: pysollib/game.py:1207 pysollib/game.py:1222 pysollib/game.py:1228
#: pysollib/game.py:1231 pysollib/tk/colorsdialog.py:131 #: pysollib/game.py:1233 pysollib/tk/colorsdialog.py:131
#: pysollib/tk/edittextdialog.py:82 pysollib/tk/fontsdialog.py:140 #: pysollib/tk/edittextdialog.py:82 pysollib/tk/fontsdialog.py:140
#: pysollib/tk/fontsdialog.py:204 pysollib/tk/menubar.py:854 #: pysollib/tk/fontsdialog.py:204 pysollib/tk/menubar.py:852
#: pysollib/tk/menubar.py:856 pysollib/tk/playeroptionsdialog.py:86 #: pysollib/tk/menubar.py:854 pysollib/tk/playeroptionsdialog.py:85
#: pysollib/tk/playeroptionsdialog.py:161 pysollib/tk/selectcardset.py:240 #: pysollib/tk/playeroptionsdialog.py:160 pysollib/tk/selectcardset.py:240
#: pysollib/tk/selectgame.py:268 pysollib/tk/selectgame.py:409 #: pysollib/tk/selectgame.py:268 pysollib/tk/selectgame.py:409
#: pysollib/tk/selecttile.py:158 pysollib/tk/soundoptionsdialog.py:106 #: pysollib/tk/selecttile.py:158 pysollib/tk/soundoptionsdialog.py:169
#: pysollib/tk/timeoutsdialog.py:92 pysollib/tk/tkwidget.py:312 #: pysollib/tk/timeoutsdialog.py:92 pysollib/tk/tkwidget.py:320
msgid "&Cancel" msgid "&Cancel"
msgstr "" msgstr ""
@ -125,7 +125,7 @@ msgstr ""
msgid "Error while writing to file" msgid "Error while writing to file"
msgstr "" msgstr ""
#: pysollib/actions.py:616 pysollib/actions.py:652 pysollib/actions.py:941 #: pysollib/actions.py:616 pysollib/actions.py:652
msgid " Info" msgid " Info"
msgstr "" msgstr ""
@ -236,37 +236,27 @@ msgstr ""
msgid "Set timeouts" msgid "Set timeouts"
msgstr "" msgstr ""
#: pysollib/actions.py:938
msgid "Error while saving options"
msgstr ""
#: pysollib/actions.py:942
msgid ""
"Options were saved to\n"
"\n"
msgstr ""
#: pysollib/app.py:86 #: pysollib/app.py:86
msgid "Unknown" msgid "Unknown"
msgstr "" msgstr ""
#: pysollib/app.py:952 #: pysollib/app.py:980
msgid "Loading %s %s..." msgid "Loading %s %s..."
msgstr "" msgstr ""
#: pysollib/app.py:987 #: pysollib/app.py:1015
msgid " load error" msgid " load error"
msgstr "" msgstr ""
#: pysollib/app.py:988 #: pysollib/app.py:1016
msgid "Error while loading " msgid "Error while loading "
msgstr "" msgstr ""
#: pysollib/app.py:1082 #: pysollib/app.py:1110
msgid "Incompatible " msgid "Incompatible "
msgstr "" msgstr ""
#: pysollib/app.py:1084 #: pysollib/app.py:1112
msgid "" msgid ""
"The currently selected %s %s\n" "The currently selected %s %s\n"
"is not compatible with the game\n" "is not compatible with the game\n"
@ -275,7 +265,7 @@ msgid ""
"Please select a %s type %s.\n" "Please select a %s type %s.\n"
msgstr "" msgstr ""
#: pysollib/app.py:1100 #: pysollib/app.py:1128
msgid "Please select a %s type %s" msgid "Please select a %s type %s"
msgstr "" msgstr ""
@ -284,48 +274,48 @@ msgid ""
"Player\n" "Player\n"
msgstr "" msgstr ""
#: pysollib/game.py:824 #: pysollib/game.py:826
msgid "Discard current game ?" msgid "Discard current game ?"
msgstr "" msgstr ""
#: pysollib/game.py:1159 #: pysollib/game.py:1161
msgid "" msgid ""
"\n" "\n"
"You have reached\n" "You have reached\n"
"#%d in the %s of playing time" "#%d in the %s of playing time"
msgstr "" msgstr ""
#: pysollib/game.py:1162 #: pysollib/game.py:1164
msgid "" msgid ""
"\n" "\n"
"and #%d in the %s of moves" "and #%d in the %s of moves"
msgstr "" msgstr ""
#: pysollib/game.py:1164 #: pysollib/game.py:1166
msgid "" msgid ""
"\n" "\n"
"You have reached\n" "You have reached\n"
"#%d in the %s of moves" "#%d in the %s of moves"
msgstr "" msgstr ""
#: pysollib/game.py:1167 #: pysollib/game.py:1169
msgid "" msgid ""
"\n" "\n"
"and #%d in the %s of total moves" "and #%d in the %s of total moves"
msgstr "" msgstr ""
#: pysollib/game.py:1169 #: pysollib/game.py:1171
msgid "" msgid ""
"\n" "\n"
"You have reached\n" "You have reached\n"
"#%d in the %s of total moves" "#%d in the %s of total moves"
msgstr "" msgstr ""
#: pysollib/game.py:1196 pysollib/game.py:1212 #: pysollib/game.py:1198 pysollib/game.py:1214
msgid "Game won" msgid "Game won"
msgstr "" msgstr ""
#: pysollib/game.py:1197 #: pysollib/game.py:1199
msgid "" msgid ""
"\n" "\n"
"Congratulations, this\n" "Congratulations, this\n"
@ -336,12 +326,12 @@ msgid ""
"%s\n" "%s\n"
msgstr "" msgstr ""
#: pysollib/game.py:1205 pysollib/game.py:1220 pysollib/game.py:1226 #: pysollib/game.py:1207 pysollib/game.py:1222 pysollib/game.py:1228
#: pysollib/game.py:1231 pysollib/tk/menubar.py:250 #: pysollib/game.py:1233 pysollib/tk/menubar.py:250
msgid "&New game" msgid "&New game"
msgstr "" msgstr ""
#: pysollib/game.py:1213 #: pysollib/game.py:1215
msgid "" msgid ""
"\n" "\n"
"Congratulations, you did it !\n" "Congratulations, you did it !\n"
@ -351,99 +341,99 @@ msgid ""
"%s\n" "%s\n"
msgstr "" msgstr ""
#: pysollib/game.py:1224 pysollib/game.py:1229 #: pysollib/game.py:1226 pysollib/game.py:1231
msgid "Game finished" msgid "Game finished"
msgstr "" msgstr ""
#: pysollib/game.py:1225 pysollib/game.py:1643 #: pysollib/game.py:1227 pysollib/game.py:1645
msgid "" msgid ""
"\n" "\n"
"Game finished\n" "Game finished\n"
msgstr "" msgstr ""
#: pysollib/game.py:1230 #: pysollib/game.py:1232
msgid "" msgid ""
"\n" "\n"
"Game finished, but not without my help...\n" "Game finished, but not without my help...\n"
msgstr "" msgstr ""
#: pysollib/game.py:1231 #: pysollib/game.py:1233
msgid "&Restart" msgid "&Restart"
msgstr "" msgstr ""
#: pysollib/game.py:1535 #: pysollib/game.py:1537
msgid "Score %6d" msgid "Score %6d"
msgstr "" msgstr ""
#: pysollib/game.py:1634 #: pysollib/game.py:1636
msgid "&Cool" msgid "&Cool"
msgstr "" msgstr ""
#: pysollib/game.py:1634 #: pysollib/game.py:1636
msgid "&Great" msgid "&Great"
msgstr "" msgstr ""
#: pysollib/game.py:1634 #: pysollib/game.py:1636
msgid "&Wow" msgid "&Wow"
msgstr "" msgstr ""
#: pysollib/game.py:1634 #: pysollib/game.py:1636
msgid "&Yeah" msgid "&Yeah"
msgstr "" msgstr ""
#: pysollib/game.py:1635 pysollib/game.py:1646 pysollib/game.py:1658 #: pysollib/game.py:1637 pysollib/game.py:1648 pysollib/game.py:1660
msgid " Autopilot" msgid " Autopilot"
msgstr "" msgstr ""
#: pysollib/game.py:1636 #: pysollib/game.py:1638
msgid "" msgid ""
"\n" "\n"
"Game solved in %d moves.\n" "Game solved in %d moves.\n"
msgstr "" msgstr ""
#: pysollib/game.py:1657 #: pysollib/game.py:1659
msgid "&Hmm" msgid "&Hmm"
msgstr "" msgstr ""
#: pysollib/game.py:1657 #: pysollib/game.py:1659
msgid "&Oh well" msgid "&Oh well"
msgstr "" msgstr ""
#: pysollib/game.py:1657 #: pysollib/game.py:1659
msgid "&That's life" msgid "&That's life"
msgstr "" msgstr ""
#: pysollib/game.py:1659 #: pysollib/game.py:1661
msgid "" msgid ""
"\n" "\n"
"This won't come out...\n" "This won't come out...\n"
msgstr "" msgstr ""
#: pysollib/game.py:2063 #: pysollib/game.py:2065
msgid "Set bookmark" msgid "Set bookmark"
msgstr "" msgstr ""
#: pysollib/game.py:2064 #: pysollib/game.py:2066
msgid "Replace existing bookmark %d ?" msgid "Replace existing bookmark %d ?"
msgstr "" msgstr ""
#: pysollib/game.py:2086 #: pysollib/game.py:2088
msgid "Goto bookmark" msgid "Goto bookmark"
msgstr "" msgstr ""
#: pysollib/game.py:2087 #: pysollib/game.py:2089
msgid "Goto bookmark %d ?" msgid "Goto bookmark %d ?"
msgstr "" msgstr ""
#: pysollib/game.py:2118 #: pysollib/game.py:2120
msgid "Open game" msgid "Open game"
msgstr "" msgstr ""
#: pysollib/game.py:2129 pysollib/game.py:2138 pysollib/game.py:2143 #: pysollib/game.py:2131 pysollib/game.py:2140 pysollib/game.py:2145
msgid "Load game error" msgid "Load game error"
msgstr "" msgstr ""
#: pysollib/game.py:2130 #: pysollib/game.py:2132
msgid "" msgid ""
"Error while loading game.\n" "Error while loading game.\n"
"\n" "\n"
@ -451,22 +441,22 @@ msgid ""
"but this could also be a bug you might want to report." "but this could also be a bug you might want to report."
msgstr "" msgstr ""
#: pysollib/game.py:2139 #: pysollib/game.py:2141
msgid "Error while loading game" msgid "Error while loading game"
msgstr "" msgstr ""
#: pysollib/game.py:2144 #: pysollib/game.py:2146
msgid "" msgid ""
"Internal error while loading game.\n" "Internal error while loading game.\n"
"\n" "\n"
"Please report this bug." "Please report this bug."
msgstr "" msgstr ""
#: pysollib/game.py:2169 #: pysollib/game.py:2171
msgid "Save game error" msgid "Save game error"
msgstr "" msgstr ""
#: pysollib/game.py:2170 #: pysollib/game.py:2172
msgid "Error while saving game" msgid "Error while saving game"
msgstr "" msgstr ""
@ -1741,72 +1731,72 @@ msgstr ""
msgid "Free cell." msgid "Free cell."
msgstr "" msgstr ""
#: pysollib/stats.py:120 pysollib/tk/tkstats.py:78 #: pysollib/stats.py:118 pysollib/tk/tkstats.py:78
msgid "Demo games" msgid "Demo games"
msgstr "" msgstr ""
#: pysollib/stats.py:121 #: pysollib/stats.py:119
msgid "Played" msgid "Played"
msgstr "" msgstr ""
#: pysollib/stats.py:122 pysollib/stats.py:202 #: pysollib/stats.py:120 pysollib/stats.py:200
msgid "Won" msgid "Won"
msgstr "" msgstr ""
#: pysollib/stats.py:123 pysollib/stats.py:202 #: pysollib/stats.py:121 pysollib/stats.py:200
msgid "Lost" msgid "Lost"
msgstr "" msgstr ""
#: pysollib/stats.py:124 pysollib/tk/statusbar.py:137 #: pysollib/stats.py:122 pysollib/tk/statusbar.py:135
msgid "Playing time" msgid "Playing time"
msgstr "" msgstr ""
#: pysollib/stats.py:125 #: pysollib/stats.py:123
msgid "Moves" msgid "Moves"
msgstr "" msgstr ""
#: pysollib/stats.py:126 #: pysollib/stats.py:124
msgid "% won" msgid "% won"
msgstr "" msgstr ""
#: pysollib/stats.py:155 #: pysollib/stats.py:153
msgid "Total (%d out of %d games)" msgid "Total (%d out of %d games)"
msgstr "" msgstr ""
#: pysollib/stats.py:164 #: pysollib/stats.py:162
msgid "Game" msgid "Game"
msgstr "" msgstr ""
#: pysollib/stats.py:164 #: pysollib/stats.py:162
msgid "Status" msgid "Status"
msgstr "" msgstr ""
#: pysollib/stats.py:164 pysollib/tk/statusbar.py:139 #: pysollib/stats.py:162 pysollib/tk/statusbar.py:137
#: pysollib/tk/tkstats.py:733 #: pysollib/tk/tkstats.py:733
msgid "Game number" msgid "Game number"
msgstr "" msgstr ""
#: pysollib/stats.py:164 pysollib/tk/tkstats.py:736 #: pysollib/stats.py:162 pysollib/tk/tkstats.py:736
msgid "Started at" msgid "Started at"
msgstr "" msgstr ""
#: pysollib/stats.py:187 #: pysollib/stats.py:185
msgid "** UNKNOWN %d **" msgid "** UNKNOWN %d **"
msgstr "" msgstr ""
#: pysollib/stats.py:195 #: pysollib/stats.py:193
msgid "** ERROR **" msgid "** ERROR **"
msgstr "" msgstr ""
#: pysollib/stats.py:202 #: pysollib/stats.py:200
msgid "Loaded" msgid "Loaded"
msgstr "" msgstr ""
#: pysollib/stats.py:202 #: pysollib/stats.py:200
msgid "Not won" msgid "Not won"
msgstr "" msgstr ""
#: pysollib/stats.py:202 #: pysollib/stats.py:200
msgid "Perfect" msgid "Perfect"
msgstr "" msgstr ""
@ -2155,198 +2145,198 @@ msgstr ""
msgid "&Sound" msgid "&Sound"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:351 #: pysollib/tk/menubar.py:349
msgid "Cards&et..." msgid "Cards&et..."
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:352 #: pysollib/tk/menubar.py:350
msgid "Table t&ile..." msgid "Table t&ile..."
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:354 #: pysollib/tk/menubar.py:352
msgid "Card &background" msgid "Card &background"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:355 #: pysollib/tk/menubar.py:353
msgid "Card &view" msgid "Card &view"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:356 #: pysollib/tk/menubar.py:354
msgid "Card shado&w" msgid "Card shado&w"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:357 #: pysollib/tk/menubar.py:355
msgid "Shade &legal moves" msgid "Shade &legal moves"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:358 #: pysollib/tk/menubar.py:356
msgid "&Negative card bottom" msgid "&Negative card bottom"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:359 #: pysollib/tk/menubar.py:357
msgid "A&nimations" msgid "A&nimations"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:360 #: pysollib/tk/menubar.py:358
msgid "&None" msgid "&None"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:361 #: pysollib/tk/menubar.py:359
msgid "&Timer based" msgid "&Timer based"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:362 #: pysollib/tk/menubar.py:360
msgid "&Fast" msgid "&Fast"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:363 #: pysollib/tk/menubar.py:361
msgid "&Slow" msgid "&Slow"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:364 #: pysollib/tk/menubar.py:362
msgid "&Very slow" msgid "&Very slow"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:365 #: pysollib/tk/menubar.py:363
msgid "Stick&y mouse" msgid "Stick&y mouse"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:367 #: pysollib/tk/menubar.py:365
msgid "&Fonts..." msgid "&Fonts..."
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:368 #: pysollib/tk/menubar.py:366
msgid "&Colors..." msgid "&Colors..."
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:369 #: pysollib/tk/menubar.py:367
msgid "Time&outs..." msgid "Time&outs..."
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:371 #: pysollib/tk/menubar.py:369
msgid "&Toolbar" msgid "&Toolbar"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:373 #: pysollib/tk/menubar.py:371
msgid "Stat&usbar" msgid "Stat&usbar"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:374 #: pysollib/tk/menubar.py:372
msgid "Show &statusbar" msgid "Show &statusbar"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:375 #: pysollib/tk/menubar.py:373
msgid "Show &number of cards" msgid "Show &number of cards"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:376 #: pysollib/tk/menubar.py:374
msgid "Show &help bar" msgid "Show &help bar"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:377 #: pysollib/tk/menubar.py:375
msgid "&Demo logo" msgid "&Demo logo"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:378 #: pysollib/tk/menubar.py:376
msgid "Startup splash sc&reen" msgid "Startup splash sc&reen"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:382 #: pysollib/tk/menubar.py:380
msgid "&Help" msgid "&Help"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:383 #: pysollib/tk/menubar.py:381
msgid "&Contents" msgid "&Contents"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:384 #: pysollib/tk/menubar.py:382
msgid "&How to play" msgid "&How to play"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:385 #: pysollib/tk/menubar.py:383
msgid "&Rules for this game" msgid "&Rules for this game"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:386 #: pysollib/tk/menubar.py:384
msgid "&License terms" msgid "&License terms"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:389 #: pysollib/tk/menubar.py:387
msgid "&About " msgid "&About "
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:497 #: pysollib/tk/menubar.py:495
msgid "All &games..." msgid "All &games..."
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:498 #: pysollib/tk/menubar.py:496
msgid "Playable pre&view..." msgid "Playable pre&view..."
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:500 #: pysollib/tk/menubar.py:498
msgid "&Popular games" msgid "&Popular games"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:503 #: pysollib/tk/menubar.py:501
msgid "&French games" msgid "&French games"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:506 #: pysollib/tk/menubar.py:504
msgid "&Mahjongg games" msgid "&Mahjongg games"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:509 #: pysollib/tk/menubar.py:507
msgid "&Oriental games" msgid "&Oriental games"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:513 #: pysollib/tk/menubar.py:511
msgid "&Special games" msgid "&Special games"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:517 #: pysollib/tk/menubar.py:515
msgid "All games by name" msgid "All games by name"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:854 pysollib/tk/menubar.py:856 #: pysollib/tk/menubar.py:852 pysollib/tk/menubar.py:854
#: pysollib/tk/selectcardset.py:240 #: pysollib/tk/selectcardset.py:240
msgid "&Load" msgid "&Load"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:856 #: pysollib/tk/menubar.py:854
msgid "&Info..." msgid "&Info..."
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:859 #: pysollib/tk/menubar.py:857
msgid "Select " msgid "Select "
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:919 #: pysollib/tk/menubar.py:917
msgid "Select table background" msgid "Select table background"
msgstr "" msgstr ""
#: pysollib/tk/menubar.py:931 pysollib/tk/selecttile.py:177 #: pysollib/tk/menubar.py:929 pysollib/tk/selecttile.py:177
msgid "Select table color" msgid "Select table color"
msgstr "" msgstr ""
#: pysollib/tk/playeroptionsdialog.py:113 #: pysollib/tk/playeroptionsdialog.py:112
msgid "" msgid ""
"\n" "\n"
"Please enter your name" "Please enter your name"
msgstr "" msgstr ""
#: pysollib/tk/playeroptionsdialog.py:121 #: pysollib/tk/playeroptionsdialog.py:120
msgid "Select..." msgid "Select..."
msgstr "" msgstr ""
#: pysollib/tk/playeroptionsdialog.py:125 #: pysollib/tk/playeroptionsdialog.py:124
msgid "Confirm quit" msgid "Confirm quit"
msgstr "" msgstr ""
#: pysollib/tk/playeroptionsdialog.py:129 #: pysollib/tk/playeroptionsdialog.py:128
msgid "Update statistics and logs" msgid "Update statistics and logs"
msgstr "" msgstr ""
#: pysollib/tk/playeroptionsdialog.py:146 #: pysollib/tk/playeroptionsdialog.py:145
msgid "Select name" msgid "Select name"
msgstr "" msgstr ""
@ -2681,45 +2671,49 @@ msgstr ""
msgid "&Solid color..." msgid "&Solid color..."
msgstr "" msgstr ""
#: pysollib/tk/soundoptionsdialog.py:76 #: pysollib/tk/soundoptionsdialog.py:111
msgid "Sound enabled" msgid "Sound enabled"
msgstr "" msgstr ""
#: pysollib/tk/soundoptionsdialog.py:82 #: pysollib/tk/soundoptionsdialog.py:117
msgid "Use DirectX for sound playing" msgid "Use DirectX for sound playing"
msgstr "" msgstr ""
#: pysollib/tk/soundoptionsdialog.py:88 #: pysollib/tk/soundoptionsdialog.py:123
msgid "Sample volume" msgid "Sample volume:"
msgstr "" msgstr ""
#: pysollib/tk/soundoptionsdialog.py:94 #: pysollib/tk/soundoptionsdialog.py:131
msgid "Music volume" msgid "Music volume:"
msgstr "" msgstr ""
#: pysollib/tk/soundoptionsdialog.py:106 #: pysollib/tk/soundoptionsdialog.py:144
msgid "Enable samles"
msgstr ""
#: pysollib/tk/soundoptionsdialog.py:169
msgid "&Apply" msgid "&Apply"
msgstr "" msgstr ""
#: pysollib/tk/soundoptionsdialog.py:106 pysollib/tk/soundoptionsdialog.py:108 #: pysollib/tk/soundoptionsdialog.py:169 pysollib/tk/soundoptionsdialog.py:171
msgid "&Mixer..." msgid "&Mixer..."
msgstr "" msgstr ""
#: pysollib/tk/soundoptionsdialog.py:155 #: pysollib/tk/soundoptionsdialog.py:220
msgid "Sound preferences info" msgid "Sound preferences info"
msgstr "" msgstr ""
#: pysollib/tk/soundoptionsdialog.py:156 #: pysollib/tk/soundoptionsdialog.py:221
msgid "" msgid ""
"Changing DirectX settings will take effect\n" "Changing DirectX settings will take effect\n"
"the next time you restart " "the next time you restart "
msgstr "" msgstr ""
#: pysollib/tk/statusbar.py:138 #: pysollib/tk/statusbar.py:136
msgid "Moves/Total moves" msgid "Moves/Total moves"
msgstr "" msgstr ""
#: pysollib/tk/statusbar.py:140 #: pysollib/tk/statusbar.py:138
msgid "Games played: won/lost" msgid "Games played: won/lost"
msgstr "" msgstr ""
@ -3041,7 +3035,7 @@ msgstr ""
msgid "Player options" msgid "Player options"
msgstr "" msgstr ""
#: pysollib/tk/toolbar.py:429 #: pysollib/tk/toolbar.py:435
msgid "Toolbar" msgid "Toolbar"
msgstr "" msgstr ""

View file

@ -5,8 +5,8 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PySol 0.0.1\n" "Project-Id-Version: PySol 0.0.1\n"
"POT-Creation-Date: Tue Jun 6 02:20:52 2006\n" "POT-Creation-Date: Sun Jun 11 00:30:03 2006\n"
"PO-Revision-Date: 2006-06-03 03:28+0400\n" "PO-Revision-Date: 2006-06-10 11:07+0400\n"
"Last-Translator: Скоморох <skomoroh@gmail.com>\n" "Last-Translator: Скоморох <skomoroh@gmail.com>\n"
"Language-Team: Russian <ru@li.org>\n" "Language-Team: Russian <ru@li.org>\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@ -81,9 +81,8 @@ msgstr "Аляска"
msgid "Algerian Patience" msgid "Algerian Patience"
msgstr "Алжирский пасьянс" msgstr "Алжирский пасьянс"
#, fuzzy
msgid "Algerian Patience (3 decks)" msgid "Algerian Patience (3 decks)"
msgstr "Алжирский пасьянс" msgstr "Алжирский пасьянс (3 колоды)"
msgid "Alhambra" msgid "Alhambra"
msgstr "Алхамбра" msgstr "Алхамбра"
@ -148,13 +147,11 @@ msgstr "Старые добрые времена"
msgid "Aunt Mary" msgid "Aunt Mary"
msgstr "" msgstr ""
#, fuzzy
msgid "Australian Patience" msgid "Australian Patience"
msgstr "Русский пасьянс" msgstr "Австралийский пасьянс"
#, fuzzy
msgid "Baby Spiderette" msgid "Baby Spiderette"
msgstr "Паучок" msgstr "Крошка Паучок"
msgid "Backbone" msgid "Backbone"
msgstr "Основа" msgstr "Основа"
@ -191,9 +188,8 @@ msgstr "Летучая мышь"
msgid "Batsford" msgid "Batsford"
msgstr "Бетсфорд" msgstr "Бетсфорд"
#, fuzzy
msgid "Bavarian Patience" msgid "Bavarian Patience"
msgstr "Алжирский пасьянс" msgstr "Баварский пасьянс"
msgid "Beak and Flipper" msgid "Beak and Flipper"
msgstr "Клюв и ласты" msgstr "Клюв и ласты"
@ -233,20 +229,18 @@ msgstr "Большая гора"
msgid "Big Spider" msgid "Big Spider"
msgstr "Большой паук" msgstr "Большой паук"
#, fuzzy
msgid "Big Spider (1 suit)" msgid "Big Spider (1 suit)"
msgstr "Паук (1 масть)" msgstr "Большой Паук (1 масть)"
#, fuzzy
msgid "Big Spider (2 suits)" msgid "Big Spider (2 suits)"
msgstr "Паук (2 масти)" msgstr "Большой Паук (2 масти)"
#, fuzzy #, fuzzy
msgid "Big Sumo" msgid "Big Sumo"
msgstr "Большая дыра" msgstr "Большая дыра"
msgid "Bim Bom" msgid "Bim Bom"
msgstr "" msgstr "Бим-Бом"
msgid "Bisley" msgid "Bisley"
msgstr "Бисли" msgstr "Бисли"
@ -319,9 +313,8 @@ msgstr "Бристоль"
msgid "British Constitution" msgid "British Constitution"
msgstr "Британская конституция" msgstr "Британская конституция"
#, fuzzy
msgid "British Square" msgid "British Square"
msgstr "Восемь квадратов" msgstr "Британский квадрат"
msgid "Brunswick" msgid "Brunswick"
msgstr "Брюнсвик" msgstr "Брюнсвик"
@ -519,9 +512,8 @@ msgstr "Дашаватара"
msgid "Dead King Golf" msgid "Dead King Golf"
msgstr "Гольф Смертельный Король" msgstr "Гольф Смертельный Король"
#, fuzzy
msgid "Deep" msgid "Deep"
msgstr "Глубокий колодец" msgstr "Глубокий"
msgid "Deep Well" msgid "Deep Well"
msgstr "Глубокий колодец" msgstr "Глубокий колодец"
@ -598,9 +590,8 @@ msgstr "Двойной Кенфилд"
msgid "Double Cockroach" msgid "Double Cockroach"
msgstr "Двойной таракан" msgstr "Двойной таракан"
#, fuzzy
msgid "Double Dot" msgid "Double Dot"
msgstr "Дубликаты" msgstr "Двоеточие"
msgid "Double Drawbridge" msgid "Double Drawbridge"
msgstr "Двойной разводной мост" msgstr "Двойной разводной мост"
@ -842,7 +833,7 @@ msgstr "Крепостные башни"
#, fuzzy #, fuzzy
msgid "Fortune's Favor" msgid "Fortune's Favor"
msgstr "Судьба" msgstr "Благосклонность фортуны"
msgid "Fortunes" msgid "Fortunes"
msgstr "Судьба" msgstr "Судьба"
@ -853,9 +844,8 @@ msgstr "Сорок разбойников"
msgid "Forty and Eight" msgid "Forty and Eight"
msgstr "Сорок и восемь" msgstr "Сорок и восемь"
#, fuzzy
msgid "Four Colours" msgid "Four Colours"
msgstr "Четырёхлистный клевер" msgstr "Четыре цвета"
msgid "Four Kings" msgid "Four Kings"
msgstr "Четыре короля" msgstr "Четыре короля"
@ -875,13 +865,11 @@ msgstr "Четыре ветра"
msgid "Fourteen" msgid "Fourteen"
msgstr "Четырнадцать" msgstr "Четырнадцать"
#, fuzzy
msgid "Fred's Spider" msgid "Fred's Spider"
msgstr "Смягчённый Паук" msgstr "Паук Фреда"
#, fuzzy
msgid "Fred's Spider (3 decks)" msgid "Fred's Spider (3 decks)"
msgstr "Церлин (3 колоды)" msgstr "Паук Фреда (3 колоды)"
msgid "Free Fan" msgid "Free Fan"
msgstr "Свободный веер" msgstr "Свободный веер"
@ -946,9 +934,8 @@ msgstr "Происхождение"
msgid "Genesis +" msgid "Genesis +"
msgstr "Происхождение +" msgstr "Происхождение +"
#, fuzzy
msgid "German Patience" msgid "German Patience"
msgstr "Алжирский пасьянс" msgstr "Германский пасьянс"
msgid "Ghulam" msgid "Ghulam"
msgstr "" msgstr ""
@ -980,6 +967,10 @@ msgstr "Полная мера"
msgid "Grampus" msgid "Grampus"
msgstr "Касатка" msgstr "Касатка"
#, fuzzy
msgid "Granada"
msgstr "Алмаз"
msgid "Grandfather" msgid "Grandfather"
msgstr "Дедушка" msgstr "Дедушка"
@ -1010,9 +1001,8 @@ msgstr "Повод для разрыва"
msgid "Ground for a Divorce (3 decks)" msgid "Ground for a Divorce (3 decks)"
msgstr "Повод для разрыва (3 колоды)" msgstr "Повод для разрыва (3 колоды)"
#, fuzzy
msgid "Ground for a Divorce (4 decks)" msgid "Ground for a Divorce (4 decks)"
msgstr "Повод для разрыва (3 колоды)" msgstr "Повод для разрыва (4 колоды)"
msgid "Gypsy" msgid "Gypsy"
msgstr "Цыганский" msgstr "Цыганский"
@ -1124,9 +1114,8 @@ msgstr ""
msgid "Indian" msgid "Indian"
msgstr "Индийский" msgstr "Индийский"
#, fuzzy
msgid "Indian Patience" msgid "Indian Patience"
msgstr "Русский пасьянс" msgstr "Индийский пасьянс"
msgid "Inner Circle" msgid "Inner Circle"
msgstr "Внутренний круг" msgstr "Внутренний круг"
@ -1364,9 +1353,8 @@ msgstr "Ограниченный"
msgid "Lion" msgid "Lion"
msgstr "Лион" msgstr "Лион"
#, fuzzy
msgid "Little Billie" msgid "Little Billie"
msgstr "Малые ворота" msgstr "Малыш Билли"
#, fuzzy #, fuzzy
msgid "Little Easy" msgid "Little Easy"
@ -1960,9 +1948,8 @@ msgstr "Марта"
msgid "Matriarchy" msgid "Matriarchy"
msgstr "Матриархат" msgstr "Матриархат"
#, fuzzy
msgid "Matrimony" msgid "Matrimony"
msgstr "Матриархат" msgstr "Супружество"
msgid "MatsuKiri" msgid "MatsuKiri"
msgstr "" msgstr ""
@ -2001,17 +1988,14 @@ msgstr ""
msgid "Midshipman" msgid "Midshipman"
msgstr "Гардемарин" msgstr "Гардемарин"
#, fuzzy
msgid "Milligan Cell" msgid "Milligan Cell"
msgstr "Мисс Миллиган" msgstr "Ячейка Миллиган"
#, fuzzy
msgid "Milligan Harp" msgid "Milligan Harp"
msgstr "Большая арфа" msgstr "Арфа Миллиган"
#, fuzzy
msgid "Minerva" msgid "Minerva"
msgstr "Джунгли" msgstr "Минерва"
#, fuzzy #, fuzzy
msgid "Mini Traditional" msgid "Mini Traditional"
@ -2100,7 +2084,6 @@ msgstr "Изгнание Наполеона"
msgid "Napoleon's Favorite" msgid "Napoleon's Favorite"
msgstr "Фаворит Наполеона" msgstr "Фаворит Наполеона"
#, fuzzy
msgid "Napoleon's Flank" msgid "Napoleon's Flank"
msgstr "Фланг Наполеона" msgstr "Фланг Наполеона"
@ -2157,9 +2140,8 @@ msgstr "Номер десять"
msgid "Numerica" msgid "Numerica"
msgstr "Числовой" msgstr "Числовой"
#, fuzzy
msgid "Octagon" msgid "Octagon"
msgstr "Дракон" msgstr "Восьмиугольник"
msgid "Octave" msgid "Octave"
msgstr "Восемь" msgstr "Восемь"
@ -2198,12 +2180,11 @@ msgstr "Открытый гигант"
msgid "Open Peek" msgid "Open Peek"
msgstr "" msgstr ""
#, fuzzy
msgid "Open Spider" msgid "Open Spider"
msgstr "Паук" msgstr "Открытый паук"
msgid "Opus" msgid "Opus"
msgstr "" msgstr "Опус"
msgid "Orbital" msgid "Orbital"
msgstr "Орбитальный" msgstr "Орбитальный"
@ -2248,9 +2229,8 @@ msgstr "Сольный танец"
msgid "Pas de Deux" msgid "Pas de Deux"
msgstr "Па-де-де" msgstr "Па-де-де"
#, fuzzy
msgid "Patriarchs" msgid "Patriarchs"
msgstr "Матриархат" msgstr "Патриархи"
msgid "Pattern" msgid "Pattern"
msgstr "Образец" msgstr "Образец"
@ -2302,7 +2282,7 @@ msgstr "Картинная галерея"
#, fuzzy #, fuzzy
msgid "Pigtail" msgid "Pigtail"
msgstr "Портал" msgstr "Косичка"
msgid "PileOn" msgid "PileOn"
msgstr "" msgstr ""
@ -2344,9 +2324,8 @@ msgstr "Припасы"
msgid "Push Pin" msgid "Push Pin"
msgstr "Пуш-пин" msgstr "Пуш-пин"
#, fuzzy
msgid "Puss in the Corner" msgid "Puss in the Corner"
msgstr "Дом в лесу" msgstr "Кошка в углу"
msgid "Pyramid" msgid "Pyramid"
msgstr "Пирамида" msgstr "Пирамида"
@ -2400,9 +2379,8 @@ msgstr "Овен"
msgid "Rambling" msgid "Rambling"
msgstr "Бродячий" msgstr "Бродячий"
#, fuzzy
msgid "Rangoon" msgid "Rangoon"
msgstr "Дракон" msgstr "Рангун"
msgid "Rank and File" msgid "Rank and File"
msgstr "Ряд и шеренга" msgstr "Ряд и шеренга"
@ -2413,9 +2391,8 @@ msgstr "Крыса"
msgid "Raw Prawn" msgid "Raw Prawn"
msgstr "" msgstr ""
#, fuzzy
msgid "Realm" msgid "Realm"
msgstr "Овен" msgstr "Царство"
msgid "Rectangle" msgid "Rectangle"
msgstr "Прямоугольник" msgstr "Прямоугольник"
@ -2448,7 +2425,7 @@ msgid "Relaxed Spider"
msgstr "Смягчённый Паук" msgstr "Смягчённый Паук"
msgid "Repair" msgid "Repair"
msgstr "" msgstr "Ремонт"
msgid "Retinue" msgid "Retinue"
msgstr "Свита" msgstr "Свита"
@ -2465,9 +2442,8 @@ msgstr "Риттенхаус"
msgid "River Bridge" msgid "River Bridge"
msgstr "Мост через реку" msgstr "Мост через реку"
#, fuzzy
msgid "Robert" msgid "Robert"
msgstr "Ракета" msgstr "Роберт"
msgid "Robin" msgid "Robin"
msgstr "Робин" msgstr "Робин"
@ -2732,13 +2708,11 @@ msgstr "Паук (1 масть)"
msgid "Spider (2 suits)" msgid "Spider (2 suits)"
msgstr "Паук (2 масти)" msgstr "Паук (2 масти)"
#, fuzzy
msgid "Spider (4 decks)" msgid "Spider (4 decks)"
msgstr "Паук (1 масть)" msgstr "Паук (4 колоды)"
#, fuzzy
msgid "Spider 3x3" msgid "Spider 3x3"
msgstr "Паук" msgstr "Паук 3x3"
msgid "Spider Web" msgid "Spider Web"
msgstr "Паутина" msgstr "Паутина"
@ -2754,9 +2728,8 @@ msgstr "Паучок"
msgid "Spidike" msgid "Spidike"
msgstr "Паук" msgstr "Паук"
#, fuzzy
msgid "Squadron" msgid "Squadron"
msgstr "Квадрат" msgstr "Эскадрон"
msgid "Square" msgid "Square"
msgstr "Квадрат" msgstr "Квадрат"
@ -2863,9 +2836,8 @@ msgstr ""
msgid "Superior Canfield" msgid "Superior Canfield"
msgstr "Двойной Кенфилд" msgstr "Двойной Кенфилд"
#, fuzzy
msgid "Surprise" msgid "Surprise"
msgstr "Предприятие" msgstr "Сюрприз"
msgid "Surukh" msgid "Surukh"
msgstr "" msgstr ""
@ -3027,19 +2999,17 @@ msgstr "Тройной Клондайк"
msgid "Triple Klondike by Threes" msgid "Triple Klondike by Threes"
msgstr "Тройной Клондайк по три" msgstr "Тройной Клондайк по три"
#, fuzzy
msgid "Triple Line" msgid "Triple Line"
msgstr "Тройной Юкон" msgstr "Тройная линия"
#, fuzzy
msgid "Triple York" msgid "Triple York"
msgstr "Тройной Юкон" msgstr "Тройной Йорк"
msgid "Triple Yukon" msgid "Triple Yukon"
msgstr "Тройной Юкон" msgstr "Тройной Юкон"
msgid "Twenty" msgid "Twenty"
msgstr "" msgstr "Двенадцать"
msgid "Twin" msgid "Twin"
msgstr "" msgstr ""
@ -3165,9 +3135,8 @@ msgstr "Маджонг X-Files"
msgid "X-Shape" msgid "X-Shape"
msgstr "Маджонг X-Shape" msgstr "Маджонг X-Shape"
#, fuzzy
msgid "York" msgid "York"
msgstr "Нью-Йорк" msgstr "Йорк"
msgid "Yukon" msgid "Yukon"
msgstr "Юкон" msgstr "Юкон"

View file

@ -5,8 +5,8 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PySol 0.0.1\n" "Project-Id-Version: PySol 0.0.1\n"
"POT-Creation-Date: Tue Jun 6 02:20:47 2006\n" "POT-Creation-Date: Sun Jun 11 00:29:57 2006\n"
"PO-Revision-Date: 2006-06-06 09:08+0400\n" "PO-Revision-Date: 2006-06-11 00:32+0400\n"
"Last-Translator: Скоморох <skomoroh@gmail.com>\n" "Last-Translator: Скоморох <skomoroh@gmail.com>\n"
"Language-Team: Russian <ru@li.org>\n" "Language-Team: Russian <ru@li.org>\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@ -18,8 +18,8 @@ msgstr ""
msgid "New game" msgid "New game"
msgstr "Новая игра" msgstr "Новая игра"
#: pysollib/actions.py:357 pysollib/tk/menubar.py:667 #: pysollib/actions.py:357 pysollib/tk/menubar.py:665
#: pysollib/tk/menubar.py:681 #: pysollib/tk/menubar.py:679
msgid "Select game" msgid "Select game"
msgstr "Выбрать игру" msgstr "Выбрать игру"
@ -53,34 +53,34 @@ msgstr ""
msgid "&Next number" msgid "&Next number"
msgstr "&Следующий номер" msgstr "&Следующий номер"
#: pysollib/actions.py:409 pysollib/app.py:1090 pysollib/app.py:1102 #: pysollib/actions.py:409 pysollib/app.py:1118 pysollib/app.py:1130
#: pysollib/game.py:828 pysollib/game.py:1642 pysollib/main.py:413 #: pysollib/game.py:830 pysollib/game.py:1644 pysollib/main.py:413
#: pysollib/main.py:421 pysollib/tk/colorsdialog.py:131 #: pysollib/main.py:421 pysollib/tk/colorsdialog.py:131
#: pysollib/tk/edittextdialog.py:82 pysollib/tk/fontsdialog.py:140 #: pysollib/tk/edittextdialog.py:82 pysollib/tk/fontsdialog.py:140
#: pysollib/tk/fontsdialog.py:204 pysollib/tk/gameinfodialog.py:133 #: pysollib/tk/fontsdialog.py:204 pysollib/tk/gameinfodialog.py:133
#: pysollib/tk/playeroptionsdialog.py:86 #: pysollib/tk/playeroptionsdialog.py:85
#: pysollib/tk/playeroptionsdialog.py:161 pysollib/tk/selectcardset.py:240 #: pysollib/tk/playeroptionsdialog.py:160 pysollib/tk/selectcardset.py:240
#: pysollib/tk/selectcardset.py:396 pysollib/tk/selecttile.py:158 #: pysollib/tk/selectcardset.py:396 pysollib/tk/selecttile.py:158
#: pysollib/tk/soundoptionsdialog.py:106 pysollib/tk/soundoptionsdialog.py:158 #: pysollib/tk/soundoptionsdialog.py:169 pysollib/tk/soundoptionsdialog.py:223
#: pysollib/tk/timeoutsdialog.py:92 pysollib/tk/tkhtml.py:459 #: pysollib/tk/timeoutsdialog.py:92 pysollib/tk/tkhtml.py:459
#: pysollib/tk/tkstats.py:288 pysollib/tk/tkstats.py:571 #: pysollib/tk/tkstats.py:288 pysollib/tk/tkstats.py:571
#: pysollib/tk/tkstats.py:645 pysollib/tk/tkstats.py:661 #: pysollib/tk/tkstats.py:645 pysollib/tk/tkstats.py:661
#: pysollib/tk/tkstats.py:703 pysollib/tk/tkstats.py:775 #: pysollib/tk/tkstats.py:703 pysollib/tk/tkstats.py:775
#: pysollib/tk/tkstats.py:859 pysollib/tk/tkwidget.py:159 #: pysollib/tk/tkstats.py:859 pysollib/tk/tkwidget.py:156
#: pysollib/tk/tkwidget.py:312 #: pysollib/tk/tkwidget.py:320
msgid "&OK" msgid "&OK"
msgstr "&ОК" msgstr "&ОК"
#: pysollib/actions.py:409 pysollib/app.py:1102 pysollib/game.py:828 #: pysollib/actions.py:409 pysollib/app.py:1130 pysollib/game.py:830
#: pysollib/game.py:1205 pysollib/game.py:1220 pysollib/game.py:1226 #: pysollib/game.py:1207 pysollib/game.py:1222 pysollib/game.py:1228
#: pysollib/game.py:1231 pysollib/tk/colorsdialog.py:131 #: pysollib/game.py:1233 pysollib/tk/colorsdialog.py:131
#: pysollib/tk/edittextdialog.py:82 pysollib/tk/fontsdialog.py:140 #: pysollib/tk/edittextdialog.py:82 pysollib/tk/fontsdialog.py:140
#: pysollib/tk/fontsdialog.py:204 pysollib/tk/menubar.py:854 #: pysollib/tk/fontsdialog.py:204 pysollib/tk/menubar.py:852
#: pysollib/tk/menubar.py:856 pysollib/tk/playeroptionsdialog.py:86 #: pysollib/tk/menubar.py:854 pysollib/tk/playeroptionsdialog.py:85
#: pysollib/tk/playeroptionsdialog.py:161 pysollib/tk/selectcardset.py:240 #: pysollib/tk/playeroptionsdialog.py:160 pysollib/tk/selectcardset.py:240
#: pysollib/tk/selectgame.py:268 pysollib/tk/selectgame.py:409 #: pysollib/tk/selectgame.py:268 pysollib/tk/selectgame.py:409
#: pysollib/tk/selecttile.py:158 pysollib/tk/soundoptionsdialog.py:106 #: pysollib/tk/selecttile.py:158 pysollib/tk/soundoptionsdialog.py:169
#: pysollib/tk/timeoutsdialog.py:92 pysollib/tk/tkwidget.py:312 #: pysollib/tk/timeoutsdialog.py:92 pysollib/tk/tkwidget.py:320
msgid "&Cancel" msgid "&Cancel"
msgstr "От&мена" msgstr "От&мена"
@ -128,7 +128,7 @@ msgstr "Комментарий для "
msgid "Error while writing to file" msgid "Error while writing to file"
msgstr "Ошибка при записи в файл" msgstr "Ошибка при записи в файл"
#: pysollib/actions.py:616 pysollib/actions.py:652 pysollib/actions.py:941 #: pysollib/actions.py:616 pysollib/actions.py:652
msgid " Info" msgid " Info"
msgstr " Информация" msgstr " Информация"
@ -249,39 +249,27 @@ msgstr "Настроить шрифт"
msgid "Set timeouts" msgid "Set timeouts"
msgstr "Настроить таймауты" msgstr "Настроить таймауты"
#: pysollib/actions.py:938
msgid "Error while saving options"
msgstr "Ошибка при сохранении настроек"
#: pysollib/actions.py:942
msgid ""
"Options were saved to\n"
"\n"
msgstr ""
"Опции сохранены в\n"
"\n"
#: pysollib/app.py:86 #: pysollib/app.py:86
msgid "Unknown" msgid "Unknown"
msgstr "Неизвестный" msgstr "Неизвестный"
#: pysollib/app.py:952 #: pysollib/app.py:980
msgid "Loading %s %s..." msgid "Loading %s %s..."
msgstr "Загружается %s %s..." msgstr "Загружается %s %s..."
#: pysollib/app.py:987 #: pysollib/app.py:1015
msgid " load error" msgid " load error"
msgstr " ошибка при загрузке" msgstr " ошибка при загрузке"
#: pysollib/app.py:988 #: pysollib/app.py:1016
msgid "Error while loading " msgid "Error while loading "
msgstr "Ошибка при загрузке" msgstr "Ошибка при загрузке"
#: pysollib/app.py:1082 #: pysollib/app.py:1110
msgid "Incompatible " msgid "Incompatible "
msgstr "Несовместимый " msgstr "Несовместимый "
#: pysollib/app.py:1084 #: pysollib/app.py:1112
msgid "" msgid ""
"The currently selected %s %s\n" "The currently selected %s %s\n"
"is not compatible with the game\n" "is not compatible with the game\n"
@ -295,7 +283,7 @@ msgstr ""
"\n" "\n"
"Необходимо выбрать %s типа %s.\n" "Необходимо выбрать %s типа %s.\n"
#: pysollib/app.py:1100 #: pysollib/app.py:1128
msgid "Please select a %s type %s" msgid "Please select a %s type %s"
msgstr "Выберите %s типа %s" msgstr "Выберите %s типа %s"
@ -303,11 +291,11 @@ msgstr "Выберите %s типа %s"
msgid "Player\n" msgid "Player\n"
msgstr "Игрок\n" msgstr "Игрок\n"
#: pysollib/game.py:824 #: pysollib/game.py:826
msgid "Discard current game ?" msgid "Discard current game ?"
msgstr "Завершить текущую игру?" msgstr "Завершить текущую игру?"
#: pysollib/game.py:1159 #: pysollib/game.py:1161
msgid "" msgid ""
"\n" "\n"
"You have reached\n" "You have reached\n"
@ -317,7 +305,7 @@ msgstr ""
"Вы достигли\n" "Вы достигли\n"
"#%d в %s игрового времени" "#%d в %s игрового времени"
#: pysollib/game.py:1162 #: pysollib/game.py:1164
msgid "" msgid ""
"\n" "\n"
"and #%d in the %s of moves" "and #%d in the %s of moves"
@ -325,7 +313,7 @@ msgstr ""
"\n" "\n"
"и #%d в %s количества ходов" "и #%d в %s количества ходов"
#: pysollib/game.py:1164 #: pysollib/game.py:1166
msgid "" msgid ""
"\n" "\n"
"You have reached\n" "You have reached\n"
@ -335,7 +323,7 @@ msgstr ""
"Вы достигли\n" "Вы достигли\n"
"#%d в %s количества ходов" "#%d в %s количества ходов"
#: pysollib/game.py:1167 #: pysollib/game.py:1169
msgid "" msgid ""
"\n" "\n"
"and #%d in the %s of total moves" "and #%d in the %s of total moves"
@ -343,7 +331,7 @@ msgstr ""
"\n" "\n"
"и #%d в %s общего количества ходов" "и #%d в %s общего количества ходов"
#: pysollib/game.py:1169 #: pysollib/game.py:1171
msgid "" msgid ""
"\n" "\n"
"You have reached\n" "You have reached\n"
@ -353,11 +341,11 @@ msgstr ""
"Вы достигли\n" "Вы достигли\n"
"#%d в %s общего количества ходов" "#%d в %s общего количества ходов"
#: pysollib/game.py:1196 pysollib/game.py:1212 #: pysollib/game.py:1198 pysollib/game.py:1214
msgid "Game won" msgid "Game won"
msgstr "Игра выиграна" msgstr "Игра выиграна"
#: pysollib/game.py:1197 #: pysollib/game.py:1199
msgid "" msgid ""
"\n" "\n"
"Congratulations, this\n" "Congratulations, this\n"
@ -376,12 +364,12 @@ msgstr ""
"Количество ходов: %s\n" "Количество ходов: %s\n"
"%s\n" "%s\n"
#: pysollib/game.py:1205 pysollib/game.py:1220 pysollib/game.py:1226 #: pysollib/game.py:1207 pysollib/game.py:1222 pysollib/game.py:1228
#: pysollib/game.py:1231 pysollib/tk/menubar.py:250 #: pysollib/game.py:1233 pysollib/tk/menubar.py:250
msgid "&New game" msgid "&New game"
msgstr "&Новая игра" msgstr "&Новая игра"
#: pysollib/game.py:1213 #: pysollib/game.py:1215
msgid "" msgid ""
"\n" "\n"
"Congratulations, you did it !\n" "Congratulations, you did it !\n"
@ -398,11 +386,11 @@ msgstr ""
"Количество ходов: %s\n" "Количество ходов: %s\n"
"%s\n" "%s\n"
#: pysollib/game.py:1224 pysollib/game.py:1229 #: pysollib/game.py:1226 pysollib/game.py:1231
msgid "Game finished" msgid "Game finished"
msgstr "Игра закончена" msgstr "Игра закончена"
#: pysollib/game.py:1225 pysollib/game.py:1643 #: pysollib/game.py:1227 pysollib/game.py:1645
msgid "" msgid ""
"\n" "\n"
"Game finished\n" "Game finished\n"
@ -410,7 +398,7 @@ msgstr ""
"\n" "\n"
"Игра закончена\n" "Игра закончена\n"
#: pysollib/game.py:1230 #: pysollib/game.py:1232
msgid "" msgid ""
"\n" "\n"
"Game finished, but not without my help...\n" "Game finished, but not without my help...\n"
@ -418,35 +406,35 @@ msgstr ""
"\n" "\n"
"Игра закончена, но не без моей помощи...\n" "Игра закончена, но не без моей помощи...\n"
#: pysollib/game.py:1231 #: pysollib/game.py:1233
msgid "&Restart" msgid "&Restart"
msgstr "&Начало" msgstr "&Начало"
#: pysollib/game.py:1535 #: pysollib/game.py:1537
msgid "Score %6d" msgid "Score %6d"
msgstr "Счет %6d" msgstr "Счет %6d"
#: pysollib/game.py:1634 #: pysollib/game.py:1636
msgid "&Cool" msgid "&Cool"
msgstr "&Отлично" msgstr "&Отлично"
#: pysollib/game.py:1634 #: pysollib/game.py:1636
msgid "&Great" msgid "&Great"
msgstr "&Эдорово" msgstr "&Эдорово"
#: pysollib/game.py:1634 #: pysollib/game.py:1636
msgid "&Wow" msgid "&Wow"
msgstr "&Ура" msgstr "&Ура"
#: pysollib/game.py:1634 #: pysollib/game.py:1636
msgid "&Yeah" msgid "&Yeah"
msgstr "&Ага" msgstr "&Ага"
#: pysollib/game.py:1635 pysollib/game.py:1646 pysollib/game.py:1658 #: pysollib/game.py:1637 pysollib/game.py:1648 pysollib/game.py:1660
msgid " Autopilot" msgid " Autopilot"
msgstr " Автопилот" msgstr " Автопилот"
#: pysollib/game.py:1636 #: pysollib/game.py:1638
msgid "" msgid ""
"\n" "\n"
"Game solved in %d moves.\n" "Game solved in %d moves.\n"
@ -454,19 +442,19 @@ msgstr ""
"\n" "\n"
"Игра решена за %d ходов\n" "Игра решена за %d ходов\n"
#: pysollib/game.py:1657 #: pysollib/game.py:1659
msgid "&Hmm" msgid "&Hmm"
msgstr "&Хмм" msgstr "&Хмм"
#: pysollib/game.py:1657 #: pysollib/game.py:1659
msgid "&Oh well" msgid "&Oh well"
msgstr "&Ох" msgstr "&Ох"
#: pysollib/game.py:1657 #: pysollib/game.py:1659
msgid "&That's life" msgid "&That's life"
msgstr "&Такова жизнь" msgstr "&Такова жизнь"
#: pysollib/game.py:1659 #: pysollib/game.py:1661
msgid "" msgid ""
"\n" "\n"
"This won't come out...\n" "This won't come out...\n"
@ -474,31 +462,31 @@ msgstr ""
"\n" "\n"
"Не удалось...\n" "Не удалось...\n"
#: pysollib/game.py:2063 #: pysollib/game.py:2065
msgid "Set bookmark" msgid "Set bookmark"
msgstr "Установить закладку" msgstr "Установить закладку"
#: pysollib/game.py:2064 #: pysollib/game.py:2066
msgid "Replace existing bookmark %d ?" msgid "Replace existing bookmark %d ?"
msgstr "Заменить существующую закладку %d ?" msgstr "Заменить существующую закладку %d ?"
#: pysollib/game.py:2086 #: pysollib/game.py:2088
msgid "Goto bookmark" msgid "Goto bookmark"
msgstr "Перейти к закладке" msgstr "Перейти к закладке"
#: pysollib/game.py:2087 #: pysollib/game.py:2089
msgid "Goto bookmark %d ?" msgid "Goto bookmark %d ?"
msgstr "Перейти к закладке %d ?" msgstr "Перейти к закладке %d ?"
#: pysollib/game.py:2118 #: pysollib/game.py:2120
msgid "Open game" msgid "Open game"
msgstr "Открыть игру" msgstr "Открыть игру"
#: pysollib/game.py:2129 pysollib/game.py:2138 pysollib/game.py:2143 #: pysollib/game.py:2131 pysollib/game.py:2140 pysollib/game.py:2145
msgid "Load game error" msgid "Load game error"
msgstr "Ошибка при загрузке игры" msgstr "Ошибка при загрузке игры"
#: pysollib/game.py:2130 #: pysollib/game.py:2132
msgid "" msgid ""
"Error while loading game.\n" "Error while loading game.\n"
"\n" "\n"
@ -506,11 +494,11 @@ msgid ""
"but this could also be a bug you might want to report." "but this could also be a bug you might want to report."
msgstr "" msgstr ""
#: pysollib/game.py:2139 #: pysollib/game.py:2141
msgid "Error while loading game" msgid "Error while loading game"
msgstr "Ошибка при загрузке игры" msgstr "Ошибка при загрузке игры"
#: pysollib/game.py:2144 #: pysollib/game.py:2146
msgid "" msgid ""
"Internal error while loading game.\n" "Internal error while loading game.\n"
"\n" "\n"
@ -520,11 +508,11 @@ msgstr ""
"\n" "\n"
"Пожалуйста сообщите об этой ошибке." "Пожалуйста сообщите об этой ошибке."
#: pysollib/game.py:2169 #: pysollib/game.py:2171
msgid "Save game error" msgid "Save game error"
msgstr "Ошибка при сохранении игры" msgstr "Ошибка при сохранении игры"
#: pysollib/game.py:2170 #: pysollib/game.py:2172
msgid "Error while saving game" msgid "Error while saving game"
msgstr "Ошибка при сохранении игры" msgstr "Ошибка при сохранении игры"
@ -1881,72 +1869,72 @@ msgstr ""
msgid "Free cell." msgid "Free cell."
msgstr "Свободная ячейка." msgstr "Свободная ячейка."
#: pysollib/stats.py:120 pysollib/tk/tkstats.py:78 #: pysollib/stats.py:118 pysollib/tk/tkstats.py:78
msgid "Demo games" msgid "Demo games"
msgstr "Демо игры" msgstr "Демо игры"
#: pysollib/stats.py:121 #: pysollib/stats.py:119
msgid "Played" msgid "Played"
msgstr "Играл" msgstr "Играл"
#: pysollib/stats.py:122 pysollib/stats.py:202 #: pysollib/stats.py:120 pysollib/stats.py:200
msgid "Won" msgid "Won"
msgstr "Выиграл" msgstr "Выиграл"
#: pysollib/stats.py:123 pysollib/stats.py:202 #: pysollib/stats.py:121 pysollib/stats.py:200
msgid "Lost" msgid "Lost"
msgstr "Проиграл" msgstr "Проиграл"
#: pysollib/stats.py:124 pysollib/tk/statusbar.py:137 #: pysollib/stats.py:122 pysollib/tk/statusbar.py:135
msgid "Playing time" msgid "Playing time"
msgstr "Время игры" msgstr "Время игры"
#: pysollib/stats.py:125 #: pysollib/stats.py:123
msgid "Moves" msgid "Moves"
msgstr "Ходов" msgstr "Ходов"
#: pysollib/stats.py:126 #: pysollib/stats.py:124
msgid "% won" msgid "% won"
msgstr "% побед" msgstr "% побед"
#: pysollib/stats.py:155 #: pysollib/stats.py:153
msgid "Total (%d out of %d games)" msgid "Total (%d out of %d games)"
msgstr "Всего (%d из %d игр)" msgstr "Всего (%d из %d игр)"
#: pysollib/stats.py:164 #: pysollib/stats.py:162
msgid "Game" msgid "Game"
msgstr "Игра" msgstr "Игра"
#: pysollib/stats.py:164 #: pysollib/stats.py:162
msgid "Status" msgid "Status"
msgstr "Статус" msgstr "Статус"
#: pysollib/stats.py:164 pysollib/tk/statusbar.py:139 #: pysollib/stats.py:162 pysollib/tk/statusbar.py:137
#: pysollib/tk/tkstats.py:733 #: pysollib/tk/tkstats.py:733
msgid "Game number" msgid "Game number"
msgstr "Номер игры" msgstr "Номер игры"
#: pysollib/stats.py:164 pysollib/tk/tkstats.py:736 #: pysollib/stats.py:162 pysollib/tk/tkstats.py:736
msgid "Started at" msgid "Started at"
msgstr "Игра начата" msgstr "Игра начата"
#: pysollib/stats.py:187 #: pysollib/stats.py:185
msgid "** UNKNOWN %d **" msgid "** UNKNOWN %d **"
msgstr "" msgstr ""
#: pysollib/stats.py:195 #: pysollib/stats.py:193
msgid "** ERROR **" msgid "** ERROR **"
msgstr "" msgstr ""
#: pysollib/stats.py:202 #: pysollib/stats.py:200
msgid "Loaded" msgid "Loaded"
msgstr "Загружал" msgstr "Загружал"
#: pysollib/stats.py:202 #: pysollib/stats.py:200
msgid "Not won" msgid "Not won"
msgstr "Не выиграл" msgstr "Не выиграл"
#: pysollib/stats.py:202 #: pysollib/stats.py:200
msgid "Perfect" msgid "Perfect"
msgstr "Великолепная" msgstr "Великолепная"
@ -2295,180 +2283,180 @@ msgstr "Показывать стрелку (в Шисен-Сё)"
msgid "&Sound" msgid "&Sound"
msgstr "&Звук" msgstr "&Звук"
#: pysollib/tk/menubar.py:351 #: pysollib/tk/menubar.py:349
msgid "Cards&et..." msgid "Cards&et..."
msgstr "Коло&да..." msgstr "Коло&да..."
#: pysollib/tk/menubar.py:352 #: pysollib/tk/menubar.py:350
msgid "Table t&ile..." msgid "Table t&ile..."
msgstr "&Игровой стол..." msgstr "&Игровой стол..."
#: pysollib/tk/menubar.py:354 #: pysollib/tk/menubar.py:352
msgid "Card &background" msgid "Card &background"
msgstr "&Рубашка карты" msgstr "&Рубашка карты"
#: pysollib/tk/menubar.py:355 #: pysollib/tk/menubar.py:353
msgid "Card &view" msgid "Card &view"
msgstr "&Вид карты" msgstr "&Вид карты"
#: pysollib/tk/menubar.py:356 #: pysollib/tk/menubar.py:354
msgid "Card shado&w" msgid "Card shado&w"
msgstr "Тень карты" msgstr "Тень карты"
#: pysollib/tk/menubar.py:357 #: pysollib/tk/menubar.py:355
msgid "Shade &legal moves" msgid "Shade &legal moves"
msgstr "Подсвечивать &разрешенные ходы" msgstr "Подсвечивать &разрешенные ходы"
#: pysollib/tk/menubar.py:358 #: pysollib/tk/menubar.py:356
msgid "&Negative card bottom" msgid "&Negative card bottom"
msgstr "&Негативные контуры карты" msgstr "&Негативные контуры карты"
#: pysollib/tk/menubar.py:359 #: pysollib/tk/menubar.py:357
msgid "A&nimations" msgid "A&nimations"
msgstr "&Анимация" msgstr "&Анимация"
#: pysollib/tk/menubar.py:360 #: pysollib/tk/menubar.py:358
msgid "&None" msgid "&None"
msgstr "&Нет" msgstr "&Нет"
#: pysollib/tk/menubar.py:361 #: pysollib/tk/menubar.py:359
msgid "&Timer based" msgid "&Timer based"
msgstr "Базирующаяся на &таймере" msgstr "Базирующаяся на &таймере"
#: pysollib/tk/menubar.py:362 #: pysollib/tk/menubar.py:360
msgid "&Fast" msgid "&Fast"
msgstr "&Быстрая" msgstr "&Быстрая"
#: pysollib/tk/menubar.py:363 #: pysollib/tk/menubar.py:361
msgid "&Slow" msgid "&Slow"
msgstr "&Медленная" msgstr "&Медленная"
#: pysollib/tk/menubar.py:364 #: pysollib/tk/menubar.py:362
msgid "&Very slow" msgid "&Very slow"
msgstr "&Очень медленная" msgstr "&Очень медленная"
#: pysollib/tk/menubar.py:365 #: pysollib/tk/menubar.py:363
msgid "Stick&y mouse" msgid "Stick&y mouse"
msgstr "&Липкая мышь" msgstr "&Липкая мышь"
#: pysollib/tk/menubar.py:367 #: pysollib/tk/menubar.py:365
msgid "&Fonts..." msgid "&Fonts..."
msgstr "&Шрифты..." msgstr "&Шрифты..."
#: pysollib/tk/menubar.py:368 #: pysollib/tk/menubar.py:366
msgid "&Colors..." msgid "&Colors..."
msgstr "&Цвета..." msgstr "&Цвета..."
#: pysollib/tk/menubar.py:369 #: pysollib/tk/menubar.py:367
msgid "Time&outs..." msgid "Time&outs..."
msgstr "Тайма&уты..." msgstr "Тайма&уты..."
#: pysollib/tk/menubar.py:371 #: pysollib/tk/menubar.py:369
msgid "&Toolbar" msgid "&Toolbar"
msgstr "Панель &инструментов" msgstr "Панель &инструментов"
#: pysollib/tk/menubar.py:373 #: pysollib/tk/menubar.py:371
msgid "Stat&usbar" msgid "Stat&usbar"
msgstr "Панель состояния" msgstr "Панель состояния"
#: pysollib/tk/menubar.py:374 #: pysollib/tk/menubar.py:372
msgid "Show &statusbar" msgid "Show &statusbar"
msgstr "Показывать панель состояния" msgstr "Показывать панель состояния"
#: pysollib/tk/menubar.py:375 #: pysollib/tk/menubar.py:373
msgid "Show &number of cards" msgid "Show &number of cards"
msgstr "Показывать количество карт" msgstr "Показывать количество карт"
#: pysollib/tk/menubar.py:376 #: pysollib/tk/menubar.py:374
msgid "Show &help bar" msgid "Show &help bar"
msgstr "Показывать панель помощи" msgstr "Показывать панель помощи"
#: pysollib/tk/menubar.py:377 #: pysollib/tk/menubar.py:375
msgid "&Demo logo" msgid "&Demo logo"
msgstr "&Демо лого" msgstr "&Демо лого"
#: pysollib/tk/menubar.py:378 #: pysollib/tk/menubar.py:376
msgid "Startup splash sc&reen" msgid "Startup splash sc&reen"
msgstr "Окно &запуска" msgstr "Окно &запуска"
#: pysollib/tk/menubar.py:382 #: pysollib/tk/menubar.py:380
msgid "&Help" msgid "&Help"
msgstr "&Помощь" msgstr "&Помощь"
#: pysollib/tk/menubar.py:383 #: pysollib/tk/menubar.py:381
msgid "&Contents" msgid "&Contents"
msgstr "&Содержание" msgstr "&Содержание"
#: pysollib/tk/menubar.py:384 #: pysollib/tk/menubar.py:382
msgid "&How to play" msgid "&How to play"
msgstr "Как &играть" msgstr "Как &играть"
#: pysollib/tk/menubar.py:385 #: pysollib/tk/menubar.py:383
msgid "&Rules for this game" msgid "&Rules for this game"
msgstr "&Правила текущей игры" msgstr "&Правила текущей игры"
#: pysollib/tk/menubar.py:386 #: pysollib/tk/menubar.py:384
msgid "&License terms" msgid "&License terms"
msgstr "&Лицензия" msgstr "&Лицензия"
#: pysollib/tk/menubar.py:389 #: pysollib/tk/menubar.py:387
msgid "&About " msgid "&About "
msgstr "&О программе " msgstr "&О программе "
#: pysollib/tk/menubar.py:497 #: pysollib/tk/menubar.py:495
msgid "All &games..." msgid "All &games..."
msgstr "&Все игры..." msgstr "&Все игры..."
#: pysollib/tk/menubar.py:498 #: pysollib/tk/menubar.py:496
msgid "Playable pre&view..." msgid "Playable pre&view..."
msgstr "Играемый &предпросмотр..." msgstr "Играемый &предпросмотр..."
#: pysollib/tk/menubar.py:500 #: pysollib/tk/menubar.py:498
msgid "&Popular games" msgid "&Popular games"
msgstr "&Популярные игры" msgstr "&Популярные игры"
#: pysollib/tk/menubar.py:503 #: pysollib/tk/menubar.py:501
msgid "&French games" msgid "&French games"
msgstr "&Классические игры" msgstr "&Классические игры"
#: pysollib/tk/menubar.py:506 #: pysollib/tk/menubar.py:504
msgid "&Mahjongg games" msgid "&Mahjongg games"
msgstr "Игры маджонг" msgstr "Игры маджонг"
#: pysollib/tk/menubar.py:509 #: pysollib/tk/menubar.py:507
msgid "&Oriental games" msgid "&Oriental games"
msgstr "&Восточные игры" msgstr "&Восточные игры"
#: pysollib/tk/menubar.py:513 #: pysollib/tk/menubar.py:511
msgid "&Special games" msgid "&Special games"
msgstr "&Особые игры" msgstr "&Особые игры"
#: pysollib/tk/menubar.py:517 #: pysollib/tk/menubar.py:515
msgid "All games by name" msgid "All games by name"
msgstr "Все игры по имени" msgstr "Все игры по имени"
#: pysollib/tk/menubar.py:854 pysollib/tk/menubar.py:856 #: pysollib/tk/menubar.py:852 pysollib/tk/menubar.py:854
#: pysollib/tk/selectcardset.py:240 #: pysollib/tk/selectcardset.py:240
msgid "&Load" msgid "&Load"
msgstr "&Загрузить" msgstr "&Загрузить"
#: pysollib/tk/menubar.py:856 #: pysollib/tk/menubar.py:854
msgid "&Info..." msgid "&Info..."
msgstr "&Информация..." msgstr "&Информация..."
#: pysollib/tk/menubar.py:859 #: pysollib/tk/menubar.py:857
msgid "Select " msgid "Select "
msgstr "Выбрать " msgstr "Выбрать "
#: pysollib/tk/menubar.py:919 #: pysollib/tk/menubar.py:917
msgid "Select table background" msgid "Select table background"
msgstr "Выбрать фоновое изображение" msgstr "Выбрать фоновое изображение"
#: pysollib/tk/menubar.py:931 pysollib/tk/selecttile.py:177 #: pysollib/tk/menubar.py:929 pysollib/tk/selecttile.py:177
msgid "Select table color" msgid "Select table color"
msgstr "Выбрать цвет" msgstr "Выбрать цвет"
#: pysollib/tk/playeroptionsdialog.py:113 #: pysollib/tk/playeroptionsdialog.py:112
msgid "" msgid ""
"\n" "\n"
"Please enter your name" "Please enter your name"
@ -2476,19 +2464,19 @@ msgstr ""
"\n" "\n"
"Пожалуйста введите Ваше имя" "Пожалуйста введите Ваше имя"
#: pysollib/tk/playeroptionsdialog.py:121 #: pysollib/tk/playeroptionsdialog.py:120
msgid "Select..." msgid "Select..."
msgstr "Выбрать..." msgstr "Выбрать..."
#: pysollib/tk/playeroptionsdialog.py:125 #: pysollib/tk/playeroptionsdialog.py:124
msgid "Confirm quit" msgid "Confirm quit"
msgstr "Подтверждение выхода" msgstr "Подтверждение выхода"
#: pysollib/tk/playeroptionsdialog.py:129 #: pysollib/tk/playeroptionsdialog.py:128
msgid "Update statistics and logs" msgid "Update statistics and logs"
msgstr "Обнавлять статистику и лог" msgstr "Обнавлять статистику и лог"
#: pysollib/tk/playeroptionsdialog.py:146 #: pysollib/tk/playeroptionsdialog.py:145
msgid "Select name" msgid "Select name"
msgstr "Выбрать имя" msgstr "Выбрать имя"
@ -2823,35 +2811,39 @@ msgstr "Все фоновые изображения"
msgid "&Solid color..." msgid "&Solid color..."
msgstr "&Монотонный цвет..." msgstr "&Монотонный цвет..."
#: pysollib/tk/soundoptionsdialog.py:76 #: pysollib/tk/soundoptionsdialog.py:111
msgid "Sound enabled" msgid "Sound enabled"
msgstr "Звук доступен" msgstr "Звук доступен"
#: pysollib/tk/soundoptionsdialog.py:82 #: pysollib/tk/soundoptionsdialog.py:117
msgid "Use DirectX for sound playing" msgid "Use DirectX for sound playing"
msgstr "Использовать DirectX длы вывода звука" msgstr "Использовать DirectX для вывода звука"
#: pysollib/tk/soundoptionsdialog.py:88 #: pysollib/tk/soundoptionsdialog.py:123
msgid "Sample volume" msgid "Sample volume:"
msgstr "Уровень звуков" msgstr "Уровень звуков:"
#: pysollib/tk/soundoptionsdialog.py:94 #: pysollib/tk/soundoptionsdialog.py:131
msgid "Music volume" msgid "Music volume:"
msgstr "Уровень музыки" msgstr "Уровень музыки:"
#: pysollib/tk/soundoptionsdialog.py:106 #: pysollib/tk/soundoptionsdialog.py:144
msgid "Enable samles"
msgstr "Включить звуки"
#: pysollib/tk/soundoptionsdialog.py:169
msgid "&Apply" msgid "&Apply"
msgstr "&Применить" msgstr "&Применить"
#: pysollib/tk/soundoptionsdialog.py:106 pysollib/tk/soundoptionsdialog.py:108 #: pysollib/tk/soundoptionsdialog.py:169 pysollib/tk/soundoptionsdialog.py:171
msgid "&Mixer..." msgid "&Mixer..."
msgstr "&Миксер..." msgstr "&Миксер..."
#: pysollib/tk/soundoptionsdialog.py:155 #: pysollib/tk/soundoptionsdialog.py:220
msgid "Sound preferences info" msgid "Sound preferences info"
msgstr "Информация о настройках звука" msgstr "Информация о настройках звука"
#: pysollib/tk/soundoptionsdialog.py:156 #: pysollib/tk/soundoptionsdialog.py:221
msgid "" msgid ""
"Changing DirectX settings will take effect\n" "Changing DirectX settings will take effect\n"
"the next time you restart " "the next time you restart "
@ -2859,11 +2851,11 @@ msgstr ""
"Изменения установок DirectX вступят в силу\n" "Изменения установок DirectX вступят в силу\n"
"при следующем запуске " "при следующем запуске "
#: pysollib/tk/statusbar.py:138 #: pysollib/tk/statusbar.py:136
msgid "Moves/Total moves" msgid "Moves/Total moves"
msgstr "Ходов/Всего ходов" msgstr "Ходов/Всего ходов"
#: pysollib/tk/statusbar.py:140 #: pysollib/tk/statusbar.py:138
msgid "Games played: won/lost" msgid "Games played: won/lost"
msgstr "Игр: выиграно/проиграно" msgstr "Игр: выиграно/проиграно"
@ -3200,7 +3192,7 @@ msgstr "Игрок"
msgid "Player options" msgid "Player options"
msgstr "Установки игрока" msgstr "Установки игрока"
#: pysollib/tk/toolbar.py:429 #: pysollib/tk/toolbar.py:435
msgid "Toolbar" msgid "Toolbar"
msgstr "Панель инструментов" msgstr "Панель инструментов"
@ -3232,6 +3224,16 @@ msgstr "красный"
msgid "cardset" msgid "cardset"
msgstr "набор карт" msgstr "набор карт"
#~ msgid "Error while saving options"
#~ msgstr "Ошибка при сохранении настроек"
#~ msgid ""
#~ "Options were saved to\n"
#~ "\n"
#~ msgstr ""
#~ "Опции сохранены в\n"
#~ "\n"
#~ msgid "Set demo options" #~ msgid "Set demo options"
#~ msgstr "Настройка демо" #~ msgstr "Настройка демо"

View file

@ -863,11 +863,11 @@ class PysolMenubarActions:
self.app.opt.shisen_show_hint = self.tkopt.shisen_show_hint.get() self.app.opt.shisen_show_hint = self.tkopt.shisen_show_hint.get()
##self.game.updateMenus() ##self.game.updateMenus()
def mOptSound(self, *args): ## def mOptSound(self, *args):
if self._cancelDrag(break_pause=False): return ## if self._cancelDrag(break_pause=False): return
self.app.opt.sound = self.tkopt.sound.get() ## self.app.opt.sound = self.tkopt.sound.get()
if not self.app.opt.sound: ## if not self.app.opt.sound:
self.app.audio.stopAll() ## self.app.audio.stopAll()
def mOptSoundDialog(self, *args): def mOptSoundDialog(self, *args):
if self._cancelDrag(break_pause=False): return if self._cancelDrag(break_pause=False): return
@ -886,9 +886,9 @@ class PysolMenubarActions:
if self._cancelDrag(break_pause=False): return if self._cancelDrag(break_pause=False): return
self.app.opt.shade = self.tkopt.shade.get() self.app.opt.shade = self.tkopt.shade.get()
def mOptIrregularPiles(self, *args): ## def mOptIrregularPiles(self, *args):
if self._cancelDrag(): return ## if self._cancelDrag(): return
self.app.opt.irregular_piles = self.tkopt.irregular_piles.get() ## self.app.opt.irregular_piles = self.tkopt.irregular_piles.get()
def mOptColorsOptions(self, *args): def mOptColorsOptions(self, *args):
if self._cancelDrag(break_pause=False): return if self._cancelDrag(break_pause=False): return
@ -929,17 +929,17 @@ class PysolMenubarActions:
self.app.opt.highlight_cards_sleep = d.highlight_cards_sleep self.app.opt.highlight_cards_sleep = d.highlight_cards_sleep
self.app.opt.highlight_samerank_sleep = d.highlight_samerank_sleep self.app.opt.highlight_samerank_sleep = d.highlight_samerank_sleep
def mOptSave(self, *args): ## def mOptSave(self, *args):
if self._cancelDrag(break_pause=False): return ## if self._cancelDrag(break_pause=False): return
try: ## try:
self.app.saveOptions() ## self.app.saveOptions()
except Exception, ex: ## except Exception, ex:
d = MfxExceptionDialog(self.top, ex, ## d = MfxExceptionDialog(self.top, ex,
text=_("Error while saving options")) ## text=_("Error while saving options"))
else: ## else:
# tell the player where their config files reside ## # tell the player where their config files reside
d = MfxMessageDialog(self.top, title=PACKAGE+_(" Info"), bitmap="info", ## d = MfxMessageDialog(self.top, title=PACKAGE+_(" Info"), bitmap="info",
text=_("Options were saved to\n\n") + self.app.fn.opt) ## text=_("Options were saved to\n\n") + self.app.fn.opt)
# #

View file

@ -117,10 +117,38 @@ class Options:
self.statusbar = 1 self.statusbar = 1
self.num_cards = 0 self.num_cards = 0
self.helpbar = 0 self.helpbar = 0
# sound
self.sound = 1 self.sound = 1
self.sound_mode = 1 self.sound_mode = 1
self.sound_sample_volume = 128 self.sound_sample_volume = 128
self.sound_music_volume = 128 self.sound_music_volume = 128
self.sound_samples = {
'areyousure' : True,
'autodrop' : True,
'autoflip' : True,
'autopilotlost' : True,
'autopilotwon' : True,
'deal' : True,
'deal01' : True,
'deal02' : True,
'deal04' : True,
'deal08' : True,
'dealwaste' : True,
'droppair' : True,
'drop' : True,
'extra' : True,
'flip' : True,
'move' : True,
'nomove' : True,
'redo' : True,
'startdrag' : True,
'turnwaste' : True,
'undo' : True,
'gamefinished' : True,
'gamelost' : True,
'gameperfect' : True,
'gamewon' : True,
}
# fonts # fonts
self.fonts = {"default" : None, self.fonts = {"default" : None,
#"default" : ("helvetica", 12), #"default" : ("helvetica", 12),

View file

@ -784,6 +784,8 @@ class Game:
# #
def playSample(self, name, priority=0, loop=0): def playSample(self, name, priority=0, loop=0):
if not self.app.opt.sound_samples[name]:
return 0
##print "playSample:", name, priority, loop ##print "playSample:", name, priority, loop
if self.app.audio: if self.app.audio:
return self.app.audio.playSample(name, priority=priority, loop=loop) return self.app.audio.playSample(name, priority=priority, loop=loop)
@ -801,7 +803,7 @@ class Game:
a = self.app.opt.animations a = self.app.opt.animations
if a and not self.preview: if a and not self.preview:
self.canvas.update_idletasks() self.canvas.update_idletasks()
if self.app.audio and self.app.opt.sound: if self.app.audio and self.app.opt.sound and self.app.opt.sound_samples['deal']:
if a in (1, 2, 5): if a in (1, 2, 5):
self.playSample("deal01", priority=100, loop=loop) self.playSample("deal01", priority=100, loop=loop)
elif a == 3: elif a == 3:
@ -1192,7 +1194,7 @@ class Game:
top_msg = self.updateStats() top_msg = self.updateStats()
time = self.getTime() time = self.getTime()
self.finished = True self.finished = True
self.playSample("winperfect", priority=1000) self.playSample("gameperfect", priority=1000)
d = MfxMessageDialog(self.top, title=_("Game won"), d = MfxMessageDialog(self.top, title=_("Game won"),
text=_(''' text=_('''
Congratulations, this Congratulations, this
@ -1208,7 +1210,7 @@ for %d moves.
top_msg = self.updateStats() top_msg = self.updateStats()
time = self.getTime() time = self.getTime()
self.finished = True self.finished = True
self.playSample("winwon", priority=1000) self.playSample("gamewon", priority=1000)
d = MfxMessageDialog(self.top, title=_("Game won"), d = MfxMessageDialog(self.top, title=_("Game won"),
text=_(''' text=_('''
Congratulations, you did it ! Congratulations, you did it !
@ -1220,12 +1222,12 @@ for %d moves.
strings=(_("&New game"), None, _("&Cancel")), strings=(_("&New game"), None, _("&Cancel")),
image=self.app.gimages.logos[4], separatorwidth=2) image=self.app.gimages.logos[4], separatorwidth=2)
elif self.gstats.updated < 0: elif self.gstats.updated < 0:
self.playSample("winfinished", priority=1000) self.playSample("gamefinished", priority=1000)
d = MfxMessageDialog(self.top, title=_("Game finished"), bitmap="info", d = MfxMessageDialog(self.top, title=_("Game finished"), bitmap="info",
text=_("\nGame finished\n"), text=_("\nGame finished\n"),
strings=(_("&New game"), None, _("&Cancel"))) strings=(_("&New game"), None, _("&Cancel")))
else: else:
self.playSample("winlost", priority=1000) self.playSample("gamelost", priority=1000)
d = MfxMessageDialog(self.top, title=_("Game finished"), bitmap="info", d = MfxMessageDialog(self.top, title=_("Game finished"), bitmap="info",
text=_("\nGame finished, but not without my help...\n"), text=_("\nGame finished, but not without my help...\n"),
strings=(_("&New game"), _("&Restart"), _("&Cancel"))) strings=(_("&New game"), _("&Restart"), _("&Cancel")))

View file

@ -340,11 +340,9 @@ class PysolMenubar(PysolMenubarActions):
menu.add_separator() menu.add_separator()
label = n_("&Sound") label = n_("&Sound")
if self.app.audio.audiodev is None: if self.app.audio.audiodev is None:
menu.add_checkbutton(label=label, variable=self.tkopt.sound, command=self.mOptSound, state=Tkinter.DISABLED) menu.add_checkbutton(label=label, variable=self.tkopt.sound, command=self.mOptSoundDialog, state=Tkinter.DISABLED)
elif pysolsoundserver:
menu.add_checkbutton(label=label, variable=self.tkopt.sound, command=self.mOptSoundDialog)
else: else:
menu.add_checkbutton(label=label, variable=self.tkopt.sound, command=self.mOptSound) menu.add_checkbutton(label=label, variable=self.tkopt.sound, command=self.mOptSoundDialog)
# cardsets # cardsets
#manager = self.app.cardset_manager #manager = self.app.cardset_manager
#n = manager.len() #n = manager.len()

View file

@ -36,7 +36,8 @@
__all__ = ['SoundOptionsDialog'] __all__ = ['SoundOptionsDialog']
# imports # imports
import os, sys, string, Tkinter import os, sys, string
from Tkinter import *
import traceback import traceback
# PySol imports # PySol imports
@ -47,7 +48,7 @@ from pysollib.settings import MIXERS
# Toolkit imports # Toolkit imports
from tkconst import EVENT_HANDLED, EVENT_PROPAGATE from tkconst import EVENT_HANDLED, EVENT_PROPAGATE
from tkwidget import MfxDialog from tkwidget import MfxDialog, MfxMessageDialog
# /*********************************************************************** # /***********************************************************************
# // # //
@ -64,41 +65,103 @@ class SoundOptionsDialog(MfxDialog):
self.createBitmaps(top_frame, kw) self.createBitmaps(top_frame, kw)
# #
self.saved_opt = app.opt.copy() self.saved_opt = app.opt.copy()
self.sound = Tkinter.BooleanVar() self.sound = BooleanVar()
self.sound.set(app.opt.sound != 0) self.sound.set(app.opt.sound != 0)
self.sound_mode = Tkinter.BooleanVar() self.sound_mode = BooleanVar()
self.sound_mode.set(app.opt.sound_mode != 0) self.sound_mode.set(app.opt.sound_mode != 0)
self.sample_volume = Tkinter.IntVar() self.sample_volume = IntVar()
self.sample_volume.set(app.opt.sound_sample_volume) self.sample_volume.set(app.opt.sound_sample_volume)
self.music_volume = Tkinter.IntVar() self.music_volume = IntVar()
self.music_volume.set(app.opt.sound_music_volume) self.music_volume.set(app.opt.sound_music_volume)
widget = Tkinter.Checkbutton(top_frame, variable=self.sound, self.samples = [
text=_("Sound enabled"), ('areyousure', 'AreYouSure', BooleanVar()),
anchor=Tkinter.W) ('autodrop', 'AutoDrop', BooleanVar()),
widget.pack(side=Tkinter.TOP, padx=kw.padx, pady=kw.pady, ('autoflip', 'AutoFlip', BooleanVar()),
expand=Tkinter.YES, fill=Tkinter.BOTH) ('autopilotlost', 'AutopilotLost', BooleanVar()),
('autopilotwon', 'AutopilotWon', BooleanVar()),
('deal', 'Deal', BooleanVar()),
#('deal01', 'Deal01', BooleanVar()),
#('deal02', 'Deal02', BooleanVar()),
#('deal04', 'Deal04', BooleanVar()),
#('deal08', 'Deal08', BooleanVar()),
('dealwaste', 'DealWaste', BooleanVar()),
('droppair', 'DropPair', BooleanVar()),
('drop', 'Drop', BooleanVar()),
#('extra', 'Extra', BooleanVar()),
('flip', 'Flip', BooleanVar()),
('move', 'Move', BooleanVar()),
('nomove', 'NoMove', BooleanVar()),
('redo', 'Redo', BooleanVar()),
('startdrag', 'StartDrag', BooleanVar()),
('turnwaste', 'TurnWaste', BooleanVar()),
('undo', 'Undo', BooleanVar()),
('gamefinished', 'GameFinished', BooleanVar()),
('gamelost', 'GameLost', BooleanVar()),
('gameperfect', 'GamePerfect', BooleanVar()),
('gamewon', 'GameWon', BooleanVar()),
]
#
frame = Frame(top_frame)
frame.pack(expand=1, fill='both', padx=5, pady=5)
frame.columnconfigure(1, weight=1)
#
row = 0
w = Checkbutton(frame, variable=self.sound,
text=_("Sound enabled"), anchor='w')
w.grid(row=row, column=0, columnspan=2, sticky='ew')
#
if os.name == "nt" and pysolsoundserver: if os.name == "nt" and pysolsoundserver:
widget = Tkinter.Checkbutton(top_frame, variable=self.sound_mode, row += 1
text=_("Use DirectX for sound playing"), w = Checkbutton(frame, variable=self.sound_mode,
command=self.mOptSoundDirectX) text=_("Use DirectX for sound playing"),
widget.pack(side=Tkinter.TOP, padx=kw.padx, pady=kw.pady) command=self.mOptSoundDirectX, anchor='w')
w.grid(row=row, column=0, columnspan=2, sticky='ew')
#
if pysolsoundserver and app.startup_opt.sound_mode > 0: if pysolsoundserver and app.startup_opt.sound_mode > 0:
widget = Tkinter.Scale(top_frame, from_=0, to=128, row += 1
resolution=1, orient=Tkinter.HORIZONTAL, w = Label(frame, text=_('Sample volume:'))
length="3i", label=_("Sample volume"), w.grid(row=row, column=0, sticky='w')
variable=self.sample_volume, takefocus=0) w = Scale(frame, from_=0, to=128, resolution=1,
widget.pack(side=Tkinter.TOP, padx=kw.padx, pady=kw.pady, orient='horizontal', takefocus=0,
expand=Tkinter.YES, fill=Tkinter.BOTH) length="3i", #label=_('Sample volume'),
widget = Tkinter.Scale(top_frame, from_=0, to=128, variable=self.sample_volume)
resolution=1, orient=Tkinter.HORIZONTAL, w.grid(row=row, column=1, sticky='w', padx=5)
length="3i", label=_("Music volume"), row += 1
variable=self.music_volume, takefocus=0) w = Label(frame, text=_('Music volume:'))
widget.pack(side=Tkinter.TOP, padx=kw.padx, pady=kw.pady, w.grid(row=row, column=0, sticky='w', padx=5)
expand=Tkinter.YES, fill=Tkinter.BOTH) w = Scale(frame, from_=0, to=128, resolution=1,
orient='horizontal', takefocus=0,
length="3i", #label=_('Music volume'),
variable=self.music_volume)
w.grid(row=row, column=1, sticky='w', padx=5)
else: else:
# remove "Apply" button # remove "Apply" button
kw.strings[1] = None kw.strings[1] = None
# #
if TkVersion >= 8.4:
frame = LabelFrame(top_frame, text=_('Enable samles'), padx=5, pady=5)
else:
frame = Frame(top_frame)
frame.pack(expand=1, fill='both', padx=5, pady=5)
frame.columnconfigure(0, weight=1)
frame.columnconfigure(1, weight=1)
#
row = 0
col = 0
for n, t, v in self.samples:
v.set(app.opt.sound_samples[n])
w = Checkbutton(frame, text=t, anchor='w', variable=v)
w.grid(row=row, column=col, sticky='ew')
if col == 1:
col = 0
row += 1
else:
col = 1
#
top_frame.columnconfigure(1, weight=1)
#
focus = self.createButtons(bottom_frame, kw) focus = self.createButtons(bottom_frame, kw)
self.mainloop(focus, kw.timeout) self.mainloop(focus, kw.timeout)
@ -113,7 +176,7 @@ class SoundOptionsDialog(MfxDialog):
default=0, default=0,
resizable=1, resizable=1,
padx=10, pady=10, padx=10, pady=10,
buttonpadx=10, buttonpady=5, buttonpadx=1, buttonpady=5,
) )
return MfxDialog.initKw(self, kw) return MfxDialog.initKw(self, kw)
@ -123,6 +186,8 @@ class SoundOptionsDialog(MfxDialog):
self.app.opt.sound_mode = self.sound_mode.get() self.app.opt.sound_mode = self.sound_mode.get()
self.app.opt.sound_sample_volume = self.sample_volume.get() self.app.opt.sound_sample_volume = self.sample_volume.get()
self.app.opt.sound_music_volume = self.music_volume.get() self.app.opt.sound_music_volume = self.music_volume.get()
for n, t, v in self.samples:
self.app.opt.sound_samples[n] = v.get()
elif button == 2: elif button == 2:
for name, args in MIXERS: for name, args in MIXERS:
try: try:
@ -152,29 +217,8 @@ class SoundOptionsDialog(MfxDialog):
def mOptSoundDirectX(self, *event): def mOptSoundDirectX(self, *event):
##print self.sound_mode.get() ##print self.sound_mode.get()
d = MfxDialog(self.top, title=_("Sound preferences info"), d = MfxMessageDialog(self.top, title=_("Sound preferences info"),
text=_("Changing DirectX settings will take effect\nthe next time you restart ")+PACKAGE, text=_("Changing DirectX settings will take effect\nthe next time you restart ")+PACKAGE,
bitmap="warning", bitmap="warning",
default=0, strings=(_("&OK"),)) default=0, strings=(_("&OK"),))
# /***********************************************************************
# //
# ************************************************************************/
def soundoptionsdialog_main(args):
from tkutil import wm_withdraw
opt = Struct(sound=1, sound_mode=1, sound_sample_volume=128, sound_music_volume=96)
app = Struct(opt=opt, audio=None, debug=0)
tk = Tkinter.Tk()
wm_withdraw(tk)
tk.update()
d = SoundOptionsDialog(tk, "Sound settings", app)
print d.status, d.button
return 0
if __name__ == "__main__":
import sys
sys.exit(soundoptionsdialog_main(sys.argv))

View file

@ -169,7 +169,7 @@ class MfxDialog: # ex. _ToplevelDialog
def createFrames(self, kw): def createFrames(self, kw):
bottom_frame = Tkinter.Frame(self.top) bottom_frame = Tkinter.Frame(self.top)
bottom_frame.pack(side='bottom', fill='both', expand=1, ipady=3) bottom_frame.pack(side='bottom', fill='both', expand=1, ipadx=3, ipady=3)
if kw.separatorwidth > 0: if kw.separatorwidth > 0:
separator = Tkinter.Frame(self.top, relief="sunken", separator = Tkinter.Frame(self.top, relief="sunken",
height=kw.separatorwidth, width=kw.separatorwidth, height=kw.separatorwidth, width=kw.separatorwidth,