HELP POPLOG_UI                                   Robert Duncan, May 1995

    uses poplog_ui;

The Poplog X User Interface library.


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

  1   Introduction

  2   Building The UI

  3   Creating the Control Panel

  4   Related Information


-----------------------------------------------------------------------
1  Introduction
-----------------------------------------------------------------------

The Poplog X User Interface library creates a control panel window and a
set of subsidiary tool windows from which you can access common Poplog
facilities without using the traditional command interface. This file
describes how to build the User Interface (the UI) and create the
control panel; once you have that running, choose the Overview option
from the Help menu to see what you can do with the UI.

A standard Poplog system has the UI built-in to the startup saved image
loaded automatically with all Poplog commands. The image is configured
so that starting Poplog with the %x command-line option, or calling
sysxsetup explicitly from a program, will automatically create the
control panel.

If you don't see the control panel on start-up, there are two
possibilities:

#   You are using a non-standard system which doesn't have the UI
    built-in. In this case you will have to load it for yourself: see
    the section Building the UI below.

#   Auto-creation of the control panel has been disabled. In this case,
    you will have to start the control panel for yourself: see the
    section Starting the Control Panel below.


-----------------------------------------------------------------------
2  Building The UI
-----------------------------------------------------------------------

There are two versions of the UI, one for OPEN LOOK and the other for
Motif. In order to use the UI, Poplog must have been linked to include X
and either the OLIT or Motif widget set libraries; the appropriate
version of the UI will be chosen automatically depending on which widget
set is available. See HELP * NEWPOP for a description of how to link
Poplog with X.

The UI is built by loading LIB * POPLOG_UI. It depends heavily on XVed
and so will also load LIB * XVED if this has not already been done. This
means you cannot load the UI while running ordinary Ved.

To load the library into a running Poplog, simply do:

    uses poplog_ui;

If the UI is already present, this will do nothing. Otherwise, loading
the library from scratch takes some time, so for regular use you should
build it into a saved image. To make an image "pui.psv" containing only
the UI, use the shell/DCL command:

    pop11 %nort mkimage pui poplog_ui

and to run the image, do:

    pop11 +pui %x

You can use your favourite language command (prolog, clisp or pml) to
build and run the image instead of pop11. See HELP * MKIMAGE.

The command script

    $popcom/mkpui       ;;; UNIX
    popcom:mkpui.com    ;;; VMS

builds the pui image in popsavelib so that it can be shared by all pop11
users, but you will need a different version of the image for each other
Poplog command used at your site.

If you are reconfiguring your Poplog system, you should really keep the
UI as part of the startup saved image to maintain its expected
behaviour. Look at LIB * STARTUP to see how this is done. If you want to
customise the startup image, copy the standard library to a local
directory ($poplocal/local/lib) and add any additional instructions you
want. Then make sure you have the startup option specified to NEWPOP.


-----------------------------------------------------------------------
3  Creating the Control Panel
-----------------------------------------------------------------------

The UI is initialised by the procedure

    pop_ui_setup()

You shouldn't need to call this directly since LIB * POPLOG_UI arranges
for it to be run automatically by sysxsetup, whether that is called
explicitly from a program or implicitly via the %x command-line option.
If sysxsetup has already been called when the library is loaded, then
pop_ui_setup is executed immediately.

Whether pop_ui_setup creates the control panel depends on the boolean
variable poplog_ui_enabled: this is normally true, so the control panel
is created by default. If you don't want the control panel to appear
every time you run Poplog, you should set this variable false in your
"init.p" file. In case you are running Poplog without the UI library
loaded, it's wisest to guard this assignment in a conditional
compilation, like this:

    #_IF DEF poplog_ui_enabled
        false -> poplog_ui_enabled;
    #_ENDIF

Alternatively, if you have loaded the UI and called sysxsetup but the
control panel still doesn't appear, it may have been disabled for you.
Try doing:

    true -> poplog_ui_enabled;
    pop_ui_setup();


-----------------------------------------------------------------------
4  Related Information
-----------------------------------------------------------------------

These files are only accessible if you have loaded LIB * POPLOG_UI, or
at least LIB * POPXLIB.

HELP * POP_UI_OVERVIEW
    Using the control panel

HELP * POP_UI_PROJECTTOOL
    Using the project tool

REF * POP_UI
    Programming interface to the UI


--- C.all/help/poplog_ui
--- Copyright University of Sussex 1995. All rights reserved.
