Extended the "property" command and modified the way that properties

are handled.  Properties were previously only character strings,
which had become cumbersome because properties were being used for
mask hints and bounding boxes, with the necessity of constantly
converting values from string to integer and back, which can cause
a performance impact as well as just being messy.  The main difference
to the command is the addition of an optional first keyword argument
for the property type, which can be "string", "integer", "dimension",
or "double".  All types except "string" can consist of multiple
values.  Multiple values can be specified as separate arguments on
the command line, so that, for example, values of FIXED_BBOX or
MASKHINTS_* no longer need to be quoted.  In addition, this completes
the handling of "units" implemented recently, as all properties of
the type "dimension" can be entered in the current units, will display
in the current units, and will scale with the database.
This commit is contained in:
R. Timothy Edwards
2026-02-18 10:48:47 -05:00
parent 7e9b6fb61e
commit cb30ac369b
26 changed files with 1489 additions and 781 deletions
+2 -2
View File
@@ -326,7 +326,7 @@ extBasic(def, outFile)
}
/* Check for "device", as it modifies handling of parasitics */
propptr = (char *)DBPropGet(def, "device", &propfound);
propptr = DBPropGetString(def, "device", &propfound);
if (propfound)
{
/* Remove parasitics from local nodes */
@@ -1702,7 +1702,7 @@ extOutputParameters(def, transList, outFile)
* and device name, and if detected, add the type corresponding to the
* device name to the mask so it gets handled, too.
*/
propptr = DBPropGet(def, "device", &propfound);
propptr = DBPropGetString(def, "device", &propfound);
if (propfound)
{
char *devname;