Search                        Top                                  Index
HELP XNEWS_V14.2                                               Nov 1992

For most recent news please see HELP * NEWS, * XNEWS.


         CONTENTS - (Use <ENTER> g to access required sections)

  1   Version 14.2 News

  2   Version 14.1 News

  3   Version 14.0 News

1  Version 14.2 News

Aug 25 (Adrian Howard)
    --- The procedure -fast_XtDisplayOfObject- is now autoloadable.

    --- The XpwGraphic widget methods -XpwAllocColorRange- and
        -XpwFreeColorRange- now work correctly.

    --- The default values of the following XpwScrollText widget
        resources are now correct:

    --- The procedure -XptGetFontProperty- now returns -false- if the
        font property atom name is unknown.

    --- The typespecs in INCLUDE *XPT_XEVENT.PH are now correct.

    --- Displays opened via -(fast_)Xt(Va)AppInitialize- are now closed
        properly after a -sysfork-.

    --- In LIB *PROPSHEET -propsheet_show- and -propsheet_hide- now
        work correctly for imported property boxes.

    --- Bug in -XptDefaultDisplay- which caused multiple displays and
        application contexts to be created has been fixed.

    --- The POPLOG UI file tool, help tool, and exit prompt now work
        as expected when -pop_pr_quotes- is -true-.

    --- Selecting lines in XVed now works when -vedleftmargin- is

    --- There are two new XVed application resources (DialogBackground
        and DialogForeground) which alter the foreground and background
        colours of the XVed specific dialog boxes. See REF *XVED for
        more information.

    --- Setting the XVed menubar and scrollbar foreground and background
        colours now works correctly.

Jul 01 (Adrian Howard)
    Features added to make X behave better after a -sysfork-:
    --- The destroy actions for widgets, application contexts, and
        displays are now stored in -sys_process_destroy_action- and are
        cleared in the child process after a -sysfork-
        (see REF *XptDescriptor, *SYS_PROCESS_DESTROY_ACTION.)
    --- The variables -XptDefaultDisplay- and -XptDefaultAppContext- are
        reset to -false- in the child process after a -sysfork- so
        -XptDefaultSetup- can be used in the new process.
        (see REF *XT_INIT)
    --- All displays and application contexts are closed in the child
        process after a -sysfork-. X processing on a display should only
        occur in the same process it is created in.

Jun 29 (John Gibson)
    --- The procedures XptAsyncDisplay, (fast_)XptInterruptHandler and
        XptDisplayDevice have been withdrawn. (Support is no longer
        provided for access to a server device. XptAsyncAppcontext
        supports asychronous event handling.)

Jun 23 (Adrian Howard)
    Changes from Jon Meyer installed:
    --- New OLIT functions and widget classes added to
        LIB *OpenLookWidgetSet
    --- LIB *PROPSHEET rewritten and extended
    --- Procedure -XpmCoerceCopiedString- added
    --- New library LIB *XPM_LISTUTILS added

May 28 (Adrian Howard)
    --- The procedure -XptCheckWindowedWidget- has been added to the
        library LIB *XPT_TYPECHECK to check that a given widget is a
        subclass of the Core widget class

    --- The procedure -fast_XtIsWidget- is now an autoloadable. This
        allows its usage to increase error detection in other functions
        (eg, -XptCheckWindowedWidget-.)

Apr 29 (Adrian Howard)
    --- The procedure -XptDefaultSetup- now behaves correctly if it
        cannot open a display. Also, if -XptDefaultDisplay- contains
        a string when -XptDefaultSetup- is called, the string is used
        as the name of the display to be opened.

Mar 30 (Adrian Howard)
    --- The  procedures   -fast_XtRemoveCallback-,   -XtRemoveCallback-,
        -fast_XptRemoveCallbackList-  and   -XptRemoveCallbackList-   no
        longer mishap if  an attempt is  made to remove  a callback  not
        registered from POP-11.

