LabVIEW Idea Exchange

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

Cluster AllObjs[] Property (Z-order)

Status: Declined
Use the Controls[] property. The Controls[] property is ordered by tab order. The AllObjs[] property is ordered by z-plane. The AllObjs[] includes decorations, which have no tab order, so AllObjs[] uses z-plane. This is, by the way, the way to get the items in z-plane order. Removing it would mean there was no way to get z-plane order. The difference between these two properties is very deliberate.

This property use the Z-order to output the array of references to objects in the cluster

 

 

                                     SR1.png

 

                                                       This does not make sense !

 

References to objects in the cluster in a Z-order is completely useless for programmers

 

 

                               this array of References should be in the "Cluster order"  

                                                                      pouce_levé.gif

 

 

9 Comments
PaulG.
Active Participant

I've never used AllObjs[] but I agree z-order does not make sense when Controls[] array elements are in cluster order.

PaulG.
Retired
ouadji
Trusted Enthusiast

"I've never used AllObjs[] but I agree z-order does not make sense when Controls[] array elements are in cluster order"

 

Thank you PaulG ... Indeed it does seem obvious !

AristosQueue (NI)
NI Employee (retired)

Rejected.

 

Use the Controls[] property. The Controls[] property is ordered by tab order. The AllObjs[] property is ordered by z-plane. The AllObjs[] includes decorations, which have no tab order, so AllObjs[] uses z-plane. This is, by the way, the way to get the items in z-plane order. Removing it would mean there was no way to get z-plane order. The difference between these two properties is very deliberate.

Darin.K
Trusted Enthusiast

z-order is standard for all arrays of object references on a pane, panel, cluster or page of a tab.  I am happier to know I can look at any AllObjs[] property and know what to expect than I would be if an exception were made for this case.

 

Relying on either ordering is a bad idea in my book, and I will guarantee that you will be breaking code with this change.  Not my code, at least....

 

Edit:  no worries apparently.

ouadji
Trusted Enthusiast

@AristosQueue :

 

thank you for this (very good) explanation.

I didn't know the "Cluster/Controls[]" property.

Indeed, I just checked, Controls[] property is ordered by tab order.

this idea ... is a big mistake on my part. (sorry) Smiley Frustrated

AristosQueue (NI)
NI Employee (retired)

> is a big mistake on my part

 

Not a problem. Keep the ideas coming.

tst
Knight of NI Knight of NI
Knight of NI

OK, now I realize why I voted for it. I confused it with the Selection List[] property, which has two levels of sorting, the secondary being by Z order, and which always felt wrong. At least now I know why that is.


___________________
Try to take over the world!
ouadji
Trusted Enthusiast

I didn't know it was possible to remove a kudo.  Smiley Surprised

JordanG
NI Employee (retired)
Status changed to: Declined
Use the Controls[] property. The Controls[] property is ordered by tab order. The AllObjs[] property is ordered by z-plane. The AllObjs[] includes decorations, which have no tab order, so AllObjs[] uses z-plane. This is, by the way, the way to get the items in z-plane order. Removing it would mean there was no way to get z-plane order. The difference between these two properties is very deliberate.