home *** CD-ROM | disk | FTP | other *** search
/ Fish 'n' More 2 / fishmore-publicdomainlibraryvol.ii1991xetec.iso / dirs / popupmenu_422.lzh / PopUpMenu / PopUpMenu.doc < prev    next >
Text File  |  1990-12-31  |  6KB  |  188 lines

  1.  
  2.  
  3.  
  4.  
  5.     PopUpMenu V3.5 by Martin Adrian           90-08-16
  6.     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  7.  
  8.     Introduction
  9.     ~~~~~~~~~~~~
  10.     Are you using QMouse, DMouse, or HeliosMouse and "always" get the wrong
  11.      menues when you press the mousebutton?
  12.     Have you ever needed pop-up menues for your Amiga?
  13.  
  14.     The solution: PopUpMenu
  15.  
  16.     What is it ?
  17.     ~~~~~~~~~~~~
  18.     This small program makes it possible for You to use popupmenues with
  19.      every program that uses standard intuition menues.
  20.      ~~~~~
  21.     The popupmenues works just like the standard pull-down menues for both
  22.      the user (multiple selections, checkmarks, commandkeys) and the
  23.      programmer (MENUPICK and MENUVERIFY).
  24.      All intuition menu-flags (COMMSEQ, HIGHBOX, MENUTOGGLE ...)
  25.      are fully supported.
  26.  
  27.     Features:
  28.     ~~~~~~~~~
  29.     * The Pop-up menues will not show up when you press the menubutton
  30.        if any of the following conditions are true:
  31.  
  32.        1) No window is active.                  \
  33.        2) The active window has no menues.          |
  34.        3) The active window has the flag RMBTRAP set. |-  Same as Intuition
  35.        4) The active window has a requester open.     /
  36.  
  37.        5) The mousepointer is in the screens menubar.
  38.       (standard pull-down menues will appear)
  39.        6) You are pressing any qualifier key.
  40.       (shift, alt, ctrl, left or right Amiga, left (or middle) mousebutton)
  41.  
  42.     * If a menuitem has subitems this is marked with a small arrow.
  43.  
  44.     * The program remembers the last menu selected.
  45.        (Works only with items selected with PopUpMenues and does not remember
  46.     different windows).
  47.  
  48.    Differences from Intuition:
  49.    ~~~~~~~~~~~~~~~~~~~~~~~~~~~
  50.    Bad:
  51.      Drag-select is not supported (i never use it), Use Multiple selcet.
  52.  
  53.    Good:
  54.      Mousepointer don't stop while menuwindows are opened or closed.
  55.  
  56.    Good or bad ?
  57.      PopUpMenu does not remove any inputevents (RAWKEY, MOUSEMOVE ...)
  58.      while the menues are shown.
  59.  
  60.  
  61.    Installation:
  62.    ~~~~~~~~~~~~
  63.    To use the program put the file `PopUpMenu' and 'PopUpMenu.info'
  64.      in your current directory.
  65.  
  66.    To turn on the pop-up menues just type:
  67.  
  68.      1> PopUpMenu
  69.  
  70.    (If You (or maybe Kickstart 2.0) don't like selfdetaching programs,
  71.      Run (or RunBack) the PopUpMenu.run program, (Stacksize >= 2000)
  72.  
  73.    To turn them off, just type:
  74.  
  75.      1> PopUpMenu
  76.  
  77.    Workbench users can click the PopUpMenu-icon.
  78.  
  79.    The program will use 9K !  (including stack)
  80.  
  81.    Distribution
  82.    ~~~~~~~~~~~~
  83.  
  84.    This version of the PopUpMenu program is released as Public Domain.
  85.                             ~~~~~~~~~~~~~~
  86.      This program can be used, copied, included in a library or commercial
  87.      product as long as You don't do it for profit.
  88.      (Please include PopUpMenu.doc in the copy)
  89.  
  90.      You may also use the source for your own programs, but if You intend
  91.      to do a similar popupmenu-program with it please let me know.
  92.  
  93.    Warnings:
  94.    ~~~~~~~~~
  95.    * Don't use PopUpMenu with version number 2.XX since they may end up with
  96.        a spectacular crash and a visit to the guru.
  97.  
  98.    * Intuition is a very big inputhandler (I think), this means that intuition
  99.        will lockup the input.device if it tries to draw something on a locked
  100.        screen.    This will lead to a deadlock since my program is waiting for
  101.        mouseevents from the input.device.
  102.        To walk around this I have installed a timer to go off every 0.2s, if
  103.        no inputevents has arrived in this time my program does the following:
  104.        remove all displayed menues, unlock the screen, wait for the
  105.        input.device to start, lock the screen again, draw all menues again.
  106.  
  107.    * It is not possible to remove older versions (2.42 and lower) with
  108.        this program.
  109.  
  110.    * The program RSdemo scrolls it's screen if you press an arrowkey while
  111.        menues are shown. RSdemo doesn't seem to use layers.library for the
  112.        drawing (The screen is locked).) This do not happen with the intuition
  113.        menues because intuition eats all inputevents during menu operation.
  114.  
  115.  
  116.    FUTURE:
  117.    ~~~~~~~
  118.     Size is to big.
  119.  
  120.     The program only remembers the last menu (not menuitem or subitem) selected.
  121.  
  122.  
  123.    Author:
  124.    ~~~~~~~
  125.      Martin Adrian                              o
  126.      Motgången 305            (the å is an 'a' with a ring above -> a)
  127.      S-412 80  Gothenburg
  128.      Sweden
  129.  
  130. USENET d5adria@dtek.chalmers.se  (not sure if this works anymore)
  131.  
  132.    Thanks to:
  133.     Derek Zahn          for the PopUpMenu program on FishDisk 96
  134.     Commodore          for the Amiga
  135.     Arp - people          for Arp 1.3 & AShell
  136.     Lattice           for the C compiler (5.0)
  137.     My English teatcher
  138.     Anna              my girlfriend
  139.     You              for using this program.
  140.  
  141.  
  142.    New in version 3.5
  143.    ~~~~~~~~~~~~~~~~~~
  144.    For compability:
  145.    * Disabled menues items is now shown.
  146.    * Menues is now sorted after their LeftEdge value.
  147.  
  148.    New in version 3.4
  149.    ~~~~~~~~~~~~~~~~~~
  150.    For safety:
  151.    * Now checks to see if screen and window is still present after the
  152.       input.device lockup fix.
  153.    * Rearranged the files so all PopUpMenu hunks shows in Xoper.
  154.       (It should be 3 of them)
  155.  
  156.    For compability:
  157.    * Fixed a small bugs that sometimes made itemwindows to small.
  158.  
  159.    * The program no longer clears the menuitemfield before drawing
  160.       the highimage. (Intuition doesn't)
  161.  
  162.    For Distribution:
  163.    * Now the PopUpMenu.run works (Ver 3.2 didn't  OOPS!).
  164.  
  165.    * Size is now < 7K.
  166.  
  167.    New in version 3.2
  168.    ~~~~~~~~~~~~~~~~~~
  169.    For speed:
  170.    * Some code optimizations (C -> Assembler).
  171.  
  172.    For safety:
  173.    * MENUVERIFY is now fully supported.
  174.    * Forbid() and LockIBase() is now used where needed. (I hope.)
  175.    * Made my own SwapBitsRastPortClipRect.   (No more guru #81000005)
  176.  
  177.    For use:
  178.    * Shows if an item has subitems.
  179.    * Now always shows items & subitems (even if they cover other menuwindows).
  180.    * Now resumes after the input.device lock-up.
  181.  
  182.    For compability:
  183.    * Fixed Fontbug.
  184.  
  185.    New Distrbution:
  186.    * Public Domain.  (i'm not a poor student anymore 8-) )
  187.  
  188.