Feb 24 (Adrian Howard)
    --- Installed  changes  to   LIB  *RC_GRAPHIC   suggested  by   John

            o New  procedure -rc_draw_oblong-  to draw  rectangles  with
            rounded corners.

            o  The  shell  of  -rc_window-  has  its  "input"   resource
            controlled by the -rc_wm_input- variable

Feb 21 (Adrian Howard)
    --- Facilities have been added to support multiple toolkit versions.
        A new variable -XLINK_VERSION-  has been added which  represents
        the version of the libraries specified in -XLINK_LIBS-. This can
        be specified in INCLUDE *XDEFS, or set by LIB *NEWPOP when a new
        Poplog system is  built. See REF  *X and HELP  *NEWPOP for  more

        For  information  on  how  -XLINK_VERSION-  should  be  set  for
        different versions of OLIT, see REF *OPENLOOK.

    --- The procedures -LookupOlColors- and  -OlGetApplicationResources-
        become redundant in all OLIT versions after 2.0.

    --- The procedure -OlListItemPointer- has been added to the  support
        for the OLIT ScrollingList widget.

    --- The XpOLListItemPtr shadowclass and the OlListItem typespec  are
        now defined appropriately  depending on the  OLIT version  being

Feb 17 (Adrian Howard)
    --- -XptDestroyWindow- now autoloads separately from -XptNewWindow-.

Jan 24 (Adrian Howard)
    --- Added -XGetGCValues- to LIB *XGraphicsContext to allow clients
        to read the current values of a given graphics context.

Jan 23 (Adrian Howard)
    --- Added -XpwStackColorRangeInfo- to LIB *Xpw/XpwGraphic. Fetches
        the same information as -XpwColorRangeInfo- without creating a
        vector. See REF *XpwGraphic.

Jan 20 (Adrian Howard)
    --- Added Xt keyboard handling  libraries (see LIB *XT_KEYBOARD  and
        LIB  *FAST_XT_KEYBOARD)  which   provide  facilities  for   case
        conversion and translating KeyCodes to KeySyms. For details  see

    --- Two new external callback types added, CaseProcs & KeyProcs. See
        REF *XT_CALLBACK and REF *XT_KEYBOARD for details.

    --- The   -XptImportKeySymTable-    procedure   added    to    allow
        XptKeySymTables to be imported from the Intrinsics. For  details
        see REF *XPT_COERCE.

    --- XptIntPtr shadowclass added to LIB *XPT_GENERAL.

    --- New $-Xpt section  added. All  identifiers in  this section  are
        reserved for Poplog X implementors.

Jan 13 (Jonathan Meyer)
    --- Added the "BellVolume" XVed application setting, allowing you
        to change the volume of the beep produced by vedscreenbell.

Jan 12 (Jonathan Meyer)
    --- Installed C.all/x/Xpw/ExposeEvent.c, which is used by XpwPixmap
        and XpwGraphic to generate synthetic exposure events. This is
        used in places where, previously, XClearArea would have been
        called with a final argument of TRUE. It is an improvement on
        XClearArea because there is no longer a flicker when you perform
        the operation. Places where this used to happen were: switching
        the pixmapStatus from PixmapOff to PixmapOn in the XpwGraphic
        widget, and using XpwPutImage and XpwDrawImage.

2  Version 14.1 News


Due to a change in the behaviour of shadowclass, a number of  non-upward
compatible  functional/name  changes  have  been  introduced  into   the
toolkit. The following shadowclasses are affected:

    XpawTextBlock           XptGCValuesPtr
    XpmAnyCallbackStruct    XptOptionDescList
    XpolListItem            XptOptionDescRec
    XptActionList           XptResouceList
    XptActionsRec           XptResource
    XptArg                  XptResourceListPtr
    XptArgList              XptSubstitution
    XptCallbackList         XptSubstitutionRec
    XptCallbackRec          XptXrmValue
    XptConvertArgList       XptXrmValueList
    XptConvertArgRec        XptXrmValuePtr

Users whose programs  use these shadowclasses  should examine the  entry
dated Nov 4th in detail.


