Libraries now carry a technology association and
only libraries associated with the current technology
can be selected.
To enforce proper update, cancel() will be used upon
change of technology. This avoids side effects when
changing the technology without notifying the library
selection widgets.
The MainWindow::cancel method has been generalized to
cover the functionality of cm_cancel without the
exception handling.
This enables font packages: packages can now provide fonts by
featuring a "fonts" directory with the font layouts.
This commit also adds the capability to dynamically add fonts.
The Glyphs system is decoupled from the application's system
path and the BASIC.TEXT PCell parameters are non-cached to
enable dynamic updates.
The effect was: when drawing a shape on a single layer, all
layers have been redrawn. This was changed such that only
the affected layer is actually redrawn.
* Refactoring: no more "box+exclude" regions - they
can be emulated using a NOT with the same result
* "confinement" of regions inside recursive shape
iterators
* setters and getters for complex regions in GSI,
confinement
* more unit tests, some bug fixes
- Added some tests
- Performance improvements for insert of
regions into shapes
- Added LayoutLocker for that purpose
(locks a layout against updates temporarily)
- Improved implementation on RecursiveShapeIterator
with complex regions: will now check if a shape
is really inside the region.