Commit Graph

75 Commits

Author SHA1 Message Date
Tim Edwards ed8117784e Corrected three annoying errors: (1) Select net method had been
changed to ignore labels below the top level of hierarchy.  This
turned out to be a bad idea.  However, the original behavior was
problematic due to confusion over what part of the hierarchy the
labels were in.  The new behavior prefixes each label with the
cell hierarchy, eliminating both problems.  (2) Corrected the
problem where the attachment box for rendered labels is not
displayed if the label name is not in the viewing area.  (3)
Corrected the problem where redirection of input from the layout
window to the console window with the ":" command gets inadvertently
canceled;  this turned out to be due to a missing "*bypass" in
front of the command that finds the output scale to display the
pointer coordinates, and this was happening whenever the mouse was
moved while typing in a command.
2020-02-14 09:36:30 -05:00
Tim Edwards 2ca9511152 Added fix for SVG output. This brings back the original behavior
of generating scalable output.  Some libcairo update had caused
the output to use the wrong version of SVG by default, which
generates an SVG-wrapped PNG data block, which is not scalable,
and not what was intended with the "plot svg" command.
2020-02-07 11:38:00 -05:00
Tim Edwards 4c5f027104 Correction to the configuration for distributed install. 2020-01-28 12:29:44 -05:00
Tim Edwards bc00b5578b Implemented a new configuration variable "dist_prefix" for
distributed installations, where the immediate installation location
is different from the final installation location, but in the case
where it is not desirable to put the entire install hierarchy as a
subdirectory of DESTDIR.
2020-01-28 10:40:01 -05:00
Tim Edwards 7373d55c55 Corrected a problem from the last commit that causes error messages
in the toolkit Tk window when any parameter is modified, due do the
use of a variable before its being defined in the dialog update.
2019-11-22 11:37:04 -05:00
Tim Edwards 27ed2bf975 Modified the toolkit to take a selectlist with the special variable
name "gencell" and use that to create a selection that can change
between (compatible or somewhat compatible) device types.
2019-11-21 15:48:24 -05:00
Tim Edwards adb4d2613d Added indexed selection to the PDK toolkit script (returns an index
from a selection, which can then be used to index into other lists.
This lets one selection be made on a list of arbitrary names, and
then additional parameters can be linked together with the same
index).  Also, implemented (finally!) the "offset" parameters of
the "slots" function (as advertised in the documentation).
2019-11-20 13:01:14 -05:00
Tim Edwards e1783a42a9 Added a "DRC manager" window option. This allows DRC errors to be
categorized by error type and scrolled through conveniently.  However,
it needs work dealing with finding the actual error bounds.  The
"DRC count" counts tiles, which is tile-plane-geometry-specific, and
"DRC listall why" fractures errors both over tiles and over the square
areas that the interactive DRC splits the layout into, for performance.
The DRC error plane needs to be changed to hold different types for
each error class, so that errors can be scanned by boundary instead of
by tile (work to be done).
2019-11-15 10:26:04 -05:00
Tim Edwards 5e9f274f65 Modified the way magic does wiring so that when working on a grid,
the wires stay centered on a centerline with respect to each other.
Also corrected the long-standing minor issue that the outline
drawing of the wire does not update when using the mouse scroll
wheel, making it unclear that the wire size has changed until the
wire position changes.
2019-04-23 14:32:11 -04:00
Tim Edwards bb0af34441 Corrected an obscure error that causes the background of the layout
window to change after hiding a layer using the toolbar and then
refreshing the layout.  Fixed by saving and restoring the graphics
state around the routine that configures the toolbar image.  Also
added a check to CifPaintCurrent to guard against using an unassigned
ClientData record as a pointer (causes a crash), and added braces
around "expr" values in the Tcl wrapper, which reportedly results in
faster execution of the expression.
2018-10-23 08:44:04 -04:00
Tim Edwards bb480ae31e Cleaned up the library manager a bit, making sure both columns appear,
formatting headers for the columns, and adding a filter for items with
matching technology and a checkbutton to turn off the filter.
2018-04-16 11:39:44 -04:00
Tim Edwards 8faf572604 Corrected the "Text..." dialog to auto-update ports after making
a port so that repeated uses of "apply" won't fail because the
port number is already used.  Corrected the "port remove" command,
which didn't work, and corrected the script to do "port exists"
before "port index" so that the latter won't complain if the label
is not a port.  Same changes made to magic-8.1.
2017-12-14 16:05:32 -05:00
Tim Edwards 741df0fe01 Removed the "macosx" definition from the configuration file, which
got copied over from another project but apprently causes serious
issues with the OSX compilation.
2017-10-14 18:42:24 -04:00
Tim Edwards cfccdb84c1 Rewrote the configuration scripts, makefiles, and some initialization
routines to use the Tcl and Tk stubs libraries.
2017-10-13 10:28:07 -04:00
Tim Edwards 536e198ee8 Corrected typo in call to cairo_surface_destroy, incorrectly
written cairo_destroy_surface (fails to run with Tcl <= 8.5,
runs with Tcl 8.6 and "load -lazy" but then creates a
potential crash condition).
2017-09-15 11:22:52 -04:00
Tim Edwards 1d3bb0d698 Corrected problems having to do with color (blue and green were swapped)
and incorrect call to cairo_set_source_rgba which is in an unused
function and has no effect except with versions of Tcl less than 8.6
where "load -lazy" is not available and unknown functions cause
immediate exit.  Cleaned up remaining references to OpenGL in the
Cairo code, and updated the copyright and acknowledged Chuan Chen, who
coded the Cairo interface.  No attempt yet to deal with memory leaks
caused by calling Cairo "create" functions without the accompanying
"destroy" functions.
2017-09-12 15:42:08 -04:00
Chuan Chen 1bda1206db Remote changes at Fri Sep 1 14:41:47 EDT 2017 by chuan on vivaldi 2017-09-01 14:41:47 -04:00
Tim Edwards 21d558c67d Changed the definition of CPP again so that even in the absence of
the python preprocessor version, the techfiles and .magicrc file
will get the correct arguments, without affecting the use of CPP
in the configure script.
2017-09-01 08:40:58 -04:00
Chuan Chen a40c1f21a7 Remote changes at Wed Aug 30 16:34:42 EDT 2017 by chuan on vivaldi 2017-08-30 16:34:42 -04:00
Chuan Chen 432777a5b1 Remote changes at Tue Aug 29 12:55:06 EDT 2017 by chuan on vivaldi 2017-08-29 12:55:06 -04:00
Chuan Chen 2aaa1667ac Remote changes at Fri Aug 25 14:23:05 EDT 2017 by chuan on vivaldi 2017-08-25 14:23:05 -04:00
Chuan Chen e4b6825b95 Remote changes at Thu Aug 24 17:50:54 EDT 2017 by chuan on vivaldi 2017-08-24 17:50:54 -04:00
Chuan Chen 77da51d416 Remote changes at Thu Aug 24 17:24:48 EDT 2017 by chuan on vivaldi 2017-08-24 17:24:48 -04:00
Tim Edwards 088fc759c4 Set of changes updating version 8.2 to the level of 8.1, since 8.2
development had been halted since it was first created back in April.
Version 8.2 is now the official development version, with the first
development push to create a Cairo graphics interface.
2017-08-01 22:14:42 -04:00
Tim Edwards 231a299b16 Initial commit at Tue Apr 25 08:41:48 EDT 2017 by tim on stravinsky 2017-04-25 08:41:48 -04:00