paul_cardinale
-
Posts
84 -
Joined
-
Last visited
-
Days Won
11
Content Type
Profiles
Forums
Downloads
Gallery
Posts posted by paul_cardinale
-
-
UpdateState Illustration
I think I've finalized my example for the XNode UpdateState ability.
This is a very important ability. Failure to properly manage the update process can have dire consequences.
-
Submitter
-
Submitted05/14/2019
-
Category
-
LabVIEW Version2018
-
License TypeBSD (Most common)
- 1
-
-
When you are building a source distribution, if you run out of disk space while it's trying to write an XNode ability, it will throw Error 4 (End of file encountered), which is confusing. It should throw Error 9, disk full.
-
I've discovered that it's best not to put XNodes inside of XNodes (watch out for the NI XNodes like the Error Ring).
If VI "A" depends on XNode "B", and XNode "B" depends on XNode "C",
then if you save VI "A" for a previous version of LabVIEW,
within that previous version, all instances of XNode "C" will be broken.
The attached tool will dig through an XNode looking for dependencies on other XNodes. -
paul_cardinale_xnodes-1.2.0.6.vip
Here are some of my XNodes, packaged by Brian Hoover.
-
Submitter
-
Submitted04/15/2019
-
Category
-
LabVIEW Version2018
-
License TypeBSD (Most common)
-
-
- Popular Post
- Popular Post
Try this.
- 2
- 1
-
This works, but it uses a private property.
- 1
-
Just set the default value of the control.
-
As far as I can tell, lvstring.rsc is the only thing that contains "APP_SC_OPEN_EDITOR_WIZARD".
-
A long time ago (maybe around LV 7) I created a VI that was just a set of property nodes: One for every class (that I knew of), each node having every possible property. I think that when I created it, that property wasn't deprecated.
- 1
-
10 hours ago, flarn2006 said:
Well if someone causes problems with it, after coming across it in the way I described that doesn't give any kind of warning, wouldn't NI be obligated to provide support?
And that support would likely consist of: "Don't try to use that thing. It's broken".
In general, there isn't an obligation to support undocumented features.
-
Is there really a need for that thing? If so, it wouldn't be very hard to create it as an XControl .
-
Have you ever wanted to create an XControl that has a Latching mechanical action? For a long time I thought it was impossible because there's no event that occurs when the block diagram terminal is read. But it can be done by launching a background task that monitors the value in the wire connected to the terminal. See attachment.
-
The context help for the "RemoveXnode" method says "Removes the XNode from the diagram. The contents of the diagram of the XNode are merged with the diagram"
However if you try it, it may or may not work. That's because this method just calls the "ReplaceSelf" ability; so if an XNode doesn't have a "ReplaceSelf" ability, the "RemoveXnode" method will do nothing.
So if you want your XNode to work with the "RemoveXNode" method, you must create a "ReplaceSelf" ability. Fortunately doing so is very trivial: Your ReplaceSelf ability only has to call the "GenerateCode" Ability; like this:
Paul Cardinale
P.S. Note that the "ReplaceSelf" ability of some NI Xnodes doesn't work properly. For instance if you call "RemoveXNode" on the "Match Regular Expression" function, it will make a mess, breaking the VI.
- 2
-
There's a similar (and probably related) bug when setting boolean text attributes manually: If you select a portion of the boolean text, then use the Font menu to change something (e.g. the color), it will change all of the text, not just the selected part. This bug showed up sometime around LV2008; it was fixed in one of the later versions; then it was un-fixed, and we still have it today. You can get around it by making floating text and setting it the way you want, then cut-and-paste into the boolean text. (I haven't tried programmatic cut-and-paste; maybe that would work.)
-
- Popular Post
- Popular Post
-
I want to set a property item in a Property node. For properties that have a single ID, I can get this method to work:
For example, setting a property item for a Control property node to "Label" simply requires the ID string "6332005"; yielding:
However many properties require more that one ID. For instance: requires "6332005" (Label), and "632d800" (text).
I can't find a way to set a property item to a property that has such multiple levels.
Does anyone know how to do this?
Paul Cardinale
-
Here is an improved version: The Method Menu is now hierarchal instead of flat.
- 1
-
Can't open a .rar. Sorry.
-
Unrestricted Invoke Node.xnode
One of the difficulties with editing XNodes without the license is that invoke nodes for the XNode class don't show any methods.
This XNode acts pretty much like a real Invoke node, but it allows access to all possible methods.
You can also right-click and replace it with a real Invoke node.
-
Submitter
-
Submitted11/06/2018
-
Category
-
LabVIEW Version2018
-
License TypeBSD (Most common)
- 1
-
-
I have determined that none of the existing abilities is called when the .xnode is placed on the palette.
I'm guessing that either it needs another ability that I haven't got, or more likely, a property of an ability, or of the .xnode needs to be different.
-
Something like this.
-
I created a handy XNode and placed in on the Functions palette (the same way you place a .VI). The icon on the palette was the XNode's icon, and everything was OK. Later I added the "Help" ability; then the icon on the Functions palette became the icon of the "Help" ability VI. Furthermore, I could no longer place the XNode on a palette. Deleting the "Help" ability returns everything to normal. This happens with both LV 2017 & 2018. I haven't been able to figure out how to correct this. My guess is that there's something about my "Help" ability that's causing errors inside the Functions palette; but what? I thought maybe it was because I had an empty path in the Help cluster, but adding a path to a .html file didn't help. I know it's possible to place an XNode with help on the Functions palette, because you can to that with the Error Ring. I looked inside "Error Ring.xnode" and saw some items in there that weren't in my XNode; I tried adding equivalent items, but that didn't help.
Does anyone have any ideas on how to fix this?
-
Does anybody know how to use the AddLinkerReference method of an XNode?
I'm trying to make an app specific XNode that will always live inside a Case Structure, and I want the XNode to be notified when there are changes to the Case Structure (specifically the Selector Label).
This method (along with the OnRefeeChange ability) looks like it might be what I need, but I don't know how to use it.
Any help would be appreciated.
-
While using it, I decided I needed one more feature: Placing the XNode on the cursor so I could drop it on a BD.
Here'e the latest version.
- 1
Programmatically Changing Strictly Typed VI ref Constant or Control for Open VI Reference
in VI Scripting
Posted
Is this what you are trying to di?
Scripter.vi Template.vi