rsalz@uunet.uu.net (Rich Salz) (01/31/89)
Submitted-by: Stephen A. Uhler <sau@bellcore.com> Posting-number: Volume 17, Issue 51 Archive-name: mgr/part50 #! /bin/sh # This is a shell archive. Remove anything before this line, then unpack # it by saving it into a file and typing "sh file". To overwrite existing # files, type "sh file -c". You can also feed this as standard input via # unshar, or by typing "sh <file", e.g.. If this archive is complete, you # will see the following message at the end: # "End of archive 50 (of 61)." # Contents: doc/usrman/doc.4 # Wrapped by rsalz@papaya.bbn.com on Thu Nov 17 21:05:58 1988 PATH=/bin:/usr/bin:/usr/ucb ; export PATH if test -f 'doc/usrman/doc.4' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'doc/usrman/doc.4'\" else echo shar: Extracting \"'doc/usrman/doc.4'\" \(31915 characters\) sed "s/^X//" >'doc/usrman/doc.4' <<'END_OF_FILE' X'\" Copyright (c) 1988 Bellcore X'\" All Rights Reserved X'\" Permission is granted to copy or use this program, EXCEPT that it X'\" may not be sold for profit, the copyright notice must be reproduced X'\" on copies, and credit should be given to Bellcore where it is due. X'\" BELLCORE MAKES NO WARRANTY AND ACCEPTS NO LIABILITY FOR THIS PROGRAM. X'\" X'\" $Header: doc.4,v 4.1 88/06/29 17:04:59 bianchi Exp $ X'\" $Source: /tmp/mgrsrc/doc/usrman/RCS/doc.4,v $ X.Fh m_nomenu X.Fs m_nomenu 8 "Unselect a pop-up menu from the middle mouse button" XDeselect all menus. XNo menu will pop-up when the middle Xmouse button is pressed. XThis call does not delete the menu, it simply disassociates it Xfrom the button. X.Fe X.Fh m_nomenu2 X.Fs m_nomenu2 8 "Unselect a pop-up menu from the end mouse button" XDeselect all menus. XNo menu will pop-up when the right Xmouse button is pressed. XThis call does not delete the menu, it simply disassociates it Xfrom the button. This macro should be combined with X.Fr m_nomenu X but is separate for historical reasons. X.Fe X.Fh m_othersave id sub name X.Fs m_othersave 5 "Save another client's window image in a file" XThe bitmap contents of the window identified as X.Fi id . sub Xis saved in the file X.Fi name Xin bitmap format (see X.I dump.h Xfor a description of the bitmap format). XThe X.I "window id" Xcan be determined either by calling X.Fr m_getinfo G_ALL X or Xfrom the event X.SM X.I M_ACCEPT X.LG X(see X.Fr m_setevent X). XSee also X.Fr m_windowsave X and X.Fr m_bitsave X\&. X.Fe X.Fh m_pagemenu parent child X.Fs m_pagemenu 8 "Break a large menu into pages" XConnect menu X.Fi child Xto the bottom of menu X.Fi parent Xto permit Xa long menu to be paged. XMousing off the bottom of the X.Fi parent Xmenu automatically pops-up the X.I child Xmenu, which Xin turn may be the parent of another menu. XSee also X.Fr m_unpagemenu X, X.Fr m_linkmenu X and X.Fr m_unlinkmenu X\&. X.Fe X.Fh m_pop X.Fs m_pop 10 "Pop the window context" XPop the window context. XThe last window context saved by calling X.Fr m_push X or X.Fr m_pushsave X is restored. XIf no environments have been pushed, X.Fr m_pop Xis ignored. X.Fe X.Fh m_popall X.Fs m_popall 10 "Pop all stacked window contexts" XLike X.Fr m_pop Xabove, except all environments pushed since the Xfirst call to X.Fr m_setup Xare popped. XThe macro X.Fr m_popall X is typically Xused as part of the clean up before Xclient program termination. X.Fe X.Fh m_printstr string X.Fs m_printstr 2 "Print a string on the window" XPrint X.Fi string Xon the window at the current character cursor location. XThis is equivalent to the X.I stdio Xfunction X.I printf Xwith a X.I %s Xformat specified and the output directed toward the file pointer X.I m_termout Xinstead of X.I stdout . X.Fe X.Fh m_push mode X.Fs m_push 10 "Stack the window context" XCertain parts (stack modes) of the current window environment may Xbe moved to a stack, to be restored at a later time with X.Fr m_pop Xor X.Fr m_popall X\&. XAny combination of the following pieces of the Xwindow environment, called a window context, Xmay be placed on the window stack. X.RS X.IP \fBP_BITMAP\fP 0.5i X.br XAll currently defined X.I scratchpad Xbitmaps Xare moved to the stack and become undefined in the current window context. X.IP \fBP_CURSOR\fP 0.5i X.br XThe current X.I character Xcursor Xand X.I "graphics point" Xpositions are saved on the stack. X.IP \fBP_EVENT\fP 0.5i X.br XAll currently defined events are moved to the stack and Xbecome undefined in the current window context. X.IP \fBP_FLAGS\fP 0.5i X.br XThe window modes, as set with X.Fr m_setmode Xare moved to the stack. XThe modes revert to their default settings in the current window context. X.IP \fBP_FONT\fP 0.5i X.br XThe current font setting is copied to the stack. XIf this font is subsequently deleted, by writing over it with a different Xfont, the original font setting is retained, even if it can no longer Xbe accessed using X.Fr m_font X\&. X.IP \fBP_MENU\fP 0.5i X.br XAll downloaded menus and menu links are moved to the the stack along with Xthe currently selected menu number. XThe menus become undefined in the current context. X.IP \fBP_MOUSE\fP 0.5i X.br XThe mouse cursor location Xis saved on the stack. XIts current location remains the same. X.IP \fBP_POSITION\fP 0.5i X.br XThe window size and location is saved on the stack. XThe current size and location are maintained. X.IP \fBP_TEXT\fP 0.5i X.br XThe text region location and size are saved on the stack. XThe text region in the current context is reset to the entire window. X.IP \fBP_WINDOW\fP 0.5i X.br XThe current image contents of the window is copied to the stack. XThis is done without altering the current contents of the window. X.RE XStack modes are combined by X.I or -ing Xthem together Xto form a saved window context, such as: X.Fr m_push P_MENU|P_EVENT X which will save all events, and menus but leave everything else Xalone. XAll stack modes that Xrequire client download data revert to their default settings Xwhen they are X.I pushed . XFor example, after X.Fr m_push P_MENU|P_EVENT|P_MOUSE X is called, no Xevents or menus are currently defined, Xbut the mouse remains where it is. XThe defined constant X.SM X.I P_ALL X.LG Xrefers to all of the modes. X.Fe X.Fh m_pushsave mode X.Fs m_pushsave 10 "Stack and save the window context" XCertain parts (stack modes) of the current window environment may Xbe copied to a stack, to be restored at a later time with X.Fr m_pop Xor X.Fr m_popall X\&. XThe macro X.Fr m_pushsave X differs from X.Fr m_push Xin that downloaded data, such as X.I menus X.I events Xor X.I scratchpad Xbitmaps Xare copied to the stack instead of moved, Xand thus remain in effect after the call to X.Fr m_pushsave X\&. XThe current window context is thus unaffected. XAny combination of the following pieces of the Xwindow environment may be copied to the window stack. X.RS X.IP \fBP_BITMAP\fP 0.5i X.br XAll currently defined X.I scratchpad Xbitmaps Xare copied to the stack. X.IP \fBP_CURSOR\fP 0.5i X.br XThe current X.I character Xand X.I graphics Xcursor positions are saved on the stack. X.IP \fBP_EVENT\fP 0.5i X.br XAll currently defined events are copied to the stack. X.IP \fBP_FLAGS\fP 0.5i X.br XThe window modes, as set with X.Fr m_setmode X, are copied to the stack. X.IP \fBP_FONT\fP 0.5i X.br XThe current font setting is copied to the stack. XIf this font is subsequently deleted, by writing over it with a different Xfont, the original font setting is retained, even if it can no longer Xbe accessed using X.Fr m_font X\&. X.IP \fBP_MENU\fP 0.5i X.br XAll downloaded menus and menu links are copied to the the stack along with Xthe currently selected menu number. X.IP \fBP_MOUSE\fP 0.5i X.br XThe mouse cursor location Xis saved on the stack. X.IP \fBP_POSITION\fP 0.5i X.br XThe window size and location are saved on the stack. X.IP \fBP_TEXT\fP 0.5i X.br XThe text region location and size are saved on the stack. X.IP \fBP_WINDOW\fP 0.5i X.br XThe current image contents of the window is copied to the stack. X.RE XStack modes are combined by X.I or -ing Xthem together Xto form a saved window context, such as: X.Fr m_push P_MENU|P_EVENT X which will save all events, and menus but leave everything else Xalone. X.Fe X.Fh m_put string X.Fs m_put 12 "Save characters in the global snarf buffer" X.Fi String Xis put into the global X.I snarf Xbuffer. XThere is one common buffer Xfor all clients programs. XThe macro X.Fr m_snarf X is used to retrieve the contents of the buffer. XThe \*M system X.I cut Xfunction places text in this buffer, whereas Xthe system X.I paste Xfunction pastes text from this buffer. X.Fe X.Fh m_putchar c X.Fs m_putchar 2 "Put a character on the window" XThe character X.Fi c Xis written in the window at the current character cursor Xlocation. XThis function is like the X.I stdio X.I putchar(c) , Xonly directed toward the client's window. X.Fe X.Fh m_rcircle radius X.Fs m_rcircle 4 "Draw a circle at the graphics point" XA circle of radius X.Fi radius Xis drawn, centered at Xthe current X.I "graphics point" . XThe points at the edge of the circle are Xset, cleared or inverted Xdepending upon the last call to X.Fr m_func X\&. XCircles are always drawn as circles, both in X.I absolute Xand in X.I relative Xwindow coordinates. XThe X.Fi radius Xis scaled based upon the average X.Fi width Xand X.Fi height Xof the window. X.Fe X.Fh m_rellipse radius1 radius2 X.Fs m_rellipse 4 "Draw an ellipse at the graphics point" XDraw an ellipse centered at Xthe X.I "graphics point" . XThe two radii, X.Fi radius1 Xand X.Fi radius2 Xspecify the major and minor axis. XThe ellipse is either Xset, cleared, or inverted Xdetermined by the last call to X.Fr m_func X\&. XIf the window is in X.I relative Xcoordinate mode, X.Fi radius1 Xand X.Fi radius2 Xare scaled based upon the average X.Fi width Xand X.Fi height Xof the window. X.Fe X.Fh m_resetesc X.Fs m_resetesc 1 "Restore the \*M escape character to '\\e033'" XThe \*M X.I escape Xcharacter is reset to its to default value ('\e033'). XThis turns off the debugging mode turned on by X.Fr m_setesc X\&. X.Fh m_rfastdraw count data X.Fs m_rfastdraw 4 "Draw a group of fast vectors at the graphics point" XThe next X.Fi count Xbytes of X.Fi data Xare sent to \*M are to be interpreted as lines drawn in X.I "fast draw" Xmode, Xstarting at XThe current graphics point. X.I "Fast draw" Xmode permits the rapid drawing of short vectors Xby encoding an X.I x,y Xdisplacement location in a single byte. XThe X.I x Xcoordinate is contained in the most significant X4 bits, the X.I y Xcoordinate in the least significant 4 bits. XValues for X.I x Xand X.I y Xrepresent displacements from the previous location, and Xrange from +7 to -8. XA 7 is coded as X.B 0xff , Xa -8 as X.B 0x00 . XIf both X.I x Xand X.I y Xare zero (i.e. X.B 0x8080 ). XThe next coordinate is taken to be a X.I move Xinstead of a X.I draw. XAn eight bit channel between \*M and the client program is required for X.I "fast draw" Xmode. XSee also X.Fr m_fastdraw X\&. X.Fe X.Fh m_right n X.Fs m_right 13 "Move character cursor right by tenths of a character width" XMove the character cursor right X.Fi n Xtenths of a character width. XSee also X.Fr m_left X.Fr m_down Xand X.Fr m_up X\&. X.Fe X.Fh m_scrollregion first_row last_row X.Fs m_scrollregion 3 "Set up a VT00 like scrolling region" XThis sets up a X.I "text region" Xas a X.I VT100-like Xscrolling region. XThe entire width of the window Xfrom lines X.Fi first_row Xto X.Fi last_row Xinclusive becomes the X.I "text region" . XSee also X.Fr m_textregion X\&. X.Fe X.Fh m_selectmenu n X.Fs m_selectmenu 8 "Select a pop-up menu for the middle mouse button" XThis macro is used to indicate menu X.Fi n Xpops-up in response to pressing Xthe X.I middle Xmouse button. XMenus are downloaded (with X.Fr m_loadmenu X) first, then selected. XOnly one menu may be selected at a time on each button. XIf the button is already down when this call is made, and there is not currently Xa menu associated with the button, then the menu just selected pops-up Ximmediately. XThis last feature may be used to pop up different menus Xin a context sensitive way. X.Fe X.Fh m_selectmenu2 n X.Fs m_selectmenu2 8 "Select a pop-up menu for the right mouse button" XThis macro is used to indicate menu X.Fi n Xpops-up in response to pressing Xthe X.I right Xmouse button. XMenus are downloaded (with X.Fr m_loadmenu X) first, then selected. XThis macro functions the same as, and should be combined with X.Fr m_selectmenu X above, but exists separately for historical reasons. X.Fe X.Fh m_selectwin n X.Fs m_selectwin 11 "Select an alternate window for output" XSelect alternate window X.Fi n Xfor output. XAlternate windows are Xfirst created by X.Fr m_newwin X\&. XAll output goes to the selected Xwindow until either X.Fr m_selectwin Xis called to change windows, Xor the selected window is destroyed. XIf X.Fi n Xis 0 (zero) or the currently selected window is destroyed, Xthe main, or original window is selected. XInput from all windows is Xsend to the client program on the same input channel. XThe macro X.Fr m_setevent ACTIVATE X may be used to help decide what window generated the input Xby associating a unique string with each window's X.SM X.I ACTIVATE X.LG Xevent. XThe X.I selected Xwindow Xand the X.I active Xwindow are specified independently. XSelecting a window does not make it the X.I active Xwindow, and creating a new window, although it is created as the X.I active Xwindow, is not automatically selected. X.Fe X.Fh m_sendme string X.Fs m_sendme 12 "Send string back to self" XThe argument X.Fi string Xis sent back to the client process Xas if it was typed in at the keyboard. X.Fe X.Fh m_sendto n string X.Fs m_sendto 12 "Send a message to another window" XThe message X.Fi string Xis send to window X.Fi n . XA unique window identifier, X.Fi n Xis determined with either X.Fr m_setevent X using the X.B %w Xoption, Xor with X.Fr m_getinfo X\&. XIn general, the window id X.Fi n Xis the process id (\c X.I pid ) Xof the client program started by \*M Xwhen the window was created. XIf the target window has turned on X.SM X.B ACCEPT X.LG Xwith X.Fr m_setevent X, X.Fi string Xis received by the client program associated with the target window Xas part of the X.SM X.B ACCEPT X.LG Xevent. XGeneral write permissions must be disabled on the target client's X.I pseudo tty Xin order for the message to be received, to prevent unsuspecting X.I shell s Xfrom interpreting messages sent by unscrupulous processes as commands. XSee also X.Fr m_broadcast X\&. X.Fe X.Fh m_setesc c X.Fs m_setesc 1 "Change the \*M escape character (for debugging)" XThis macro call causes the character X.Fi c Xto be used as the \*M Xescape character by the library package (instead of X.I '\e033' ). XThis permits viewing Xthe output stream to \*M without causing the commands to Xbe executed. X.Fe X.Fh m_setecho X.Fs m_setecho 1 "Turn on terminal character echo" XTurn on character echoing, if possible. XCharacter echoing is normally disabled by clients to inhibit information Xfrom \*M, as from calls to X.Fr m_getinfo X, from echoing on the window. X.Fe X.Fh m_setevent n string X.Fs m_setevent 9 "Set an event" XAn event string, X.Fi string Xis sent to the client program by \*M upon the Xoccurrence of the specified event X.Fi n . XThe event string is typically Xread by the client program using X.Fr m_gets X\&. XEvent strings are never sent in response to an event unless specifically Xrequested by the client program. XEvents are one of the following types. X.RS X.IP \fBACTIVATE\fP 0.5i X.br XThe window became the X.I active Xwindow. XIt is at the front of the display, and is currently receiving Xboth mouse and keyboard input. X.IP \fBBUTTON_1\fP 0.5i X.br XThe right Xmouse button was depressed. XThis event is sent only to the X.I active Xwindow. X.IP \fBBUTTON_1U\fP 0.5i X.br XThe right mouse button was released. XThis event is sent only to the X.I active Xwindow. X.IP \fBBUTTON_2\fP 0.5i X.br XThe middle mouse button was depressed. XThis event is sent only to the X.I active Xwindow. X.IP \fBBUTTON_2U\fP 0.5i X.br XThe middle mouse button was released. XThis event is sent only to the X.I active Xwindow. X.IP \fBCOVERED\fP 0.5i X.br XThe window was partially or completely obscured by another window. X.IP \fBDEACTIVATE\fP 0.5i X.br XThe window was deactivated, it is no longer the X.I active Xwindow. X.IP \fBREDRAW\fP 0.5i X.br XThe display was redrawn, either by Xselecting the X.I redraw Xoption from the system menu, or by keying X.I \s-2LEFT\s+2-r Xfrom the keyboard. XOnly windows that are exposed receive the X.SM X.I REDRAW X.LG Xevent. XThe images of obscured windows are restored automatically by \*M. XThe client program is expected to regenerate the contents of its Xwindow in response to the X.SM X.I REDRAW X.LG Xevent. X.IP \fBRESHAPE\fP 0.5i X.br XThe window was reshaped. XIf the user selects the system X.I reshape Xoption, Xthe X.SM X.I RESHAPE X.LG Xevent is sent, even if the window stays the same shape. X.IP \fBUNCOVERED\fP 0.5i X.br XThe window, previously obscured, was uncovered. XIf the window also became the X.I active Xwindow, the X.SM X.I UNCOVERED X.LG Xevent is sent Xbefore the X.SM X.I ACTIVATE X.LG Xevent. X.IP \fBMOVE\fP 0.5i X.br XThe window was moved. X.IP \fBDESTROY\fP 0.5i X.br XThe window was destroyed. XOnly X.I alternate Xwindows X(as created by X.Fr m_newwin X) cause X.SM X.I DESTROY X.LG Xevents to be sent. XIf the X.I main Xwindow is destroyed, Xthe client program is sent a X.I hangup Xsignal, and its connection Xto \*M is severed. X.IP \fBACCEPT\fP 0.5i X.br XMessages are accepted from client programs running in other windows X(see X.Fr m_sendto X\&). XThe content of the message is obtained by specifying the X.Fi %m Xparameter as part of the event string, as is fully described below. X.IP \fBNOTIFY\fP 0.5i X.br XRegister a name with \*M, and make this name available to client programs. XThis name is available to other clients, either by a call to X.Fr m_getinfo G_NOTIFY X or with the X.Fi %n Xparameter described below. XUnlike the other events, Xthe X.I notify Xstring is never sent back to the client program by \*M, but is Xused to register a name for the window. X.IP \fBSNARFED\fP 0.5i X.br XText was put into the snarf buffer either by a client program with X.Fr m_put X or by use of the system X.I cut Xfunction. X.IP \fBPASTE\fP 0.5i X.br XText is about to arrive as a result of the system X.I paste function. X.RE X XSome X.I event Xstrings may contain substitutable parameters in the Xmanner of X.I printf Xformat specifiers (i.e. %X). XThese parameters Xare applicable only to certain types of events. XIn any case, the X.B % Xcharacter may be forced by doubling it, as in X.B %% . XWhere more than one data item replaces the format specifier, Xthe items are separated by Xa X.I space Xcharacter. XFor the event strings X.Fi BUTTON_1 Xand X.Fi BUTTON_2 , Xseveral parameters cause \*M to sweep out some object in response to Xmouse movement, and report back the size of the swept object when the button Xis released. XAny one of lines, boxes, text, or rectangles may be swept out with Xthis mechanism. XInitial parameters may be associated with a sweep event by listing them Xas comma separated integers following the X.B % Xand preceding the sweep command character. XThe parameters (if any) set the initial size of the object to be swept, Xin the same coordinate system in which the sweep extend is reported. X.RS X.IP \fB%r\fP 0.5i XDepressing the button causes \*M to Xsweep out a rectangle in response to moving the mouse, Xin a manner similar to the system X.I reshape Xfunction. XThe initial parameters set the initial width and height of the rectangle. XWhen the button is released, Xthe coordinates of the X.I starting Xand X.I ending Xpoints of the rectangle in response to moving the mouse, in X.I window Xcoordinates, Xare substituted for the X.B %r . X.IP \fB%R\fP 0.5i XDepressing the button causes \*M to Xsweep out a rectangle, Xas in X.B %r Xabove, Xonly the the result is in X.I display coordinates. X.IP \fB%b\fP 0.5i XDepressing the button causes \*M to Xmove a rectangle in response to moving the mouse, Xin a manner similar to the system X.I move Xfunction. XThe initial parameters set the initial width and height of the rectangle Xto be moved. XWhen the button is released, Xthe current coordinates of the box's corner Xis returned in X.I window Xcoordinates, Xsubstituted for the X.B %b . X.IP \fB%B\fP 0.5i XDepressing the button causes \*M to Xmove a rectangle in response to moving the mouse, Xin a manner similar to the system X.I move Xfunction. XThe initial parameters set the initial width and height of the rectangle Xto be moved. XWhen the button is released, Xthe current coordinates of the box's corner Xis returned in X.I display Xcoordinates, Xsubstituted for the X.B %b . X.IP \fB%l\fP 0.5i XDepressing the button causes \*M to Xsweep out a line. XOne end of the line remains fixed at the X.I "graphics point" Xwhile the other end of the line tracks the mouse position. XThe initial end point of the line may be specified as a displacement Xfrom the graphics point as part of the initial parameters. XWhen the button is released, Xthe coordinates of the X.I starting Xand X.I ending Xpoints of the line, in X.I window Xcoordinates, Xare substituted for the X.B %l . X.IP \fB%t\fP 0.5i XDepressing the button causes \*M to Xsweep out text, in a manner equivalent to the system X.I cut Xfunction. XUpon the release of the button, the X.B %t Xis replaced by the starting character coordinate of the X.I cut Xregion, followed by character distance to the ending point Xin columns and lines respectively. XFor example, The event string X\fIsweep[\fP\fB%t\fP\fI]\fP Xmight return X\fIsweep[\fP\fB17 5 6 0\fP\fI]\fP, Xindicating the user swept out a six character word on a single Xline, starting on X.Fi column X17, X.Fi row X5. XAn inital size may ber specified in number of rows and number of Xcolumns. X.RE XThe remaining format specifiers are replaced by the information Xdescribed below No sweep action is performed. X.RS X.IP \fB%p\fP 0.5i XThe X.B %p Xis replaced by the current mouse coordinates, in X.I window Xcoordinates. X.IP \fB%P\fP 0.5i XThe X.B %P Xis replaced by the current mouse coordinates, in X.I character Xcoordinates. X.IP \fB%n\fP 0.5i XIf the mouse cursor is over a window whose X.SM X.Fi NOTIFY X.LG Xevent is set, Xthe text of that message is substituted for the X.B %n . X.IP \fB%w\fP 0.5i XIf the mouse cursor is over a window whose X.SM X.Fi NOTIFY X.LG Xevent is set, Xthe X.Fi window_id Xof the clicked on window Xis substituted for the X.B %w . XThis X.Fi window_id Xmay be used by X.Fr m_sendto Xto send the clicked-on window a message. X.IP \fB%S\fP 0.5i XIf the mouse cursor is over a window whose X.SM X.Fi NOTIFY X.LG Xevent is set, Xthe length of that message is substituted for the X.B %S . X.RE X.sp XThe X.SM X.Fi ACCEPT X.LG Xevent is used to receive messages from other client programs. XThe following substituteable parameters may be used as part of the Xevent string. X.RS X.IP \fB%f\fP 0.5i XThe X.Fi window_id Xof message sender, as used in X.Fr m_sendto X, replaces the X.B %f . X.IP \fB%m\fP 0.5i XThe text of message sent by the other client program Xreplaces the X.B %m X.IP \fB%s\fP 0.5i XThe length of the message, in characters, Xreplaces the X.B %s . XFor example, a call to X.TS Xcenter box; Xc. Xm_setevent(ACCEPT,"Message from (\fB%f\fP), (\fB%s\fP) long is: \fB%m\fP") X.TE Xmight cause \*M to return X.TS Xcenter box; Xc. XMessage from (\fB3214\fP), (\fB2\fP) long is: \fBHI\fP X.TE Xafter the client program whose X.I "window id" Xis X.I 3214 Xuses X.Fr m_sendto Xto send the message X\fI"HI\|"\fP. X.IP \fB%p\fP 0.5i XAs with the X.SM X.Fi BUTTON X.LG Xevents above, X.B %p Xis replaced by the current mouse position in X.I window Xcoordinates. X.IP \fB%P\fP 0.5i XAs with the X.SM X.Fi BUTTON X.LG Xevents above, X.B %P Xis replaced by the current mouse position in X.I character Xcoordinates. X.RE XFor the X.SM X.Fi SNARFED X.LG Xevent string, Xthe following substitution parameters are recognized. X.RS X.IP \fB%f\fP 0.5i XThe X.I "window id" Xof the window filling the X.I snarf Xbuffer replaces the X.B %f . X.IP \fB%c\fP 0.5i XThe current length of the X.I snarf Xbuffer, in characters, Xreplaces the X.B %c . X.IP \fB%C\fP 0.5i XThe contents of the X.I snarf Xbuffer replaces the X.B %C . XAt present, only the first 250 characters of the X.I snarf Xbuffer may be returned via the X.B %C Xparameter. XUse X.Fr m_snarf Xto read the entire buffer. X.RE X.sp XThe X.SM X.Fi PASTE X.LG Xevent string, Xrecognizes the X.B %c Xspecifier as described under X.SM X.I SNARFED X.LG Xabove. X.Fe X.Fh m_setmode mode X.Fs m_setmode 6 "Set a window mode" XVarious window modes may be X.I set Xor X.I cleared X(see X.Fr m_clearmode X) Xindependently. XThese modes are: X.RS X.IP \fBM_STANDOUT\fP 0.5i XThe window is put in standout mode. XAll characters Xare written with their foreground and background Xcolors reversed. X.IP \fBM_WOB\fP 0.5i XThe sense of X.I white Xand X.I black Xis reversed for the entire window, Xnot just for characters as is X.SM X.B M_STANDOUT . X.LG X.IP \fBM_AUTOEXPOSE\fP 0.5i XThe next character to be typed on the window Xcauses it to automatically become the X.I active Xwindow. X.IP \fBM_BACKGROUND\fP 0.5i XOutput goes to the window even if it is Xpartially or totally obscured. XThe data in exposed portions of the window is seen immediately. XData in covered portions of the window is saved by \*M and restored Xwhen the covered portions are exposed. X.IP \fBM_NOINPUT\fP 0.5i XKeyboard input is prohibited. XAll input from Xthe keyboard is held buffered by \*M until Xeither X.SM X.B M_NOINPUT X.LG Xis cleared, or a different Xwindow is made the X.I active Xwindow. XIn the latter case Xthe input goes to the newly activated Xwindow. XThis flag is automatically turned Xoff when the user activates the window. XThis feature is for client programs that want one of their Xwindows to come to the front just long enough to notify the Xuser of some event, but do not want to accidently intercept keyboard Xinput while the user is merrily typing to some other client. X.IP \fBM_NOWRAP\fP 0.5i XThe character cursor does not automatically jump to the left edge of Xthe next line as it reaches the right edge of its text region. XAfter the right margin is passed, Xthe cursor and any subsequent text disappear past the right Xedge of the window. X.IP \fBM_OVERSTRIKE\fP 0.5i XText is written to the window with the mode Xspecified by X.Fr m_func X instead of the normal Xcopy mode. XIn copy mode, the characters completely obliterate their destination Xinstead of combining with it. X.IP \fBM_ABS\fP 0.5i X.br XThe window is set to X.I absolute Xcoordinate mode. XThe upper left edge of the window, just inside Xthe border is at position X.Fr "" 0 0 X\&. XAll other locations Xare measured relative to that corner in pixels. X.IP \fBM_ACTIVATE\fP 0.5i XThe window is made the X.I active Xwindow, pops to the front of the display, Xand obtains all keyboard and mouse input. X.IP \fBM_SNARFLINES\fP 0.5i XThe system X.I cut Xfunction only Xcuts entire lines. XIf any text on a line is swept out, the entire line of text Xis included. X.IP \fBM_SNARFTABS\fP 0.5i XThe system X.I cut Xfunction attempts to turn Xwhite space into a minimal combination of spaces and tabs. XTab are set at every 8 columns. X.IP \fBM_SNARFHARD\fP 0.5i XThe system X.I cut Xfunction attempts to cut Xtext even if the window contents have been corrupted. XUnidentifyable characters are returned as X.I C_NOCHAR X(\'?\'). X.IP \fBM_STACK\fP 0.5i XAny events pushed on the window stack Xwhen this flag is set will be sent in addition to Xany currently active events. XThis setting is useful for filters which need to receive events, yet Xstill permit clients running under them to receive events as well. X.RE X.Fe X.Fh m_setnoecho X.Fs m_setnoecho 1 "Turn off character echo" XCharacter echoing to the window is disabled if possible. XCharacter echoing is normally disabled by clients to inhibit information Xfrom \*M, as from calls to X.Fr m_getinfo X from echoing on the window. X.Fe X.Fh m_setnoraw X.Fs m_setnoraw 1 "Enable normal character input processing (line mode)" XNormal terminal input processing is in effect. XInput is buffered by lines, and all normal line editting Xand keyboard interrupt generation Xis in effect. X.Fe X.Fh m_setraw X.Fs m_setraw 1 "Disable all character input processing (raw mode)" XEvery character is available as entered, no input processing is Xdone. XThis is typically called X.I raw Xmode. XRaw mode is not always available, in which case the macro call is Xignored. X.Fe X.Fh m_shapewindow X Y Dwidth Dheight X.Fs m_shapewindow 6 "Reposition a window" XThe window is reshaped to Xposition X.Fr "" X Y X and with size X.Fi Dwidth Xby X.Fi Dheight . XAs only the X.I active Xwindow may be reshaped, X.Fr m_shapewindow Xactivates the window if it is not already active. XThe new size of the window is not guaranteed; Xthe X.I width Xor X.I height Xmay be truncated to the right or bottom edges of the display. XThe macro X.Fr m_getinfo Xcan be used to determine the actual window size. X.Fe X.Fh m_size columns rows X.Fs m_size 6 "Resize a window to a specified number of rows and columns" XThe size of the window is changed so that it fits exactly X.Fi columns Xby X.Fi rows Xof characters in the current font. XThe window may be truncated at the right or bottom edge of the display Xif it is too large to fit on the display at its current position. X.Fe X.Fh m_sizeall X Y columns rows X.Fs m_sizeall 6 "Reposition a window with a given number of rows and columns" XThe window is reshaped to position X.Fr "" X Y X on the display, and resized to fit X.Fi columns Xand X.Fi rows Xof text. XAs only the X.I active Xwindow may be reshaped, X.Fr m_shapewindow X activates the window if it is not already active. XThe new size of the window is not guaranteed; Xthe X.I width Xor X.I height Xmay be truncated to the right or bottom edges of the display. XThe macro X.Fr m_getinfo Xcan be used to determine the actual window size. X.Fe X.Fh m_snarf X.Fs m_snarf 12 "Retrieve the contents of the global snarf buffer" XThe application is sent the contents of the global snarf buffer, Xif any, as specified by the last call by a client programs Xcall to X.Fr m_put X or by use of the system X.I cut Xfunction. X.Fe X.Fh m_sleep X.Fs m_sleep 13 "Do nothing" XThis call causes \*M to suspend the processing Xof characters to the window. XAfter a chunk of output for all other windows has been processed, Xoutput processing resumes. XThis does not normally take very long, making X.Fr m_sleep X almost a X.I no-op. X.Fe X.Fh m_standend X.Fs m_standend 3 "Turn off reverse video characters" XInverse video mode as set by X.Fr m_standout X is turned off. XThis is exactly equivalent to X.Fr m_clearmode M_STANDOUT X\&. X.Fe X.Fh m_standout X.Fs m_standout 3 "Turn on reverse video characters" XInverse video mode is turned on. XThis is exactly equivalent to X.Fr m_setmode M_STANDOUT X\&. XThe color of the characters and their backgrounds are interchanged. X.Fe X.Fh m_stringto to x_dst y_dst string X.Fs m_stringto 4 "Print a string to an scratchpad bitmap" XThe text X.Fi string Xis printed Xstarting at the location X.Fr "" x_dst y_dst X on X.I scratchpad Xbitmap X.Fi to . XThe text is clipped to fit in the bitmap, and no special command processing Xis done on X.Fi string. XIf X.Fi to Xis 0 (zero), XThe text is printed on the window, but X.I "text region" Xboundaries are ignored. XThis is the only way to get text into a window outside of the X.I "text region" . X.Fe X.Fh m_textregion x y wide high X.fs 3 "create a text region" XA subregion within the current window Xstarting at X.Fr "" x y X and of size X.Fi wide Xby X.Fi high Xis defined within which all text is restricted. XAll functions and information that deals in X.I character Xcoordinates views the text region as if it was the entire window. XAs soon as the text region is defined, the character cursor is Xmoved to row and column X.Fr "" 0 0 X, Xwhich is now located at the point X.Fr "" x y X\&. XGraphics output is not affected by text regions. X.Fe X.Fh m_textreset X.Fs m_textreset 3 "Reset the text region to the entire window" XThe X.I "text region" X(defined by a call to X.Fr m_textregion X) is reset to be the entire window. XThis is the default setting. X.Fe X.Fh m_unlinkmenu parent item X.Fs m_unlinkmenu 8 "Unlink a menu" XThe menu link associating a child menu with Xthe menu X.Fi parent Xat X.Fi item X(counting from zero) is removed X(see also X.Fr m_linkmenu X\&). XThis function does not change the menus, only their Xconnections. X.Fe X.Fh m_unpagemenu parent X.Fs m_unpagemenu 8 "Disconnect two pages of a paged menu" XThe link associating the menu X.Fi parent Xwith a X.I child Xmenu is removed. XSee also X.Fr m_pagemenu X\&. X.Fe X.Fh m_up n X.Fs m_up 13 "Move character cursor up by tenths of a character height" XMove the character cursor up X.Fi n Xtenths of a character height. This may cause the window to scroll down. XSee also X.Fr m_left X.Fr m_right Xand X.Fr m_down X\&. X.Fe X.Fh m_whatsat X Y X.Fs m_whatsat 7 "Find out what is at a particular display location" X\*M returns to the client program a line indicating what is at the X.I display Xcoordinates X.Fr "" X Y X\&. XIf that location is occupied by a window, Xa line containing the window's controlling terminal, alternate window number, Xand X.I "window id" Xis returned in a space separated list. XIf the location X.Fr "" X Y X is not in a window, \*M returns a newline. X.Fe X.Fh m_windowsave name X.Fs m_windowsave 5 "Save the window image on a file" XThe current image contents of the window is saved in the file X.Fi name Xon the \*M-host machine in \*M bitmap Xformat. XFile names beginning with "./" are evaluated relative to the current directory Xwhen \*M was started. XSee also X.Fr m_othersave X and X.Fr m_bitsave X\&. X.Fe END_OF_FILE # end of 'doc/usrman/doc.4' fi echo shar: End of archive 50 \(of 61\). cp /dev/null ark50isdone MISSING="" for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 \ 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 \ 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 \ 55 56 57 58 59 60 61 ; do if test ! -f ark${I}isdone ; then MISSING="${MISSING} ${I}" fi done if test "${MISSING}" = "" ; then echo You have unpacked all 61 archives. rm -f ark[1-9]isdone ark[1-9][0-9]isdone else echo You still need to unpack the following archives: echo " " ${MISSING} fi ## End of shell archive. exit 0 -- Please send comp.sources.unix-related mail to rsalz@uunet.uu.net.