Man Linux: Main Page and Category List

NAME

       xpce - Prolog with graphical user interface (GUI)

SYNOPSIS

       xpce prolog-option ...

DESCRIPTION

       XPCE  is  a  language  independant  library  for  GUI  (Graphical  User
       Interfaces).  This manual page discusses XPCE/Prolog:  the  combination
       of a Prolog environment and XPCE.

       XPCE  is  an  object-oriented  engine  that can have methods defined in
       various languages. XPCE has about  150  predefined  classes  that  deal
       mainly  with  GUI’s.   The  object  engine  of XPE is made available to
       Prolog using the following predicates:

   Predicates:
       new(?Ref, +Term)
              Create an XPCE object from Term  and  bind  the  object  to  the
              reference  Ref.   The  functor-name  of Term describes the class
              from which to create an instance.  The  arguments  of  Term  are
              used  as  initialisation  arguments  for the new object.  If the
              object was created successfully and Ref is a variable, Ref  will
              be  unified with the term @<RefNumber>.  If Ref is a term of the
              form @<Atom>, this term will serve as a reference  for  the  new
              object.

              For  example  ?-  new(@p,  picture(Hello  World).   Creates  a
              graphical window object with title "Hello World".

       send(+Ref, +Selector, +Args...)
              Ref is a reference to an existing XPCE object.  Selector is  the
              name  of  a  (send-)method defined on (the class of) this object
              and Args are terms that describe arguments to be passed  to  the
              method.

              send/[2-12]  will  convert  the  arguments to XPCE data objects,
              resolve   the   procedure   (C-function,    Prolog    predicate)
              implementing  the  method  and  run  the implementation.  If the
              execution is successful, send succeeds, otherwise send fails.

              For  example  ?-  send(@p, open, point(400,100)).    opens   the
              picture created above at position 400,100 on the display.

       get(+Ref, +Selector, +Args ..., -Value)
              Ref  is a reference to an existing XPCE object.  Selector is the
              name of a (get-)method defined on (the class of) this object and
              Args  are  terms  to  provide  additional arguments.  get/[3-13]
              works similar as send/[2-12] but returns  a  value  rather  than
              succeeding/failing (boolean operation).

              For  example  get(@p,  height, H).  Unifies H with the height of
              the graphical window.

       free(+Ref)
              If Ref is a reference to an XPCE object, invoke send(Ref, free).
              to the object.  Otherwise succeed silently.

SEE ALSO

       XPCE’s web-home at http://www.swi.psy.uva.nl/projects/xpce/

       Jan   Wielemaker  and  Anjo  Anjewierden  Programming  in  XPCE/Prolog,
       University of Amsterdam, Dept. of Social Science and Informatics (SWI).

       Jan  Wielemaker  SWI-Prolog  4.0  Reference Manual.  Available from the
       SWI-Prolog web-home at http://www.swi.psy.uva.nl/projects/SWI-Prolog/

       The online manual system started with ?- manpce.  or  ?-  user_help  on
       Quintus or SICStus Prolog.

       The XPCE WWW home page: http://swi.psy.uva.nl/projects/xpce/home.html

       xpce-client(1), pl(1)

COPYING

       XPCE  is  distributed  under the General Public Licence version 2, also
       known as the GPL-2 licence.  The license terms are in the file  COPYING
       or on the GNU website at http://www.gnu.org.

       In  a  nutshell,  you  can  modify  and use XPCE as long as you clearly
       indicate changes, don’t change copyright messages  and  distribute  the
       complete  source of your work with every binary copy or make the source
       in some other form available for free to your users

       Especially if you do not wish to distribute the source of your work you
       may  wish to consider optaining a commercial license.  Please visit the
       SWI-Prolog home-page for details.

COPYRIGHT

       Copyright (c) 1985-2001 University of Amsterdam.

AUTHOR

       Jan Wielemaker and Anjo Anjewierden

                               February 7, 2001