Types/LoupeDeck.Profile/get_Controls.ps1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
$placesWithControls = 
    @(
        $this.layout
        $this.layout.layoutModes
    )

foreach ($controlHolder in $placesWithControls) {
    foreach ($layoutProperty in $controlHolder.psobject.properties) {
        if ($layoutProperty.Name -like '*Pages') {
            foreach ($v in $layoutProperty.Value) {
                if ($v.PressAction) {
                    $v.PressAction
                }
                if ($v.RotateAction) {
                    $v.RotateAction
                }
                
                if ($v.controls) {
                    foreach ($ctrl in $v.controls) {
                        if ($ctrl.PressAction) {
                            $ctrl.PressAction
                        }
                        if ($ctrl.RotateAction) {
                            $ctrl.RotateAction
                        }
                    }
                }
            }
        }
    }
}