aboutsummaryrefslogtreecommitdiff
path: root/src/Ryujinx.Ava/UI/Views/Input/MotionInputView.axaml
blob: b18324379640cce89468ac48e8cf6e02c42d509f (plain) (blame)
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
<UserControl
    xmlns="https://github.com/avaloniaui"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:ui="clr-namespace:FluentAvalonia.UI.Controls;assembly=FluentAvalonia"
    xmlns:locale="clr-namespace:Ryujinx.Ava.Common.Locale"
    xmlns:viewModels="clr-namespace:Ryujinx.Ava.UI.ViewModels"
    mc:Ignorable="d"
    x:Class="Ryujinx.Ava.UI.Views.Input.MotionInputView"
    x:CompileBindings="True"
    x:DataType="viewModels:MotionInputViewModel"
    Focusable="True">
    <Grid Margin="10">
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto" />
            <RowDefinition />
        </Grid.RowDefinitions>
        <StackPanel Orientation="Vertical">
            <StackPanel
                Orientation="Horizontal"
                HorizontalAlignment="Center">
                <TextBlock
                    Margin="0"
                    HorizontalAlignment="Center"
                    Text="{locale:Locale ControllerSettingsMotionGyroSensitivity}" />
                <Slider
                    Margin="0,-5,0,-5"
                    Width="150"
                    MaxWidth="150"
                    TickFrequency="0.01"
                    IsSnapToTickEnabled="True"
                    Maximum="100"
                    Minimum="0"
                    Value="{Binding Sensitivity, Mode=TwoWay}" />
                <TextBlock
                    HorizontalAlignment="Center"
                    Margin="5, 0"
                    Text="{Binding Sensitivity, StringFormat=\{0:0\}%}" />
            </StackPanel>
            <StackPanel
                Orientation="Horizontal"
                HorizontalAlignment="Center">
                <TextBlock
                    Margin="0"
                    HorizontalAlignment="Center"
                    Text="{locale:Locale ControllerSettingsMotionGyroDeadzone}" />
                <Slider
                    Margin="0,-5,0,-5"
                    Width="150"
                    MaxWidth="150"
                    TickFrequency="0.01"
                    IsSnapToTickEnabled="True"
                    Maximum="100"
                    Minimum="0"
                    Value="{Binding GyroDeadzone, Mode=TwoWay}" />
                <TextBlock
                    VerticalAlignment="Center"
                    Margin="5, 0"
                    Text="{Binding GyroDeadzone, StringFormat=\{0:0.00\}}" />
            </StackPanel>
            <Separator
                Height="1"
                Margin="0,5" />
            <CheckBox
                Margin="5"
                IsChecked="{Binding EnableCemuHookMotion}">
                <TextBlock
                    Margin="0,3,0,0"
                    VerticalAlignment="Center"
                    Text="{locale:Locale ControllerSettingsMotionUseCemuhookCompatibleMotion}" />
            </CheckBox>
        </StackPanel>
        <Border
            Grid.Row="1"
            Padding="20,5"
            BorderBrush="{DynamicResource ThemeControlBorderColor}"
            BorderThickness="1"
            CornerRadius="5"
            HorizontalAlignment="Stretch">
            <Grid VerticalAlignment="Top">
                <Grid.RowDefinitions>
                    <RowDefinition Height="Auto" />
                    <RowDefinition Height="*" />
                </Grid.RowDefinitions>
                <StackPanel
                    Grid.Row="1"
                    HorizontalAlignment="Center"
                    VerticalAlignment="Center"
                    Orientation="Vertical">
                    <StackPanel
                        HorizontalAlignment="Center"
                        VerticalAlignment="Center"
                        Orientation="Horizontal">
                        <TextBlock
                            Margin="5"
                            HorizontalAlignment="Center"
                            VerticalAlignment="Center"
                            Text="{locale:Locale ControllerSettingsMotionServerHost}" />
                        <TextBox
                            Height="30"
                            MinWidth="100"
                            MaxWidth="100"
                            HorizontalAlignment="Center"
                            VerticalAlignment="Center"
                            Text="{Binding DsuServerHost, Mode=TwoWay}" />
                        <TextBlock
                            Margin="5"
                            HorizontalAlignment="Center"
                            VerticalAlignment="Center"
                            Text=":" />
                        <TextBox
                            Height="30"
                            HorizontalAlignment="Center"
                            VerticalAlignment="Center"
                            Text="{Binding DsuServerPort, Mode=TwoWay}" />
                    </StackPanel>
                    <StackPanel Orientation="Vertical">
                        <Grid>
                            <Grid.RowDefinitions>
                                <RowDefinition />
                                <RowDefinition />
                            </Grid.RowDefinitions>
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition />
                                <ColumnDefinition />
                            </Grid.ColumnDefinitions>
                            <TextBlock
                                Margin="0,10,0,0"
                                VerticalAlignment="Center"
                                Text="{locale:Locale ControllerSettingsMotionControllerSlot}" />
                            <ui:NumberBox
                                Grid.Row="0"
                                Grid.Column="1"
                                Name="CemuHookSlotUpDown"
                                SmallChange="1"
                                LargeChange="1"
                                Maximum="4"
                                Minimum="0"
                                Value="{Binding Slot}" />
                            <TextBlock
                                Margin="0,10,0,0"
                                Grid.Row="1"
                                Grid.Column="0"
                                VerticalAlignment="Center"
                                Text="{locale:Locale ControllerSettingsMotionRightJoyConSlot}" />
                            <ui:NumberBox
                                Grid.Row="1"
                                Grid.Column="1"
                                Name="CemuHookRightJoyConSlotUpDown"
                                SmallChange="1"
                                LargeChange="1"
                                Maximum="4"
                                Minimum="0"
                                Value="{Binding AltSlot}" />
                        </Grid>
                    </StackPanel>
                    <CheckBox
                        HorizontalAlignment="Center"
                        IsChecked="{Binding MirrorInput, Mode=TwoWay}">
                        <TextBlock
                            HorizontalAlignment="Center"
                            Text="{locale:Locale ControllerSettingsMotionMirrorInput}" />
                    </CheckBox>
                </StackPanel>
            </Grid>
        </Border>
    </Grid>
</UserControl>