Commit Graph

611 Commits

Author SHA1 Message Date
Thomas Ferreira de Lima b6ec5b7c0d retina rendering of layout fine. rulers and other bitmap objects not obeying retina dpi 2018-03-15 14:37:38 -04:00
Thomas Ferreira de Lima 53bc8e97fe a little more stable.
still unstable for oversampling >1. also rulers do not render well
2018-03-15 03:55:47 -04:00
Thomas Ferreira de Lima a94ad6622a retina display working prototype. only works if oversample = 1. 2018-03-15 03:32:46 -04:00
Thomas Ferreira de Lima 8419ed0c6f fixing the bug mentioned in PR #85 2018-03-15 00:08:18 -04:00
Matthias Koefferlein 02c9c645ec Rephrase confusing option in 'save as' dialog. 2018-03-12 20:55:15 +01:00
Matthias Koefferlein 9fd169f183 Merge branch 'bug_89' 2018-03-12 20:47:38 +01:00
Matthias Koefferlein 3ae71d7e72 Bugfix: properly initialize new config value 2018-03-12 20:47:33 +01:00
Matthias Koefferlein 802237141b Fixed #90 (DRC issue with 'extended' and joined = true) 2018-03-12 00:47:04 +01:00
Matthias Koefferlein 8bec89611f Trying to fix alpha channel issue by providing upper 8 bits set in QImage. 2018-03-11 23:57:41 +01:00
Matthias Köfferlein 4ef4635e24
Merge pull request #86 from lightwave-lab/master
Building KLayout on macOS High Sierra with python3 from brew and Qt 5.9.4
2018-03-11 22:20:41 +01:00
Matthias Köfferlein dc5792d768
Merge pull request #87 from lightwave-lab/open-with-macos
Open with macos
2018-03-11 22:08:49 +01:00
Matthias Koefferlein 5fbc20702e Macro editor enhancements (stop on exceptions)
This commit tries to address #85 and provide these features:
 - dynamic configuration of the macro IDE behaviour
 - side effect: a new entry in the setup dialog for the
   IDE settings
 - "stop on exceptions" can be taught to ignore certain files
2018-03-11 21:58:59 +01:00
Alex Tait 9717612c93 allowed user defined literals. build and deploy passes with MacOsSierra version of Ruby. 2018-03-08 14:33:43 -05:00
Thomas Ferreira de Lima 8ec78a99a9 open with working properly in MacOS. 2018-03-07 12:54:01 -05:00
Thomas Ferreira de Lima c82bb445ac testing file open event 2018-03-07 11:07:29 -05:00
Matthias Koefferlein 51e40cc9ab Merge remote-tracking branch 'remotes/origin/master' 2018-03-03 00:22:10 +01:00
Matthias Koefferlein 7da3b0206a DRC as early autorun
This will finally enable DRC runsets started from an autorun macro.
2018-03-03 00:21:23 +01:00
klayoutmatthias 3d5fe871e2 Fixed #84 (Python modules: breakpoints not working on Windows) 2018-03-03 00:18:18 +01:00
Matthias Koefferlein 6f0ecd3d9c Show tip window once for non-standard background combination mode. 2018-02-27 21:59:52 +01:00
Matthias Koefferlein 2ffdbb4d91 Suppress repeated message in unit tests if not required. 2018-02-27 00:02:57 +01:00
Matthias Koefferlein d0cb17b386 ut_runner: Added -r option, fixed help text 2018-02-24 18:09:50 +01:00
Matthias Koefferlein eea53b3091 Fixed #79 (Macro Editor: Replace function enabled also for read-only macros) 2018-02-23 23:04:21 +01:00
Matthias Koefferlein 5f4e715dcf Fixed #77 (copy_tree should work in non-editable mode too) 2018-02-21 07:47:41 +01:00
Matthias Koefferlein a272ba39a7 Remove a debug output. 2018-02-21 07:47:02 +01:00
Matthias Koefferlein 2f46f0d1c6 Fixed some issues found with Coverity. 2018-02-21 00:21:19 +01:00
Matthias Koefferlein 6052a04429 A few enhancements and unit tests for PCells
This commit adds unit tests for implementation helper-based
PCells in Python and Ruby.
2018-02-17 01:26:25 +01:00
Matthias Koefferlein f6f75cd791 A small rework of the Python PCell helpers
The aim of this rework was to enable PCell implementations
that use the basic methods rather than the "_impl" variants.
For the latter, potential variable name clashes happen when
parameters are called "cell", "layout", "layer" or similar.

