From:	CRDGW2::CRDGW2::MRGATE::"SMTP::CRVAX.SRI.COM::RELAY-INFO-VAX"  7-MAY-1991 22:44:41.13
To:	ARISIA::EVERHART
CC:	
Subj:	DECwindows Cookbook 8 of 8

From:	RELAY-INFO-VAX@CRVAX.SRI.COM@SMTP@CRDGW2
To:	Everhart@Arisia@MRGATE

Received:  by crdgw1.ge.com (5.57/GE 1.97)
	 id AA15312; Tue, 7 May 91 20:41:05 EDT
Received: From UCBVAX.BERKELEY.EDU by CRVAX.SRI.COM with TCP; Tue,  7 MAY 91 17:30:00 PDT
Received: by ucbvax.Berkeley.EDU (5.63/1.42)
	id AA11438; Tue, 7 May 91 17:19:17 -0700
Received: from USENET by ucbvax.Berkeley.EDU with netnews
	for info-vax@kl.sri.com (info-vax@kl.sri.com)
	(contact usenet@ucbvax.Berkeley.EDU if you have questions)
Date: 6 May 91 01:26:47 GMT
From: usc!wuarchive!zaphod.mps.ohio-state.edu!pacific.mps.ohio-state.edu!linac!convex!mic!montagar!fallout!system@ucsd.edu  (T-H-E John Wisniewski?!?)
Organization: DECUS DFWLug BBS - Dallas, TX
Subject: DECwindows Cookbook 8 of 8
Message-Id: <5124@fallout.uucp>
Sender: info-vax-request@kl.sri.com
To: info-vax@kl.sri.com

