/* */ /* Sample program to start an OS/2 session or a DOS box with a */ /* specific font size */ /* */ /* Usage: */ /* */ /* StartVio {fontSize} {prog_parameter} */ /* */ /* where: */ /* */ /* fontSize */ /* */ /* Font for the window in the format 'HHxWW' */ /* where HH = font height as decimal value */ /* and WW = font width as decimal value */ /* (def.: Use default font size) */ /* */ /* prog_parameter */ /* */ /* Further parameter for the START command */ /* (e.g /DOS to start a DOS box) */ /* */ /* */ /* */ /* Example: */ /* */ /* Start an OS/2 Session with a 14x8 Font */ /* */ /* StartVIO 14x8 */ /* */ /* Start a DOS Box with a 10x6 Font */ /* */ /* StartVIO 14x8 /DOS */ /* */ /* */ /* History */ /* 10.07.1997 v1.00 /bs */ /* - initial release (for RXT&T v2.60) */ /* */ /* */ /* Note: */ /* Change the value for the variable "FontMenuEntry" if you're not */ /* using a non-english version of OS/2! */ /* */ /* */ /* (c) 1996 Bernd Schemmer, Germany, EMail: Bernd.Schemmer@gmx.de */ /* */ /* Warning: The name of this key is language */ /* dependent! For example in German OS/2 */ /* versions, the name of this key is */ /* Schrif~tartgröße...; in Spanish OS/2 */ /* version, it's Tamaqo del ~font...! (The */ /* name seems to be equal to the menu entry */ /* for the popup menu.) */ /* (see Font size for text (VIO) windows) */ FontMenuEntry = '~Font Size...' /* process the parameter */ parse arg thisArgs parse var thisArgs thisFont furtherArgs NewFontSize = '' OldFontSize = '' if thisFont <> '' then do parse var thisFont height 'x' width if datatype( height ) <> 'NUM' | datatype( width ) <> 'NUM' then do furtherArgs = thisArgs end /* if datatype( height ) <> 'NUM' ... */ else do NewFontSize = d2c( width ) || d2c( height ) end /* else */ end /* if thisFont <> '' then */ /* load the necessary REXXUTIL function */ if newFontSize <> '' then do call rxFuncAdd 'SysIni', 'REXXUTIL', 'SysIni' /* save the old font size */ oldFontSize = SysIni( 'USER', 'Shield', FontMenuEntry ) if oldFontSize = 'ERROR:' then oldFontSize = '' /* set the new font size */ call SysIni 'USER', 'Shield', FontMenuEntry, newFontSize end /* if newFontSize <> '' then */ /* start a new OS/2 session or DOS window */ '@start /win' furtherArgs /* restore the old font size or delete the font size entry */ /* if no font size entry was set */ if newFontSize <> '' then do if oldFontSize <> '' then call SysIni 'USER', 'Shield', FontMenuEntry, oldFontSize else call SysIni 'USER', 'Shield', FontMenuEntry, 'DELETE:' end /* if newFontSize <> '' then */ exit