New methods enable implementation on the level of the
non-"impl" methods. For example:

  def produce(self, layout, layers, parameters, cell):
    self.init_values(parameters, layers)
    ...
    self.finish()
2018-02-13 00:59:11 +01:00
Matthias Koefferlein 12bb664a80 Fixed the default implementation of transformation_from_shape in Python 2018-02-13 00:09:54 +01:00
Matthias Koefferlein 4f3b205d93 Fixed #71 (target cell argument is required) 2018-02-12 22:46:54 +01:00
Matthias Koefferlein 5d59b890d3 Small bugfix: DRC error message on wrong '@' input/output was wrong. 2018-02-12 22:04:03 +01:00
Matthias Koefferlein 6d0fe85425 Fixed #75 (Python PCell issue when parameters are called 'layer')
This commit
- Ignores exceptions when checking for PCells that accept shapes.
  Hence a single rogue one does not break the feature.
- Prevents errors when parameters named "layer" are present
  by making the implementation safe against this case.
- In addition, guiding shape parameters of type "Path", "Box" etc.
  (i.e. integer types) are supported too although they are
  not recommended for portability.
2018-02-11 00:34:28 +01:00
Matthias Koefferlein 6a762db29b Reworked bookmark menu implementation to avoid MacOS menu issue
Without this commit, bookmark menus got grayed out
on MacOS with Qt5 sometimes. Now, the implementation
of recent file menu, bookmark menu, macro menu and
the static main menu use the same framewkork which
includes a workaround for the disabled menu issue.
2018-02-10 18:41:05 +01:00
Matthias Koefferlein 1e29b29c13 Merge remote-tracking branch 'remotes/origin/menu_issue' 2018-02-10 17:32:33 +01:00
Matthias Koefferlein d6adadcad4 Added file source to 'stream has unknown format' message. 2018-02-09 22:56:03 +01:00
Matthias Koefferlein 396d0263d4 Some changes to work around MacOS menu issues
- ID's are used instead of pointers to identify menu items
  vs. QAction's. This is a weak measure to enhance predictability.
- The file menu is built from abstract menu items instead with
  native Qt objects. This way the bug fix applies both to
  file menu items and the other menu entries

The main fix is:
- A menu sync is forced by emitting a focusWindowChanged event
  from the application object. This forces the QCocoaMenuBar
  implementation to update the system menu.
2018-02-08 16:33:54 -08:00
Matthias Koefferlein 6df645a917 Fixed #74 (small-corner boolean issue). Tests need update 2018-02-08 23:12:58 +01:00
Matthias Koefferlein 363c0c9fed Fixed #73 (allow 'change layers' on PCells which support a single layer parameter) 2018-02-06 22:51:06 +01:00
Matthias Koefferlein fb69dfd866 Fixed HTML version of class documentation - links to methods have not been working properly. 2018-02-04 19:07:33 +01:00
Matthias Koefferlein 808159bcab Fixed #72 (Edges/Region NOT issue) 2018-02-01 22:35:47 +01:00
Matthias Koefferlein 432a8dddb8 Bugfix: Ruby debugger breakpoints were disabled sometimes 2018-02-01 21:18:48 +01:00
Matthias Koefferlein 23c2ae7306 Fixed #69 (DRC: 'inside' does not merge shapes of second input) 2018-01-30 00:40:17 +01:00
Matthias Koefferlein ccb76a9f09 Merge remote-tracking branch 'remotes/origin/master' 2018-01-27 01:31:47 +01:00
Matthias Koefferlein 705056675a Fixed a potential crash in the package manager on computing dependencies 2018-01-26 16:28:25 -08:00
Matthias Koefferlein 475bf6eb83 Small bug fixes in the package manager
- Remove button wasn't enabled if multiple packages
  were selected
