- Remove an unnecessary patch[*].
- Use build.sh to install binaries and reduce diff between Makefile
for FreeBSD and for Linux in the distribution.
Pointed out by: till plewe[*]
* Editing capabilities. "klayout" in it's basic form still
operates as pure viewer. However, a mode is available that
enables editing capabilities. See Editor mode quickstart manual
for a more detailed description
* Some RBA extensions: i.e. conversion from "double" type
polygons to "integer" type ones.
* A default layer table can be configured in the "Application"
tab of the setup dialog. This table will be loaded whenever a
layout is opened or created.
* A installer for Windows is provided now.
* Properties are supported on instances now as well.
* Code is compatible with gcc 4.3.0 now.
* Enhanced compatibility with SunStudio 11 compiler (in
particular in RBA).
* Various bug fixes (i.e. in GDS reader and OASIS writer).
The affected ports are the ones with gettext as a run-dependency
according to ports/INDEX-7 (5007 of them) and the ones with USE_GETTEXT
in Makefile (29 of them).
PR: ports/124340
Submitted by: edwin@
Approved by: portmgr (pav)
* Several RBA extensions: i.e. alternative methods replacing
different 'new' variants by one 'new'. Markers now can be
filled.
* Fixes for the bugs mentioned in the issues list.
* OASIS and GDS writing capabilities. Menu functions are
provided to save a layout and single cells as well as RBA
extensions that allow to write a layout. See Saving a layout
or parts of it for details.
* Rulers and markers are drawn with a thin halo in background
color to enhance their visibility. This can be switched off in
the setup dialog if this is not desired. The following
screenshots illustrate the differences:
* A couple of RBA extensions: API's for shape properties, rulers
and geometry selections.
* A bugfix for the OASIS reader (sometimes crashing the reader
on CBLOCK-compressed input)
* A function to descend into a cell in the hierarchy but keeping
the context, which is shown in dimmed colors. This function
can be found in the "Display" menu and is called "Descend". To
use this function, select a shape or instance inside the cell
into which to descend. "Descend" then enters the next cell
along the path that leads to the selected shape or instance.
* The mouse wheel can be used to zoom in and out.
* Shift+right mouse button pressed now allows to "drag" layout
in a "Google maps" fashion.
* Copy & paste now is available for layers as well.
* A ruby console is provided where ruby commands can be executed
interactively.
* The way how the selection is displayed can be configured
now (color, line width and vertex size).
* The interrupt signal now is enabled again even if Ruby is
activated (Ctrl+C now works again).
* Support for arbitrary angles on cell instances.
* A bugfix for the OASIS reader (CTRAPEZOIDS have not been read
in some cases). The OASIS reader now uses shape arrays to
acchieve are smaller memory footprint in some cases.
* Multiple transformations are now allowed on layer source
expressions (see Transforming views and property selectors for
a detailed description).
* Rulers now are configurable to a large extent. Multiple ruler
templates may be defined from which a certain ruler type can
be choosen. Some of the new ruler styles are no
longer "rulers" but rather "annotations". See Ruler properties
for a description of that feature.
* Last, but not least: KLayout now can be scripted to some
extend using Ruby as the scripting language. For more
information about this feature, see RBA introduction.
* Some bugs were fixed in the OASIS implementation. CBLOCK
compression now is supported. Forward cell name
references (numerical ID is used before being associated with
a string) are supported as now. File global properties are now
read correctly. A bug reading certain CTRAPEZOID objects was
fixed.
(Still, forward references are not allowed for text/property
strings or property names).
* A layout properties dialog has been added that shows basic
properties of the layout such as top cells, layers and others.
* The "Select Cell" dialog has been enhanced with the capability
to hide and show multiple cells in the cell list.
* A "zoom fit" mouse gesture was implemented: moving the mouse
up and right with the right mouse button pressed now fits the
current cell into the window. Moving up and left still zooms
out.
* A bug in the GDS2 reader, dropping polygon points in rare
cases, was fixed
- OASIS files can be read as well now. The reader automatically
determines the kind of file. OASIS layer names are supported. Due to
the complexity of the OASIS specification, or more precisely the
effort required to test a reader for meeting the specification, OASIS
support currently is regarded to be in "beta" state.
- Layers can now be organized hierarchically. Layers can be grouped
which allows to control visibility and other properties for the group
as a whole. Layers can be removed from the layer view list or new
layer views can be created.
- The layout can be transformed (rotated, shifted, mirrored) now. This
transformation is specified in the layer panel as a part of the layer
source specification. An optional transformation can be applied per
layer or layer group. This way for example, different layouts can be
aligned over each other.
- Shape properties now are supported. Each shape may carry optional
properties that are read from GDS or OASIS files. A property selector
can be applied per layer view, so that a layer only shows these shapes
that match the given property selection.
- As an experimental feature, the inverse layout tree can be
visualised by allowing the minimum hierarchy level to go into the
negative range. The effect of this is, that a cell is shown in the
context of all of it's direct parents, if the first hierarchy level is
set to -1. If set to -2, the cell is shown in the context of all of
it's parents and grandparents and so on. Since there is no particular
optimiziation for this feature, performance may be poor, if a cell
must be painted in a huge number of contexts. In addition, the context
displayed does not participate in selection or ruler snapping.