a) From Poplog 14.1, the functionality of all of the fast_ X toolkit
procedures which register Pop-11 procedures with the X toolkit
has been changed. Such procedures no longer perform coercion on their
arguments to convert a Pop-11 procedure into an externally callable one.

This means that code which does things like:

    fast_XtAddCallback(w, XtN buttonEvent, foo, 'string');

will no longer work - instead you need to do:

    fast_XtAddCallback(w, XtN buttonEvent,
                        XptExportCallbackCached(foo, 'string', false),

The non-fast versions of the procedures are unchanged.

b) Using fast procedures which are built into the binary

The -fast- X toolkit procedures built into the Poplog binary should not
be used without first loading the Pop11 fast_xt_ library associated with
the procedures. For example, you should not use the -fast_XtDisplay-
procedure unless you have added a line of code saying 'uses
fast_xt_display' at the top of your program. This will protect you
should any of these procedures in future move out of the core of Poplog.

Doing <ENTER> ref fast_XtDisplay will tell you what the name of the
relevant fast_xt_ library is.


Nov 7 (John Gibson)
    --- Since Version 14.0, there have been quite a number of changes
        to the functionality of the XpwScrollText widget-class. The most
        important changes are

        o   The widget now maintains its own representation of the
            text in the window, and deals with exposure events
            automatically (the callback that previously handled
            exposures has now gone).

        o   Button event handling now deals automatically with filtering
            'clicks', and passes data in a different format to the
            XtNbuttonEvent callback.

        o   Row 0 in a window has its own foreground/background colours
            (for the status line in XVed).

        o   There are various other new resources.

        See REF *XpwScrollText for full details.

Nov  5 (Adrian Howard)
        Action and ActionHook procedures now pass -XptXEventPtr-
        structures rather than external pointers.

