11-01-2018 07:40 AM
wiebe@CARYA wrote:
@iannicholson wrote:
This happens on only one diagram so far, and it's a large VI so it would take me *days* to fix the damage I expect the cleanup feature to cause. I don't have that kind of time available!
You can do partial diagram cleanup (last time I checked, never actually used it). Simply select a suspicious part, and it will only cleanup that part. And you can mark diagrams (e.g. the inside of structures) to skip cleanup actions ("Exclude from diagram cleanup").
So you can be selective in what to cleanup and what not to cleanup...
Of course you can cleanup everything, and if it helps revert. Cleanup 50%, and if it helps, revert. And so on, until you found the real problem(s).
I wonder if scripting can be used to detect this problem. And fix it... Hard to say without at least a few reproducible examples (in other words, post some code).
I knew about those options, and yet I didn't really think to apply them here. Either way, the diagram cleanup has never once given me what I wanted (even on a small SubVI block diagram). It seems like a great tool for beginners, but I've got an established coding style and cleanup doesn't follow the same logic. Granted, I stopped using the cleanup tool in either LabVIEW 2009 or 2013 and haven't really used it since we upgraded to 2017, so maybe the algorithms have improvements that make my arguments moot? Now I have homework!
11-01-2018 09:23 AM
@iannicholson wrote:
wiebe@CARYA wrote:
@iannicholson wrote:
This happens on only one diagram so far, and it's a large VI so it would take me *days* to fix the damage I expect the cleanup feature to cause. I don't have that kind of time available!
You can do partial diagram cleanup (last time I checked, never actually used it). Simply select a suspicious part, and it will only cleanup that part. And you can mark diagrams (e.g. the inside of structures) to skip cleanup actions ("Exclude from diagram cleanup").
So you can be selective in what to cleanup and what not to cleanup...
Of course you can cleanup everything, and if it helps revert. Cleanup 50%, and if it helps, revert. And so on, until you found the real problem(s).
I wonder if scripting can be used to detect this problem. And fix it... Hard to say without at least a few reproducible examples (in other words, post some code).
I knew about those options, and yet I didn't really think to apply them here. Either way, the diagram cleanup has never once given me what I wanted (even on a small SubVI block diagram). It seems like a great tool for beginners, but I've got an established coding style and cleanup doesn't follow the same logic. Granted, I stopped using the cleanup tool in either LabVIEW 2009 or 2013 and haven't really used it since we upgraded to 2017, so maybe the algorithms have improvements that make my arguments moot? Now I have homework!
You are more forgiving that I am. I gave up using the diagram cleanup after trying it exactly twice.
01-16-2019 12:33 PM
I am having a similar issue. I thought about starting a new thread, but thought it might be best to include it here. For this particular project, I am using LabVIEW 2015 SP1. I don't have auto-grow enabled and I also tried using Darren's utility.
My issue is not with using just the arrow keys, but also using the mouse to move anything around. This only happens for one of the VI's in the project. I have an outer while loop with a case statement inside it, your typical state-machine. Inside the case statements are more case statements and other structures. If I select anything that is inside of the outer while loop, regardless of how far deep inside the many nested structures it may be, all structures will grow upon the slightest movement of the select object. Even if there is nothing around it. For example: I can have a case statement that takes up half the screen with nothing inside it except for something as small as a Boolean constant. As soon as I nudge the Boolean constant in any direction by using the arrow keys or using the mouse, the whole screen freezes for a split second and then all case, for loops, while loops, etc. expand. This also happens if I place anything new in the VI within the borders of the outer while loop. If I place or select anything that is outside of the outer while loop and move it around, everything works as expected.
Unfortunately, I can no longer work with this VI. I might try experimenting with a few more things. Luckily, I do have backup copies of my work and have a backup before this issue started. Unfortunately, There have been several changes since that backup and I will be using up a lot of valuable time in order to get back to where I was before this problem started.
Any suggestions or possible solutions would be great.
-Rick
01-16-2019 02:22 PM
Well, I did the unthinkable. I did what was suggested to solve the problem knowing what the outcome would be. I did Edit->Clean up diagram. Yes, it did solve my problem, but it spread my block diagram about 3 times as wide as it was before. I don't know what is worse, trying to update my most recent working backup or shrinking my now over stretched block diagram. Since I am under time constraints, I will deal with accepting the block diagram as is and finish the project. Hopefully, later I will have time to go back and manually cleanup the block diagram.
-Rick
01-16-2019 02:34 PM - edited 01-16-2019 02:52 PM
@rpage wrote:
Well, I did the unthinkable. I did what was suggested to solve the problem knowing what the outcome would be. I did Edit->Clean up diagram. Yes, it did solve my problem, but it spread my block diagram about 3 times as wide as it was before. I don't know what is worse, trying to update my most recent working backup or shrinking my now over stretched block diagram. Since I am under time constraints, I will deal with accepting the block diagram as is and finish the project. Hopefully, later I will have time to go back and manually cleanup the block diagram.
-Rick
Rick, if it's not too late to recover your original version, did you try what I mentioned in my post above (https://forums.ni.com/t5/LabVIEW/Using-Arrow-Keys-cause-my-block-diagram-to-grow/m-p/3856101/highlig...)? This fixed the problem for me without having to use the cleanup feature. I still think there's an underlying bug but this got me going again.
(EDIT: wrong link)
01-16-2019 03:54 PM
@iannicholson wrote:
@rpage wrote:
Well, I did the unthinkable. I did what was suggested to solve the problem knowing what the outcome would be. I did Edit->Clean up diagram. Yes, it did solve my problem, but it spread my block diagram about 3 times as wide as it was before. I don't know what is worse, trying to update my most recent working backup or shrinking my now over stretched block diagram. Since I am under time constraints, I will deal with accepting the block diagram as is and finish the project. Hopefully, later I will have time to go back and manually cleanup the block diagram.
-Rick
Rick, if it's not too late to recover your original version, did you try what I mentioned in my post above (https://forums.ni.com/t5/LabVIEW/Using-Arrow-Keys-cause-my-block-diagram-to-grow/m-p/3856101/highlig...)? This fixed the problem for me without having to use the cleanup feature. I still think there's an underlying bug but this got me going again.
(EDIT: wrong link)
Ian, It was the first thing I tried. Unfortunately, it did not work. I am finding that it won't be too difficult for me to bring the items on the far right in to compact my diagram.
Thanks.
01-17-2019 02:09 AM
@rpage wrote:
Yes, it did solve my problem, but it spread my block diagram about 3 times as wide as it was before.
Does CTRL+ALT+mouse drag work in 2015? If so, this will be inconvenient, but fast to fix.
01-17-2019 10:28 AM
wiebe@CARYA wrote:
@rpage wrote:
Yes, it did solve my problem, but it spread my block diagram about 3 times as wide as it was before.
Does CTRL+ALT+mouse drag work in 2015? If so, this will be inconvenient, but fast to fix.
It does! It's such a time saver, too.