X-Windows


      The Engineering Workstations have adopted the MIT Xll windowing system and the FVWM window manager as the default user interface for all workstations.
X-Windows       X11 has emerged as a relatively standard graphical user interface for most Unix-based workstations on the market today. The XWindows system operates as a client-server model with X clients (i.e., xclock, xterm, etc.) communicating with an X-Windows server. Because all graphical operations are carried out by the server and not by the client itself, it is possible for the two programs (server and client) to run on different machines. This feature permits one to display graphics from a program on any machine capable of running the X server. Communication takes place over a Unix socket connection when the client and server are both running on the same machine. When running on different machines, communication takes place via a TCP/IP connection.

      X-Windows is also unique in that it is not tied to any particular operating system or hardware. Systems such as Microsoft Windows integrate their graphic abilities heavily with the operating system and hardware, while X11 runs on a wide array of machines, including IBM RS/6000s, Suns, HewlettPackards, 386 PCs, Macintoshes, and many other systems.

FVWM

      The FVWM Window Manager (specifically fvwm95) is the default window manager used by EWS. It consists of a library of functions that can be used in client programs and interact with the MIT X11 server to produce a particular "look and feel", such as raised buttons, pull-down menus, etc. For more information on fvwm95, please see the EWS FVWM Manual.

      EWS also supports other window managers such as fvwm2, Motif, and the Common Desktop Enviroment (CDE).

 

Starting X-Windows       The Engineering Workstations utilize the X-Windows Display Manager program (xdm). When using xdm, the X server runs constantly, so there is no need to start it manually. Xdm creates a box on the screen where you type your login and password:

      If your login and password are valid, the Window Manager (fvwm95) is started, and a few "standard" X clients are started in a button bar. The default login screen looks like:



To exit your session, simply click on the "Exit" button on the button bar.
Using X-windows Anatomy of an Xterm Window and FVWM Window Frame

      Below is a screen shot of a typical xterm window, using the default fvwm95 window frame (set to mimic Microsoft Windows 95). The Window Frame is the portion of the window which allows the user to interactively alter the physical characteristics of the window. All windows have an identical Window Frame.

The important parts of the window frame are:

The Title Bar - Displays what the window contains

The Window Operations Button - Has a menu with useful window utilities

The Minimize Button - minimizes the window

The Maximize Button - stretches the window 3 different ways:
  • Click-and-hold: stretches the window vertically
  • Single Click: stretches the window but does not cover the taskbar or button bar
  • Double Click: stretches the window to cover the entire screen

The Kill Button - closes the window


      To select a window, put the mouse pointer over any portion of the window. To bring a window into the foreground, click on any portion of the window frame.

Obtaining an additional xterm window

      There are several ways to open an xterm window and many options when doing so. The two simplest methods to open a new window are by executing an xterm from a command line, or by selecting a new window from an FVWM pull-down menu.

A new xterm window may be opened at any time by typing the following at the command line of any existing window:

xterm &

      A new xterm may also be opened by selecting a window from an FVWM pull-down menu. To view the FVWM root menu, move the cursor out of a window onto the background and press and hold the left mouse button. While holding the left button, move the cursor to the New Window menu. When selected, the menu brings up a submenu with small, medium, and large window sizes (sizes of window and font). Move the cursor over one of the window sizes and release the mouse button, and a new xterm window will open. If you are using FVWM95, the Start menu also contains a New Window menu.

Changing the size of a window

      To interactively change the size of a window, move the cursor to one of the corners or edges of a window frame. While the cursor is over an edge or corner, press and hold the left mouse button. You will notice that as the mouse is moved (continue pressing the left button), a "rubber band" representation of the window will move with it. If you selected an edge, only that edge will move, changing the size of the window in either the x or y dimension. If a corner was selected, that entire corner (including its attached edges) will move, changing the size of the window in both the x and y dimensions.

      Another way to change the size of a window is to use the FVWM window resizing tool. To use this tool, click the left mouse button on the Window Operations button on the window frame and select Resize Window. Then, just click-and-hold the left mouse button over the window frame and drag to resize the window.

Moving windows around the screen

      To move a window from one location on the screen to another, position the cursor over the title area of a window frame and press and hold the left mouse button. While continuing to hold the mouse button, move the cursor. Once the left mouse button is released, the window will move to the selected location.

 

Customizing X-Windows Customizing FVWM

      In FVWM2 and FVWM95, the only features that should be customized by the users are the menus and the buttons on the button bar. To customize FVWM, you first need to obtain a copy of an fvwm startup script. Startup scripts may be obtained for either FVWM2 and FVWM95. Editing the startup files is the same for both FVWM2 and FVWM95. The default startup files have been heavily commented for convenience, but here is an overview of how to edit the menus and button bar buttons:

      First, open the startup file using your favorite text editor. Then, go to the appropriate section of the starup file (Menus or Buttons).

Menus
To create a new menu, type the lines:

DestroyMenu {menuname}
AddToMenu {menuname} \
{title} Title

For each menu item, on a separate line:
+ "menu item" code

Codes:
Title: Intuitive, no?
Exec: Execute Operation
Nop: No Operation
Popup: Call specified menu
To use Fvwm modules and functions, just type in the module/function name

For a separating line:
+ "" Nop

Buttons
The buttons on the button bar appear in the same order as they appear in the startup file. To add a button, highlight the text for any other button and paste where you would like the button to appear in the button bar. Then edit the text to suit your needs. A slash (/) breaks up text on a line that is too long to appear on the screen.

Customizing X-Windows

      By default, X-Windows starts up with several xterm windows. To add your own defaults, create a file called .XClients in your home directory. Set permissions on this file by typing:

chmod 711 .Xclients

on the command line. Inside this file, enter the command line for any X-windows application you wish to startup whenever you log in. Be sure to end each line with an ampersand (&). To start a text-only application, use the line

xterm -e application &


For further information, ask any EWS Operator, or post
a question to the EWS newsgroup uiuc.org.ews


Back to the table of contents