QCAD Bugtracker

  • Status Closed
  • Percent Complete
  • Task Type Feature Request
  • Category ECMAScript
  • Assigned To
  • Operating System All
  • Severity Low
  • Priority Very Low
  • Reported Version 3 TP1
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: QCAD Bugtracker
Opened by Peter - 25.05.2011
Last edited by Andrew - 25.05.2011

FS#103 - Runtime reload script

As of TP1, a script once loaded into the runtime, does reflect changes to the file it was loaded from only after a restart of the whole of QCAD. This adds a considerable time overhead to developing scripts. Therefore I want to suggest a reload mechanism, that works kind of like the one known from a web browser.

As there is no clear separation between users custom scripts and ribbonsoft supplied scripts, checking the modification time for every access to any script might prove a performance hit.

Possibly a user script can be written, to invalidate another certain script and have the runtime reload it from file? I could add that to my menu.

Or as some magic, that can be written to “MyAction.init()”?

Closed by  Andrew
25.05.2011 09:51
Reason for closing:  Implemented
Additional comments about closing:  

Can be achieved by the script itself (see comment)

Andrew commented on 25.05.2011 09:51

You can achieve this by unloading your class at the end of the script by setting it to undefined.


"../BaseClass.js""My Message..."// unload class. the class will be loaded again on every execution:
"&My Tool""/MyTool.js""/MyTool.svg"
Peter commented on 27.05.2011 13:40

Thank you Andrew, this works with the example provided. Yet, as soon as a dialogue is execed() from the script, invalidating the class no longer works; then it will not run again at all. Possibly some ressources have to be freed?


Available keyboard shortcuts


Task Details

Task Editing