XEROX HISTMENU 2 4 1 HISTMENU 1 4 By: Daniel G. Bobrow (Bobrow.pa@Xerox.com) The history menu package provides a simple way to access the history list using a menu. Through this menu one can REDO, UNDO, FIX, and ?? selected items. One can also delete selected items from the menu. (HistoryMenu N) [Function] will create a Menu of the last N history events in a HistoryWindow. HistItemsShown items of these N items will be seen on the menu. The rest may be seen by scrolling the menu. N defaults to HistDefaultSlice. Selecting an item with LEFT in the window does a REDO on that item. Selecting with the MIDDLE button and then releasing the button causes a popup menu to be shown which provides a set of other options: FIX, UNDO, ??, and Delete. Selecting FIX, UNDO, and ?? cause that history operation to be done on the item selected. Look in the prompt window while holding down a button on an option in the popup menu to see what will happen if you let the button up. Clicking the RIGHT button in the window will bring up the usual window options, plus an UPDATE option which will update the menu to contain all current items. Delete causes an item to be deleted from the menu (not the real history list). Deleting "unuseful" items allows more "good" items to appear in the same window space. Also, atomic items on the list BadHistoryItems will never appear on the History Menu. BadHistoryItems is initially (EDIT ?= OK T NIL ^). Update makes the menu contain all of the current slice of history. The History Menu is NOT automatically updated as you type in. However, after each deletion, the HistoryMenu is updated automatically if UpdateOnDeleteFlg is not NIL. UpdateOnDeleteFlg starts as T. (HistoryIcon N histPosition iconPosition) [Function] will create a history menu at histPosition, and then shrink it to a special picture icon (which looks like a scroll) located at iconPosition. The HistoryWindow and HistoryMenu creation are controlled by the following parameters in addition to BadHistoryItems and UpdateOnDeleteFlg. Name Initial Value Explanation HistDefaultSlice 30 Number of items in HistoryMenu HistItemsShown 51 Number of items shown in window HistMenuHeight 15 Height of an item in the menu in screen bits HistMenuWidth 164 Width of item in Menu in bits HistWindowWidth 164 Width of HistoryWindow in bits. HistEventWidth 60 Maximum number of characters that will be shown of the event in the prompt window (LIST ((PAGE NIL (PAPERSIZE Letter FOLIOINFO (ARABIC) STARTINGPAGE# 1) (0 0 612 792) ((FOLIO NIL (PARALOOKS (QUAD CENTERED) CHARLOOKS (SUPERSCRIPT 0 INVISIBLE OFF SELECTPOINT OFF PROTECTED OFF SIZE 10 FAMILY MODERN OVERLINE OFF STRIKEOUT OFF UNDERLINE OFF EXPANSION REGULAR SLOPE REGULAR WEIGHT MEDIUM INVERTED OFF USERINFO NIL STYLE NIL) FORMATINFO (ARABIC)) (174 36 288 36) NIL) (HEADING NIL (HEADINGTYPE RUNNINGHEAD) (84 744 528 36) NIL) (TEXT NIL NIL (84 96 456 600) NIL))) (PAGE NIL (PAPERSIZE Letter FOLIOINFO (ARABIC)) (0 0 612 792) ((FOLIO NIL (PARALOOKS (QUAD CENTERED) CHARLOOKS (SUPERSCRIPT 0 INVISIBLE OFF SELECTPOINT OFF PROTECTED OFF SIZE 10 FAMILY MODERN OVERLINE OFF STRIKEOUT OFF UNDERLINE OFF EXPANSION REGULAR SLOPE REGULAR WEIGHT MEDIUM INVERTED OFF USERINFO NIL STYLE NIL) FORMATINFO (ARABIC)) (174 36 288 36) NIL) (HEADING NIL (HEADINGTYPE RUNNINGHEAD) (84 744 528 36) NIL) (TEXT NIL NIL (84 96 456 600) NIL))) (PAGE NIL (PAPERSIZE Letter FOLIOINFO (ARABIC)) (0 0 612 792) ((FOLIO NIL (PARALOOKS (QUAD CENTERED) CHARLOOKS (SUPERSCRIPT 0 INVISIBLE OFF SELECTPOINT OFF PROTECTED OFF SIZE 10 FAMILY MODERN OVERLINE OFF STRIKEOUT OFF UNDERLINE OFF EXPANSION REGULAR SLOPE REGULAR WEIGHT MEDIUM INVERTED OFF USERINFO NIL STYLE NIL) FORMATINFO (ARABIC)) (174 36 288 36) NIL) (HEADING NIL (HEADINGTYPE RUNNINGHEAD) (84 744 528 36) NIL) (TEXT NIL NIL (84 96 456 600) NIL)))))+È(È +È (È(ŠŠ8(ŠŠ8DÈÈ PAGEHEADING RUNNINGHEAD MODERN TERMINAL TERMINAL TERMINAL €MODERN MODERN MODERN MODERNLOGOGACHA    HRULE.GETFNMODERN  HRULE.GETFNMODERN  HRULE.GETFNMODERN   HRULE.GETFNMODERN  HRULE.GETFNMODERN + Î ÓjÁ)È Že  (*( ()(." óXzº