Nov  4 (Adrian Howard)
        Due to a  change in the  behaviour of shadowclass,  a number  of
        non-upward compatible name changes have been introduced into the
        toolkit. The libraries that have been affected are listed below:

        LIB *XptGCValuesPtr
            This library no  longer   creates -typespec:XptGCValuesPtr-,
            but   uses -typespec:XptGCValues- as defined  in INCLUDE

            The subscript procedures for the fields in -XptGCValuesPtr-
            shadowclass structures now have the prefix "XptGCV" rather
            than "XptGCVP" (see the -XptGCValues- typespec).

        LIB *XT_ACTION
            The -XptActionsRec- shadowclass defined in this library has
            been renamed -XptActionsPtr-.

            The library no longer creates -typespec:XptActionsRec-. This
            typespec is now defined in INCLUDE *XPT_GENERALTYPES.PH.

            The components of -XptActionList- shadowclass structures are
            now -XptActionsPtr- structures (instead of -XptActionsRec-).

            The -XptCallbackRec- shadowclass defined in this library has
            been renamed -XptCallbackPtr-.

            The library no longer creates -typespec:XptCallbackRec-.
            This typespec is now defined in the file INCLUDE

            The components of -XptCallbackList- shadowclass structures
            are  now -XptCallbackPtr- structures (instead of

            The -XptXrmValue- shadowclass defined in this library has
            been renamed -XptXrmValuePtr- (the old -XptXrmValuePtr-
            structure has been removed).

            The -XptConvertArgRec- shadowclass has been renamed

            The library no longer creates -typespec:XptXrmValue- and
            -typespec:XptConvertArgRec-. These typespecs are now defined

            The components of -XptXrmValueList- and -XptConvertArgList-
            shadowclass structures are now -XptXrmValuePtr and
            -XptConvertArgPtr- structures (instead of -XptXrmValue- and

            The -XptConvertArgList- shadowclass  structures contained in
            these autoloadable  constants are now made from
            -XptConvertArgPtr- structures rather than -XptConvertArgRec-

            The -XptResource- shadowclass defined in this library has
            been renamed -XptResourcePtr-.

            The library no longer creates -typespec:XptResource-. This
            typespec is now defined in INCLUDE *XPT_GENERALTYPES.PH

            The components of an -XptResouceList- shadowclass structure
            are now accessed via -XptResourcePtr- structures (rather
            than the old -XptResource- shadowclass).

            The -XptResourceListPtr- shadowclass has been removed (it is
            the equivalent of the -XptResourceList- shadowclass.

        LIB *XT_UTIL
            The library no longer creates -typespec:XptSubstitutionRec-.
            This is now defined in INCLUDE XPT_GENERALTYPES.PH

            The shadowclass -XptSubstitutionRec- has been renamed

            The components of an -XptSubstitution- shadowclass structure
            are now accessed via -XptSubstitutionPtr- structures (rather
            than the old -XptSubstitutionRec- shadowclass).

            The typespec declarations previously contained in this
            library are now in INCLUDE *XPT_GENERALTYPES.PH, the
            shadowclass declarations are now in LIB *XPT_GENERAL.
            Loading XPT_GENERALTYPES compiles both of these files.

            The -XptArg- and -XptOptionDescRec- shadowclass have been
            renamed -XptArgPtr- and -XptOptionDescPtr-.

            The components of -XptArgList- and -XptOptionDescList-
            structures are now accessed via -XptArgPtr- and
            -XptOptionDescPtr- structures (rather than the old -XptArg-
            and -XptOptionDescRec- shadowclasses).

            This procedure now accepts -XptArgPtr- shadowclass
            structures instead of -XptArg- structures.

        LIB *Xaw/XawText
            The -XpawTextBlock- shadowclass has been renamed

            The typespecs -typespec:XawTextBlock- and
            -typespec:XawTextBlockPtr- have been renamed
            -typespec:XpawTextBlock- and -XpawTextBlockPtr-.

            The field names of -typespec:XpawTextBlock- (and the
            -XpawTextBlockPtr- shadowclass) have been renamed to
            "XpawTBFirstPos", "XpawTBFormat", "XpawTBString",

        LIB *Xm/XmConstants
            Typespec -typespec:XmAnyCallbackStruct- renamed
            -typespec:XpmAnyCallbackStruct- and its fields renamed to
            "XpmACSReason" and "XpmACSEvent".

            The -XpmAnyCallbackStruct- shadowclass renamed

        LIB *Xol/XolScrolling
            The -XpolListItem- shadowclass has been renamed as

Oct 31 (Adrian Howard)
        Several changes to LIB *FAST_XT_EVENT and LIB *XT_EVENT.
        o Coercion of booleans now takes place in LIB *FAST_XT_EVENT
        o Type-checking bugs fixed
        o EventHandlers now assume a -true- result if a Pop11 callback
          does not return a result.
        o There is now proper coercion of Pop11 procedures via:
          These replace the old coercion procedures -XptCoerceTimeOut-,
          -XptCoerceEventHandler-, and -XptCoerceInput-.
        o EventHandler procedures are now held in widget records to
          prevent early garbage collection.
        o Pop11 EventHandler procedures are now passed an -XptXEventPtr-
          rather than an external pointer.
        See REF *XT_EVENT for details.

Sep 30 (Adrian Howard)
        --- Added -XptImportUnregisteredDisplayPtr-  to  import  display
            pointers that do not have an associated application  context
            into Pop11. See REF *XT_DISPLAY for details.

        --- -XtOpenDisplay- now allows a  -false- (null) display  and/or
            application name string.

        --- Added -XptExportActionCached- to LIB *FAST_XT_ACTION.

Sep 25 (Jonathan Meyer)
        --- XpwGraphic resource XtN usePrivateGC has been removed.
            (It provided no useful functionality).

Sep 23 (Adrian Howard)
        --- LIB *XT_CONVERTER  and LIB  *FAST_XT_CONVERTER improved:
              o There is now proper coercion of Pop11 procedures via:
                These  take  the  place  of  the  previously   incorrect
                coercion   procedures    -XptCoerceTypeConverter-    and
              o Support for -ConvertArgProc- procedures added.
              o Several bug fixes and  improvements on type-checking  in
                LIB *XT_CONVERTER.
              o -(fast_)XtDisplayStringConversionWarning- added.
              o Support  for   -XptCacheRef-,   -XptXrmValueList-,   and
                -XptCacheRefPtr- structures added.
            See REF *XT_CONVERTER for full details.

Sep 18 (Adrian Howard)
        --- Installed  the  library  LIB  *XPT_WIDGETTYPES  which  gives
            typespecs  for   core  and   composite  widgets.   See   REF
            *XPT_WIDGETTYPES for details.
        --- Added the constant -XptXrmQuark- to LIB *XPT_XTYPES.

Sep 11 (Adrian Howard)
        --- All the toolkit procedures which take "list" structures  now
            check that  they  are  of the  appropriate  length,  or  are
            null-terminated.    See    the    -XptCheckNT<TYPE>-     and
            -XptCheck<TYPE>AndLength- procedures  in REF  *XPT_TYPECHECK
            for details.

Sep 6 (Jonathan Meyer)
        --- Poplog now sets the X toolkit error and warning handlers to
            print output using Poplog's cucharerr, via *sysprmessage.
            Also, error message name/type information is printed for
            errors generated using the X toolkits higher level error
            message interface.

Sep 5 (Adrian Howard)
        --- You can now pass a null XEvent pointer to -XtCallActionProc-

        --- There is now proper action (hook) coercion via the

            These procedures replace  the previously incorrect  coercion
            procedures -XptCoerceAction- and -XptCoerceActionHook-.  See
            REF *XT_ACTION for details.

        --- Removed     obsolete     callback     tracing      constants
            -XptCBTypeTimeout-,  -XptCBTypeCallback-,  -XptCBTypeInput-,
            -XptCBTypeAction-, and  -XptCBTypeActionHook-  from  INCLUDE
            *XPT_CONSTANTS. For  details  of the  new  callback  tracing
            mechanism see REF *XT_CALLBACK.

Sep 1 (Jonathan Meyer)
        --- Added facilities for defining arbitrary new widget callback
            lists and for creating and managing cursor planes.

                    LIB  *XptGarbageCursor *XptGarbageCursorFeedback
                    LIB  *XptBusyCursor *XptBusyCursorFeedback

Aug 29 (Adrian Howard)
        --- Added the constants -XtCallbackNoList-, -XtCallbackHasNone-,
            and -XtCallbackHasSome- to INCLUDE *XT_CONSTANTS.

        --- There is now proper callback coercion via the procedures:

            These procedures replace  the previously incorrect  coercion
            procedures -XptCoerceCallback- and  -XptCoerceTypedCallback-
            which have been withdrawn. See REF *XT_CALLBACK for details
            of callback coercion.

Aug 28 (Julian Clinton)
        --- The 'Poplog User Interface' for X Windows has been installed
            in C.all/x/ui. LIB *POPLOG_UI loads it.

Aug 23 (Adrian Howard)
        --- The procedure -XtAppSetFallbackResources- now allows a  null
            fallback resources XptStringList.

Aug 21 (Adrian Howard)
        --- HELP *XPOP_NEWS renamed HELP *XNEWS
            HELP *XPOP_NEWS.V13_9 renamed HELP *XNEWS.V13_9
            HELP *XPOP renamed HELP *X

        --- Fixed -Xt(Va)AppInitialize- so that null application context
            pointer and fallback resource arguments are permitted.

Aug 20 (Jason Handby)
        REF *XPOPTYPES renamed REF *XPT_TYPES.

Aug 19 (Jonathan Meyer)
        Installed -XptEvenlySpaceWidgets- and -XptWidgetCoords-. See
        REF *XT_LIBS.

Aug 1 (Jonathan Meyer)
        The XptXEventPtr shadowclass  has been renamed  XptXEvent -  its
        field names have also been updated. Previously its name  clashed
        with the XptXEventPtr typespec  in LIB *XptImportXEventPtr,  and
        meant that xt libraries could  not be loaded with  pop_debugging
        -false-. The new name does not clash.

        See LIB *XptXEvent for the specification of the new shadowclass.

        Most users will have used  the typespecs in INCLUDE  *XPT_XEVENT
        instead of  the  shadowclass,  and so  they  will  therefore  be
        unaffected by the change.

Aug 1 (Jonathan Meyer)
    Installed LIB *XptGetFontProperty. See REF *XptGetFontProperty.
    Installed LIB *XptWMShellCoords. See REF *XptWMShellCoords.

Jul 30 (Jonathan Meyer)

    Tidied and improved Poplog Widget Set (fixed several bugs):

    --- Renamed libXpw.a -> libXpw.olb to be consistent with other pop
        object libraries. Moved the archive into $popexternlib and
        removed redundant XPOPBIN and its directory.

        Removed x/bin, x/com and x/plog directories, which are empty.

    --- Added Xpw C source directory to popsrclist in LIB *POPXLIB,
        so you can now do SRC *XpwGraphic.c.

    --- Documented support for XpwLoadPixmap, XpwFreePixmap,
        XpwGetPixmap, XpwFontAscent, XpwFontDescent, XpwFontHeight and
        XpwTextWidth in REF *XpwCore.

    --- Fixed bug in SRC *XpwPixmap.c so that XtNtile, XtNstipple etc.
        resources work correctly. This means the following (documented)
        resources will work (see REF *XpwPixmap):

                planeMask fillStyle fillRule arcMode tile stipple
                tileStipXOrigin tileStipYOrigin subwindowMode
                clipXOrigin clipYOrigin clipMask dashOffset

    --- Removed XpwFailureImport from PoplogWidgetSet.p and replaced
        with more efficient version of XpwCallMethod, which correctly
        imports colours and XID's. Also removed redundant calls to
        xpw_check_live_widget and replaced with XptCheckWidget.

    --- Documented XpwCreateImage, XpwFreeImage, XpwImagePixelValue
        and XpwPixelValue in REF *XpwPixmap, and updated LIB *XpwPixmap.

Jul 4 (Jonathan Meyer)
    --- Added support for Xt event handlers and raw Xt event handlers
        See REF *XT_EVENT.
        Added XptAncestors, XptShellOfObject. Improved XptChildren.
        See REF *XT_LIBS.

Jul 2 (Andreas Schoter)
    --- Full Athena Widget Set support added. See:
            LIB *XawTutorial, LIB *AthenaWidgetSet,
            LIB Xaw/Xaw*.p

Jul 1 (Jonathan Meyer)
    --- Added RoundedRectangles to list of shapes supported by XpwPixmap
        and XpwGraphic. (See REF *XpwPixmap, under
        XpwDrawRoundedRectangle and XpwFillRoundedRectangle).

Jun 28 (Jonathan Meyer)
    --- Added general purpose high level dialog box and property sheet
        building library. SEE TEACH *PROPSHEET and LIB *PROPSHEET.
        Works for MOTIF and OPENLOOK.

Jun 28 (Jonathan Meyer)
    --- Added class apply convenience functions for descriptors (eg.
        widgets, screens, displays, widget classes). Allows you to do
        things like:

            widget("parent")("width") +1 -> widget(2)("height");

        See REF *XPT_CLASSAPPLY for details.

Jun 18 (Roger Evans)
    --- Type-checking versions of Xt procedures which expect arglist
        data now accept pop11 lists in place of (arglist,length)
        arguments and process them using XptArgList automatically. Eg
        the following now all behave identically:

            1)  XtCreateWidget(widget,class,parent,XptArgList(list));

            2)  XtCreateWidget(widget,class,parent,list);

            3)  XptArgList(list) -> (arglist,card);

        The FAST versions of these procedures do NOT carry out this
        coercion, however.

