X-Git-Url: http://git.zerfleddert.de/cgi-bin/gitweb.cgi/micropolis/blobdiff_plain/403895917c093bdb88836e8e1694e937e1dd966e..5a6a8ae5829f6f2836cb58d35629c5fa1f7eb4ba:/res/micropolis.tcl diff --git a/res/micropolis.tcl b/res/micropolis.tcl index dc7d352..250ebf2 100644 --- a/res/micropolis.tcl +++ b/res/micropolis.tcl @@ -97,6 +97,7 @@ set DemandCom 0 set DemandInd 0 set Priority 2 set Time 3 +set Pause 0 set AutoGoto 1 set AutoBudget 1 set Disasters 1 @@ -412,8 +413,8 @@ sim ResetDynamic # the font in res (because it's already in the system fonts). These lines # are for other systems that lack the font. set FontPath "[pwd]/res/dejavu-lgc" -system "xset -fp $FontPath >/dev/null 2>&1" -system "xset +fp $FontPath >/dev/null 2>&1" +system "xset -fp \"$FontPath\" >/dev/null 2>&1" +system "xset +fp \"$FontPath\" >/dev/null 2>&1" ######################################################################## @@ -2043,13 +2044,13 @@ proc DoFileDialog {win Message Path Pattern FileName ActionOk ActionCancel} { wm withdraw $win" bind $win.files.files "" "\ FileSelectDouble $win %W %y $Pattern \" - $ActionOk \[$win.file.file get\] \[$win.path.path get\]\"" + $ActionOk {\[$win.file.file get\]} {\[$win.path.path get\]}\"" bind $win.path.path " ShowFileDialog $win \[$win.path.path get\] $Pattern $win.file.file cursor 0 focus $win.file.file" bind $win.file.file "\ - $ActionOk \[$win.file.file get\] \[$win.path.path get] + $ActionOk \[$win.file.file get\] \[$win.path.path get\] wm withdraw $win" } @@ -2285,18 +2286,18 @@ proc NameComplete {win Type} { proc ShowFileDialog {win Path Pattern} { busy $win { - set Path [lindex [split $Path] 0] + #set Path [lindex [split $Path] 0] if {[$win.files.files size] > 0} { $win.files.files delete 0 end } # read directory - if {[catch "exec ls -F $Path" Result]} { + if {[catch "exec ls -F \"$Path\"" Result]} { set ElementList {} } if {[string match $Result "* not found"]} { set ElementList {} } - set ElementList [lsort $Result] + set ElementList [lsort [split $Result "\n"]] # insert .. if {[string compare $Path "/"]} { @@ -3309,12 +3310,33 @@ proc UpdateScenarioButtonID {win id} { proc UpdateScenarioButton {win data} { + global Messages + set type [lindex $data 0] set id [lindex $data 1] set over [WindowLink $win.$id.over] set enabled [WindowLink $win.$id.enabled] set checked [WindowLink $win.$id.checked] #echo "WIN $win TYPE $type ID $id OVER $over ENABLED $enabled CHECKED $checked" + if {$over} { + if {[lindex ${data} 2] == "DoPickScenario"} { + catch {text $win.desc \ + -borderwidth 2 \ + -relief flat \ + -wrap word \ + -state normal \ + -font [Font $win Large]} + + $win.desc configure -state normal + $win.desc delete 0.0 end + $win.desc insert end "[lindex $Messages([lindex ${data} 3]) 1]\n\n[lindex $Messages([lindex ${data} 3]) 2]" + $win.desc configure -state disabled + + place $win.desc -x 232 -y 170 -width 280 -height 285 + } + } else { + catch {destroy $win.desc} + } if {$enabled} { if {$checked} { if {$over} { @@ -4917,12 +4939,14 @@ proc oops {} { proc TogglePause {} { - global State + global State Pause if {"$State" != "play" || [sim Speed]} { sim Speed 0 + set Pause 1 } else { sim Speed 3 + set Pause 0 } MakeRunningSound } @@ -5129,7 +5153,7 @@ proc UIDoLoadCity {name path} { if {![string match *.cty $name]} { set name $name.cty } - MakeHistory "DoLoadCity $path/$name" + MakeHistory "DoLoadCity {$path/$name}" }