gecko-dev/extensions/xmlterm/base
cls%seawood.org 11fbc65df2 Added include so that LOAD_FLAGS_NONE is actually found. Now, maybe the ports will go green...err, orange again. 2000-09-20 19:26:44 +00:00
..
.cvsignore Initial import of XMLterm extension; not part of default SeaMonkey build 1999-12-06 06:32:12 +00:00
Makefile.in Removed obsolete REQUIRES variable from every Makefile.in/makefile.win 2000-06-30 08:08:04 +00:00
README xmlterm changes only (not part of the default build). 2000-03-16 03:54:03 +00:00
lineterm.h xmlterm changes only; 2000-04-04 04:42:27 +00:00
ltermEscape.c xmlterm changes only. 2000-04-21 13:10:44 +00:00
ltermIO.c xmlterm changes only; 2000-03-31 04:14:39 +00:00
ltermInput.c xmlterm changes only (not part of the default build). 2000-03-13 15:48:32 +00:00
ltermManager.c xmlterm changes only. 2000-04-16 01:56:11 +00:00
ltermOutput.c xmlterm changes only (not part of the default build). 2000-03-17 05:36:29 +00:00
ltermPrivate.h xmlterm changes only; 2000-04-05 05:15:14 +00:00
mozILineTerm.idl xmlterm changes only (not part of the default build). 2000-02-29 15:55:36 +00:00
mozILineTermAux.h xmlterm changes only; 2000-04-04 04:42:27 +00:00
mozIXMLTermShell.idl Fix for bug 46861. nsIDOMWindow is now split into two interfaces: a public interface (still called nsIDOMWindow) for embedders and an internal interface (nsIDOMWindowInternal) for internal use. The union of the two interfaces is still visible from JavaScript. r=jst@netscape.com 2000-09-01 01:54:35 +00:00
mozIXMLTermStream.h Fix for bug 46861. nsIDOMWindow is now split into two interfaces: a public interface (still called nsIDOMWindow) for embedders and an internal interface (nsIDOMWindowInternal) for internal use. The union of the two interfaces is still visible from JavaScript. r=jst@netscape.com 2000-09-01 01:54:35 +00:00
mozIXMLTermSuspend.h xmlterm changes only (not part of the default build). 2000-02-29 15:55:36 +00:00
mozIXMLTerminal.h xmlterm changes only. 2000-04-21 14:01:43 +00:00
mozLineTerm.cpp Renaming nsIAllocator to nsIMemory (and nsAllocator to nsMemory). API cleanup/freeze. Bug #18433 2000-06-03 09:46:12 +00:00
mozLineTerm.h xmlterm changes only. 2000-04-21 14:01:43 +00:00
mozXMLT.h Initial import of XMLterm extension; not part of default SeaMonkey build 1999-12-06 06:32:12 +00:00
mozXMLTermFactory.cpp Bug 37275, Changing value of all progids, and changing everywhere a progid 2000-09-13 23:57:52 +00:00
mozXMLTermListeners.cpp small but pervasive change to make nsIDOMSelection an xpidl interface. also broke it into 2 interfaces, nsISelection and nsISelectionPrivate. moved nsIDOMSelectionListener also to xpidl. these new idl files live in layout/base/public. r=sfraser, r=anthonyd bug 48575 2000-09-14 11:45:01 +00:00
mozXMLTermListeners.h xmlterm changes only (not part of the default build). 2000-02-29 15:55:36 +00:00
mozXMLTermSession.cpp small but pervasive change to make nsIDOMSelection an xpidl interface. also broke it into 2 interfaces, nsISelection and nsISelectionPrivate. moved nsIDOMSelectionListener also to xpidl. these new idl files live in layout/base/public. r=sfraser, r=anthonyd bug 48575 2000-09-14 11:45:01 +00:00
mozXMLTermSession.h xmlterm changes only. 2000-04-21 14:01:43 +00:00
mozXMLTermShell.cpp small but pervasive change to make nsIDOMSelection an xpidl interface. also broke it into 2 interfaces, nsISelection and nsISelectionPrivate. moved nsIDOMSelectionListener also to xpidl. these new idl files live in layout/base/public. r=sfraser, r=anthonyd bug 48575 2000-09-14 11:45:01 +00:00
mozXMLTermShell.h Fix for bug 46861. nsIDOMWindow is now split into two interfaces: a public interface (still called nsIDOMWindow) for embedders and an internal interface (nsIDOMWindowInternal) for internal use. The union of the two interfaces is still visible from JavaScript. r=jst@netscape.com 2000-09-01 01:54:35 +00:00
mozXMLTermStream.cpp Fixed comment 2000-09-18 00:28:41 +00:00
mozXMLTermStream.h Fix for bug 46861. nsIDOMWindow is now split into two interfaces: a public interface (still called nsIDOMWindow) for embedders and an internal interface (nsIDOMWindowInternal) for internal use. The union of the two interfaces is still visible from JavaScript. r=jst@netscape.com 2000-09-01 01:54:35 +00:00
mozXMLTermUtils.cpp Need to explicitly cast pointer to public DOM window interface 2000-09-01 07:41:46 +00:00
mozXMLTermUtils.h Fix for bug 46861. nsIDOMWindow is now split into two interfaces: a public interface (still called nsIDOMWindow) for embedders and an internal interface (nsIDOMWindowInternal) for internal use. The union of the two interfaces is still visible from JavaScript. r=jst@netscape.com 2000-09-01 01:54:35 +00:00
mozXMLTerminal.cpp Added include so that LOAD_FLAGS_NONE is actually found. Now, maybe the ports will go green...err, orange again. 2000-09-20 19:26:44 +00:00
mozXMLTerminal.h xmlterm changes only; 2000-04-05 01:51:34 +00:00
ptystream.c xmlterm changes only. 2000-04-15 04:10:29 +00:00
ptystream.h xmlterm changes only; 2000-04-04 04:42:27 +00:00
tracelog.c Initial import of XMLterm extension; not part of default SeaMonkey build 1999-12-06 06:32:12 +00:00
tracelog.h Initial import of XMLterm extension; not part of default SeaMonkey build 1999-12-06 06:32:12 +00:00
unistring.c xmlterm changes only; 2000-03-31 04:14:39 +00:00
unistring.h xmlterm changes only; 2000-04-01 23:42:18 +00:00

