Commit Graph

530 Commits

Author SHA1 Message Date
Matthias Koefferlein c64dad0b3a Bugfix, crash on switching to flat cell list 2021-02-12 01:20:38 +01:00
Matthias Koefferlein 423dddae62 Bug fixes on cell name search feature. 2021-02-12 00:44:31 +01:00
Matthias Koefferlein 71a7326fe9 Enhancements to cell name search feature. Needs more debugging. 2021-02-10 00:17:01 +01:00
Matthias Köfferlein c837b306be
Issue 720 (#721)
* Implemented a backup scheme for the file writer.

* Also consider backup files when the writer fails.

* Removed test exception

* Added config option for number of backups.
2021-02-02 22:47:25 +01:00
Matthias Koefferlein c7113b8c72 Added methods to manipulate key bindings and menu visibility through scripts (MainWindow#set_key_bindings, MainWindow#get_key_bindings, MainWindow#set_menu_items_hidden ...) 2021-01-26 23:10:26 +01:00
Matthias Koefferlein 6a23769387 Different integration of Dispatcher interface with MainWindow
In 0.27 the main window got it's own configuration API
as now it's possible to instantiate a main window explicitly
and not application backs up configuration. Because GSI allows
as single base class only, we cannot derive from Dispatcher.
A delegate is used instead.
2021-01-26 07:56:49 +01:00
Matthias Koefferlein d1e6845ae4 Replaced std::auto_ptr by std::unique_ptr because the latter is deprecated 2021-01-23 21:55:51 +01:00
Matthias Koefferlein 081c445cd8 Merge branch 'master' into complex_drc_ops 2021-01-17 19:55:28 +01:00
Matthias Koefferlein 7d4310d343 Updated copyright to 2021 2021-01-05 22:57:48 +01:00
Matthias Koefferlein 46a4178010 More elaborate handling of selection changed events in LayoutView (avoids dummy events) and some more GSI methods for manipulating or checking selections. 2020-12-24 17:57:01 +01:00
Matthias Koefferlein ca1ec353fb Some fixes for the technology feature
- Fixed some potential segfaults due to invalid layout object
- More consistent handling of potential technology switch due to
  active cellview change
2020-12-20 23:49:29 +01:00
Matthias Koefferlein cfe38aab42 Merge branch 'lefdef' 2020-12-20 19:26:51 +01:00
Matthias Koefferlein 5bd1cb8bd7 WIP: making list the default for layer mapping edit widget 2020-12-16 23:54:57 +01:00
Matthias Koefferlein 0fddf7f389 WIP: text edit feature for layer mapping edit widget. 2020-12-16 23:52:58 +01:00
Matthias Koefferlein 86e7fa56f0 WIP: undo/redo for applying a technology. 2020-12-13 22:02:19 +01:00
Matthias Koefferlein 0fc4caace0 WIP: Libraries View follows technology now. 2020-12-13 19:39:45 +01:00
Matthias Koefferlein fcf4fd74f6 WIP: bugfixing. 2020-12-13 14:13:59 +01:00
Matthias Koefferlein 78695f9c23 WIP: new technology management scheme, libraries can be tech specific, update of technology in layout updates library references 2020-12-13 12:13:21 +01:00
Matthias Koefferlein bb19acead4 Bugfix: double-clicking on an object to start move brought the move service into a weird state and made the object 'jump' on the next click. 2020-12-01 23:02:18 +01:00
Matthias Koefferlein 63819e3292 Bugfix: Browser's HTML panel was collapsed sometimes. 2020-12-01 00:14:51 +01:00
Matthias Köfferlein 511e30ef45
Fixed #646 (crash on delete of library) (#685)
* Fixed a compiler warning

* Fixed #646 (crash on PCell Library "delete")

The issue was mainly caused by a "cleanup" call on
the library. Cleanup is supposed to remove excess
top level PCell variants. For libraries this is not
possible, as the library does not know which variants
are used and which are not.

In addition, some hardening against segfaults in
case of defect layouts has been applied.
2020-11-27 18:36:56 +01:00
Matthias Köfferlein 0217cf253d
Merge pull request #683 from KLayout/display_bug
Fixed display bug happening when child cells are instantiated with a …
2020-11-25 21:29:05 +01:00
Matthias Koefferlein fd95dc6637 Windows build fix, Qt4 build fix. 2020-11-22 16:20:18 +01:00
Matthias Koefferlein be5fd1cd0e Fixed Windows build. 2020-11-22 15:34:22 +01:00
Matthias Koefferlein 45664e834e Fixed a merge issue. 2020-11-22 09:12:05 +01:00
Matthias Koefferlein a7dd683d59 Fixed display bug happening when child cells are instantiated with a small magnification factor. 2020-11-21 23:38:50 +01:00
Matthias Köfferlein beae26ec2e
Merge pull request #678 from KLayout/port-658-to-master
Port of #658 fix to master
2020-11-15 17:15:42 +01:00
Matthias Koefferlein 13c3353148 Fixed merge commit. 2020-11-14 20:51:39 +01:00
Matthias Koefferlein 50dc53615c Merge branch 'master' of https://github.com/KLayout/klayout into usability-enhancements 2020-11-13 02:09:42 +01:00
Matthias Koefferlein ad0cad83c8 Port of #658 fix to master 2020-11-13 02:04:53 +01:00
Matthias Koefferlein edaacff594 Fixed build. 2020-09-15 19:26:03 +02:00
Matthias Koefferlein 9200c2924f Fixed build. 2020-09-15 08:01:47 +02:00
Matthias Koefferlein b5e158a6b6 Merge branch 'master' into 2.5d-view-devel 2020-09-14 20:48:46 +02:00
Matthias Koefferlein 60e3f87877 Merge branch 'master' into usability-enhancements 2020-09-14 20:41:23 +02:00
Matthias Köfferlein ff79b36740
Fixed #637 (Points are not selected properly for mirrored subcells) (#638) 2020-09-14 18:35:07 +02:00
Matthias Koefferlein 316cf77175 WIP: Ruler now has a mouse snapping indicator too. 2020-09-07 23:49:42 +02:00
Matthias Koefferlein df1583b5db WIP: config options for mouse tracking options. 2020-09-07 23:19:44 +02:00
Matthias Koefferlein 307c10f184 WIP: better highlighting of snap objects. 2020-09-07 22:35:06 +02:00
Matthias Koefferlein e42136ee27 Editor options: recent layers are created if not there. 2020-09-06 23:03:18 +02:00
Matthias Koefferlein a9a9f88f92 WIP: further reworking. 2020-09-06 21:10:26 +02:00
Matthias Koefferlein 46b5b87eaf WIP: refactoring editor options - moved some classes from edt to lay namespace 2020-09-06 18:45:58 +02:00
Matthias Koefferlein fb90144176 WIP: mouse cursor and snap highlighting 2020-09-05 23:58:10 +02:00
Matthias Koefferlein 70981ab03b Help dialog: bookmarks are persisted now. 2020-09-05 00:16:21 +02:00
Matthias Koefferlein 6bfed45b5d WIP: nicer icons, added bookmark button. 2020-09-04 18:23:26 +02:00
Matthias Koefferlein 842501c9e8 WIP: some updates, specifically: width of help browser does not change when the window is resized -> good for bookmarks, history ... 2020-09-04 17:43:56 +02:00
Matthias Koefferlein fd6e126038 WIP: some refinement of help dialog search function. 2020-09-03 23:54:58 +02:00
Matthias Koefferlein 523f8e41e4 WIP: help browser: on-page search, search box completer 2020-09-03 23:38:55 +02:00
Matthias Koefferlein 97df81f996 WIP: UI preparations for help browser in-page search and bookmarks 2020-09-02 23:58:33 +02:00
Matthias Koefferlein 1dc9d11745 Merge branch 'master' into 2.5d-view-devel 2020-08-30 23:40:54 +02:00
Matthias Koefferlein 3003eb96e7 WIP: life updated on most shape properties, some bug fixes. 2020-08-26 00:38:41 +02:00
Matthias Koefferlein 6e860361c0 WIP: show properties - use transient selection if nothing else is selected. 2020-08-24 22:44:17 +02:00
Matthias Koefferlein ac10c72df4 WIP: immediate update of property changes - instances so far. 2020-08-24 22:40:01 +02:00
Matthias Koefferlein e36f6913de Recent file lists for sessions, layer properties and bookmarks. 2020-08-23 23:39:18 +02:00
Matthias Koefferlein 73787eed8a WIP: recent options of boxes, polygons, styling 2020-08-18 21:44:20 +02:00
Matthias Koefferlein 77ef3e049b WIP: recent options for paths - now update on layer style change, some bug fixes, change of current layer will immediately change the drawing layer. 2020-08-18 21:09:05 +02:00
Matthias Koefferlein ee5cd9cb63 WIP: first 'recent options' list, dragging a PCell variant into the canvas makes the editor take a PCell with these parameters. 2020-08-15 00:13:17 +02:00
Matthias Koefferlein e12746526f Interactive manipulation of PCell parameters on editoptions page. 2020-08-13 01:20:14 +02:00
Matthias Koefferlein cdce2cb151 WIP: put the editor options into a separate dockable widget 2020-08-08 21:10:01 +02:00
Matthias Koefferlein 1887fd715a First new implementation of "tap" and some enhancements/bugfixes/refactoring
- Layer icons can be obtained now
- Icon dimension is arbitrary
- Scaling icons for layer list
- More robust event handling in case of pop-up menus
  (selector)
- "Tap" will noe pop up a menu with all layers below the cursor.
  When selected, the current layer is switched.
2020-08-03 10:34:16 +02:00
Matthias Koefferlein f810eae7a0 New feature: repeat selection
1. "Select Next Item" will repeat the selection on the last single-click location
   or select the current transient selected (essentially like a single click)
  This feature is by default bound to "Space"
2. "Select Next Item too" will do the same, but add to the selection
  This feature is by default bound to "Shift+Space"
2020-08-02 17:41:22 +02:00
Matthias Koefferlein 374c8d2c4d Some refactoring: pulled out the layout functionality from the layout view and put into a plugin. 2020-08-02 17:34:07 +02:00
Matthias Koefferlein 471fefe79d Merge branch 'master' into lefdef-enhancments 2020-08-02 14:27:00 +02:00
Matthias Koefferlein 79d3676257 And one more ... 2020-07-31 07:55:16 +02:00
Matthias Koefferlein cdcde2469a And another compiler specific fix ... 2020-07-31 07:52:12 +02:00
Matthias Koefferlein a7aa99e5e2 Yet another compiler specific fix 2020-07-31 07:51:23 +02:00
Matthias Koefferlein c81e462b60 Another compiler specific fix 2020-07-31 07:48:34 +02:00
Matthias Koefferlein 37544e5e23 Merge branch 'master' into lefdef-enhancments 2020-07-31 00:58:24 +02:00
Matthias Koefferlein f2b678cb7b Fixed master builds on Qt 4 2020-07-31 00:15:38 +02:00
Matthias Koefferlein 7d2715401f Fixed compile issue with some gcc's 2020-07-30 23:59:08 +02:00
Matthias Koefferlein 89745fd0de Merge branch 'master' into lefdef-enhancments 2020-07-18 09:21:16 +02:00
Matthias Koefferlein 3dff7549f2 Implemented #588: Netlist browser enhancements
1. The netlist browser now got events for
   selection and probe events
2. The netlist browser was overhauled to support
   "infinite depth" views
3. Ambiguities are not shown as errors now
4. New classes for support netlist object
   selections and the netlist browser.

Multiple selections for netlist browser.
2020-07-16 22:53:59 +02:00
Matthias Koefferlein c8a4d25b51 WIP: enabling selection_changed event 2020-07-15 00:35:38 +02:00
Matthias Koefferlein f8c2afaad8 Using NetlistObjectPath for probe_event. 2020-07-15 00:10:42 +02:00
Matthias Koefferlein be5f03b1f4 Netlist browser: Paths for probing, cell contexts for highlighting, probe_net with initial circuit (not just top one) 2020-07-14 23:06:26 +02:00
Matthias Koefferlein a10d56e6b6 WIP: netlist browser - net object paths, single + pairs, tests 2020-07-13 22:11:10 +02:00
Matthias Koefferlein 2762daf14f WIP: fixed tests, fixed an assertion with null nets 2020-07-12 22:32:01 +02:00
Matthias Koefferlein f54c03f4ca WIP: fixed some segfaults. 2020-07-12 21:33:02 +02:00
Matthias Koefferlein dcdf9a8ec1 WIP: paths for tree model too 2020-07-12 21:06:03 +02:00
Matthias Koefferlein 27d1f2fac1 WIP: same sorting of subcircuit connections and circuit pins. 2020-07-12 10:32:46 +02:00
Matthias Koefferlein 8bb7342147 WIP: less nodes. 2020-07-12 10:15:21 +02:00
Matthias Koefferlein 98f808d585 WIP: connections of subcircuits are separate node now, pins and terminals show up as nets. 2020-07-12 09:28:42 +02:00
Matthias Koefferlein f00f5c76b8 WIP: netlist browser tree, highlights etc. 2020-07-12 01:22:22 +02:00
Matthias Koefferlein 62ed7b9def Fixed tests. 2020-07-11 19:07:28 +02:00
Matthias Koefferlein f9fa3d3aa3 WIP: some safety 2020-07-11 14:41:42 +02:00
Matthias Koefferlein 74b87d536e Fixed unit tests partially. 2020-07-11 14:31:56 +02:00
Matthias Koefferlein fde90c66e1 Better handling of pin swapping in netlist browser 2020-07-11 13:21:23 +02:00
Matthias Koefferlein aaa8352a40 Enhancements for netlist tree view - deep hierarchy, no 'failing' terminals on ambiguous device terminals 2020-07-11 00:54:26 +02:00
Matthias Koefferlein 6021a66c40 New node hierarchy for netlist browser. 2020-07-09 00:55:38 +02:00
Matthias Koefferlein 6aff74c844 Merge branch 'master' into issue-588 2020-07-08 23:29:27 +02:00
Matthias Köfferlein 5dce0d8384
Implemented #603 (Coordinates for adjust origin) (#604) 2020-07-05 18:42:08 +02:00
Matthias Köfferlein 6365ddfe82
Fixed #591 (two topics for macro editor) (#595)
* Fixed #591 (crash on Macro/Add Location)

The main reason was that the QSortFilterProxyModel is very sensitive
to the order of signals it receives from the proxy model.

In this case, dataChanged() must not be send between layoutAboutToBeChanged()
and layoutChanged(). This happened implicitly during load() of a macro while
scanning the freshly added folder.

* Fixed another part of #591: ability to disable template selection pop-up in macro editor. Tied to the tip window now - if this is dismissed, no template selection dialog will be shown.
2020-07-03 23:41:52 +02:00
Matthias Köfferlein e744eb32d1
Merge pull request #580 from KLayout/drawing-performance2
Drawing performance2
2020-06-28 16:14:48 +02:00
Matthias Koefferlein 613c95e9a3 WIP: enhanced netlist model 2020-06-18 23:50:50 +02:00
Matthias Koefferlein 649b234644 WIP: enhanced netlist model 2020-06-18 23:46:50 +02:00
Matthias Koefferlein f4495274ab WIP: refactoring for more comfortable net browser 2020-06-17 23:20:43 +02:00
Matthias Koefferlein 03bf0a557e WIP: refactoring for more comfortable net browser 2020-06-17 23:14:20 +02:00
Matthias Koefferlein fd5c659ea6 WIP: refactoring for more comfortable net browser 2020-06-16 23:13:52 +02:00
Matthias Koefferlein 23e9932c87 Consistent naming of events: on_... 2020-06-15 01:29:05 +02:00
Matthias Koefferlein 61c9c12414 WIP+Bugfix
1. Bugfix: avoid an internal error because in set_db highlight()
   was called before setup_trees(). Error was:
   Internal error: ../../../src/laybasic/laybasic/layNetlistBrowserPage.cc:387 model != 0 was not true in LayoutView::show_l2ndb

2. Provide GSI binding for lay::NetlistBrowserDialog
2020-06-14 23:31:44 +02:00
Matthias Koefferlein 880b9904cf WIP Netlist probing will deliver an instantiation path now. 2020-06-14 22:04:16 +02:00