- A potential crash on removing packages was fixed
2018-01-27 01:05:25 +01:00
Matthias Koefferlein aab425a58c Fixed #66 (Authentication dialog should indicate retry) 2018-01-24 22:08:13 +01:00
Matthias Koefferlein 04b4c21e82 Fixed #68 (OASIS reader issue with degenerated shapes) 2018-01-24 21:21:02 +01:00
Matthias Koefferlein 53328d1767 Merge branch 'macos-build' from kazzz 2018-01-14 17:29:59 +01:00
Matthias Koefferlein 8b479bd20a Fixed #64 (crash on exit) 2018-01-14 00:15:16 +01:00
Matthias Koefferlein a2ba300bd7 More consistent 64bit coordinate support 2018-01-12 00:30:49 +01:00
Matthias Koefferlein 390a5c11a8 Using OASIS files for smaller size as DRC golden data 2018-01-12 00:06:24 +01:00
Matthias Koefferlein ed945a28d4 Fixed #63 (wrong output on DRC non_interacting with empty second input) 2018-01-10 23:20:34 +01:00
Matthias Koefferlein 2de6b691b4 64bit coordinate support enhanced
- int128 to string support for output
- unit tests
- some compiler issues fixed
2018-01-10 22:12:55 +01:00
Matthias Koefferlein d11e2ed8a6 Fixed #62 (QXmlSimpleReader#parse cannot be called) 2018-01-10 20:21:56 +01:00
Matthias Köfferlein 9a141a3fc8
Merge pull request #60 from klayoutmatthias/master
Fixed #53 by introducing a scroll area around the 'about' text.
2018-01-07 20:51:27 +01:00
Matthias Koefferlein a63ef901aa Fixed #53 by introducing a scroll area around the 'about' text. 2018-01-07 20:49:22 +01:00
Matthias Koefferlein 02f84181f5 Merge remote-tracking branch 'origin/macos-build' into macos-build 2018-01-07 11:24:54 -08:00
Matthias Koefferlein 8eb3f5e6ce Fixed #59 (async download of package index and details) 2018-01-07 10:22:47 +01:00
Matthias Koefferlein bf5f932ff1 HTTP access enhancments
Added the ability for asyn requests.
Fixed a memory lead issue in WebDAV access.
2018-01-07 08:56:06 +01:00
Matthias Koefferlein 55be7d78e7 Merge remote-tracking branch 'matthias-origin/async-reader' into macos-build-on-master 2018-01-06 17:10:35 -08:00
Matthias Koefferlein ef67790d2c Implemented #54 (more typeinfo visibility) 2018-01-02 16:24:31 -08:00
Matthias Koefferlein 8003d1bb47 Merge branch 'master' into macos-build-on-master 2018-01-02 23:37:45 +01:00
Matthias Koefferlein ae6485a0df Fixed #51: segmentation fault on return to main window and other opportunities 2018-01-02 14:19:35 -08:00
Matthias Koefferlein ffb56335fb Updated copyright note to 2018. 2018-01-01 21:08:06 +01:00
klayoutmatthias efa921c950 Removed visibility declaration which wasn't actually required. 2018-01-01 19:04:52 +01:00
klayoutmatthias 7e0f1522ac Windows build compatibility
The issue is with "dllexport": previously, dllexport was present on
exposed templates tool (= visibility(default) for gcc/clang). This
ensured MacOS compatibility since then the typeinfo is corretly
shared and dynamic_cast/typeid works.

For Windows, the "dllexport" equivalent requires the template
instantiations to be declared "external" which is a coding nightmare.

