The NetPhantom Terminal Window

A new terminal emulator window look-and-feel as well as full clipboard cut/copy/paste functionality is now provided. Support for user-defined settings, e.g. fonts, colors, rule cursor, window size and placement.

The terminal window and its dialog boxes are actually a Phantom Runtime application called TERMINAL.PHR in the terminal subdirectory on the server. This application can be customized and e.g. translated into another language.

But this is not all: it is extendable by means of new toolbar buttons, menu items, pull-down menus, dialog boxes, etc, with code written in Java on the server-side -- no extension is required whatsoever on the client side.

To extend the Terminal Application with new functionality, click here.


Terminal properties

Terminal properties can now be specified on an end-user basis; a properties file is stored on the client machine. The properties are display options including rule cursor, edit options, the terminal font and colors, window size and placement.

The properties file name is .NetPhantomClient.properties and is stored in the directory of the users' home directory concatinated with the user ID, e.g. C:\Documents and Settings\myuserid\myuserid under Windows XP (the reason to concatinate with the user ID is that some operating systems does not provide a "personal" home directory on the PC, rather a "global" home directory for all users).


Sample properties file contents

  #Thu Sep 11 11:25:45 CEST 2003
  CursorNonBlinking=0
  RuleCursorLineStyle=1
  PasteTextWrapping=1
  HostColors=0000009696f988ed88a5f5f5f26f6f...
  BoldFont=1
  PromptOnParse=0
  SaveOriginalFieldSpacing=0
  FontSize=0
  RuleCursor=0
  WindowBounds=286,182,841,593
  FontName=Lucida Console
  RuleCursorOrientation=3
  DoNotOutlinePresentationSpace=0
  CutCopyParsing=0


Changing terminal session

If enabled by the server administrator, the current terminal session can be changed without affecting the currently connected session(s). To access the Change session dialog box, choose the menu item File - Change session.


Configuring the Terminal Window

Use the Server Administration program to configure the Terminal Window and follow the points below.

  1. Select the menu item Configure - Server - Base.
     
  2. Select the Applications notebook tab, and make sure that an Application name NP_CLIENT_TERMINAL exists and points to the runtime file terminal/TERMINAL.PHR. If not, add a new application with the following data, and make sure to load it.


     

  3. Select the Host notebook tab. Default settings that are used for all host sessions (unless specifically overridden for a host session, see #5 below) are specified on the notebook tab in the fields below.


     

    • Default application should be set to a loaded Application name.
       
    • Default application class is used for extending the terminal application (see Extending NetPhantom Terminal Application) and should be left blank.
       
    • A user can change terminal session, and in order to control to which session he/she is allowed to change to, specify a list of host IDs in Default allowed host IDs. The special entry * indicates all configured host sessions.

  4. Each host session now have a description (that is displayed in the terminal window title bar and in the Change session dialog box):


     

  5. To override the default terminal application settings for a specific host session, use the fields as described below.


     

    • Application should specify a loaded Application name.
       
    • The Application class is used for extending the terminal application (see Extending NetPhantom Terminal Application) and should be left blank.
       
    • A user can change terminal session, and in order to control to which session he/she is allowed to change to, specify a list of host IDs in Allowed host IDs. The special entry * indicates all configured host sessions, and - specifies the default settings for all sessions. Leaving this entry blank will the allowed host IDs to be empty and thus can a user not change session.

  6. Restart the server.


Manual configuration of the Terminal Window

First the runtime application used for the terminal window must be defined and loaded as an application. This is done in the [Application] section as below (items in bold are the required changes):

[Application]
load=MYAPP1 MYAPP2 NP_CLIENT_TERMINAL MYAPP3
NP_CLIENT_TERMINAL=terminal/TERMINAL.PHR

Then, the host session(s) must be configured. Each host session can be configured individually (e.g. with a different language of the TERMINAL.PHR application. To avoid the requirement to specify an application for all host sessions, a default application can be specified. The table below describes all items that applies the terminal application settings in the [host] section:

To use the default terminal application provided with NetPhantom, specify:

[host]
defaultApplication=NP_CLIENT_TERMINAL

defaultApplication If specified, should be the name of the terminal application (e.g. NP_CLIENT_TERMINAL as the example above showed).
defaultApplicationClass If specified, should be the class name of the terminal application Java implementation extending the server class se.entra.phantom. server.TerminalApplication.
defaultAllowedSessions A default list of host session IDs that an end-user can change session to. If this entry is empty or not present, the menu item File - Change session will be disabled unless overridden by a host ID-specific definition. The list of host sessions corresponding to the specified host IDs are displayed (in the specified order) in the listbox in the dialog. The host IDs should be specified without separator, e.g. the host IDs A, M, B, Q and C (in that order) are specified as defaultAllowedSessions=AMBQC. The wild-card character * can be used to specify all available host sessions.
X.application
(where X is the host session ID)
If specified, should be the name of the terminal application. If not specified, the defaultApplication will be used.
X.class
(where X is the host session ID)
If specified, should be the class name of the terminal application Java implementation extending the server class se.entra.phantom. server.TerminalApplication. If not specified, the defaultApplicationClass will be used.
X.description
(where X is the host session ID)
An optional description of the terminal session. This description is seen in the title bar of the terminal window and also in the Change session dialog box.
X.allowedSessions
(where X is the host session ID)
A list of host session IDs that an end-user can change session to. If this entry is empty, the menu item File - Change session will be disabled. If it is not specified, the defaultAllowedSessions entry is used instead. The wild-card character * can be used to specify all available host sessions.