+-+-+-+ Beginning of part 8 +-+-+-+
X(                 * Cut font type into command) h
X300 -41400 M
X(                     or create a logical FONT\255NAME and use it:) h
X300 -42800 M
X( ) h
X300 -44200 M
V(                 *  $CREATE/TERM/WINDOW=\(FONT=" font\255name"\)/LITTLE_FONT)
X h
X300 -45600 M
V(                       \(There is black magic in the format of this command,)
X h
X300 -47000 M
V(                          the /LITTLE_FONT qualifier is require after the /WIN
XDOW\)) h
X300 -48400 M
X300 -49800 M
X(                 *  DECterm window is created with the chosen font.) h
X300 -51200 M
X300 -52600 M
X(If you like the DECterm that results, do a "save current settings" from the) h
X300 -54000 M
X(DECterm customize menu and it will be permanently saved in your) h
X300 -55400 M
X(SYS$LOGIN:DECW$TERMINAL.DAT.) h
X300 -56800 M
X300 -58200 M
X(FONT DENSITY ON DIFFERENT MONITORS) h
X300 -59600 M
X(    If you use the 100 dpi fonts on a 75 dpi monitor, everything looks) h
X300 -61000 M
X(    bigger.  That's the easiest way to increase the size of everything) h
X300 -62250 M
X-7200 7200 T
XR
X
Xshowpage
X$P e
X
X%%Page: 25 25
X/$P a D
Xg N
X0 79200 T
XS
XR
XS
X7200 -7200 T
XN
X0 G
X300 -1200 M
X/NewCenturySchlbk-Roman-ISOLatin1 $
X/NewCenturySchlbk-Roman & P
X/NewCenturySchlbk-Roman-ISOLatin1 F 1200 o f
X(DECWINDOW POINTER CONTROL) h
X300 -2600 M
X300 -4000 M
X(DECwindow pointers may be controlled from the SESSION MANAGER'S) h
X300 -5400 M
X(CUSTOMIZE menu or may be controlled by the file:) h
X300 -6800 M
X300 -8200 M
X(SYS$LOGIN:DECW$SM_GENERAL.DAT) h
X300 -9600 M
X300 -11000 M
X(This file may be edited/created and with the addition of the line: ) h
X300 -12400 M
X300 -13800 M
X(sm.pointer_shape:  number) h
X300 -15200 M
X300 -16600 M
X(When any number other than 0 will index into the standard MIT X CURSOR) h
X300 -18000 M
X(FONTS.) h
X300 -19400 M
X300 -20800 M
X(These 76 pointer shapes  are programatically documented in the file ) h
X300 -22200 M
X300 -23600 M
X(SYS$LIBRARY:DECW$CURSOR.H) h
X300 -25000 M
X300 -26400 M
X(but several of the more useful number are documented here:) h
X300 -27650 M
X300 -28850 M
X6060 -28850 M
X/Courier-ISOLatin1 $
X/Courier & P
X/Courier-ISOLatin1 F 1000 o f
X(finger_up) h
X11820 -28850 M
X( ) h
X17580 -28850 M
X23340 -28850 M
X( 2) h
X300 -30050 M
X6060 -30050 M
X(waiting_watch) h
X17580 -30050 M
X23340 -30050 M
X(\2554  ) h
X29100 -30050 M
X300 -31250 M
X6060 -31250 M
X(no_entry_sign) h
X17580 -31250 M
X23340 -31250 M
X(\2556) h
X300 -32450 M
X6060 -32450 M
X(open_square   ) h
X17580 -32450 M
X23340 -32450 M
X( 8) h
X300 -33650 M
X6060 -33650 M
X(boat) h
X11820 -33650 M
X17580 -33650 M
X(   ) h
X23340 -33650 M
X(\2558       ) h
X300 -34850 M
X6060 -34850 M
X(star) h
X11820 -34850 M
X17580 -34850 M
X23340 -34850 M
X(+20) h
X29100 -34850 M
X300 -36050 M
X6060 -36050 M
X(square_labyrinth) h
X17580 -36050 M
X23340 -36050 M
X(\25520) h
X300 -37250 M
X6060 -37250 M
X(white_donut) h
X17580 -37250 M
X23340 -37250 M
X(\25524) h
X300 -38450 M
X6060 -38450 M
X(XC_coffee_mug) h
X17580 -38450 M
X23340 -38450 M
X(\25528) h
X300 -39650 M
X6060 -39650 M
X(junction) h
X11820 -39650 M
X17580 -39650 M
X( ) h
X23340 -39650 M
X(\25534) h
X300 -40850 M
X6060 -40850 M
X(circle_white) h
X17580 -40850 M
X23340 -40850 M
X(\25538) h
X300 -42050 M
X6060 -42050 M
X(arrow_up_down) h
X17580 -42050 M
X23340 -42050 M
X(\25542) h
X300 -43250 M
X6060 -43250 M
X(hand_back_north) h
X17580 -43250 M
X23340 -43250 M
X(+42) h
X300 -44450 M
X6060 -44450 M
X(hand_back_north_east) h
X23340 -44450 M
X(+44) h
X300 -45650 M
X6060 -45650 M
X(finger_pointing_west) h
X23340 -45650 M
X(+45) h
X300 -46850 M
X6060 -46850 M
X(circle_arrows) h
X17580 -46850 M
X23340 -46850 M
X(\25550) h
X300 -48050 M
X6060 -48050 M
X(a_bird) h
X11820 -48050 M
X17580 -48050 M
X23340 -48050 M
X(\25554) h
X300 -49250 M
X6060 -49250 M
X(hand_pointing_left_1) h
X23340 -49250 M
X(\25555) h
X300 -50450 M
X6060 -50450 M
X(hand_pointing_left_2) h
X23340 -50450 M
X(\25560) h
X29100 -50450 M
X34860 -50450 M
X40620 -50450 M
X( ) h
X300 -51650 M
X6060 -51650 M
X(little_man) h
X17580 -51650 M
X23340 -51650 M
X(\25580) h
X300 -52850 M
X6060 -52850 M
X(skull_&_crossbones) h
X17580 -52850 M
X23340 -52850 M
X(\25588) h
X300 -54050 M
X6060 -54050 M
X(rectangle_mouse) h
X17580 -54050 M
X23340 -54050 M
X(\255100) h
X300 -55250 M
X6060 -55250 M
X(yet_another_square) h
X17580 -55250 M
X23340 -55250 M
X(\255102) h
X300 -56450 M
X6060 -56450 M
X(little_ship) h
X17580 -56450 M
X23340 -56450 M
X(\255104) h
X300 -57650 M
X6060 -57650 M
X(various_arrows) h
X17580 -57650 M
X23340 -57650 M
X(\255105 up to \255110) h
X300 -58850 M
X6060 -58850 M
X(XC_spraycan) h
X17580 -58850 M
X23340 -58850 M
X(\255124) h
X300 -60050 M
X6060 -60050 M
X(starship_enterprise_top) h
X23340 -60050 M
X(\255142) h
X300 -61250 M
X6060 -61250 M
X(umbrella_4_white_backgr) h
X23340 -61250 M
X(\255146) h
X300 -62450 M
X6060 -62450 M
X(chimney_4_black_backgr) h
X23340 -62450 M
X(\255147) h
X29100 -62450 M
X300 -63650 M
X6060 -63650 M
X(wrist_watch) h
X17580 -63650 M
X23340 -63650 M
X(\255150) h
X29100 -63650 M
X300 -64850 M
X-7200 7200 T
XR
X
Xshowpage
X$P e
X
X%%Page: 26 26
X/$P a D
Xg N
X0 79200 T
XS
XR
XS
X7200 -7200 T
XN
X0 G
X300 -1200 M
X/NewCenturySchlbk-Roman-ISOLatin1 $
X/NewCenturySchlbk-Roman & P
X/NewCenturySchlbk-Roman-ISOLatin1 F 1200 o f
X(DECWINDOW POINTER CONTROL \(cont\)) h
X300 -2600 M
X300 -4000 M
X(In order to install the new pointer shapes, after editing the) h
X300 -5400 M
X(DECW$SM_GENERAL.DAT file, log out and log back in.) h
X300 -6800 M
X300 -8200 M
V(A slightly more complex way \(but preferable to logging out\) is to edit the)
X h
X300 -9600 M
X(DECW$SM_GENERAL.DAT file and use the SESSION MANAGER'S) h
X300 -11000 M
X(CUSTOMIZE WINDOW to USE LAST SAVED SETTINGS.  ) h
X300 -12400 M
X(This will reset the cursor to the new value.) h
X300 -13800 M
X300 -15200 M
X300 -16600 M
X300 -18000 M
X300 -19400 M
X(DECWINDOW TERMINAL/DEVICE TWAx: \(MESSAGE BOX\)) h
X300 -20800 M
X300 -22200 M
X(The Message box is the lowest number TWA device on the system.  Information) h
X300 -23600 M
X(can be REPLYed, TYPED, or  /OUTPUT= to this device as if it were a terminal) h
X300 -25000 M
X(\(assuming you had write access to that terminal!\)) h
X300 -26400 M
X300 -27800 M
X(Very useful location if status messages are needed from jobs running in) h
X300 -29200 M
X(background.) h
X300 -30600 M
X300 -32000 M
X(The device number is an incrementing number, adding to itself every login) h
X300 -33400 M
V(\(similar to the LTA device incrementation\).  The only easy way to identify)
X h
X300 -34800 M
X(the message window is to do a $SHOW DEV TW and identify the lowest ) h
X300 -36200 M
X(device number.) h
X300 -37600 M
X300 -39000 M
X300 -40400 M
X300 -41800 M
X(DECWINDOW WINDOW FOCUS ON ACTIVATION) h
X300 -43200 M
X300 -44600 M
X(In DECW$SM_GENERAL.DAT the resource control line ) h
X300 -46000 M
X300 -47400 M
V(wm*default.startupfocus:  true               !sets focus to new/latest window)
X h
X300 -48800 M
V(wm*default.deiconifyfocus:  true            !sets focus to deiconified window)
X h
X300 -50200 M
X300 -51600 M
X(This is clearly a violation of the XWINDOWs Style guide, but it keeps ) h
X300 -53000 M
X(focus not on the last window a DECwindow user was working on, but) h
X300 -54400 M
X(on the latest window created or deiconified.) h
X300 -55800 M
X300 -57200 M
V(This also saves an extra mouse click to focus specifically on a newly created)
X h
X300 -58600 M
X(window.) h
X300 -59850 M
X-7200 7200 T
XR
X
Xshowpage
X$P e
X
X%%Page: 27 27
X/$P a D
Xg N
X0 79200 T
XS
XR
XS
X7200 -7200 T
XN
X0 G
X300 -1650 M
X/NewCenturySchlbk-Roman-ISOLatin1 $
X/NewCenturySchlbk-Roman & P
X/NewCenturySchlbk-Roman-ISOLatin1 F 1800 o f
X(Chapter 4      DECTERM CONTROLS) h
X300 -3200 M
X300 -4600 M
X300 -6000 M
Xn 0.667 o f
X(DECTERMS DETACHED PROCESSES ) h
X300 -7400 M
X300 -8800 M
X(SYS$INPUT/SYS$OUTPUT ARE MAILBOXES UNTIL LOGIN) h
X300 -10200 M
X300 -11600 M
X(DECwindow applications and DECterms are created first as detached processes) h
X300 -13000 M
X(with SYS$INPUT and SYS$OUTPUT defined as mailboxes.  ) h
X300 -14400 M
X300 -15800 M
X(When they are created, they read and execute SYSLOGIN.COM and LOGIN.COM) h
X300 -17200 M
X(After process creation, the process redefines SYS$INPUT and SYS$OUTPUT) h
X300 -18600 M
X(to be the terminal/device it's attached to.) h
X300 -20000 M
X300 -21400 M
V(After the redefinition of the logicals, the process executes both SYSLOGIN.COM
X ) h
X300 -22800 M
X(AND LOGIN.COM again!) h
X300 -24200 M
X300 -25600 M
X(This make any interactive use of SYS$LOGIN.COM and/or LOGIN.COM) h
X300 -27000 M
X(fail the procedures because $INQUIRE or $READ commands will not ) h
X300 -28400 M
X(work against the mailbox definitions. ) h
X300 -29800 M
X300 -31200 M
X(Executing the SYS$LOGIN.COM and the LOGIN.COM twice is also quite) h
X300 -32600 M
X(expensive and time consuming when waiting for a window to pop up.) h
X300 -34000 M
X300 -35400 M
V(One way to correct the double execution \(if desired\) is to check to see that
X) h
X300 -36800 M
X(the device is a terminal or a mailbox.  A single IF statement can handle) h
X300 -38200 M
X(the check in both files:) h
X300 -39600 M
X300 -41000 M
X($ IF F$GETDVI\("SYS$OUTPUT", "TRM"\) THEN GOTO START_TERMINAL) h
X300 -42400 M
X($ GOTO EXIT) h
X300 -43800 M
X($START_TERMINAL:) h
X300 -45200 M
X300 -46600 M
X(...          BODY OF SYS$LOGIN.COM OR LOGIN.COM) h
X300 -48000 M
X300 -49400 M
X($EXIT:) h
X300 -50800 M
X($EXIT) h
X300 -52200 M
X300 -53600 M
X(This check will save time in getting your DECterms created and logged in) h
X300 -55000 M
X(by only executing the login file when they are connected to real terminals.) h
X300 -56400 M
X300 -57800 M
V(This also allows for your interactive connections to work as well if they are)
X h
X300 -59200 M
X(partitioned by the check in the DCL proceedure.) h
X300 -60600 M
X300 -62000 M
X300 -63400 M
X-7200 7200 T
XR
X
Xshowpage
X$P e
X
X%%Page: 28 28
X/$P a D
Xg N
X0 79200 T
XS
XR
XS
X7200 -7200 T
XN
X0 G
X300 -1200 M
X/NewCenturySchlbk-Roman-ISOLatin1 $
X/NewCenturySchlbk-Roman & P
X/NewCenturySchlbk-Roman-ISOLatin1 F 1200 o f
X(DECterm ESC/OSC control sequences) h
X300 -2600 M
X300 -4000 M
X(DECterm windows utilize a DIGITAL supplied terminal emulator that ) h
X300 -5400 M
X(emulates many of the Character Cell Terminals built by Digital.) h
X300 -6800 M
X300 -8200 M
X(Some escape sequences can control various characteristics of the terminal) h
X300 -9600 M
X(window.  ) h
X300 -11000 M
X300 -12400 M
X(For Example:) h
X300 -13800 M
X300 -15050 M
X300 -16250 M
X/Courier-ISOLatin1 $
X/Courier & P
X/Courier-ISOLatin1 F 1000 o f
X(  $ OSC[0,8] = 157) h
X300 -17450 M
X(  $ ST[0,8] = 156) h
X300 -18650 M
X(  $ write sys$output OSC,"2L;New Icon Name",ST) h
X300 -19850 M
X(  $ write sys$output OSC,"21;New Window Bar Name",ST) h
X300 -21050 M
X300 -22400 M
X/NewCenturySchlbk-Roman-ISOLatin1 F 1200 o f
X(This procedure quickly changes the Window Banner and Icon Name.  Changes ) h
X300 -23800 M
X(can come from a program or from a DCL command proceedure.  This approach) h
X300 -25200 M
V(allows for status information to be quickly displayed in an Icon without havin
Xg) h
X300 -26600 M
X(to deiconify the window and examine it fully.) h
X300 -27850 M
X300 -29050 M
X300 -30250 M
X300 -31450 M
X300 -32800 M
X300 -34238 M
X-7200 7200 T
XR
X
Xshowpage
X$P e
X
X$D restore
X%%Trailer
Xend % DEC_WRITE_dict
X%%Pages: 28
X%%DocumentFonts: Terminal_DECTech
X%%+ NewCenturySchlbk-Roman-ISOLatin1
X%%+ Times-Roman-ISOLatin1
X%%+ Courier-ISOLatin1
$ GOSUB UNPACK_FILE
$ EXIT
-+-+-+-+-+ End of part 8 +-+-+-+-+-

