Installing and using the plugin

Download the zip file: ImportLiveCodeHandlerFinder.zip

The seMatchingDefinitions Override Frontscript

The plugin works by inserting a frontscript that overrides an IDE function named seMatchingDefinitions. This function the the location of a handler when you right-click on one in the Script Editor.

The seMatchingDefinitions Override Frontscript

How LiveCode Behaves Without the Plugin

When you right-click on a handler name in the LiveCode Script Editor, LiveCode looks through the stack containing the script's object to find a match. No frontscripts, backscripts or libraryStacks are searched which makes this feature much less useful.

For example, assume I am editing a script in one of my stacks and come across a function named BooleanToTrueFalse that resides in the script of a library stack.

How LiveCode Behaves Without the Plugin

If I right-click on the handler then Go to definition will be disabled. Since the handler isn't defined in any scripts of the stack the object is in LiveCode doesn't find any matches.

How LiveCode Behaves With the Plugin

With the plugin installed Go to definition is enabled because the BooleanToTrueFalse handler definition is located in a stack listed under the libraryStacks.

How LiveCode Behaves With the Plugin

Selecting Go to definition opens the BooleanToTrueFalse handler.

A little bonus...

An extra feature included in the plugin has to do with behaviors. If you double-click on the Behavior label of an object then the behavior script will open in the script editor.

A little bonus...

3 Comments

Mark Laffoon

This looks great! Any idea why I can't get it to work in LiveCode 6.5? Installed as a regular plugin, shows up in the project browser, doesn't seem to work though.

Trevor DeVore

Mark - sorry I missed this comment. I am using the plugin without any problems in 6.5. Can you tell me what you are trying to do that isn't working as you would expect?

Mark Laffoon

And I missed your reply! Turns out the plugin works as expected. I was working on some 3rd party libraries that were not correctly loading into memory. One I fixed that your plugin became a godsend! Thanks!

Add your comment

E-Mail me when someone replies to this comment