Similar to the StandardMaterial reference tables I created, here’s a table that roughly groups Button properties by purpose. It helps me quickly find relevant properties on the Button GUI control.
| Visual | Position & Size & Layout | Interactivity | Programming |
|---|---|---|---|
| BASIC | SIZE | ACTION | (c) constructor |
| (P) gradient | (P) width | (P) onFocusObservable | (M) CreateImageButton |
| (P) color | (P) widthInPixels | (P) onBlurObservable | (M) CreateImageOnlyButton |
| (P) alpha | (P) horizontalAlignment | (P) onEnabledStateChangedObservable | (M) CreateImageWithCenterTextButton |
| (P) AllowAlphaInheritance | (P) adaptWidthToChildren | (P) onIsVisibleChangedObservable | (M) CreateSimpleButton |
| (P) thickness | (P) AddHeader | ||
| (P) background | (P) height | (P) isHighlighted | |
| (P) backgroundGradient | (P) heightInPixels | (P) isVisible | (P) metadata |
| (P) verticalAlignment | (P) isEnabled | (P) name? | |
| ROUNDED | (P) adaptHeightToChildren | (P) uniqueId | |
| (P) cornerRadius | (M) focus | (P) useBitmapCache | |
| (P) cornerRadiusW | (P) fixedRatio | (M) blur | (P) Accessors |
| (P) cornerRadiusX | (P) fixedRatioMasterIsWidth | (M) keepsFocusWith | (P) renderToIntermediateTexture |
| (P) cornerRadiusY | (P) isFocusInvisible | (P) host | |
| (P) cornerRadiusZ | (M) getDimension | (P) isHitTestVisible | |
| (M) isDimensionFullyDefined | (M) _flagDescendantsAsMatrixDirty | ||
| INTERACTION VISUALS | POINTER | (M) clone | |
| (P) hoverCursor | POSITION | (P) onPointerClickObservable | (M) dispose |
| (P) focusedColor | (P) top | (P) onPointerDownObservable | |
| (P) disabledColor | (P) topInPixels | (P) onPointerEnterObservable | (P) typeName |
| (P) disabledColorItem | (P) left | (P) onPointerMoveObservable | (M) getAscendantOfClass |
| (P) highlightColor | (P) leftInPixels | (P) onPointerOutObservable | (M) getClassName |
| (P) highlightLineWidth | (M) moveToVector3 | (P) onPointerUpObservable | |
| (M) linkWithMesh | (P) onWheelObservable | (M) isReady | |
| SHADOW | (P) linkOffsetX | (P) isPointerBlocker | |
| (P) shadowBlur | (P) linkOffsetXInPixels | (P) delegatePickingToChildren | (M) markAllAsDirty |
| (P) shadowColor | (P) linkOffsetY | (M) _onPointerPick | (M) markAsDirty |
| (P) shadowOffsetX | (P) linkOffsetYInPixels | ||
| (P) shadowOffsetY | (P) linkedMesh | (P) animations | (M) serialize |
| (P) pointerDownAnimation | (M) parse | ||
| TEXT | (A) centerX | (P) pointerEnterAnimation | (M) Parse |
| (P) style | (A) centerY | (P) pointerOutAnimation | |
| (P) fontFamily | (P) pointerUpAnimation | (P) onAfterDrawObservable | |
| (P) fontOffset | (M) getLocalCoordinates | (P) onBeforeDrawObservable | |
| (P) fontSize | (M) getLocalCoordinatesToRef | KEYBOARD | (P) notRenderable |
| (P) fontSizeInPixels | (M) getParentLocalCoordinates | (P) tabIndex | |
| (P) fontStyle | (M) processKeyboard | (P) onControlAddedObservable | |
| (P) fontWeight | PADDING | (P) accessibilityTag | (P) onControlRemovedObservable |
| (M) setPadding | (P) onEnterPressedObservable | (P) onDirtyObservable | |
| CONTROLS HIERARCHY | (M) setPaddingInPixels | (P) onKeyboardEventProcessedObservable | (P) onDisposeObservable |
| (P) textBlock | (P) paddingBottom | (P) onAccessibilityTagChangedObservable | |
| (P) image | (P) paddingBottomInPixels | (P) isSerializable | |
| (P) paddingLeft | (P) isDirty | ||
| (M) addControl | (P) paddingLeftInPixels | (P) isReadOnly | |
| (M) clearControls | (P) paddingRight | ||
| (M) removeControl | (P) paddingRightInPixels | ||
| (P) paddingTop | |||
| (P) children | (P) paddingTopInPixels | ||
| (P) clipChildren | (P) descendantsOnlyPadding | ||
| (P) clipContent | |||
| (M) contains | ALIGNMENT | ||
| (M) containsControl | (P) HORIZONTAL_ALIGNMENT_CENTER | ||
| (P) HORIZONTAL_ALIGNMENT_LEFT | |||
| (P) parent | (P) HORIZONTAL_ALIGNMENT_RIGHT | ||
| (M) isAscendant | (P) VERTICAL_ALIGNMENT_BOTTOM | ||
| (M) getChildByName | (P) VERTICAL_ALIGNMENT_CENTER | ||
| (M) getChildByType | (P) VERTICAL_ALIGNMENT_TOP | ||
| (M) getDescendants | |||
| (M) getDescendantsToRef | OVERLAP | ||
| (P) overlapDeltaMultiplier? | |||
| POST-LAYOUT | (P) overlapGroup? | ||
| (P) rotation | (P) zIndex | ||
| (P) scaleX | (P) maxLayoutCycle | ||
| (P) scaleY | (P) logLayoutCycleErrors | ||
| (P) transformCenterX | |||
| (P) transformCenterY | |||
| (P) transformedMeasure |