The solution is to provide separate macros for real (non-specialized,
not explicitly instantiated) templates (.._PUBLIC_TEMPLATE) which
is defined as empty for Windows and "visiblity(default)" for gcc/clang.
2018-01-01 18:55:11 +01:00
Matthias Koefferlein 111e1f12e0 WIP: Windows build compatibility 2018-01-01 14:44:25 +01:00
Matthias Koefferlein c8108dd038 WIP: Windows build compatibility 2018-01-01 14:34:49 +01:00
Matthias Koefferlein d670083111 Even more exported templates .. 2017-12-31 11:43:44 -08:00
Matthias Koefferlein c4cf394719 One more external visibility ... 2017-12-31 10:56:46 -08:00
Matthias Koefferlein 6b4d24b442 One more external visibility ... 2017-12-31 10:23:54 -08:00
Matthias Koefferlein b7a18b3278 Added method to derive application path for MacOS (/proc isn't there on MacOS) 2017-12-31 09:55:23 -08:00
Matthias Koefferlein 48a6b4b57a Exceptions have to be exported from DSO's too to make the recognized in catch statements. 2017-12-31 09:54:47 -08:00
Matthias Koefferlein 2084a7e85c Don't crash if no unit test libs are found in the unit test runner. 2017-12-31 09:52:54 -08:00
Matthias Koefferlein f5b7a037ad Turn the unit test runner into a ordinary binary too. 2017-12-31 09:51:38 -08:00
Matthias Koefferlein 93572a8f0b Fixed dbEdges iterator (ported fix of dbRegion iterator for MacOS/clang to dbEdges too) 2017-12-30 17:15:24 -08:00
Matthias Koefferlein 167df7eae6 Fixed a unit test bug - the dbCell test was working by coincidence on other systems. 2017-12-30 16:46:49 -08:00
matthias 063811edc4 Solved the clang/MacOS startup failure and menu issue
1.) Startup issue:

This is solved by making sure templates with virtual functions
are made visible in the DSO. This way, dynamic_cast is possible
across DSO's.

Scary: clang/MacOS wants the forward declarations be declared visible as well.

2.) Menu issue:

The best solution is to have only one QMenuBar. The navigator
now gets a synthetic menu bar composed of QToolButtons.
2017-12-30 15:22:16 -08:00
Matthias Koefferlein 6526625a67 Fixed Ruby-less build. 2017-12-29 20:35:34 +01:00
Matthias Koefferlein 7715d924ee Fixed #42 (headless mode support with Qt5/-zz) 2017-12-27 21:44:14 +01:00
Matthias Koefferlein 87531dadcc Fixed #48 (Cancel does not reset current tool) 2017-12-27 21:33:38 +01:00
Matthias Koefferlein 84cf46bcd2 Fixed an issue with the new process_events implementation: compiler resolution did not work well for the two types - one them them reimplemented and the other not. 2017-12-27 19:54:06 +01:00
Matthias Koefferlein 7a28389bf1 Fixed Windows build. 2017-12-27 18:27:18 +01:00
Matthias Koefferlein c63a47dd89 Added tests for klayout app
This commit also contains some important fixes:
 * Option -wd wasn't working
 * Relative layout file paths in session files are resolved as relative
   to the session file. On writing, absolute paths are used, so this
   change only affects session files build intentionally.

Plus:
 * Program version is available in unit tests too
 * Fixed a typo in the RBA::Expression documentation
2017-12-27 17:52:35 +01:00
Matthias Koefferlein 9906565013 Further refactoring - more functionality for GUI/non-GUI application classes. 2017-12-26 00:03:40 +01:00
Kazunari Sekigawa 1fe6280970 Buddy tools have to be built as ordinary command line tools; not as bundles (*.app)
This refs #10.
2017-12-26 06:58:03 +09:00
Matthias Koefferlein bbb1514184 WIP: some refactoring. 2017-12-25 22:35:16 +01:00
Matthias Koefferlein 53d2557ba5 First steps towards fix. Needs review.
The patch is based on splitting the application class into
two incarnations - one for GUI capability and one without.

GSI binding happens dynamically based on the mode chosen.
We can do so because the application class is the first one
to become active and can decide the mode by itself.

In general, the application class carries too much functionality
and splitting is a task for the future. Right now, the functionality
is inside the base class and the derived classes basically only
configure the base class.

