From 38b72baaf977880d0d0caf230c81e242ded5aad6 Mon Sep 17 00:00:00 2001 From: Michael Gernoth Date: Thu, 16 Dec 2010 09:50:24 +0100 Subject: [PATCH] begin suppport for smaller screens, currently just prints a warning Variables defining the scenarion window size and images can now be set from micropolis.tcl depending on the display size. As there are currently no nice small images available, just a warning is printed --- res/micropolis.tcl | 19 ++++++++++++++++--- res/wscen.tcl | 11 ++++++++--- src/sim/sim.c | 1 + 3 files changed, 25 insertions(+), 6 deletions(-) diff --git a/res/micropolis.tcl b/res/micropolis.tcl index 5704330..dbf4312 100644 --- a/res/micropolis.tcl +++ b/res/micropolis.tcl @@ -174,8 +174,10 @@ set NoticePanelHeight 250 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 "" @@ -204,7 +206,7 @@ set SubWindows { # 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 "" } @@ -225,6 +227,17 @@ set ScenarioButtons { { 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 } diff --git a/res/wscen.tcl b/res/wscen.tcl index 4ccc862..900be60 100644 --- a/res/wscen.tcl +++ b/res/wscen.tcl @@ -75,9 +75,12 @@ if {[catch "toplevel $win -screen $display"]} { return "" } +global ScenarioPanelWidth +global ScenarioPanelHeight + wm title $win "Micropolis Scenarios" wm iconname $win {Micropolis Scenarios} -wm geometry $win 1200x900+0+0 +wm geometry $win ${ScenarioPanelWidth}x${ScenarioPanelHeight}+0+0 wm withdraw $win wm protocol $win delete "DeleteScenarioWindow $win ;" wm fullscreen $win on @@ -90,13 +93,15 @@ canvas $win.canvas \ -scrollincrement 0 \ -borderwidth 0 \ -background #BFBFBF \ - -width 1200 -height 900 + -width $ScenarioPanelWidth -height $ScenarioPanelHeight LinkWindow $win.canvas $win.canvas LinkWindow $win.canvas.w $win +global ScenarioBackground + $win.canvas create bitmap 0 0 \ -tags background \ - -bitmap "@images/background-micropolis.xpm" \ + -bitmap $ScenarioBackground \ -anchor nw $win.canvas bind background {HandleScenarioDown %W %x %y} diff --git a/src/sim/sim.c b/src/sim/sim.c index 4b2748c..5ae4770 100644 --- a/src/sim/sim.c +++ b/src/sim/sim.c @@ -632,6 +632,7 @@ main(int argc, char *argv[]) printf("Welcome to X11 Multi Player Micropolis version %s by Will Wright, Don Hopkins.\n", MicropolisVersion); printf("Copyright (C) 2002 by Electronic Arts, Maxis. All rights reserved.\n"); + printf("Support for newer Unix systems and new bugs added by Michael Gernoth.\n"); while (!errflg && !tkMustExit && -- 2.39.2