- A complete sweep of cleanup to suppress allmost all compiler warnings.
* ./hurricane/doc/hurricane:
- New: Documentation cleanup and update, particularly on the new Layer
derived classes.
* ./hurricane/src/hurricane,
./hurricane/src/isobar,
./hurricane/src/viewer:
- New: Creation of new methods, more explicit on DbU. Based on a to/from
naming scheme.
- New: Python support extented to include all objects needed to configure
through python scripts.
- Change: Finally understood what's causing the _XOPEN_SOURCE redefinition.
Basically the Python.h must be included first before any other
include. The type-puned problem will remains still (that is a Python
problem, not our own).
- Change: In DisplayStyle, uses shared_ptr for DrawingStyle instead of
custom made reference count.
- New: In Query, adds an accessor to get the current path.
- Bug: In NetExternalComponents, every component of an external net was
considered as an external one. Now only truly external components
are considered.
* ./hurricane/src/isobar:
- New: StratusScript, dedicated Stratus script laucher.
- Bug: In CellWidget, when drawing selecteds Gos, the loop variable was
not reset between loops resulting in incomplete display.
* ./hurricane/src/isobar:
- New: In PyHorizontal & PyVertical, adds mutator methods.
- Bug: target_link_libraries() must be put back for OSX Snow Leopard
(doesn't seems to affect Leopard). As I do not have an OSX under
my hand it's untested and is likely to fail at that point.
* ./hurricane:
- Bug: In Instance, correct support for Instance::PlacementStatus::Code.
- New: NetExternalComponents python object wrapper, moves
getExternalComponents() from Hurricane module into that new object.
- New: Breakpoint python object wrapper, to allow stratus1 to stop each
times it calls the viewer.
- Change: In PyHurricane, UpdateSession is now a true object with static
methods.
- Change: In BreakpointWidget uses a local event loop mechanism that no
longer consumes 100% of a CPU while doing nothing... (copied from
Qt's sources of QDialog).
- Library linking: there must not be "target_link_library()" for libraries,
only when building binaries. Avoid clashes between static module
or class variables, and strange reinitialisation of those variables.
- Change: Boost is now always linked staticly.
* ./hurricane/src/hurricane:
- New: TextTranslator to allow translation to and from text & HTML.
- Change: In Exception, make uses of TextTranslator to correctly display
exception text when in graphic mode.
* ./hurricane/src/isobar:
- New: Script, small object to wrap around Python scripts.
- Change: In Instance & Cell, do *not* materialize unplaced instances.
This is to avoid overloading the QuadTree at point (0,0) and besides
has no senses. Uses the PlacementStatus state.
- Bug: In Viewer CMakeLists.txt, put tool include directories first.
- Change: adopt a tree layout compliant with the UNIX FHS.
* includes under TOP/include/coriolis2.
* shared datas under TOP/shared/coriolis2.
* docs under TOP/share/doc/coriolis2.
* configuration under TOP/etc/coriolis2
* ./crlcore:
- Change: In Environment, comply to the new tree layout, search configuration
files under TOP/etc/coriolis2/.
* ./knik:
- Change: In flute, comply to the new tree layout, get the "POW*.dat" files
from TOP/share/coriolis2/flute-2.4.
libraries gets installed in "lib64" instead of "lib".
buildCoriolis.py sets automatically LIB_SUFFIX for cmake.
coriolis2.spec modificated to uses lib64 on 64 bits.
- Change: In the CMakeLists.txt, in all the install commands remove all
the leading "/" as they prevents the CMAKE_INSTALL_PREFIX to be took
into account. It was nevertheless working because buildCoriolis.py was
using DESTDIR which is prepended anyway.
* ./goodies:
- Change: In buildCoriolis.py, no longer uses the DESTDIR but instead
CMAKE_INSTALL_PREFIX.
- Bug: In PaletteWidget, do not derive from QScrollArea. Instead uses it
as a child widget. This solves the refreshing problem of the Palette.
As a rule now: never derives from anything other than QWidget.
- New: GotoWidget, not having this feature finally unverved me enough for
beeing implemented. You can specify an (x,y) on which the view will
be centered and an aperture which gives the size of the view smallest
side. It's a way of specifying the zoom level (as the zoom is not
meaningful for users). An aperture of "zero" disable that feature,
that is, zoom remains unchanged. The coordinates are integer which
are implicitly expressed in the current mode used by the viewer
(Symbolic, Grid, or Physical in micro-meters).
- Change: Big rewrite of how the Symbolic/Grid/Physical modes are sets
to/from the CellWidget. Impacted widgets are CellWidget &
DisplayFilterWidget.
Main changes are that there is no more "individual" setter/getter for
modes (setSymbolic(), setGrid(), setPhysical(DbU::UnitPower)) but one
with two arguments:
setDbuMode(int mode,DbU::UnitPower)
Signals & slots of the widgets also evolves into:
dbuModeChanged(int mode,DbU::UnitPower)
changeDbuMode (int mode,DbU::UnitPower)
- No more flickering. Was due to a one pixel moving of a two
pixel periodic pattern, which obviously result in a complete
pattern inversion. Now shift by two pixels, hoping there is
no "3 pixels periodic" patterns...
- As a side effect, it introduce a "multiplicator effect" on
mouse movement, but it could be useful (avoid big displacement
of the mouse).