A better design would be to drop the QApplication inheritance in
the RBA::Application class hierarchy and provide access to the
QApplication object through qapp_gui getter.
2017-12-25 00:51:06 +01:00
Matthias Koefferlein 395643b427 Fixed #44 (Transformation constructor with x,y not working) 2017-12-23 19:42:39 +01:00
Matthias Koefferlein 692ae10fe2 Fixed #45 (Partial selection does not capture instance) 2017-12-22 21:01:40 +01:00
Matthias Koefferlein b44f5ab156 Fixed #43 (crash when using Qt specific command line options) 2017-12-21 22:56:41 +01:00
Matthias Koefferlein 4855231342 Fixed #40 (Crash in Python binding)
Plus the same effect was observed for Ruby and fixed there as well.
2017-12-21 00:55:40 +01:00
Matthias Koefferlein 6f66e04c8e Fixed #41 (Polygon#touches? method) 2017-12-20 22:55:15 +01:00
Matthias Koefferlein 4f3c745790 Updated the wording of some documentation texts and fixed some errors there. 2017-12-20 22:11:42 +01:00
Kazunari Sekigawa 3f0152149e To try suggested patch "patch0.patch.txt" provided by Matthias.
I should have created a topic branch for this.

This refs #8. (reverted from commit e254f8a67e)
2017-12-19 21:30:01 +09:00
Kazunari Sekigawa e254f8a67e To try suggested patch "patch0.patch.txt" provided by Matthias.
I should have created a topic branch for this.

This refs #8.
2017-12-19 21:14:25 +09:00
Kazunari Sekigawa 74da54faf8 To try suggested patch "patch0.patch.txt" provided by Matthias.
This refs #8. (reverted from commit 0f14c13860)
2017-12-19 20:24:59 +09:00
Kazunari Sekigawa 0f14c13860 To try suggested patch "patch0.patch.txt" provided by Matthias.
This refs #8.
2017-12-19 19:36:54 +09:00
Matthias Koefferlein 21e42788e6 Fixed #39 (Action cannot be reassigned) 2017-12-17 22:38:48 +01:00
Matthias Koefferlein 28ff493de7 Replaced patch by generated code
The Qt4/5 bindings are generated automatically. Hence any manual
patches are bound to become lost on the next generation run.

This commit removes symbols which are not available on MacOS
by a code-generation solution.

