uic(1)

NAME
uic - Qt user interface compiler

SYNOPSIS
uic [options] file

DESCRIPTION
This page documents the User Interface Compiler for the Qt GUI application framework. The uic reads a user interface definition (.ui) file in XML as generated by Qt Designer and creates corresponding C++ header or source files. It also generates an image file that embeds raw image data in C++ source code.

Generate declaration:
uic [options] <file>

Generate implementation:
uic [options] -impl <headerfile> <file>
        <headerfile>: name of the declaration file

Generate image collection:
uic [options] -embed <project> <image1> <image2> <image3> ...
        <project>: project name
        <image[1..n]>: image files

For convenience, uic can also generate declaration or implementation stubs for subclasses.

Generate subclass declaration:
uic [options] -subdecl <subclassname> <baseclassheaderfile> <file>
        <subclassname>: name of the subclass to generate
        <baseclassheaderfile>: declaration file of the baseclass

Generate subclass implementation:
uic [options] -subimpl <subclassname> <subclassheaderfile> <file>
        <subclassname>: name of the subclass to generate
        <subclassheaderfile>: declaration file of the subclass

GENERAL OPTIONS

-o file
    Write output to file rather than to stdout.

-nofwd
    Omit forward declarations of custom classes in the generated header file. This is necessary if typedef classes are used.

-tr func
    Use func() instead of tr() for internationalization.

-v  Display the version of uic and exit.

USAGE
uic is almost always invoked by make(1), rather than by hand.

Here are useful makefile rules if you only use GNU make:

%.h: %.ui
        uic $< -o $@
%.cpp: %.ui
        uic -impl $*.h $< -o $@

If you want to write portably, you can use individual rules of the following form:

NAME.h: NAME.ui
        uic $< -o $@
NAME.cpp: NAME.ui
        uic -impl $*.h $< -o $@

You must also remember to add NAME.cpp to your SOURCES (substitute your favorite name) variable and NAME.o to your OBJECTS variable.

(While we prefer to name our C++ source files .cpp, the uic doesn't care, so you can use .C, .cc, .CC, .cxx or even .c++ if you prefer.)

SEE ALSO
http://www.trolltech.com/

AUTHOR
Trolltech AS <info@trolltech.com>