LabVIEW Idea Exchange

cancel
Showing results for 
Search instead for 
Did you mean: 
Intaris

Page up and Page down navigation of Block Diagram

Status: New

I find myself intuitively reaching for Page up and Page down when trying to move up and down through a Block diagram.

 

I think it would be cool if we coulf "scroll" up a window height at a time when pressing Page Up.  Of course this should work also for the FP, event hough the uses there are probably less.

 

And yes, the caveat that code shouldn't require this is till valid and proud we are of all of that but we allow block diagram sizes of what, 16k x 16k or something?  Wee could use this help.

 

Shane.

16 Comments
Gollum
Member

Why not put it as an option with the default set to off?  Also, personally I usually hit this key in frustration every time I'm dealing with a rather large type def or class data.  Especially if I'm trying to reorder something at the bottom to put it first.... very annoying that I actually have to scroll all the way down.

d.w.b
Member

Regarding boos for "tall" code, I use comment numbers in code then create a large comment below with lengthy description for each; sometimes too large even when maximized.

 

Regarding scroll amount, it should match what the mouse does when clicked above/below the scroll bar slide handle.


Regarding horizontal movement, both mouse wheel and page keys would benefit from having a Shift+ operation (as I've seen in a PCB viewer). See https://www.google.com/search?q=horizontal+scroll+shortcut

 

While at it, support Home and End keys to move to the top or bottom-most object, Shift+ for left or right-most.

SteenSchmidt
Trusted Enthusiast

Free labels (comments) are close to never necessary in LabVIEW code, other than for temporary review or collaboration bookmarks. Try using all the other built-in ways we have to explain our code:

 

- SubVIs with their icons, descriptions, and terminal types and labels to explain their function.

- Structure labels.

- Clear naming of terminals and constants.

 

It should be clear from your code what steps 1, 2, 3, 4 etc. are doing, no need to add text labels to each and every node. If you have some non-obvious algorithm on your block diagram, put it in a subVI and describe it with that. That also makes your code more modular for later maintenance and reuse. It's not just an opinion, it's a proven quality trait.

CLA, CTA, CLED & LabVIEW Champion
d.w.b
Member

> Free labels (comments) are close to never necessary in LabVIEW code...

 

Necessary? No need is literally true but practically false. I'd like to know what is fundamentally wrong with them.

 

> Try using all the other built-in ways we have to explain our code...

 

I use VI Properties Documentation for the "what" but it is awkward to access and keep maintained in a small modal dialog. I don't want code bloated by large labels with wires autorouting through them.

 

> It should be clear from your code what steps 1, 2, 3, 4 etc. are doing...

 

That reason implies the next developer must be as knowledgeable, figure it out, and read my mind. You also miss a fundamental purpose of comments, whys, caveats, background, etc. This includes hyperlinks to helpful webpages, what would happen without this function, non-obvious side-effects of the function, etc. One context is LabVIEW scripting.

 

That said, this is not the place to argue your point. May the most kudos win or send me a PM with your proof or a link to back it up.

wiebe@CARYA
Knight of NI

My Wacom pen doesn't have a mouse wheel.

 

I would need scrolling in two situations:

1) Huge code from others.

2) Small windows (when I have a few VIs open on a small screen)

 

I made a AutoHotKey script for this once (using AWSZ for  moving), but although it worked, I couldn't stop it from interfering with normal key functions.

 

wiebe@CARYA
Knight of NI

Page up and page down are problematic (they simply don't work). YMMV...

 

This AHK script makes ALT+A, S, W, Z to move left, right, up and down (FP, BD, Project) , and ALT+D, C to scroll though cases (while the mouse is in a multi frame structure):

 

Spoiler
; ALT + A,S,W or Z window movement in LabVIEW
; (tested in LV13 and LV20 on Win10)

; === Don't change anything if no LabVIEW window in focus ===
#NoEnv
SendMode Input

; === Change behavior for LabVIEW windows ===
#IfWinActive ahk_class LVDChild

!S::Send {WheelRight} ; ALT + S -> scroll window
!A::Send {WheelLeft} ; ALT + A -> scroll window
!Z::Send {WheelDown} ; ALT + Z -> scroll window
!W::Send {WheelUp} ; ALT + W -> scroll window
!D::Send ^{WheelUp} ; ALT + D -> scroll through cases
!C::Send ^{WheelDown} ; ALT + C -> scroll through cases