11-17-2009 08:15 AM - edited 11-17-2009 08:17 AM
Hello
I was wondering if it is possible to create a Quick Drop plugin with an LLB type structure. Similar to what you can do with the menu items - have a text file that points to the VI to run.
(I hope that makes sense)
This would be cool for distributing code.
Look forward to hearing if this is possible.
Cheers
JG
11-17-2009 08:43 AM
11-17-2009 09:13 AM
Hi tst
I will try to explain further and I will use JKI's VI Tester package as an example...
One of the component of VI Tester gets install in the Project Folder (aka Tools Pluign Menu) of LabVIEW.
I.e. <LabVIEW>\project\VI Tester folder contains VI Tester.txt, VI Tester.llb and New folder (containing NewTestCase.llb & NewTestSuite.llb)
VI Tester.txt contains the following text:
VI Tester Menu Launch__VI Tester Menu Launch.vi
New
Causing the Tools RTM looks as follows:
Therefore, LabVIEW, working with a plugin, is able to be pointed to a specific VI in an LLB through the text file.
Distributing code for a tool in an LLB is a nice way to include all dependencies for the developer.
Now with respect to Quick Drop - it would be great if I could distribute a LLB file and a txt file and Quick Drop can read the text file and know what top level VI to point to in the LLB should that shortcut get called.
So my question is - Is this possible at the moment?
11-17-2009 09:38 AM
11-17-2009 03:48 PM
That's what I would have suggested...you can place a VI in the [LabVIEW 2009]\resource\dialog\QuickDrop\plugins folder named [char].vi, and that VI will be launched whenever you press Ctrl-[char] while Quick Drop is up. You can have whatever you want inside [char].vi, including calls to other VIs. In fact, my Ctrl-Space-Ctrl-Q shortcut has a static VI Reference to another VI that sits alongside it on disk.
Are you asking for something more? Because I've been thinking about coming up with a more dynamic plug-in mechanism other than having VIs named [char].vi, but I don't have any concrete plans yet.
11-17-2009 05:12 PM
Kudos for replying tst and Darren.
I think the wrapper [char].vi for the llb will suffice for now.
I was trying to see if they was an easy way to avoid a naming collisions on plugins
Darren are you able to elaborate on your ideas for the more dynamic plugins?
One problem I had off the bat was having to rename plugins (I had a.vi then you release a.vi).
I am thinking maybe having a [real-name].vi then some config editor to set up the quick drop to match [char.vi] would be nice?
Maybe Daklu is on to something?
11-18-2009 09:30 AM - edited 11-18-2009 09:31 AM
Hi jgcode,
I'm not sure if this relates to why you posted the VI Tester menu example, but here's some more info you might find interesting:
"VI Tester.txt" is used only for defining the order in which the menu items appear (and can also be used to add separater lines, if needed). "VI Tester Menu Launch__VI Tester Menu Launch.vi" shows up in the menu because it is marked as a top-level VI in an LLB file. Its name shows up as "Test VIs..." because that's its window title.
Bottom line: if "VI Tester.txt" is deleted the "New >>" submenu would appear before the "Test VIs..." menu item.
You can find more info on how this works, here: http://openg.org/docs/Customizing_LabVIEW.pdf
Cheers,
-Jim
11-19-2009 02:59 AM
Always keen to learn something!
Thanks for posting this.
11-19-2009 12:28 PM
jg code wrote:Darren are you able to elaborate on your ideas for the more dynamic plugins?
I'm planning on brainstorming this soon. I was thinking about posting my ideas online somewhere, so it can be sort of a collaborative thing. But time is short...hopefully I can get something started next week.
11-19-2009 07:06 PM
That sounds really cool to post online about it.
I love quick drop and the shortcuts (ctrl + space...) feel so natural to use.