Skip to content

Commit 6593d75

Browse files
committed
Set label in MouseButtonComboControl
1 parent d850b6b commit 6593d75

5 files changed

Lines changed: 55 additions & 62 deletions

File tree

YMouseButtonControl.Core/ViewModels/LayerViewModel/LayerViewModel.cs

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,24 @@ public LayerViewModel(
1414
IProfilesService profilesService
1515
)
1616
{
17-
Mb1ComboVm = mbComboViewModelFactory.CreateWithMouseButton(MouseButton.Mb1);
18-
Mb2ComboVm = mbComboViewModelFactory.CreateWithMouseButton(MouseButton.Mb2);
19-
Mb3ComboVm = mbComboViewModelFactory.CreateWithMouseButton(MouseButton.Mb3);
20-
Mb4ComboVm = mbComboViewModelFactory.CreateWithMouseButton(MouseButton.Mb4);
21-
Mb5ComboVm = mbComboViewModelFactory.CreateWithMouseButton(MouseButton.Mb5);
22-
MwuComboVm = mbComboViewModelFactory.CreateWithMouseButton(MouseButton.Mwu);
23-
MwdComboVm = mbComboViewModelFactory.CreateWithMouseButton(MouseButton.Mwd);
24-
MwlComboVm = mbComboViewModelFactory.CreateWithMouseButton(MouseButton.Mwl);
25-
MwrComboVm = mbComboViewModelFactory.CreateWithMouseButton(MouseButton.Mwr);
17+
Mb1ComboVm = mbComboViewModelFactory.CreateWithMouseButton(MouseButton.Mb1, "Left Button");
18+
Mb2ComboVm = mbComboViewModelFactory.CreateWithMouseButton(MouseButton.Mb2, "Right Button");
19+
Mb3ComboVm = mbComboViewModelFactory.CreateWithMouseButton(
20+
MouseButton.Mb3,
21+
"Middle Button"
22+
);
23+
Mb4ComboVm = mbComboViewModelFactory.CreateWithMouseButton(
24+
MouseButton.Mb4,
25+
"Mouse Button 4"
26+
);
27+
Mb5ComboVm = mbComboViewModelFactory.CreateWithMouseButton(
28+
MouseButton.Mb5,
29+
"Mouse Button 5"
30+
);
31+
MwuComboVm = mbComboViewModelFactory.CreateWithMouseButton(MouseButton.Mwu, "Wheel Up");
32+
MwdComboVm = mbComboViewModelFactory.CreateWithMouseButton(MouseButton.Mwd, "Wheel Down");
33+
MwlComboVm = mbComboViewModelFactory.CreateWithMouseButton(MouseButton.Mwl, "Wheel Left");
34+
MwrComboVm = mbComboViewModelFactory.CreateWithMouseButton(MouseButton.Mwr, "Wheel Right");
2635

2736
this.WhenAnyValue(x => x.Mb1ComboVm.SelectedBtnMap)
2837
.WhereNotNull()

YMouseButtonControl.Core/ViewModels/LayerViewModel/MouseComboViewModel.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ public class MouseComboViewModel : ReactiveObject, IMouseComboViewModel, IDispos
3434
private readonly IDisposable? _mWheelDisposable;
3535
private IBrush _backgroundColor;
3636
private readonly Timer _wheelTimer = new() { Interval = 200, AutoReset = false };
37+
private string? _labelTxt;
3738

3839
public MouseComboViewModel(
3940
IProfilesService profilesService,
@@ -180,6 +181,12 @@ public BaseButtonMappingVm? SelectedBtnMap
180181
set => this.RaiseAndSetIfChanged(ref _selectedBtnMap, value);
181182
}
182183

184+
public string? LabelTxt
185+
{
186+
get => _labelTxt;
187+
set => this.RaiseAndSetIfChanged(ref _labelTxt, value);
188+
}
189+
183190
public ReadOnlyObservableCollection<BaseButtonMappingVm> BtnMappings => _btnMappings;
184191

185192
public ReactiveCommand<Unit, Unit> UserClickedEditSettingButton { get; set; }

YMouseButtonControl.Core/ViewModels/LayerViewModel/MouseComboViewModelFactory.cs

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ namespace YMouseButtonControl.Core.ViewModels.LayerViewModel;
77

88
public interface IMouseComboViewModelFactory
99
{
10-
IMouseComboViewModel CreateWithMouseButton(MouseButton mouseButton);
10+
IMouseComboViewModel CreateWithMouseButton(MouseButton mouseButton, string labelTxt);
1111
}
1212

1313
public class MouseComboViewModelFactory(
@@ -17,12 +17,15 @@ public class MouseComboViewModelFactory(
1717
IShowSimulatedKeystrokesDialogService showSimulatedKeystrokesDialogService
1818
) : IMouseComboViewModelFactory
1919
{
20-
public IMouseComboViewModel CreateWithMouseButton(MouseButton mouseButton) =>
20+
public IMouseComboViewModel CreateWithMouseButton(MouseButton mouseButton, string labelTxt) =>
2121
new MouseComboViewModel(
2222
profilesService,
2323
mouseListener,
2424
themeService,
2525
mouseButton,
2626
showSimulatedKeystrokesDialogService
27-
);
27+
)
28+
{
29+
LabelTxt = labelTxt,
30+
};
2831
}

YMouseButtonControl/Views/LayerView.axaml

Lines changed: 20 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -13,17 +13,17 @@
1313
<layerViewModel:LayerViewModel />
1414
</Design.DataContext>
1515

16-
<UserControl.Styles>
17-
<Style Selector="TabItem">
18-
<Setter Property="FontSize" Value="14"/>
19-
<Setter Property="FontWeight" Value="Normal"/>
20-
<Setter Property="VerticalAlignment" Value="Top" />
21-
<Setter Property="MinHeight" Value="20" />
22-
</Style>
23-
<Style Selector="Label">
24-
<Setter Property="VerticalAlignment" Value="Center"></Setter>
25-
</Style>
26-
</UserControl.Styles>
16+
<UserControl.Styles>
17+
<Style Selector="TabItem">
18+
<Setter Property="FontSize" Value="14" />
19+
<Setter Property="FontWeight" Value="Normal" />
20+
<Setter Property="VerticalAlignment" Value="Top" />
21+
<Setter Property="MinHeight" Value="20" />
22+
</Style>
23+
<Style Selector="Label">
24+
<Setter Property="VerticalAlignment" Value="Center"></Setter>
25+
</Style>
26+
</UserControl.Styles>
2727

2828
<TabControl Padding="0">
2929
<TabItem Header="Layer 1">
@@ -35,42 +35,15 @@
3535
<Button Grid.Column="3" IsEnabled="False">Swap</Button>
3636
<Button Grid.Column="4" IsEnabled="False">Reset</Button>
3737
</Grid>
38-
<Grid Grid.Row="1" ColumnDefinitions="150,*" Margin="5">
39-
<Label Content="Left Button" />
40-
<views:MouseButtonComboControl Grid.Column="1" DataContext="{Binding Mb1ComboVm}" />
41-
</Grid>
42-
<Grid Grid.Row="2" ColumnDefinitions="150,*" Margin="5">
43-
<Label Content="Right Button" />
44-
<views:MouseButtonComboControl Grid.Column="1" DataContext="{Binding Mb2ComboVm}" />
45-
</Grid>
46-
<Grid Grid.Row="3" ColumnDefinitions="150,*,Auto" Margin="5">
47-
<Label Content="Middle Button" />
48-
<views:MouseButtonComboControl Grid.Column="1" DataContext="{Binding Mb3ComboVm}" />
49-
</Grid>
50-
<Grid Grid.Row="4" ColumnDefinitions="150,*,Auto" Margin="5">
51-
<Label Content="Mouse Button 4" />
52-
<views:MouseButtonComboControl Grid.Column="1" DataContext="{Binding Mb4ComboVm}" />
53-
</Grid>
54-
<Grid Grid.Row="5" ColumnDefinitions="150,*,Auto" Margin="5">
55-
<Label Content="Mouse Button 5" />
56-
<views:MouseButtonComboControl Grid.Column="1" DataContext="{Binding Mb5ComboVm}" />
57-
</Grid>
58-
<Grid Grid.Row="6" ColumnDefinitions="150,*,Auto" Margin="5">
59-
<Label Content="Wheel Up" />
60-
<views:MouseButtonComboControl Grid.Column="1" DataContext="{Binding MwuComboVm}" />
61-
</Grid>
62-
<Grid Grid.Row="7" ColumnDefinitions="150,*,Auto" Margin="5">
63-
<Label Content="Wheel Down" />
64-
<views:MouseButtonComboControl Grid.Column="1" DataContext="{Binding MwdComboVm}" />
65-
</Grid>
66-
<Grid Grid.Row="8" ColumnDefinitions="150,*,Auto" Margin="5">
67-
<Label Content="Tilt Wheel Left" />
68-
<views:MouseButtonComboControl Grid.Column="1" DataContext="{Binding MwlComboVm}" />
69-
</Grid>
70-
<Grid Grid.Row="9" ColumnDefinitions="150,*,Auto" Margin="5">
71-
<Label Content="Tilt Wheel Right" />
72-
<views:MouseButtonComboControl Grid.Column="1" DataContext="{Binding MwrComboVm}" />
73-
</Grid>
38+
<views:MouseButtonComboControl Grid.Row="1" DataContext="{Binding Mb1ComboVm}" />
39+
<views:MouseButtonComboControl Grid.Row="2" DataContext="{Binding Mb2ComboVm}" />
40+
<views:MouseButtonComboControl Grid.Row="3" DataContext="{Binding Mb3ComboVm}" />
41+
<views:MouseButtonComboControl Grid.Row="4" DataContext="{Binding Mb4ComboVm}" />
42+
<views:MouseButtonComboControl Grid.Row="5" DataContext="{Binding Mb5ComboVm}" />
43+
<views:MouseButtonComboControl Grid.Row="6" DataContext="{Binding MwuComboVm}" />
44+
<views:MouseButtonComboControl Grid.Row="7" DataContext="{Binding MwdComboVm}" />
45+
<views:MouseButtonComboControl Grid.Row="8" DataContext="{Binding MwlComboVm}" />
46+
<views:MouseButtonComboControl Grid.Row="9" DataContext="{Binding MwrComboVm}" />
7447
</Grid>
7548
</TabItem>
7649
<TabItem Header="Layer 2"></TabItem>

YMouseButtonControl/Views/MouseButtonComboControl.axaml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,14 @@
99
<vm:MouseComboViewModel />
1010
</Design.DataContext>
1111

12-
<Grid ColumnDefinitions="*,Auto">
13-
<ComboBox ItemsSource="{Binding BtnMappings}"
12+
<Grid ColumnDefinitions="150,*,Auto" Margin="5">
13+
<Label Content="{Binding LabelTxt}" />
14+
<ComboBox Grid.Column="1" ItemsSource="{Binding BtnMappings}"
1415
SelectedItem="{Binding SelectedBtnMap}"
1516
HorizontalAlignment="Stretch"
1617
Background="{Binding BackgroundColor}">
1718
</ComboBox>
18-
<Button Grid.Column="1" Background="White" Command="{Binding UserClickedEditSettingButton}">
19+
<Button Grid.Column="2" Background="White" Command="{Binding UserClickedEditSettingButton}">
1920
<Image Source="../Resources/gear_icon1.png" />
2021
</Button>
2122
</Grid>

0 commit comments

Comments
 (0)