set SplashPanelWidth 1200
set SplashPanelHeight 900
-set ScenarioPanelWidth 420
-set ScenarioPanelHeight 440
+#set ScenarioPanelWidth 420
+#set ScenarioPanelHeight 440
+set ScenarioPanelWidth 1200
+set ScenarioPanelHeight 900
set SugarURI ""
set SugarNickName ""
# 0 1 2 3 4 5 6 7 8 9 10 11 12 13
# type id callback param var x y w h normal over disabled checked checkedover
# ----------- --------------- --------------- ------- ------- --- --- --- --- ------- ---- -------- ------- -----------
-set ScenarioButtons {
+set ScenarioButtons1200x900 {
{ button load DoLoad "" "" 70 238 157 90 "" @images/button1hilite.xpm "" }
{ button generate DoGenerate "" "" 62 392 157 90 "" @images/button2hilite.xpm "" }
{ button quit DoQuit "" "" 68 544 157 90 "" @images/button3hilite.xpm "" }
{ button scenario8 DoPickScenario "6" "" 937 638 209 188 "" @images/scenario8hilite.xpm "" }
}
+set ScenarioButtons $ScenarioButtons1200x900
+set ScenarioBackground "@images/background-micropolis.xpm"
+
+set screenwidth [winfo screenwidth .]
+set screenheight [winfo screenheight .]
+
+if {($screenwidth < $ScenarioPanelWidth) ||
+ ($screenheight < $ScenarioPanelHeight)} {
+ puts stderr "WARNING: Screen too small for scenario window, no matching images available.\n"
+}
+
# Disabled until we handle mouse events on the map itself.
# { button map DoMap "" "" 516 30 396 338 "" @images/maphilite.xpm }
system "xset -fp \"$FontPath\" >/dev/null 2>&1"
system "xset +fp \"$FontPath\" >/dev/null 2>&1"
+# Ignore SIGCHLD for spawned sound-player childs, this should lead to them
+# being reaped by init
+signal ignore SIGCHLD
+
########################################################################
# Messages
proc EchoPlaySound {soundspec} {
- # Temporary workaround to tell Python Sugar app to play sound.
- global Sound
- if {$Sound} {
- #echo PlaySound [lindex $soundspec 0]
- signal ignore SIGCHLD
- exec res/sounds/player res/sounds/[string tolower [lindex $soundspec 0]].wav &
- }
}
proc UIMakeSoundOn {win chan sound {opts ""}} {
- # Send message to Python to play sound.
- EchoPlaySound $sound
-
- #UIDoSoundOn $win "play $sound -replay -channel $chan $opts"
+ playsound $chan $sound $opts
}
}
-proc UIStopSoundOn {win chan sound {opts ""}} {
- UIDoSoundOn $win "stop $sound"
-}
-
-
proc UIMakeSound {chan sound {opts ""}} {
- # Send message to Python to play sound.
- EchoPlaySound $sound
-
- #UIDoSound "sound play $sound -replay -channel $chan $opts"
+ playsound $chan $sound $opts
}
}
-proc UIStopSound {chan sound {opts ""}} {
- UIDoSound "sound stop $sound"
-}
-
-
proc SetupSoundServer {win} {
AddSoundServer $win
}
case [$w ToolState] in \
7 { # bulldozer
- UIStopSoundOn $w edit 1
+ stopdozer
} \
10 { # chalk
StopChalk $w