LMFL#!C(:HOST "SYS" :BACKUP-DATE 2760032669. :SYSTEM-TYPE :LOGICAL :VERSION 7. :TYPE "TEXT" :NAME "-READ-ME-" :DIRECTORY ("REL3-PUBLIC" "PUBLIC" "GULF-COAST") :SOURCE-PATTERN "( :DIRECTORY (\"REL3-PUBLIC\") :NAME :WILD :TYPE :WILD :VERSION :NEWEST)" :CHARACTERS T :NOT-BACKED-UP T :CREATION-DATE 2757676950. :AUTHOR "REL3" :LENGTH-IN-BYTES 10954. :LENGTH-IN-BLOCKS 11. :BYTE-SIZE 8.)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 ;;;-*- Mode:text-*-GENERIC GULF COAST WINDOW APPLICATIONThe Generic  Gulf  Coast  Window  application  can  be  used to createmultiple system  applications  in  overlapping  windows  on  a  singlescreen.  You have the capability to mix the two most popular windowingtechniques by creating new versions  of system applications in  eitheran "East  coast"  style  constraint  frame  or  a  "West  coast" styleoverlapping window frame.  The application can be used to activate anynumber of windows.  Each window can be a different application such asa Lisp  Listener  or  Zmacs  editor.   The  size of each window can bechosen by the user and can  be re-shaped if desired.  Any  applicationwindow created  over  the  shaded  Gulf  Coast  background pane can bemanipulated using the generic Gulf Coast window commands such as move,reshape, kill etc.   Any number  of applications  can be  created withoverlapping windows  on  a  single  Gulf  Coast  background pane.  Anyapplication created from a non-Gulf Coast  pane (it will not have  theshaded background), is  activated in  the standard  "East coast" styleconstraint frame.WHERE TO FIND THE GENERIC GULF COAST WINDOW APPLICATIONThe files needed to create the  Generic Gulf Coast Window  application   are located in the  SYS:PUBLIC.GULF-COAST; directory.  This  directorycontains the source files  and the files  needed for making  a GenericGulf Coast Window Application system.  First compile and load the fileSYS:PUBLIC.GULF-COAST;GULF-COAST.LISP  and  then   compile  and   loadSYS:PUBLIC.GULF-COAST;GULF-COAST-PATCHES.LISP which  modifies  only  afew system functions.HOW TO MAKE A GENERIC GULF COAST WINDOW APPLICATION---------------------------------------------------Using The Generic Gulf Coast Window Application The Generic Gulf Coast Window application is invoked by depressing theSYSTEM #\SPACE key sequence.   A shaded grey background should  appearwith a Lisp  Listener active  in the  lower left  corner.  The GenericGulf Coast Window  application always  gives you  the Lisp Listener bydefault as your first  windowed application.  You  can now use  any ofthe commands  defined  within  the  Generic  Gulf Coast application tomanipulate the Lisp Listener window.  To see  what  commands  are  available,  depress the chorded keystrokeHYPER-HELP.  A  mouseable  menu  will  appear  displaying  areas whereexpanded help  is  available.   Select  the  option, "Basic Gulf CoastHelp"  for  more  information  on   the  Generic  Gulf  Coast   Windowapplication.  A window will appear  containing a brief description  ofthe Generic  Gulf  Coast  Window  application  and  all the key-strokecommands available.  Notice that most of  the commands are bound to  achorded key sequence using  the HYPER key  and another key.   The mostfrequently used commands are also contained in a mouseable menu  whichcan be  displayed  by  depressing  HYPER-G.   After reading  the  helpfile, depress the "END" key to return to the active window.Notice  the  shaded   background  around   the  Lisp   Listener.   Anyapplication created over the shaded grey background will be created ina Gulf Coast window and can  be manipulated by the commands  describedin the "Basic Gulf Coast Help" file.  To create another application onthe screen in another window, you can depress the key sequence  SYSTEMCTRL-key where key is the key  bound to the desired application.   Forexample, if  you  would  like  a  ZMACS  editor  window  with the LispListener which was  created by  default when  you invoked  the GenericGulf Coast Window application, enter SYSTEM CTRL-E.  An angle  bracketwill appear on the screen.  Using  the mouse, move the bracket  to theposition on the screen where you want the top left hand corner of  theeditor to be and click any  mouse button.  When you have  selected thetop left corner  for the  window, another  angle bracket  will appear.Using the mouse  position this  bracket to  where you  want the bottomright corner of the window  to be and click  any button.  A new  Zmacseditor will appear  in the  window which  you just  defined.  You  cancreate as  many  Gulf  Coast  Windows  as  you  like,  containing  anyapplications bound  to  the  "SYSTEM  key"  sequence.   So on a singlescreen, multiple  copies  of  the  Lisp  Listener,  Zmacs  editor, theInspector and other system applications can be created in  overlappingGulf Coast Windows.Notice that when you create a new application in a window, that windowbecomes active (signaled  by the  blinking keyboard  cursor).  If  youhave multiple  windows  on  the  same  screen,  you  can move from oneapplication to the next by simply moving the mouse to the window  withthe desired application and clicking.  The selected window will becomeactive.  If the  window selected  is defined  completely or  partiallywithin another window, as will happen when multiple windows overlap, atemporary menu may appear,  prompting you to  specify which window  toexpose.  When  several  windows  partially  overlap,  having the mousecursor in different locations when attempting to activate a window canproduce different results,  depending on  whether parts  of any  otherwindow are defined  at the  location of  the mouse  cursor.  In  otherwords, there may be no other  windows under one portion of  the windowyou are attempting to select while another portion of that same windowhas parts of multiple windows defined under it.  If you move the mouseto the  area  with  no  other  windows  defined  under it, there is noambiguity and the  window is  activated.  If  you move  the mouse to aportion of the window with  other windows defined under  it, ambiguityexists as to which window you  really want, so the system  prompts youfor the specific window to expose.You can also  use the  "SYSTEM key"  method to  cycle through multipleversions of an application.  Each time you create a new version of  anapplication, either in a  conventional constraint frame  or in a  GulfCoast Window,  the  new  version  is  added  to  a  "chain"  for  thatparticular application.   By  depressing  the  "SYSTEM  key"  sequencerepeatedly, the next  version of  the application  is activated.   Forexample if  you  have  created  three  copies  of the ZMACS editor, bydepressing "SYSTEM  E"  repeatedly,  you  can  cycle through the threecopies.  Note  that  this  is  the  only  method  you can use to cyclethrough a mixture of constraint  frame based copies and  multiple GulfCoast Window versions of a single application.POSSIBLE POINT OF CONFUSION: The key sequence "SYSTEM key" is used  tocycle through or "visit"  multiple versions of  existing applications.The key sequence SYSTEM CTRL-key is used to create new versions  of  agiven application.Any Gulf Coast  Window containing  any application  can be manipulatedusing the commands  in a  mouseable command  menu.  This  menu can  bedisplayed by depressing the  HYPER-G  key chord.  These  commands  canalso be  invoked  using  keystrokes.   The  associated  keystrokes aredefined in the "Basic Gulf Coast Help" message. You can move, reshape,clear, kill, refresh and bury any Gulf Coast Window on the screen.******************************************************************************************************************************************** CREATING YOUR OWN GULF COAST WINDOW APPLICATIONThe Gulf-Coast-Application  macro  allows  creation  of  user  definedGulf-Coast-Window applications.   The  application  is  bound  to  the"SYSTEM key" sequence chosen by the programmer.(gulf-coast-application application-name system-key command-tables   &key mixins             basic-help        tutorial           who-line        closure-vars       typeout-type        typeout-size       initialization)This macro  builds  everything  to  define  an application in the GULFCOAST pane management style. APPLICATION-NAME is used to create a flavor of type    <application-name>-GULF-COAST-BACKGROUND.  SYSTEM-KEY allows creation or selection of this type of GULF-COAST    application window by associating this application with the    system-key specified. COMMAND-TABLES can be one or more UCL command tables which contain    commands.  Each command will be executed inside the environment    built by MIXINS flavor variables and specials defined in    CLOSURE-VARS. MIXINS are custom flavor mixins to be included in the application. BASIC-HELP and TUTORIAL are lisp expressions which can be evoked by    typing HYPER-HELP when the GULF-COAST-HELP-MENU is included in    command table. WHO-LINE is a string containing custom who-line mouse button    descriptions for the application.  CLOSURE-VARS can be either a    list of variable names or alist of variables and their values. TYPEOUT-TYPE is defaulted to be a W:LISP-LISTENER. TYPEOUT-SIZE is a list containing the GULF-COAST size information,    (width-percent height-percent Xoffset-percent Yoffset-percent)    where percentages can range from 0 to 100.    TYPEOUT-SIZE is defaulted to the initial size of`(80 35 0 65). INITIALIZATION is any other initialization code which needs to be runwhen new <application-name>-GULF-COAST-BACKGROUND instance is created.Example:   (gulf-coast-application GENERIC #\SPACE *GENERIC-gulf-coast-commands*)This example shows the macro call for creating the Generic Gulf  CoastWindow application.  The  application is  bound to  the "SYSTEM SPACE"key  chord.   *Generic-gulf-coast-commands*   is  the   command  tableassociated with this application.Example of  building  the  command  table  for  the Generic Gulf CoastWindows application:(BUILD-COMMAND-TABLE '*GENERIC-gulf-coast-commands*        'GENERIC-gulf-coast-background   '(GULF-COAST-COMMAND        GULF-COAST-REFRESH        GULF-COAST-HELP-MENU        pop-up-Gulf-Coast-operations-menu        GC-MOVE-COM        GC-RESHAPE-com        GC-CLEAR-com        GC-KILL-com        GC-REFRESH-com        GC-BURY-com        gc-switch-configuration        gc-edit-configuration        gc-add-configuration)   :INIT-OPTIONS   '(:name "Gulf Coast Window application menu."        :documentation         "Gulf Coast Window command documentation string"))Each entry in the command table is  either a UCL command or a  menu ofcommands.  The commands are created using the DEFCOMMAND macro and themenus of commands are created using the MAKE-COMMAND macro.  Refer  tothe REL3-GULF-COAST source file for examples of creating commands  forthe command  table.   When  creating  your  own application using GulfCoast Windows,  you  should  include  the  basic commands found in theGeneric Gulf Coast  Window application  in your  command table.   Thiswill provide a  consistency of  commands for  manipulating the windowsthrough out all Gulf Coast based applications.                                                                                                                                                                                                                                                                                                                      