fdesign man page

fdesign — Forms Library User Interface Designer


fdesign fdesign [-xformoptions] [-options] [files]


fdesign is a GUI builder that helps in the construction of graphical user interface in a WYSIWYG ("what you see is what you get") way by allowing the user to directly manipulate various objects, such as buttons, sliders and menus etc.  Once a satisfactory UI is constructed, the user can save the composed interface into a set of external files. Files with the extension '.fd' contain all information about the objects and can be read in again by fdesign. The files with C code and header files when compiled and linked against the Forms Library, generate code that at run-time constructs the exact same interface as the ones seen within fdesign.

A variety of output languages is possible via external filters.  As of this writing, C, perl, ada95, Fortran, pascal, and PostScript output filters are known to exist.


fdesign accepts all standard Forms Library command line options as well as the following:


Prints a brief summary of all command line options. This option does not require a connection to the X server.


Prints the current version of fdesign and exits.

-geometry geom

Specifies the prefered size and location of main working area in which the UI is to be constructed.

-convert fdfile-list

This option prevents fdesign from attempting to make a connection to the X server. The file list following this flag is converted to C code directly.

-dir destdir

output any converted files in destdir.

-unit pixel|point|mm|cp|cmm

selects the unit of measure for object geometries. For non-pixel unit, the interface created is screen resolution independent and may be desirable for many applications. Note that for typical screens, point (about 1/72 inch) and mm may be too coarse and subject to round-off errors. Use cp (centi-point, 100th of a point) and cmm (centi-mm) instead.


selects an alternative format for the generated C code where global variables are used for the UI components.


requests the output of main program template.


requests the output of callback function template.


requests the emission of font/server resolution variation compensation code.

-I headerfile

uses an alternative header file instead of the default forms.h in the output C code.


requests relaxed C syntax checking.


This option specifies that instead of emitting the c code for the user interface, PostScript code should be emitted.


This option requests ada95 code output


This option requests perl code output.


This option requests Fortran code output.


This option requests pascal code output.


suppresses the output of UI code. Only the .fd file is written.

The most useful Forms Library command line options are

-display host:dpy

This option specifies the X server to connect.


This option prints the version string of the Forms Library, with which fdesign was build.

-name appname

This option specifies the application name under which resources are to be obtained, instead of the executable name. appname should not contain . or *. fdesign.


The program understands all of the Forms Library's resource names and classes as well as the following

control.geometry (class Control.Geometry)

specifies the geometry of the control panel. Currently the size is ignored.

unit (Unit)

specifies the default unit of measure. Default is pixel.

attributes.geometry (class Attributes.Geometry)

specifies the geometry of the object attributes panel. Currently the size is ignored.

align.geometry (class Align.Geometry)

specifies the geometry of the object align panel. Currently the size is ignored.

xformsHeader (class XFormsHeader)

specifies the header filename generated in the output C code. Default is forms.h

filter (class Filter)

specifies post-processing filter (an external executable name).

language (class Language)

specifies target language name.

Among the standard Forms Library resources, the following are most useful

xform.fontsize (class XFORM.FontSize)

specifies the font size used for most object labels.

xform.pupfontsize (class XFORM.PupFontSize)

specifies the font size used in pop-up menus.

xform.browserFontSize (class XFORM.BrowserFontSize)

specifies the font size used for the text inside a browser.

See Also

xforms(5), fd2ps(1L)


Copyright (c) 1996-2002 T.C. Zhao <tc_zhao@yahoo.com> and Mark Overmars <markov@cs.ruu.nl>
Since 2002: GNU Lesser General Public License
Maintainers: Jean-Marc Lasgouttes, Angus Leeming and Jens Thoms Toerring <jt@toerring.de>

Home Page



November 2013 Version 1.2.0 Forms Library