Jun 18 (Jon Meyer)
    --- A draft REF *XVED is now installed.
    --- XVed now uses OpenLook and Motif widgets
    --- src xt_widget.p fixed to work with gadgets correctly.

May 30 (Jon Meyer)
    --- XVed version 1.2 has been installed (this is the first version
        of XVed to be placed in Poplog). Documentation to come shortly.

May 30 (Jon Meyer)
    --- Xpw Version 5.0 has been installed - this should fix the clear
        area bug. Documentation to come shortly.

May 30 (Jon Meyer)
    --- XpolAddListItem was added to make it possible for Sun-3 clients
        to add items to the OpenLook ScrollingList widget. See
        REF *OPENLOOK/XpolAddListItem.

May 30 (John Gibson)
    --- The change dated May 30 in HELP *NEWS concerning -exload- and
        `runtime actions' affects -XptLoadProcedures- and

        XptLoadProcedures uses the "=" form of -exload- directly, and so
        any identifiers it loads will be affected as described in the
        NEWS change.

        XptWidgetSet uses internal mechanisms of -exload- which do the
        equivalent of "=" operations. Procedure identifiers imported by
        it are affected in the same way as for XptLoadProcedures. Widget
        class structures, on the other hand, can still be accessed at
        compile-time, but are not completely set up until run-time (and
        so cannot be used until then).

May 24 (Jon Meyer)
    --- Added *XptCenterWidgetOn and *XptMaxWidgetVisibility.
        See REF *XT_LIBS.

Apr 25 (Ian Rogers)
    --- Added -XptChildren- and -XptWidgetTree-. See REF *

Apr 18 (Jon Meyer)
    --- Added *XpolScrollingList to set OpenLook ScrollingListWidget
        lists using Pop-11 lists or item repeaters.

Apr 17 (Ian Rogers)
    --- Fixed XpwSetFont, XpwSetCursor, & XpwSetColor.

Apr 12 (Roger Evans)
    --- Removed LIB XT_COMPAT and the entire compat directory. This
        facility was intended to provide backward compatibility for
        early (pre-release) versions of the X Toolkit interface, but
        in fact it never worked properly anyway.

Mar 15 (John Gibson)
    --- A new procedure -XptAsyncAppContext- enables full asynchronous
        processing of toolkit events for a given application context.

        This is intended as a replacement for -XptAsyncDisplay-, which
        responds only to server events and not to toolkit
        timers/alternate inputs (and which, owing to its reliance on
        Unix SIGIO signals on sockets, is not portable to all POPLOG

        The new facility works uniformly across both wait and non-wait
        states (i.e processing of events is either on or off, regardless
        of what else POPLOG is doing). It is automatically enabled on
        -XptDefaultAppContext- by -XptDefaultSetup-.

        See REF * XptAsyncAppContext.

Feb 25 (Aaron Sloman)
    --- Updated HELP * X with cross references to new documentation.

    --- Fixed out of date cross references in

Feb 16 (Jon Meyer)
    --- Added MOTIF widget set demos, including:
            TEACH *XmDemos, LIB *XmDemos, *XmDemoUtils,
            LIB *XmDialogsDemo, *XmControlsDemo, *XmTextDemo

    --- Changed XptWidgetSet so that widget set C procedures have some
        basic argument processing and checking ( does basic string and
        boolean coercion, and also checks for illegal datatypes,
        where class_field_spec contains full objects, or is false).

Feb 15 (Jon Meyer)
    --- Added MOTIF widget set interface, including:
            LIB *MotifWidgetSet.p, LIB Xm/Xm*.p

    --- Added Atom cache library, see LIB *XPT_ATOMCACHE and

3  Version 14.0 News

Jan 30 (Jon Meyer)
        INCLUDE *XPT_XIMAGE with typespecs and macros for colors,
        fonts, graphics contexts and images.

Jan 27 (Jon Meyer)
    --- Added LIB *POPXDEMO (counterpart to POPXLIB). Also added
        OpenLook demonstration programs (see HELP *XolDemos),
        which are loaded using LIB *XolDemos

Jan 26 (Roger Evans)
    --- shadowclass declarations in various libraries altered to
        take account of non-upwardly compatible change in LIB
        * SHADOWCLASS (see HELP * NEWS).

Jan 25 (Jon Meyer)
    --- Tidied XLIB libraries (ie files in $usepop/pop/x/pop/lib/xlib,
        as accessed via LIB * XLIB):

        Removed remaining references to $Xroot from XLIB files.

        Added new symbol XHASOLDX to This symbol is true if
        and only if the library liboldX.a exists. It is used to allow
        some of the XLIB libraries to load oldX functions if they are

        Moved include files from XLIB directory to main x include
        directory and made them use INCLUDE_constant

    --- Added new symbol XPOPDEMO to This contains the
        pathname for the x demo directory - default value:

Jan 17 (Jon Meyer)
    --- Moved the following libraries from the non-autoloadable into
        the autoloadable x library directory:
            LIB * XptArgList        LIB * XptConvertUnit
            LIB * XptGCValuesPtr    LIB * XptNewWindow
            LIB * XptWidgetSet      LIB * XptXEventPtr

        Fixed bugs in LIB * XpwGraphic and LIB * XpwPixmap
        Tidied INCLUDE * (removing some extra XtN

    --- Installed the following documentation:
            HELP * Xpw              TEACH * Xpw
            REF  * XpwCallMethod    REF   * XpwMethods
            HELP * OPENLOOK         TEACH * OPENLOOK

    --- Fixed LIB * OpenLookWidgetSet so that OlInitialize returns
        a widget (previously returned an external_ptr).

Jan 7 (Aaron Sloman)
    --- Removed unnecessary check for integer args in rc_draw_rectangle

Dec 11 (Aaron Sloman)
    --- An extension to the RC_ library, written by David Young has been
        installed, consisting of the following files.
        This provides a far more extensive collection of graph drawing
        procedures than LIB * RC_DRAWGRAPH

Dec 10 (Roger Evans)
    --- lib shadowkey now compiles correctly with -pop_debugging- false,
        and shadowclass definitions locked into the system work properly
    --- bug in external callback mechanism, causing stray stackmarks to
        be left after <enter> l1, now fixed

Dec 7 (Aaron Sloman)
    --- Fixed LIB * RC_CONTEXT so that it restored rc_window before
        other variables, to ensure that the active variables were
        updated in the right environment.

Dec 7 (Roger Evans)
    --- replaced XptDisplayAppContext with functionally identical
        toolkit routine fast_XtDisplayToApplicationContext, and checking
        version XtDisplayToApplicationContext in LIB * xt_display.
    --- Fixed bug in XptImportWidget causing mishaps when attempting to
        import shell widgets

Dec 5 (Roger Evans)
    --- exported new constant -XptDescriptor_key-.
        See REF * XptDescriptor

Dec 5 (David Young)
    --- Fixed clipping bug in rc_drawline in LIB * rc_graphic

Dec 5 (Jonathan Meyer)
    --- Added full XEvent union structure to INCLUDE *
    --- Added BulletinBoardWidget to LIB * OpenLookWidgetSet

Dec 3 (Adrian Howard)
    --- old LIB XptWindow now renamed LIB * XptNewWindow to avoid clash
        with window typespec name

Nov 30 (Jonathan Meyer)
    --- Changes to LIB * OpenLookWidgetSet : commented out Gadgets,
        since there's currently no support for them. Added code to
        redefine sysxsetup to do Xol setup.

Nov 27 (Roger Evans)
    --- added initialise and refresh functions to LIB * SHADOWKEY and

Nov 26 (Adrian Howard)
    --- Changed XptTypeCheck (in LIB * XPT_TYPECHECK) so it checks
        for an external pointer before it checks the XptDataType, and
        so produces better error messages.

Nov 26 (Jonathan Meyer)
    --- Fixed bug in fast_XtVaCreate* procedures - they now call the
        correct C XtVaCreate* routines, rather than the non Va versions!

Nov 23 (Roger Evans)
    --- Version 13.91 released as beta-test version 14. Previous
        Poplog/X news (mostly irrelevant now) moved to HELP

    ********** FOR EARLIER NEWS ITEMS SEE HELP * XNEWS.V13_9 ***********

--- C.all/help/xnews_v14.2
--- Copyright University of Sussex 1993. All rights reserved.