Commit Graph

2307 Commits

Author SHA1 Message Date
Matthias Koefferlein 9d921e29fe Fixed Windows build. 2019-09-08 23:40:34 +02:00
Matthias Koefferlein 48a13162d8 Fixed build on MSVC 2019-09-08 21:45:34 +02:00
Matthias Köfferlein 77232f8a50
Merge pull request #349 from KLayout/deep-booleans
Deep booleans
2019-09-08 20:06:03 +02:00
Matthias Köfferlein 06cff5fa8b
Merge pull request #350 from KLayout/issue-343
Issue 343
2019-09-08 20:05:14 +02:00
Matthias Koefferlein a7b3f1dfcd Added documentation for dockable bookmarks feature 2019-09-08 20:01:22 +02:00
Matthias Koefferlein d9d3b3cafe Some enhancements to #343 fix
- "follow selection": allows navigating between the bookmarks
  with the cursor keys
- "manage bookmarks" now starts with the selected bookmarks
  also selected.
2019-09-08 02:23:38 +02:00
Matthias Koefferlein d2d22eafb5 Implementation of #343 (dockable bookmark window)
Here is the proposal:
- There is a new panel similar to the layer list showing the
  bookmarks. It can be shown using View/Bookmarks.
  Initially this panel is hidden.
- Double-clicking on an item in this bookmark list will
  navigate to the bookmark.
- Context menu entries of this panel are: manage, load and
  save bookmarks (like in main menu)

In addition, "bookmark this view" now proposes a bookmark name
make of "B" and a unique number.
2019-09-08 01:22:34 +02:00
Matthias Koefferlein 8a21d9718e First implementation 2019-09-08 01:11:19 +02:00
Matthias Koefferlein c95a0652cc First implementation of deep mode for XOR tool. 2019-09-07 22:30:10 +02:00
Matthias Koefferlein 26f8fc5c83 Bug fixed strmxor with deep mode, added tests. 2019-09-07 21:27:12 +02:00
Matthias Koefferlein ce5620e0bc Follow-up on #342: fixed unit tests. 2019-09-07 09:11:18 +02:00
Matthias Koefferlein f7bba9200e Merge branch 'deep-booleans' 2019-09-07 08:44:51 +02:00
Matthias Köfferlein f7173d0da4
Merge pull request #345 from KLayout/issue-317
Issue 317
2019-09-06 23:24:34 +02:00
Matthias Köfferlein 0388d51f6d
Merge pull request #348 from KLayout/help-link-not-working
Fixed: help link not working
2019-09-06 23:24:23 +02:00
Matthias Köfferlein 6bf21681ed
Merge pull request #344 from KLayout/issue-342
Issue 342
2019-09-06 23:24:05 +02:00
Matthias Koefferlein 67575a7ea2 WIP: strmxor.cc - deep mode implemented. Not tested. 2019-09-06 22:18:13 +02:00
Matthias Koefferlein 8df2199838 Fixed: help link not working
The help link wasn't working for File/Setup/Rulers/Templates
("here"). Also: if clicked from the model "Ruler and annotations setup"
the link was working but the help window wasn't usable. The modal
setup dialog was hiding the help window.
2019-09-05 22:59:08 +02:00
Matthias Koefferlein fa72885020 issue #317: provide undo combination for the paste+move sequence in 'interactive paste'. Same for 'interactive dup' 2019-09-04 23:47:05 +02:00
Matthias Koefferlein 70a4ce82b3 First implementation of infix mode
Three mode menu items appear in "Targets for Key Binding"
in the setup dialog and can be bound to a key.

"Move Interactive" will immediately start moving the
selection.

"Paste Interactive" and "Duplicate Interactive" will
paste and then immediately start moving.

Remaining issue: when Paste or Duplicate moves are
cancelled the pasted objects will still be there and
at the original location. So they are may be hard to
see. Also with Undo, two undo items are there: Paste
and Move.
2019-09-03 22:53:32 +02:00
Matthias Koefferlein 50573edad0 Added Ellipse Outline code, fixed doc. 2019-09-03 20:26:22 +02:00
Matthias Koefferlein 25e2151e28 Tiny enhancement of measurement algorithm gives more reliable results on auto-measure for 'any direction'. The solution is taking vertexes into account and accepts them as counterpart for the seed. 2019-09-02 22:58:42 +02:00
Matthias Koefferlein 2e695bd048 Leaner solution: provide snap and swap
"Swap points": will swap P1 and P2
"Snap both": will take P2 into account (before it was only P1)
2019-09-01 23:14:21 +02:00
Matthias Koefferlein 9fa5277e41 Implementation proposal
The solution tries to be a bit more generic:

- four buttons are there to synchronize coordinates
- three buttons to snap p1, p2 and auto-measure from p1.
2019-09-01 19:59:03 +02:00
Matthias Koefferlein 1106d3faac Merge branch 'dvb' 2019-09-01 11:25:42 +02:00
Matthias Koefferlein cd137e6b3e Another fix for MSVC golden data. 2019-08-30 14:24:07 +02:00
Matthias Köfferlein 57cee7921a
Merge pull request #339 from KLayout/issue-337
Fixed #337 (cross style missing in Annotation class)
2019-08-30 14:02:04 +02:00
Matthias Köfferlein 16fd8741a5
Merge pull request #340 from KLayout/issue-338
Fixed #338 (broken doc)
2019-08-30 14:01:52 +02:00
Matthias Köfferlein fde4fd42f9
Merge pull request #336 from KLayout/multiple-files-on-import
Stream import: support multiple files
2019-08-30 14:01:38 +02:00
Matthias Koefferlein b9886e472a Fixed #338 (broken doc) 2019-08-30 13:34:19 +02:00
Matthias Koefferlein d767ef27c7 Fixed #337 (cross style missing in Annotation class) 2019-08-30 13:25:15 +02:00
Matthias Koefferlein ab66186db4 Updated MSVC test golden data 2019-08-30 13:03:37 +02:00
Matthias Koefferlein 5cfadad54f Updated test data. 2019-08-30 11:01:00 +02:00
Matthias Koefferlein 2a8f4c9610 Updated test data. 2019-08-30 10:52:51 +02:00
Matthias Koefferlein 550e2622bf Put more amphasis on net names to resolve ambiguities
The problem was that with the floating test case, the
ambiguity resolution sometimes assigned the wrong pins
and floating pins/connected pins were swapped.

One option is to make the ambiguity resolver consider
the pin connection state when tenatively evaluating
nodes.

Another option is to put more emphasis on net names
and use them for ambiguity resolution. This has helped
here.
2019-08-30 10:24:55 +02:00
Matthias Koefferlein 60ed0cdc89 Updated test golden data (mainly: nets are not purged when there is a subcircuit pin on it) 2019-08-29 23:26:03 +02:00
Matthias Koefferlein b1acfe9587 Tried a better deal with floating pins
1.) is_floating is now only true if there is no device
    and no subcircuit on a net. This means we only purge
    nets if they are really floating. So far we purged
    nets without pins which lead to the mismatch:

    Before purge:
      Layout:            (net) <--> DEVICE.TERMINAL
      Schematic:           PIN <--> DEVICE.TERMINAL

    After purge:
      Layout:           (null) <--> DEVICE.TERMINAL
      Schematic:           PIN <--> DEVICE.TERMINAL

    (null does not match any net)

2.) circuit pin matching was a bit picky. Only when
    one circuit did not have pins, matching was sloppy.

    In real cases however, circuits may have unconnected
    pins:
    - top level pins without a counterpart (no label)
    - subcircuits pins which are not used

    We catch both cases by refining the match: if a pin
    is not used, it does not need to match against
    any other pin. It's reported as "matching against null"
    though.
2019-08-29 22:25:59 +02:00
Matthias Koefferlein 9a69d106fd Fixed some small issues in the netlist compare 2019-08-29 00:19:24 +02:00
Matthias Köfferlein 799246b862
Merge pull request #335 from KLayout/issue-333
Fixed issue #333 (automation of auto-measure rulers)
2019-08-28 22:08:20 +02:00
Matthias Koefferlein f6492c80c5 Stream import: support multiple files
Multiple files can now be selected for "File/Import/Other Files into current".

NOTE: performance for many files may not be excellent
due to re-sorting of hierarchy and bounding box re-computation.
2019-08-26 22:28:35 +02:00
Matthias Koefferlein de64f61903 Fixed issue #333 (automation of auto-measure rulers) 2019-08-26 21:34:57 +02:00
Matthias Koefferlein ef66becfdb Fixed LVS test golden data for MSVC 2019-08-26 19:02:38 +02:00
Matthias Koefferlein 3a12714593 Fixed some doc issues, added doc for hierarchical compare. 2019-08-26 18:55:35 +02:00
Matthias Köfferlein cb541f935e
Merge pull request #332 from KLayout/gridline-colors
Implemented individual colors for grid lines, axes and rulers (backgr…
2019-08-26 00:19:32 +02:00
Matthias Köfferlein c44fdf8c94
Merge pull request #331 from KLayout/issue-330
Fixed issue #330
2019-08-26 00:19:18 +02:00
Matthias Koefferlein db9ea27324 Re-run feature for DRC too. 2019-08-25 23:47:55 +02:00
Matthias Koefferlein 441f946f43 WIP: LVS rerun feature 2019-08-25 21:55:48 +02:00
Matthias Koefferlein 515b68b76f WIP: provide a recipe registration facility for LVS rerun 2019-08-25 18:03:27 +02:00
Matthias Koefferlein 444e10d32f WIP: rerun LVS, partial LVS
Rerun LVS: a button is provided which allows re-running
the LVS or netlist extraction from the netlist browser.
TODO: a generic concept for triggering the generators

"Partial LVS" is a feature where it's possible to
select a layout subcell - running LVS then will only
compare against the corresponding schematic subcell, not
the whole tree. The magic is done by "align" which will
remove the upper hierarchy part.
2019-08-24 22:56:20 +02:00
Matthias Koefferlein c543fe7a44 Added test for floating device terminals. 2019-08-24 19:42:00 +02:00
Matthias Koefferlein a9a2cb69c8 Avoiding one assertion by not considering floating device terminals 2019-08-24 09:58:08 +02:00