Skip to main content

A tool for converting EDM displays to QT

Project description

This documentation resides at https://controls.als.lbl.gov/alscg/dmtoqt/latest.

Overview

dmtoqt takes EDM files (.edl) as input, and writes Qt Designer UI files (.ui). It takes advantage of EPICS-aware Qt widget frameworks to mimic the intent and appearance of the original EDM user interfaces as closely as possible.

Synpopsis

Invoke dmtoqt like:

python dmtoqt.py --help
usage: dmtoqt.py [-h] [-v | -q] [-p PATH] [-c COLORS]
                                   [-f FRAMEWORK [FRAMEWORK ...]]
                                   file [file ...]
Convert EDM files to epicsqt-aware Qt ui files (for more details, please visit
https://controls.als.lbl.gov/alscg/dmtoqt)
positional arguments:
        file File(s) to convert. Glob-style wildcards may be used.
                 If no extension is provided, .edl will be added.
                 Output goes to {file}.ui
optional arguments:
        -h, --helpshow this help message and exit
        -v, --verbose Turn on verbose output
        -q, --quiet Be vewwy quiet
        -p PATH, --path PATHPath in which to look for input files and write output
                files
        -c COLORS, --colors COLORS
                Path to colors.list file. If not provided, will look
                in $EDMOBJECTS, $EDMPVOBJECTS, /etc/edm/edmobjects
        -f FRAMEWORK [FRAMEWORK ...], --framework FRAMEWORK [FRAMEWORK ...]
                Use framework "EpicsQt" and/or "caQtDM". If only one
                argument is provided, only that framework will be
                used; if both are specified the best match for each
                widget will be chosen. Default is to use EpicsQt only

Running dmtoqt

Normally, the only arguments required are the filename(s) of EDM files to be converted. These may be glob-style wildcards, in which case all matching files will be read.

Examples:

One or more input files:

python dmtoqt.py linac.edl booster.edl

Reads linac.edl and booster.edl from the current working directory, and produces linac.ui and booster.ui in the same directory. EpicsQt widgets will be produced.

Specifying a path:

python dmtoqt.py -p /usr/local/epics opi/*.edl

Reads all .edl files in /usr/local/epics/opi, and writes .ui files in the same directory. The filenames will match the input filenames; that is, if a file /usr/local/epics/opi/linac.edl exists, /usr/local/epics/opi/linac.ui will be written.

Forcing use of caQtDM Widgets:

python dmtoqt.py -f caQtDM linac.edl

Reads linac.edl from the current directory, and writes linac.ui. Only caQtDM widgets will be used. (CAUTION: caQtDM is not fully supported as of this writing)

Using multiple frameworks:

python dmtoqt.py -f caQtDM EpicsQt linac.edl

Reads linac.edl from the current directory, and writes linac.ui. Widgets will be EpicsQt or caQtDM, depending on which framework is most suitable for the input EDM widget. (CAUTION: Since caQtDM is not fully supported, this may not always provide optimal results.)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dmtoqt-1.0.0.tar.gz (78.7 kB view hashes)

Uploaded Source

Built Distribution

dmtoqt-1.0.0-py2.py3-none-any.whl (16.9 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page