This document provides a summary of the changes between releases. The section headings in this document correspond to the tags used within the repositories. While not guaranteed, we will endeavor to keep the latest master set of files compile-able and functionally correct.
Release date: 9th July 2017. The main change for this release is that the QEPlugin library has been split the into two distinct libraries which are:
QEFramework - the functional library which contains the widgets themselves together with support functionality. qegui and any other bespoke display managers programs will need to link against this library.
QEPlugin - strictly the widget plugin library usable by any application using the ui loader, such as qegui and designer. The QEPlugin library is dependent on the QEFramework library.
Both libraries are part of the the qeframework repository, with QEFramework built from the qeframeworkSup application and the QEPlugin library built from the new
qepluginApp application. Using linux-x86_64 as an example EPICS host architecture the libraries are built and installed into:
This means that QT_PLUGIN_PATH needed not change as the plugin library is installed into a directory called designer (as was previously "faked" by use of
a symbolic link). Application building using the framework library need to reference QEFramework as opposed to QEPlugin.
Because the qepluginApp build uses the qeframeworkSup, the following has been added to the qeframework configure/RELEASE file:
This need to be configured to point to the qeframeworkSup top directory. Unfortunately one cannot say QE_FRAMEWORK=$(TOP). Please see comments in configure/RELEASE.
There have also been a number of other changes to qegui and qegramework since release r3.4.3 as outlined below. Apart from referencing the QEFramework library there have been no other changes to qeByteArrayTest, qeMonitor, qeReadArchive etc.
For windows - if the main window is off screen, then re-position windows to position (0,0)
Introduced independent font scaling capability. Use the -f options. Run qegui -h for details.
Modified QEConfiguredLayout, QEFileBrowser, QELog, QERecipe, QEScript to scope local enumeration definitions so that they don't clash if two or more headers using in same compilation unit.
mpeg - more version related conditional compilation.
Added $$(EPICS_BASE)/include/compiler/msvc to the include path and for windows defined EPICS_CALL_DLL when compiling the QE framework.
Updated some of the EPICS aware widget designer icons to be distinct from non EPICS aware counter parts.
QEPvProperties - ensured correct field referenced when fields are sorted. Also added RMOD, ADEL, MDEL, ALST, MLST and SYNC fields to the build in motor record field list.
QEPlotter and QEStripChart - save, set and restore all line styles when drawing graphic markups.
Add forceSign boolean property to widgets using string formatting, the default value is false.
Introduced independent font scaling functionality.
QEPVLoadSave - ensure all array elements are of the same and a suitable type before writing to the channel.
windowCustomisation - include a QAction object as opposed to inheriting from QAction. This is to support running on MAC OS.
QEPlot - remove outward dependency on QWT, so that plugin library build does not need to include QWT header files, and do a general tidy up. Also inherit from QEFrame in order to provides the standard properties.
Release date: 5th June 2017. This release basically consolidates the transition from SourceForge to GitHub, and also accommodates the support of headless builds (on Windows). However, it also include a major bug fix and a number of minor functional changes
qegui - modified the about dialog to include both the EPICS and QWT versions
QEScratchPad avoid segmentation fault in drag drop handling - check before de-referencing.
QEScratchPad - use comma separator for the value QELabel widgets.
QEGraphic - set minimum size - keep Qt5 happy.
Modify contextMenu to allow Edit PV action selection criteria to be specified as opposed to hard coded to Engineer User Level and enable by default for QEPVProperties and QEScratchPad.
Truncates strings to 40 chars before attempting to write DBF_STRING mode to a channel.
Added .gitignore files to each repostory
Component App/Sup make files are now more OS independent
Updated sample .ui files to use current widget names (long over due).
Release date: 29th April 2017.
This is initial release at GitHub. This is functionally equivalent to the last SourceForge release despite the overall restructure.
Refer to SourceForge for all history prior to release r.3.4.2 as the SourceForge history has not been transferred to GitHub.