These symbols are only required for WindowsCE so their
unavailability on other systems is not a big loss.
2017-12-17 15:30:37 +01:00
Matthias Koefferlein ad741d0eb7 Fixed #36: harding against destruction of object inside event handler
Plus: declare the form builder to return a new
widget object (the way it is).
2017-12-16 01:45:35 +01:00
Matthias Koefferlein 6e14460334 Ported enhancements for #33 fix (factory callbacks) to Ruby too. 2017-12-13 00:21:56 +01:00
Matthias Koefferlein 0c25e8cab1 Maybe fixed a linker issue (db::GDS2Writer vtable not found) 2017-12-12 23:23:13 +01:00
Kazunari Sekigawa bded8f9fa4 When KLayout 0.25 is built with Qt 5.8.0 or later, this workaround is not required.
This refs #1.
2017-12-12 20:50:23 +09:00
klayoutmatthias b49db04fb4 Fixed MacOS build
The LLVM STL implementation does not recognize "typedef void iterator_traits"
as dummy declaration. It will fall back to an empty traits struct.
Using the default "forward_iterator_tag" for the iterator_traits solves
this compile issue.
2017-12-12 00:21:16 +01:00
Matthias Koefferlein 1cea7dfd23 Fixed #33 (Plugin factory not working when using with Python)
The fix consisted of introducing "factory" type virtual
methods which ensure that a reference is held to the
returned object. This is important for implementing
factory methods in Python. Without this, the object
get destroyed before we have a chance to increment the
reference count.
2017-12-11 23:51:00 +01:00
Kazunari Sekigawa 14894e6ab7 Qt::WindowOkButtonHint and Qt::WindowCancelButtonHint are supported for Windows CE.
This refs #1.
2017-12-10 16:42:35 +09:00
Matthias Koefferlein 11c9d37e93 Fixed #32 (rounding issue with instance properties) 2017-12-09 23:00:41 +01:00
Pankaj Pandey f318cb2e30
Update tlString.h 2017-12-06 18:33:57 +05:30
Pankaj Pandey 58281695fb
Update tlString.cc 2017-12-06 18:32:17 +05:30
Pankaj Pandey ff74c466d5
Replace `m_m128` -> `m_int128` in tlVariant.cc
Typo in member variable name.
2017-12-06 16:11:28 +05:30
Matthias Koefferlein 2cd5d68db2 Build enhancements
Qt <4.7 is partially supported now:
 * Without Qt bindings (build.sh -without-qtbinding ...)
 * With reduced functionality (i.e. package manager won't work)

Build compatibility with STL-less Qt installations
2017-12-05 22:26:30 +01:00
Matthias Koefferlein fdb012aa2d Fixed #26 (Exceptions are reported every time they propagate up in the call chain in the ruby debugger) 2017-12-02 23:02:45 +01:00
Matthias Koefferlein 1bb662b9ed Fixed #21 (Autorun(-early) doesn't seem to run when lym files are inside a package) 2017-12-02 18:48:28 +01:00
Matthias Koefferlein 54a373572f Fixed #24 (Text insert dialog possible bug in 0.25 but not in 0.24) 2017-12-01 22:36:33 +01:00
Matthias Koefferlein 8e55a4171e Fixed #30: Writer options dialog non-functional on a fresh configuration 2017-11-29 23:23:28 +01:00
Matthias Koefferlein be80682853 Fixed #29 (permissive mode for OASIS writer on odd-width paths)
This commit adds "permissive" mode to OASIS writer to allow
odd-width paths (which are rounded).

This commit contains in addition:
 * The check for odd-width paths is done post-scaling, so
   reducing the DBU is a workaround
 * Unit tests for the RBA binding of SaveLayoutOptions
 * Documentation updates on some SaveLayoutOptions attributes
 * Using Ruby predicate notation for cif_blank_separator?
   (note question mark) for consistency. The old notation is
   still there but deprecated
 * --permissive option on buddies command lines where applicable
2017-11-29 22:34:41 +01:00
Matthias Koefferlein c1e501197c #28 fixed (CIF file format detection fails) 2017-11-28 23:24:38 +01:00
Matthias Koefferlein 11cb5eb998 Qt 5.8.0 compatibility 2017-11-26 22:51:36 +01:00
Matthias Koefferlein 4dbe28e9fa MacOS build fix. 2017-11-26 22:50:35 +01:00
Matthias Koefferlein 8378e59b41 Fixed a build issue with Ruby libraries. 2017-11-16 22:51:54 +01:00
Matthias Koefferlein 20a6c5ec6b Another fix for Ruby/Python-less builds. 2017-11-07 20:48:15 +01:00
Matthias Koefferlein 4a81e228cf Fixed non-Ruby/Python builds. 2017-11-06 21:14:02 +01:00
Matthias Koefferlein 08a662bcfd Reworked ruler initialization procedure. 2017-11-06 21:09:55 +01:00
Matthias Koefferlein 059c7ee37a Ruler setup enhanced
- Issue: on an entirely fresh installation the "Ruler"
  entry was not visible. Now, a new standard template
  called "Ruler" is present.
- Ruler templates with categories cannot be deleted
  any more and are shown with italic font. If they
  were deleted, they would show up again after restart.
2017-11-05 23:39:50 +01:00
Matthias Koefferlein 8cb36cdfe7 Added one more buddy tool: strmrun
strmrun allows running a Python or Ruby script
in the context of KLayout's API. A subset of the
API will be available - all classes connected with
the user interface are not available. Neither is
the DRC engine.
2017-11-05 18:03:17 +01:00
Matthias Koefferlein b5e6423c8d Added tooltips and filter to menu customization dialog 2017-11-05 09:23:24 +01:00
Matthias Koefferlein dbc5079bb4 More robustness for PCell declarations on mutable parameter declarations. 2017-11-02 07:37:05 +01:00
Matthias Koefferlein 0cfc43d297 Fixed DRC tests - need OASIS normalization 2017-11-01 22:48:33 +01:00
Matthias Koefferlein 4599d342ef Merge branch 'master' of www.klayout.org:/home/matthias/klayout 2017-11-01 22:14:33 +01:00
Matthias Koefferlein af1c5c9f66 Bugfix: avoid a segfault
Reason: PCellDeclaration::parameter_declaration is volatile when
the PCell does not want parameter declaration caching. In this
case, begin .. end iterators must not be taken from different
calls to parameter_declaration for example.
2017-11-01 22:12:49 +01:00
klayoutmatthias 4cbb98745d Merge branch 'master' of www.klayout.org:/home/matthias/klayout 2017-11-01 22:11:08 +01:00
klayoutmatthias ccf6570d46 Crash handler does not pop up window in batch mode now. 2017-11-01 22:10:23 +01:00
Matthias Koefferlein ea5920bda4 Fixed ut_runner
- Implict macros were not disabled as they should
- This revealed that DRC scripts could not run with -rx
2017-11-01 18:20:45 +01:00
Matthias Koefferlein 5d9513b6a5 Added some more GSI methods:
* LayoutView#zoom_fit_sel
* ObjectInstPath#layout, ObjectInstPath#dtrans and ObjectInstPath#source_dtrans
2017-10-31 23:54:07 +01:00
Matthias Koefferlein 226f39c920 Fixed build on older gcc versions. 2017-10-31 22:30:23 +01:00
Matthias Koefferlein 3c3c3a0b87 Apply custom hidden flags also to menu items created from macros. 2017-10-31 09:38:29 +01:00
Matthias Koefferlein 52e893ae17 Two method aliases in RBA::Vector/DVector to provide Point compatibility 2017-10-29 19:11:50 +01:00
Matthias Koefferlein b1e83e0bdb New feature: customizable menu items (hide/show)
In the setup dialog (Customize Menu page), there are check boxes
now by which menu entries and menus can be enabled or disabled.

CAUTION: don't disable the setup function :-)
2017-10-29 17:39:49 +01:00
Matthias Koefferlein 99552a5484 GSI binding for new Action features. 2017-10-29 13:59:44 +01:00
Matthias Koefferlein c4fe283c2d Changed wording of key binding string in macro properties form. 2017-10-29 13:44:29 +01:00
Matthias Koefferlein 26ecc6e1a6 Rework: custom/default key bindings
Issue: macro definitions had to be synchronized for
custom key bindings. That's not possible for readonly
macros and breaks the architecture.

Now, there is a default binding and a custom binding:
the macros provide a default binding only and the custom
key binding can override this. This scheme is implemented
consistently, so now the "reset" function of the key
binding editor simply clears the custom binding.

Side effect: reset of individual key bindings is possible.

Another side effect: removing a key binding from an
item with a default one is not possible. Instead, redefine
it.
2017-10-29 13:34:57 +01:00
Matthias Koefferlein 8a8fc18bb0 Use real macro names when generating the menu paths. 2017-10-29 10:47:01 +01:00
Matthias Koefferlein 998ea6df10 RBA::Macro#name and RBA::Action#menu 2017-10-29 09:58:30 +01:00
Matthias Koefferlein 9b7a887ad8 Added GSI support for Action#separator 2017-10-29 01:27:56 +02:00
Matthias Koefferlein c5017c811e Bugfix: avoid data loss in macro editor
The bug was this:
- A macro is opened and modified in the macro IDE
- The directory which the macro is kept in is touched
Effect: the macro was reloaded and the edits were discarded.
2017-10-28 22:37:52 +02:00
Matthias Koefferlein 6ee4ba6a90 Added a default constructor to LayoutView
The use cases for such an object are limited - mainly
for producing layer properties.
2017-10-28 21:14:35 +02:00
Matthias Koefferlein cb29a2d790 Fixed output of stdout to macro IDE log
No additional newlines are inserted on flush -
this enhances compatibility with unit test framework.
2017-10-28 21:13:46 +02:00
Matthias Koefferlein d90593df89 Added a convenience binding for vector+point
This way, the vector/point sum is commutable.
vector+point == point+vector.
2017-10-27 22:02:26 +02:00
Matthias Koefferlein 374816fe0e Tiny issue: border for OASIS writer options page. 2017-10-26 21:25:36 +02:00
Matthias Koefferlein 67b4fb33fc Bugfix: put the tech selector to the right position in the toolbar. 2017-10-24 23:49:16 +02:00