			Java Electric change log ( MAIN branch )

NOTE: Please place changes under the version that will be released next.

************************* Everything below here was announced in the 8.04 release *********************************

************************* Version 8.04z: *********************************

IMP: (9/19/06, GVG) Refactorization in Fill generator. Build.xml was also updated.

BUG: (9/19/06, GVG) Fixing again Bug #1215.
FIX: Trailer and Header writers used the exactly the same code.

BUG: (9/18/06, SMR) Auto-stitch may connect contact to wrong side of transistor (Bug #1226).
FIX: Prevent arc-to-node routing on well layers.

IMP: (9/18/06, DN) Default value of useClientServer option is off.

************************* Version 8.04y: *********************************

BUG: (9/15/06, SMR) Technology editor cannot handle PCB technology.
FIX: Fixed conversion from tech-to-lib and from lib-to-tech to handle circles and dots.

BUG: (9/14/06, DN) Assertion error in layer drawing (Bug #1224)
FIX: In LayerDrawing.drawList combine both VectorCircle cases.

BUG: (9/14/06, GVG) Design Rules dialog not working properly for TSMC90 and many wide rules
FIX: designRulesEditChanged fixed.

BUG: (9/14/06, SMR) Interactive sizing fails on rotated nodes (Bug #1201)
FIX: In SizeListener.getNewNodeSize(), reallocate farthest point.

IMP: (9/14/06, GVG) Improvements in FillGenerator dialog to give access to fills with cap transistors.

IMP: (9/14/06, SMR) Layers preferences warns you when changing the color of
     a layer that is transparent...it will affect other layers.

BUG: (9/14/06, SMR) Cross-library copy may copy too many cells (Bug #1222).
FIX: When multiple items are selected, send them all for copying at once.

BUG: (9/13/06, DN) ExceptionInInitializerError in initAllTechnologies due to custom user preferences (Bug #1219).
FIX: In Layer.newInstance check only factory colors.

BUG: (9/13/06, GVG) AFG not working properly with min spacing distance between metals
FIX: getting the correct DRC value.

BUG: (9/13/06, DN) AssertionError in Cell.addNode after library rename (Bug #1220).
FIX: In NodeInst.newInstance/ArcInst.newInstance search for spare nodeId/arcId.

IMP: (9/12/06, GVG) 3 new dummy layers in TSMC90. RPDMY was added into rpo poly resistors.

BUG: (9/12/06, GVG) More fixes for foundry setting and project settings.

BUG: (9/12/06, SMR) Going up hierarchy may show wrong export (Bug #1217).
FIX: In EditWindow.upHierarchy() change history if port is selected.

BUG: (9/12/06, SMR) Fixed Silicon Compiler to show results; fixed compile
     bug in Routing Preferences; fixed Splash screen in MDI mode; removed
     separate TSMC180 gate generation.

BUG: (9/11/06, GVG) drc missing metal notch violations (bug #1145)
FIX: Attempts to fix #483 broke the notch violations.

************************* Version 8.04x: *********************************

IMP: (9/11/06, JKG) Added import/export command for project settings,
removed "write to disk" button from dialog

IMP: (9/11/06, GVG) Changes to define selected foundry for MoCMOS and TSMC90 independently.

BUG: (9/11/06, DN) Exception when renaming library (Bug #1216).
FIX: In Cell.update don't reuse old NodeInst when node prototype changed. 

IMP: (9/8/06, SMR) Redid Display Control Preferences to indicate status of algorithms.

BUG: (9/8/06, GVG) Few issues with Technology preferences stored as project settings.
     Also fixing a PolyBase bug affecting extraction code.
FIX: Making sure TechPref.technologyChanged is called properly.

BUG: (9/8/06, SMR) Crash when reading HSpice measurement files (Bug #1214).
FIX: Improved HSpiceOut.addMeasurementData() to handle all files.

IMP: (9/7/06, SMR) Removed "Easy Selection of Annotation Text" from Selection Preferences
     (It was never used...just an idle checkbox that does nothing).

BUG: (9/7/06, GVG) Switching of metal numbers in TSMC90 was not working since proj preferences were introduced
FIX: Call the TechPref.allTechnologiesChanged() or TechPref.technologyChanged(). These functions also included
UI refresh calls.

BUG: (9/7/06, SMR) Spice Trailer cards may duplicate the "." in the extension (Bug #1215).
FIX: In Spice.writeTrailer(), removed extra ".".

BUG: (9/7/06, SMR) Layers Preferences shows pseudo layers, confuses (Bug #1190).
FIX: Psuedo layers no longer shown.  Also, opacity no longer just for printers.

BUG: (9/6/06, GVG) DRC on old technologies not working since a long time ago.
FIX: Correct index for a pair of layers.

IMP: (9/6/06, GVG) Changes in Build.xml

BUG: (9/4/06, SMR) Transistors in component menu doesn't show text.
FIX: In TechPalette.rotateTransistor(), copy variables.

IMP: (9/6/06, SMR) Minor improvements to cell graphing.

BUG: (9/6/06, DN) Crash reading old ELIB libraries (MAGIC9 .. MAGIC11).
FIX: In ELIB.readThLibrary check if nextInCell == null.

BUG: (9/6/06, DN) Force quit and save does not save export name change (Bug #1175).
FIX: In FileMenu.forceSave show message box with name of directory where libraries are saved.

BUG: (9/6/06, DN) New Display algorithm not good with old layout technologies (Bug #1213).
FIX: In classes from technology.technologies make factory layer colors match factory transparent layer definition.

BUG: (9/4/06, SMR) Component menu doesn't show text.
FIX: In PixelDrawing.drawNode(), always draw text if "forceVisible" is true.

BUG: (9/4/06, DN) Text is invisible (Bug #1158).
FIX: Add LayerDrawing.canDrawRelativeText threshold to smarter reject small text.

IMP: (8/31/06, SMR) Attributes dialog no longer shows "ATTR_" prefix.

IMP: (8/31/06, GVG) Refactoring of DRC decks. Old MOSRules decomissioned and TSMCRules class became
the global under the name XMLRules. 180nm primitives are consistent resized according to rules
provided. Similar work is being done for 90nm primitives.
Surround distances are taken from decks, not from the Java code. Rules such as CUTSPA, CUTSPA2D
and CUTSUR were eliminated. DesignRules dialog was modified and only 1 value is required (instead of
unconnected/connected values).

IMP: (8/31/06, RK) PIE: runs on LoCo memory. The results are promising.

IMP: (8/30/06, SMR) Changed "Edit / Erase / Geometry" to "Edit / Erase / Selected"

FIX: (8/30/06, RK) Remove references to PIE in non-plugin code base.

FIX: (8/30/06, RK) Restore the NCC GUI User's manual. Somewhere along the way it disappeared!

IMP: (8/30/06, Tarik) First version of the new graph view based on prefuse.

IMP: (8/30/06, SMR) Moved "CVS" menu from "Tools" to "File".

IMP: (8/29/06, SAF) PIE: InterchangeParts are now properly retrieved as neighbors of 
     UniquePort Parts.  Fixed bug in grouping equivalent interchangeable ports.  Changed
     InterchangePart so that in normal NCC, the proper wire hash code is retrieved and
     the port to port matrix is modified by the current EquivRecord code.

IMP: (8/29/06, RK) PIE: hash code partitioning wasn't partitioning non-composite parts.
     I added more debugging printouts for hash coding process

IMP: (8/29/06, SMR) Combined waveform-window commands into one place.
     Former commands in "Tool / Simulation (Built-in)":
        Save Waveform Window Configuration to Disk...
        Restore Waveform Window Configuration from Disk...
     Former commands in "Tool / Simulation (Spice)":
        Refresh Simulation Data
     Are now in "Window / Waveform Window"

IMP: (8/29/06, SAF) PIE: Avoid computing hash codes using parts stripped away
    from islands/fixed equivalent island mapping.

BUG: (8/29/06, SMR) Resizing rotated nodes with outline information is bad (Bug #1201).
FIX: Transform the points when resizing.

IMP: (8/29/06) PIE: Add print method to SubcircuitExtractionResult to help debugging

FIX: (8/28/06) PIE: Ports are now separated by type properly.

BUG: (8/28/06, SMR) Waveform window sweep display bad (Bug #1210).
FIX: Changes to inclusion/exclusion now show immediately; sweep highlighting
     works now, and the overall sweep header has an option to remove.

IMP: (8/28/06, SAF) PIE: Active frontier hashing properly recognizes composite
     parts as still active and recognizes pseudo parts belonging to the same
     composite part as neighbors.

BUG: (8/28/06, SMR) GNUCap simulation output is wrong.
FIX: In tool.io.output.Spice.java, use "0" for "gnd" and supress "@" for GNUCap.

IMP: (8/28/06, SMR) Added new Export commands: "Re-Export Deep Highlighted Area"
     and "Re-Export Deep Highlighted Area, With Wired Ports".  Deep reexporting
     recursively examines cell instances, creating exports from the bottom of the
     hierarchy (Bug #726).

BUG: (8/28/06, RK) PIE: Backtracking bug hides much ambiguity, type string should be one to one with type code

IMP: (8/25/06, SAF) PIE: InterchangePart access of P2P matrix from shared info, ports 
     partitioned by wire equivalence classes.

IMP: (8/25/06, RK) PIE: Store CompositeInfo in CompositePart

IMP: (8/25/06, GVG) Code to count number of transistors in Schematics (bug #1209)

IMP: (8/25/06, RK) PIE: First cut at equivalent pins

IMP: (8/25/06, RK) PIE: Deal with topologically identical islands

IMP: (8/25/06, SAF) PIE: All pseudo part info created with cannonical port ordering.

IMP: (8/25/06, JKG) Added menu command for down hier in place to object, bug#733

IMP: (8/24/06, SAF) PIE: Hash using sub-cell port to port matrix when creating port
     to port matrix. Pins and pseudo-parts classified by equivalence type. 

IMP: (8/24/06, GVG) Function to count number of transistors in Schematics.

IMP: (8/22/06, RK) PIE: Composite Part Information prints out

IMP: (8/22/06, SMR) Improvements to node extractor.

IMP: (8/24/06, SMR) Made waveform improvements: (1) Can now use the
     right-button to drag signals from one panel to another (this copies them,
     instead of moving them). (2) Can now drag a signal from one panel to
     horizontal axis of another (Bug #893).

BUG: (8/24/06, JKG) Bug #975 - Keypad keys do not work over VNC
FIX: VNC transmits different key codes than normal, so I have added those keycodes to the 
menu items bound to keypad keys.

IMP: (8/23/06, RK) PIE: Composite Information begun

IMP: (8/23/06, SAF) PIE: Subcircuit island extraction and port to port matrix generation.

************************* Version 8.04w: *********************************

IMP: (8/23/06, JKG) Spice option to use cell model from file needs some enhancements (bug #1168)
Note from Gilda: Implemented during this released by JonG.

IMP: (8/22/06, SMR) Improvements to node extractor.

IMP: (8/22/06, RK) PIE: Create class CompositeInfo for creating Composite parts in netlist

IMP: (8/22/06, RK) PIE: Backtrack after successful comparison

IMP: (8/21/06, SAF) PIE: Support for composite parts in pie.strategy.StratHashParts.

BUG: (8/21/06, GVG) Exception when printing waveform (bug #1206)
FIX: Detecting if PrinterJob or ColorSupported is null.

IMP: (8/18/06, RK) PIE: Save EquivRecords before guessing

BUG: (8/18/06, SMR) GDS arrays are read incorrectly (Bug #1204).
FIX: In GDS.determineARef(), do not transform offset of array elements.

BUG: (8/18/06, SMR) Waveform window crashes when reloading with non-time X axis (Bug #1205).
FIX: Must reevaluate X axis signals when reloading; must save signals when X axis changes.

IMP: (8/18/06, SMR) Smart Text Placement now in its own Preferences panel,
     includes smart text placement for arcs (Bug #1058).

BUG: (8/18/06, SMR) TextDescriptor.withPos() does nothing.
FIX: Added td.setPos(p);

BUG: (8/17/06, GVG) Avoiding PS export and printing of document cells (Bug #1203). Some users
believe this is possible.
FIX: Detect View type and suggest to use "Text Cell Contents".

IMP: (8/17/06, RK) Put PIE into Tools menu. Make PIE pass regressions.

BUG: (8/16/06, SMR) Pad-frame generator regression fails.
FIX: Fixed AutoStitch.comparePoly to do proper port alignment test.

IMP: (8/16/06, RK) Create a new plugin, PIE for Port Interchange Experiment

IMP: (8/16/06, SMR) New commands in "Edit / Selection":
     "Select Next Like This" and "Select Previous Like This" (Bug #879).

BUG: (8/16/06, SMR) Primitive nodes don't auto-route (Bug #1176).
FIX: In AutoStitch.comparePoly(), don't exclude ports due to quad-tree.

IMP: (8/15/06, RK) Comment out obsolete code, old hash code partitioning

BUG: (8/14/06, SMR) Autorouter incorrectly connects arcs to rotated nodes (Bug #1199).
FIX: In AutoStitch.compareNodeWithArc, transform node polygons.

BUG: (8/14/06, SMR) Interactive sizing of rotated nodes is wrong (Bug #1201).
FIX: In SizeListener.getNewNodeSize(), determine new center properly.

BUG: (8/10/06, SMR) Color chooser patch not always correct (Bug #1198).
FIX: In ColorPatternPanel.setColorPattern() set the preview color.

BUG: (8/10/06, GVG) PostScript Export ignores "instance names" flag (bug #1197)
FIX: Checking if "instance names" is on/off

************************* Version 8.04v: *********************************

BUG: (8/7/06, GVG) auto-stitch exception (Bug #1194) due to refactoring done for AutoStitch and regressions (7/21/06).
FIX: check if lists are null.

IMP: (8/4/06, GVG) Selected layer pattern not highlighted in patterns palette (Bug #1193)
Basic marking done. It might be beneficial to rewrite the pattern selection section.

BUG: (8/3/06, GVG) Exception in LayerDrawing because of null layer in getRaster() (Bug #1191).
This seems due to artwork in layout cells.
FIX: If layer==null in LayerDrawing -> layer = Artwork.tech.defaultLayer. Similar fix with Graphics == null.
     In Technology.getShapeOfArc call setLayer for arrowed arcs.

IMP: (8/3/06, GVG) Different message dialogs in case of XML errors while importing DRC deck. Printing only parser
error in case of problems, not full trace.

IMP: (8/1/06, DN) EditWindow.getBlendingOrder don't put Generic.Gluph layer into blending order on solid layers.
     So essential bounds are not shown. 

IMP: (8/1/06, DN) EditWindow.getBlendingOrder uses LAYERS_BY_HEIGHT_LIFT_CONTACTS to sort layers.
    So every contact is higher than its upper metal. Requested by Jonathan Gainsley.

IMP: (7/30/06, DN) "Alpha blending limit" preference renamed to "Alpha blending overcolor limit".
    When zooming out below this limit, standard alpha blending composition rule is used.
    When zooming in above this scale, alphablending with overcolor composituin rule (as inMagic editor) is used.

BUG: (7/31/06, DN) Layer redisplay doesn't take stipple patterns from Cadence preferences (Bug #1190).
FIX: Add call of "setPatternLow" to "EGraphics.setLayer" and "EGraphics.recachePrefs" so that
     it updates "reversedPatterned".

IMP: (7/31/06, GVG) Colapsing pin names like vdd_*/gnd_* in vdd/gnd while exporting in GDS (Bug #1188).
This is for Fire/Ice extraction tool. A new flag in User GDS tab was added.

BUG: (7/31/06, DN) Deep zoom in can crash X11 servers because of large text.
FIX: In LayerDrawing.drawText limit text size to MAXIMUMTEXTSIZE = 200.

************************* Version 8.04u: *********************************

BUG: (7/30/06, DN) Layer outlines sometimes missing with new display algorithm (Bug #1187).
FIX: In LayerDrawing.expendedCellCached change "cell is too large" threshold from 1/2 to 1/32.
    This expands range of scales when outlines are visible.

IMP: (7/30/06, DN) "Alpha blending limit" preference is added to DisplayControlTab.
    When zooming out below this limit, an alpha blending composition rule (with opacity controlas) is used.
    When zooming in above this scale, a traditional electric composituin rule (transparent/opaque layers) is used.

IMP: (7/26/06, GVG) Refactoring AutoStitch to get regressions working.

BUG: (7/22/06, DN) N-well disappears in LayerDrawing.
FIX: In PatternedTransparentRaster.copyBits use "continue" instead of "return". 

IMP: (7/21/06, GVG) Request to add errors to list in real-time (bug #1169)
Done using option in User's preferences for DRC until issues with job queuing is clarified.

BUG: (7/21/06, JKG) CVS: IllegalArgumentException: URI is not hierarchical (bug #1184)
FIX: CVS only operates on files, however, so CVS will just ignore anything that cannot be converted to a file.

IMP: (7/21/06, JKG) Added option to writeLibrary to write only delib header if delib file.

TEC: (7/20/06, GVG) Default # metal layers in MoCMOS = 6. Second polysilicon in MoCMOS available by default.
Changes triggered by demo in SSC Sydney.

IMP: (7/20/06, DN) In LayerDrawing algorithm use alpha blending for both patterned and solid scales.

IMP: (7/19/06, GVG) Changes in 3D defaults in preparation for the SSC Sydney.

BUG: (7/19/06, GVG) Working directory path not updated properly (bug #1181)
FIX: Setting path for database file group explicitely

IMP: (7/18/06, GVG) Switching "External Reader JVM" on by default due to "small nanosim waveform takes forever to load" (bug #1177).

IMP: (7/17/06, GVG) Adding level control to AFG.

BUG: (7/17/06, GVG) Cell Info -> Graphically not working. Calling redisplay inside doIt() (bug #1180)
FIX: Move redisplay call to terminateOK().

IMP: (6/28/06, GVG) Changes in DRCToolTest to run DRC batch mode inclusing saving of XML file containing DRC ErrorLogger.

IMP: (6/27/06, RK) NCC: Rewrote hash code algorithm to make it strictly activity directed. This allows NCC to handle ambiguity more efficiently. (Bugzilla# 1165)

BUG: (6/23/06, GVG) demo.j3d was not loaded from electric.jar
FIX: Using URL and InputStream classes to upload files contained in jar.
 
BUG: (6/23/06, SMR) When doing cross-library copy and copying subcells,
     schematics don't copy with the icons (Bug #1130).
FIX: In CellChangeJobs.copyRecursively(), copy related views independent
     of "delete after copy".

BUG: (6/23/06, SMR) Using shift-right click to zoom out fails when down-in-place (Bug #1164).
FIX: In ClickZoomWireListener.mouseReleased(), transform coordinates when zooming out.

BUG: (6/22/06, GVG) DRC exclusion layer not working (Bug#1166)
FIX: Exclusion area was expecting that both geometries were completely inside the area.
     Changed to only 1.

************************* Version 8.04t: *********************************

IMP: (6/21/06, GVG) Cleaning Generation regression.

IMP: (6/21/06, GVG) BJT dummy layer for PNP transistors and LVS.

BUG: (6/21/06, GVG) No multi-cuts in native active contacts
FIX: Via layer MUST be last one defined in the primitive. This is not good!
Split of NT on native transistors to correct port assignments.

BUG: (6/21/06, GVG) Null exception in Spice netlister (bug #1160)
FIX: Detecting when transistor has null size

BUG: (6/21/06, GVG) Attribute text not visible with black background (bug #1161)
FIX: Fixed side effect while fixing 1150.

IMP: (6/21/06, RK) New method for Jonathan's cross probing: NetEquivlence.findEquivalentNetShortingResistors().
     Handles Networks connected to ports. Shorts Resistors. Untested.

BUG: (6/21/06, GVG) Working directory confused by Sun menu (Bug #1157)
FIX: Assura files are stored in path relative to the database file type group.

BUG: (6/20/06, RK) NCC: Refine the test for logical effort gates. Check for getDrive()
     and getdrive() instead of LEGATE (Bugzilla# 1139)

BUG: (6/20/06, RK) NCC GUI prints wrong cell names for root node in tree pane, (Bugzilla# 1156)

************************* Version 8.04s: *********************************

BUG: (6/20/06, SMR) "Smart select" broken (selects similar objects to
     what is already selected (Bug #1061).
FIX: In Highlighter.getSimiliarHighlight(), same types have same class,
     not different class.

BUG: (6/20/06, SMR) Centered, multiline text is shown left-justified.
FIX: In ElectricObject.getPolyList(), rotate node text only if not centered.

IMP: (6/20/06, GVG) Most of the changes in AFG for BIC tape-out.

IMP: (6/20/06, GVG) NT_N_ACTIVE pins and arcs. Adding NT_N MINWID=7.4

IMP: (6/19/06, GVG) Need NT_N_ACTIVE contacts (Bug #1148)

BUG: (6/19/06, GVG) Exception using the new algorithm while opening TSMC180.jelib (Bug #1150)
FIX: Catching cases where layer==null (Arcwork arrows) and assigning Generic.glyphLay.

BUG: (6/19/06, SMR) Deleting a locked node is always allowed (Bug #1152).
FIX: In CircuitChangeJobs.eraseObjectsInList(), remove locked nodes from the list
     of nodes to delete.

IMP: (6/19/06, SMR) Waveform window shows large numbers with engineering notation
     (Bug #1140).

IMP: (6/18/06, GVG) Generation regression got TemplateFill test and CMOSPLA test
     was moved to plugin package. Ability to run SaveLibrary in batch mode.

BUG: (6/17/06, GVG) Missed drc errors on poly resistor with W=4 (Bug #1146)
FIX: Nothing to fix indeed. The poly can't be smaller that w=4. Added the rule in
     the primitive

BUG: (6/17/06, GVG) If only primitive min size is violated, it should not saved
     the DRC dates.

BUG: (6/17/06, GVG) NT_N clearance to OD not checked correctly (Bug# 1149)
FIX: NT_N.C.1 added  into TSMC180.xml

BUG: (6/17/06, GVG) Minimum NT_N spacing error missed (Bug# 1147)
FIX: NT_N.S.1 added into TSMC180.xml

IMP: (6/16/06, GVG) AFG working gap value in case of "only around" option.

BUG: (6/16/06, GVG) Extraction not working? (Bug#1141). Regressions won't catch the problem.
FIX: Wrong flag to kick the job

************************* Version 8.04r: *********************************

IMP: (6/15/06, SMR) New option in mimic stitching: bus widths must match.

BUG: (6/15/06, SMR) Exporting PNG of waveform window alters color scheme
FIX: In WaveformWindow.getPrintImage() reset colors only if set.

IMP: (6/14/06, DN) "File|Export|JELIB (Version 8.04k)" command in debug mode to save libraries in old Jelib format.

IMP: (6/14/06, GVG) ToolTips for 3D tab (Bug #215).

IMP: (6/14/06, RK) New experimental command: "Tool -> NCC -> Copy All Schematic Names to Layout" for Jonathan Gainsley

IMP: (6/14/06, SMR) Expressions allowed in Array dialog (Bug #1100).

BUG: (6/14/06, SMR) Mimic stitcher responds to its own arcs (Bug #1048, #1134).
FIX: Routing.endBatch() now ensures that the snapshot was not from the router.

BUG: (6/14/06, RK) I repaired the gate layout generator regression (Bugzilla# 1137)

IMP: (6/14/06, GVG) (a) Added extra flag in GDS import user preferences to have option
     to simplify via contacts (for BIC). Only available in debug mode.
     (b) AFG attempts to detect elements overlapping that belong to same nets based on
     characteristics.
     (c) Able to run flat job in batch mode.

IMP: (6/14/06, SMR) Can now drag cells or cell groups from the explorer
     tree to another library in the tree, which does a cross-library copy (Bug #630).

IMP: (6/14/06, GVG) Changes in GeneralTab/IO/FileTypeGroup dialog to accomodate
     resetting of default values. These changes cover Bugzilla #397 and #1021.

IMP: (6/13/06, GVG) DRC and AFG exclusion layers available in LayerTab

BUG: (6/13/06, GVG) Search and replace "objects to search" persistence (Bug 1127)
FIX: lastSearch clear anytime the toggles are changed.

IMP: (6/13/06, SMR) Spline editing in outline mode shows the adjusted spline (Bug #165).

BUG: (6/13/06, SMR) Window scale not restored after "up hierarchy" (Bug #1099).
FIX: In ExplorerTree.editCellAction(), always call setCellWindow().

BUG: (6/13/06, SMR) Duplicating circuitry crashes (Bug #1120).
FIX: In Clipboard.java, the "down in place" transform was not being used properly.

IMP: (6/13/06, GVG) Ability to abort Mimic Stitch job.

IMP: (6/13/06, GVG) Changes related to groups associated to different file types to
     be able to store different paths depending on tools/features.

IMP: (6/12/06, RK) Add nand2LTen and nand2HTen to MOCMOS gate generator. (Bugzilla# 1119)

BUG: (6/12/06, SMR) Adding busses to the waveform window shows the signals
     in random order (Bug #1113).
FIX: In WaveformWindow.findSelectedSignals(), sort the selected signals by name.

BUG: (6/12/06, SMR) "Back" button doesn't ascend schematic hierarchy (Bug #1112)
FIX: In EditWindow.downHierarchy() record the schematic cell in addToHistory().

BUG: (6/12/06, SMR) Multi-object properties crashes (Bug #1106).
FIX: In GetInfoMulti.applyActionPerformed(), must handle special controls.

BUG: (6/12/06, SMR) Copy and paste of arcs that are offset from their
     port center adjusts the arcs to the center (Bug #1117).
FIX: In Clipboard.java, remember offset and restore it.

BUG: (6/12/06, SMR) Pasting when editing down-in-place creates objects with
     original (incorrect) orientation (Bug #658).
FIX: In Clipboard.java, code added to adjust orientation of paste, copy, and
     cut when editing down-in-place.

************************* Version 8.04q: *********************************

IMP: (6/12/06, RK) Speed up NCC "hierarchical with size checking" by taking advantage
     of restricted schematics (Bugzilla# 1116)

IMP: (6/12/06, RK) Restrict schematics so it's easier to tell if all instances of a
     schematic cell have the same transistor sizes (Bugzilla# 1115)

BUG: (6/12/06, GVG) Drc doesn't display error properly (Bug #1114). This is the case of two overlapping
     vias coming from two different cells.
FIX: In case of overlapping vias, the errorLog should only contain the rectangle that the 2 vias form.

BUG: (6/9/06, GVG) Inconsistent scale for angles in GetNodeInfo v/s GetMultiInfo (Bug#1109)
FIX: Values in GetInfoMulti.java were inconsistently scaled to integers.

BUG: (6/9/06, GVG) Bogus min area drc errors reported on dp_stageN{lay} (Bug #1111).
     Problem: the abort signal given by user was not considered when leaving the cell using the enumerator.
FIX: Extra condition added.

BUG: (6/8/06, DN) Display mode isn't chang immediately.
FIX: Call EditWindow.displayAlgorithmChanged() from DisplayControlTab.

BUG: (6/8/06, DN) Export->ReExport* broken (Bug #1107).
FIX: In PortInst.hasConnections().

IMP: (6/8/06, GVG) Electric needs a way to cycle through windows (bug #954)
     Final solution in CVS. Cycle through all WindowFrame windows + messages window
     added as dynamic message.

BUG: (6/8/06, SMR) Too much selected after "Up Hierarchy" (Bug #1105).
FIX: In EditWindow.upHierarchy(), set selection only if no previous cell
     history found.  In WindowFrame.setCellByHistory(), set only port
     or highlights, but not both.

BUG: (6/8/06, SMR) "Show ports on node" and other export highlighting
     crops text on the right side (Bug #1030).
FIX: In ExportChanges.showPortsAndExports(), draw text better.

BUG: (6/8/06, GVG) Waveform viewer does not display DC signals from EPIC output (Bug#1103)
FIX: Wrong boundary condition for end point events.

BUG: (6/8/06, GVG) exception when refining object selection in layout (Bug #1106)
FIX: detecting if currentChangeTypes array is null. Extra: typesafe enum added
     and rotation information is shown.

BUG: (6/7/06, SMR) Initial splash window obscures everything (Bug #822).
FIX: Splash window no longer insists on being topmost.

BUG: (6/7/06, SMR) "Up hierarchy" always shows a full-screen view (Bug #1099)
FIX: In EditWindow.setCell(), only fill the screen if no context.

BUG: (6/7/06, SMR) Inserting a "T" in an arc triggers mimic deletion of the
     arc (Bug #1101).
FIX: In MimicStitch.mimicStitch(), mimic arc deletion only if no creations
     were done.

BUG: (6/6/06, SMR) Reloading waveform windows crashes (Bug #775).
FIX: Prevent null pointer problem in HSpice signal data.

BUG: (6/6/06, SMR) Waveform window makes uneven height panels, and may clip
     Y axis values (Bug #1095).
FIX: Panel height no longer taken from previous panels; Y axis values forced
     to be visible even if they cross to the right of the origin.

BUG: (6/6/06, SMR) Auto-stitching makes incorrect wires (Bug #1096).
FIX: New quad-tree code fixed to ensure valid connections.

BUG: (6/6/06, SMR) "Back" button crashes if cell has been deleted (Bug #1097).
FIX: In WindowFrame.setCellByHistory(), test for dead cells.

IMP: (6/6/06, SMR) Created new Preferences panel "Display / Display Control"
     to select and control the 3 display algorithms.  Removed items from the
     "Display" section of the "General" preferences panel.
     "Always Prompt for Index when descending into Array nodes" is in "Nodes".
     The "layers" sidebar now has a slider for controlling opacity.  Also, it
     includes the "Generic" technology in debug mode.

BUG: (6/5/06, GVG) Edit->Change fails if instances are not the same (Bug #1087)
FIX: Change code shouldn't return false if it is not done with nodes in the list.

BUG: (6/5/06, SMR) Some commands crash when a text window is displayed (Bug #532).
FIX: Fixed the Array command and the Rotate command.

BUG: (6/5/06, SMR) PNG output of waveform window fails
FIX: In WaveformWindow.getPrintImage(), do not scale if there is no former image.

IMP: (6/5/06, SMR) Reversed the arrow in the spiceparts node "pulseCurrent"
     (Bug #1076) and added PWL node (Bug #950).

IMP: (6/5/06, SMR) Can now select multiple cells and regroup them (Bug #1086).

BUG: (6/5/06, SMR) Cannot resize nodes with outline information (Bug #1088).
FIX: In SizeListener.ScaleNode.doIt(), handle nodes with outlines.

IMP: (6/4/06, GVG) Configurable grid alignment buttons (full,half,quarter) (Bug #1083)

BUG: (6/3/06, GVG) Duplicating {lay} view also duplicates {ic} (Bug #1090)
FIX: If not the entire group is copied, only Schematics would trigger the copy of its icons.
     Problem introduced while implementing Bug #894.

IMP: (6/2/06, SMR) "Back" button now works with text windows (Bug #324).

************************* Version 8.04p: *********************************

BUG: (6/2/06, GVG) Still exception in Analysis.getSweep(index) due to how signals
     without sweeps are handled. This was introduced while fixing Bug #1077.
FIX: Detect if sweeps list is null.

BUG: (6/2/06, SMR) Excluding or including all sweeps in an analysis affects
     all sweeps in ALL analyses (Bug #1084).
FIX: In ExplorerTree.setAllSweepsAction(), compute sweeps under that node.

IMP: (6/1/06, SMR) Preferences XML is now properly formatted.

IMP: (5/31/06, SMR) Sped up waveform window when sweeps are included or
     excluded (Bug #1078).

IMP: (5/31/06, SMR) Adding an analog signal to an existing panel scales
     the panel in Y (Bug #1079).

************************* Version 8.04o: *********************************

BUG: (5/31/06, SMR) GDS input may crash (Bug #1081).
FIX: In Export.newInstance(), check for invalid names BEFORE checking for
     unique names.

BUG: (5/31/06, RK) NCC: print correct Wire counts in Part local partitioning mismatch diagnostics (Bugzilla# 1080)

BUG: (5/31/06, SMR) "Back" and "Forward" buttons don't handle "down in place"
     editing (Bug #1060).
FIX: In EditWindow, handle down-in-place data with other factors.

BUG: (5/31/06, RK) NCC: repair implementation of forced matching (Bugzilla# 713)

IMP: (5/31/06, SMR) "Select Object" now scrolls through the list as search
     text is typed. (Bug #965)

BUG: (5/30/06, GVG) Size interactively does not show preview highlight (Bug #1075).
FIX: SizeListener.java:mouseMoved() is active again (commented out in 1.34 version. Not clear why.

BUG: (5/30/06, DN) Client doesn't show fresh ExplorerTree on startup.
FIX: In ServerJobManager write latest snapshot on connection.
     In ClientJobManager show initial snapshot immediately.

BUG: (5/30/06, GVG) Include/Exclude options not working when more than 1 signal included a sweep (Bug #1077)
FIX: The code to retrieve the correct sweep of a given AnalogSignal was incorrect.
     Extra code and refactorization to guarantee the correct index is retrieved from the Explorer.
     Disable direct access to Analysis.sweeps and WaveformWindow.sweepSignals lists.

IMP: (5/30/06, SMR) Added drop shadow to highlighted text (Bug #747).

BUG: (5/30/06, SMR) Renaming a cell group that has heterogenous cell names
     fails (Bug #1073).
FIX: In CellChangeJobs.RenameCellGroup.doIt(), detect groups with different-
     named cells, and force them to the same group.

IMP: (5/30/06, SMR) New command: "Tool / Network / Show All Networks"
     shows every network in a different color (Bug #943).

IMP: (5/30/06, SMR) New "Technology" preference allows layout transistors
     to be rotated 90 degrees (Bug #369).

BUG: (5/30/06, SMR) IRSIM stimuli can get out of order.
FIX: In Analyser.newVector(), change the line
		afterSV.value = curTime + stepSze - insertTime / cmdFileUnits;
     to be:
		afterSV.value = (curTime + stepSze - insertTime) / cmdFileUnits;

BUG: (5/30/06, SMR) Waveform window crashes when too many panels (Bug #1071)
FIX: Fixed default panel sizes.  Also fixed other bugs in waveform window.

IMP: (5/30/06, DN) Refactoring of redisplay code. Class PixelDrawing_ for new redisplay code. 

IMP: (5/30/06, DN) Client Electric connects to a server machine specified in command-line "-client <serverMachineName>".

FIX: (5/26/06, RK) NCC: fix for regression failure 060526_0000

FIX: (5/26/06, RK) NCC: "Copy schematic names to layout" didn't copy names of both nets connected by polysilicon resistor (Bugzilla# 1069)

IMP: (5/26/06, RK) NCC: new annotation: forcePartMatch (Bugzilla# 713)

IMP: (5/26/06, SMR) When adding an export to a schematic, new icon export
     uses standard lead lengths. (Bug #902).

IMP: (5/26/06, SMR) Added new context-menu item in explorer tree:
     Cell Groups can be duplicated, copying everything in the group (Bug #894).

IMP: (5/26/06, SMR) Added command "Window / Special Pan / Match Other Window
     in X, Y, and Scale" to do all window matching at once (Bug #808).

BUG: (5/26/06, SMR) Undoing mimic stitching may trigger new stitching (Bug #1055).
FIX: In UserInterfaceMain.DatabaseChangeRun fixed spelling error, use "undoRedo"
     in call to "endBatch()".

BUG: (5/26/06, SMR) Crossprobing fails when there is an extra level of names
     in the simulation output file (Bug #1067)
FIX: In WaveformWindow.crossProbeWaveformToEditWindow() and findSelectedSignals()
     handle extra cell name in the signal names.

BUG: (5/26/06, SMR) Arc Preferences dialog lets you set negation where inappropriate.
FIX: In GetInfoArc.ChangeArc.doIt(), set negation only where allowed.
     Also disable the negation popup if both ends are disallowed.

BUG: (5/26/06, SMR) Typing a numeric key to change pin levels destroys
     the export name (Bug #1064).
FIX: In InteractiveRouter.MakeVerticalRouteJob.doIt(), only delete the pin
     if it is not exported.

BUG: (5/26/06, SMR) "Change" of arcs that includes "nodes with arcs" fails (Bug #1031).
FIX: In Change.replaceAllArcs(), corrected head/tail reversal, maintain node names.

IMP: (5/25/06, GVG) Cursor in Name field in Attributes dialog can be moved to the middle of the word.
     Done by not calling showSelectedAttribute(varKey).

BUG: (5/25/06, GVG) [Bug 1065]  New: NullPointerException on toggle head and tail (Bug #1065)
FIX: Indeed, the exception is in Toggle Port Negation. Exception was due to Highlight2 not serializable.
Code changed so list of ElectricObjects is used in the doIt() method.

IMP: (5/25/06, RK) NCC: add test for "forceWireMatch" to regression suite

IMP: (5/25/06, SMR) "Layers and Patterns" preferences has "Factory Reset" (Bug #1037).

IMP: (5/25/06, RK) NCC: Remove  print statements I put in for debugging Bugzilla# 969.

IMP: (5/25/06, GVG) Workaround for KeyBindings in EToolBarRadioButton for MacOSX (Bug #1056).
     Problem: JRadioButtonMenuItem doesn't handle accelerators well.
     In case of Command-S and S in two different functions, JRadioButtonMenuItem assumes
     are identical and a conflict is generated. Temporary workaround:
     Switch from JRadioButtonMenuItem to JMenuItem for EToolBarRadioButton on MacOSX.
     Thus the accelerators will be displayed and user can use toolbar icons to know what is selected.

IMP: (5/24/06, RK) Improvements to NCC GUI user manual

IMP: (5/24/06, GVG) List User Preferences in HelpMenu.

IMP: (5/23/06, GVG) Accelerators in ToolTip text of ToolBar buttons.

BUG: (5/23/06, SMR) Smooth zooming can crash (Bug #1054)
FIX: In ZoomAndPanListener.mouseDragged(), prevent negative scale.

BUG: (5/23/06, SMR) Mimic stitching doesn't show all cases when running interactively (Bug #1048).
FIX: In MimicStitch.MimicDialog, run new dialogs without redisplay.

BUG: (5/23/06, SMR) GDS Input ignores illegal export names (Bug #1044).
FIX: In Export.newInstance(), mangle illegal names before rejecting.

BUG: (5/23/06, DN) Electric doesn't display anything after the language assertion error (Bug #1054).
FIX: EditWindow.setScale throws IllegalArgumentException when scal is negative.
     RenderJob.doIt clears "runningNow" in finally block.

IMP: (5/23/06, GVG) Extra messages for Spice netlister export (Bug #1046, tail file appending).

BUG: (5/23/06, SMR) Waveform measurement doesn't display small numbers (Bug #1004).
FIX: In Panel.repaintOffscreenImage(), use convertToEngineeringNotation.

BUG: (5/23/06, GVG) Exception in Waveform viewer due to non-existing DC signals (Bug #1053)
FIX: Skip computeSmallestValues if no signals are found.

BUG: (5/23/06, DN) Null Pointer Exception in mimic unstitch (Bug #1047).
FIX: Check if end of deleted arc killed too.

BUG: (5/21/06, GVG) No calling of TechPref.sideEffect while reading cacheObj values from XML (Bug #1043).
     Noticed by loading XMl for TSMC.
FIX: cacheObj must be changed by calling Pref.setDouble/setInt/setString functions.

************************* Version 8.04m-8.04n: *********************************

BUG: (5/19/06, DN) Invariant "Names are unique" is not always true.
FIX: In Name.findTrimmedName don't override busy entry in hash array.
     Now all names must be unique, and multipart icons are not allowed
     (there is no way to unify them).

IMP: (5/19/06, DN) Warning in NetCell.addNetName about possible change to
     CaseSensitive network name matching in future versions.

BUG: (5/20/06) Changes are not "bolden" (Bug #1032).
FIX: Don't use "italic" more. "modified" flag, revision date and last desiner are set
    after all changes except DRC variable.

BUG: (5/20/06, DN) CellName.compareTo is inconsistent with CellName.equals .
FIX: Make CellName.equals case-sensitive.

BUG: (5/20/06, DN) Exception when deleting cell (Bug #1041).
FIX: Set mainSchematics in EThread. Check cell.isLinked() in ExplorerTree.convertValueToText.

BUG: (5/19/06, DN) VarContext is not serializable whne it contains killed export (Bug #969).
FIX: Remove "VarContext.pi" field. Maintain "EditWindow.selectedPorts" stack.

IMP: (5/19/06, RK) NCC: First cut at GUI User Guide. (Very Ugly) (Bugzilla# 1035)

FIX: (5/19/06, RK) NCC: clarify "can't build netlist" error (Bugzilla# 1035)

FIX: (5/19/06, RK) NCC: command to insert NCC annotations throws exception (Bugzilla# 1038)

IMP: (5/19/06, RK) NCC: I added a forceWireMatch annotation. This helps the user debug hash code violations. I updated the documentation as well. (Bugzilla# 713)

BUG: (5/19/06, DN) CrossLibMove doesn't mark changed the old library (Bug #1020).
FIX: In Library.removeCell() add setChanged().

IMP: (5/19/06, DN) Database assertion error on reload of library (Bug #1018).
FIX: In Update.UpdateJob.doIt fill libsToReload by reloaded libraries.
     Better diagnostics of non-serializable objects.

BUG: (5/19/06, DN) Pref.allPrefs list happens to contain nulls (Bug #1039).
FIX: Synchronize access to this Pre.allPrefs .

BUG: (5/19/06, DN) Can't write out library with dummy cells (Bug #1034).
FIX: Move askForChoice from io.output.Output to FileMenu.saveLibraryCommand.

BUG: (5/18/06, SMR) Changing color schemes doesn't affect waveform windows (Bug #1036).
FIX: In WindowMenu.whiteBackgroundCommand() and others, do fullRepaint.

BUG: (5/18/06, SMR) Left-aligned exports select badly on rotated nodes (Bug #964).
FIX: In Highlighter.findAllInArea(), must transform before calling setExactTextBounds.

IMP: (5/18/06, DN) JELIB/DELIB format has cellGroupName field into "C" line.
     Name of cell group is base name of a main schematics if any,
     otherwise shortest base name. On reading both legacy "G" lines and this new field
     are treated to gather cells into groups.

BUG: (5/18/06, DN) Client/server mode doesn't work.
FIX: Repair ClientJobManager.

IMP: (5/17/06, GVG) electric.log on MacOX is in user.home instead of user.dir (Bug #1033)

BUG: (5/17/06, DN) Nodable names must be unique (Bug #850).
FIX: Uniqueness of NodeInst names is database invariant.
     However, uniqueness of NodeProxies is not implemented yet.

BUG: (5/17/06, DN) Regression failed after export rename.
FIX: In library readers (Jelib, Elib, ReadbaleDump) always search exports by exportId.

BUG: (5/17/06, SMR) Bus pins don't select well (Bug #1012).
FIX: In ImmutableNodeInst.computeBounds(), ask the schematics technology
     for the bus pin's size.  One might be tempted to remove the "WipeOn1or2"
     factor from bus pins.  But then, they are always too large, and users
     complain that bus pins at the edges of icons cause the icons to grow.

BUG: (5/17/06, SMR) Cleanup pins doesn't remove zero-length arcs (Bug #1023).
FIX: In CircuitChangeJobs.Reconnect.reconnectArcs, make better check for obtuse angles.

BUG: (5/16/06, DN) Regression failed after export rename.
FIX: In Jelib reader always search exports by exportId.

BUG: (5/16/06, SMR) Including/Excluding multiple sweeps doesn't update explorer
     window (Bug #774).
FIX: In ExplorerTree.setSweepAction(), added call to updateUI().

BUG: (5/16/06, SMR) Waveform window draws numbers badly and creates
     new panels that may not align with others (Bug #1004).
FIX: Improved new panel creation code and "convertToEngineeringNotation"

IMP: (5/16/06, SMR) GDS input now handles invalid node names.  Also mangles
     duplicate export names so that indices don't change (Bug #988).

BUG: (5/16/06, DN) Exception in VectorDrawing (Bug #1002).
FIX: In VectorCache invalidate cache in EThread.

BUG: (5/16/06, DN) IRSIM command launches createWindow in EThread.
FIX: Runs Analyzer.startIrsim in GUI thread instead of Job.

BUG: (5/16/06, DN) Regression failed because of duplicate temporary name.
FIX: In NodeInst.newInstance(Cell,ImmutableNodeInst) update d.name on duplicate names.

BUG: (5/15/06, GVG) DELIB files can't be open with OpenDialog on Mac (#996)
FIX: Temporary fix: using Swing dialog even for MacOSX.

BUG: (5/13/06, DN) GDS import fails to complete (Bug #987).
     Database has slow NodeInst sorting, because it tries to save memory.
FIX: Sort NodeIns in GDS reader before supplying to database.

BUG: (5/13/06, DN) Bad behaviour with empty export name and temporary export name (Bug #993, Bug #1003).
FIX: Make valid export name a database invariant. ExportIds are taken as is, ExportNames are repaired in Export.newInstance.

BUG: (5/12/06, GVG) Shorten selected arc causes Exception (see log shorten-selected electric) (Bug #1001).
FIX: cell not setup in ShortenArcs job.

BUG: (5/12/06, GVG) Problems with text size <1 (Bug #986).
FIX: Consistent setting of min and max values in TexInfoPanel.java by adding Size.TXTMINPOINTS and Size.TXTMINQGRID.

IMP: (5/12/06, DN) In EidtKeyBindings dialog edit hidden submenu as "Shortcuts" submenu.

BUG: (5/12/06, DN) Exception when define accelerator for submenu.
FIX: In EditKeyBindings forbid editing accelerators of separators and submenus.

BUG: (5/12/06, DN) Russian manual is not properly displayed.
FIX: In ManualViewer.loadPage add explicitly name of encoding: "UTF-8".

IMP: (5/11/06, GVG) NT-N-transistor in TSMC180

BUG: NCC. Insert print statements to help debug Bugzilla# 969, 977

BUG: (5/11/06, GVG) NullPointerException on delete area (Bug #982)
FIX: ERectangle instead of Rectangle2D

BUG: (5/11/06, GVG) ClassCastException in KeyBindingManager:inputMap (Bug 981)
FIX: There were some wrong casts to List<String> instead of Set<String> in KeyBindingManager.java

************************* Version 8.04k-8.04l: *********************************

BUG: (5/10/06, DN) Exception in EMenuItem.getDescription (Bug #973)
FIX: For toolbar buttons which are not registered in menu, getDescrioption returns text.

BUG: (5/10/06, DN) -mdi crashing (Bug #972)
FIX: In TopLevel.getMenuBars check for topLevel == null.

IMP: (5/9/06, GVG) Catching any type of exception while flusing preferences such as java.lang.SecurityException.
This tends to crash regressions if they can't save preferences.

IMP: (5/9/06, RK) NCC Regressions print out system properties so I can figure out what version of jvm was used to run the regressions

IMP: (5/9/06, RK) Print out execution times for Assura LVS

BUG: (5/9/06, DN) No accelerator nor dimmed status updates on MacOSX (Bug #968).
FIX: Reimplement EMenu classes to generate standard JMenu.

IMP: (5/8/06, GVG) DRC InMemory data doesn't require UpdateDataJob

NOTE: It is versio 8.04l since May 8, 2006

IMP: (5/7/06, DN) Exports in memory database have both creation name (id) and user name.
    Disk files will have id only since 8.04l. Library reader can read future files, but
    it continue to save in old format (user names).

IMP: (5/6/06, GVG) Window Cycle changes

IMP: (5/6/06, DN) Better diagnostics in JELIB reader in case of renamed/deleted export.

BUG: (5/6/06, DN) Null pointer exception closing library - redisplay error (Bug #967)
FIX: In VectorCache.cellChanged use cellId instead of cell.

BUG: (5/5/06, GVG) Search and Replace text exception (Bug #963)
FIX: Code optimized and exception is caught and handled gracefully. Only one exception generated due to pattern.

IMP: (5/5/06, RK) NCC regression. Move contents of bean shell scripts into Java.

BUG: (5/5/06, DN) Sometimes VectorCache is not updated.
FIX: In VectorCache.forceRedraw and VectrorCellGroup constuctor.

IMP: (5/5/06, GVG) Working with Netbeans profiler: Many finished() functions added.
     In EMenuBar.Instance, LayerTab.finished(), Stimuli, HSpiceAnalogSignal,
     Analysis, AnalogSignal, TimedSignal, Signal gv = null in Poly

BUG: (5/4/06, DN) Deserialization of equal TestDescriptors returned different objects.
FIX: Implement TextDescriptor.readResolve to resolve unique TestDescriptor.
     Make TextDescriptor.Code an enumeration.

BUG: (5/4/06, GVG) Problems with ModifyNodeProperties job (no Bugzilla)
FIX: TextDescriptor.Code serializable

IMP: (5/4/06, DN) PixelDrawing takes shapes from VectorCache for faster redisplay. 

BUG: (5/4/06, DN) Wrong names of SelectObjects/SelectArea buttons.
FIX: Swap them in ToolBar.java.

BUG: (5/3/06, SMR) Auto Stitcher crashes wiring a node to an arc (Bug #958)
FIX: In AutoStitch.compRoutes.compare(), handle sorting arc wirings.

IMP: (5/3/06, GVG) [Bug 961] Ability to refresh simulation data with KeyBinding.

BUG: (5/3/06, GVG) "Easy selection of cell instances" off makes impossible to select primitive nodes with MouseOverHighlighter.
FIX: if (!findSpecial && !User.isEasySelectionOfCellInstances()) condition applied only if
     cell instance is found, not longer in phase 0

BUG: (5/3/06, GVG) "package into cell" throws exception (Bug #960)
FIX: We can't use Rectangle2D.Double as field in Job. They can't be serializable. Changed to EPoint+double

BUG: (5/2/06, GVG) Quarter motion button missing in toolbar (Bug #957)
FIX: Added into ToolBar.java. Left off in v8.04j.

IMP (5/2/06, JKG) Added CVS Page in HTML Manual

BUG: (5/2/06, GVG) Strange clean up of goodDRCdates in Quick.java (no Bugzilla)
FIX: Not cleaning the Data list if only errors.

IMP: (5/2/06, DN) Vector cache is moved from VectorDrawing to a new class as a preparation of
     further redisplay changes.

BUG: (5/2/06, DN) No marking library in bold after cleaning up NCC annotations (Bug #941)
FIX: Move clean up of NCC annotations to CheckAndRepairJob.

BUG: (5/1/06, GVG) Waveform viewer Measurement mode Can't zoom, fit window (Bug #934)
FIX: Initialization problem related to measurements

BUG: (5/1/06, GVG) Print info for selected node doesn't work (Bug #944)
FIX: More problems found. In LENetlister2.printResults(). comparing NodeInst now.

BUG: (5/1/06, GVG) Zoom when plotting HSPICE has wrong cursor (Bug #948)
FIX: WindowContext.setCursor() defined so WaveformWindow would be able to set cursor for each individual wavePanels.
     Remove unnecessary calls from wave.Panel to ZoomAndPanListener.setProperCursor(evt)

BUG: (4/28/06, GVG) Snapping problems in Clipboard.copyListToCell after fixing Bug #899.
FIX: Getting arc port information based on new node locations. This should fix 947 and 899.

BUG: (4/27/06, GVG) Exception in printing due to WindowFrame being null (Bug #953)
FIX: Detect wf==null in EditWindow.fireCellHistoryStatus() (dirty fix!)

BUG: (4/26/06, GVG) Get info dialog box remains behind other windows (Bug #949). Affecting only MacOSX apparently.
FIX: Fixing unexpected change done for bug #878.

IMP: (4/25/06, GVG) Aligning metals based on maximum numbers assigned to reserved tracks and spacing values in 
     template fill generator otherwise tracks get misaligned.

IMP: (4/24/06, GVG) Preparing AFG dialog box for release

IMP: (4/24/06, GVG) Tests plugin refactored. Added DRC tests for primitive nodes using TechEdit
     functions.

************************* Version 8.04j: *********************************

IMP: (4/21/06, GVG) Better handling of unknown HSPICE versions in Electric (Bug #942)

BUG: (4/20/06, GVG) print info for selected node doesn't work in LE (Bug #944)
FIX: Mistake when Highlight2 was introduced.

IMP: (4/20/06, GVG) Snapping to grid (Bug #899). Elements in Clipboard.copyListToCell() get snapped to grid.
     Similar to Bug #937 solution.

IMP: (4/20/06, GVG) Avoing null exception if Manual index can't be found (no Bugzilla)

IMP: (4/20/06, GVG) Making sure exports on icon are on grid (Bug #937)

BUG: (4/20/06, GVG) Inconsistent cell displayed after undo that deletes that cell (Bug #927)
FIX: Extra code in UserInterfaceMain.firePropertyChange to clean current cells in WindowFrame
     if they are not longer linked.

BUG: (4/18/06, GVG) SPICE template for CCVS fixed (reported by Ian).

IMP: (4/18/06, GVG) More changes in DRC dates.

BUG: (4/18/06, GVG) Exception in VectorCellGroup:clean because exports list is null.
FIX: Put the condition.

BUG: (4/15/06, GVG) ErrorLogger XML reader crashing if geom was null (NodeInst or ArcInst)
FIX: Skipping those cases and printing a message

BUG: (4/14/06, GVG) More fixes for Bug #931. The ones introduced on 4/13/06 were not sufficient.
FIX: It loads initial DRC variables from disk if values are kept on cache. ValidVersion variable not used
     for now. Later I might clean the code.

BUG: (4/14/06,DN) "fieldVariableChanged" doesn't work for Examine Jobs launched from client.
FIX: Add field to JobsTest.FakeJob. Fix EJob.serializeResult

BUG: (4/14/06, GVG) Exception from Tool->Network->ListGeometryOnNetwork (Bug #939) due to Examine job setting
     fieldVariableChanged variables. This is illegal for jobs running on client.
FIX: No fieldVariableChanged set.

IMP: (4/14/06, GVG) Re-arraging debug menus. Consolidated in DevelopersMenus and moved to tests plugin.

BUG: (4/14/06, DN) Exception when zooming layout with outlined layers.
FIX: Add PixelDrawing.drawOutline() with proper clipping.

BUG: (4/13/06, GVG) ErrorLogger writing invalid characters for XML parser such as ">" and "<".
     This is related to Bug #933.
FIX: Replacement of special XML characters. Extra changes: avoding crash in reading Assura if cell is null.

IMP: (4/13/06, GVG) Entering text (Bug #935). Implemented by adding a new item under EditMenu -> Text
     so KeyBindings can be used.

BUG: (4/13/06, GVG) Fix for DRC redoing on already checked cells (Bug #931)
FIX: Inconsisten caching of stored dates if you switch from data on memory to data on disk.

BUG: (4/13/06, GVG) Fix for Error logger loading (Bug #933)
FIX: Inconsistent DTD header after changes in highlight.

BUG (4/13/06, DN): Exception in NetworkManager after cell deletion.
FIX: In NetworkManager.updateAll use "l" instead if "i" in "some cells deleted" loop, 

BUG (4/13/06, DN): Concurrent modification in redispaly (Bug #909, #923, #932).
FIX: PixelDrawing.forceRedraw collects changed cells in a Set.
    Caches are invalidated later in a Job.

BUG: (4/12/06, GVG) Editing a {doc} view getting database problems (Bug #930)
FIX: ChangedCellText added in TextWindow.

BUG: (4/12/06, GVG) Null exception in new MenBar if debug is false (Bug #929)
FIX: Skip item==null in EMenuBar constructor.

BUG: (4/12/06, DN) Lose keyboard input, when the very first window is closed (#Bug 890).
FIX: Menu template classes are implemented. They are llisteners of keyboard event.
    No dependency of very first window.

BUG: (4/11/06, GVG) Wiring problems in Schematics (Bug 926). Due to rounding issues,
     startLoc.getX() == endLoc.getX() || startLoc.getY() == endLoc.getY() is never true in that particular case.
FIX: Condition using DBMath.

************************* Version 8.04i: *********************************

BUG: (4/11/06, DN) Batch output is too verbose.
FIX: In Main.UserInterfaceDummy.setProgressValue compare new procent with previous one.

IMP: (4/11/06, DN) Preparation for new revision of JELIB/DELIB format. It will happen in "8.04l".
     Versions "i", "j" and "k" can already read new format. They ignore new fields.

BUG: (4/11/06, GVG) Bug in mouseOver highlighter introduced on 4/5/06
FIX: Highlighter.overHighlighted() returns the unique element overlapping so mouseOver highlighter never grows more than 1.

BUG: (4/11/06, DN) Keyboard input doesn't work: z - zoom, s - select (Bug #925).
FIX: In EditMenu.java use KeyStroke.getKeyStroke(ch, 0) instead of KeyStroke.getKeyStroke(ch).

IMP: (4/9/06, GVG) Cleaning extra Comparators.

IMP: (4/9/06, DN) Menu API changed: Tools make generic menus EMenu which are
     used to generate actual JMenus for every window. This is preparation to fix bug #890.

IMP: (4/8/06, GVG) More changes in AFG including AFG exclusion regions working.

BUG: (4/5/06, GVG) Network highlight does not highlight (Bug #921). It also covers #716.
FIX: Major changes in Highlighter and Highlight2 classes.
(1). Making sure mouseOverHighlight contains only 1 element (changes in ClickZoomWireListener.mouseOver, Highlighter.findObject)
(2). Optimization in Highlighter.showHighlights().
(3). showInternalHighlight for NodeInst only highlights objects electrically connected to it only if 1 highlight element is drawn.
The code is not efficient and extremely time consuming. Eg. DrawTime(2415 HighlightEOBJ)=43925 msecs, DrawTime(1445)=10 msecs.
This might be a temporary solution until code is rewritten

IMP: (4/6/06, GVG) Adding AFG exclusion regions.

BUG: (4/5/06, GVG) Another NullPointerException when making certain layers invisible (Bug #920)
FIX: This is not a permanent fix, just detecting that index doesn't go over greekedCell.fadeImageColors.length.

BUG: (4/5/06, GVG) Highlighter selects wrong object when dialog windows are open (Bug #917).
FIX: Error in Highlight2.getInfo(): it changed eobj value.

BUG: (4/5/06, SMR) Export names are not incremented properly (Bug #916).
FIX: In ElectricObject.uniqueObjectNameLow(), check names without case.

IMP: (4/5/06, GVG) Expanding and marking cell in case of giving library in command line (no Bugzilla)

BUG: (4/5/06, GVG) Exception in TopLevel on MacOSX in case of -mdi and reading library from command line.
FIX: desktop instance created before that topLevel. Still unknown why creation of topLevel has problems on MacOXS

IMP: (4/5/06, GVG) Refactoring calling to Progress class. Extra interface added in UserInterface.

BUG: (4/4/06, GVG) Rolling back again those changes in NetworkHighlighter.java:TRIMMEDDISPLAY. The code
becomes extremely slow but affects Bug 716.
FIX: TRIMMEDDISPLAY = true

BUG: (4/3/06, DN) Not Serializable exception in IdManager (Bug #916).
FIX: Make Cell.idManager field transient.

BUG: (4/3/06, GVG) Null exception in Simulation.java if format is not correct but anIt.hasNext() == TRUE.
FIX: test if an==null in Simulation.java;732.

BUG: (4/3/06, GVG) Wrong icon in View->Edit Icon View if more than 1 icon is in the same group (Bug #915)
Cell.otherView() was retrieving first icon found in the group regardless if it belongs to the correct schematics.
FIX. Matching name as well.

IMP: (4/3/06, GVG) Cleaning gateGenerator and moving major regression code to GenerationTest. Gate regressions
have failed in the last two days due to modifications in Quick class that were not reflectedin test code. This should
prevent the failures in the future. All regression tests are available in Test->Generation menu.

IMP: (4/3/06, DN) Separate list for filled shapes in VectorDrawing.

IMP: (4/1/06, GVG) Adding message dialog when DRC decks are loaded (with and without errors).

BUG: (4/1/06, GVG) Crash in DRC if selectMerge was found (due to latest changes in minArea to speed up
the process). This was noticed while checking Bug 121 (fixed already).

BUG: (4/1/06, GVG) DesignRulesPanel not caching minAreValue.
FIX: (1) MOSRules.setMinValue fixed. (2) DRCDocumentListener added to minArea/minEncArea Texts.
Extra: more editChanged functions added to avoid the redoing of the entire set of rules every time
a field was changed.

IMP: (4/02/06, DN) JUnit tests of database are added to CVS, build.xml and regression scripts updated.

BUG: (3/31/06, GVG) Boundary problems with qTree used in autostich (Bug #912)
FIX: Detection of empty buckets (no nodes).

BUG: (3/30/06, GVG) Fixing Bug 910 (Incremental Schematic DRC is broken).
FIX: Re-organization of errorLoggers so incremental logger will be shared by Layout and Schematics DRC.
Detecting when nodes are been checked in Schematics DRC.

BUG: (3/30/06, GVG) Mistake in TSMC180.xml DRC deck (wrong NODSIZE for m5m6 contact)
FIX: value="ALL" instead of value="DE" in ruleName="29.1 TSMC".

IMP: (3/30/06, GVG) Refactoring of test code.

BUG: (3/30/06, DN) Slow after JobException.
FIX: Use "undo" instead of "recover" after JobException.

BUG: (3/30/06, DN) Removal of entry after move to another library (Bug #868).
FIX: Use Cell.move in CellChangeJobs.copyRecursively.

IMP: (3/28/06, GVG) More AFG code. Java1.5 modifications in DRC/LayoutCoverage/GeometryHandler code.

BUG: (3/28/06, RK) All-Java NCC regression test causes Netlist tool to throw exception. First exception was bug in regression, not Netlist tool.
I no longer see the second exception so I think Dima fixed it. (Bugzilla #907)

************************* Version 8.04h: *********************************

BUG: (3/27/06, GVG)  (Exception in incremental DRC on file read in (Bug #906)
FIX: Variable was not serializable.

IMP: (3/24/06, RK) First step in moving NCC regressions to Dima's and Gilda's all-Java model

IMP: (3/24/06, GVG) TestTab and GenerationTest class

BUG: (3/24/06, GVG) MaxPerm=0 on Windows causes problems (not seen on Linux/Mac) (Bug #905)
FIX: detect the condition.

IMP: (3/24/06, DN) Added method Cell.move(Library newLib) for CrossLibraryMove.
     Database methods checkFresh moved to check.    

BUG: (3/24/06, DN)) Read Library Job used getCurrentCell inside doIt.
FIX: Move it to terminateOK.

IMP: (3/23/06, GVG) Access to reloadLibrary in ExplorerTree (no cvs mode).
                                   
IMP: (3/23/06, JG): Need facility to reload changed libraries from disk (Bug #721)

IMP: (3/23/06, RK) NCC: trace resistor connectivity when highlighting equivalent Networks. Update User Manual.

IMP: (3/22/06, GVG) Extra code in StreamClient to force stack size = 0 for Mac.

IMP: (3/22/06, GVG) Number keys should switch between wire and bus in schematics (Bug 651)

BUG: (3/21/06, GVG) STACK_SIZE in Thread must be 0 on MacOSX.
FIX: Refactoring of a few classes and OS class was moved from TopLevel to Client class.
Avoiding multiple ways to determine OS so please use Client API.

BUG: (3/21/06, GVG) Few problems with Colors prefs on Mac described in Bug #645.
One of them was that Electric was reloading only transparent colors after Pref import
FIX: Recaching all color preferences. PrefType enum added.

BUG: (3/21/08, DN) Regressions and those errors not catched/running forever... (Bug #901)
FIX: Uodate Regression.java to recent changes in ServerClient.java 

BUG: (3/21/06, DN) All libraries marked changed after loading up (Bug #900)
FIX: In Main.InitDatabase insert Input.changesQuiet(false). 

IMP: (3/21/06, DN) Snapshot Logging which is enabled by button in GeneralTab panel.
   Logging is performed to temporary file in platform-dependent  directory. Name of the file
   is printed to "electric.log" and to stdin.

BUG: (3/21/06, DN) Exception in WindowFrame.composeTitle after close of current library.
FIX: Check if current Library is null.

BUG: (3/21/06, DN) Database is currupted after node change (Bug #897).
FIX: In CellBackup.getInstCount check for null CellUsageInfo.

BUG: (3/21/06, DN) Database invariant checking prevents Force quit-save (Bug #861).
FIX: Force quit find last consistent Snapshot and saves it to panic directory.

BUG: (3/21/06, GVG) duplication {lay} versioning detecting wrong view (Bug #895)
FIX: View was not checked.

BUG: (3/21/06, DN) Assertion in CellBackup on incorrect definedExports(seen in FillGenerator) (Bug #891).
FIX: In CellBackup.with correctly update definedExports set.

BUG: (3/20/06, GVG) CheckAndRepair on arcs only reporting the error in repair mode.
FIX: Create the error logger also in check mode.

IMP: (3/19/06, GVG) Ability to leave unconnected pins (Bug 488)
New preferences added in Routing tool.

Bugzilla #s to close: 318 (works now),

IMP: (3/19/06, GVG) Able to close the last library (Bug #812)

BUG: (3/19/06, DN) System.out.println() is blocked while append in MessagesWindow occurs.
     New thread is invoked every 200 ms.
FIX: In MessagesWindow remove "dump" out of synchronized block.
     Use one Ticker thread for all the time.

BUG: (3/19/06, DN) Some export names are not repaired.
FIX: In Cell.checkAndRepair iterate over copy of exports array.

IMP: (3/18/06, GVG) Select Object dialog was useless if you navigate down/up the hierarchy (Bug #862)
 
BUG: (3/18/06, GVG) "Project file not fund" message in Project Management (Bug #849).
FIX: RetrieveLibraryFromRepositoryJob implements terminateOK() instead of terminateIt.

BUG: (3/17/06, GVG) Arc routing complaing about "domain violation while figuring angle in radians" (Bug #888).
It happens when you are rounting two nodes in top of each other (tail and head points are identical).
FIX: Detecting the case.

IMP: (3/17/06, GVG) Adding tests plugin including TestMenu. Using reflection to avoid dependency on new plugin
LayerCoverageTool tests are there for now. DRC and ERC should come next.

BUG: (3/16/06, GVG) Coverage Implant not serializable.
FIX: Fixed by change LayerCoverageTool job

BUG: (3/16/06, RK) Fix bug in NCC regression script

BUG: (3/16/06, GVG) Cannot serialize HighlightEOBJ in ChangeArcProperties job (Bug #885)
FIX: Replace HighlightEOBJ dependency by using a list of ElectricObject.

BUG: (3/15/06, GVG) Cannot serialize on rename (Bug #883)
FIX: renameCellInJob doesn't require serialization of Cell.CellGroup class

************************* Version 8.04g: *********************************

NOTE: Regressios for v8.04g release were tagged as version8-04gAgain

BUG: (3/15/06, GVG) FindAndReplace dialog: find doesn't highlight some nodes (Bug #882)
FIX: detecting null key.

BUG: (3/15/06, GVG) Wrong focus after putting a cell instance down (Bug #877)
FIX: Forcing EditWindow.requestFocus() in PlaceNewNode.terminateOK().

BUG: (3/15/06, SMR) "Insert Jog In Arc" fails (Bug #881).
FIX: Made Highlight parameter transient, converted Point2D to EPoint.

BUG: (3/15/06, DN) User can't change case of a letter in export/node/arc names (Bug #873).
FIX: In ImmutableExport/NodeInst/ArcInst compare name.toString() instead of name.

BUG: (3/15/06, RK) NCC: Change NccJob to avoid Bug # 825 and the bugs introduced in an attempt to fix it.

IMP: (3/15/06, RK) NCC: Choose alphabetically first name for a Port (Bugzilla #540). Add regressions to test this.

BUG: (3/14/06, GVG) Content of ReplaceTextJob not serializable (Bug #874).
FIX: Job reorganized. Same task for ReplaceAllTextJob on the way. Side effect: class WhatToSearch converted
into enum and moved to TextUtils.

BUG: (3/14/06, GVG) "Mark All Libraries for saving" command was not wrapped in a job (Bug #872)
FIX: New Job class added.

BUG: (3/14/06, GVG) Problem highlighting networks (Bug #871). getHighlightedNetworks returns null if varKey != null.
FIX: condition removed since that condition doesn't hold after HighlightText and Export changes.

IMP: (3/13/06, GVG) Ability to mark selected cell if you do "Edit in New Window" (Bug #864)

IMP: (3/13/06, RK) NCC: delete initial version of local wire paritioning code.

IMP: (3/13/06, GVG) Multiple selection in cross library copy (Bug #867)

BUG: (3/13/06, GVG) Date/Content in CrossLibCopy dialog was not filled if "Date/Content" toggle
is selected (Bug #869).
FIX: Call showCells function. Side effect: message between "()" only if content is compared otherwise
doesn't have sense.

IMP: (3/12/06, GVG) Ability to set MaxPermSize option as preference (Bug #866)
If value is zero, then doesn't set anything. New item in General Tab.

IMP: (3/12/06, GVG) Make saving last DRC date with libraries an option (Bug #847).
New flag in DRC tab.

IMP: (3/10/06, JKG) Added DELIB file format. This is a just a distributed
    JELIB format, where each cell has it's own file. This will be used for
    CVS version control of cells.

BUG: (3/9/06, GVG) Bug in DRC after fixing Bug #507 (no detecting well good drc date in goodDRC.put())
FIX: Compare DRC date with revision date (must be newer).

BUG: (3/9/06, DN) GUI thread sometimes calls Cell.getTechnology before "tech" field is initialized (Bug #859).
FIX: In NodeInst.newInstance call subCell.getTechnology() to initialize "tech" field.

BUG: (3/9/06, DN) Syntax of export names is not checked.
FIX: Check it in Export.newInstance, Export.rename, and Cell.checkAndRepair .

BUG: (3/9/06, DN) Nodable names must be unique (Bug #850).
FIX: Temporary names are fixed in Bug #860. User names are repaired in CheckAndRepair job.
     New nodes and renamed nodes are checked on uniquie names.
     It is not database invariant yet. It is still GUI constraint.

BUG: (3/9/06, DN) ConcurrentModificationException in Cell.getNewestVersion.
FIX: Add newestVersion field to Cell and maintain it.

BUG: (3/9/06, DN) Duplicate temporary node names were not caugt by snapshot check (Bug #860).
FIX: Check this invariant int CellBackup.check().
     In Cell.addTempName(NodeInst) alway update maxSuffix.

IMP: (3/9/06, RK) New NCC related command. Suppose designer highlights Network or Node in schematic. Command higlights equivalent Network or Node in layout. (Bugzilla #863)

IMP: (3/9/06, RK) New NCC related command. Copy Network and Node names from schematic to layout (Bugzilla #754)

BUG: (3/8/06, GVG) Algorithm to truncate coordinates in StatusBar in case of long VarContext was not working (Bug#846)
FIX: Calculate string length based on fieldHierCoords.getWidth() instead of fieldHierCoords.getParent().getWidth()

BUG: (3/8/06, DN) Highlighting works bad after undo because undo
     leaves deleted geoms in RTree. (Bug #852, Bug #853 and maybe Bug #851).
FIX: In Cell.update() clear RTree in both undo and recover cases.

BUG: (3/8/06, DN) Exception in Snapshot while deleting cells and then closing library (Bug #845).
FIX: In Library.kill() removed this library from referencedLibs lists of other libraries.

BUG: (3/8/06, DN) Library is not marked changed after its cell changed cell group.
FIX: In Cell.setCellGroup call "lib.setChanged()".

IMP: (3/8/06, RK) Make all the "was called from DatabaseChangesThread" warnings in ServerJobManager.java print the stack trace so we can find and fix those calls

BUG: (3/7/06, GVG) HistoryDialog crashing because ProjectCell.getComment() was null (Bug #856)
FIX: Assigning "" if comment is null.

BUG: (3/7/06, GVG) LayersTab not catching NullException if j3DUtilsClass is null (not sure why) (Bug#857)
FIX: Check if j3DUtilsClass before searching for get3DColorsInTab method.

IMP: (3/6/06, RK) More support to copy Node names from schematic to layout

BUG: (3/7/06, GVG) Error in ERCWell code that prevents regressions from running.

BUG: (3/7/06, GVG) Too long messages in UserInterfaceMain.askForChoice (Bug #854).
FIX: Ability to shrink message and display only 10 256-character lines.

BUG: (3/6/06, DN) Error whne initializing imn MDI mode.
FIX: Remove "new EventProcessor" from "UserInterfaceMain.initializeInitJob".

IMP: (3/6/06, RK) More support to copy Node names from schematic to layout

BUG: (3/6/06, DN) Check invariants at creating snapshot is too slow.
FIX: Check them more incrementally.

BUG: (3/5/06, GVG) On Mac OX S, double click on library didn't open in Electric.
FIX: Another job in UserInterface to call "setInitJob".

BUG: (3/3/06, GVG) Exception in MenuBar.finished() and ToolBar.finished() when setUI(null) (Bug #843).
FIX: line commented out.

IMP: (3/3/06, GVG) New Spice engine in SpiceTab. This is for those running HSpice for Assura.

IMP: (3/3/06, RK) Add NCC Annotation to Cell throws serialization exception. Due to new client/server model. (Bugzilla# 844)

IMP: (3/2/06, GVG) Adding DRC and AreaCoverage regression tests in main code.

IMP: (3/2/06, GVG) DRC Exclusion working hierarchically (Bug #841)

IMP: (3/2/06, GVG) DRC Exclusion nodes available as annular rings (Bug #842)

IMP: (3/2/06, RK) Support for highlighting equivalent Networks and NodeInsts

************************* Version 8.04f: *********************************

BUG: (3/2/06, GVG) Wrong initialization on Mac. Class MacOSXInterface was moved to tool.user package (#bug 837)
FIX: Change in class load path.

BUG: (3/1/06, SMR) Waveform window doesn't draw signals with only 1 data point (Bug #836).
FIX: In Panel.processSignals() draw extrapolation of last data point.

BUG: (3/1/06, SMR) Spice model files cannot be changed (Bug #840).
FIX: Made them preferences instead of storing them in cells.

BUG: (3/1/06, SMR) Cannot create attributes (Bug #838).
FIX: In Attributes.checkName(), detect existing attributes properly.

BUG: (3/1/06, SMR) "Cleanup Pins" doesn't work (Bug #839)
FIX: Made parameters all be serializable.

BUG: (3/1/06, SMR) R-Tree fails to find objects.
FIX: Use Epsilon when searching the tree.

BUG: (3/1/06, SMR) HSpice output parser doesn't handle ".ic0" files (Bug #834).
FIX: Recognize the extension and give an error (.ic0 is the same as .sw0).

BUG: (2/28/06, GVG) NodeInst objects created for the TechPalette have problems with parent field (null)
and being linked. Thus ENodeInst constructor will produce assertion (Bug #835).
FIX: PlaceNewNode doesn't require NodeInst object (data required is copied). Side effect: Orientation is serializable.

BUG: (2/28/06, SMR) When preferences have side-effects, they crash (Bug #815).
FIX: In Technology.TechPref.setSideEffect(), invoke UI changes in the AWT thread.

BUG: (2/25/06, SMR) R-tree can become corrupt (Bug #833).
FIX: In Cell.update(), reset R-tree to RTNode.makeTopLevel().

IMP: (2/25/06, GVG) GDS numbers associated to foundry instead of the technology.

BUG: (2/24/06, DN) "Class exception in Undo" (Bug #831)
FIX: Correct condition for "full" case in "Cell.undo" .

BUG: (2/24/06, SMR) "Save As" fails (Bug #827)
FIX: Use local variables (not Library flags) to determine whether to prompt for a file.

BUG: (2/24/06, SMR) Mouse-over highlighting is gone (Bug #828)
FIX: In ClickZoomWireListener.mouseOver(), add a window repaint after updating highlights.

BUG: (2/24/06) Node extraction crashes after undo.
FIX: In EDatabase.undo and EThread.run .

BUG: (2/23/06) Undo after crash can crash too.
FIX: Add parameter "full" to EDatabase.undo . In "full" mode undo doesn't rely of
     EDatabase correctness.

IMP: (2/23/06) LibraryReaders doen't try to repair arcs ends. They start RapairJob instead.
     RepairJob detects bad arc end and reports them to constraint system. Repair step is undoable.
     IO regressions scripts were modifed to changed number of repair errors.

BUG: (2/23/06, DN) Redisplay slow.
FIX: In User.endBatch calls wnd.redisplayContents only most once per Window.

BUG: (2/23/06, SMR) Auto-routing is very slow (Bug #510)
FIX: Now using quad-trees in auto-routing.

BUG: (2/23/06, DN) Library is not marked as changed after deleting a cell (Bug #826).
FIX: Put "lib.setCHANGED()" IN "CELL.KILL()".

BUG: (2/23/06, DN) For Jobs started on server result is not serialized (Bug #824, #825).
FIX: Remove "else" in Client.EJobEvent.run method.

IMP: (2/22/06, SMR) Changed the basic GRID unit (in DBMath.java) from 100 to 400
     to allow smaller fractions, and especially half, quarter, etc. (can now handle 1/16).

************************* Version 8.04e: *********************************

BUG: (2/22/06, GVG) Bug in DRC.getLastDRCDateBasedOnBits(Cell cell, int activeBits) due to changes from Integer[] to
Long in cell date.
FIX: Handle Integer[] and Long as object type.

BUG: (2/22/06, GVG) Cells should not be added into goodDRCDates list if they have a valid date from previous run
(same Electric version) (Bug #507).
FIX: Check if (!validVersion || lastGoodDate == null).

IMP: (2/21/06, GVG) More code for fill generator.

BUG: (2/21/06, DN) JELIB reader silently reads longs as ints.
FIX: Use Long.valueOf(s) which throws exception on error.

BUG: (2/21/06, DN) Assertion deleting NodeInst (Bug #823).
FIX: Don't assume that exportUsage.length == cellUsage.length, because subcell may be used without exports.

BUG: (2/21/06, DN) Protection database by ReadWriteLock leads to deadlocks and slowness.
FIX: Remove this lock. GUI can access modifying database again. Netlists are fully computed in database thread.

IMP: (2/20/06, GVG) ResetDefaultWidthJob out.
IMP: (2/20/06, GVG) More complex algorithm to extract single polygons with rings.

BUG: (2/20/06, DN) Cell bounds restored incorrectly by Undo.
FIX: In EDatabase.undo restore bound for cells whose contents was not modified.

BUG: (2/20/06, DN) Incremental DRC show dialog on every cell.
FIX: In ErrorLoggerTree check if the logger is already shown.

BUG: (2/20/06, DN) Assertion in ServerJobManager and reconcilation dialog twice (Bug #820).
FIX: Fixed as a result of general Job cleaning.

IMP: (2/19/06, DN) Database access is protected by ReadWriteLock (exclusive write, shared read).
     Netlists for cells are created by demand to save memory.
     Drawback: GUI is inactive during library reading and other long CHANGE jobs.

BUG: (2/17/06, DN) CellBackup asserts failed because of incorrect calculation of cell bounds (Bug #819)
FIX: In Cell.getBounds() calculate bounds of subcells in case of BOUNDS_COMPUTE alse.

IMP: (2/17/06, DN) Tool's deamons are called once per Job in GUI thread.

IMP: (2/16/06, SMR) Better crossprobing with waveform window.

IMP: (2/16/06, DN) Undo system reimplemented based on snapshot.

BUG: (2/15/06, SMR) Selection of Exports by the "Select Object" and "Find Text"
     commands doesn't work (Bug #817)
FIX: In SelectObject.listClicked(), use Export name when highlighting.
     In EditWindow.findNextText(), use Export key when export is selected.

IMP: (2/15/06, RK) Make NCC recognize scalable MoCMOS transistors (Bugzilla# 602)

IMP: (2/15/06, RK) Add an NCC sub-menu that allows designer to add any NCC annotation. (Bugzilla: 646)

IMP: (2/15/06, RK) Re-implemented NCC command "Copy Schematic Names to Layout". It now copies Network names for all schematic/layout cell pairs.

IMP: (2/15/06, RK) Conversion of NCC to client server model

IMP: (2/14/06, SMR) Moved all requests for the "current cell" to the UserInterface object.

BUG: (2/13/06, DN) Regression fails, because projects settings from disk files are not reconciled.
FIX: In LayoutLib.openLibraryForRead call readLibrary with "quick=false".

BUG: (2/13/06, SMR) Curved arcs are not selectable after being read.
FIX: In ArcInst.addVar(), check for curvature variables and update geometry.

BUG: (2/13/06, SMR) Compaction loops infinitely (Bug #813).
FIX: In Compaction.java, compare motion amounts against epsilon, not zero.

BUG: (2/13/06, SMR) Arcs with no angle increment are always drawn horizontally.
FIX: In InteractiveRouter.getClosestAngledPoint(), handle 0 degrees specially.
     In RouteElementArc.addHighlightArea(), use more general code.

BUG: (2/13/06, SMR) Attributes dialog loses the selected variable name when new valeus are typed.
FIX: In Highlighter.java, fire highlight changes only for the main highligher (not the
     mouse-over or ruler highlighters).  Also in Attributes.java, remember the selected variable.

BUG: (2/10/06, GVG) Fixing error in DRC schematics due to the adding of Variables during examing job (Bug #814).
FIX: Collect variables and then later kick a DRCUpdate job.

BUG: (2/10/06, DN) MOSSIM regression results are not determenistc.
FIX: Make "Topology.SortNetsByName" comparator transitive.

BUG: (2/10/06, DN) Project settings are not loaded from disk libraries.
FIX: Remove "meaning = null" int Pref.init* methods. 

IMP: (2/9/06, DN) Fixes in Compaction and Generation regressions to run in client/server mode.

IMP: (2/9/06, SMR) GDS input no longer complains about text layers, creates good size text.

IMP: (2/9/06, SMR) Fixed "RouteElementArc.doAction()" to make zero-length arcs go
     in the right direction.

IMP: (2/8/06, SMR) Split "Preferences" into "Preferences" and "Project Settings".

BUG: (2/8/06, GVG) Preferences tree didn't expand correctly if Technology->Technology
was selected
FIX: Search for identical string "Technology"), not "Technology ".

IMP: (2/7/06, GVG) DRC annotation to skip std cell.

IMP: (2/7/06, GVG) First version of ESD devices. TSMC180 devices not in palette
if MOSIS is the foundry.

IMP: (2/7/06, DN) When User.useClientServer option is on in GeneralPreferences dialog,
     Electric tests snapshots and job serialization.

BUG: (2/7/06, SMR) Crossprobing between waveform and edit window is bad.
FIX: Cleaned up highlighting and crossprobing.

BUG: (2/6/06, DN) Can't select wires once waveform viewer is open (Bug #811).
FIX: In WaveformWindow use getCurrentlySelectedObject(0).

BUG: (2/6/06, DN) Exception when opening spice waveform window (Bug #810).
FIX: In Simulate.ReadSimulationOutputJob open window in treminateOK().

BUG: (2/3/06, DN) WindowFrame together with contents remains in memory after close.
FIX: Use new class WeakReferences for storing Listeners.
     Don't use static fields EditMenu.moveFull, EditMenu.moveHals, EdiitMenu.moveQuarter, WindowMenu.closeWindow.
     Added TopLevel.removeFromDesktop, toolBar.setUI(null), menuBar.setUI(null),

IMP: (2/3/06, GVG) NWell resistors in TSMC180.
IMP: (2/3/06, GVG) TSMC180 as subclass of MoCMOS to isolate rules in plugins.
     Renaming tsmc90 plugin to just tsmc.

IMP: (2/2/06, SMR) Created new submenu "Cell / Merge Libraries" and moved
     "Export / Add Exports from Library..." there.  Also added "Replace Cells from Library..."
     which replaces instances in the current cell with like-names ones from another library.

BUG: (2/2/06, GVG) New highligh doesn't draw thick lines.
FIX: Solution allows lines from PolyBase to became thick lines and Highlight.drawOutlineFromPoints
     doesn't depend on thickCenter.

BUG: (1/30/06, GVG) ErrorLogger XML couldn't read cellName if string contains libraryName
IMP: Parsing also library name.

************************* Version 8.04d: *********************************
IMP: (2/1/06, DN) ExplorerTree isn't rebuilt completely on JobTree changes.

BUG: (2/1/06, SMR) HSpice insists on having a ".tr0" file (Bug #805).
FIX: In HSpiceOut.java, use more general method of finding file names.

IMP: (2/1/06, SMR) Removed text window methods from UserInterface.

IMP: (2/1/06, SMR) Technologies with no node groups (from the technology editor)
     have them created automatically in Technology.getNodesGrouped().

BUG: (2/1/06, SMR) Transistors are not placed correctly (Bug #802).
FIX: In EditWindow.showDraggedBox(), adjust preview box.

BUG: (2/1/06, SMR) Regressions fail because of extra technology information.
FIX: In Pref.getMeaningVariables(), ignore invalid options.

IMP: (1/31/06, GVG) Move MessagesStream.messagesStream out of TopLevel (all regression scripts checked).
More fixes in regressions.
 
IMP: (1/31/06, SMR) Added NodeInst.isCellInstance() to distinguish cells from primitives
     without using "instanceof".

BUG: (1/30/06, DN) Regression tests hang.
FIX: In ServerJobManager.DatabaseChangesThread.run do System.exit on empty job queue in batch mode. 

BUG: (1/30/06, SMR) When global text is scaled, small text is still not displayed.
FIX: In VectorDrawing.drawList(), account for global scale when clipping text.

IMP: (1/30/06, SMR) Added Pref methods "delayPrefFlushing()" and "resumePrefFlushing()"
     to speed up bulk preference changes.  Used in WaveformWindow.preserveSignalOrder(),
     Layer.preserveVisibility(), Pref.importPrefs(), Pref.finishPrefReconcilation(). 

BUG: (1/30/06, SMR) Saved error logs do not read back in.
FIX: Adjusted parsing to match new output.

IMP: (1/28/06, GVG) Incremental Schematic working now

IMP: (1/27/06, GVG) Update StatusBar on click on EditWindow (Bug#799).

IMP: (1/27/06, GVG) More improvements in MinArea algorithms.

BUG: (1/27/06, SMR) Inherited attributes are placed badly (Bug #788).
FIX: In CircuitChangeJobs.updateInheritedVar(), place from the icon position.

BUG: (1/27/06, SMR) Printing looks bad (Bug #785).
FIX: Redid printing interface, now chooses better colors.

BUG: (1/27/06, SMR) Modeless dialogs don't update properly.
FIX: Made HighlightListeners a static list, independent of windows.

BUG: (1/27/06, SMR) Escape key doesn't abort component menu placement (Bug #800).
FIX: In PaletteFrame.PlaceNodeListener.placeInstance(), added "wnd.requestFocus();"

IMP: (1/26/06, DN) Command-line key "-threads <recommendedNumThreads>" specifies
     recommended number of threads executing Jobs.
     "-threads 1" is convinient for debugging without thread swapping.

BUG: (1/26/06, DN) Highlight exception using wiring tool (Bug #798)
FIX: In "Job.fieldVariableChanged" search for superclass fields too.

IMP: (1/25/06, RK) Remove obsolete code

IMP: (1/25/06, SMR) Converted all usage of ErrorLogger to use single calls
     (instead of creating a log and then making extra calls to add geometric, export, etc.)
     This is necessary in order to make ErrorLogs immutable.

IMP: (1/25/06, GVG) NetworkTool.redoNetworkNumbering() skips Clipboard (hidden library) to avoid complains about unconnected pin
(Bug #793).

IMP: (1/25/06, GVG) LayerCoverage tool ready for the new client/server structure.

IMP: (1/25/06, GVG New MinArea changes that stop checking if minimums are reached. Decomissioning ALGO_QTREE structure.

IMP: (1/23/06, GVG) DRC, ParasiticTools, FillGenerator, GateRegression, GateLayoutGenerator ready for new client/server structure. 
ErrorLogger is serializable.

IMP: (1/23/06, DN) VarContext and Nodable are serializable.

IMP: (1/20/06, GVG) DRC.resetDRCDates() using a Change job now.

IMP: (1/18/06, DN) Job.terminate* methods are executing in AWT thread.

IMP: (1/17/06, DN) Serialization ot TextDescriptor, RouteElement .

IMP: (1/17/06, DN) Added Job.startJobOnMyResult method to start a new Job on result snapshot of current Job.
    Compaction tools uses it to launch a chain of Jobs.
    Job.terminateOk and Job.terminateFail instead of Job.terminateIt .

IMP: (1/16/06, SMR) Further reorganization for client/server split:
     More Job classes recoded.
     Removed use of "Name" object for tracking highlighting, replaced with Variable.Key.

IMP: (1/12/06, DN) Serialization/deserialization of Job objects. It is tested in "-debug" mode.

IMP: (1/12/06, SMR) Further reorganization for client/server split:
     Added null constructor to every Job class.
     Finished reorganazation of package tool.user.

IMP: (1/12/06, GVG) Reorganizing DRC rules stored so they belong to the foundries and
     easily replaced by imported data. New class Foundry.

IMP: (1/11/06, DN) Added method Job.terminateIt. This method will be called on client side
     after termination of Job.doIt on server side.

IMP: (1/10/06, SMR) Reorganized "CircuitChanges.java" into client and server parts.
     Created "CircuitChangeJobs.java" with server parts.
     Created com.sun.tool.JobException (no contents) and subclass CantEditException.

IMP: (1/10/06, DN) Cell bounds are stored in immutable class ERectangle and are shared with Snapshot.

IMP: (1/9/06, GVG) Reorganizing and cleaning TechPalette.
     New bits for special transistors (H/L VT, native, etc).

IMP: (1/9/06, SMR) Sweeps in the waveform window now show inclusion and exclusion
     more distinctly (Bug #782).

IMP: (1/9/06, SMR) Waveform windows can now be exported as PostScript (Bug #564).

BUG: (1/9/06, SMR) Annular ring construction crashes.
FIX: In AnnularRing.MakeAnnulus.doIt() do not try to change EPoint coordinates.

IMP: (1/8/06, SMR) Initial implementation of PostScript output for Waveform Window (Bug #564).

BUG: (1/5/06, SMR) Multi-object "Properties" dialog doesn't show distance when two are selected (Bug #781).
FIX: In GetInfoMulti.loadMultiInfo(), include distance information in the list of text.

IMP: (1/5/06, SMR) Removed unused method AbstractTextDescriptor.isAbsoluteSize().

BUG: (1/5/06, SMR) PolyMerge.contains(Layer, Rectangle2D) does not work.
FIX: Must use same method as in PolyMerge.contains(Layer, PolyBase),
     subtracting areas and seeing if the result has near-zero size.

IMP: (1/5/06, SMR) Added option to merge geometry while reading GDS in.

IMP: (1/3/06, SMR) The "Edit / Erase" command is now a submenu and has
     two new entries: "Arcs Connected to Selected Nodes" and
     "Arcs Connected Between Selected Nodes" (Bug #610).

IMP: (1/3/06, SMR) Moved "Edit / Info / Show Undo List" to "Edit / Show Undo List".

IMP: (1/3/06, SMR) When two EditWindows share the same cell, they share Highlighters,
     too (Bug #402).

IMP: (1/3/06, SMR) The "Window / Center" submenu is now called "Window / Special Pan"
     and includes two new commands: "Match Other Window in X" and
     "Match Other Window in Y" (Bug #402).

IMP: (1/3/06, SMR) "Select Object" dialog allows quick-key commands to "pass through"
     (but it works only when the "Find" button or no dialog item is current) (Bug #370).

IMP: (1/2/06, SMR) New command: Export / Manipulate Ports on Node (Bug #697).

BUG: (1/2/06, SMR) Changing default text font doesn't update display (Bug #771).
FIX: In TextTab.term() redraw all edit windows if font changes.

IMP: (1/2/06, SMR) Mimic unstitch now works interactively (Bug #488).

BUG: (12/28/05, SMR) Dragging or deleting text fails.
FIX: In Highlight2.getHighlightedText() changed "return" to "continue" in last loop.

IMP: (12/27/05, SMR) Added commands "Edit / Properties /  Parameterize Bus Name"
     and "Edit / Properties / Edit Bus Parameters..." to parameterize busses.

IMP: (12/26/05, SMR) Sped up exporting many ports by a factor of 3.

BUG: (12/23/05, SMR) Changing an instance size may not redisplay the parent cell.
FIX: In User.markCellForRedraw(), recurse if the cell changed.

IMP: (12/23/05, SMR) "Show Network" used repeatedly does not show dots on nodes.

IMP: (12/23/05, DN) Reduced the amount of memory used by Epic signals (Bug #712).
Context strings are not stored in memory. Instead they are generated by demand from path.

IMP: (12/22/05, GVG) More changes towards automatic fill generation. Extra work in fill generator to reduce number
of arcs and pins generated.

BUG: (12/20/05, DN) Cross-probing doesn't work with EpicReaderProcess.
FIX: In EpicOutProcess.readEpicFile setSignalContex before setSignalName.

BUG: (12/19/05, GVG) Error in Highlighter.overHighlighted not calling correct HighlightEOBJ.overHighlighted()
FIX: A parameter was missing with respect to the abstract function.

BUG: (12/19/05, GVG) 3D Colors were gone since last changes in LayersTab.java
FIX: Code is back again

IMP: (12/19/05, GVG) Two new Epic preferences in Spice tab.

IMP: (12/16/05, GVG) Small change in EpicOut.java to speed up reading process. This is for Bug#779.

IMP: (12/16/05, GVG) Major changes in ErrorLogger.ErrorHighlight and Highlight.

IMP: (12/16/05, SMR) Explorer window allows multiple selections where sensible
     (waveform signals, sweeps, deleting cells, re-viewing cells) (Bug #774).

IMP: (12/16/05, SMR) Dragging panels in the waveform window now places it above
     or below according to the final mouse position (Bug #778).

IMP: (12/16/05, DN) Preliminary code for EpicReader, spawned as another process.

IMP: (12/15/05, GVG) Preliminary code for automatic fill.

BUG: (12/15/05, GVG) Can't not paste a single object in Clipboard (Bug #777)
FIX: User.FRAME_LAST_CHANGED_BY should not be counted as Variable.

BUG: (12/14/05, SMR) Project management crashes when changes are made to un-checked-out cells (Bug #776).
FIX: In Project.detectIllegalChanges(), make the prompt happen in the GUI thread.

BUG: (12/12/05, SMR) Interactive sizing disallows dragging on the other side of the anchor (Bug #558).
FIX: In SizeListener.getNewNodeSize(), handle dragging beyond the opposite point.

BUG: (12/9/05, GVG) getCurrentCell not defined in Main.UserInterfaceDummy but it is required (Compactation regression failed).
FIX: Move code under BATCHMODE code to UserInterfaceDummy. In case of batch mode, current cell is from current library.
Remove conditions in WindowFrame.java if Job.BATCHMODE.

BUG: (12/9/05, GVG) Rounding problem in GateGeneration regression noticed while working on the memo.
FIX: Use StdCellParams.getResolution() instead of value stored in Technology.

IMP: (12/8/05, GVG) No com.sun.electric.tools.user.ui dependencies in Cell.java and Pref.java.

BUG: (12/7/05, SMR) Text Properties dialog sets offsets incorrectly (Bug #770).
FIX: In TextInfoPanel.ChangeText.doIt() use proper offset determination.

BUG: (12/7/05, SMR) PostScript writes incorrect text on cell instances (Bug #773).
FIX: In PostScript.recurseCircuitLevel(), use untransformed cell bounds.

BUG: (12/7/05, SMR) Waveform window always calls horizontal axis "seconds", even if it isn't time.
FIX: Use pure numbers when a signal is on the X axis.

IMP: (12/7/05, SMR) Added David Harris's "merged PostScript" output.
     Fixed MOSIS CMOS technology color opacity.

IMP: (12/7/05, GVG) Got rid of ExplorerTree activities in Job.java

IMP: (12/6/05, GVG) Got rid of user.ui dependencies in ActivityLogger and Job

IMP: (12/3/05, GVG) Similar work with DRC and ErrorLogger.

IMP: (12/2/05, SMR) Major changes to decouple EditWindow and WindowFrame from database.

************************* Version 8.04c: *********************************

IMP: (12/1/05, SMR) New waveform window icons.

IMP: (12/1/05, SMR) Making windows fill the screen works right in MDI mode.

BUG: (12/1/05, SMR) Initial cell display doesn't fill the window (Bug #562).
FIX: In WindowFrame.createEditWindow(), set window size properly.

IMP: (12/1/05, SMR) Cell Properties lets you specify the font of text cells (Bug #662).
     Changed the layout of the "text" preferences tab.

BUG: (11/30/05, SMR) PostScript text scale is wrong (Bug #763).
FIX: Increased PostScript text size.

BUG: (11/30/05, SMR) Pasting shows undisplayable cell variables (Bug #760);
FIX: In Clipboard.paste() ignore variables that are not displayed.

IMP (11/30/05, SMR) New commands in Tool / Simulation (Built-in):
     "Save Waveform Window Configuration to Disk..." and
     "Restore Waveform Window Configuration from Disk..." remember the waveform
     window configuration (Bug #704).

BUG: (11/30/05, SMR) Menu text sometimes appears in the edit window (Bug #765).
FIX: In PixelDrawing.java, make text drawing use a non-static buffer.

BUG: (11/30/05, SMR) Some dialogs don't follow the main window (Bug #581).
FIX: Removed "setLocation()" from GetInfoNode, GetInfoExport, and GetInfoText.
     Also remember the messages window location.

IMP: (11/30/05, SMR) Reduced the amount of memory used by signals (Bug #712).

IMP: (11/30/05, DN) Command-line switch "-server" to dump snapshot trace. 

IMP: (11/29/05, GVG) More changes related to the DISPLAY dependency while running batch jobs.
Ability to reconcile options in batch mode (some code in OptionReconcile.java moved to Pref so it
can be used in batch mode).

IMP: (11/29/05, SMR) Waveform panels use offscreen buffers (Bug #239).

BUG: (11/29/05, SMR) Redoing text changes may crash (Bug #762).
FIX: In TextWindow.redo(), must catch the CannotRedoException exception.

IMP: (11/28/05, SMR) Entering "measure" mode clears previous measurements (Bug #761).

IMP: (11/28/05, SMR) Waveform window can show lines, points, or both.

IMP: (11/28/05, SMR) Waveform window can handle many types of analysis (transient,
     AC, DC, and Measurements).  HSpice reads them.

IMP: (11/28/05, DN) Changes towards Snapshots.

************************* Version 8.04b: *********************************

IMP: (11/22/05, GVG) Changes to get rid of DISPLAY dependency while running with -batch.

IMP: (11/21/05, SMR) Refactored the waveform window.

IMP: (11/21/05, DN) NodeInst.redoGeometric allocated less temporary objects.

IMP: (11/18/05, SMR) Waveform window can now draw horizontal axis logarithmically.

BUG: (11/18/05, SMR) Waveform window drops zeros from numbers.
FIX: In TextUtils.convertToEngineeringNotation() remove trailing zeros only if
     there is a decimal point in the number.

BUG: (11/18/05, SMR) Crash when deleting a cell (Bug #759).
FIX: In User.endBatch(), ignore cell changes to deleted cells.

IMP: (11/17/05, GVG) Adding Ctl-W to NCC GUI (Bug 756)

IMP: (11/17/05, SMR) Waveform window can now plot any signal on the X axis.
     Drag the signal to the time bar to set it as the X axis.  Right-click on
     time bar to reset to time on the X axis.

BUG: (11/17/05, SMR) Project management cannot find some cells (Bug #751).
FIX: In Project.copyrecursively(), use the version number in the cell name so that
     new repositories are correct.  In Project.getCellFromRepository(), be forgiving
     of versions to handle existing repositories.

BUG: (11/16/05, SMR) Deleting a cell instance loses arc names on reconnected arcs (Bug #758).
FIX: In CircuitChanges.eraseObjectsInList(), apply old name to new arc.

IMP: (11/16/05, DN) Memory optimization: Name module stores only canonic String instead of Name.

IMP: (11/15/05, SMR) Spice templates can now have multiple lines.

IMP: (11/15/05, SMR) New command: "Tool / Network / Repair Power and Ground" fixes
     export characteristics that are inconsistent (Bug #380).

IMP: (11/15/05, SMR) Now have "Tool / NCC" command to create NCC annotations (Bug #646).
     NCC attributes are NOT inheritable or parameters (cleaned-up on library input).
     Cell attributes that are not inheritable are mentioned in properties dialogs.

BUG: (11/14/05, SMR) Project management presents libraries unsorted (Bug #750).
FIX: Sort the libraries.

BUG: (11/13/05, GVG) Few bug fixes in the design rules tab due to changes for DRC deck and typesafe
enum.
FIX: Mainly in DesignRulesTab.java and DesignRulesPanel.java.

BUG: (11/11/05, SMR) "Set Focus" command does not make changes that are browsable (Bug #746).
FIX: Improved "SetFocus.java" to use the focus browser.

BUG: (11/11/05, SMR) Crashes when adding all libraries to the repository (Bug #740).
FIX: Now adds libraries just once (was adding them twice).

IMP: (11/11/05, SMR) Adding libraries to repository has "Yes to All" option
     for also adding dependent libraries (Bug #742).

BUG: (11/11/05, SMR) Adding fill library to the repository takes too long (Bug #749).
FIX: Improved skeletonization speed.

BUG: (11/11/05, SMR) Checking out cells marks them as modified (Bug #748).
FIX: Cell changes must be done without change control to avoid other changes.

BUG: (11/10/05, SMR) Crash when drawing upside-down text (rotated 180).
FIX: In PixelDrawing.drawText, 180 degree case should use the index:
     ((rasHeight-y-1)>>shiftUp) * textImageWidth + ((rasWidth-x-1)>>shiftUp)

IMP: (11/9/05, SMR) New command: "Window / Set Focus..." lets you control
     the window zoom and pan (Bug #722).

IMP: (11/9/05, SMR) Now have "Export /Re-Export Selected Port on All Nodes"
     which takes a single node/port selection and re-exports that port on all
     similar node/port combinations in the cell (Bug #660).

IMP: (11/9/05, SMR) Now have "Last Changed By" field in title box (Bug #609).

IMP: (11/9/05, SMR) Auto stitching now considers highlighted area more precisely (Bug #725).

IMP (11/9/05, JKG) Added "exemptedNets" capability and options to simple parasitic extraction
    for spice netlister. Updated manual (Parasitic Extraction), but did not update
    manual picture.

BUG: (11/9/05, SMR) Menus are not accessable through mnemonic keys (Bug #730).
FIX: In EditWindow.paintComponent(), do not request focus.

BUG: (11/9/05, SMR) Node Properties takes too long when there are many ports (Bug #736).
FIX: In GetInfoNode.showProperList(), use "setListData" to load the list.

IMP: (11/9/05, SMR) Project management now uses user names without asking
     for accounts to be created.  Higher-level of security can be had by changing
     Project.LOWSECURITY to false (Bug #737).

BUG: (11/9/05, SMR) Library closing gives cryptic error messages (Bug #739).
FIX: Better message in Library.kill().

IMP: (11/9/05, SMR) Project management menu now has "Add All Libraries to
     Repository" (Bug #740).

IMP: (11/9/05, SMR) Adding a library to the repository now asks if dependent
     libraries should also be added (Bug #742).

IMP: (11/9/05, SMR) Project management command "Cancel Checkout" is now
     "Rollback and Release Checkout" (in explorer and in menus).  The command
     checks sensibility before confirming the operation (Bug #743).

BUG: (11/9/05, DN) Exception writing Spice netlist in hierarchy enumerator (Bug #663).
FIX: In NetSchem.calcDrawnWidth set bus width to widest connected bus or export.

IMP: (11/8/05, SMR) Dialogs move with the main display (Bug #581).

BUG: (11/8/05, SMR) Cells do not fill the screen when first edited (Bug #562).
FIX: In EditWindow.java, use true screen size instead of 500x500.

BUG: (11/8/05, SMR) Interactive sizing always stretches to farthest corner (Bug #558).
FIX: Must click to start sizing, and it remembers the farthest corner.

IMP: (11/8/05, SMR) Added "Down Hierarchy" commands to keep the focus and
     edit in a new window (Bug #732).

BUG: (11/8/05, SMR) Aborting the "quit" dialog with an ESCAPE quits anyway.
FIX: In FileMenu.preventLoss(), handle dialog aborts.

BUG: (11/8/05, SMR) "Last measured distance" is wrong.
FIX: In MeasureListener, define it as the last valid distance (ignores part aborted by right-click).

BUG: (11/7/05, SMR) Mimic arc deletion does not work right (Bug #488).
FIX: In MimicStitch.mimicdelete(), use same node/port matching rules as arc creation.

BUG: (11/7/05, SMR) Area-selection is not a valid way to select "auto stitch in area" (Bug #725).
FIX: In Highlighter.checkOutObject(), allow direct hit to match at <=, not < and in
     Highlighter.findAllInArea(), initialize direct hit distance to a small value, not zero.

BUG: (11/4/05, SMR) Changes in text-only cells are not undoable (Bug #324, #503).
FIX: Added undo tracking when editing text cells, incorporated it into undo commands.

IMP: (11/4/05, SMR) "mocmos" technology has ports on pure-layer nodes extending to the node edges
     (were inset on some pure-layer node ports).

BUG: Select-All doesn't include text on arcs (Bug #530).
FIX: In EditMenu.doSelection(), include text.

IMP: (11/4/05, SMR) New icons in the toolbar.

IMP: (11/4/05, SMR) Ant scripts updated to exclude Sun menus from build,
     Javadoc cleaned up

IMP: (11/3/05, GVG) XML format for ErrorLogger (bug #715). You can save and restore errorloggers
from disk.

IMP: (11/2/05, GVG) Adding index to ErrorLogger.Message so it would be easier to
exchange information about DRC errors (Bug #729). This affects all ErrorLogger instances.

BUG: (11/2/05, SMR) Redisplay slow when zoomed far in (Bug #719).
FIX: Text drawing is slow when the font is very large.  Large fonts are
     reduced in size and scaled up.  Also did other text optimizations in
     PixelDrawing.java.

BUG: (11/2/05, SMR) Thick outlines around layers may crash.
FIX: In PixelDrawing.drawBox(), check coordinates of thick outlines.

BUG: (11/2/05, SMR) Multi-object properties dialog has slow performance (Bug #718).
FIX: In GetInfoMulti.java, optimized "Remove" and "Remove All" buttons,
     also rebuild scroll list instead of clearing it.

BUG: (11/2/05, SMR) "Show Network" highlights too much information (Bug #716).
FIX: In NetworkHighlighter.java, removed highlighting of cell instances and exports.
     Reduced arc highlighting to a single line.

************************* Everything below here was announced in the 8.03 release *********************************

BUG: (11/01/05, SMR) Cancelling the cell selection after reading simulation data
     does not cancel the operation (Bug #711).
FIX: In Simulate.plotSimulationResults(), abort if cell is null.

IMP: (10/31/05, SMR) Added Spice primitives (Amp and DiffAmp) are now visible.

IMP: (10/31/05, SMR) IRSIM and ALS give better errors when no signal is selected (Bug #710).

IMP: (10/31/05, SMR) Silicon compiler works when number of cells is less than
     the number of rows.  Also finds layout technologies better (Bug #708).

IMP: (10/31/05, GVG) Undo.Type converted into typesafe enum.

IMP: (10/30/05, GVG) TSMC1080.xml ready with all TSMC rules for 180nm tech

IMP: (10/29/05, GVG) Mosis.xml ready with all Mosis rules for 180nm tech

IMP: (10/28/05, GVG) PP/NP.C.1 implemented in TSMC180 (Bug 703, 642, 689).
This is a new type of SPACING rule where one of the layer must belong to P/N well nodes.

IMP: (10/28/05, SMR) Changed the window "view" to a window "focus".

BUG: (10/28/05, SMR) Deleting nodes and exports produces an error message.
FIX: In CircuitChanges.eraseObjectsInList(), do not delete nodes already deleted.

IMP: (10/27/05, SMR) Technology Editor produces proper Java.

IMP: (10/27/05, GVG) More changes towards DRC deck handling. Import/Export of DRC deck under Tools->DRC.
Typesafe enums for DRC options. Generic DTD for DRC rules and can be loaded using EntityResolver.resolveEntity.

BUG: (10/26/05, SMR) Auto-stitcher connects pure-layer nodes of well (Bug #388).
FIX: Disallow pure-layer nodes in auto-stitching.

BUG: (10/26/05, SMR) Edit-in-place looks bad (Bug #635).
FIX: In EditWindow.java, change the method paint() to paintComponent().

BUG: (10/26/05, SMR) Auto-stitcher connects annotation text objects (Bug #695).
FIX: Disallow Generic technology nodes in auto-stitching.

IMP: (10/26/05, SMR) Spice output sorts subcircuit signal names (Bug #694).

IMP: (10/26/05, SMR) Auto-stitching avoids adding duplicate arcs.

IMP: (10/26/05, SMR) "Find Text" dialog now has "alt" keys on its buttons (Bug #671).

IMP: (10/25/05, SMR) Waveform window signal order saved in preferences, not cells.

BUG: (10/25/05, SMR) Double-clicking text does not edit it in-place.

BUG: (10/25/05, GVG) rename dialog resets to current cell every time you hit (bug #692)
FIX: lastSelectedCell in rename job didn't include view abbreviation.

BUG: (10/25/05, SMR) Double-clicking text does not edit it in-place (Bug #693).
FIX: In EditMenu.getInfoCommand(), do not ignore text that is not special.
     In SpecialProperties.java, rehighlight the text after the "more" button is clicked.

BUG: (10/25/05, DN) PortCharacteristic of Exports is not undoable.
FIX: Side effect of implementing ImmutableExport for transactional DB.

BUG: (10/24/05, SMR) Nonmanhattan arcs may be produced when they are long.
FIX: In SimpleWirer.planRoute() make special case for manhattan routes.

IMP: (10/24/05, SMR) Many changes to use generics.

IMP: (10/23/05, SMR) Greeked cell cache is cleared when layer visibility changes.
     Vector display cache is cleard when technology preferences change.

BUG: (10/23/05, SMR) Export changes are allowed even when nodes or cells are locked.
FIX: Added checking code to CircuitChanges.DeleteSelected.doIt(), NewExport.MakeExport.doIt(),
     and ExportChanges.DeleteExports.doIt().

BUG: (10/23/05, SMR) Waveform window grid has bad horizontal lines.
FIX: Grid lines are now aligned with tick marks.

BUG: (10/20/05, DN) Deleting objects takes forever (Bug #666).
FIX: In CircuitChanges.Reconnect.reconnectArcs reconnect only obtuse-angled arcs.

BUG: (10/22/05, GVG) renaming of subcells should be major change (Bug #685)
FIX: Set to major change in Undo.java:Change:setDirty()

BUG: (10/21/05, GVG) DRC does not find overlapping geometry that are not connected (bug #684)
FIX: Still problems with arc crops if elements overlap. Previous pin code for bug 483 only valid if geometries don't overlap.

BUG: (10/21/05, SMR) Waveform window has memory leak (Bug #679).
FIX: In WaveformWindow.finished(), remove listeners and highlighters.

BUG: (10/21/05, SMR) Converting layout to schematic produces a bad database (Bug #675).
FIX: Do not make manhattan in ViewChanges.convertSchematicCell().

BUG: (10/21/05, SMR) Selecting stimuli can be slow (Bug #664).
FIX: In Stimuli.java, always use fast lookup method.  Modify hash table to see all variations.

IMP: (10/20/05, SMR) Measure mode highlighting is persistent, must use
     right click to stop adding measures or to clear (Bugs #590, #668).

BUG: (10/20/05, SMR) Selection slows down when grid is being displayed (Bug #568).
FIX: Instead of drawing the grid with every redisplay,
     render the grid into the offscreen buffer.

BUG: (10/20/05, SMR) Silicon Compiler uses wrong type of arc and crashes.
FIX: Override parameter and select arc in Maker.createConnection().

BUG: (10/20/05, SMR) Copy/Pasting, Duplicating, or Arraying of exports
     does not go in the right order (Bug #672).
FIX: In Clipboard.copyListToCell(), gather all exports before reexporting.

BUG: (10/20/05, SMR) When plotting HSpice output files ending with ".tr1",
     still looks for name file that end with ".pa0" (Bug #674).
FIX: In HSpiceOut.readPA0File(), copy number from one extension to the other.

IMP (10/20/05, GVG) Two new cells representing 2 amplifiers in spiceparts.jelib (Bug #682).
Changes in TechPalette to show only icon cells in spiceparts library.

IMP (10/20/05, JKG) Added Spice option to only extract nets with a name that
    contains 'extractme' from layout.

BUG: (10/20/05, GVG) More option in SpecialProperties dialogs was broken if text was selected (Bug #678)
FIX: Detect those cases where the more button was hit and bring the NodeInst dialog box.

IMP: (10/20/05, GVG) Ability to connect bus wire to capacitors in Schematics (Bug #677)
Solution: bus_wire added as capacitor port.

IMP: (10/19/05, SMR) New display algorithm now "greeks" small cells better
     (uses an image of the cell instead of a single color).

IMP: (10/19/05, SMR) "Nodes" preferences now has option to control reconstruction of arcs
     when cells are deleted.

BUG: (10/18/05, GVG) Special KeyStrokes such as KeyStroke.getKeyStroke('<') don't get properly uploaded if
there is more key bindings for the same function (Bug #670).
FIX: KeyStrokePair.stringToKeyStroke handles the situation now

IMP: (10/17/05, SMR) Undo and Redo now state the activity that is being undone/redone.

IMP: (10/17/05, SMR) Typing ESC while editing in-place aborts and reverts the text (Bug #661).

BUG: (10/17/05, SMR) When editing text in-place, changes to zoom or pan ruin the display (Bug #659).
FIX: Terminate editing in-place when zoom or change happens.

BUG: (10/17/05, SMR) Typing ESC in the Zoom tool doesn't work (Bug #654).
FIX: Added escape processing to ZoomAndPanListener.java.

IMP: (10/17/05, SMR) Error display (such as viewing DRC errors) now flashes small objects (Bug #656).

IMP: (10/17/05, GVG) Movements recorded in the electric message window (Bug #655).
Verbose mode of all ChangeBatch actions in messages window. Added extra flag in Preferences/General tab.

BUG: (10/17/05, SMR) Array dialog doesn't leave room for numeric fields (Bug #657).
FIX: Added call to pack() at end of constructor.

BUG: (10/17/05, SMR) Aborting a drag leaves the dragged rectangle on the screen (Bug #654).
FIX: In ClickZoomWireListener.keyPressed(), clear the area drag when aborted.

BUG: (10/17/05, SMR) GDS preferences are sensitive to spaces and may update too often (Bug #474)
FIX: In GDSTab.java, compare values, not the string.

IMP: (10/17/05, SMR) Deleting a cell instance reconstructs the arcs to the cell (Bug #491).

BUG: (10/17/05, DN) exception while doing cross-library copy (Bug #652).
FIX: In Cell.copyNodeProtoUsingMapping use getVar(SCHEM_FUNCTION, String.class).

BUG: (10/16/05, DN) Irsim doesn't saves stimuli to disk correctly (found by Moscow students in GNU 8.02).
FIX: In irsim.Analyzer.newVector don't divide thisStep by cmdFileUnits twice. 

BUG: (10/14/05, SMR) Importing preferences doesn't update component menu (Bug #645).
FIX: In PreferencesFrame.importActionPerformed(), update all component menus.

BUG: (10/14/05, SMR) New database doesn't allow variables to be Point2D (Bug #648).
FIX: Converted to EPoint in ViewChanges.makeIconForCell(), AnnularRing.MakeAnnulus.doIt(),
     PadGenerator.createPadFrame(), CIF.nodesPoly(), Connectivity.convertAllGeometry(),
     Connectivity.realizeNode(), DXF.readLineEntity(), EDIF.doPoly(), EDIF.KeyRectangle.pop(),
     GDS.determineBoundary(), GDS.determinePath(), OutlineListener.InitializePoints.doIt(),
     Sue.readFile(), LayerCoverageJob.doIt().

BUG: (10/14/05, SMR) Ports on subcells are not drawn properly (Bug #647).
FIX: In VectorDrawing.showCellPorts(), caches proper port locations.

BUG: (10/14/05, SMR) Changing layer visibility is slow (Bug #649).
FIX: Do not write visibility changes to preferences until exiting program.

IMP: (10/14/04, SMR) The "New Nodes" and "New Arcs" preferences are now just called
     "Nodes" and "Arcs".  In the "Nodes" preferences is "Disallowing changes to complex nodes"
     which prevents changes to instances or transistor/contacts.

IMP: (10/14/05, GVG) Rolling back cutspace optimization in active and well contacts. The cutspace remains at 2.8 (2D value)
because causes misalignments on contacts whose heights are multiple of 5.

FIX: (10/13/05, JKG) Fixed Pad frame generator (bug #621), Updated manual

BUG: (10/13/05, GVG) Exception in ColorPatternPanel when li.outlinePatternDisplay was null (eg SPECIAL:TEXT) (Bug #644)
FIX: Skip setting of outlinePatternDisplay in that case.

IMP: (10/13/05, JKG) Added Window Menu items to go back/forward between saved views of EditWindow.

BUG: (10/12/05, GVG) Cadence preferences can't be imported on Mac OS X (Sun menu) (Bug #643)
FIX: Change InputStream(String) by InputStream(URL) so Cadence file available in electric.jar can be open.

BUG: (10/12/05, SMR) Unnecessary resize of GetMultiInfo (bug #641)
FIX: Preserve size of scroll area in GetInfoMulti.highlightChanged().

IMP: (10/12/05, SMR) "Artwork Appearance" now called "Artwork Color and Pattern".
     The dialog is modeless.  Instead of having color popups in the node and arc
     Properties dialogs, there is a "Color and Patterns" button.

BUG: (10/12/05, GVG) Unnecessary resize of GetMultiInfo (bug #641)
FIX: Remove lock in GetInfoMulti.highlightChanged().

IMP: (10/11/05, GVG) Size and Tech labels in StatusBar disappear if window is not big enough (Bug #628).

IMP: (10/11/05, SMR) Pad Frame generator now handles view types properly (Bug #621).
     Also, pad frame generator has a "views" command to specify views to generate.

IMP: (10/11/05, SMR) Old outline textures are now used in the new scheme.

BUG: (10/11/05, SMR) Multi-object properties doesn't understand rotated transistors (Bug #626).
FIX: Rotated transistors are handled properly.

BUG: (10/11/05, SMR) Non-centered text on rotated nodes doesn't select properly (Bug #536).
FIX: In Highlighter.findAllInArea(), transform text area after precisely defining it.

BUG: (10/11/05, SMR) Rotated text with multiple lines draws badly (Bug #629).
FIX: Improved location computation, highlighting, and rendering.

IMP: (10/11/05, DN) Simplification of NodeInst and ArcInst ("duplicate" removed, "arcId/nodeId" is used instead).

BUG: (10/10/05, DN) Alignment of text in cross-library copy (Bug #632).
FIX: In CrossLibCopy.showCells use "CellName.compareTo" instead of STRING_NUMBER_COMPARE. 

BUG: (10/10/05, GVG) Correcting poly pin centers. They should be a point, not a rectangle.
FIX: Changing offset in primitive.

BUG: (10/10/05, GVG) Find doesn't work with simple regular expressions (bug #636).
FIX: SelectObject dialog now uses Pattern/Match classes for the regular expression because
String.matches doesn't seem to work.

BUG: (10/10/05, SMR) Spice output fails to instantiate subcells that are replaced by a model file (Bug #637).
FIX: In Topology.Visitor.enterCell(), cache cell information even if being ignored.

BUG: (10/10/05, SMR) Cell-center nodes are not visible in black-background colors (Bug #627).
FIX: The commands to switch color schemes now change the Generic layer colors.

BUG: (10/10/05, SMR) When editing "down in place", scroll bars and arrow keys are wrong (Bug #634).
FIX: Scroll bars fixed in EditWindow.setScrollPositionUnsafe, bottomScrollChanged, and rightScrollChanged.
     Arrow keys fixed in ClickZoomWireListener.moveSelected.

IMP: (10/09/05, SMR) Added different outline patterns to textured layers (Bug #617).
     Affects "Artwork Appearance" and "Layers" preferences.
     Updated technology editor to handle it.

BUG: (10/07/05, GVG) Cut spacing in 1xN and MxN poly contacts was not 2.5 and 2.8 respectively (Bug #624)
FIX: Split of cut DRC rules into CUTSPA and CUTSPA2D as it is done in TSMC90.

BUG: (10/07/05, GVG) Fix CUTSUR to 1.4 for well contacts in TSM180.

IMP: (10/07/05, GVG) Cadence Preferences XML under SunAsync menu. It will allow you to backup previous configuration.

IMP: (10/07/05, GVG) Disconnect resizing of arcs when you switch from Mosis->TSMC until better solution is found.

BUG: (10/07/05, SMR) Pure layer nodes of well or select are not drawn (Bug #622).
FIX: In VectorDrawing, do not ignore well/select layers from pure-layer nodes.

IMP: (10/07/05, SMR) Parasitics preferences now have technology popup.

BUG: (10/07/05, SMR) Component menu has wrong background color (Bug #620).
FIX: Moved initialization of background color in PixelDrawing.java.

BUG: (10/06/05, DN) Epic waveform viewer exception while reading incomplete out file (Bug #619)
FIX: In EpicOut.EpicReader.readBug set "bufL = 0" on EOF.

IMP: (10/06/05, SMR) Grid preferences now offers option to show axes through origin (Bug #616).

BUG: (10/06/05, SMR) Graphical cell lists always show the entire library,
     never from current cell (Bug #614).
FIX: In CircuitChanges.GraphCells constructor, save "top" parameter.

BUG: (10/06/05, SMR) List Cell Usage doesn't handle icons (Bug #618).
FIX: In CellUsage.java, consider icon cells, too.

BUG: (10/06/05, SMR) Colors are not updated after importing preferences.
FIX: Added recaching to EGraphics, delayed background caching to PixelDrawing.

BUG: (10/06/05, SMR) New "Layers" tab doesn't always show the preview.
FIX: Made the preview be separate from the color chooser.

BUG: (10/06/05, SMR) Cell frames are not visible when the background is black (Bug #615).
FIX: Use proper color, not black.

BUG: (10/06/05, SMR) Printing schematics and layout is wrong.
FIX: In EditWindow.paint() and EditWindow.repaintContents(), ignore windows with no frame.

IMP: (10/06/05, DN) In many places generic type parameters are added for static type-checking.
     runAll4.sh script is added to regressions of main branch by Java 1.4 .

************************* Version 8.04a: *********************************

BUG: (10/05/05, GVG) Navigation with < and > fixed in ErrorLogger (Bug #624).

IMP: (10/05/05, SMR) Title box now defaults the designer name to the current user (Bug #609).

IMP: (10/05/05, GVG) Extra dialog for bug 588 to avoid exception message.

BUG: (10/05/05, GVG) KeyBinding explorer tree did't describe properly keybinding like '>'
     due to keyCode = KeyEvent.VK_UNDEFINED (Bug #604).
FIX: Apply getChar in this case.

BUG: (10/05/05, SMR) Spice output doesn't notice header/trailer files in
     directories that are not where the library came from (Bug #594).
FIX: In "Spice.writeHeader()" and "Spice.writeTrailer()", use current output file's directory.

IMP: (10/05/05, SMR) New command in SDI mode: "Window / Remember Location of Display"
     saves initial window location.

BUG: (10/05/05, SMR) Zooming-out (with Shift key) while editing down-in-place fails (Bug #492).
FIX: In ZoomAndPanListener.mouseReleased(), transform coordinates when down-in-place.

BUG: (10/05/05, SMR) Outline edit mode places new points in strange locations (Bug #154).
FIX: In OutlineListener.mousePressed(), take new point from cursor.

BUG: (10/05/05, SMR) Importing preferences doesn't update layer appearance (Bug #601).
FIX: Must recache all EGraphics information after importing preferences.

IMP: (10/05/05, DN) Transactional DB: PortInst stores its Variables in ImmutableNodeInst.

BUG: (10/05/05, DN) JELIB reader doesn't convert variables on port inst.
FIX: Move conversion from ELIB to LibraryFiels.

IMP: (10/04/05, RK) Add loco2 and sport to NCC regressions

IMP: (10/04/05, GVG) Original fix for enhacement #507 didn't work as expected. So new code should check if
cells are in goodDRCDate. If cells are there, it means they were touched by the current run.

BUG: (10/04/05, DN) Pattern matching called from "EvalJavaBsh.replace()" allocates too many temporary objects.
FIX: Cache "replace" results in HashMap.

BUG: (10/04/05, DN) Message "Unlinked var ART_message added to highlight" when roaming text.
FIX: In user.Highlight.setVar print message when var is NOT linked.

BUG: (10/04/05, DN) Some regressions fails in progress dialog (Bug #197).
FIX: In methods of class user.dialogs.Progress insert "if (Main.BATCHMODE) return".

BUG: (10/04/05, DN) Spice (Epic) waveform viewer cross-probing broken again after #583 fix (Bug #580).
FIX: In WaveformWindow.findSelectedSignals use findSignalForNetwork after findSignalForNetworkQuickly failed.
     In Signal.setSignalName use getFullName() instead of signalName.

IMP: (10/03/05, SMR) Combined the "Layers" and "Colors" preferences into a single panel.
     Extended the "Artwork Appearance" dialog to include layers and colors.

IMP: (10/03/05, SMR) Modified more "Preferences" panels to have their own technology popup:
     Routing, Logical Effort.

BUG: (10/03/05, DN) Assertions in Cell.java and Out of Bounds exceptions (Bug #598).
FIX: In PortInst.isLinked() check nodeInst.isLinked()

BUG: (10/03/05, GVG) During preferences, key bindings might get duplicated. This was noticed while fixing Bug #578.
FIX: Replace List by Set as elements of userMap hash table.

IMP: (10/02/05, RK) NCC: Improvement to hash coding algorithm (Bug# 599)

IMP: (10/02/05, DN) Transactional DB: Variable and TextDescriptor are immutable classes. They have "with*" API.

BUG: (09/30/05, GVG) preferences don't "stick" (Bug#575).
FIX: Making DRC options not meaning variables to avoid confusion.

IMP: (09/30/05, GVG) Foundry in StatusBar part of technology message. It can't be in
second row because of hierarchical information. See "IMP: (09/21/05, GVG) Foundry shown.."

IMP: (09/30/05, SMR) Modified some "Preferences" panels to have their own technology popup:
     CIF, GDS, Antenna Rules, Coverage, New Arcs, New Nodes.

IMP: (09/30/05, SMR) When plotting simulation output, prompt for associated cell allows
     any cell to be chosen (Bug #595).

BUG: (09/30/05, RK) NCC regressions don't run on Windows (Bug #596).

BUG: (09/30/05, RK) NCC: Local Partitioning perfomance bug for large number of PortInsts (Bug #572).

BUG: (09/30/05, SMR) Black background doesn't draw text right (Bug #593).
FIX: Changed default black color to an appropriate one for the background.

IMP: (09/30/05, SMR) Schematic DRC no longer checks for overlap of graphics.

IMP: (09/30/05, SMR) "Layers" preferences panel has intelligent "outline" checkboxes.

BUG: (09/30/05, SMR) Crossprobing from the schematics to the waveform window takes too long (Bug #583).
FIX: Use hash tables to optimize name lookup.

IMP: (09/29/05, SMR) Added keyboard shortcut listing in manual.

IMP: (09/29/05, SMR) Added manual entry for schematic DRC.

IMP: (09/29/05, SMR) Added section in "Layout Tutorial" of manual that explains
     how to connect a contact to a transistor.

BUG: (09/30/05, GVG) Solid colors in ColorsTab are not updated because the information
relies on values found in LayersTab (Bug #589).
FIX: Make layerMap in LayersTab a singleton.

BUG: (09/30/05, DN) Cleanup Cell/Shorten Selected Arc, does opposite (Bug #587).
FIX: In CircuitChanges.ShortenArcs.doIt use ArcInst.HEADEND and ArcInst.TAILEND instead of 0 and 1.

BUG: (09/26/05, DN) Deleting arcs is too slow (Bug #547)
FIX: Comment check of Connections in Cell.check().

BUG: (09/29/05, DN) Schematic VDD Symbol misleading (Bug #586)
FIX: In technologies.Schematics change "pwr" to "vdd" and add item to "converOldPortName".

BUG: (09/29/05, GVG) Sizes of poly arcs change depending on order libraries are read in (Bug #576).
FIX: Add ResetDefaultWidthJob(lib) every time a library is read because it can't rely on
the reconcilation dialog. As side effect, only gate arcs parallel to the transistors will
be resized.

BUG: (09/28/05, SMR) Text is always black: does not show up on black background.
FIX: In "PixelDrawing.drawText()", initialize color to proper default.

BUG: (09/28/05, SMR) Printing does not work.
FIX: In "FileMenu.printCommand()", must call "getOutputPreferences()" all the time,
     not just when printing Waveform windows.

BUG: (09/28/05, SMR) Toolbar buttons for arrow key distance are not set right.
FIX: In "ToolBar.createToolBar()" set defaults from Preferences value.

IMP: (09/28/05, DN) Transactional DB: ImmutableArcInst and ImmutableNodeInst are subclasses of ImmutableElectricObject.

BUG: (09/28/05, GVG) KeyBindings are not cached if preferences are imported. Export/Import
as new button names in Preferences (Bug #578)
FIX: Calling MenuBar.restoreSavedBindings(false) in Preferences.

BUG: (09/27/05, DN) Spice (Epic) waveform viewer cross-probing broken down in hierarchy.
FIX: In io.input.EpicOut.readEpicFile add "removeLeadingX()" to strip 'x' from Epic names.

BUG: (09/27/05, DN) "Spice.segmentedNets.PortInstComparator.compare" doesn't obey the contract for "compare".
FIX: Compare NodeInsts of PortInsts first.

BUG: (09/27/05, DN) Compaction regression fails.
FIX: In constraint.LayoutCell replace "arcModified" by "arcMoved", so that change of bits doesn't lock arc.

BUG: (09/27/05, DN) NullPointerExceptions in BATCH mode.
FIX: In WindowFrame.createEditWindow insert "if (Main.BATCHMODE) return null;"

BUG: (09/27/05, DN) NullPointerException in TextUtils.formatDouble.
FIX: In TextUtils.formatDouble change numberFormatPostFix to numberFormatSpecific.

BUG: (09/27/05, DN) Icons should be always be expanded cells/instances (Bug #570)
FIX: In Cell.isWantExpanded() and NodeInst.setExpanded() ensure that icon instances are always expanded.

IMP: (09/27/05, DN) Branch "version8-03-stable" was created from tag "version8-03.h".
     The main branch has version number "8.04a".

BUG: (09/26/05, GVG) Changes in the code to be able to run regressions without setting the environment variable DISPLAY (bug 197).
FIX: Decouple messages stream from messages window. Regressions updated.

BUG: (09/26/05, RK) Bug: Node Info dialog has MoCMOS polysilicon resistors width and length swapped. (Bugzilla# 574)

BUG: (09/26/05, RK) Bug: NCC doesn't recogognize MoCMOS polysilicon resistors.
FIX: I made MoCMOS names same as TSMC90 (Bugzilla# 573)

BUG: (09/26/05, RK) I fixed: NCC: Comparing a Cell and its child yields match. (Bugzilla# 571)

BUG: (09/26/05, SMR) New VectorDrawing module doesn't handle complex orientations right.
FIX: In "VectorDrawing.render()", reverse Orientation concatenation.

BUG: (09/26/05, DN) Deleting arcs is too slow (Bug #547)
FIX: Guard some of checkInvariants by "if (Main.getDebug()).

BUG: (09/26/05, DN) GetInfoArc dialog creates "ART_color" variable though nothing was changed.
FIX: In GetInfoArc.doLoadInfo assign "DEFAULT COLOR" to initial value".

BUG: (09/26/05, DN) State bits of nodes and arcs are not Undoable.
FIX: In NodeInst and ArcInst use Undo.modifyNodeInst and Undo.modifyArcInst instead of Undo.otherChanges.

IMP: (09/26/05, DN) Transactional DB: ImmutableElectricObject which stores ImmutableVariables.

IMP: (09/24/05, GVG) Option -v doesn't initialize any GUI stuff so it could run without setting
the DISPLAY variable.

IMP: (09/24/05, GVG) N-Well should be hard to select by default (Bug #368)
Implemented for new nodes created with the TechPalette.

BUG: (09/23/05, DN) Icons should be always be expanded cells/instances (Bug #570)
FIX: In input.JELIB.instantiateCellContents don't use expand flag from disk file, because it is false now.
     Expand bit of NodeInsts will be set either from preferences or from Cell default "getProto().isWantExpanded()".
     Icon cells have "isWantExpanded()=true", so they are expanded by default.

************************* Version 8.03h: *********************************

BUG: (09/23/05, GVG) Icons should be always be expanded cells/instances (Bug #570)
FIX: Force expansion for master icons (in schematics master) and instances.
Added if (ni.isIconOfParent() || ((Cell)ni.getProto()).isIcon()) ni.setExpanded(true); in Cell.loadExpandStatus().

IMP: (09/23/05, DN) Transactional DB: Changes in library readers, Input.readLibrary moved
     to LibraryFiles.readLibrary ( regression scripts updated ).

BUG: (09/22/05, GVG) Exception in WindowMenu -> Move to other Display due to latest changes in ToolBars (Bug #560)
FIX: Detect if allButtons.size() == 0 and return false;

BUG: (09/22/05, GVG) Problem renaming cells for GDS export when name conflicts were found. This was the reason
ExportGDS_CIF was failing since v8.03f for qFourP2.
FIX: Changes in GDS.makeUniqueName().

BUG: (09/22/05, GVG) Gate generations for TSMC180 and TSMC90 passe now.
FIX: Some resolution errors fixed in fillDiffAndSelectNotch while extending region to cover
select on transistors not aligned.

BUG: (09/22/05, SMR) Icon cells get "greeked" out (Bug #561).
FIX: In VectorDrawing.drawCell, clear maximum feature size information for icons.

BUG: (09/21/05, SMR) Arcs in the component palette are not drawn (Bug #565).
FIX: In ArcInst.makeDummyInstance(), compute dummy arcs properly.

IMP: (09/21/05, GVG) Correcting regression data due to latest changes in network, GDS layers, etc that make the
regressions to fail.

BUG: (09/21/05, GVG) Still having problems with notches in TSMC180 gate regression, few errors though for some
weak transistors not aligned with the rest of the primitives.

IMP: (09/21/05, GVG) Foundry shown in StatusBar below technology. Valid only for layout technologies.

BUG: (09/21/05, DN) Strange behavior - lots of networks (Bug #557)
FIX: NetworkHighlighter finds highlights for a set of Networks avoiding duplicates.

IMP: (09/21/05, DN) Transactional DB: ImmutableVariable.
     ElectricObject.newKey was moved to Variable.newKey.

IMP: (09/21/05, SMR) Added David Harris's Electric tutorial to the user's manual.
     Added his MIPS library to the library area; added new command under Help / Load Built-in Libraries
     to load it.

************************* Version 8.03g: *********************************

BUG: (09/21/05, JKG) Null exception in Export Spice (Bug #556)

BUG: (09/21/05, SMR) Editing cell in new window gets size wrong (Bug #417)
FIX: In WindowFrame.createEditWindow, call fillScreen() before repaintContents().

BUG: (09/21/05, DN) NetSchem throws exception when icon port has no equivalent port (Bug #554 #555).
FIX: In NetSchem.buildNetworkLists add loop by NodeInsts to give temporary names to unconnected Networks.

BUG: (09/20/05, GVG) Bug fixes for TSMC180 gate generator. Select notch fill function
was not working when left mos was not aligned with right mos.

BUG: (09/20/05, SMR) Changing a cell lower in the hierarchy may not redraw it higher
     up the hierarchy in other windows (Bug #437).
FIX: In User.markCellForRedraw, always recurse up the hierarchy.

IMP: (09/20/05, SMR) "Select Object" can now search by regular expressions (Bug #370).

IMP: (09/20/05, SMR) Selecting a node shows its size in the status bar (Bug #341).

BUG: (09/20/05, SMR) Layers tabs in different windows don't update properly (Bug #431).

BUG: (09/20/05, SMR) Absolute text (in points) is not considered in cell size (Bug #386).
FIX: In ElectricObject.getTextBounds, do not ignore absolute text.

IMP: (09/20/05, SMR) Multi-object Properties dialog is smarter about the selected objects (Bug #403, #435)

BUG: (09/20/05, DN) Cleanup pins doen't delete all duplicate arcs (Bug #552).
FIX: In CircuitChanges.cleanupCell iterates on arcs instead of on nodes.

BUG: (09/20/05, DN) Network names "p1-2" and "p12" are considered equivalent by NetworkTool.
FIX: In text.Name class remove "trimPlusMinus".

BUG: (09/20/05, DN) "s1.toLowerCase().equals(s2.inLowerCase()" is not equivalent to s1.equalsIgnoreCase" but is used in many places.
FIX: In TextUtils add "canonicChar" and "canonicString" methods and use them. 

BUG: (09/20/05, DN) Assertion error after bus width error messages (Bug #549)
FIX: In NetSchem.localConnections do something plausible when width mismatches.

BUG: (09/20/05, DN) Not all error messages are shown.
FIX: In ErrorLogger.clearLogs(Cell) don't clear trimmedLogs.

BUG: (09/18/05, DN) Exports in Spice are not in STRING_NUMBER_ORDER.
FIX: In "Topology.doGetNetworks" sort by name. In Spice.java use STRING_NUMBER_ORDER.

IMP: (09/18/05, GVG) Gate generator for TSMC180

BUG: (09/18/05, DN) If we add 90-angle polysilicon arc to the unconnected end of 45-angle transistor in
    "Help|Make fake circuitry MoCMSO" example, we shall get a notch.
FIX: Do not use "canShrink" in "PortInst.updateShrinkage" until PrimitiveNodes can be drawn shortened
     in JElectric.

BUG: (09/18/05, DN) 45-angle arc is not shrinked properly in "Help|Make fake circuitry MoCMOS" example.
FIX: Add "PortInst.updateShrinkage" and "PortInst.checkShortening" methods which are improved verions of
    "ArcInst.updateShrinkage" and "ArcInst.checkShortening".

BUG: (09/18/05, DN) Expanded status of Cells which have '/' in name is not saved in preferences.
FIX: In Cell.loadExpandStatus and Cell.saveExpandStatus put "cellName.replace('/', ':')".

BUG: (09/18/05, DN) Compaction regression failed.
FIX: In ArcInst.copyConstraintsFrom insert copy angle as well. 

BUG: (09/16/05, RK) Fixed FillGenerator. It was placing Well outside Cell boundary on left and right. (Bugzilla# 551)

IMP: (09/16/05, SMR) Added another General preference: the portion of the screen
     that a cell must consume to NOT be greeked by the display system.

BUG: (09/16/05, SMR) Spice output removes apostrophies unnecessarily (Bug #546).
FIX: Allow them in parameter substitution of templates.

BUG: (09/16/05, DN) Inverse alphabatical order of net names.
FIX: In Network.addUserName put "<" instead of ">".

BUG: (09/16/05, DN) Sometimes constraint system swaps ends of modified ArcInst.
FIX: In constraint.LayoutCell use ArcInst.HEADEND and ArcInst.TAIEND .

IMP: (09/15/05, RK) FillGenerator modified to work for tsmc180. (Bugzilla# 545)

BUG: (09/15/05, DN) HierarchyEnumerator should choose user-defined name for nets shortened by resistor.
FIX: In HierarchyEnumerator.numerNets choose the most appropriate name.

IMP: (09/15/05, SMR) When interactively sizing, Shift key now constrains
     proportions; hold Control-Shift to do sizing about center (Bug #344).

IMP: (09/15/05, SMR) "Select Object" command now flashes small selections and
     points out those off the screen (Bug #401).

BUG: (09/15/05, SMR) CDL files should not include "Spice Code" information (Bug #426).
FIX: Code and Declarations ignored in CDL mode.

IMP: (09/15/05, SMR) In "zoom" mode, right click and drag up/down does
     continuous zooming in and out.

IMP: (09/19/05, SMR) Can now create "Spice Declaration" objects which are emitted at the
     head of the cell (Bug #456).

BUG: (09/15/05, SMR) New windows are created with improper toolbar button settings (Bug #475).
FIX: In ToolBar.createToolBar(), initialize buttons properly.

BUG: (09/15/05, SMR) Measure mode crashes when multiple SDI windows are crossed.
FIX: In MeasureListener.mouseDragged, make sure the drag was properly initiated.

BUG: (09/15/05, SMR) Typing ^K when there is no window crashes (Bug #532).
FIX: Make sure the results of EditWindow.needCurrent() are tested everywhere.

BUG: (09/15/05, SMR) Plotting Spice/Verilog listings doesn't prompt for associated cell. (Bug #535, 542)
FIX: In Simulate.plotSimulationResults(), fixed bad test for cell validity.

IMP: (09/15/05, DN) Transactional DB: ImmutableArcInst.java.

IMP: (09/15/05, GVG) GateGenerator changes for TSMC180 (not all)

IMP: (09/14/05, SMR) Can now change the font and size of text when editing textual cells.

IMP: (09/14/05, SMR) EDIF Preferences now has "Cadence compatibility" checkbox.
     In Cadence mode, multidimensional and symbolic busses are made into scalars.

IMP: (09/14/05, SMR) Preferences dialog now has "Save" and "Restore" buttons (Bug #541).

IMP: (09/14/05, SMR) Waveform viewer shows the name of the stimulus file (Bug #544).

IMP: (09/14/05, SMR) New display algorithm handles variable context properly.
     Aborts cleanly when new display is requested.
     Has control (in "General" preferences) for greeking level.

BUG: (09/13/05, SMR) Display flashes occasionally, briefly clearing everything.
FIX: Made EditWindow be "Opaque" so that it is not cleared by Swing.
     Ensured that EditWindow.paint() always draws.

IMP: (09/12/05, SMR) Complete rewrite of display code.  New module, "VectorDrawing.java"
     caches low-level graphics for each cell, allowing caches to be "played-back" rapidly.
     Has better performance than "PixelDrawing" which caches expanded cell images.
     Does not need to recache when zoom scale changes, layer visibility changes, etc.
     Only downside is that cache creation is slow when large chip is first fully-instantiated.

BUG: (09/11/05, DN) Slow display (Bug #537).
FIX: In PixelDrawing make maxObjectSize and halfMaxObjectSize static (they were 0 in cache cells).
     Use class ExpandedCellKey instead of String. Don't create Image for cache cells.

BUG: (09/11/05, DN) Problem with rotation of bus arcs (Bug #539).
FIX: In CircuitChanges change method RotateSelected.doIt .
     In LayoutCell use arcModified test instead of getChangeClock .

IMP: (09/10/05, JKG) Added option under NCC to back-annotate layout with schematic
    net names. This allows easier probing when writing netlists from layout (Parasitic extraction).

IMP: (09/09/05, JKG) Added Sun-specific menu. This is a plug-in meant only
    for use in our async group, for better integration with tools here.

IMP: (09/09/05, JKG) Option to convert Export names when writing GDS if NCC
    annotation 'exportsConnectedByParent' is present. This asserts a virtual connection
    between networks that have exports matching the annotation. Other CAD tools provide
    this functionality, but only match names that have a ':' in them and match exactly.
    This option renames those exports to all the same name with a ':' in them so other
    tools can provide the same functionality as 'exportsConnectedByParent'.

BUG: (09/09/05, DN) JELIB reader reads only last decimal digit of tech-specific bits.
     For example, it corrupts PortCharacteristic of Global-Signal instances.
FIX: In io.input.JELIB.instantiateCellContents line 868 put "break parseStateInfo;" into loop parsing NodeInst's sateInfo .

IMP: (09/09/05, DN) Wiped bit is not stored to library files, because it is computed form database.
    So 'W' and 'E' bits are not written to JELIB node inst lines more.

BUG: (09/09/05, DN) Expand cell instances should not modify referenced library (Bug #366).
FIX: Expand instance bits are no more part of database. They are user preferences,
     which are saved to registry on Quit. Unfortunately, they are not undoable now.
     OBJECTREDRAW in Undo doesn't set cell modified flag, so expand cells doesn't touch
     Cell explorer.

IMP: (09/07/05, JKG) Added max series resistance option under parasitics.
     This breaks long single PI models into series of distributed PI models.

BUG: (09/09/05, DN) Mirroring not correct on icons *Bug #531).
FIX: In CircuitChanges.java change method RotateSelected.doIt().

BUG: (09/09/05, DN) Spice netlister should use alphabetically first export name fo rsignal name independently of its width (Bug #512)
FIX: In Topology.java add "isChooseBestExport()" decider, In Spice.java override it by "false".

BUG: (09/08/05, DN) HierarchyEnumerator was shorting polysilicon resistors when it wasn't supposed to. (Bugzilla# 529)

BUG: (09/07/05, SMR) Invisible components are selected when "Dragging must enclose objects"
     is checked (Bug #335).
FIX: Reorganized Highlighter.checkOutObject() to ensure objects are visible.

BUG: (09/07/05, RK) 90nm fill cell generator fixed to not extend well outside cell boundaries (Bugzilla# 469)

BUG: (09/07/05, RK) NCC now stops when the user aborts the job (Bugzilla# 523)

IMP: (09/07/05, SMR) Modified compactor to enable regression testing of it.

IMP: (09/07/05, SMR) Export Properties dialog now shows the export center location (Bug #481).

IMP: (09/07/05, SMR) "Attributes" dialog now has "Edit" button next to value field (Bug #517).

************************* Version 8.03f: *********************************

IMP: (09/05/07, SMR) Further improvements for EDIF bus output.

BUG: (09/07/05, SMR) When components from two different technologies are displayed,
     the color maps may interfere (Bug #500).
FIX: Removed color maps from the Schematics technology so it can mix properly.

BUG: (09/06/05, SMR) Attributes "Value" field moves cursor to end with each change (Bug #517).
FIX: Do not update field when typing has occurred.

IMP: (09/06/05, SMR) Layout text can now take multiple lines (Bug #520).

BUG: (09/07/05, DN) IRSIM and some other netlisters doesn't treat properly PolyResistors and SpiceAmmeters.
FIX: This is not a fix yet, but prearation for it.
     The solution will be: HierarchicalEnumerator will create its own Netlists dependent of parameters.
     Now I removed Netlist parameter from HierarchicalEnumerator.enumerateCell methods .

BUG: (09/07/05, DN) Expand/unexpand is broken in Layout (Bug #525)
FIX: In PixelDrawing.expandedCellCached swap getShearX() and getShearY().

BUG: (09/07/05, DN) NodeInst.getInstancesOf returns instances of other cells (Bug #526, Bug #527)
FIX: In NodeInst.NodeInstIterator.findNext test ni.getProto().

BUG: (09/06/05, RK) NCC no longer displays Part, Wire, Port counts when a netlist error prevents it from building a netlist. Instead it says couldn't build netlist. See errors. (Bugzilla #519)

BUG: (09/06/05, RK) NCC suggests use of resistorType annotation if resistor type is missing. Updated NCC user manual to describe transistorType and resistorType annotations (Bugzilla #484)

IMP: (09/06/05, JKG) Added option to encase top level cell in subckt defintion for spice output.

BUG: (09/06/05, SMR) Attributes "Value" field moves cursor to end with each change (Bug #517).
FIX: Do not update field when typing has occurred.

IMP: (09/06/05, SMR) Layout text can now take multiple lines (Bug #520).

IMP: (09/05/05, SMR) Further improvements for EDIF bus output.  Configuration
     settings are now in EDIF Preferences.

IMP: (09/05/05, DN) Transactional DB: LibId.java, ExportId.java, PortProtoId.java.

IMP: (09/06/05, DN) GenMath.figureAngle rounds to nearest 1/10 (was to lower).

IMP: (09/05/05, GVG) Add one option in Edit menu to toggle between neither end/both ends (bugzilla #489)

IMP: (09/05/05, GVG) Ability to search cells by name under ExplorerTree

IMP: (09/05/05, GVG) Expand explorer tree in Manual to place where html page is open (bugzilla #515).
Same for preferences dialog.

IMP: (09/05/05, GVG) Include library name in error message in LE (Bugzilla #516)
FIX: Added 'in (" + localCell.getLibrary().getName()+")' in error message.

IMP: (09/04/05, JKG) Add button to allow user to reset layer parasitics to factory default values

IMP: (09/04/05, DN) In getShape methods EditWindow class is replaced by EditWindow_ interface
    for future changes.

IMP: (09/04/05, DN) Step to transactional database: CellId.java, CellUsage.java, NodePortoId.java .

IMP: (09/04/05, DN) Less error messages on "unconnected pins" in NetCell.java .

IMP: (09/03/05, GVG) Max length rules for slot wires implemented. The code runs together with min area
checking because max length should be checked in extracted geometry (Bugzilla #518)

IMP: (09/02/05, GVG) Italian font when cells/libraries are marked with minor changes. Minor/major status
also valid for cells. Some code to determine if cells can be removed.

IMP: (09/02/05, GVG) Bold/italic fonts also for groups (Bugzilla #499)

BUG: (09/2/05, GVG) Exception in Cell information if no DRC was run (no Bugzilla)
FIX: DRC.getActiveBits() needs Technology as parameter.

IMP: (09/02/05, DN) Speed up redisplay:
  1) Don't use slow Math.round in databaseToScreen .
  2) Don't initialize temporary EditWindow when create PixelDrawing for subcell.

BUG: (09/02/05, SMR) Zero width arcs are drawn incorrectly (Bugs #521 & #522).
FIX: Incorrect optimization of zero-width arcs repaired.

IMP: (09/01/05, JKG) Simple Parasitic Extraction from layout for spice

IMP: (09/01/05, SMR) Speed up redisplay.

IMP: (08/31/05, SMR) EDIF I/O configuration now handles global name conversion.

************************* Version 8.03e: *********************************

IMP: (08/30/05, SMR) Initial changes to speed up redisplay when small amounts change.

IMP: (08/29/05, SMR) Improved EDIF I/O (and the "edif.cfg" file) for Cadence compatiblity.

BUG: (08/29/05, SMR) Drawing transparent layers from a technology other than the current
     produces an error and fails to draw the layers (Bug #500).
FIX: In PixelDrawing.java, convert the transparent layers to opaque layers.

BUG: (08/29/05, SMR) Closing a library is prevented if instances from it are in the clipboard (Bug #504).
FIX: Clear the clipboard in such situations.

IMP: (08/30/05, GVG) Changes in DRC documentation to deal with Bug #496

IMP: (08/27/05, DN) Connections of NodeInst are sorted by port index. This speeds
    up PortInst.getConnections() method in case of cell instances with many exports.

IMP: (08/27/05, GVG) Option under ERRORS in Explorer Tree to delete all loggers at once.

BUG: (08/26/05, SMR) When editing "down in place", double-clicks from explorer fail (Bug #506).
FIX: In EditWindow.setCell(), must set in-place bit properly.

IMP: (08/26/05, SMR) When cycling through errors, if selected objects are not visible,
     screen shifts to them

IMP: (08/26/05, SMR) "Measure" mode in waveform window snaps to lines, not just points.

IMP: (08/25/05, SMR) Waveform window now crossprobes between Explorer tree and schematic.
     Also have "R" key bound to "Remove from Waveform" in "Edit / Selection".
     (Bug #502).

BUG: (08/25/05, SMR) Moving 45-degree arcs crashes.
FIX: In CircuitChanges.ManyMove.doIt(), guard against singularities in computing intersection.

BUG: (08/24/05, SMR) Arc Properties dialog sometimes shrinks fields (Bug #487).
FIX: Must repack dialog when fields change.

BUG: (08/24/05, SMR) When text is "greeked" (drawn as a line because it is too small)
     The line is too long (Bug #424).
FIX: In "PixelDrawing.drawText()", compute size properly.

IMP: (08/25/05, GVG) Version not updated once library is saved (Bug #508)

IMP: (08/25/05, GVG) Improvements on DRC tool regarding cells that already being checked without no errors (Bug #507)

BUG: (08/25/05, DN) Compilation error on Java 1.5 (Bug #505).
FIX: Change Integer.valueOf(n) to new Integer(n) in LayoutCell.java.

BUG: (08/25/05, DN) Undoing moving of cell center (Bug #453).
FIX: Change in constraint/undo system.

IMP: (08/25/05, DN) NodeInst costructors and modifieds use Orientation.

IMP: (08/24/05, SMR) Modified generators (pad frame, ROM, CMOS, Silicon compiler)
     so that they can be tested in automatic regressions.

BUG: (08/24/05, DN) Epic ".out" reader doesn't incput current waveforms.
FIX: In EpicOut add waveform type. Calculate mivV/maxV for every signal.

IMP: (08/23/05, GVG) Disconnect PP/NP.R.1 from DRC. Those rules are guaranteed by construction and causing more
distraction now.

IMP: (08/23/05, GVG) More suitable combination of TSMC180 rules in MoCMOS technology.

IMP: (08/23/05, GVG) Adding overlap value in DRC error messages. polyCoverByAnyVTLayer() only available in 90nm.

IMP: (08/22/05, SMR) Modified printing so that common print dialog is used
     (used PrintRequestAttributeSet parameter to PrinterJob.print()).

IMP: (08/22/05, SMR) Fixes to node extractor.

************************* Version 8.03d: *********************************

BUG: (08/22/05, GVG) Problems with poly to active spacing (Bug #483)
FIX: the crop functionality doesn't work when multiple arcs overlap. This is a patch and still is not perfect.

BUG: (08/22/05, GVG) VT{H/L}_{P/N}.D.2 not available in ST90 (only available if TSMC is the foundry) (Bug #493)
FIX: Make code available under ST foundry

IMP: (08/22/05, GVG) RH layer added in TSMC90 and poly resistors (same scale as select layers) (Bug #486)

BUG: (08/19/05, SMR) Spice output doesn't handle long comments in "Spice cards" (Bug #442).
FIX: Now recognizes comments and handles continuation properly.

IMP: (08/19/05, SMR) Non-HSpice output readers now recognizes all HSpice formats (Bug #461).

BUG: (08/19/05, SMR) When copying a schematic to another library with "use existing subcells"
     checked, it will copy the icon instead of using an existing one (Bug #444).
FIX: In "CircuitChanges.copyRecursively()", must actually check the destination library
     to prevent duplicate copying.

BUG: DRC on loPI fill throws exception in method PolyBase.getSortedLoops (Bug #467).
FIX: PolyBase is not Comparable, so pass AREA_COMPARATOR to "sort()" method. 

IMP: (08/18/05, GVG) More changes for Mosis->TSMC switch (select surround in active contact) (Bug #477). 
RPO is silicide block and with same pattern as in 90nm

************************* Version 8.03c: *********************************

BUG: (08/18/05, GVG) Fix for bogous DRC rule RPO.R.1 (Bug #478)

IMP: (08/17/05, GVG) RPO resistors in 180nm (Bug #458)

IMP: (08/17/05, GVG) More changes for Mosis->TSMC switch in 180nm

BUG: (08/17/05, GVG) Problems getting via spacing rules for multi-cuts. (Bug #468)
Note: This might generate more errors in TSMC90 because vdd/gnd must be connected explicitly in some
cells.
FIX: Three states for multi cuts: -1 (don't care), (0) 1xN arrays, (1) MxN arrays for contacts.

IMP: (08/17/05, GVG) ALGO_SWEEP default in DRC area checking

BUG: (08/17/05, GVG) imported cells from GDS should be given type {lay} (Bug #472)
FIX: Added View.LAYOUT.getAbbreviation() to the cell name during importing of the cell.

BUG: (08/16/05, RK) GDS import places Exports on wrong layer (Bug #471)

BUG: (08/16/05, GVG) Unable to probe global signals in Waveform (Bug #470)
FIX: Added Globals in Waveform.getSpiceNetName() because globals are nor marked
as export.

BUG: (08/16/05, DN) Bug in "List connections on network" (Bug #466).
FIX: In ToolMenu.listConnectionsOnNetwork use "HashSet ports" instead of "PortProto pp".

BUG: (08/14/05, GVG) Fix to avoid exception if layers[i] is null in Technology.setColorMapFromLayers()
on Mac (not sure if happens on other machines)

IMP: (08/12/05, RK) 90nm Layout Generator: add invCLK (Bug# 463)

BUG: (08/12/05, RK) NCC Fix for: NCC throws exception: "Must be leaf", (Bug# 459)

IMP: (08/12/05, GVG) Extra functions to covert MoCMOS cells into TSMC180 ones.
Resize of primitive nodes only available for 180nm tech. Poly arcs and transistor lengths
are resized to multiple of the default value (2.0 for MoCMOS or 1.8 for TSMC).

BUG: (08/12/05) Several bug fixes related to preferences that might have fixed Bug #462.

IMP: (08/10/05, GVG) Foundries only available for 90nm and MoCMOS technologies.

BUG: (08/10/05, GVG) Exception if trying to read HSpice file with PSpiceOut reader (Bug #460)
FIX: Detect error and abort reading.

IMP: (08/10/05, GVG) TSMC switch in 180nm technology. Primitive nodes are resized.
Different GDS values are stored for TSMC. Resize functions available in Preferences.

IMP: (08/10/05, DN) NodeInst rotation methods use Orientation class.

BUG: (08/10/05, DN) Outline edit broken if shape is mirrored (Bug #452)
FIX: In NodeInst.setTrace put getXSizeWithMirror instead of getXSize.

IMP: (08/10/05, IM) NCC GUI: Segregated matched and mismatched Parts/Wires in
     equivalence classes. Mismatches are printed in red, matches in green.

BUG: (08/09/05, GVG) Stack overflow in CrossLibCopy while moving cell with subcells, related views and delete after (Bug #448)
FIX: allRelatedViewsThisLevel instead of allRelatedViews in one CrossLibCopy.copyRecursively() inside that function

BUG: (08/09/05, GVG) can't change spice preferences to "No Header Cards" (Bug #455)
FIX: Functions getSpiceTrailerCardInfo and getSpiceHeaderCardInfo were wrongly swapped in term() function.

************************* Version 8.03b: *********************************

IMP: (08/09/05, RK) NCC: More and better regression tests for size disambiguation for MOS and Resistors

IMP: (08/09/05, RK) NCC: Add Ammeter to spiceparts.jelib and spiceparts.txt. Make NCC treat Ammeter as short. Make SPICE netlister treat it as DC voltage source v=0 (Bug# 454)

IMP: (08/08/05, RK) NCC: Add size disambiguation for Resistors (Bug# 449)

BUG: (08/08/05, RK) NCC: Fix Heater regression non-determinism (Bug# 415)

BUG: (08/06/05, GVG) Edit->Change loses polygon shape (reported by JonL) (Bug #450)
FIX: PossibleVariables.validKey doesn't consider TRACE so it will skip checking in replaceNodeInst

BUG: (08/06/05, GVG) Infinite loop while doing cross-libraries with delete and subcells options (Bug #445)
FIX: Just patch to avoid the infinite loop

IMP (08/05/05, JKG) Made Cell name length in output GDS files a preference instead
    of hard coded to 32 (a limit not enforced by most tools nowadays)

IMP (08/05/05, JKG) Tool -> DRC -> Read Calibre DRC Errors reads in calibre drc results

IMP: (08/05/05, RK) NCC: When "Halt on first mismatched Cell" is enabled, don't stop for size mismatches (Bug# 446)

BUG: (08/05/05, RK) Warning: "Improvement" below disables NCC GUI until GUI is changed to accomodate new data structures.

IMP: (08/05/05, RK) Improvement to Local Partitioning algorithm. (Bug #447)

IMP: (08/05/05, DN) Yet another Spice format: Epic simulation output (for nanosim).
    Format choice list in SpiceTab dialog has one more item - "Epic". 

BUG: (08/05/05, DN) Problem with arc and tail extensions deleting a jog from arc.
FIX: In CircuitChanges.reconnectArcs fill "ra.extendHead/Tail" from proper arc end only.

BUG: (08/05/05, DN) Duplicating export causes exception (Bug #443).
FIX: ElectricObject.uniqueObjectName retries until it obtains Cell.isUniqueName or fail in 100 iterations.
     In Export.newInstance check if uniqueObjectName returns null.

BUG: (08/04/05, DN) Problems with arc head and tail extensions (by Frankie Liu).
FIX: In EditMenu.InsertJogPoint set head and tail extensions.

IMP: (08/02/05, GVG) OpenDialog AWT way on MacOS only when no directories must be available

IMP: (08/01/05, GVG) Calling CheckAndRepair after OptionReconcile dialog and layers switch in the tech.

IMP: (08/01/05, JKG) Modified Output netlisters to get netlist from HierarchyEnumerator so
that the connectivity will be correct for parasistic versus explicit resistors.

BUG: (07/30/05, GVG) Error in Quick.foundSmallSizeDefect() due to rounding errors. Reported by Boz
FIX: DBMath.pointInsideRect() uses isGreaterThan instead of operators. This could slow the code.

IMP: (07/30/05, GVG) Length/width of poly resistors (schematics/layout) can be changed in GetInfoNode
(similar to transistors). Schematic poly resistors display variables. Reported by Boz.

IMP: (07/29/05, GVG) Ability to check and repair libraries if original files contain
layers that are not in used. Extra function to convert JELIB files into 7Layer tech
by mapping unused layers/primitive nodes into valid ones. Eg. M8M9 -> M6M7, M5M8 -> M5M6.
Done for arcs and nodes.      

BUG: (07/28/05, GVG) GDS number for RPO 29 instead of 155 (reported by JonG)

IMP: (07/28/05, JKG) Added Include File option to CDL tab (global include file).
    CDL (Spice) netlister now uses CDL_template attributes.

BUG: (07/28/05, JKG) Connecting contacts to contacts/arc in tsmc90 created broken arcs (Reported by Frankie).
FIX: fixed bug in port size calc for wiring tool in NodeInst.getShapeOfPort()

BUG: (07/28/05, JKG) Zoom mode does not clear current highlights (Boz).
IMP: (07/28/05, JKG) Window->special zoom->zoom box can now use left mouse in addition to right mouse (Jon/Boz)

BUG: (07/27/05, GVG) Wrong names in 90nm N transistors (reported by Boz, no bugzilla)
FIX: Function wrongly assigned in PrimitiveNode (TRAPMOS instead of TRANMOS)

BUG: (07/26/05, GVG) Wrong flag in getShapeOfNode for poly resistors in TSMC90
FIX: change "false" by electrical (reported by Lexau, it should be in Bugzilla)

IMP: (07/26/05, JKG) Acepting String Arrays in Verilog (reported by Tarik, it should be in Bugzilla)
(comments added by GVG)

IMP: (07/26/05, IM): Added Unrecognized Part Type table to NCC GUI. 
     It merged Unrecognized MOS Type and Unrecognized Resistor Type
     classes and tables.

BUG: (07/26/05, IM): NCC GUI displays hash code errors when it shouldn't (Bug #438)
FIX: Make NccComparisonMismatches to report hash code failures only when text 
     version of NCC would do so.

************************* Version 8.03a: *********************************

IMP: (07/21/05, RK) NCC: Add Poly resistor tests to NCC regression

IMP: (07/21/05, GVG) Metal layers switch for 90nm technology. In 90nm tech tab, you can choose between
7, 8 o 9 metal layers where the last 2 layers are thick. DRC rules are rebuilt after each switch.

FIX: (07/21/05, RK) Change "Node Properties" dialog so it reports dimensions of 90nm Poly resistors as "length" and "width" instead of "x size" and "y size"

IMP: (07/21/05, RK) NCC: Add Poly resistors. This is incomplete because I haven't implmented size disambiguation for resistors yet. I will do this after I've fixed size diambiguation.

IMP: (07/19/05, IM) NCC GUI: 
     1) reworked selection and expansion of wire class tree nodes;
     2) improved data alignment in size mismatch tables.

BUG: (07/19/05, GVG) Exception in Schematics.getShapeOfNode() if wnd is null due to
User.isTextVisibilityOnNode()=false (Bug #441)
FIX: Check if wnd is null before doing wnd.getCell()

BUG: (07/19/05, GVG) Wrong object assigned to listener in PaletteFrame when an element from the pulldown
list was selected and another click was made on the icon (Bug #440)
FIX: Assign "obj" instead of "np" when listener is not null in PaletteFramce.placeInstance().

BUG: (07/19/05, DN) Layout Poly resistors are always shorted (Bug #439).
FIX: 1) Set different port topology to "ports of Layout Poly resistor in TSMC90 constructor.
     2) In HierarchyEnumerator distinguish poly resistor by its function

BUG: (07/18/05, GVG) DRC having problems to detect errors in default mode (one error per node pair) (Bug #421)
This was already reported in Bug #311 however solution there didn't fix #421.
FIX: New strategy based on original cell triggering Quick.checkCellInstContents.

IMP: (07/18/05, IM) NCC GUI: icons for wire class nodes in the tree

BUG: (07/18/05, SMR) ALS simulation of transistors crashes.
FIX: In "sim.als.Flat.processFunction()",
     after the first line: primPtr2 = new ALS.Model(modHead.name, 'F');
     add: primPtr2.ptr = new ALS.Func();

IMP: (07/15/05, DN) HierarchyEnumerator can shorten resistors.

IMP: (07/15/05, DN) "DumpHeap" and "AnalyzeHeap" commands in DebugMenus
     to assist in memory leakage investigateions.

IMP: (07/14/05, IM) Each comparison in NCC GUI displays the number of 
parts, wires, and ports in its cells.

BUG: (07/14/05, IM) Clicking on a hyperlink in Size Mismatch Table in NCC GUI
only highlights the top-level cell (bug 434).
FIX: obtain the proper cell from the MOS to be highlithed.

BUG: (07/14/05, IM) NCC GUI occasionally throws exception when moveCaretPosition()
method is invoked on JEditorPane (bug 429). This is a bug in Java 1.4 
(http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4688560).
FIX: call moveCaretPosition() through SwingUtilities.invokeLater().

IMP: (07/13/05, GVG) Making public fix for bug 312 (in previous commit was only available in debug mode).

IMP: (07/13/05, GVG) Poly resistors added in Schematics. They were implemented as variant of normal resistors
(following similar to capacitor approach).

IMP: (07/13/05, IM) NCC GUI features: Export Assertion failures,
Export conflicts, unrecognized MOSes

IMP: (07/13/05, RK) Double default height of Cells generated by MOCMOS gate layout generator

IMP: (07/13/05, RK) Allow the detection of multiple "bad transistor type" errors

IMP: (07/13/05, RK) Add method to count Parts, Wires, and Ports for GUI

BUG: (07/13/05, RK) Bug# 433. Changes for GUI cause NCC to throw an Exception for designs with black boxes (heater, qLite).

BUG: (07/13/05, GVG) Problems with DRC dates stored (Bug #422) in exhaustive mode. Root cause: new checkMinDefect
in checkDist.
FIX: Remember if there ware min defect errors in exhaustive mode.

IMP: (07/12/05, GVG) Consolidating majority of minor/major change checking calls by just a global call.
Adding tooltip to explain significant vs insignificant changes.
Another solution for Bug #428: change type Type.OBJECTRENAME marked as major.

BUG: (07/12/05, GVG) Fix for invalid DRC resolution errors with rotated nodes (Bug #432)
FIX: resolution must be checked after transformation is applied in checkNodeInst().

IMP: (07/11/05, GVG) Highlighter working now for new 90nm resistors. PrimitiveNode.Function.RESIST in layout
primitive nodes and ability to select the nearest port (similar to transistors).

IMP: (07/11/05, IM) Added NCC GUI

BUG: (07/11/05, IM) NetworkHighlighter wasn't highlighting networks without arcs
FIX: (07/11/05, IM) Make NetworkHighlighter highlight all the PortInsts on a Network

BUG: (07/11/05, IM) comparison of two VarContexts doesn't work beacuse pointer 
comparison of Nodables is not reliable
FIX: (07/11/05, IM) Compare Nodable parents and names

IMP: (07/11/05, GVG) LayerTab class extends JPanel instead of JFrame (suggested after Dima ran profiler).

IMP: (07/11/05, GVG) Changing exports should mark library as changed (Bug #428).
Implemented by checking also if there is a minor change in the library.

IMP: (07/11/05, GVG) Bold font for cells in ExplorerTree if they have been modified.
Implemented by adding MODIFIED bit in Cell class (Bug #425).
BUG: (07/6/05, SMR) VHDL generation doesn't work right for busses on icons.

FIX: In user.GenerateVHDL.addPortList(), after the comment "// flag important ports",
    add: if (ni != null && np instanceof Cell) nl = ((Cell)np).acquireUserNetlist();
    Also rewrote the network-finding code for arcs and exports in "addRealPorts()".

BUG: (07/01/05, SMR) Schematic arcs should be allowed to cross in DRC (Bug #376)
FIX: In DRC.Schematic.checkPolygonVicinity() changed last parameter of last
     call to "checkPoly()" from "false" to "true".

************************* END OF Version 8.02, GNU RELEASE *********************************
************************* Version 8.02: Released 7/1/05 *********************************

BUG: (07/01/05, DN) When duplicationg a cell the arc's head and tail settings are swapped (Bug #423).
FIX: In Cell.copyNodeProtoUsingMapping and NodeInst.replace swap head and tail.

IMP: (06/30/05, GVG) First version of 3D manual.

BUG: (6/30/05, GVG) Exception in DesigRulesTab during initialization of selectedFoundry.

BUG: (06/30/05, SMR) Cell names can have spaces in them (Bug #419).
FIX: Disallow spaces in Cell.lowLevelPopulate().

IMP: (06/30/05, GVG) Check first if Java3D is available in the machine before opening jd3 class.

IMP: (06/29/05, GVG) 3D submenus in HelpMenu (3D view plus demo).
     Added trim() in ManualViewer in case blanks are found after chapter name in toc.txt
     Started 3D folder in manual.

BUG: (06/29/05, SMR) Cannot mention "bugzilla" in released version.
FIX: In ActivityLogger.java, removed mention of "bugzilla" for released versions.

IMP: (06/28/05, GVG) Reorganizing again JMF and Java3D classes to create different plugins

BUG: (06/29/05, SMR) Cross-library copy doesn't copy schematic when icon gets copied (Bug #408).
FIX: Made cross-library copy more sensible: "copy subcells" always forces "copy all related views",
     copies schematic if icon gets copied recursively.

************************* Version 8.02p: *********************************

BUG: (06/28/05, GVG) DRC resolution check for active arcs must be done before they are cropped.
FIX: Move resolution code before Quick.cropActiveArc() in checkArcInst.

BUG: (06/28/05, SMR) Autorouting reports arcs that it does not create (Bug #413).
FIX: In AutoStitch.runAutoStitch(), only ignore wires that are already directly connected.

BUG: (06/28/05, SMR) Pad frame generation handles "gap" incorrectly (Bug #412).
FIX: Cleaned-up code.  Also now use "cell" instead of "facet" in array file.

BUG: (06/27/05, SMR) "Select all" should not select the cell center because
     it is never desired, and often causes unexpected results.
FIX: Disallow selection of cell center in "select all".

BUG: (06/27/05, SMR) Grid doesn't display when editing down-in-place (Bug #411).
FIX: Fixed grid code to handle in-place orientation.

IMP: (06/28/05, GVG) Pref.exportPrefs(String fileName) public again due to the regressions.
Menu name change: new: Window->3D Window-> 3D View, old:Window->3D View->3D Window

IMP: (06/28/05, GVG) Moving Sun's proprietary to JMFAndJ3D plugin (ex JMF plugin).
     3D axes are only available if JMFAndJ3D plugin is available.
     Same for J3DQueryProperties.queryHardwareAcceleration function.
     Changes in build.xml to create JMFAndJ3D jar.

BUG: (06/28/05, GVG) Previous bug fix for "Repeat Last Action" didn't work (Bug #246).
FIX: Solution based on menu name.

IMP: (06/28/05, GVG) J3DAxis using previous code with cylinders and cones.

BUG: (06/27/05, GVG) Bug fix for #395 (DRC error not reported by Electric but reported by Cadence)
FIX: Electric was not detecting violation on via/cut sizes. They must be of certain value.
     Refactoring of DRCRules to store those name rules.

BUG: (06/27/05, SMR) SDI mode doesn't show icons on messages window.
FIX: Added icon in SDI mode.

BUG: (06/27/05, SMR) Editing alternate views doesn't warn if the view is missing.
FIX: Fixed code in ViewMenu.java.

BUG: (06/25/05, SMR) Compactor doesn't compact properly.
FIX: In PolyBase.getBox(), allow "CROSSED" polygons to be boxes.

BUG: (06/27/05, DN) ELIB reader reads incorrecly schematic cell with layout
     subcell (Bug #405).
FIX: In ELIB.spreadLambda fix lambda only in icon subcells of schematic cells.

IMP: (06/24/05, GVG) Refactoring DesignRulesTab to re-use part of the dialog in
     TechEdit.

IMP: (06/24/05, SMR) Added Javadoc comments.

IMP: (06/24/05, SMR) Changes to the technology in the "layers" tab of the side
     bar changes it everywhere.

IMP: (06/24/05, SMR) Redid "Node Properties" dialog to remove unneeded controls
     at bottom.

IMP: (06/24/05, GVG) Getting rid of those WARNING (312) and WARNING (408)
     introduced by latest changes in output/GDS (when layer numbers were
     introduced). This causes failures in regressions (increment in number of
     errors).

BUG: (06/24/05, GVG) ESC still moves instance even if it has been looked.
FIX: Adding -1 as valid option for in CircuitChanges.cantEdit() dialog (Bug #404)

IMP: (06/24/05, GVG) Adding setCIFOutMergesBoxes(true) into GateRegression so it
     won't complain about min resolution for center points.

BUG: (06/24/05, GVG) While fixing DRC bug #312, appeared new candidates for min
     defect cases however they have to be ignore because they come from different
     cell instances and Geometric.objectsTouch(nGeom, geom) should be skip.
     Noticed by Bug #383.
FIX: Use parameter sameInstance in Quick.badBoxInArea()

BUG: (06/23/05, SMR) Silicon compiler places wells wrong.
FIX: Fixed Maker.

BUG: (06/23/05, SMR) "Peeking" doesn't always work.
FIX: In "PixelDrawing.expandedCellCached()" must call "drawCell()" with proper
     bounds.

BUG: (06/24/05, DN) Old IO regressions have errors concerning text descriptors.
FIX: In Export constructor and ImmutableTextDescriptor constructor canonize
     descriptors.

BUG: (06/24/05, DN) Reading a library causes an exception (Bug #398)
FIX: "io.input.ELIB.getArcEnd" saves MessageLog in a private fields
     "getArcEndError".

IMP: (06/23/05, RK) Add NCC regression tests for Global Partition

IMP: (06/23/05, RK) Add modified heater to NCC regression

IMP: (06/23/05, RK) For netlist errors, save NccGlobals so IvanM can report
     errors

BUG: (06/23/05, GVG) Problem to detect min size if elements were touching other
     nodes of the same layer (wells in Bug #396). The code was checking only one
     direction (X or Y)
FIX: Function to iterate along all possible directions (X, Y).

IMP: (06/23/05, GVG) Refactoring of DRC supporting classes for DesignRules tab. More changes in DesignRules tab

BUG: (06/23/05, SMR) CDL output writes include statements (Bug #387)
FIX: Ignore subcircuit overrides when writing CDL.

BUG: (06/23/05, SMR) Cannot connect "Simulation Probe" nodes
FIX: Make them have universal connectivity.

BUG: (06/23/05, DN) Arc properties not preserved when using Duplicate (Bug #391).
FIX: In ArcInst.copyConstraintsFrom assign newBits ti userBits.

BUG: (06/23/05, DN) Network module complains on unconnected pin in GEM and EFIDO
     technologies.
FIX: Don't check in cells with these technologies (NetCell.makeDrawns).

IMP: (06/22/05, GVG) DRC: Sweep as default algorithm. Capacitance demo out of 3D
     menu.  List Layer Coverage on Cell moved to DRC menu. Ability to abort
     coverage job (Bug #389).  Same printing for List Coverage on Cell and Check
     Area Coverage.

IMP: (06/21/05, SMR) Improved waveform window titles.

IMP: (06/21/05, SMR) Improvements to "Design Rules" tab.

IMP: (06/21/05, SMR) Added commands for curved arcs.

IMP: (06/21/05, GVG) RPO resistors in 90nm technology

BUG: (06/20/05, GVG) Displaying DRC error in wrong window frame while checking
     min defects (Bug #383)
FIX: Carrying down into the hierarchy the cell which triggered the checking.

IMP: (06/20/05, SMR) Changed "Design Rules" preferences to handle multiple wide
     rules.

BUG: (06/20/05, SMR) "Make Selected Easy" and "Make Selected Hard" commands
     crash.
FIX: Put them in a job.

IMP: (06/20/05, GVG) Moving foundry pulldown menu and output resolution text field to DesignRule tab

BUG: (06/18/05, SMR) Compaction spreads circuits apart.
FIX: Better algorithm for moving lines.

IMP: (06/17/05, SMR) Antenna check now aborts cleanly (Bug #382).

BUG: (06/20/05, RK) NCC hierarchical with size checking fails to compare top
     level cells (Bug #384)

IMP: (06/20/05, RK) NCC confuses the user for an unusual situation (Bug #385)

IMP: (06/19/05, DN) Warning in ElectricObject.findKey about possible change to
     CaseSensitive search in future versions.

IMP: (06/18/05, GVG) Refactoring describe() functions and using toString() in
     more places.

BUG: (06/18/05, GVG) Exception in parasitic tool for AND gate if network is null
     in port (Bug#377)
FIX: Skipping the layer if is diffusion.

BUG: (06/18/05, DN) JELIB reader doesn't connect mismatched arc to dummy pin.
FIX: In io.input.JELIB.figureOutPortInst assign dummy node to "portNI".

BUG: (06/18/05, DN) DebugMenus|JonG|DescribeProtoVars causes exception on
     PrimitiveNodes.
FIX: Add "if (ni.getProto() instanceof Cell)".

IMP: (06/17/05, GVG) Ability to select "scalable" transistors again.

IMP: (06/17/05, GVG) 3D View back under WindowMenu.

IMP: (06/17/05, GVG) Methods to extract DRC rules for preferences tab.

BUG: (06/17/05, SMR) Status bar clips bottom of component menu (Bug #381).
FIX: In StatusBar constructor, set "fieldHierCoords" to be a non-null string.

IMP: (06/17/05, SMR) Removed "Show Special Transistors" from "mocmos" part of
     "Technology" preferences.

IMP: (06/17/05, SMR) "Align to Grid" now moves pins and grid-aligns arcs better
     (Bug #360).

IMP: (06/17/05, SMR) Manual being updated (Bug #379).

IMP: (06/17/05, SMR) Preferences dialog now has "Help" button to take you to
     proper manual page (Bug #378).  Removed "help" button in Logical Effort tab.

IMP: (06/16/05, SMR) Fixed the color/pattern panel of the "Artwork Appearance"
     command and "Layers" Preferences to automatically set Displayed "Use Stipple
     Pattern".

IMP: (06/16/05, SMR) Refactored the Assura DRC error reader to be in the DRC
     tool.

IMP: (06/16/05, SMR) When GDS changes the library name, a warning is issued.

IMP: (06/16/05, SMR) Cleanup for Javadoc.

IMP: (06/16/05, GVG) Out check resolution moved from CIF I/O to DRC (Bug #362)
     Side effect: code in CIF.java commented out, left only CIF format resolution
     (Bug #365)

BUG: (06/16/05, DN) Bit "isParam" on NodeInst variables remains set even there
     is no more corresponing parameter on the parent Cell.
FIX: Don't store "isParam" bit on instance variables. Variable.isParam is
     claculated.

BUG: (06/16/05, DN) Factory preferences for text attributes are incorrect.
FIX: In TextDescriptor.DescriptorPref constructor cast "initialSize" to long.

BUG: (06/15/05, SMR) Busses and wires cause Schematic DRC when they cross (Bug
     #376).
FIX: In tool.drc.Schematic.checkPoly(), allow this combination to cross.

BUG: (06/15/05, DN) Show network problems (Bug #371)
FIX: In "NetworkTool.getNetworksOnPort" use "pi.getConnections".

IMP: (06/15/05, SMR) CIF output has no check for user resolution check, and
     always checks for minimum CIF format resolution (Bug #365).

IMP: (06/15/05, SMR) "Select Object" now allows multiple selections (Bug #370)

IMP: (06/15/05, SMR) Conversion of a technology to a library twice now disallowed
     (Bug #373)

IMP: (06/15/05, SMR) Technology editor handles stretching rules properly (Bug
     #374)

BUG: (06/14/05, GVG) Select surround not working properly in hierarchy (Bug
     #353).
FIX: Precision problem while checking if point is at the corner of a rectangle.

IMP: (06/14/05, GVG) New tileNot layers (1 for each metal, OD and poly) in TSMC90
     technology (Bug #354) Stipple patterns in such way they won't completely
     cover other tileNot nodes. The rest of the graphics is inherited from
     corresponding metal/active/poly layer.

BUG: (06/13/05, GVG) Layers dialog should come up in current technology (Bug
     #367).
FIX: Extended PaletteFrame.autoTechnologySwitch for LayerTab and moved to
     WindowFrame class

BUG: (06/13/05, DN) Some changes are not undoable yet. They don't cause saving
     library.
FIX: Undo.otherChange() method to mark library for save.

IMP: (06/13/05, DN) When writing ELIB/ReadableDump, round arc angle to nearest. 

IMP: (06/12/05, DN) lowLevelAllocate/lowLevelPopulate methods removed from
     "ArcInst" and "Export".

BUG: (06/12/05, DN) Sometimes "LibDirs.LibDirFileSystemView.getFiles" causes
     "ClassNotFoundException".
FIX: Create factory method "LibDirs.newLibDirsFileSystemView".

IMP: (06/12/05, SMR) Displaying transparent layers for a technology other than
     the current one displays a warning that the layers may not have been drawn.

************************* Version 8.02o: *********************************

BUG: (06/15/05, SMR) Technology editor fails to determine rules (Bug #374)
FIX: Round values so that numeric instability doesn't happen.

IMP: (06/15/05, SMR) "Select Object" now allows multiple selections (Bug #370).

IMP: (06/15/05, SMR) CIF output always checks for minimum resolution of CIF
     format (Bug #365).  CIF Preferences now use resolution value to decide
     whether to check (nonzero to check).

BUG: (06/15/05, SMR) Converting a technology to a library twice crashes (Bug
     #373).
FIX: Disallow second conversion.

IMP: (06/10/05, SMR) Can now import "GDS map" files to set layer associations
     (Bug #355).

IMP: (06/10/05, SMR) GDS now uses a "type" with each layer number (Bug #356).

BUG: (06/10/05, SMR) Spice output writes lower-level cells when upper-level ones
     have model file overrides (Bug #358).
FIX: Added model file overrides to the things checked by "skipCellAndSubcells()".

BUG: (06/10/05, GVG) Expection in NodeInst.findPortInstFromProto if index is
     invalid (Bug #359)
FIX: Make sure index is in the valid range and returns null otherwise.
     Side effect: extra code in Export.java to prevent exception if pi == null.

BUG: (06/09/05, GVG) Exception while generating eps from waveform (Bug #361)
FIX: After refactoring of Technology.getShapeOfNode, wnd can be null and then
     direct access of wnd.getVarContext() will generate the exception.

IMP: (06/09/05, GVG) Move area coverage tool under DRC menu

IMP: (06/09/05, JKG) Added command Tools->Cadence->Import Assura DRC Errors.

BUG: (06/9/05, GVG) Overlap not checked correctly when node was in a subcell (Bug
     #352)
FIX: TSMCRules.getRule() was not getting the correct min size for default case.
     This was probably introduced while introducing length to wide condition for
     TSMC90.

BUG: (06/9/05, GVG) Checking geometries against themselves under certain
     condition (discovered while fixing Bug #352)
FIX: In Quick.badBoxInArea(), skip case when they are in the same cell.

IMP: (06/9/05, GVG) Improving error message when you try to reopen a library (Bug
     #347)

IMP: (06/9/05, GVG) New values for DRC Rules 30.1, 30.2 and 30.4 in MoCMOS.
     Old values: 4,4,8. New Values: 5,5,10  (Bug #357)

BUG: (06/09/05, DN) Network.getExports() returns no Exports for a Network (Bug
     #351)
FIX: Add loop for busses.

IMP: (06/07/05, SMR) Added controls to "Color preferences" to control the
     waveform window colors.

BUG: (06/06/05, SMR) PSpice output cannot handle "gnd" signal or "@" in names.
FIX: Use "0" for ground, convert "@" characters.

IMP: (06/07/05, DN) Refactoring: joined together ArcProto and PrimitiveArc
     classes.

BUG: (06/06/05, SMR) Selecting a variable in the "Attribute Properties" dialog
     may change it.
FIX: In Attributes.showSelectedAttribute(), set "loading" before changing the
     "value" field.

IMP: (06/05/05, DN) Persistent data of NodeInst is moved to ImmutableNodeInst
     class.

BUG: (06/05/05, DN) Sometimes EPoint has coordiante -0 (HotSpot optimezer).
FIX: Compare coordiante with "-0.0" instead of "0" in EPoint.

IMP: (06/05/05, DN) FlagSet class is no longer used and it is removed.

BUG: (06/05/05, DN) Grid alignement option "0" should disable alignemnt.
FIX: In EditWindow fix "gridAlign" methods.

IMP: (06/05/05, DN) JELIB output writes now "P" bit ("isParam")from database

IMP: (06/03/05, SMR) Added generic versions of the purple/red/orange libraries.

IMP: (06/01/05, SMR) First implementation of ALS simulator.

BUG: (05/30/05, SMR) Rigid arcs don't propagate hierarchically.
FIX: In Layout.java, use two change values on nodes: size-changed and
     position-changed.

BUG: (05/30/05, DN) TextDescriptor sometimes get wrong "isDisplay" bit in JELIB
     reader.
FIX: Make separate "parsedDescriptor" caches for onVar and non-onVar descriptors.

IMP: (05/27/05, SMR) The "Artwork Appearance" dialog now affects all selected
     artwork objects.

IMP: (05/27/05, SMR) PSpice output can now be read.

IMP: (05/27/05, SMR) Added ArcSim simulation deck generation.

BUG: (05/26/05, DN) Can't change attribute text size (Bug #346)
FIX: In TextAttributesPanel.java use td.seyDisplay instead of var.setDisplay.

IMP: (05/26/05, SMR) Fixed multi-cut code.

IMP: (05/25/05, RK) NCC: add regression tests for native thick oxide NMOS

IMP: (05/25/05, SMR) Added multi-cut code.

IMP: (05/25/05, SMR) Schematic DRC now allows arcs to cross over icons.

BUG: (05/25/05, DN) Text options are incompatible after changes.
FIX: Method "TextDescriptor.DescriptorPref.swap" as a temporary fix.

BUG: (05/25/05, DN) Font is not properly read after last changes.
FIX: In "Library.DiskVariable.makeVariable" use "getName" instead of "toString".

IMP: (05/24/05, SMR) Improved component menu colors when nonstandard colors are
     used.

IMP: (05/24/05, SMR) Library names in the explorer tree are shown in bold when
     the library has changed (Bug #326).

BUG: (05/24/05, SMR) Verilog deck generation writes names that start with digits
     (Bug #338).
FIX: Prepend a "_" to symbols that start with a digit.

IMP: (05/25/05, DN) "regression/tools/gateLayGen/scripts/mocmosDrc.bsh" and
     "regression/tools/IO/scripts/*.bsh" are refreshed.

IMP: (05/25/05, DN) TextDescriptor now keeps "isDisplay" and "Code" fields also.
     "Variable.flags" field removed.ImmutableTextDescriptor is used in database.
     Additional versions of "ElectricObject.newVar" added:
     "newVar(key,value,td)" creates variable with specified descriptor.
     "newVar(key,value,boolean)" creates either displayable or non- variable.
     "newDisplayVar(key,value)" creates displayable variable.
     "newVar(key,value)" creates non-displayable variable (as earlier)
     Warning: "Variable.setTextDescriptor(td)" now changes "isDisplay" and
     "getCode".

IMP: (05/24/05, GVG) Extra M5M8 contact in TSMC90 for CMP foundry

IMP: (05/24/05, RK) NCC, Bug# 339: Add I/O 25, 33 transistors. Modify regressions
     to test. Wait to add Native 18, 25, 33 NMOS to regressions until Lexau adds
     these to Orange library.

BUG: (05/19/05, SMR) New windows appear with their contents too small.
FIX: In WindowFrame.createEditWindow(), get proper window size.

BUG: (05/23/05, GVG) Fix for #311 "m3 spacing DRC error not detected".

BUG: (05/23/05, GVG) Fix for DRC bug #312 (didn't detect small feature)
FIX: Check small feature even if polygons are connected.

IMP: (05/23/05, GVG) New size for native transistors

BUG: (05/23/05, GVG) Motion indicator in tool bar set wrongly on startup (Bug
     #337)
FIX: There was no setup in ToolBar, changes in EditMenu didn't change ToolBar
     values and changes in GridAndAligment didn't change ToolBar/EditMenu
     buttons.

BUG: (05/23/05, GVG) TSMC90 layers not in the correct order (Bug #336)
FIX: Error in TSMC90.getContactFunction().

BUG: (05/20/05, GVG) DRC doesn't detect overlap between PWell/NWell when nodes
     are connected (Bug #333)
FIX: Transform UCONSPA into SPACING rule (TSMC90: NW.S.0, MoCMOS: 1.4

IMP: (05/19/05, SMR) Mirroring (in the commands and in the Node Properties
     dialog) is now described in terms of "left <-> right" and "up <-> down"
     (Bug #327).

IMP: (05/19/05, SMR) Intelligent placement of duplicate copies when "move after
     duplicate" is not checked.

BUG: (05/19/05, SMR) Highlighting an export on the example icon doesn't show all
     of the equivalent nodes.
FIX: In Highlight.showHighlight(), include the node with the real export.

BUG: (05/19/05, SMR) HSpice waveform plotting doesn't handle amperage right
     (signals that start with "I(") (Bug #303).
FIX: In HSpiceOut.readTR0File(), expand numbers when they start after the "(";
     move the "(" to the last symbol.

IMP: (05/19/05, SMR) Automatic icon generation now makes thick black icons, not
     thin red ones.

IMP: (05/19/05, SMR) Technology editor can now create octagonal shapes.

IMP: (05/18/05, SMR) Changing one node to another will adjust arcs in simple
     situations instead of adding jogs (Bug #321).

IMP: (05/18/05, SMR) Can now switch the side bar to the right side (in General
     Preferences, too).

BUG: (05/18/05, JKG) LEPARALLGRP problem with keepers (Bug #320)

BUG: (05/18/05, SMR) Deleting a node that has internal arcs (arcs connected from
     one port of the node to another of the same node) causes errors (Bug #315).
FIX: In CircuitChanges.eraseNodeInst(), use a HashSet to ensure no duplication of
     arcs to delete.

BUG: (05/17/05, SMR) Undoing a change that affects cell bounds leaves instances
     of the cell wrong.
FIX: In Undo.Change.reverse(), reevaluate instances of cells whenever undoing
     changes to contents. A detailled explanation is given in the NODEINSTMOD
     case.

BUG: (05/13/05, SMR) MOSIS CMOS pins drawn incorrectly (Bug #322).
FIX: In MoCMOS.getShapeOfNode(), change the method on the last line from
     "computeShapeOfNode" to "super.getShapeOfNode"

BUG: (05/18/05, DN) NetworkTool doesn't work with NOTHREADING=true (Bug #310)
FIX: Add check on NOTHREADING in NetworkTool.getNetlist.

BUG: (05/17/05, GVG) Explorer not updated when open new library (Bug #319)
FIX: Add WindowFrame.wantToRedoLibraryTree() in FileMenu.openALibrary.

IMP: (05/15/05, SMR) CIF and GDS output merging now works.

IMP: (05/16/05, SMR) Removed multithreaded DRC and Dracula interface from DRC
     preferences.

BUG: (05/16/05, SMR) Cross-library copy may get cell sizes wrong (Bug #314).
FIX: In ArcInst.lowLevelSetUserbits(), must update arc extent if end extension
     changes.

BUG: (05/16/05, SMR) Changing an arc (with its nodes) from one layer to another
     doesn't work if there are exports on the pin nodes (Bug #317).
FIX: In Change.replaceAllArcs(), allow exported pins, and move the exports to the
     new pins.

IMP: (05/16/05, SMR) Further changes for Project Management.

IMP: (05/13/05, JKG) Display LIBDIRS file in Open library dialog as if they
     were part of the current directory.

BUG: (05/13/05, JKG) LIBDIRS did not look for LIBDIRS file in directory
     user was opening libraries from.  Fixed. (Bug #313)

************************* Version 8.02n: *********************************

BUG: (05/13/05, SMR) Invisible Pins are drawn too large.
FIX: In Artwork.getShapeOfNode(), and in Generic.getShapeOfNode(), change the
     method on the last line from "computeShapeOfNode" to "super.getShapeOfNode"

IMP: (05/12/05, GVG) GetInfo (menu item) for ErrorLogger: printing number of
     errors and warnings.

IMP: (05/12/05, SMR) Tool cleanup for project management: made all Tools be
     Listeners; made access to singletons use accessor methods; invoke
     "readLibrary()" listener method properly.

BUG: (05/11/05, GVG) Electric loads non-local library when local library is
     present (Bug #309)
FIX: Adding WorkingDirectory as valid path and try it first before the external
     path stored.

BUG: (05/11/05, SMR) Cells with bus pins are the wrong size.
FIX: Restore the "wipeon1or2" flag to Schematics bus pins, then rework the
     sequence of calling "Technology.getShapeOfNode()" so that Schematics
     overrides are not affected by that flag.

IMP: (05/09/05, JKG) LE sizes now stored on top level cell instead of leaf
     instances.

IMP: (05/09/05, JKG) Improved readability of hierarchical path in status bar. 
     Also, path shown for schematics. Also, second row remains visible because
     redraw of window is annoying when second row disappears and reappears.

IMP: (05/09/05, JKG) Added "recently visited cells" list when right-clicking on
     back/forward cell history buttons.

BUG: (05/10/05. GVG) Exception in CIF generation due to latest changes in
     Technology.getShapeOfNode/getShapeOfArc.  In io.output.Geometry, EditWindow
     is always null.
FIX: Using simple passing only Geometric to getShapeOfNode/getShapeOfArc
     function.

IMP: (05/09/05, GVG) Clicking on library on Mac OS set working directory
     extracted from that library (Bug #308)

BUG: (05/09/05, GVG) Cell attributes wrongly copied by Clipboard if a previous
     clipboard copied a cell attribute (Bug #306).
FIX: Include cell attributes in Clipboard cleanup process.

BUG: (05/09/05, GVG) Cut/Paste or Copy/Paste of cell attributes not working (Bug
     #304)
FIX: Extra code in Clipboard to handle cell attributes

BUG: (05/09/05, SMR) Screen redraws too much (Bug #307).
FIX: VarContext information must be passed down the hierarchy by the redisplay
     code, and not stored in the EditWindow.  In addition, the Technology method
     "getShapeOfNode()" must take a VarContext as a parameter, and not obtain it
     from the EditWindow.

BUG: (05/09/05, SMR) Screen is shifted after PostScript output (Bug #301).
FIX: In EditWindow.getBoundsInWindow(), restore scale and offset information
     properly.

IMP: (05/05/05, SMR) Added special "properties" dialogs for schematic components:
     resistor, capacitor, inductor, diode, transistor, and global.

BUG: (05/05/05, DN) Busses with complex names don't associate with exports
     properly (Bug #262).
FIX: Fixed getBusWidth(Nodable,PortProto) in the netlister.

BUG: (05/05/05, SMR) Mimic stitching doesn't preview proper locations (Bug #300).
FIX: In MimicStitch.presentNextSituation(), compute endpoints properly.

IMP: (05/05/05, SMR) Selecting attributes on node and arcs now shows the original
     object (Bug #295).

IMP: (05/05/05, SMR) Selecting a port on the "sample icon" in a schematic now
     shows the entire network connected to that export.

BUG: (05/05/05, SMR) PostScript text is still too large, EPS bounding boxes are
     wrong (Bug #292).
FIX: In PostScript.psText(), reduce the text size by another 10%.

BUG: (05/05/05, SMR) Auto-stitcher crashes on schematic pins (Bug #299).
FIX: In AutoStitch.shapeOfNode(), check for null poly lists.

BUG: (05/05/05, SMR) GDS import fails if pseudo-layers have different GDS numbers
     than regular layers (Bug #297).
FIX: In input.GDS.setLayer(), convert pseudo-layers to regular layers.

BUG: (05/05/05, SMR) Multiple exports with different case may cause a crash
     (Bug #298).
FIX: In Cell.getUniqueNameIndex(), do case-insensitive compares.

IMP: (05/04/05, SMR) Added FPGA technology.

BUG: (05/05/05, GVG) Infinite loop after executing "Repeat Last Action"
     (Bug #246)
FIX: In RepeatLastCommandListener, we ignore actions coming from "Repeat Last
     Action". 

IMP: (05/05/05, DN) JELIB 'R' line can accept either 5 or 7 pieces.

BUG: (05/05/05, DN) Highlighting an off-page connector does not highlight an
     attached bus (Bug #262)
FIX: In Netlist use getBusWidth(Nodable, PortProto) instead of
     PortProto.getNameKey().busWidth().

BUG: (05/04/05, SMR) Schematic busses don't have clean ends;
     wires connecting to busses don't show blobs.
FIX: Better determination of bus pin drawing.

BUG: (05/04/05, SMR) Verilog allows reserved words in its files (Bug #296).
FIX: Check for reserved words and prepend a "_".

************************* Version 8.02m: *********************************

IMP: (05/03/05, GVG) Verbose Redo/Undo: extra message in message window
     (for Tarik).

BUG: (05/03/05, SMR) Spice primitives generate incorrect Verilog output
     (Bug #293).
FIX: In Verilog.writeCellTopology(), ignore cell instances whose prototypes are
     icons.

BUG: (05/03/05, SMR) Reading ELIB files may consume all of memory (Bug #294).
FIX: In input.ELIB.readString(), if a string's length is greater than the
     remaining bytes in the file, flag it as an error.

IMP: (05/03/05, GVG) Adding class to query hardware accelaration for J3D.

BUG: (05/02/05. GVG) Double-click on jelib/elib file doesn't open the library in
     Electric.app (Bug #290)
FIX: Missing code in MacOSXInterface.handleOpenFile.

BUG: (05/02/05, SMR) Explorer tree doesn't remember what is expanded when SIGNALS
     are shown (Bug #283).
FIX: Must remember entire path through tree, not just leaf nodes.

BUG: (05/02/05, SMR) PostScript text is too large, EPS bounding boxes are wrong
     (Bug #292).
FIX: In PostScript.psText(), reduce the text size.

BUG: (05/02/05, SMR) Layer opacity is not remembered (Bug #288).
FIX: In EGraphics.setOpacity(), use preferences.

BUG: (05/02/05, SMR) When a referenced library cannot be found, prompting the
     user gives limited file type choices (Bug #260).
FIX: In LibraryFiles.readExternalLibraryFromFilename(), allow any library file
     extension.  Created new FileType called "LIBFILE" which has all 3 extensions
     (jelib, elib, txt).

BUG: (05/02/05, SMR) PostScript doesn't use stipple pattern setting properly
     (Bug #287).
FIX: In PostScript.psPolygon(), use the layer's printed stipple pattern setting.

BUG: (05/02/05, GVG) Electric not longer remember library context in Cell
     Instance place (Bug #291)
FIX: this case was introduced while fixing Bug #250. Only when selectedLibrary is
     null, then the current library will be taken into account.

IMP: (05/01/05, SMR) Added MOSIS CMOS PLA generator.

BUG: (05/01/05, RK) NCC: improve size mismatch error messages for the case when
     NCC tolerances are configured to zero. Don't round the mismatch amounts if
     rounding would result in the value zero. (Bug# 282)

BUG: (05/01/05, SMR) Readable dump input does not handle old port name
     conversion.
FIX: Added the method input.ReadableDump.findProperPortInst().

IMP: (05/02/05. GVG) Extra work to allow libraries expanded in Explorer view if
     you open them with View->Edit view (Bug# 223).

BUG: (05/01/05, RK) clarify NCC error message. For hierarchical comparison
     specify path relative to current Cell

BUG: (05/01/05, RK) NCC shouldn't blow up if Cell has no wires.

BUG: (04/29/05, GVG) Missing refresh in explorer tree if current library is
     changed (Bug #251, #270)
FIX: Added WindowFrame.wantToRedoLibraryTree() in setCurLibAction().

BUG: (04/28/05, SMR) Expanding or unexpanding cell instances doesn't redraw
     right.
FIX: In CircuitChanges.ExpandUnExpand.doIt(), call
     PixelDrawing.clearSubCellCache().

IMP: (04/27/05, GVG) Modification in mac-app (ant) and Info.plist to get it
     working on Mac OS X.  "command" is deprecated and it was replaced by
     "executable"

BUG: (04/26/05, GVG) Exception in postscript generation if directory is
     write-protected (Bug #289)
FIX: Detect the condition and abort job

BUG: (04/26/05, GVG) Ability to abort PostScript generation (Bug #286)
FIX: Any output call passes Job class in case particular tool wants to monitor
     abort operation.

BUG: (04/26/05, GVG) 3D View: distance and thickness modifications in 3D
     Preferences not reflected in 3D View windows
FIX: Code now handles geometries by reference.

BUG: (04/25/05, SMR) Explorer tree expansion is incorrect (Bugs #269 and #285).
FIX: Only expand to the current library after reading it.

IMP (04/25/05, SMR) When replacing a library, error messages are more clear
     (Bug #255).

IMP: (04/25/05, SMR) HSpice input can now accept files with the extension .tr1, 
     .tr2, ... (Bug #258).

IMP: (04/25/05, SMR) Waveform window now allows dragging of the vertical axis on
     the left (Bug #252).  Waveform window now shows intermediate tick marks
     (Bug #241).

************************* Version 8.02l: *********************************

IMP: (04/22/05, GVG) Alpha control in 3D preferences. Ability to load more than
     one file per capacitance demo.

BUG: (04/22/05, GVG) Bug found in 3D highlight for primitives (original
     appearance not restored).
FIX: Extra class holds the information.
                                                               
BUG: (04/22/05. GVG) Exception in Spice netlist if icon instance has a parameter
     not defined in Schematic (Bug #279)
FIX: Prevent setParam(true) in Examine job (Variable.java:1000)

BUG: (04/21/05, SMR) GDS output writes the year incorrectly.
FIX: In "output.GDS.outputDate()", subtract 1900 from the year.

BUG: (04/21/05, SMR) Adding a signal to the waveform window doesn't show it at
     the same scale as the other signals (Bug #277).
FIX: In WaveformWindow.java, set the scale when creating a new panel.

IMP: (04/21/05, GVG) 3DView creation embedded in Job to abort big examples. 
     Ability to stop creation if number of nodes reached predefined limit (dialog
     with 3 options). Max number of nodes allowed in preferences.  3D Display
     option moved to 3D menu. Fix on axis location.

IMP: (04/20/05, SMR) Improved PostScript output by removing tiny polygons
     (Bug #273).

IMP: (04/20/05, SMR) Exported preferences files have the ".xml" extension.

BUG: (04/20/05, SMR) Arc Properties dialog crashes if not in the Swing thread
     (Bug #272).
FIX: In GetInfoArc.loadInfo(), delay activity if not in the Swing thread.

IMP: (04/19/05, GVG) GetInfo on job running will printing accumulated running
     time.

************************* Version 8.02k: *********************************

IMP: (04/19/05, GVG) Invariant for capacitance extraction for layouts in Spice.

IMP: (04/19/05, JKG) Changed minimum resolution of IRSIM simulations from 10ps
     to 1ps

BUG: (04/19/05, GVG) Crash in 3D View if transistor has more than 2 active
     physical layers.
FIX: Ignore layer if there are already 2 defined.

IMP: (04/19/05, SMR) Added mnemonic characters to the entire menu.

IMP: (04/19/05, SMR) Added technology editor (commands under Edit / Technology
     Specific).

BUG: (04/18/05, GVG) Bug introduced in DRC while extending foundries (Bug #265)
FIX: Detect old style in format (Byte) and then makes the transition.

BUG: (04/15/05, SMR) JELIB output does not always get the type of variable arrays
     if the first entry is null.
FIX: In output.JELIB.makeString(), determine the type of the array, not the first
     entry.

IMP: (04/18/05, DN) Global-Partition schematic primitive is handled by
     HierarchicalEnumerator.  Spice netlister tries to handle it too when
     Spice.USE_GLOBALS = false

BUG: (04/18/05, DN) List Export on Network command causes StackOverflowError
     (Bug #263).
FIX: In "ToolMenu.findPortsUp" don't add "listedExports" HashSet to itself.

IMP: (04/15/05, GVG) GDS ouput still writing text associated to exports even if
     WriteExportPins is off.

BUG: (04/15/05, GVG) Autoadvance flag in IRSIM tab wronlgy set based on
     "resimulate each" flag, no setting of skillGDSNameLimit in Skill tab and
     wrong comparison of globalTextScale in TextTab.

IMP: (04/14/05, GVG) Ability to choose technology while creating a new cell
     (Bug #245)

IMP: (04/14/05, GVG) Changes in TSM90 and DRC to handle multiple foundries
     (ST, TSMC). DRC rules are chosen depending on foundry selected: ST, TSMC, 
     Combined(ST, TSMC). Names/Values for some DRC rules varies according to
     foundry (eg. VT{H/L}_{P/N}.S.2/VT{H/L}_{P/N}.D.2). Added corresponding ST
     rules.  New native thick transistors, RPO, OD33, OD25 nodes. New "forbidden"
     and "combination" rules to handle presence of forbidden nodes for particular
     foundry or combinations of nodes in the same die.

IMP: (04/14/05, SMR) JELIB output now includes full path to references libraries
     only if they are not in the same directory as the main output file (for CVS
     merging).

IMP: (04/14/05, GVG) New 3D axis strategy provided by Java3D team.

IMP: (04/12/05, SMR) IRSIM doesn't crash when reloaded (Bug #247).

IMP: (04/12/05, SMR) "Rename Cell" now defaults to current cell (Bug #250).

BUG: (04/12/05, SMR) IRSIM results are different than other IRSIM implementations
     (Bug #248).
FIX: In Sim.java, include transistors only once.

IMP: (04/11/05, SMR) GDS input and output now handles pin layers correctly.

IMP: (04/11/05, SMR) Added checking in NodeInst.newInstance().

BUG: (04/11/05, SMR) JELIB I/O doesn't handle null pointers.
FIX: New attribute type "X" for null objects.

BUG: (04/11/05, GVG) Wrong scale for schematic capacitors in IRSIM (Bug #249)
FIX: Dividing value by 1e-15 to convert it into Femto units.

IMP: (04/11/05, DN) Global-Partition schematic primitive is handled by
     NetworkTool.  Added method "Netlist.getNetwork(Nodable, Global) to check
     globals of subcells.

IMP: (04/08/05, GVG) Title in default technology frame title in TechnologyTab was
     changed. This required a change in manual.

BUG: (04/07/05, SMR) Technology editing layer bit selection works now (Bug #243).
FIX: In Highligher.findAllInArea(), do not add 0.4 units of slop to selection.

BUG: (04/07/05, SMR) Editing text "in-place" now draws a large enough editing
     area (Bug #236).
FIX: In GetInfoText.EditInPlaceListener.figureSize(), use the logical bounds of
     the glyph.

IMP: (04/07/05, SMR) Explorer window no longer opens to current library when jobs
     change (Bug #244).

BUG: (04/07/05, GVG) GDS export was crashing if non-layout layers were found in
     cell such as art nodes
FIX: Skipping those layers

BUG: (04/07/05, GVG) No writing resistance if value is smaller than minimum in
     parasitics extraction
FIX: Writes 0 instead

BUG: (04/06/05, GVG) Parasitic tool was wrongly ignoring active layers in
     HierarchyEnumator call
FIX: Use correct netlist

BUG: (04/06/05, SMR) IRSIM crashes (Bug #242).
FIX: In Sim.connectTransistors(), use "baseType()" when extracting node type.

IMP: (04/06/05, JKG) Added IRSIM option to use delayed X propogation.
     Implemented delayed X propogation in code.

BUG: (04/05/05, GVG) Coordinates cut off in status bar on Mac (Bug #229)
FIX: Add insets according to platform.

IMP: (04/04/05, DN) Method "TextDescriptor.setParam" removed because
    TextDescriptor is intended to become immutable.

BUG: (04/04/05, DN) When a circular library dependency forbids a new
     instance to be created, it corrupts the database (Bug #237)
FIX: On failure Cell.addNode returns -1 now, which prevents
     NodeInst.lowLevelLink from linking.

************************* Version 8.02j: *********************************

IMP: (04/02/05, SMR) Added "outlined patterned" drawing to PixelDrawing.java.

BUG: (04/01/05, RK) regressions: I removed Compaction regression from run.sh
     because that regression always fails

IMP: (04/01/05, RK) NCC: added regression test for multiple hierarchy scan

BUG: (04/01/05, RK) NCC: CompareList must always have something from both designs

BUG: (03/31/05, GVG) Class exception while dragging cells from ExplorerTree into
     EditWindow on Mac (Bug #235)
FIX: DataFlavor constructor changed. Now using DataFlavor(MyClass.class, String)

BUG: (03/31/05, GVG) Exception in Explorer while dragging on whitespace on Mac OS
     X (Bug #232)
FIX: add image to DragSource.startDrag (only for Mac)

IMP: (03/31/05, GVG) Improvements in lights, transparency/Z buffer handling after
     discussion with Java3D team.

BUG: (03/31/05, GVG) Cell expansion with several sublevels was not working.
FIX: Using rotateOutAboutTrueCenter instead of rotateOut

BUG: (03/31/05, GVG) Exception in output.JELIB if var == null and we are testing
     var.isParam();
FIX: var != null added

IMP: (03/30/05, SMR) Duplicating or copying arcs that share names keeps the
     sharing (Bug #190).

IMP: (03/30/05, GVG) Ability to change color in 3D background.

FIX: (03/30/05, JKG) fix situation where attribute on instance with same name of
     parameter on contents view would incorrectly not be marked as a parameter.

FIX: (03/30/05, JKG) TextUtils.formatDouble() made thread safe

IMP: (03/30/05, JKG) Added checking for conflicting logical effort parameters in
     designs

IMP: (03/30/05, SMR) Placing a large cell instance in an empty window zooms the
     window to fit (Bug #214).

BUG: (03/30/05, SMR) Shift-Right-click to zoom will zoom out if the area is too
     small (Bug #27).
FIX: In ClickZoomWireListener.mouseReleased(), use smarter determination of a
     point-click.

BUG: (03/30/05, SMR) "Duplicate Cell" does not default to the current cell
     (Bug #228).
FIX: In "CellBrowser.performAction()", call updateCellList() in the duplicate
     case.

BUG: (03/30/05, GVG) if tech is set to 4 or less metal layers, TechPalette still
     draws them.
FIX: getNodesGrouped() check notUsed nodes and arc and remove them from original
     matrix.

BUG: (03/29/05, SMR) GDS input doesn't handle orientation of instance arrays
     (AREF)
FIX: Use same method as single instances (SREF).

BUG (03/29/05, RK) NCC: Obtain VarContext from Current Window.

IMP: (03/29/05, RK) NCC: Superficial changes to names, etc.

IMP: (03/29/05, GVG) Icons in technology palette are arranged per layer Z
     position from bottom of the wafer.  "Pure/Misc/Cell" menus are on the top
     and transistors on the bottom. Metal contacts are sorted by lower metal.

IMP: (03/29/05, GVG) Tabs on Mac are aligned on the left (Bug# 226)

BUG: (03/29/05, SMR) Saving new JELIB files doesn't mark the library as "from
     disk", causing subsequent saves to prompt for a file name (Bug #227).
FIX: In output.JELIB.writeTheLibrary(), set "from disk" after saving library.

IMP: (03/29/05, SMR) Explorer tree starts expanded to current library (Bug #223).

IMP: (03/29/05, SMR) User Manual dialog has search built-in (Bug #225).

IMP: (03/29/05, SMR) Added "length" to Arc Properties dialog (Bug #224).

IMP: (03/29/05, GVG) Tabs on Mac are aligned on the left (Bug# 226)

IMP: (03/29/05, GVG) Improvements in resistance/capacitance calculation in
     Parasitic Tool.  Two extra check boxes added: (a) include gate in resistance
     calculation, (b) include gnd network parasitic netlist.

IMP: (03/25/05, SMR) Added HPGL output.

IMP: (03/24/05, SMR) Unconnected nodes that are on the same network as a selected
     node now highlight (Bug #222).

IMP: (03/27/05, GVG) Improvements in 3D directional lights. New defaults: 
     (1 1 -1) (-1 1 -1)

IMP: (03/23/05, SMR) More improvements to IRSIM; refactored "Stimuli" and broke
     out subclasses.

BUG: (03/23/04, GVG) ExportCommand crashed if cell is null (no Bugzilla #)
FIX: return was added to the code

IMP: (03/22/05, SMR) Improvements to IRSIM command files (wildcards, vectors, 
     individual stimuli removal)

IMP: (03/21/05, GVG) First version of resistance calculation

IMP: (03/21/05, GVG) Parasitic values moved to ParasiticTab (out of SpiceTab)

IMP: (03/21/05, RK) NCC: Improve the error message that's printed when one Wire
     matches several wires by Export names.

IMP: (03/18/05, GVG) Changes in ParasiticsTool to handle IRSIM deck generation. 
     It generates so far information for transistors and capacitances.

BUG: (03/17/05, GVG) In DRC introduced while adding new min area strategy.
FIX: merge strategy stored in another place

IMP: (03/18/05, RK) NCC: hierarchical with size checking compares pairs of Cells
     only if each is instantiated exactly once.  Regressions updated to test this
     new functionality.

IMP: (03/16/05, RK) NCC: disambiguate based on MOS lengths in addition to widths

IMP: (03/16/05, RK) NCC qLite regression: remove spurious sizes from
     /data/qLite/modified.

IMP: (03/16/05, GVG) IRSIM will ignore non-fet transistors in schematic (not
     supported by IRSIM sim)

BUG: (03/16/05, GVG) Exception in GetInfo for non FET transistors in schematic. 
     Function getTransistorSize() can't be called.
FIX: get the area value by querying the corresponding attribute in the node

IMP: (03/16/05, GVG) PolyBase.getArea() returns positive value. TransistorSize
     also calculates active length for parasitic calculation.

IMP: (03/15/05, SMR) Added "Global Partition" primitive to the Schematics
     technology.

IMP: (03/14/05, RK) Publish regression/docs/regressions.sxw into archivist

IMP: (03/14/05, SMR) IRSIM and waveform improvements:
     Added "debug", "report", and working "t" commands
     Emitting resistors and capacitors
     Takes circuit information directly from memory without temp files
     Buttons next to "main" and "extension" cursors to center them

IMP: (03/14/05, GVG) First version of movie feature.

IMP: (03/14/05, RK) Modify qLite regression to test NCC black box support.

IMP: (03/14/05, RK) NCC: Add support for black boxes.

IMP: (03/14/05, RK) NCC: Add schematic bipolar transistors.

IMP: (03/11/05, GVG) Ability to turn on/off axes

IMP: (03/11/05, GVG) Cleaning up 3D tab in preferences if j3d is not available. 
     Some 3D options won't be available since they don't have sense if plugin is
     not available. This simplifies code maintenance.

IMP: (03/11/05, RK) Reorganized qLite regression data

IMP: (03/10/05, GVG) Adding ability to turn off/on bounding box associated to
     cells in 3D (Robert)

BUG: (03/10/05, SMR) Deleting circuitry doesn't remove all highlighting
     (Bug #219).
FIX: In CircuitChanges.DeleteSelected.doIt(), clear highlighting when done.

IMP: (03/10/05, SMR) Added PostScript line thickness control to "Print"
     preferences.

************************* Version 8.02i: *********************************

IMP: (03/09/05, GVG) Sweep algorithm in DRC min area checking

IMP: (03/09/05, GVG) New strategy for collision during key navigation (3D)

BUG: (03/08/05, GVG) Wrong transistor names in TechPalette (Bug #218)
FIX: Switch i by j during palette information is collected in MoCMOS.java

BUG: (03/08/05, SMR) "Change" does not preserve arc names (Bug #210).
FIX: In "Change.replaceAllArcs()", use old arc name when creating new one.

IMP: (03/08/05, SMR) "Cross-Library Copy" now remembers the last libraries
     selected (Bug #212).

IMP: (03/05/05, GVG) Axes in 3D View including rotation according to keybehavior
     and color.

IMP: (03/04/05, RK) Added qLite and sport to NCC regression suite

IMP: (03/04/05, SMR) Initial implementation of IRSIM simulator.

IMP: (03/04/05, GVG) First version of fly-through demo for 3D view. Ability to
     save/read demos using serialization. "J3D" as new file type for demo files.

BUG: (03/04/05, DN) Library write crashes (Bug #216)
FIX: In "output.ELIB" "output.JELIB" "output.ReadableDump" write name
     of external library in case it has not file name yet.

BUG: (03/04/05, DN) Network tool didn't renumber after change of name in global
     primitive.
FIX: In "NetworkTool.newVariable" "NetworkTool.killVariable" put
     "setNetworksDirty".

IMP: (03/02/05, GVG) Adding observable-observer pattern to notify changes in
     light color and direction

BUG: (03/02/05, SMR) Transparent color changes are not restored from saved
     preferences (Bug #213)
FIX: In "Prefs.java", must recache technology colors after importing.

IMP: (03/02/05, GVG) Colors used for cells and highlighted nodes in 3D view are
     available as special colors in ColorsTab Transparency is available in
     highlighted nodes (0.5f is the factor).

BUG: (03/01/05, GVG) Arcs in TechPalette got zero area bounding box after
     tail/head changes (Bug 211)
FIX: In ArcInst.makeDummyInstance, calculate bounding box with angle=0

IMP: (02/24/05, GVG) New 3D Menu in menubar if 3D plugin is found. It will
     contain list of 3D demos.

BUG: (02/23/05, SMR) GDS output does not handle polygons with duplicate points.
FIX: In GDS.outputBoundary(), remove duplicate points before writing.

BUG (02/21/05, GVG) ArrayStoreException in NodeInst.replace due to wrong
     allocation of array memory (Bug #206)

IMP (02/21/05, GVG) New version of 3D tab in preferences. It would be a 3D view
     where transparency and colors can be seen if 3D plugin is available. Access
     to 3D transparency factors in preference now.

IMP (02/17/05, GVG) First version of 3D Demo Tool. Few extra classes in j3d
     plugin.  Features: setup of original view angle, two spline interpolators, 
     dialog box to control motion, using node variables to control camera
     viewpoint.

BUG: (02/17/05, SMR) "Properties" windows grab focus inappropriately (Bug #208).
FIX: In EDialog.focusOnTextField()" do not reques focus.

BUG: (02/17/05, DN) Version related methods of Cell causes
     ConcurrentModificationException (Bug #209)
FIX: Synchronize these methods by "lib.cells"

************************* Version 8.02h: *********************************

IMP: (02/14/05, SMR) Added "Windows / Saved Views".

BUG: (02/14/05, SMR) R-tree not correct for arcinsts.
FIX: In ArcInst.lowLevelLink() add the arc to the R-Tree after geometry is
     correct.

BUG: (02/11/05, SMR) Libraries do not read in properly (Bug #203).
FIX: In input.ELIB.realizeArcs(), must compute bounds after bits are set, so
     bounds computation moved from ArcInst.lowLevelPopulate() to
     ArcInst.lowLevelLink().

BUG: (02/11/05, SMR) Zero-length arcs lose their angle information when read from
     ELIB.
FIX: In input.ELIB.realizeArcs(), take angle from the "userbits".

BUG: (02/11/05, SMR) "Properties" dialogs now stay on top in Windows SDI
     environment (Bug #202).
FIX: In EditWindow.paint(), call "requestFocusInWindow()" instead of
     "requestFocus()".

BUG: (02/11/05, SMR) Cross-library copy may not copy all subcells (Bug #200).
FIX: In CircuitChanges.copyRecursively(), when recursing to a related view, 
     supress more related views for the current cell only.

BUG: (02/11/05, SMR) Copying cells doesn't get arcs right.
FIX: In Cell.copyNodeProto(), make sure the end coordinates match the PortInsts.

BUG: (02/11/05, SMR) Verilog templates ignore parameters that have default
     values.
FIX: In Verilog.writeTemplate(), look to prototype if variable is not in
     instance.

BUG: (02/11/05, SMR) Verilog templates include square brackets in output
     (Bug #201).
FIX: In Verilog.writeTemplate(), request that instance names be "bus converted".

IMP: (02/11/05, SMR) "Measure" mode in waveform window now crosses panels.

IMP: (02/10/05, SMR) Can now import/export preferences (Bug #196).

BUG: (02/10/05, SMR) Ascending from a "down hierarchy in place" may display wrong
     (Bug #199).
FIX: In EditWindow.upHierarchy() and downHierarchy() must call
     PixelDrawing.clearSubCellCache().

BUG: (02/10/05, SMR) Descending into a rotated cell displays global coordinates
     wrong (Bug #198).
FIX: In EditWindow.showCoordinates() compute transformations properly.

IMP: (02/10/05, GVG) New coverage tab under Tool section in preferences. Second
     version of new layer coverage tool

IMP: (02/10/05, GVG) Rollback of "Made all pure-layer nodes have ports that run
     to their edges" changes in MoCMOS.

IMP: (02/10/05, RK) I changed the layout generator for inv so it uses a different
     floorplan with a 10 lambda wide output bus for strengths x>25.

IMP: (02/10/05, RK) The layout generators for inv2iKp and inv2iKn now use a
     different floorplan with a 10 lambda wide output bus.

IMP: (02/09/05, SMR) Signal names in the explorer tree are now sorted, but with
     subcells listed first. Also allowed "Window / Toggle Grid" to work in
     waveform window.  Also waveform window "Measure" mode displays better.

BUG: (02/09/05, SMR) Waveform signals that are saved with a cell are not
     displayed properly.
FIX: Fixed WaveformWindow.SaveSignalOrder class and
     Simulation.showSimulationData().

BUG: (02/09/05, SMR) Highlighting of splines does not always work right.
FIX: Changes to Highlight.showHighlight().

BUG: (02/08/05, SMR) Crossprobing doesn't work when examining lower levels of
     hierarchy (Bug #173).
FIX: In WaveformWindow.showSelectedNetworksInSchematic(), allow conversion
     between "@" and "_".

BUG: (02/08/05, SMR) Mimic stitch doesn't handle layer changing stitches
     (Bug #194).
FIX: In MimicStitch.mimicOneArc(), allow a null arc prototype (if no single arc
     can be used).

IMP: (02/09/05, GVG) First version of new layer coverage tool

IMP: (02/08/05, RK) Make gate layout generator use VarContext from current window

BUG: (02/08/05, SMR) Moving nodes may cause arcs to become disconnected
     (Bug #195).
FIX: In Layout.java, make consistent use of head/tail arc ends.

IMP: (02/08/05, SMR) Made all pure-layer nodes have ports that run to their edges
     Technologies affected: MoCMOS, BiCMOS, Bipolar, CMOS, MoCMOSOld, MoCMOSSub, 
     nMOS.

IMP: (02/07/05, SMR) Added "Show Pure Layer Nodes" command to "Edit / Cleanup"
     menu.

************************* Version 8.02g: *********************************

IMP: Sweep algorithm by default in ERC, geometry on network and coverage implants
     and list layer coverage.

BUG: (02/07/05, SMR) GDS output crashes (Bug #193).
FIX: In GDS.java, fixed new outputDouble() implementation.

IMP: (02/07/05, DN) Changed implementation of ArcInst and Connection: 
     Connection's fields moved to Connection, immutable class EPoint is used for
     Locations.

BUG: (02/06/05, SMR) Zooming in too far crashes.
FIX: In GenMath.clipSegment(), do integer scaling using longs.

IMP: (02/04/05, SMR) Directional arcs can now have arrow heads on either end. 
     (Bug #150)  Modified Arc Properties dialog to control directional, negated, 
     and end extension.  Modified commands in Edit / Arc menu.  Modified internal
     way of storing these properties.

IMP: (02/03/05, SMR) Improvements in node extraction.  Added
     PolyMerge.subtractLayers().

IMP: (02/04/05, GVG) Reorganizing tech palette including Bug#31
     Added "n"/"p" to well, active and transistors. Added "Mos" to transistors. 
     Added "Act" to actives. On Y axis, 3-node row (arc, pin, contact) sorted per
     Layer.  Done for all layout technologies.

BUG: (02/04/05, DN) Duplicate or rename cells spoils "getInstancesOf" (Bug #192).
FIX: In NodeInst.check add checking of NodeUsage to catch corruption in time.
     In NodeInst.rename use Cell.removeNodeName instead of Cell.removeNode to
     avoid corruption.

BUG: (02/04/05, DN) User writes corrupted library when invariants are broken
     (Bug #191).
FIX: In ToolMenu suggest user "ForceQuit" with save in "panic" directory.
     In "Cell.checkInvariants" report only first assert violation message to be
     less annoying.

IMP: (02/03/05, GVG) Removing extra call in ERC for subMerge trees.

IMP: (02/03/05, GVG) Optimizing usage of memory in sweep algorithm (using ERC as
     test case).

IMP: (02/03/05, GVG) Change dialog: node names in dialog sorted.

IMP: (02/02/05, GVG) Changes in LayerCoverageJob to allow calls from regression
     test suite.  Got rid of LayerCoverageJob.listGeometryOnNetworksNoJob and
     extended LayerCoverageJob.listGeometryOnNetworks.  Added Extraction package
     in regression test suite (1 script for now).

************************* Version 8.02f: *********************************

BUG: (02/02/05, SMR) Verilog output writes indexed signal names wrong (Bug #189).
FIX: In Verilog.getSafeNetName() distinguish busses from plain signals and handle
     them properly.

BUG: (02/02/05, SMR) Verilog output writes indexed signal names wrong (Bug #188).
FIX: In Verilog.getSafeNetName() allow square brackets if they enclose a singly
     indexed number.

IMP: (02/02/05, SMR) Spice output now sorts signal names in subcircuit headers
     (Bug #186).

IMP: (02/02/05, SMR) Waveform window now sorts signal names in the explorer part
     on the left (Bug #187).

IMP: (02/02/05, SMR) Status bar now shows both local coordinates and
     "hierarchical" coordinates (relative to an upper-level when the "Down
     Hierarchy" command has been used) (Bug #162).

IMP: (02/02/05, GVG) Second version of sweep algorithm for merging areas. 
     GeometryHandler transformed into a abstract class.

BUG: (02/01/05, GVG) Covering implants not working with PolyQTree structure after
     code re-organization. Job was not started and it was not detecting correctly
     original geometries.

BUG: (02/01/05, SMR) Artwork solid arcs are drawn in outline form when made
     thick.
FIX: In "Artwork.java", change the solid arc to have type FILLED.

BUG: (02/01/05, SMR) Very tiny schematics may crash PostScript output.
FIX: In PostScript.psText(), quit if text descriptor is null.

BUG: (02/01/05, SMR) Numbers are displayed with too many digits (Bug #183)
FIX: In "TextUtils.makeUnits()", call "formatDouble" with 1 parameter to force 3
     digits precision.

IMP: (02/01/05, SMR) Highlighting a port on an "example icon" shows the
     equivalent export in the cell (Bug #142).

IMP: (01/31/05, GVG) First version of sweep algorithm connected to ERC Well

IMP: (01/31/05, SMR) Waveform window draws grid dimmer and in the background. 
     Horizontal grid lines are adjusted to 10%, 30%, 50%, 70%, and 90% of actual
     values.  Panning commands (Ctrl-2-4-6-8) now work in waveform window.

IMP: (01/31/05, DN) Simplifications of Undo API.

BUG: (01/31/05, DN) Incorrect calculation of size of Outline primitives in
     "NodeInst.redoGeometric()"
FIX: Calculate MBB both in parent and in instance coordinates.

IMP: (01/31/05, RK) Removed the compile time limit on the number of transistors
     that may be combined into a single series stack.

IMP: (01/30/05, DN) DatabaseChangeListener API changed to prepare for
     transactional database.

IMP: (01/29/05, DN) JELIB is the default library format.

BUG: (01/29/05, DN) Deleting exports invalidates database invariants (Bug #181).
FIX: In "Export.kill()" disconnect all PortInsts of this Export before deletion.

IMP: (01/29/05, SMR) Shift-right in waveform now zooms (Bug #177).

************************* Version 8.02e: *********************************

IMP: (01/28/05, GVG) Adding exhaustive checking option in DRC (mostly for
     regression purposes)

IMP: (01/27/05, GVG) Side effects of ordered database in DRC. Speed improvements
     to avoid checking two node instances multiple time. Some statistics:
     qFourP2:qFourP1top:qFourP1top: v8.01=22 min, v8.02d=37min, v8.02e=8min.

IMP: (01/27/05, JKG) Added option under GDS preferences to have brackets in
     export names converted to underscores.

IMP: (01/26/05, GVG) TSMC90nm: thick active contacts including thick active
     arcs

IMP: (01/26/05, SMR) Removed the command "Windows / Special Zoom / Zoom Box"
     because it duplicates the shift-right drag function and, more importantly,
     doesn't work.

BUG: (01/26/05, SMR) Deleting nodes leaves their highlighting on the screen.
FIX: In Highlight.isValid() must convert PortInst objects to their NodeInsts.

IMP: (01/26/05, SMR) Serpentine transistors have their sizes recomputed with
     their bounds.

BUG: (01/26/05, DN) Arcs may be created with ends on unlinked PortInsts.
FIX: Check PortInst.isLinked when creating arcs.

BUG: (01/26/05, DN) Corrupted ELIBs may be written (Bug #176).
FIX: Check database invariants before writing libraries.
     Validate PortProtos when reading ELIBs.

BUG: (01/26/05, DN) ELIB reader unnecessarily scales layout cells (Bug #176).
FIX: Limit scaling to icon subcells in schematic cells.

BUG: (01/26/05, DN) Group delete causes exception (Bug #175).
FIX: "kill" methods will return with message if object is already killed.

BUG: (01/26/05, DN) The Font Association String[] var is incorrectly prepared.
FIX: In Output.createFontAssociation, <= instead of < .

BUG: (01/25/05, GVG) PolyBase.isInside not working properly for non-convex
     mahnattan polygons.  Angle-based algorithm tends to cancel out angles for
     concave corners.
FIX: (for now) for wiring check if point is along polygon edges. More stable
     solution is to change algorithm for an intersection-based one.

BUG: (01/25/05, SMR) Spice output allows names that start with a digit (but Spice
     doesn't) (Bug #169).
FIX: In Spice.getSafeNetName(), insert an "_" before names that start with a
     digit.

BUG: (01/25/05, SMR) Auto-routing does not connect to pure-layer nodes with
     nonmanhattan shape.
FIX: In Technology.getShapeOfNode(), set a port when outline is present and
     electrical layers requested.

BUG: (01/24/05, JKG) HierarchyEnumerator.getNetworkInParent() did not handle
     globals correctly, because they are not explicitly exported.
FIX: check for globals

BUG: (01/24/05, JKG) Additional windows (with menu bars) was causing duplicate
     key bindings.
FIX: boolean check for initialization to occur only once.

BUG: (01/24/05, SMR) Importing libraries doesn't mark them to be saved.
FIX: In "Input.importLibrary()", set the library to have major changes.

************************* Version 8.02d: *********************************

BUG: (01/24/05, JKG) The Font Association String[] var was being incorrectly
     written out in the ELIB writer, as the "additionalVar" in
     ELIB.writeVariables().
FIX: A fix has been implemented that checks for version 8.02c of the libraries
     and ignores the variable. Additionally, the ELIB writer has been fixed.

BUG: (01/24/05, SMR) CIF input places cell instances incorrectly.
FIX: In CIF.nodesCall(), must compute instance position to account for
     cell-centers. In CIF.makeCall(), must make a copy of the matrix.

IMP: (01/22/05, SMR) Finished coding PolyBase.contains().

************************* Version 8.02c: *********************************

BUG: (01/21/05, SMR) Spice crossprobing doesn't work right (Bug #170).
FIX: In WaveformWindow.java, do not convert "@" to "_" unless name match fails.

IMP: (01/21/05, SMR) Combined the Component menu into the Explorer panel,
     Also added the "Layer Visibility" dialog there (Bug #35, #67)

BUG: (01/21/05, SMR) Exports don't display when editing "down hierarchy in place"
     (Bug #164)
FIX: In PixelDrawing.java, must keep track of top-level window and draw exports
     properly.

BUG: (01/21/05, SMR) Scroll bars don't work right when editing "down hierarchy in
     place" (Bug #164)
FIX: In EditWindow.setScrollPositionUnsafe(), bottomScrollChanged(), and
     rightScrollChanged() must account for the in-place editing when dealing with
     the offset values.

BUG: (01/21/05, SMR) Auto-stitching doesn't connect pins.
FIX: In Technology.getShapeOfNode(), only exclude pin geometry if not doing
     electrical layers.

IMP: (01/20/05, GVG) Extra flag in DRC tab to stop checking after first error
     per node is found.

IMP: (01/20/05, GVG) Setting default colors for Artwork Arcs and Text Properties
     (in TextDescriptor.DescriptorPref)(Bug #152)

BUG: (01/20/05, DN) Can't rename cell groups (Bug #167).
FIX: CircuitChanges.RenameCellGroup.doIt stores cells from group in
     array before renaming.

IMP: (01/19/05, SMR) Cleaned up use of "getUserNetlist".

IMP: (01/18/05, SMR) Improved GDS floating point output.  Code from Tom Valine
     <tomv@transmeta.com>.

IMP: (01/18/05, SMR) Removed "Update" button from "Attributes" dialog, have
     only "Done". All actions happen instantantly (Bug #78).

IMP: (01/18/05, SMR) "Props." button in "Arc Preferences" dialog by name
     field lets name info be edited (Bug #149).

BUG: (01/18/05, DN) "ElectricObject.isLinked()" can return true for objects of
     deleted cell.
FIX: Reimplement "isLinked()" so that it became the same as former
     "isActuallyLinked()".

IMP: (01/17/05, DN) Deterministic output of ELIB and ReadableDump:
     Only referenced objects and variable keys are written;
     Userbits of objects contain only bits used in Java Electric;
     Only variable flags used in Java Electric are written;
     VTDISPLAYNAMEVALINH and VTDISPLAYNAMEVALINHALL bits in TextDescriptor are
     replaced by VTDISPLAYNAMEVALUE;

IMP: (01/14/05, RK) NCC: I eliminated the annoying "false sharing" behavior
     during hierarchical NCC. This allows NCC regressions to pass once again.

IMP: (01/14/05, SMR) Added special properties dialog for nodes with outline
     information (shown when doing a "Properties" command on such a node).

BUG: (01/14/04, DN) Thunder and lightning when highlighted networks are not ready
     (Bug #155).
FIX: In "Highlighter.getHighlightedNetworks" use "acquireUserNetlist" instead of
     "getUserNetlist".  Text message is printed when getUserNetlist is called in
     GUI thread.

************************* Version 8.02b: *********************************

BUG: (01/14/04, GVG) Removing extra quotes in Launcher.java otherwise double
     click or java -jar electric.jar doesn't work. (Bug #160).

BUG: (01/13/05, DN) Giving same name for two nodes in a cells spoils invariants
     (#Bug 159).
FIX: NodeInst.getDuplicate() returns duplicate (returned always 0).

BUG: (01/13/05, GVG) DRC and ordered database changes. After the changes, it was
     noticed that checkDist was not invariant because it reported only the first
     error found. This affects regression result.
FIX: checkDist will check all cases. Disadv: DRC gets slower but accurate.

IMP: (01/13/05, JKG) Spice generated node names are now determinant.

IMP: (01/13/05, JKG) CDL: "convert brackets" option now works properly;
     empty subcircuits are not netlisted.

IMP: (01/13/05, JKG) CIF generated names are now NAME instead of NAME_lay_.

IMP: (01/13/05, JKG) Added Export command to export 'exports only' in Skill.

IMP: (01/13/05, JKG) Added option on Skill preferences tab to truncate cell
     names to match names in GDS files.

IMP: (01/13/05, JKG) Topology: "getSafeNetName" now properly applied to
     non-aggregating netlisters

IMP: (01/12/05, SMR) First implementation of node extractor.  Added to
     "network tab" in "Preferences" dialog

BUG: (01/13/05, DN) Rename arc/nodes and undo can spoil database invariants
     (Bug #157).
FIX: In "NodeInst.lowLevelSetNameKey" and ArcInst.lowLevelSetNameKey remove
     "isUsernamed()".

BUG: (01/13/05, DN) Remove export crashes.
FIX: In "Cell.removeExport()".

BUG: (01/13/05, DN) Ordering Tools by name changed order of Listeners calls.
FIX: Order tools by definition order.

BUG: (01/12/05, DN) JELIB contains only used exports of external cells.
FIX: Output all exports of external cells.

IMP: (01/12/05, DN) TextDescriptor saves in preferences colors of
     default Node/Arc/Export/Annotation/Instance/Cell descriptors.

************************* Version 8.02a: *********************************

IMP: (01/11/05, SMR) "Arc Properties" dialog now has "More/Less" button and, in
     expanded mode, shows a list of attributes on the arc (Bug #149).

IMP: (01/11/05, DN) All database objects are comparable and the are ordered in
     database.

IMP: (01/10/05, SMR) Better detection of the selected export when going up
     hierarchy (Bug #138).

BUG: (01/10/05, GVG) DRC and min area, still problems with well areas which are
     not part of any network
FIX: Forcing substrate to ignore network information in Quick.java

BUG: (01/10/05, SMR) Some old Electric versions crash ("5.3b22").
FIX: Version.java no longer throws a NumberFormatException...just prints an error
     message.

BUG: (01/10/05, SMR) New windows don't appear with the cell filling it (Bug
     #140).
FIX: In WindowFrame.createEditWindow(), set the EditWindow size before filling
     the screen.

IMP: (01/10/05, SMR) Added a global text scale that applies to all text.
     Settable as a parameter (in the Text tab) and with the "Edit / Text"
     commands "Increase All Text Size" and "Decrease All Text Size".

BUG: (01/10/05, SMR) Viewing the explorer tree "hierarchically" does not work
     right.
FIX: Re-implemented WindowFrame.wantToRedoLibraryTree() and use it when changing
     the explorer view style.

BUG: (01/10/05, SMR) Editing text in-place doesn't properly calculate the number
     of lines of text (Bug #141).
FIX: In GetInfoText.figureSize(), have "split()" use a second parameter of -1 to
     include all trailing fields.

IMP: (01/09/05,GVG) YES_NO dialog for deleting cells in Explorer instead of
     YES_NO_CANCEL type

IMP: (01/09/05, DN) Settors are removed from TextDescriptor class. Database
     TextDescriptors are almost readonly (except low-level methods).
     MutableTextDescriptor class is used for TextDescriptors out of database, it
     has both gettors and settors.  Variable API is extended by TextDescriptor
     API (both gettors and settors).  ElectricObject.getTextDescriptor(varName)
     and ElectricObject.setTextDescriptor(varName, td) can be used for uniform
     access to text descriptors in database. varName can be also one of:
       NodeInst.NODE_PROTO_TD, NodeInst.NODE_NAME_TD, ArcInst.ARC_NAME_TD,
       Export.EXPORT_NAME_TD 

IMP: (01/08/05, GVG) Catching expection due to bad filename while generating
     ImageIO during export.

IMP: (01/08/05, GVG) Avoid exception if new name is null due to errors in
     Cell.rename.

IMP: (01/05/05, DN) View, Libraries, Cells, Exports, Tools, Technologies,
     PrimitveNodes, PrimitiveArcs, Variables are comparable by name and ordered
     in database.

IMP: (1/3/5, SMR) Added silicon compiler and VHDL compiler.
     Initial translation without any improvements.
     Added commands "Tool / Silicon Compiler / Convert Current Cell to Layout",
     "View / Make VHDL View"
     "View / Compile VHDL to Netlist View"
     "View / Generate VHDL View"

BUG: Must quote system properties when relaunching.
FIX: In Launcher.invokeElectric()", quote results of System.getProperty().

BUG: (12/23/04, GVG): Exception creating a bufferImage if width or heigth was
     zero (text) (Bug #139)
FIX: return null in these cases
 
IMP: (12/23/04, GVG): Fixing side effects in TechPalette after Bug#103

IMP: (12/23/04, GVG): TSMC90: Adding rules OD2.W.1, OD2.S.1 and OD2.EX.3 even
     though they are met by construction (triggered by Bug #137)

IMP: (12/23/04, GVG): 3D View: warning if scene graph will be big (Bug #28)

************************* END OF Version 8.01, GNU RELEASE *********************************
************************* Version 8.01: Released 12/22/04 *********************************

IMP: (12/22/04, GVG): Change should leave object(s) selected (Bug #129)

IMP: (12/22/04, GVG): New scale for 3D panning.

IMP: (12/22/04, GVG): New names for VTH/VTL/OD18 pure nodes to be consisten with rest of names.

IMP: (12/22/04, GVG): DRC Schematic, improving error messages if objects touch (triggered by Bug #126)

BUG: (12/22/04, SMR) Busses connecting at a Wire Con are flagged as DRC errors (Bug #126).
FIX: In drc.Schematic.checkPolygonVicinity(), consider WireCon to connect arcs.

IMP: (12/21/04, SMR) When going down hierarchy, only ask for entry in arrayed node if waveform is present.

IMP: (12/21/04, SMR) Added Help/Load Built-in Libraries/MOSIS CMOS Pads to get the pads library.

BUG: (12/20/04, SMR) Offset text on rotated nodes is not drawn right.
FIX: In Geometric.addDisplayableVariables(), handle style rotation and style offset.
     In ElectricObject.getPolyList(), handle style offset.
     In ElectricObject.addDisplayableVariables(), handle style rotation.
     In PolyBase.rotateType(), handle transposed rotation better.
     In Technology.getShapeOfNode(), use untransformed bounds of node for text location.

BUG: (12/20/04, GVG) Extra polyehedra to describe gate channel were wrong if transistors were rotated (Bug #124)
FIX: Extra geometries are created after polygons are rotated.

IMP: (12/20/04, GVG) Ability to open libraries without providing extension. Extension will be added based on
     DEFAULTELIB variable. (Bug #95)

IMP: (12/20/04, GVG) Adding error logger to ELIB/ELIB1 if readNodeInst/readArcInst returns true
     otherwise users might skip the error.

BUG: (12/20/04, SMR) "Dragging must enclose objects" doesn't work right (Bug #131).
FIX: In Highlighter.checkOutObject()" must consider only essential part of node or arc.

BUG: (12/20/04, SMR) Multi-object Properties dialog cannot edit selection if
     only Exports are listed (Bug #130).
FIX: In GetInfoMulti.loadMultiInfo() enable removal buttons if there are exports, too.

BUG: (12/20/04, SMR) Automatically generated icons fail "cell cleanup" (Bug #128).
FIX: In CircuitChanges.cleanupCell(), ignore Universal Pins as well as Invisible Pins
     when considering whether zero-size is an error.

IMP: (12/19/04, SMR) Cleaned up code to be consistent with documentation
     (added "Add Ports from Library" in Export menu).

IMP: (12/20/04, GVG) List of primitive nodes in Change dialog and tech palette are sorted alphabetically (Bug #132)
In case of sorted list of nodes, use Technology.Technology.getCurrent()

IMP: (12/17/04, RK) NCC: remove useless options. update documentation

************************* Version 8.01aw: *********************************

IMP: (12/17/04, GVG) 3D View: panning implemented (Bug #24). ZoomAndPanListener.panX and panY replaced by one function
and new one was added to WindowContent to deal with different window types.

IMP: (12/17/04, SMR) Cleaned up code (removed irrelevant commented-out sections),
     converted wildcard imports.

BUG: (12/17/04, SMR) Edit in-place does not grow as new text is typed (Bug #125).
FIX: In GetInfoText.EditInPlaceListener, fill in keyReleased() and have it resize the text area.

IMP: (12/17/04, DN) Fixed compilation warnings on Java-1.5.

BUG: (12/17/04, GVG) 3D view: problems with zoom in/zoom out (Bug #23)
FIX: Change factor calculation and now we are just setting a new transformation scale.

IMP: (12/17/04, DN) Fixed compilation warnings on Java-1.5.

IMP: (12/16/04, GVG) Minor changes due to manul preparation.

BUG: (12/16/04, SMR) Going "Down Hierarchy" after a "Down Hierarchy In Place" remains
     in "in place" mode (Bug #107).
FIX: In EditWindow.downHierarchy(), turn off "in place" mode if not going down in place.

IMP: (12/16/04, GVG) New transistor sizes of OD18 and Native to comply with missing DRC rules

BUG: (12/16/04, SMR) PostScript export of waveform windows crashes (Bug #119).
FIX: In PostScript.java, check for null EditWindow pointer.

IMP: (12/15/04, SMR) Minor changes to GUI to help with documentation: About dialog, New Arc Preferences,
     outline edit, verilog of and/or gates, multipage schematics, command-line help, Export menu,
     pulldown reporting.

BUG: (12/15/04, SMR) "Antenna" preferences crash if current technology has no metal.
FIX: Check for empty list.

IMP: (12/15/04, RK) NCC: Add Net Equivalence mapping regression. The regression uncovered many bugs.

BUG: (12/15/04, GVG) DRC and new thick active layers: wrong bit detection for thick active layers that make DRC to fail
FIX: negate condition in Quick.checkDist() (Bug #117)

IMP: (12/15/04, GVG) MoCMOS: wrong min size of thick active pure nodes (2.0 instead of 4.0, rule 24.1)

IMP: (12/15/04, GVG) TSMC90: new stipple patterns for OD18 (Bug #118)

BUG: (12/15/04, GVG) DRC Select checking: still problems with transformation (Bug #114)
FIX: "No enough surround" code refactored and placed outside of initial recursive iteration.

IMP: (12/14/04, GVG) New colors/patterns for VTH/VTL/Native transistors in TSMC90 (Bug #113)

IMP: (12/14/04, GVG) DRC: first modifications for VTH/VTL/Native transistors.

BUG: (12/14/04, SMR) Duplicating a PMOS schematic transistor creates one named "nmos@xx" (Bug #115)
FIX: In Clipboard.copyListToCell(), create nodes with the proper "tech specific" value.

BUG: (12/14/04, SMR) Spice netlister does not use "vdd" or "gnd" when power and ground nodes are present (Bug #112).
FIX: In Spice.getPowerName and getGroundName(), favor "vdd" and "gnd" if the names exist.

BUG: (12/14/04, SMR) When the background color is white, dragging a rectangle is not visible (Bug #110).
FIX: In EditWindow.showDragBox(), use the proper highlight color.

BUG: (12/14/04, DN) Non-string variables with language code bits can corrupt disk library (Bug #100).
FIX: Clear language code bits from non-string variables in ELIB and JELIB writers.

************************* Version 8.01av: *********************************

IMP: (12/14/04, DN) Renamed transistor port names in TSMC90. JELIB reader handles renamed ports. (Bug #83)

BUG: (12/13/04, SMR) Spice cards do not get emitted to the deck (Bug #93).
FIX: In Spice.replacePortsAndVars(), allow unconnected nodes.

BUG: (12/13/04, SMR) Selection of header files in the Spice Preferences dialog excludes all files (Bug #91).
FIX: In FileType.java, change the extension string of ANY from {""} to {}.

BUG: (12/13/04, SMR) Small values get turned into zeros (Bug #90).
FIX: In TextUtils.makeUnits(), call "formatDouble()" with a second argument of 0.

IMP: (12/13/04, DN) Revision of JELIB format. JELIB writer will change
     format when the Electric version becomes "8.01aw". JELIB reader will
     read files after "8.01aw" in a new format.

BUG: (12/10/04, GVG) No reporting min errors for negative notches (Bug #85)
FIX: Put code back (decomissioned long time ago) and amended.

IMP: (12/10/04, GVG) ERC profiling results: (1) getShapeArc() touched, (2) getShapeNode touched

IMP: (12/9/04, GVG) New thick transistors in MoCMOS technology.

IMP: (12/9/04, GVG) Transistor names in TSMC90 consistent (Bug #83)

BUG: (12/10/04, SMR) Not all parent cells are listed when "Up Hierarchy" is done (Bug #88).
FIX: In EditWindow.upHierarchy() use HashSet, not TreeSet.

IMP: (12/10/04, SMR) Added drag-and-drop from both the Explorer Tree (for cell instances)
     and from the palette (for technology primitives).

BUG: (12/10/04, SMR) Selecting a bus pin does not grab all nets on that pin (Bug #77).
FIX: In Highlighter.getHighlightedNetworks(), look at all arcs connected to a pin.

BUG: (12/10/04, SMR) Locking cells may crash when changes are made (Bug #84).
FIX: Moved all calls to CircuitChanges.cantEdit to be inside of jobs.

BUG: (12/9/04, SMR) Waveform window does not always show the full hierarchy of signal names (Bug #82).
FIX: In WaveformWindow.getSignalsForExplorer(), ensure that all levels of the signal name hierarchy are created.

BUG: (12/9/04, SMR) Spice netlister may mix-up ground signal names (Bug #81).
FIX: Change Spice.getGroundName to return null.

IMP: (12/9/04, SMR) "Layer Visibility" dialog also lets you "highlight" layers.

BUG: (12/9/04, SMR) Resizing a window doesn't always redraw its contents.
FIX: In EditWindow.java, queue resizing, just like panning and zooming.

************************* Version 8.01au: *********************************

BUG: (12/9/04, SMR) Going "Up Hierarchy" may display the cell twice (Bug #74).
FIX: In EditWindow.upHierarchy(), do not request full display if adjusting view.

BUG: (12/9/04, GVG) DRC bug related to active contacts touching transistors (function activeOnTransistorRecurse):
     wrong detection of poly ports (Bug #72).
FIX: search based on names instead of networks otherwise active ports connected to poly via other contacts get ignored

IMP: (12/9/04, GVG) ERC profiling results: (1) less getWellLayerType calls (2) no checkForAbort in visitNodeInst

BUG: (12/9/04, DN) Thousands of ArrayIndexOutOfBoundsException drawing Highlights (Bug #79).
FIX: Addition check isActuallyLinked() in Netlist class.y

BUG: (12/9/04, DN) Network tool crashes if cell contains cell from it's own cellgroup (Bug #75).
FIX: NodeInst.isIconOfParent() uses NodeUsage.isIconOfParent() to.

IMP: (12/8/04, GVG) DRC good dates work with min area and coverage bits (Bug #17)

IMP: (12/8/04, GVG) Save Library in ExplorerTree to avoid the setup as current library previous to the saving action.

IMP: (12/8/04, GVG) Layer visibilty stored in technology preferences (Bug #76)

BUG: (12/8/04, RK) NCC: When guessing which layout or schematic cell to compare against, always select the most recent version.

BUG: (12/8/04, GVG) DRC: polysilicon-select checking not working properly hierarchically (Bug# 66 and #15).
FIX: work on transformations.

IMP: (12/7/04, RK) NCC regression: added small test case to exercise transistor thresholds, oxide thickness, etc

IMP: (12/7/04, RK) NCC: Handle transistor thresholds, oxide thickness, etc

IMP: (12/7/04, SMR) Descending into an arrayed node now prompts for the specific node to enter (Bug #53).

************************* Version 8.01at: *********************************

IMP: (12/7/04, SMR) Spice files don't get read back properly.

IMP: (12/7/04, GVG) DRC: more caching functionality (tested in debug mode and now making it public)

IMP: (12/7/04, SMR) Assertion in Library.removeReferencedLib() is now just a warning (Bug #58).

IMP: (12/7/04, GVG) DRC: another place where generic arcs are found in layout.
     Same modification as the one inserted on 12/3/04

IMP: (12/7/04, SMR) Screen sizes are computed better on multi-display systems (Bug #48)

BUG: (12/7/04, SMR) Auto-stitcher may remove useful pins (Bug #59).
FIX: In AutoStitch.comparePoly(), only delete pins if they have no connections or exports.

IMP: (12/6/04, GVG) ERC: optimizing code (1)DRC check only available by request (not fully decomissioned yet
     until 100% sure about consequences) (2) caching information for arcs in HierarchyEnumerator Visitor.

IMP: (12/6/04, SMR) Screen sizes are computed better on multi-display systems (Bug #48).

BUG: (12/6/04, SMR) Conversion from layout to schematic is broken (Bug #56).
FIX: Fixed "ViewChanges.java" to work right.

BUG: (12/6/04, SMR) PostScript output is empty.
FIX: Make scaling factors "i" and "j" double in PostScript.start().

BUG: (12/6/04, SMR) Unexpanded cell outlines may get cut off on the right and bottom.
FIX: In PixelDrawing.expandedCellCached()" make caches wider and taller by 1.

IMP: (12/6/04, GVG) Export PNG files. Valid for EditWindow, Waveform and 3D View.

IMP: (12/6/04, DN) "TextUtils.getFileNameWithoutExtension()" returns legal
     library name with chars '\n|: {};' replaced by '-'.
     "LibraryFiles.readExternalLibraryFromFileName()" uses this name
     for library creation.

IMP: (12/5/04, SMR) Sped up drawing of highlights by doing proper clipping in Highlight.java. (Bug #51)

IMP: (12/3/04, SMR) Made Artwork Circles work properly, including problems with constraints (Layout.modFlex()),
     selection, better highlighting.

IMP: (12/3/04, SMR) Redid Layer Visibility once more; can select range of layers.

IMP: (12/3/04, GVG) TSMC90: New default size in pure p/n select nodes (Bug #54)

BUG: (12/3/04, RK) NCC: more intuitive Cell selection for cell groups having multiple layout cells (Bug #45)

IMP: (12/3/04, GVG) DRC: generating warnings if generic arcs are found in layout cells

BUG: (12/3/04, GVG) TSMC90: Active ports got wrong active arcs attached (Bug #52)
FIX: Switched to N type

BUG: (12/3/04, DN) In ELIB input technology and scale calculation is undeterministic (Bug #20).
FIX: LibraryFiles.computeTech() ensures that subcells have computed technology.

IMP: (12/3/04, DN) Technology.whatTechnology returns Artwork for text files.     

IMP: (12/3/04, DN) Launcher enables assertions.

BUG: (12/2/04, SMR) Layer Visibility dialog doesn't work right on Macintosh.
FIX: Change event handling to work on Mac.

IMP: (12/2/04, SMR) Waveform window "measure" mode now snaps to waveform points.

BUG: (12/2/04, GVG) Multi cuts conditions not proporly checked for TSM90 tech and viaXs
IMP: isMultiCutCase() depends on technologies. By default, if more than 1 cut then is multiCut node.
For TSM90, only when 3 neighbors (Bug #21). Bug #49 as well.

IMP: (12/2/04, SMR) Converting from schematics to layout ("Make Alternate Layout View")
     does not re-create existing cells. (Bug #38).

IMP: (12/2/04, SMR) Going up hierarchy follows exports.

************************* Version 8.01as: *********************************

BUG: (12/2/04, SMR) JELIB input may crash. (Bug #46)
FIX: In "JELIB.instantiateCellContent()" handle null "lineReader".

IMP: (12/1/04, SMR) Status bar coordinates are wider and right-aligned (Bug #33)

IMP: (12/2/04, SMR) PostScript output improved (fills paper better, writes all ports). (Bug #25)

BUG: (12/2/04, SMR) Extracting instances doesn't preserve export characteristics. (Bug #44)
FIX: In CircuitChanges.extractOneNode(), copy all export information.

IMP: (12/2/04, SMR) HSpice output reader can now handle wide signal format (9601). (Bug #39)

FIX: (12/1/04, JKG) MoCMOS Gate Layout Generator regression fails in 8.01ar (Bug#40)

BUG: (12/1/04, SMR) Multi-object Properties does not adjust sizes right when mirroring is involved. (Bug #32)
FIX: In GetInfoMulti.MultiChange.doIt(), account for mirroring when computing new size.

IMP: (12/1/04, SMR) "Pure" menu entry no longer offers contact or via layers.

IMP: (12/1/04, SMR) "Layer Visibility" dialog now shows layers sorted by height (Bug #26, 33)
     and lets you set all layers above or below a point to be visible/invisible.

************************* Version 8.01ar: *********************************

IMP: (11/30/04, GVG) New stipple patterns for m7/m8 in TSMC90 (Bug #22)

BUG: (11/30/04, GVG) Wrong sizeoff in X m7m8 and m8m9 contacts. Values amended (Bug #19)

IMP: (11/30/04, GVG) 3D View: printing capability from FileMenu->Print (new API in WindowContext to be more generic).

BUG: (11/30/04, SMR) Encapsulated PostScript is wrong.
FIX: Halve the number of "%" characters (they were duplicated for C formatting).

IMP: (11/30/04, SMR) "Confirm delete" in "Delete Cell" dialo, and "Make new window" in "New Cell" dialog
     are remembered between dialogs.

IMP: (11/29/04, SMR) Double-clicking on vertical axis of waveform window gives dialog for setting extents.

BUG: (11/29/04, RK) NCC wasn't stopping upon finding first error for Cell Groups with more than one comparison.

IMP: (11/29/04, GVG) 3D View: (a)Fill Window functionality available in 3D View. (b) First attempt to program
     ZoomOut/ZoomIn. (c) If cells are expanded, its nodes will be shown. (d) Bug fix in extra polyhedra connecting poly gates.

BUG: (11/29/04, RK) Fix NCC crash when designs have no Parts or no Wires and a Hash Code partitioning mismatch is reported. Re: Bugzilla bug #16

IMP: (11/29/04, SMR) Improved name incrementing so that lists are all incremented
     (for example, "A,B" used to become "A,B_1" but now becomes "A_1,B_1").

IMP: (11/28/04, SMR) Added primitive node/arc invisibility when all of their layers
     are invisible, so that they are not selectable.

IMP: (11/25/04, SMR) Added DXF input.

IMP: (11/25/04, SMR) Added "grid" button to analog waveform window.

IMP: (11/25/04, SMR) Renaming a group shows up in the explorer tree.

IMP: (11/25/04, SMR) New Arc Preference: Duplicate/Array/Paste auto-increments arc names.

IMP: (11/25/04, GVG) 3D View: automatic resizing in Z axis in any open 3D view if scale changes.
     New location of scale factor in 3D dialog.

BUG: (11/25/04, GVG) DRC badBoxArea not returning when error found and then wrong good date was stored (Bug #13)
FIX: return inserted

IMP: (11/24/04, SMR) Widened coordinate area in status bar to account for Macintosh font size.

IMP: (11/24/04, SMR) Added hook to clear the cache of expanded cell contents, used by layer visibility.

IMP: (11/24/04, SMR) Spice netlister no longer forces power and ground to be named "vdd" and "gnd".

BUG: (11/24/04, SMR) When an arc connects from a port to itself, deleting the port crashes.
FIX: In "NodeInst.removePortInst()" make sure the number of connections is valid.

BUG: (11/23/04, SMR) Node Instance names are not drawn right if the instance is rotated/mirrored and its
     contents are not centered.
FIX: In ElectricObject.computeTextPoly() transform name text about the true node center.

IMP: (11/23/04, SMR) Implemented "multi-page schematics".  Commands in the Cell menu control it.
     All pages are actually in a single cell, spaced far apart.

IMP: (11/23/04, SMR) Duplicating a cell that is on the screen multiple times only changes one display.

IMP: (11/23/04, SMR) Duplicating a cell and giving it a name that already exists prompts for confirmation.

************************* Version 8.01aq: *********************************

BUG: (11/23/04, SMR) Panning an expanded cell makes its exports go away.
FIX: In PixelDrawing.drawNode()" always write exports.

BUG: (11/22/04, SMR) "Make Alternate Layout View" produces Schematic cells.
FIX: In "ViewChanges.makeLayoutCells()", use layout when creating new cells.

BUG: (11/22/04, SMR) GDS output crashes when given a schematic.
FIX: Disallow non-layout views from being written in GDS.

BUG: (11/22/04, GVG) ERC shouldn't complain for not finding N/P well contacts if there are no P/N well
     regions in cell
FIX: While checking well areas, remember if P/N regions exist.

IMP: (11/22/04, GVG) Ports for pure primitive nodes will grown in size as the nodes.

BUG: (11/22/04, GVG) Extending search area in DRC for notch checking otherwise it doesn't find points along edges.
FIX: In Quick.lookForCrossPolygons(), bounding box has been extended.

IMP: (11/22/04, SMR) Display improved: "Peek" is faster; Panning the display is faster
     Display no longer inaccurate during/after panning; Down-hierarchy in-place faster.

BUG: (11/22/04, SMR) R-Trees may fail if too many objects are on top of each other.
FIX: In Geometric.RTNode.addToRTNode(), make sure the two seed nodes (oldN and newN) are different.

IMP: (11/21/04, GVG) 3D modifications: (a) Extra polygons connecting poly and poly gates in transistors
     so gate oxide looks more real. (b) Adding active region beneath poly gate (electrical layers from
     getShapeOfNode don't provide such polygons).

IMP: (11/21/04, GVG) Orbit behavior replaced by 3 separate ones in 3D view. Better zoom and translation

************************* Version 8.01ap: *********************************

IMP: (11/18/04, SMR) Added security to TopLevel.finished().

IMP: (11/18/04, GVG) Technology name in new Arc/Node tabs in preferences

IMP: (11/18/04, GVG) Allow to keep min sizes stored in preferences (not applying Technoloogy.setLayerMinWidth().
Send a warning with debugging option.

IMP: (11/18/04, GVG) DRC will ignore goodDRCDates if library was created with old JElectric version.

BUG: (11/18/04, GVG) Not removing goodDRCDate from cells that didn't pass DRC.
FIX: Collect the information and do it in SaveJob

BUG: (11/18/04, GVG) ChangeCell.contains() not detecting repeated elements.
FIX: Put back original code

BUG: (11/18/04, SMR) Cross-library copy doesn't sort cell names properly.
FIX: In "CrossLibCopy.showCells()", use "nameSameNumeric".

BUG: (11/18/04, DN) Port moved always reported for ports of transistors rotated to 45 degree.
FIX: ArcInst.stillInPort() tolerates distance to nearest grid point "0.01*sqrt(0.5)".

IMP: (11/18/04, DN) Menu entry "File|CheckAndRepairLibraries" is splitted to two:
    "File|CheckLibraries|Check" and "File|CheckLibraries|Repair".

BUG: (11/18/04, DN) CheckAndRepair may change database, but it isn't executed in the change thread.
FIX: Class CircuitChanges.CheckAndRepairJob.

BUG: (11/18/04, DN) Input.readLibrary calls "preventLoss" dialog from change thread.
FIX: Move it FileMenu to execute in GUI thread.

IMP: (11/18/04, DN) CheckAndRepair put messages to ErrorLogger.

IMP: (11/17/04, SMR) Mimic stitch is faster, and interactive mode lets you zoom/pan window.

BUG: (11/16/04, SMR) Cross-library copy does not update cell references properly.
FIX: In Cell.copyNodeProto() ignore existing cross-library references.

BUG: (11/16/04, RK) NCC: NCC crashes if A and B are in the same Cell group and A instantiates B.

IMP: (11/16/04, GVG) DRC: dates stored disabled (OUT)

BUG: (11/16/04, GVG) Rounding issue in Quick.lookForCrossPolygons()
FIX: round bounding box before looking for points. This fixes JonG's DRC notch error reported on 11/09/05 (90nm tech)

BUG: (11/16/04, GVG) MOSRules.getMaxSurround()didn't consider information about wide rules
FIX: condition added. Plus 100 is the new wide value for TSMC180nm

BUG: (11/16/04, DN) XSize and YSize of serpentine transistors are not properly calcualted.
FIX: getShapeOfNode and getShapeOfPort use getAnchorCenter instead of getTrueCenter
     In NodeInst use getShapeOfNode to calculate sizes of primitive with TRACE.

BUG: (11/16/04, SMR) Hierarchical display of wires is sometimes off by 1 pixel.
FIX: In EditWindow.databaseToScreen() use rounding for better accuracy.

IMP: (11/15/04, GVG) Network tool connected to 3D View

IMP: (11/15/04, GVG) Ability to save ErrorLogger for debugging purposes.

************************* Version 8.01ao: *********************************

IMP: (11/15/04, GVG) Prevent NullException in clearSetBit

BUG: (11/15/04, GVG) Rolling back changes to fix "BUG: (11/9/04, GVG) DRC and notch errors".

BUG: (11/15/04, GVG) Transistor poly layer was assigned to silicide block node (errors in TSMC180 and 90 techs).
FIX: Switched to silicide layer

BUG: (11/15/04, DN) GetInfoArc may cause error if ArcInst has not network on it.
FIX: In GetInfoArc check getNetworkName == null.

BUG: (11/15/04, DN) Arcs in ELIB from Electric C may not fit into port insts.
FIX: In ELIB and JELIB readers use poly.polyDistance(pnt) < 0.02 instead of poly.isInside(pnt).

BUG: (11/15/04, DN) Size of rotated primitives with polygon trace are not
    calculated, when ELIB is loaded.
FIX: Move scaleOutlineInformation(ni) before ni.lowLevelPopulate().

BUG: Deleting an export may delete the node.
FIX: Do not consider exports to be attached to nodes when deleting.

BUG: (11/14/04, RK) MoCMOS Gate generators were producing CIF resolution errors

IMP: (11/14/04, RK) Improve NCC size mismatch error messages

IMP: (11/14/04, SMR) Added LEF and DEF input.

BUG: (11/14/04, SMR) Verilog netlister breaks wide names.
FIX: In "Output.writeWidthLimited()", be more forgiving about splitting wide lines.

BUG: (11/13/04, RK) Reduce storage utilization of net equivalence feature

************************* Version 8.01an: *********************************

IMP: (11/12/04, GVG) LayerCoverageJob class moved to new misc directory to decouple code
otherwise its not easy to generate regressions.

IMP: (11/12/04, GVG) List Geometry on Network: fast algorithm in PolyQTree working now

FIX (11/12/04, JKG) Parasitic extraction of capacitance in the Spice netlister
    now works properly.

IMP (11/12/04, JKG) Added units to parasitic section of Spice Options Tab,
    added new option "Gate Length Subtraction".

IMP: (11/12/04, SMR) Resizing a node lets you make it smaller without jumping corners.

IMP (11/12/04, JKG) Added command Tool->Network->List Total Wire Lengths on All Networks

IMP (11/12/04, JKG) Added command Tool->Logical Effort->Back Annotate Wire Lengths

IMP: (11/12/04, SMR) Solid opaque layers no longer obscure text.

BUG: (11/12/04, SMR) Deleting an export may delete the node.
FIX: Do not consider exports to be attached to nodes when deleting.

IMP: (11/12/04, SMR) Long network names are truncated in the "Arc Properties" dialog.

BUG: (11/11/04, GVG) List Geometry on Network: fast algorithm in PolyQTree not working correctly while splitting the tree. 
Fix: put back the slow code

IMP: (11/11/04, RK) Undebugged implementation of NCC net equivalence reporting

BUG: (11/11/04, SMR) Exports on expanded cell instances are not always drawn.
FIX: In PixelDrawing.drawNode(), draw exports when instances are cached.

************************* Version 8.01am: *********************************

BUG: (11/11/04, SMR) Arraying crashes.
FIX: Array.setNewName() ignores temporary names; Name constructor uses TextUtils.atoi instead of Integer.parseInt.

BUG: (11/11/04, SMR) Mirroring is broken.
FIX: In "Layout.java", fixed computation of new mirroring values.

IMP: (11/10/04, SMR) Added compaction.

IMP: (11/10/04, SMR) Added initial regression tests for I/O.

IMP: (11/10/04, SMR) Added Job.flushBatch() to reset constraints in the middle of a job.

BUG: (11/11/04, GVG) MinArea DRC didn't detect errors in subcells if nodes were not part of exports
FIX: Collect those nodes and check at the end.

BUG: (11/11/04, RK) NCC crashes when a Cell has an Export and global with the same name.

BUG: (11/11/04, DN) Exception in JELIB reader when referenced library not found.
FIX: Check of null pointer in input.JELIB.realizeCellsRecursively .

BUG: (11/11/04, DN) TextUtils.nameSameNumeric may loop infinitely after my previous change.
FIX: Reimplement TextUtils.nameSameNumeric. It is case-sensitive. "nameSameNumeric(s1,s2) == 0" IFF "s1.equals(s2)".

IMP: (11/10/04, GVG) Scaling factor in 3D view.

IMP: (11/10/04, GVG) Removing one toggle in DRC tab

IMP: (11/10/04, DN) Sorting of objects in JELIB output for regression purposes.
     1) Order of Views : In "nameSameNumeric" order.
     2) Order of CellNames:
	Compare protoName in "nameSameNumeric" order;
	if equal compare views;
	if equal compare versions - implicit (without number) version first,
	   explicit (with number) versions in reverse order then; 
     3) Order of libraries, tools., technologies, primitiveNodes/Ports/Arcs - usual "String.compareTo"
     4) Order of Exports - "nameSameNumeric"
     5) Order of NodeInsts, ArcInsts
        Compare "nameSameNumeric"
	if equal compare indexes in Cell lists;
     6) Order of CellGroups
        "nameSameNumeric" on group names.

IMP: (11/10/04, DN) View is comparable. TextUtils.nameSameNumeric and TextUtils.atoi work with Unicode digits.

IMP: (11/10/04, DN) Better diagnostic in JELIB reader when point doesn't fit a port.

BUG: (11/10/04, RK) Make gate generator generate gates for every instance of a Cell (For Justin)

IMP: (11/9/04, GVG) Two new toggles in DRC tab to ignore hierarchical/poly-select conditions.

IMP: (11/9/04, GVG) LayoutLib.openLibForRead works with JELIB format. Terminate program if -batch option in EvalJavaBsh
                                                        
BUG: (11/9/04, GVG) DRC Min Area and select, disconnected nodes not considered.
FIX: Special treatment in visitNodeInst by using PrimitiveNode.containsSubstrateLayer()

BUG: (11/9/04, GVG) DRC and notch errors for arcs in same network. Modifications done under
maytouch/sameLayer inside checkDist were not correct (done back in Aug'04)
FIX: if (net1==net2) -> return false regardless notch distance

IMP: (11/9/04, SMR) Redid cross-library copy so that it is safe from looping.

IMP: (11/9/04, SMR) Closing a library ensures that it is saved to disk.

BUG: (11/9/04, SMR) Mimic stitching crashes.
FIX: Replaced array of cached Polygons with a more robust HashMap.

IMP: (11/9/04, GVG) Metal1 back from 1.4 -> 1.2

BUG: (11/9/04, DN) Can't read mixture of JELIB and ELIB files.
FIX: In JELIB reader use "realizeCellsRecursively" instead of "instantiateCellContents".

IMP: (11/9/04, DN) When library is read in batch mode it sets its meaning preferences.

IMP: (11/9/04, DN) Forbidden characters ':' and '|' in cell names.

BUG: (11/8/04, SMR) Upper-level text is not shown when editing "down in-place".
FIX: In "PixelDrawing.drawText()" compute clipping bounds properly.

IMP: (11/8/04, GVG) Default sizes for new arcs/nodes in TSMC90 now correctly stored and retrieved from preferences
(moved MoCMOS.init() to Technology.init())

IMP: (11/8/04, GVG) Avoid to run DRC on Artwork or in case technology doesn't have rules associated

************************* Version 8.01al: *********************************

BUG: (11/8/04, RK) Fill Generator script must now select technology

BUG: (11/8/04, GVG) Metal 1 pin didn't get correct offset after resizing (1.2 -> 1.4 done on 11/06/04)
FIX: Metal 1 min width rule: 1.2 -> 1.4 to keep code consistent

IMP: (11/8/04, GVG) Correct aligment of m2/m3, m4/m5, m6/m7, and m8/m9 for TSMC90

BUG: (11/8/04, SMR) Reloading waveform window fails if there are a different number of sweeps.
FIX: Reload sweeps list correctly.

IMP: (11/8/04, SMR) When interactively resizing a node, holding Control limits
     resize to a single axis.  Holding Shift switches to center-based sizing.

IMP: (11/8/04, SMR) Disallow moving the cell-center when other objects are moving.

BUG: (11/8/04, SMR) Cell names are not sorted properly (the views are not considered).
     Names do not line-up properly in cross-library copy dialog.
FIX: In TextUtils.CellsByName, use "noLibDescribe()" instead of "getName()".
     No longer need TextUtils.CellsByFullName.

IMP: (11/7/04, SMR) Added copy/paste topology (for routers).

IMP: (11/7/04, SMR) Cleaned-up outline-edit mode.

IMP: (11/5/04, SMR) Added EDIF input.

IMP: (11/6/04, GVG) New width for metal1 arcs. New well rectangular contact to avoid min area/width problems.
     New primitive nodes are available from Tech Palette via menu.

IMP: (11/5/04, GVG) Min area only for top cell because its hierarchically done.
BUG: (11/5/04, GVG) Fixing error introduced in 8.01ai and PolyBase.halfCropBox/PolyBase.cropBox.

BUG: (11/5/04, GVG) 3D bug for generic polyhedra (wrong indices for normal)

BUG: (11/5/04, RK) NCC crashed if all the Cells being compared had no Exports

************************* Version 8.01ak: *********************************

IMP: (11/5/04, DN) Version and CellName classes are mada Comparable.

BUG: (11/5/04, DN) If Undo occurs after first Copy command, the Clibboard cell becomes unlinked.
FIX: In User.init() call Clipboard.clear() to create the Clipboard cell.

BUG: (11/5/04, DN) When Undoing at start of Electric, a crash happens.
FIX: In Undo.undoABatch test batch.startHighlightsOffset on null.

IMP: (11/3/04, RK) Improve usability of Gate Layout Generator

IMP: (11/3/04, RK) Changes for NCC and Gate Layout Generator regressions

************************* Version 8.01aj: *********************************

IMP: (11/4/04, GVG) PolyBase: not applying transformation if matrix is identity

BUG: (11/4/04, GVG) Rouding points before merging in DRC min area calculation otherwise merged area
     won't be a simple polygon.
FIX: poly.roundPoints();

BUG: (11/4/04, GVG) DRC and PolySelect rule, ignoring case when remaining area after second substract was empty.
FIX: call Area.isEmpty()

IMP: (11/4/04, SMR) GDS output produces better cell names.

IMP: (11/4/04, SMR) "Click" sounds are only played if there is a sound card.

IMP: (11/3/04, SMR) CIF resolution errors now select the object.

IMP: (11/3/04, SMR) Removed unused listeners: ClickAndDragListener and WiringListener.

IMP: (11/3/04, GVG) Fix in network evaluation during hierarchical min area checking

IMP: (11/3/04, SMR) Printing resolution is now higher and can be set in the Preferences panel.

IMP: (11/3/04, GVG) Another algorithm for DRC TSMC90 PP/NP.R.1 rule

IMP: (11/3/04, GVG) Default technology in preferences. It will be used for setting palette. Manual updated.

BUG: (11/2/04, RK) Repair bugs from partial conversion of gate layout generators to tsmc90

IMP; (11/2/04, GVG) CO.S.1, VIAx.S.1 and VIAn.S.1 rules for vias (meta1 and actives cuts)

************************* Version 8.01ai: *********************************

BUG: (11/2/04, DN) Library.findNodeProto should find the newest
     version of the cell, when no version number is specified.
FIX: Add test to "Library.findNodeProto.

BUG: (11/2/04, DN) When view of a cell is changed from layout to
     schematic, its technology (and TechPallette) remains layout.
FIX: Clear technology in ViewChanges.ChangeCellView

BUG: (11/2/04, DN) When parsing routines will meet with non-Latin
     unicode digits, they may return strange numbers.
FIX: Use TextUtils.isDigit and TextUtils.isLetterOrDigit.

IMP: (11/2/04, DN) TextUtils.nameSameNumeric is made case-insensitive.

BUG: (11/2/04, GVG) Rounding errors in PolyBase.halfCropBox
FIX: Same wrapper operations as in PolyBase.cropBox.

IMP: (11/1/04, SMR) Added "click" sounds when wiring.

BUG: (11/1/04, SMR) Mirroring in Y does not work.
FIX: In NodeInst.lowLevelModify()", fixed "sX" that should have been "sY".

BUG: (11/1/04, SMR) Export text offset is wrong.
FIX: In Export.getNamePoly(), apply text offset before transformation of node;
     In ElectricObject.computeTextPoly(), use Export.getNamePoly();
     In TextInfoPanel, show true offsets.

IMP: (11/1/04, DN) Coordinates and sizes of ArcInst and NodeInst are
    rounded to DBMath.GRID when loaded from libraries. Comparison
    functions from DBMath consider neighbour grid points as equal.

IMP: (11/1/04, DN) Cells in JELIB are sorted by (name,view,version)
      for easier text comparison of JELIB files.

BUG: (11/1/04, DN) Arc ends are swapped when loading from ReadableDump.
FIX: (11/1/04, DN) In input.ReadableDump.realizeArcs.

BUG: (11/1/04, DN) Export characteristic is not loaded from ReadableDump.
FIX: Restore "userBits" after "lowLevelPopulate" in input.ReadableDump.realizeExports.

BUG: (11/1/04, DN) Variables names with ":" and "[" are corrupted in RedableDump.
FIX: Add "^" before ":" in output.ReadableDump.printName. Change
     "indexOf" to "lastIndexOf" in input.ReadableDump.keyboardGetVar

BUG: (11/1/04, DN) Name of NodeInsts and ArcInsts are not stored to ReadableDump
FIX: Add printName(...) to output.ReadableDumpwriteVars.

BUG: (11/1/04, DN) ProtoTextDescriptor of NodeInsts is not properly
     stored to ReadableDump.
FIX: In output.ReadableDump.writeTheLibrary.

BUG: (11/1/04, DN) Library variables are not loaded from JELIB.
FIX: In input.JELIB load variables.

BUG: (11/1/04, DN) Offset information in TextDescriptors are not
     always properly restored from JELIB files.
FIX: In TextDescriptor do rounding more carefully. In input.JELIB set
     both coordinates simultaneously.

BUG: (11/1/04, DN) Mirror state of NodeInsts with zero size may be lost.
FIX: Distinguish between -0 and +0 in NodeInst.isMirrored methods.

************************* Version 8.01ah: *********************************

IMP: (10/29/04, RK) Add hook for running Layout generator for MOCMOS or tsmc90

BUG: (10/29/04, RK) NCC Flat top cell must be prepared for null VarContext

IMP (10/29/04, GVG) Batch option. Ability to run JElectric on batch mode (-batch).

IMP (10/29/04, JKG) Open file dialog opens ELIB and JELIBS, removed ELIBS
    from import/export, Added command under File to save all libraries as a
    different format (ELIB or JELIB).

BUG: (10/29/04, DN) Network tool when there layout instances in schematic cell.
FIX: In NetSchem.internalConnection netCell added to reference subcell.

************************* Version 8.01ag: *********************************

BUG: (10/29/04, DN) Network tool and user tool doesn't feel rename of Exports and Cells.
FIX: Add parameter "oldVersion" to "renameObject" methods of these tools.

BUG: (10/29/04, DN) Ncc regression fails, because Network tool doesn't ignore
  resistors properly.
FIX: Netlist.getNetlist(Nodable) returns sublist with "shortResistors" from parent
     netlist instead of user preferences. Removed "getUserNetlist" calls from Hierarchy
     enumerator.

IMP: (10/28/04, SMR) Double-clicking on a sweep signal toggles its inclusion/exclusion.

IMP: (10/28/04, GVG) Bug fix in hierarchical checking for minArea

IMP: (10/28/04, SMR) Renaming a cell such that it is the same as an existing one makes it a new version.

************************* Version 8.01af: *********************************

IMP: (10/28/04, SMR) Added SUE input.

BUG: (10/28/04, SMR) Rotated text is not read back from JELIB files.
FIX: Rotation amounts are now set properly.

IMP: (10/28/04, SMR) When a cell is renamed and it appears to fall into an existing cell group,
     the user is asked if it should also be re-grouped.

IMP: (10/28/04, SMR) In-place text editing can now handle multi-line parameters.

BUG: (10/27/04, SMR) Variables on cell instances are not offset properly.
FIX: Use untransformed node bounds when computing text location.

BUG: (10/28/04, DN) IgnoreResitors option connects incorrectly.
FIX: In NetSchem.internalConnections replace "drawn" by "drawnOffsets[drawn]"

IMP: (10/27/04, GVG) New scheme in TechPalette, Schematic. Extra text in well contacts.

BUG: (10/27/04, SMR) Pasting primitives does not adjust sizes right (shifts their positions instead).
FIX: In "Clipboard.pasteNodeToNode()" fixed this.

BUG: (10/27/04, SMR) Sweeps in Spice are time-aligned with each other, which is wrong.
FIX: Each sweep can now have its own time values.

************************* Version 8.01ae: *********************************

FIX: (10/27/04, JKG) Added code in LibraryFiles.readExternalLibraryFromFilename to handle
     references to other library formats.

IMP: (10/27/04, JKG) Added File->Export->ELIB (version 7) All libraries command.

BUG: (10/27/04, GVG) Miscellaneous: another attempt to remove out of bound exception and fix the group naming
     (it was removing last character due to <= condition) Removing TSMC90 PP/NP.S.7 rule in DRC.

BUG: (10/26/04, SMR) Moving a cell to a different cell group fails if there are multiple versions.
FIX: In "Cell.setCellGroup()", move all versions at once.

IMP: (10/26/04, GVG) TSMC90nm and detecting overlap between select regions. Better detection of min area for select
     regions. In case of Area errors, ErrorHighlight is valid if pp != null || geom != null otherwise area errors are not
     removed by databaseEndChangeBatch.

BUG: (10/26/04, GVG) Again patching Cell.getName() to avoid StringIndexOutOfBoundsException.

BUG: (10/26/04, GVG) Coverage implant: wrong detection of substrate primitive nodes
FIX: NodeInst.isPrimtiveSubstrateNode added

************************* Version 8.01ad: *********************************

BUG: (10/25/04, GVG) JELIB$GroupsByName.compare, Cell$CellGroup.getName crashed if cell names don't have same length
FIX: Fix put on Oct 22 was not good enough

IMP: (10/25/04, GVG) Adding PP.A.A in TSMC90 (Area rule for P+ regions).

BUG: (10/25/04, DN) Network tool didn't recompute icon after removal of export.
FIX: "NetCell.exportsChanged" corrected.

BUG: (10/25/04, DN) Memory leakage in JELIB reader.
FIX: Assign null tp "input.JELIB.allCells" at the end of reading.

BUG: (10/25/04, DN) "CrossLibCopy" dialog may crash when no cell celected.
FIX: "Library.findNodeProto" tests if argument is null.

BUG: (10/25/04, DN) Network errors after moving a cell into another group.
FIX: Add method "modifyCellGroup" to interface "database.changes.Change".

IMP: (10/25/04, DN) Explorer context menu allows only newest versions of schematic cells to be
     main schematics.

IMP: (10/25/04, SMR) Added "BiCMOS" technology.

BUG: (10/24/04, SMR) JELIB files fail if there is a library with the same name as a technology.
FIX: In JELIB, node instances now distinguish between primitive and cell instance by using "N" and "I".

IMP: (10/24/04, SMR) Added "EFIDO" (digital filter) technology.

IMP: (10/24/04, SMR) Added "GDS" input.

BUG: (10/24/04, SMR) Changing an icon size does not affect the "example" instance in the schematic.
FIX: In "database.constraint.Layout.lookDown()", do not ignore example icons.

IMP: (10/23/04, GVG) Cleaning TechPalette and putting in default position last PrimitiveNode selected

************************* Version 8.01ac: *********************************

BUG: (10/22/04, GVG) Out of bound in Cell.getName() as cell names don't have same length
FIX: Skip cases where names don't have same length

IMP: (10/22/04, GVG) Proper set of ErrorLog for Schematic DRC.

IMP: (10/22/04, GVG) Cross-shaped contacts are default in TechPalette. For PrimitiveNode, default node
     (e.g. cross-shaped contact or standard transistor) would be created unless you click on arrow.
     Sizing of cross-shaped contacts based on cross section.

IMP: (10/22/04, DN) Network calculation is always performed in change thread.
     GUI thread can either "getUserNetlist" and wait until it is ready, or
     "acquireUserNetlist" and obtain "null" if it is not ready.

IMP: (10/22/04, SMR) Improved speed of arraying and re-exporting by improving speed of
     finding a unique name in a cell.

IMP: (10/21/04, SMR) Array no longer sets names when they are only temporary.

************************* Version 8.01ab: *********************************

BUG: (10/21/04, GVG) DRC and cropping. After removing rounding in calcBound, cropping function
     was not working properly in DRC.
FIX: DBMath.isGreaterThan instead of "<=".

IMP: (10/21/04, SMR) JELIB reader checks that cells with the same name are in the same group.

IMP: (10/21/04, SMR) Made cell groups have sensible names so that it is easier to rearrange them.

IMP: (10/21/04, SMR) Closed bugs in JELIB format: handles "(" in variable names;
     handles newline in strings.

IMP: (10/21/04, SMR) Deleting a library (or re-reading it) checks to make sure that
     none of the former library has cells that are in use elsewhere.

IMP: (10/21/04, SMR) Selecting a signal in the schematic shows all equivalents in the waveform window.

IMP: (10/21/04, GVG) Cross-shaped contacts in TSMC90 including multiple cuts.

IMP: (10/21/04, SMR) Added "CIF" input.

IMP: (10/20/04, DN) Deprectated those variables on Technology, Tool,
     View, PrimitiveNode/Arc/Part objects which are not meaningful preferences.

IMP: (10/20/04, SMR) Now preserving the "main schematic" for a cell group.
     Also saving and restoring it through "jelib" files.
     Explorer tree has command for setting "main schematic".

************************* Version 8.01aa: *********************************

IMP: (10/20/04, GVG) Moving rounding operation from PolyBase.calcBound to ELIB.getArcEnd.
     Modifications in build.xml (new options: -Dplugin3D -DGNU -Dsource)

BUG: (10/19/04, GVG) Library Read errors give null exception.
FIX: Test if highlighter != null in ErrorLogger

IMP: (10/19/04, GVG) StringBuffer instead of String for loops (findBugs source).

************************* Version 8.01z: *********************************

BUG: (10/19/04, SMR) JELIB input creates extra exports in icons.
FIX: When JELIB input creates an export, disallow creation of associated icon export.

BUG: (10/19/04, SMR) Cannot place cell instances.
FIX: In "PaletteFrame.java", allow all NodeProto placements, not just PrimitiveNode.

************************* Version 8.01y: *********************************

BUG: (10/18/04, GVG) Rounding error in DRC min width checking
FIX: DBMath.isGreater() function added to consolidate comparison and rounding operations

IMP: (10/18/04, GVG) Parasitic tab skeleton in Preferences. Corresponding html/png files were added for manual.
     All tools-related figures were redone.

IMP: (10/18/04, GVG) New look&feel of WellCheck dialog (documentation changed).
     3DView: Ability to turn on/off antialiasing without closing 3D window.
     Changes in diffuse, specular and ambient colors. Parasitic: arc cropping added.
     Code optimization in DBMath.round and DBMath.pointInRect. Code cleaning in Constraint.Layout.
     Job.checkExamine() disabled.

IMP: (10/18/04, SMR) Specifying libraries on the command line handles both ELIB and JELIB format.

BUG: (10/18/04, SMR) JELIB input damages quoted strings.
FIX: Fixed input module (so JELIB files are fine, reader was bad).

************************* Version 8.01x: *********************************

IMP: (10/15/04, SMR) Spice plotting allows partial files.

IMP: (10/15/04, SMR) Waveform window handles "Fill Window" properly.

IMP: (10/15/04, SMR) Waveform window can highlight individual sweeps.

BUG: (10/14/04, SMR) Spice output gets confuses when a single-wire export connects to one member of a bus export.
FIX: In "Topology.doGetNetworks()" sort networks by bus width as they are accumulated, not later.
     Changed Spice output to favor export names (isNetworksUseExportedNames).

IMP: (10/13/04, SMR) Added maze routing.

IMP: (10/12/04, SMR) A holdover from "C Electric" is the "temporary object".  It is unsafe and wastes memory.
     Its use has been replaced with HashMaps, and it has been removed from Geometric, ArcProto, and Cell.

IMP: (10/12/04, SMR) Added unrouting.

IMP: (10/11/04, SMR) Added river routing.

BUG: (10/11/04, DN) Networks of isolated ports have no names.
FIX: Add names "node.port".

IMP: (10/10/04, SMR) Added Messages Window font selection.

IMP: (10/9/04, SMR) Added technology conversion ("View / Make Alternate Layout View").

IMP: (10/7/04, SMR) Added Explorer-pane context menu item on cell groups to rename the entire group.

BUG: (10/6/04, SMR) Arc negation is lost during many operations (copy/paste, cross-library copy, insert jog in arc).
FIX: Must reset this information.

IMP: (10/6/04, SMR) Added "EDIF" output.

IMP: (10/5/04, GVG) 3DView: Ability to turn on/off antialiasing without closing 3D window. Changes in diffuse, specular
     and ambient colors. Parasitic: arc cropping added.

IMP: (10/4/04, GVG) First basic coding for parasitic extraction (Package tool/parasitic added).

IMP: (10/2/04, SMR) Added "LEF" and "DXF" output.

IMP: (10/2/04, SMR) Added "MOSSIM" netlisting.

IMP: (10/2/04, SMR) Added "L" output.

IMP: (10/1/04, GVG) badSubBox: Cell parameter out. PolyBase.calcBound: out rounding.

IMP: (10/1/04, SMR) Added "ESIM/RSIM/RNL/COSMOS" netlisting.

IMP: (10/1/04, SMR) Added "FastHenry" netlisting, Preferences panel, and arc properties.

IMP: (9/30/04, GVG) ArcProto preferences moved to ERC package so no circular dependencies (de-coupling action).
Profiling DRC: Arrays.fill instead of iterator.

IMP: (9/29/04, SMR) Added "Skill" netlisting and a "Skill" panel in Preferences.

IMP: (9/28/04, GVG) 3D view: object highlight and connection with 2D view in both directions.
Click.wav to resources folder.

IMP: (9/28/04, SMR) Added "Tegas" netlisting.

IMP: (9/27/04, GVG) ERC profiling: removal of 3 fields in WellArea/WellCon (15% reduction in WellArea, 20% in WellCon).
Poly classs splitted: new PolyBase classs should be used if only geometrical information is required. Poly class contains
text attributes that are not required in some cases (ERC, DRC, LayerCoverage, etc). Developers should know when to switch
from heavy class Poly to light class PolyBase.

IMP: (9/25/04, GVG) Adding ambiental light to 3D view. Antialiasing option added and
manual was updated.

BUG: (9/24/04, GVG) Geometries on Network: arcs were not transformed up to the top cell and adding export detection.

IMP: (9/24/04, SMR) Added Silos netlisting.

BUG: (9/24/04, SMR) Cell names are sorted incorrectly.
FIX: In TextUtils.nameSameNumeric(), make sure numbers are evaluated in base 10.

BUG: (9/24/04, DN) Reading libraries from script and from menu is different.
FIX: Change control of circular library dependences in Cell.addNode

FIX: (9/23/04, GVG) Minor fixes for 3D view: Avoid exception if highlighter is null (3D view), new depth value for
active cut, drawing physical layers

IMP: (9/23/04, GVG) Improvements in scheduled aborts in ERC.

IMP: (9/23/04, SMR) PostScript output includes cell frames.

FIX: (9/23/04, GVG) ERC fix to properly detect polygons with multiple loops inside.
     This error could be seen in qfour2:pads180nm_100um:pad_part_flwout{lay}.

IMP: (9/23/04, GVG) Tuning of ERC sequence of steps. Results: ERC on pad2core:fillpads_all{lay} runs in 5 mins
compared to more than 1hr (42793 areas and 38350 contact regions checked)

************************* Version 8.01w: *********************************

IMP: (9/23/04, SMR) PostScript output improved.

IMP: (9/22/04, SMR) Waveform window has button to show vertex points.

IMP: (9/22/04, SMR) Added "bipolar" and "pcb" technologies.

IMP: (9/22/04, SMR) Added ability to show sweeps and intervals to waveform window.

IMP: (9/21/04, SMR) Added "Make Schematic" to convert layout to schematics.

IMP: (9/22/04, GVG) Refactoring NodeInst/ArcInst makeInstance/newInstance methods.
     From now on, short/long definitions are available

IMP: (9/22/04, GVG) CrossLib dialog and scrollbars. Added syncronizer to keep 3 scrollbars aligned.

IMP (9/21/04, RK) Performance tuning flat NCC algorithm. I replaced StratFrontier with LeafEquivRecord which is much more efficient.
     Flat NCC of top cell of qFourP2 without size checking has dropped from 16 minutes to 2.8 minutes.
     With size checking has dropped from 22 minutes to 8 minutes.

************************* Version 8.01v: *********************************

FIX (9/21/04, JKG+GVG) Fix for checking export type on ERC well network.
     Don't check if well networks are not connected together; NCC will check that

IMP: (9/21/04, SMR) Added "Down Hierarchy In Place".

BUG: (9/21/04, SMR) Verilog netlister doesn't handle doubly-indexed busses where the first index is non-numeric.
FIX: In Topology.doGetNetworks() must find any numeric index to determine ascending/descending order.

IMP: (9/20/04, SMR) HSpice output reader now handles noise signals properly.

IMP: (9/20/04, SMR) Made messages window use fixed-width font.

************************* Version 8.01u: *********************************

BUG: (9/20/04, GVG) DRC and minimum area checking: no merging correctly poly and transistor-poly areas
     while checking areas. FIX: Consider this case as exception and the first polysilicon layer found will be used.

IMP: (9/20/04, GVG) Ability to abort ERC and DRC jobs

BUG: (9/20/04, GVG) ERC not properly detecting well contacts not connected to ground/power.
FIX: Iterate over Export in JNetwork and check if isGround() or isPower(). Even if contacts are not
     explicitly connected, it won't complain if network has export gnd/power

IMP: (9/19/04, SMR) Serpentine transistors now know port information.

BUG: (9/19/04, SMR) Verilog output still gets busses wrong.
FIX: In Verilog.writeCellTopology(), must find proper signal in aggregate list.

************************* Version 8.01t: *********************************

IMP: (9/19/04, RK) Implement Variable Value caching and simple expression evaluation in VarContext.
     These two bypass 80% of the bean shell calls

IMP: (9/19/04, RK) Allow the user to enable more detailed progress reports.

BUG: (9/19/04, RK) For AnnC. Hierarchical NCC from two windows didn't compare the two root cells.

IMP: (9/18/04, SMR) HSpice waveform reader checks binary data for EOF.

BUG: (9/18/04, SMR) Verilog output still gets descending busses wrong.
FIX: In Verilog.writeCellTopology(), must take original bus size into account.

************************* Version 8.01s: *********************************

FIX: (9/18/04, JKG) Fixed waveform window cross-probing and cross-highlighting
     of exported networks

FIX: (9/18/04, SMR) Fix for verilog netlisting of busses

IMP: (9/17/04, GVG) New active size for new technology. All transistors affected.

************************* Version 8.01r: *********************************

FIX: (9/17/04, GVG) DRC fix related to Well regions not connected and serpentine transistors.

IMP: (9/17/04, GVG) Improvements to speed up incremental DRC.

IMP: (9/17/04, JKG) new command "Tool -> Logical Effort -> Clear LE Sizes in all Libraries"

************************* Version 8.01q: *********************************

IMP: (9/17/04, SMR) Dialogs remember their last size; "change" dialog grows sensibly.

FIX: (9/16/04, JKG) Can now set Serpentine transistor length from GetInfoNode dialog

BUG: (9/16/04, SMR) Arcs that run from a node to itself are not constrained right.
FIX: Disallow such arcs from moving more than once.

BUG: (9/16/04, SMR) Verilog output gets descending busses wrong.
FIX: In Verilog.writeCellTopology(), must load descending busses backwards.

IMP: (9/16/04, SMR) Serpentine transistor width is better supported.

BUG: (9/16/04, SMR) "Change" dialog cannot switch libraries.
FIX: Allow automatic library switching only when new objects are selected.

************************* Version 8.01p: *********************************

BUG: (9/16/04, JKG) Fix to change dialog: library pull-down menu was useless.

BUG: (9/16/04, JKG) Hack to get transistor width/length of serpentine transistors.
     Length is always 2.

BUG: (9/16/04, JKG) Fixed LE algorithm with caching

BUG: (9/16/04, GVG) Wrong transformation sequence introduced when cells are mirrored.

BUG: (9/16/04, GVG) Fix in geometry on network: wrong network selected

IMP: (9/15/04, GVG) Check box in DRC Tab to disable area checking.

IMP: (9/15/04, GVG) Improvement in List Geometry on Network

IMP: (9/15/04, GVG) Adding option to disconnect DRC area checking. Manual
     updated on 9/16/04

************************* Version 8.01o: *********************************

BUG: (9/15/04, JKG) Fixed changing transistor sizes/mirror etc from GetInfo dialog

IMP: (9/15/04, JKG) Add Tool -> Logical Effort -> Clear LE Sizes on node
     to delete LE sizes on a node.

IMP: (9/15/04, SMR) "Change" dialog always goes to currently selected cell, even
     if it is in a different library.

IMP: (9/15/04, SMR) Reading HSpice output now handles "x" in names better.

IMP: (9/15/04, SMR) When changes are disallowed, "Cancel" option is offered.

BUG: (9/15/04, SMR) Export names STILL don't array in the right order.
FIX: ExportChanges.reExportPorts must take a map to the original Exports, not a List.

BUG: (9/15/04, SMR) Copying and pasting cell text doesn't work.
FIX: Clipboard updated to handle Highlights instead of Geometrics.

IMP: (9/15/04, SMR) "Text Properties" dialog on cell instance names doesn't allow changes.

IMP: (9/15/04, JKG) Added "File->Force Quit (and Save) " to kill Electric

IMP: (9/14/04, SMR) Can now print waveform windows.

IMP: (9/14/04, SMR) Added "Eagle", "Pads", and "ECAD" netlist output.

************************* Version 8.01n: *********************************

BUG (9/14/04, RK) NCC assertion fails when designs being compared share a cell.

BUG: (9/14/04, RK) NCC doesn't print Cell version number.

BUG: (9/13/04, SMR) Spice output gets indexed names wrong.
FIX: In tool.io.output.Spice, do not use aggregated names (an interface option in tool.io.output.Topology).

IMP: (9/13/04, GVG) DRC will highligh Geometric instead of Poly whenenver is possible

BUG: (9/13/04, SMR) Extracting cells doesn't handle mirroring right.
FIX: In CircuitChanges.extractOneNode(), adjust for mirroring.

IMP: (9/13/04, SMR) Made default explorer panel wider.

IMP: (9/13/04, SMR) Improved the color mixing model to use vector addition and normalization.

IMP: (9/13/04, SMR) Improved placement of icon ports when new schematic exports are created.

BUG: (9/10/04, GVG) CrossLibCopy: not comparing attributes and wrong comparison for Exports
FIX: Extra code in Cell, NodeInst, PortInst, PortProto and Variable.

IMP: (9/10/04, GVG) New look@feel in CrossLibCopy dialog. Center column will display date comparison.
     Two extra toggles were created to handle quiet mode and "date and content" comparison. Buttons "List Diff" and "Examine
     Quietly" were removed

BUG: (9/10/04, GVG) Technology bits not being copied in TechPalette for transistors in Schematics.
     Side effect: wrong name assigned. FIX: NodeInst.newInstance passes also techBits.

BUG: (9/10/04, GVG) Zero-width arcs didn't get correct angle while copying them.
FIX: ArcInst.newInstance passes def value for angles in case port points coincide

IMP: ErrorLog handles warning messages. Red dot icon when it is an error and yellow one when its just a warning

IMP: (9/10/04, SMR) In-line text editing starts the text selected.

IMP: (9/10/04, SMR) Creation of multiple cell-center nodes is disallowed.

BUG: (9/10/04, SMR) When instances in a cell are locked, moving more than one object
     erroneously invokes the locked-warning dialog.
FIX: In CircuitChanges.ManyMove.doIt() only check nodes that moved, not all in the cell.

IMP (9/10/04, RK) Allow user to control number of items printed in the error diagnostics.

IMP (9/10/04, RK) Reworked the NCC commands. The operation is now selected by the NCC preferences pane while the number of windows is selected by the menu.

BUG: (9/10/04, SMR) Arraying arcs doesn't copy their constraining properties.
FIX: Array code calls "copyPropertiesFrom()".

IMP: (9/10/04, SMR) Added David Harris's ROM generator.

IMP: (9/9/04, GVG) DRC Adding warning messages when zero width arcs are detected (covered or non-covered by other layers).

BUG: (9/9/04, RK) NCC Memory usage optimization. On small test case: LoCo fourMemories NCC uses 1/3 of the memory. Hierarchical comparison of LoCo is now 3x faster with these optimizations.

BUG: (9/9/04, SMR) Area-erase doesn't work in schematics.
FIX: Better choice of nodes to delete.

IMP: (9/9/04, SMR) HSpice output reader now handles binary files with bytes swapped.

BUG: (9/9/04, JKG) CIF output of "Boxes" could have center coords off minimum CIF grid, causing
     Boxes to shift when CIF was read back in.
FIX: If "Boxes" have center off-grid, they are written out as Polygons.

IMP: (9/9/04, GVG) Main: not attempt to read set of libraries if set is empty. Side effect: avoid unnecessary endBatch call

IMP: (9/9/04, GVG) ErrorLogger: For a given sortKey, sort messages lexicographically

IMP: (9/9/04, GVG) Clipboard: No DRC on hidden libraries.

BUG: (9/9/04, RK) NCC: bug fix for Tarik, Fix Hierarchical NCC from 2 windows

************************* Version 8.01m: *********************************

BUG: (9/9/04), GVG) ERC: Wrong detection of polygons with holes and therefore it complained about "areas too close"
FIX: Extra loop in GeometryHandler.getObjects() to retrieve polygons with holes and then later process them.

BUG: (9/9/04), GVG) ERC: Wrong transformation applied to subMerge areas and therefore ERC wrongly calculated areas with no contacts
FIX: ni.TranslateOut(trans) instead of ni.translateOut() + concatenate

IMP: (9/9/04, GVG) DRC: Better message for cases where exclusion areas don't apply

IMP: (9/9/04, GVG) ERC: Better used of Hierarchical enumerator (functionality moved to visitNodeInst

IMP: (9/3/04, RK) Allow Hierarchical NCC from 2 windows

IMP: (9/8/04, SMR) Waveform window lets you cross-probe at lower levels of hierarchy.

IMP: (9/8/04, SMR) Can now add signals multiple times to the waveform window.

IMP: (9/8/04, JKG) Added cancel button to Change CellGroup dialog

BUG: (9/8/04, JKG) Window focus problems in MDI mode
FIX: moved show() calls out of Job threads and into AWT Event thread.

FIX: (9/8/04, JKG) Fixes to logical effort algorithms: mfactors on uncached
     alg, cap values on both algs, made compatible with diffn/diffp of old style gates

FIX: (9/8/04, JKG) CellGroup changes now in Undo system; explorer tree
     redraws on change; cell group dialog sorts groups list

IMP: (9/7/04, SMR) Now save the current cell in the Preferences.

BUG: (9/7/04, SMR) Cell extraction may create duplicate temporary names.
FIX: In CircuitChanges.extractOneNode(), do not use existing name: use either null
     or a unique name.

************************* Version 8.01l: *********************************

IMP: (9/3/04, SMR) Added ".jelib" reader and writer.

BUG: (9/3/04, SMR) Rotating or mirroring may distort layout.
FIX: The constraint system in Layout.java records two types of changes to
     a node: a size or a position change.  Size changes were somehow considered
     less important.  There was inconsistent use of this information, causing trouble.
     By removing the distinction, the code works correctly.

IMP: (9/2/04, SMR) Small text is now drawn "greek" and is selectable.

BUG: (9/2/04, SMR) Port text is not the right size.
FIX: In PixelDrawing.showCellPorts(), use size from the actual Export.

IMP: (9/2/04, GVG) Better handling of collections of simple polygons and rings for
enclosure area checking.

BUG: (9/2/04, GVG) Clipboard crashes if list in copyListToCell contains Exports
FIX: Temporary fix to avoid the exception, non-Geometric objects are ignored.

IMP: (9/2/04, SMR) Removed printer choice from "Printing" tab of "Preferences".

BUG: (9/1/04, GVG) Artwork arcs don't have network associated then modification in StatusBar crashes
FIX: Get Network information only when network is not null.

BUG: (9/1/04, SMR) Changes to the number-of-degrees of a circle don't update the node bounds.
FIX: Added ElectricObject.checkPossibleVariableEffects()" and an override in NodeInst.

BUG: (9/1/04, SMR) Thick lines may cause crashes.
FIX: In PixelDrawing.drawThickPoint(), test X and Y indices properly.

BUG: (9/1/04, SMR) Printing crashes if no printers are defined.
FIX: Check for valid default printer in "IOTool.getCachePrinterName()".

BUG: (8/31/04, SMR) Changing the case of an export (in Export/Rename) doesn't work.
FIX: In Export.rename(), allow case-changes without thinking that it is an existing export.

BUG: (8/31/04, SMR) Waveform window crashes when "Down Hierarchy" or "Up Hierachy" commands are used.
FIX: Ignore these commands: they don't apply to the waveform window.

IMP: (8/31/04, JKG) "Optimize Gates for Equal Delay With Caching" new menu item,
    eventually old command will be removed.  In Tool->Logical Effort

IMP: (8/31/04, JKG) "Repeat Last Command" in Edit menu.

IMP: (8/30/04, GVG) New transistors in TSMC90. Changes in TechPalette to select them.

IMP: (8/30/04, RK) Transistor size checking.

BUG: (8/30/04, SMR) Crashes when the last waveform panel is deleted.
FIX: Only select a panel if there are any.

BUG: (8/30/04, SMR) "Cross-library copy" doesn't copy subcells if they are not in the original library.
FIX: In "CircuitChanges.copyRecursively()" do not skip cells that are in the wrong library.

BUG: (8/30/04, SMR) "Array" places exports out of order if nodes are named out of order.
FIX: In "Array.java" sort the export names.

IMP: (08/30/04, GVG) Refactoring DRC code. Decoupling Technology from DRC

IMP: (08/26/04, GVG) Hierarchical minimum area and enclosed area available in DRC.

BUG: (8/26/04, DN) Network tool keeps global nets after deleting global and power symbols.
FIX: Don't traverse self icon when gathering globals.

************************* Version 8.01k: *********************************

IMP: (8/29/04, SMR) Added "rcmos" technology (round rules).

BUG: (8/27/04, SMR) Newly placed cell-centers are made "easy to select".
FIX: "cell center" and "essential bounds" made hard-to-select in PaletteFrame.PlaceNewNode.doIt().

IMP: (8/25/04, SMR) In-line text editing works for multi-line text.

BUG: (8/25/04, JKG) Automatic reinheritance of default parameters inside getVar() was a
    bad idea. Call ElectricObject.getParameter() or ElectricObject.getParameters() if you
    want the returned variables to include default parameter variables.

IMP: (8/25/04, JKG) Added File Menu -> Page Setup... command

BUG: (8/25//04, GVG) MoCMOS wrong min spacing for active in different implants (Same problem in C-Electric)
FIX: 4 instead of 3

IMP: for a given pair, DRC only reports errors once.

IMP: (8/25/04, SMR) "Array" dialog allows negative array amounts to create
     arrays in the other direction.

BUG: (8/24/04, SMR) Verilog output sometimes writes 2 connections for a transistor instead of 3.
FIX: Do not remove ports that are electrically connected.

BUG: (8/24/04, SMR) Verilog output scrambles bus signals, failing to aggregate them properly.
FIX: In "tool.io.output.Topology.doGetNetworks()" assigned export names properly.

IMP: (8/24/04, SMR) Verilog output now prepends library name to all module names.

************************* Version 8.01j: *********************************

BUG: (8/24/04, GVG) MoCMOS via4 spacing rule was found as wide rule. NOTE: Also found in C-Electric
FIX: Transformed into standard spacing rule

BUG: (8/23/04, GVG) DRC and wide rules in MoCMOS not properly translated to new data structure
     (Metal2-Metal3 wide distance setup calling wrong constructor)
FIX: Adding missing argument (WIDELIMIT)

IMP: (8/22/04, JKG) Added mouse-over highlighter. To disable if necessary, set
     ClickZoomWireListener.useMouseOverHighlighter to false.
     Controlled with "Selection" and "Color" tabs of Preferences.

BUG: (8/22/04, JKG) From Justin: double clicking in library explorer
     changes cell in another window
FIX: Current window frame was not strictly deterministic
     with respect to window focus. Instead of setting the current window
     frame, request focus, which will in turn set the current window frame.

IMP: (8/22/04, JKG) Created ActivityLogger to log user's activities. Also
     added EventProcesser to catch Swing exceptions. Hopefully all user
     actions and exceptions can be logged and analyzed later.

FIX: (8/22/04, JKG) fixes to some GUI classes to try to make them Swing-thread safer

BUG: (8/22/04, GVG) ERC reporting wrong floating well contacts (Justin reported).
FIX: Non-connected contacts get netNum = -1 in Java

BUG: (8/22/04, SMR) "Cleanup Pins" doesn't get two inline pins in a row.
FIX: Made inline pin cleanup iterative to keep finding more.

IMP: (8/22/04, SMR) Added context menu in Messages Window to cut/copy/paste its contents.

IMP: (8/22/04, SMR) Added "View / Make Skeleton View".

IMP: (8/21/04, SMR) "Array" now places objects in proper name order.

IMP: (8/21/04, SMR) "Change" dialog centers the selected item better.
     (implemented EDialog.centerSelection).

IMP: (8/21/04, SMR) Text can now be colored.

BUG: (8/21/04, SMR) Re-exporting creates duplicate exports.
FIX: In "tool.user.menus.ExportChanges.reExportNodes()" check for existing exports.

IMP: (8/21/04, SMR) "Change" dialog is now modeless.

BUG: (8/20/04, SMR) Text anchor does not rotate properly when nodes are mirrored.
FIX: Fixed database.geometry.Poly.rotateType().

BUG: (8/20/04, SMR) Node "Properties" dialog doesn't update size properly when mirrored.
FIX: Fixed to remember proper original size.

************************* Version 8.01i: *********************************

IMP: (8/19/04, JKG) new command line options: -mdi (force MDI mode) and
    -sdi (force SDI mode). -m no longer works.

BUG: (8/19/04, GVG)In DRC, wrong condition for wide wire rule (<= instead of <)
FIX: Change <= by <

IMP: -version and -help as command options

FIX: (8/19/04, GVG): Rounding error while creating a new Poly (width/height were not rounded). It was observed in new tech only.
IMP: (8/19/04, GVG): More area rules (DO.A.1)
MAN: (8/19/04, GVG): -m out? if yes, check documentation.

************************* Version 8.01h: *********************************

FIX/IMP: (8/19/04, RK) NCC check's assertions: exportsConnectedByParent. It turns out that assertion checking is needed to avoid a bug in netlist construction.

BUG: (8/18/04, SMR) DRC crashes when run on icons.
FIX: Use Schematic DRC for Icons, not layout DRC.

BUG: (8/18/04, SMR) Artwork arcs are fixed-angle by default.
FIX: In "technology.technologies.Artwork", made all arcs not-fixed-angle.

BUG: (8/18/04, SMR) Reading ELIB files with cell-centers that are not at the origin places geometry badly.
FIX: In "tool.io.input.ELIB.realizeNode()" must offset the anchor values by (xoff,yoff).

BUG: (8/18/04, SMR) "Show Ports On Node" and "Show Exports" display incorrectly when zoomed in.
FIX: Determines visible ports before arranging them on the display.

BUG: (8/18/04, SMR) "Size" on nodes doesn't work right for mirrored nodes; should not be center-based.
FIX: Size now works from farthest corner (unless Control is held).

FIX/IMP: (8/18/04, JKG) copy/paste fixes: default paste by center point,
    can move anchor point, shows delta from copy to paste. Right click menu added when pasting.

IMP (8/18/04, GVG): Extra sizing rules for metals (another level) and area

************************* Version 8.01g: *********************************

FIX: (8/17/04, RK) exportsConnectedByParent works on "implicit" expots created for global signals

IMP: (8/17/04, GVG) More rules for new technology. Important changes in DRC code so previous version was tagged as version-8-01g just in case

FIX (8/15/04, JKG) Closing a library now actually closes all Cells in library as well.

IMP (8/15/04, JKG) Added library palette to Components palette.

************************* Version 8.01f: *********************************

FIX: (8/13/04, JKG) Round doubles before truncating to int in ELIB writer, fixes
    instances moving because of doubles precision errors.

FIX: (8/13/04, JKG) Various fixes to Highlighter introduced in last version

IMP (8/13/04, JKG) Show networks now works hierarchically for layout (keep hitting ctrl-k)

IMP: (8/13/04, RK) "Better" NCC error reporting for Hash Code parition failures

IMP: (8/13/04, RK) NCC reports Part and Wire counts

IMP: (8/13/04, RK) NCC summarizes Export, topology, and size mismatches separately for each Cell and then for all Cells

IMP: (8/13/04, RK) NCC prints execution time per Cell and for the entire command

FIX: (8/13/04, RK) When NCCing hierarchically and continuing after errors, flatten subcircuits with Export name mismatches.

************************* Version 8.01e: *********************************

IMP: (8/12/04, JKG) Added preference in General Tab as to how Electric chooses the working dir.

IMP: (8/11/04, JKG) Highlighter now selects from a stack of objects based on last object selected.

FIX: (8/9/04, GVG): DRC: Missing transformation in hierarchical DRC so neighbor cells were not checked.

IMP: (8/9/04, GVG): GDS values in TSMC90 tech.

IMP: (8/9/04, JKG) Added color chooser to GetInfoArc

FIX: (8/9/04, JKG) Fixed X/Y size mirroring bug in GetInfoNode dialog

IMP: (8/6/04, JKG) De-staticized Highlight. Split into Highlighter, and Highlight object.
    Each WindowContent has it's own Highlighter.

FIX: (8/6/04, GVG) Flexible arcs were not streched when contact ports were resized. Fix: adjustMatrix considers now X and Y scales.

IMP: (8/4/04, GVG) Subset of DRC rules for TSMC90 tech. Some functions used in MoCMOS were promoted to Technology class for reusage.

FIX: (8/4/04, GVG) In FileMenu:CloseLibrary: Doesn't close library if there are still some references in other cells.
FIX: (8/4/04, GVG) In DRC, polygon is not checked against itself while analyzing minimun distances

************************* Version 8.01b: *********************************

IMP: (8/03/04, JKG) GetInfoNode now shows transistor width/length instead of x/y size
        for transistor nodes

FIX: (8/2/04, RK) NCC wasn't checking that same named Exports are on the equivalent nets.

IMP (8/2/04, RK) Added NCC annotation: "notSubcircuit".

IMP: (7/29/04, JKG) Added "Re-export Selected, include wired ports", and
        "Re-export Highlighted Area, inc. wired ports" menu commands.

IMP: (7/25/04, JKG) Added "Re-export Selected" menu item.

IMP (7/23/04, RK) If Export names don't match then suggest a possible mapping

************************* Version 8.01a: ************************

IMP: (7/22/04, JKG) Numerical display now always formats to show postfix. Units Preferences
     disabled, as they no longer make sense. Use TextUtils.parseUserInput to read in numbers.

FIX: (7/22/04, JKG) Many many small fixes in copy/moving/arraying/editing/displaying.

IMP: (7/21/04, JKG) Wiring Tool revamped, all cases checked

IMP: (7/22/04, GVG) New interface for geometrical operation. Error thrown if Java3D is not found. Some improvements in ERC.

IMP: (7/20/04, RK) Add Regular Expressions to FindText Dialog. Allow user selection of objects to be searched. Report finds and changes in Messages Window. Persist dialog settings.  Allow temporary arc and node inst names to be searched.

BUG: (7/20/04, RK) Fix button (it did nothing). Exports weren't being searched.

BUG: (7/19/04, GVG) XSize and YSize in Mult-Object Properties window not correctly calculated. Offset was missing.
FIX: Offset added if objects are instance of NodeInst.

IMP: (7/18/04, JKG) Implement clipping for arcs and text in PixelDrawing. Speeds up redraw when zoomed in.

BUG: (7/16/04, GVG) PolyQTree doesn't properly merge polygons that are touching each other.
FIX: Extra code for those cases.

BUG: (7/18/04, JKG) New cell version command: old version had bad cell group

IMP: (7/16/04, GVG) Better thickness and distances for layers in 3D: technology MoCMOS

************************* END OF Version 8.00, GNU RELEASE *********************************
************************* Version 8.00: Released 7/16/04 *************************

BUG: (7/16/04, RK) Series merging needs to count both Pins and Parts

IMP: (7/15/04, RK) Added Size Checking. It doesn't work yet so disable it in the options dialog.
     Embellished the NCC Options Dialog. Added some documentation to the NCC page.
     Removed Hierarchical from NCC menu because it hasn't been adequately tested.

BUG: (7/15/04, SMR) Cross-library moving may loop infinitely.
FIX: In "database.constraint.Layout.oldPortPosition()", must use local copy of "pp" which is "bottomPP".

IMP: (7/15/04, SMR) Can now delete any type of cell (text, 3D, etc.) and it works.

IMP: (7/14/04, SMR) Added command to show samples library.

IMP: (7/14/04, SMR) Fixed "Describe This Cell" results to line up properly, get state bits right.

BUG: (7/14/05, SMR) Multi-technology libraries get confused about cell technologies.
FIX: In "tool.io.input.ELIB.computeLambda()" and "tool.io.input.ReadableDump.computeLambda()",
     call "cell.setTechnology(cellTech)" to save result.

BUG: (7/13/04, RK) Don't let a user start NCC on an Icon Cell

IMP: (7/13/04, RK) Install NCC into main menus.

IMP: (7/12/04, RK) Roll in all changes to NCC from July break. NCC of all Cells in LoCo. Reorganize file hierarchy.

IMP: (7/12/04, GVG) List Geometry on Network functionality.

IMP: (7/12/04, SMR) Made window adjustment handle multiscreen configurations.

IMP: (7/12/04, SMR) Made requests for the highlighted object ignore text, lines, areas,
     and other non-object highlights.

BUG: (7/12/04, SMR) HSpice output not read properly.
FIX: When reading the .pa0 file, must really read it, and not the .tr0 file.

BUG: (7/12/04, SMR) Multi-object "Properties" dialog lists arc widths incorrectly.
FIX: Include arc width offset.

IMP: (7/12/04, SMR) Node "Properties" dialog now switches X and Y size when the node is rotated.

BUG: (7/12,04, SMR) Schematic Off-page connectors are too small.
FIX: In Schematics.java, made the initial size right.

IMP: (7/12/04, GVG) 3D View available now from Window -> 3D Display menu.

IMP: (7/8/04, SMR) Implemented auto-growth of schematic gates that take any number of inputs.

IMP: (7/7/04, SMR) Implemented reading of SmartSpice output.

IMP: (7/6/04, SMR) Implemented drag-and-drop to rearrange signals/panels in the waveform window.

IMP: (7/6/04, SMR) Implemented Edit / Selection commands for placing signals in the waveform window.

IMP: (7/5/04, SMR) Implemented opening and closing of bus contents in waveform window.

IMP: (7/5/04, SMR) Implemented saving of waveforms with cells.

IMP: (7/5/04, SMR) Digital waveforms now reflect level values in edit window.

BUG: (7/4/04, DN) Network wasn't highlighted when click on icon's port.
FIX: Use 0-th nodable of the icon in "Highlight.showHighlight".

BUG: (7/4/04, DN) "TestUtils.URLExists" sometimes returns true on unexisting URL on Java1.5".
FIX: Explicitly call "connect" in "TestUtils.URLExists".

IMP: (7/2/04. GVG) Reorganizing gif files under resources folders.
3D view working with reflection now.

BUG: (7/1/04, SMR) "Insert Jog In Arc" works wrong for arcs that are not on grid.
FIX: Now keeps inserted jog inside of the arc.

IMP: (7/1/04, SMR) Created "com.sun.electric.plugins" package for extras.

IMP: (7/1/04, SMR) Maxwell now includes net names.

IMP: (6/30/04, SMR) Added "refresh" button to waveform window to re-read simulation data.

IMP: (6/30/04, SMR) Maxwell output writes contact cuts, scales to microns.

IMP: (6/30/04, SMR) AND, OR, and XOR gates now scale properly.

IMP: (6/29/04, SMR) New waveform windows start with the panel selected.

IMP: (6/29/04, SMR) Added "Panning Distance" to "General" preferences tab; removed from Windows menu.

IMP: (6/29/04, SMR) Moved "Make Click Sounds" from "General" preferences tab to "New Arcs" tab.

IMP: (6/29/04, SMR) Fixed ERC Antenna Check crash.

IMP: (6/29/04, SMR) Fixed ERC Well Check to handle new polygon merge results without crashing.

IMP: (6/29/04, SMR) Fixed CDL writing so that the .cdltemplate file is written correctly.

IMP: (6/29/04, SMR) Fixed bug in Schematic DRC that gave errors for icons with no body.

IMP: (6/29/04, SMR) Moved IRSIM output from tool/simulation to tool/io/output; fixed it to save to disk.

IMP: (6/27/04, SMR) Impelemented incremental DRC.

IMP: (6/25/04, SMR) Waveform window improvements:
     Each panel is numbered, have a pulldown of panels, can hide/show panels;
     Fixed bogus time values, such as 1.999ns;
     Time cursors are dashed-lines;
     Right-click on signal in signal-names panel changes its color

IMP: (6/24/04, SMR) Waveform window improvements:
     Double-click on signal in explorer tree to add it to current panel;
     Adding the same signal to a panel doesn't add it twice: changes its color;
     Tooltips on all buttons.

IMP: (6/25/04, SMR) Implemented "Help / User's Manual" and began to convert C manual.

IMP: (6/25/04, GVG) First version working of 3D View.

IMP: (6/25/04, RK) Added NCC Local processing step to find user-understandable differences

IMP: (6/23/04, SMR) Preferences panel opens the tree to the proper place (and uses single-click to open them).

IMP: (6/23/04, SMR) Implemented drag-and-drop for signal names into the waveform viewer.

IMP: (6/22/04, RK) Added NCC attribute: exportsConnectedByParent

IMP: (6/21/04, SMR) Implemented Spice2 / GNUCap output reader.

IMP: (6/21/04, GVG) Adapting code for 3D View. New commands in Build.xml and some layers got non-zero thickness.

IMP: (6/21/04, SMR) Implemented "Edit / Selection / Push Selection", "Pop Selection".

IMP: (6/20/04, SMR) Implemented simple waveform window cross-probing.

IMP: (6/20/04, SMR) Added command to export "version 6" ELIB files.

BUG: (6/20/04, SMR) Cell centers are seen higher up the hierarchy.
FIX: In "PixelDrawing.expandedCellCached()" call "drawCell()" with "false" as the last argument.

IMP: (6/18/04, SMR) Implemented "Plot Spice for this Cell" and "Plot Verilog for this Cell".

BUG: (6/18/04, RK) Fixed various problems with NCC export checking

IMP: (6/18/04, SMR) Changed binary file format to include cell anchor points.

BUG: (6/18/04, SMR) Spice output uses wrong .global names.
FIX: In "io.output.Spice.start()" convert power and ground to proper names.

IMP: (6/17/04, SMR) Merged 3 options dialogs into 1 "Preferences" dialog.  Created tool.user.dialogs.options package.

IMP: (6/17/04, SMR) Moved per-cell frame selection into "Cell Properties" instead of "Frame" tab of "Edit Options".

IMP: (6/17/04, RK) Remove "Universal Arcs" from layout generators because Java-Electric NCC doesn't need them.

IMP: (6/17/04, RK) Add Export checking to NCC.

IMP: (6/17/04, RK) Remove various Transistor types. Change Transistor to allow stacking of arbitrary number of series transistors.

IMP: (6/17/04, GVG) Change LayerManager in StatusBar to GridLayout to avoid "flickering" in messages.
     Add TextUtils.formatDouble(<double>, 2) to coordinates. Refresh of window titles when current cell changes.

IMP: (6/17/04, GVG) Window title string composed in WindowFrame.
     MDI mode read from command arguments (valid only for window). Preparing code for 3DView

IMP: (6/16/04, SMR) Made DRC be non-static.

BUG: (6/16/04, SMR) DRC fails on active-to-transistor rules.
FIX: Better cropping in Quick.cropActiveArc().

IMP: (6/15/04, SMR) Changed all "dialog.show()" calls to "dialog.setVisible(true)" because of deprecation in 1.5.

IMP: (6/15/04, SMR) Implemented "Window / Center / Selection" and "Window / Center / Cursor".

IMP: (6/15/04, SMR) Implemented cell locking.

IMP: (6/15/04, SMR) Implemented graphing of cell structure.

IMP: (6/15/04, SMR) "Change current library" and "Change" dialogs accept double-click to terminate.

IMP: (6/14/04, SMR) Implemented SPICE writing in lambda units.

IMP: (6/14/04, GVG) More stable version of crosslibcopy with compare functions. Refactoring for getProtoName, getLibName, setLibName, getProtoNamekey

IMP: (6/13/04, SMR) Implemented ability to preserve design rules in preferences.

IMP: (6/12/04, SMR) Readable dump input can handle cross-library references.

IMP: (6/12/04, SMR) Implemented smart text placement (Edit Options, "Text" tab).

IMP: (6/12/04, SMR) Implemented automatic "blobs" where multiple arcs connect to a schematic port.

IMP: (6/12/04, SMR) Implemented "Look Inside Highlighted".

BUG: (6/12/04, SMR) When arcs jog, the R-Tree is damaged.
FIX: In "database.constraint.Layout.java", do not apply constraints to arcs that have been jogged.

BUG: (6/12/04, GVG) SelectedItem in right library pulldown list not correctly set.
FIX: In CrossLibCopy.java: same index as in left assigned (both should correspond to current)

IMP: (6/11/04, SMR) Implemented "Artwork Appearance" dialog for editing Artwork primitives.

IMP: (6/11/04, GVG) Message in WriteLib if no write access. Unified version of coverage implant, merge polygons and
layer coverage calculation. New idea for icon of current library selected in ExplorerTree.

IMP: (6/11/04, RK) Move fill generation to a script. Add Essential-Bounds to tiled fill cells.

IMP: (6/10/04, SMR) Changed the Job.doIt() method to return a success indicator.

BUG: (6/10/04, DN) Unnamed bus connected to array node may detect wrong width.
FIX: In "NetSchem.java".

IMP: (6/10/04, DN) Checking of generic pins and arcs in layout cells moved from Network tool to Geometry output.

BUG: (6/9/04, SMR) "Array" does not array node and arc names.
FIX: In "tool/user/dialogs/Array.java" have node and arc names copied.

IMP: (6/8/04, SMR) Improved "PixelDrawing.java" to align stipple patterns correctly.

IMP: (6/8/04, SMR) Implemented Windows / Messages Window menu with "Save Messages" and "Clear".

IMP: (6/8/04, SMR) Implemented Tools / Routing command "Mimic-Selected".

IMP: (6/8/04, SMR) Implemented Tools / Routing commands "Enable Mimic Stitching" and "Enable Auto Stitching".

IMP: (6/8/04, SMR) Implemented Tools / Spice submenu "Set Spice Model".

IMP: (6/8/04, SMR) Implemented Tools / Verilog submenu "Set Verilog Wire" with commands "Wire", "Trireg" and "Default".

IMP: (6/7/04, SMR) Implemented "View" commands "Edit Multi-Page Schematic View" and "Make Multi-Page Schematic View".

IMP: (6/7/04, SMR) Implemented "Make Grid Just Visible"

IMP: (6/7/04, SMR) Implemented "Match Other Window".

IMP: (6/7/04, SMR) Implemented "Color" tab of "Edit Options" as well as the color commands
     "Black Background Colors", "White Background Colors", and "Restore Default Colors".

IMP: (6/7/04, SMR) Implemented Spice command "Add Multiplier".

IMP: (6/7/04, GVG) Ctrl P for printing. Corrections to M factor code in Spice.java

IMP: (6/6/04, SMR) Implemented "Layer" tab of "Edit Options" dialog.

IMP: (6/6/04, SMR) Implemented "Arrows Filled" option in "Technology" tab of "Edit Options" dialog.

IMP: (6/6/04, SMR) Implemented "Panning Distance" settings.

IMP: (6/6/04, SMR) Implemented "Transistor Strength" setting.

IMP: (6/6/04, SMR) Implemented "List Tools".

IMP: (6/6/04, SMR) Implemented "Get Unrouted Wire".

IMP: (6/6/04, SMR) Reorganized EditWindow so that it is the object used externally,
     not EditWindow.CircuitPart.

IMP: (6/5/04, SMR) Implemented 3D tab of "Edit Options" dialog.

IMP: (6/5/04, SMR) Implemented "Insert jog in arc".

IMP: (6/4/04, GVG) First version of M factor in Spice output.

IMP: (6/4/04, RK) Change fill cell generator so that all reserved
     space may be allocated between ground only or between power only.

IMP: (6/4/04, RK) Change fill cell generator to place bottom left fill
     cell at (0,0) when building tiled fill cells.

BUG: (6/4/04, RK) Change LayoutLib.newArcInst to create only fixed-angle arcs

BUG: (6/4/04, RK) Fix compile errors reported by Eclipse in WaveformWindow.java

BUG: (6/4/04, RK) Fix obsolete comments in JNetwork

IMP: (6/4/04, SMR) Outline listener uses right button to create points, not "a".

IMP: (6/4/04, SMR) Implemented Measure-Distance mode.

IMP: (6/4/04, SMR) Implemented Edit / Selection / "Enclosed Objects"

IMP: (6/4/04, SMR) Implemented Edit / Info / "See All Parameters on Node", "Hide All Parameters on Node", "Default Parameter Visibility"

IMP: (6/4/04, SMR) Implemented readable dump output.

BUG: (6/04/04, GVG) If empty lines are inserted as vars, null and outbound exceptions are thrown om Poly.java and
     GetInfoText.java respectively.
FIX: Skip access if object array[i] is null.

IMP: (6/3/04, SMR) Searching objects in a cell is now an Iterator.

IMP: (6/3/04, SMR) Implemented "Show Power and Ground"

IMP: (6/3/04, SMR) Implemented "Validate Power and Ground"

IMP: (6/3/04, SMR) Can use "++" and "--" to tell where to increment or decrement array indices.

IMP: (6/2/04, GVG) First version of layer coverage.

IMP: (6/1/04, GVG) Open and Save functions in tool bar. Extra functions to verify if Save icon is enabled or disable.

IMP: (6/2/04, SMR) Implemented Annular ring.

IMP: (6/2/04, SMR) "Array" dialog gives a choice of going by row or by column

IMP: (6/2/04, SMR) Implemented ERC antenna check

IMP: (6/2/04, SMR) Implemented Edit / Move / "Align to Grid"

IMP: (6/1/04, SMR) Implemented Edit / Text / "Change Text Size..."

IMP: (6/1/04, SMR) Implemented Edit / Selection / "Deselect All Arcs".

IMP: (6/1/04, SMR) Implemented Edit / Selection / "Select Object..." which can select nodes, arcs, exports, or networks.

IMP: (5/31/04, SMR) Implemented cell instance extraction and packaging.

IMP: (5/31/04, SMR) Implemented MOSIS CMOS scalable transistors.

IMP: (5/30/04, SMR) Implemented Tool / Network / "Show Network", "List Networks", "List Connections on Network",
     "List Exports on Network", and "List Exports below Network".

IMP: (5/28/04, SMR) Implemented View / "Change Cell's View".

IMP: (5/28/04, SMR) Implemented Edit / "Erase Geometry".

IMP: (5/28/04, SMR) Implemented Help / "Describe Current Technology".

IMP: (5/28/04, SMR) Implemented Edit / Size commands: "All Selected Nodes" and "All Selected Arcs".

IMP: (5/28/04, SMR) Implemented Export commands: "Delete Export", "Rename Export", "Move Export".

IMP: (5/28/04, SMR) Implemented Arc commands "Toggle Ends Extension", "Reverse", "Toggle Head-Skip", "Toggle Tail-Skip"

IMP: (5/28/04, GVG) Testing qTree in ERC Check Well (new function doesn't overwrite current one).

IMP: (5/28/04, GVG) Added execution flag to Job class. Second version of qTree for polygon merging

IMP: (5/28/04, RK) Added fill cells: fill456_pwr and fill456w_pwr. Merge Jonathan's gate generator code into mine. Add user interface checks.

IMP: (5/27/04, RK) Added _pwr gates to layout generators. Added fill56_pwr and fill56w_pwr to fill cell generator.

IMP: (5/27/04, SMR) Implemented "Change Current Library", "List Libraries", "Mark All Libraries for Saving", "Rename Library"

IMP: (5/27/04, SMR) Implemented bus ripping.

IMP: (5/26/04, SMR) Implemented schematic frames.

IMP: (5/26/04, SMR) Implemented Spice cell model overrides in the Spice tab of the Tool Options dialog.

IMP: (5/25/04, RK) Add fill123, fill123w, and fill34.

IMP: (5/25/04, GVG) First draft for qTree to replace PolyMerge.

IMP: (5/25/04, RK) Modify "Justin" command so it scans LoCo schematics and generates layout for all
     gates it knows how to.

IMP: (5/25/04, GVG) Disable doAction button in CellBrowser when no cells are available.
     getSelectedCell returns null if index is -1. Rename functionaly enabled in CellBrowser.

IMP: (5/25/04, GVG) Coverage implants: more robust functions. Option added under Tool->Generation->Coverage Implants Generator

IMP: (5/24/04, SMR) Renamed "grab" to "anchor" everywhere.

IMP: (5/24/04, JKG) Improved Pad Generator

IMP: (5/24/04, SMR) Added node alignment commands "Edit / Move / Align..."

BUG: (5/24/04, SMR) During long library input, concurrency exception is thrown.
FIX: Synchronized maintenance of cell lists in Library.java.

IMP: (5/24/04, SMR) Added "Edit / Move / Spread..."

IMP: (5/24/04, SMR) Added "Edit / Move / Move Objects By..."

IMP: (5/23/04, SMR) Implemented "Text" panel of "Edit Options".

IMP: (5/23/04, SMR) Implemented ability to disable file-selection dialogs for netlist output.

IMP: (5/23/04, SMR) Implemented saving of primitive node sizes.

IMP: (5/21/04, SMR) Added EDialog class as super to all dialogs to remember position.

IMP: (5/21/04, SMR) Added Layer.getPureLayerNode() to obtain the pure-layer node associated with a Layer.

IMP: (5/21/04, GVG) Coverage Implants functionality in MenuCommands added.

FIX: (5/20/04, JKG) LE.subdrive() fixed. Various EvalJavaBsh code clean-up. Now uses reflection only.

IMP: (5/20/04, JKG) New dialogs.

IMP: (5/19/04, SMR) Text-edit windows now work.

BUG: (5/18/04, SMR) Should show ports on expanded cells that aren't wired or further exported.
FIX: Fixed in "PixelDrawing.java"

BUG: (5/18/04, SMR) Redisplay sometimes misses parts of the image.
FIX: In "EditWindow.CircuitPart.paint()" must always draw something.

IMP: (5/17/04, SMR) Added Flip-flop creation and support.

BUG: (5/17/04, SMR) When a cell is displayed, its bounds are set to include text.
FIX: In "EditWindow.fillScreen()" do not adjust the cell bounds stored in the cell.

BUG: (5/17/04, SMR) When a library is read back in, existing windows remain to its former contents.
FIX: In "Input.java" clear windows that reference replaced libraries.

BUG: (5/17/04, SMR) When an arc changes its "end extension", its bounds are not recomputed.
FIX: Recompute bounds in "ArcInst.java".

IMP: (5/17/04, JKG) Various dialog improvements.

IMP: (5/15/04, SMR) Added reflection interface to Bean Shell.

IMP: (5/14/04, SMR) Added the concept of "negated connections" instead of arcs.

IMP: (5/14/04, SMR) Added Schematics.getShapeOfPort() which is used for
     intelligent selection of locations on the left side of gates (AND, OR).

BUG: (5/14/04, SMR) Option reconciliation (when libraries with different options are read) broken.
FIX: Organized display into columns; used more meaningful names;
     Also fixed bug that did not display all relevant options.

IMP: (5/14/04, JKG) Tool Tips added. HTML based tips can be browsed by user.

IMP: (5/14/04, JKG) Commented out code to access other Interface modes except
     ClickZoomWire and OutlineEdit.

IMP: (5/14/04, JKG) Copy/Paste now uses mouse offset.  Paste arc to arc broken, fixed.
     Added "Duplicate" command.

BUG: (5/14/04, JKG) Key Bindings stored by menu name caused conflict.
FIX: Now stored by menu path.

BUG: (5/14/04, JKG) Menu shortcut key not updated in menu.  Fixed.

IMP: (5/13/04, SMR) Waveform display is available.

BUG: (5/11/04, SMR) Node "Get Info" dialog does not handle SizeOffset right, displays sizes too large.
FIX: Use SizeOffset.

BUG: (5/11/04, SMR) DRC displays too many digits.
FIX: Created "TextUtils.formatDouble()" and use it in DRC error reporting.

BUG: (5/10/04, JKG) DraggingMustEncloseEntire object did not allow object selection
FIX: in Highlight, areaMustEnclose is ignored if bounds size is (0,0) (single click)

IMP: (5/10/04, JKG) Fixed and improved Edit->Change.

IMP: (5/10/04, SMR) Put "IO Options" under "File" and "Tool Options" under "Tool".

BUG: (5/10/04, SMR) "IO Options" crashes if there are libraries read in.
FIX: In "Layer.getLayerPref()" make sure "factory" is not null.

IMP: (5/7/04, SMR) Generalized the contents of a WindowFrame.  Created the
     interface WindowContent and made both EditWindow and WaveformWindow
     an implementation of that.

FIX: (5/6/04, JKG) Delete Key Bindings and Reset Key Bindings didn't do anything; fixed.

IMP: (5/6/04, JKG) Added ability to ignore some or all key bindings, via MenuBar.

BUG: (5/6/04, JKG) Wiring using ClickZoomWire tool to middle of a wire deleted name on wire
FIX: Name now transferred to one of new arc segments

IMP: (5/6/04, JKG) Command button on MACs now converts clicks to "right" clicks

IMP: (5/6/04, SMR) Added the "File/Save All Libraries" command.

IMP: (5/5/04, SMR) The "Misc" palette entry now has Spice code and Verilog code/declarations.

IMP: (5/5/04, SMR) Converted file paths to URLs.

IMP: (5/5/04, SMR) Can now select default font in the "Text" tab of the
     "Edit Options" dialog.

IMP: (5/4/04, SMR) More improvements to waveform display.

IMP: (5/4/04, SMR) Added "Scale" tab in IO Options to set scale factors.

BUG: (5/4/04, SMR) Can create two exports with the same name.
FIX: Disabled this both in Export.newInstance() and in the dialog.