README

 base --- core source code for XMLterm and LineTerm

XMLterm may be invoked in one of two ways:
 1. By loading "-chrome chrome://xmlterm/content/xmlterm.xul" in mozilla, or
 2. By running the stand-alone executable "../geckoterm/xmlterm".
The diagram below shows the control-flow/layering hierarchy for both ways
of invoking XMLterm.

              XMLterm control-flow/layering hierarchy
              =======================================
  
          mozilla-executable               geckoterm-executable
                 |                                 |
       ../ui/content/xmlterm.xul                   |
                 |                                 |
       ../ui/content/xmlterm.html       ../ui/content/xmlterm.html
                 |                                 |
          mozXMLTermShell              ../geckoterm/mozGeckoTerm
                 |                              |        |
                 +--------------+---------------+        |
                                |                  mozSimpleContainer
                          mozXMLTerminal
                                |
            +-------------------+--------------------+
            |                   |                    |
     mozXMLTermSession    mozLineTermAux      mozXMLTermListeners
            |                   |                    |
            |                   |                    |
      (rendering...)       (LineTerm)           (user input)
                       (pseudo-TTY/shell)


15 Mar 2000
============================================================================
FILES:

The core source code for XMLterm in this directory consists of two distinct
families of files, those with names that begin with the prefix "moz" and all
the other files. The former are the Mozilla-specific portions of XMLterm,
written in C++. The remaining files constitute the Mozilla-independent portion
of XMLterm, referred to as "LineTerm".

============================================================================
LINETERM:

LineTerm is a line-oriented terminal program, in some respects similar in
functionality to the GNU Readline package. It is completely independent of the
Mozilla source code, is written in plain C, and dually licensed under GPL and
MPL.

============================================================================
INTERFACES:

lineterm.h              Plain C interface to LineTerm
                          (used by mozLineTerm)

mozILineTerm.idl        Scriptable XPCOM/XPCONNECT interface to LineTerm
                          (not used at the moment)

mozILineTermAux.h       XPCOM interface to LineTerm, with extra features
                          (used by mozXMLTerminal)
 
mozIXMLTermShell.h      Scriptable XPCOM/XPCONNECT interface to XMLterm
                          (used by the Javascript glue code in the XMLterm
                           start page at ../ui/content/xmlterm.html)

mozIXMLTerminal.h       XPCOM interface to XMLterm
                          (used by mozXMLTermShell, ../geckoterm/mozGeckoterm)

mozIXMLTermStream.h     XPCOM interface for displaying HTML/XML streams in
                          IFRAMES (used by mozXMLTermSession)


IMPLEMENTATIONS:


mozLineTerm.h
mozLineTermcpp             Implementation of mozILineTerm, mozILineTermAux
                             Uses LineTerm to access shell

mozXMLTermShell.h
mozXMLTermShell.cpp        Implementation of mozIXMLTermShell
                             Uses mozIXMLTerminal to create XMLterm

mozXMLTerminal.h
mozXMLTerminal.cpp         Implementation of mozIXMLTerminal,
                                             nsIDocumentLoaderObserver, and
                                             nsIObserver
                             Uses mozILineTermAux to create LineTerm
                             Uses mozXMLTermListeners to capture user input
                             Uses mozXMLTermSession to display input/output

mozXMLTermListeners.h
mozXMLTermListeners.cpp    Implementations of nsIDOMKeyListener,
                                              nsIDOMTextListener,
                                              nsIDOMMouseListener,
                                              nsIDOMDragListener

mozXMLTermStream.h
mozXMLTermStreamcpp        Implementation of mozIXMLTermStream


CLASSES:


mozXMLTermSession.h/cpp    Class to manage session input/output display
                             (used by mozXMLTerminal)
                             Uses mozIXMLTermStream to display streams

mozXMLTermUtils.h/cpp      Abstract class for static utility functions
                             (for use by all classes)

============================================================================
The following are dually licensed under MPL and GPL:

LineTerm package:

lineterm.h        Public interface to LineTerm

ltermPrivate.h    Private common header file

ltermManager.c    LineTerm manager
ltermIO.c         Overlapping I/O functions
ltermInput.c      Input handler
ltermOutput.c     Output handler
ltermEscape.c     Escape sequence handler

Low-level packages:

ptystream.h
ptystream.c       Stream-like interface to Unix pseudo-TTY

tracelog.h
tracelog.c        Simple tracing/logging diagnostic library

unistring.h
unistring.c       Simple Unicode manipulation library

============================================================================