Commit Graph

781 Commits

Author SHA1 Message Date
Matthias Koefferlein 45394b801a Debugging TextInfo, added tests 2023-05-09 21:37:15 +02:00
Matthias Koefferlein df7311ddf7 Fixed issue #1360 (LayoutViewBase not promoted to LayoutView). Problem was that GSI binding of LayoutView happened before LayoutView was fully constructed. 2023-05-09 20:06:34 +02:00
Matthias Koefferlein 0b0f62130c WIP: refactoring, debugging needed 2023-05-07 23:29:02 +02:00
Matthias Koefferlein e8048d6686 WIP: preparations - introducing TextInfo 2023-05-07 19:51:15 +02:00
Matthias Koefferlein 7b4ff5d823 Zoom in/out menu functions now use mouse position for zoom center instead of center (if mouse is inside window) 2023-05-06 21:40:36 +02:00
Matthias Koefferlein 541f9a377f Small refactoring, added persisted flag for meta info 2023-04-16 21:31:25 +02:00
Matthias Koefferlein dc689e52d1 Added a method 'widget' to LayoutView to deliver the QWidget object for the view 2023-04-13 22:50:58 +02:00
Matthias Koefferlein 0253c25b30 Avoids a Qt warning internally 2023-03-08 22:37:56 +01:00
Matthias Koefferlein 90b59ca14d Bugfix - properly removing plugins when they are unregistered (unlikely) 2023-02-23 17:07:22 +01:00
Matthias Koefferlein 432b542f3c Merge branch 'master' into wip 2023-02-19 20:30:49 +01:00
Matthias Koefferlein 79868c40cd Some enhancements for image editing (e.g. selection remains after moving handles) 2023-02-19 19:54:40 +01:00
Matthias Koefferlein df562f502a Avoid a segfault while editing a ruler. This happens is both a selection and a transient selection is active. 2023-02-19 19:00:02 +01:00
Matthias Koefferlein 8038acc236 Updated test data 2023-02-18 09:50:34 +01:00
Matthias Koefferlein f6edc9c802 Implemented solution for issue #1249 (persist layer properties in session) 2023-02-17 23:41:36 +01:00
Matthias Koefferlein 12693ed212 More steps to fully (hopefully) fix issue #1259 - basically it is important to issue enough active_view_changed and active_technology_change events 2023-01-26 20:31:43 +01:00
Matthias Koefferlein cfd21d98bf Merge branch 'issue-1259' 2023-01-26 12:52:23 +01:00
Matthias Köfferlein ab8cfee1ea
Merge pull request #1258 from KLayout/wip
Wip
2023-01-24 21:48:27 +01:00
Matthias Koefferlein 7600eac8a0 Fixed issue-1259 2023-01-24 21:14:36 +01:00
Matthias Koefferlein bc63a1cd40 Fixed isse #1253 2023-01-24 00:42:31 +01:00
Matthias Koefferlein 017ca1707b Small bugfix: 'clone panel' did not copy custom line styles 2023-01-13 22:01:18 +01:00
Matthias Koefferlein 33af2b8fcc Avoid a segfault after explicitly destroying a custom plugin factory object 2023-01-12 21:03:24 +01:00
Matthias Koefferlein 12e34f9282 Fixed issue #1247. Problem was missing cache clean on assignment of stipple pattern and line styles 2023-01-12 00:11:36 +01:00
Matthias Koefferlein ef6f3f182a Fixed issue #1242 (KLayout 0.28.2 crashes when registering a plugin if a layout exists)
Problem was twofold: first, events are triggered during
construction of the plugin which met an uninitialized
pointer. Second, the clearing of existing plugins failed
because of iterating a vector while destroying it's members
erased member of it.
2023-01-04 21:17:12 +01:00
Matthias Koefferlein a85dbd3d31 Updating copyright notice to 2023 2023-01-01 22:27:22 +01:00
Matthias Koefferlein 4429d4c8f7 Fixed #1234 (layer list empty after clone panel) 2022-12-27 20:10:39 +01:00
Matthias Koefferlein 24b8526361 Attempting to speed up layer list for many layers 2022-12-17 20:34:22 +01:00
Matthias Koefferlein ad27c9a51d WIP: trying to enhance layout layer lookup performance. 2022-12-13 23:41:34 +01:00
Matthias Koefferlein 43089f31e4 Doc updates 2022-12-09 23:53:41 +01:00
Matthias Koefferlein d82ff4d3f8 [consider merging] Fixed a problem with editing guiding shapes 2022-10-28 23:40:48 +02:00
Matthias Koefferlein 8f6603d88e Fixed unit test fails 2022-10-18 01:26:42 +02:00
Matthias Koefferlein dc927717c2 Multi-selection in properties dialog: bugfixing and finalization 2022-10-13 23:45:21 +02:00
Matthias Koefferlein 187aae2649 WIP: multi selection property dialog 2022-10-08 00:37:39 +02:00
Matthias Koefferlein 62e0d83b3a WIP: further development on selection tree on objects dialog 2022-10-07 00:44:12 +02:00
Matthias Koefferlein eb004e45e1 WIP: generalized interface of properties page 2022-10-06 21:31:16 +02:00
Matthias Koefferlein 3b6ef57ddc Cross size in marked mode now scales with resolution 2022-10-01 23:22:36 +02:00
Matthias Koefferlein 914ad98858 Ruler edge marker is now visible also for scaling > 1 2022-10-01 21:59:34 +02:00
Matthias Koefferlein 1bff5c1ac3 WIP: layer icons now follow oversampling and high-resolution mode, new GSI method to fetch layer icon: LayoutView#icon_for_layer 2022-10-01 19:20:06 +02:00
Matthias Koefferlein 00e78eb76c Highres mode config option - display utilizes full pixel density 2022-10-01 16:24:05 +02:00
Matthias Koefferlein 7b4b345cf4 Multiple stacks for net tracer - finished selection box in net tracer dialog 2022-09-25 19:10:30 +02:00
Matthias Koefferlein 4381f29945 Fixed builds 2022-09-19 01:05:45 +02:00
Matthias Koefferlein c9f4dac931 Fixed builds 2022-09-19 01:02:18 +02:00
Matthias Koefferlein ee3facfa13 Fixed printout 2022-09-18 21:53:38 +02:00
Matthias Koefferlein 029284f48a Some refactoring, layer icons are scaled for high DPI too now. 2022-09-18 20:56:37 +02:00
Matthias Koefferlein a6d4cdd254 More scaled pixmaps for dither pattern icons 2022-09-18 18:02:37 +02:00
Matthias Koefferlein e5fabb2b13 Using scaled dither pattern pixmaps in the UI elements 2022-09-18 17:37:49 +02:00
Matthias Koefferlein 48e3643a87 Attempting extrapolation of fill pattern 2022-09-18 16:09:11 +02:00
Matthias Koefferlein ef5cd11629 Properly scaling line width for high-DPI displays 2022-09-18 13:19:52 +02:00
Matthias Koefferlein f32da6aa87 Properly scaling line width for high-DPI displays 2022-09-18 12:19:06 +02:00
Matthias Koefferlein 188ae060be More icons converted 2022-09-17 02:06:24 +02:00
Matthias Koefferlein 25c5b2f057 Refactoring of resources -> separate folders for doc and icons 2022-09-11 11:09:14 +02:00
Matthias Köfferlein 769b16ea3f
Issue 1145 (#1151)
* [CONSIDER MERGING] Clarification and typo fixed in DRC doc.

* Enhanced Shapes::is_valid so it's more reliable in detecting invalid shape objects.

* ObjectInstPath now has a validity attribute

* First implementation of solution for edtService (partial service to follow)

* Validating selection also for Partial Edit mode
2022-09-05 23:35:21 +02:00
Matthias Koefferlein 290cd39ad9 Bugfix: consider device pixel ratio for layout canvas 2022-09-03 23:27:07 +02:00
Matthias Koefferlein 8dd002bd0f More enhancements to support LayoutView as widget 2022-09-03 22:53:01 +02:00
Matthias Koefferlein 81eab3f1db More safety against deleting view in view widget 2022-09-03 16:59:27 +02:00
Matthias Koefferlein f788818d12 Some more refactoring - further abstracting layout view from container widget 2022-09-03 01:48:50 +02:00
Matthias Koefferlein 3c53950eaa Rework needed for LayoutView management
The application got unstable on exit under various conditions
(e.g. LayoutView created in script). Reason was the ownership
management of LayoutView which interfered with Qt widget
lifetime management.

The solution now is based on a clean widget/view hierarchy
and a consistent plugin parent/child relationship.

In addition, a new class is enabled which allows creating
a true QWidget (rather QFrame) for a LayoutView again.
2022-09-02 00:47:21 +02:00
Matthias Koefferlein 5b40d86527 Bugfix: menu system wasn't working properly with menu tool buttons 2022-08-16 23:00:31 +02:00
Matthias Koefferlein e1552afcae Menu system: menu opening event, insert_menu variant with Action argument, clear_menu method, icon setter with QIcon 2022-08-15 23:43:45 +02:00
Matthias Koefferlein 9d36b3c71a Merge branch 'master' into wip 2022-08-06 18:52:41 +02:00
Matthias Koefferlein bfeb60986c Merge remote-tracking branch 'origin/msvc-building-with-debug' 2022-08-01 19:02:31 +02:00
Matthias Koefferlein 545ff11899 Merge branch 'master' of github.com:KLayout/klayout into wip 2022-08-01 18:50:48 +02:00
Matthias Köfferlein 801ef78990
Fixed issue-1131 (do not show non-existing files in MRU lists) (#1133)
* Fixed issue-1131 (do not show files in MRU lists which do no longer exist)

The solution consists of an extension of the Action system allowing to
dynamically hide or disable items. This currently works for menu items only.

This feature is used to dynamically *disable* (as of now, not hiding)
items from the four MRU lists corresponding to non-existing files.

In addition, a "clear list" menu has been added to the MRU lists.

* Small enhancement: file names can be URIs
2022-08-01 18:49:42 +02:00
Matthias Koefferlein 429e43fe37 Fixed Qt-less LayoutView (removed QWidget as base class which is no longer true) 2022-07-31 00:11:20 +02:00
klayoutmatthias 1b728f1067 Removed duplicated method declarations in LayoutViewBase 2022-07-28 20:52:19 +02:00
Matthias Koefferlein 682cc0e491 More safeguards against crashes in the absence of a Manager object 2022-07-09 20:13:40 +02:00
Matthias Köfferlein 7a5737d55f
Merge pull request #1087 from KLayout/qtless-canvas2
Qtless canvas2
2022-06-14 22:51:57 +02:00
Matthias Koefferlein 5aa9f5ba13 Fixed some unit tests 2022-06-12 14:00:06 +02:00
Matthias Koefferlein 51be84ebc1 Avoid segfaults in batch mode 2022-06-11 00:41:06 +02:00
Matthias Koefferlein a853ed904f API enhancements for annotation template management 2022-06-09 00:14:32 +02:00
Matthias Koefferlein 1020eb6e99 Basically enabling AbstractMenu in non-Qt mode
As a way to trigger actions inside the layout view
and plugins.

Right now, the layout view's menu is only a rudimentary one
as it lacks the top-level menus usually provided by the main window.
2022-06-07 23:28:10 +02:00
Matthias Koefferlein ac5c66400d Added ability to query modes and issue menu commands to LayoutView in non-Qt case. 2022-06-06 23:04:31 +02:00
Matthias Koefferlein 184c66b781 Provide a default configuration for LayoutView also in the non-Qt case 2022-06-02 23:55:40 +02:00
Matthias Koefferlein 91b642285d Decoupling tl, gsi and rdb libraries from Qt bindings to enable lean strmrun application 2022-06-01 22:42:55 +02:00
Matthias Köfferlein 17e643ce5b
Fixed #1086 (problems showing handle of a single circle) (#1089) 2022-05-31 00:22:42 +02:00
Matthias Koefferlein b95027a21b Refactoring: lay::PixelBuffer, BitmapBuffer -> tl, added image functions to RdbItem in GSI 2022-05-31 00:20:47 +02:00
Matthias Koefferlein 62bbef53ac Refactoring: layColor -> tlColor 2022-05-30 23:21:32 +02:00
Matthias Koefferlein a5d467b51e Dummy change to trigger builds 2022-05-29 14:47:22 +02:00
Matthias Koefferlein 6039340022 Fixed non-Qt build 2022-05-29 14:23:10 +02:00
Matthias Koefferlein 40eb3aaebe Enabling input files in batch mode, fixed a segfault during tests 2022-05-29 14:16:44 +02:00
Matthias Koefferlein ad87b22d91 Potential segfault fixed: skip invalid cell views 2022-05-27 19:20:37 +02:00
Matthias Koefferlein 7702d8c200 libpng option in build script 2022-05-27 18:10:01 +02:00
Matthias Koefferlein 2e10ef300b Fixed implementation of LayoutView#resize in non-Qt case 2022-05-27 08:31:13 +02:00
Matthias Koefferlein 5825b7d0c6 Build fixed for Qt4 2022-05-27 07:57:04 +02:00
Matthias Koefferlein 2b568cdd5e Fixed some build errors, added tests 2022-05-26 07:47:35 +02:00
Matthias Koefferlein 03761768cf Enabled headless LayoutView. Works. 2022-05-26 01:51:09 +02:00
Matthias Koefferlein 96f3ce65c1 First steps towards LayoutView for headless mode, optional arguments for Layout#load_layout and MainWindow#load_layout 2022-05-26 00:07:22 +02:00
Matthias Koefferlein c5ecb67557 Merge branch 'master' of github.com:KLayout/klayout 2022-05-24 23:45:24 +02:00
Matthias Koefferlein a4dd5c1d3c Fixed an issue introduced during qtless-canvas development (message was not displayed) 2022-05-24 23:44:08 +02:00
Matthias Koefferlein 348faa64b3 Another fix for Qt <5.10 2022-05-24 12:54:52 +02:00
Matthias Koefferlein d6f320bc8b Fixed build for Qt <5.10, MSVC 2022-05-24 07:48:20 +02:00
Matthias Koefferlein 3f4fe62dc5 Merge branch 'master' into qtless-canvas 2022-05-23 20:42:39 +02:00
Matthias Köfferlein b84ec19da1
Issue 1071 (GDS2Text format options issues) (#1085)
* Fixed first issue (UI problem with GDS2Text options)

* Fixed problem with 'save' when the file extension does not indicate one of the known formats

In this case, and when plain 'save' is used, the original format is delivered.
The session files also store the original format now.
The statistics page will now indicate the format of the file that was loaded.
2022-05-23 20:37:26 +02:00
Matthias Koefferlein beb5af55a7 Fixed lay::Color test for Qt4 2022-05-16 20:08:05 +02:00
Matthias Koefferlein d8f51a5ef0 Qt4 compatibility 2022-05-16 00:07:31 +02:00
Matthias Koefferlein baae3796a7 Fixed an build issue with forward-declared QColor 2022-05-15 22:58:42 +02:00
Matthias Koefferlein 104975a14e WIP: fixed pymod 2022-05-15 19:34:46 +02:00
Matthias Koefferlein 856635bc82 WIP: debugging, enabled pymod builds ... 2022-05-15 18:45:07 +02:00
Matthias Koefferlein f0dcd59060 WIP 2022-05-15 17:29:08 +02:00
Matthias Koefferlein f5b4bbb62c WIP 2022-05-15 10:31:09 +02:00
Matthias Koefferlein b17b2714a5 WIP 2022-05-15 01:25:36 +02:00