mirror of
https://github.com/microsoft/PowerToys.git
synced 2026-04-04 18:26:39 +02:00
[QuickAccent]Add setting to select language (#20798)
* add selection of country langages * Add Greek and Iceland countries * Update src/modules/poweraccent/PowerAccent.Core/PowerAccent.Core.csproj * fix ß in all section * remove greek * improve UI * langage to language * remove GR reference * change 'All' to 'All available' * adding Romanian and Hungarian * Missing characters * Add Italian * Fix translation key Remove GameMode activation * Fix PR build issues * Callback to get if a letter is part of the language * Add additional dlls to installer * Fix new dlls signing * Fix spelling * Add description to language selection Co-authored-by: Damien LEROY <dleroy@veepee.com>
This commit is contained in:
@@ -18,11 +18,15 @@ namespace Microsoft.PowerToys.Settings.UI.Library
|
||||
[JsonPropertyName("input_time_ms")]
|
||||
public IntProperty InputTime { get; set; }
|
||||
|
||||
[JsonPropertyName("selected_lang")]
|
||||
public StringProperty SelectedLang { get; set; }
|
||||
|
||||
public PowerAccentProperties()
|
||||
{
|
||||
ActivationKey = PowerAccentActivationKey.Both;
|
||||
ToolbarPosition = "Top center";
|
||||
InputTime = new IntProperty(200);
|
||||
SelectedLang = "ALL";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -74,6 +74,55 @@ namespace Microsoft.PowerToys.Settings.UI.Library.ViewModels
|
||||
break;
|
||||
}
|
||||
|
||||
switch (_powerAccentSettings.Properties.SelectedLang.Value)
|
||||
{
|
||||
case "ALL":
|
||||
_selectedLangIndex = 0;
|
||||
break;
|
||||
case "CUR":
|
||||
_selectedLangIndex = 1;
|
||||
break;
|
||||
case "CZ":
|
||||
_selectedLangIndex = 2;
|
||||
break;
|
||||
case "DE":
|
||||
_selectedLangIndex = 3;
|
||||
break;
|
||||
case "FR":
|
||||
_selectedLangIndex = 4;
|
||||
break;
|
||||
case "HU":
|
||||
_selectedLangIndex = 5;
|
||||
break;
|
||||
case "IS":
|
||||
_selectedLangIndex = 6;
|
||||
break;
|
||||
case "IT":
|
||||
_selectedLangIndex = 7;
|
||||
break;
|
||||
case "MI":
|
||||
_selectedLangIndex = 8;
|
||||
break;
|
||||
case "PI":
|
||||
_selectedLangIndex = 9;
|
||||
break;
|
||||
case "PL":
|
||||
_selectedLangIndex = 10;
|
||||
break;
|
||||
case "RO":
|
||||
_selectedLangIndex = 11;
|
||||
break;
|
||||
case "SK":
|
||||
_selectedLangIndex = 12;
|
||||
break;
|
||||
case "SP":
|
||||
_selectedLangIndex = 13;
|
||||
break;
|
||||
case "TK":
|
||||
_selectedLangIndex = 14;
|
||||
break;
|
||||
}
|
||||
|
||||
// set the callback functions value to hangle outgoing IPC message.
|
||||
SendConfigMSG = ipcMSGCallBackFunc;
|
||||
}
|
||||
@@ -192,6 +241,74 @@ namespace Microsoft.PowerToys.Settings.UI.Library.ViewModels
|
||||
}
|
||||
}
|
||||
|
||||
private int _selectedLangIndex;
|
||||
|
||||
public int SelectedLangIndex
|
||||
{
|
||||
get
|
||||
{
|
||||
return _selectedLangIndex;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if (_selectedLangIndex != value)
|
||||
{
|
||||
_selectedLangIndex = value;
|
||||
switch (_selectedLangIndex)
|
||||
{
|
||||
case 0:
|
||||
_powerAccentSettings.Properties.SelectedLang.Value = "ALL";
|
||||
break;
|
||||
case 1:
|
||||
_powerAccentSettings.Properties.SelectedLang.Value = "CUR";
|
||||
break;
|
||||
case 2:
|
||||
_powerAccentSettings.Properties.SelectedLang.Value = "CZ";
|
||||
break;
|
||||
case 3:
|
||||
_powerAccentSettings.Properties.SelectedLang.Value = "DE";
|
||||
break;
|
||||
case 4:
|
||||
_powerAccentSettings.Properties.SelectedLang.Value = "FR";
|
||||
break;
|
||||
case 5:
|
||||
_powerAccentSettings.Properties.SelectedLang.Value = "HU";
|
||||
break;
|
||||
case 6:
|
||||
_powerAccentSettings.Properties.SelectedLang.Value = "IS";
|
||||
break;
|
||||
case 7:
|
||||
_powerAccentSettings.Properties.SelectedLang.Value = "IT";
|
||||
break;
|
||||
case 8:
|
||||
_powerAccentSettings.Properties.SelectedLang.Value = "MI";
|
||||
break;
|
||||
case 9:
|
||||
_powerAccentSettings.Properties.SelectedLang.Value = "PI";
|
||||
break;
|
||||
case 10:
|
||||
_powerAccentSettings.Properties.SelectedLang.Value = "PL";
|
||||
break;
|
||||
case 11:
|
||||
_powerAccentSettings.Properties.SelectedLang.Value = "RO";
|
||||
break;
|
||||
case 12:
|
||||
_powerAccentSettings.Properties.SelectedLang.Value = "SK";
|
||||
break;
|
||||
case 13:
|
||||
_powerAccentSettings.Properties.SelectedLang.Value = "SP";
|
||||
break;
|
||||
case 14:
|
||||
_powerAccentSettings.Properties.SelectedLang.Value = "TK";
|
||||
break;
|
||||
}
|
||||
|
||||
RaisePropertyChanged(nameof(SelectedLangIndex));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void RaisePropertyChanged([CallerMemberName] string propertyName = null)
|
||||
{
|
||||
// Notify UI of property change
|
||||
|
||||
@@ -2350,7 +2350,8 @@ Activate by holding the key for the character you want to add an accent to, then
|
||||
<data name="QuickAccent_InputTimeMs.Description" xml:space="preserve">
|
||||
<value>Hold the key down for this much time to make the accent menu appear (ms)</value>
|
||||
<comment>ms = milliseconds</comment>
|
||||
</data> <data name="LearnMore_TextExtractor.Text" xml:space="preserve">
|
||||
</data>
|
||||
<data name="LearnMore_TextExtractor.Text" xml:space="preserve">
|
||||
<value>Learn more about Text Extractor</value>
|
||||
</data>
|
||||
<data name="TextExtractor.ModuleDescription" xml:space="preserve">
|
||||
@@ -2399,4 +2400,61 @@ Activate by holding the key for the character you want to add an accent to, then
|
||||
<value>The continuous capture mode will consume more resources when in use. Also, measurements will be excluded from screenshots and screen capture.</value>
|
||||
<comment>pointer as in mouse pointer. Resources refer to things like CPU, GPU, RAM</comment>
|
||||
</data>
|
||||
</root>
|
||||
<data name="QuickAccent_DisableFullscreen.Header" xml:space="preserve">
|
||||
<value>Disable when Game Mode is On</value>
|
||||
</data>
|
||||
<data name="QuickAccent_Language.Header" xml:space="preserve">
|
||||
<value>Language</value>
|
||||
</data>
|
||||
<data name="QuickAccent_SelectedLanguage.Header" xml:space="preserve">
|
||||
<value>Choose language</value>
|
||||
</data>
|
||||
<data name="QuickAccent_SelectedLanguage.Description" xml:space="preserve">
|
||||
<value>Show only accented characters common to the selected language</value>
|
||||
</data>
|
||||
<data name="QuickAccent_SelectedLanguage_All.Content" xml:space="preserve">
|
||||
<value>All available</value>
|
||||
</data>
|
||||
<data name="QuickAccent_SelectedLanguage_Currency.Content" xml:space="preserve">
|
||||
<value>Currency</value>
|
||||
</data>
|
||||
<data name="QuickAccent_SelectedLanguage_Czech.Content" xml:space="preserve">
|
||||
<value>Czech</value>
|
||||
</data>
|
||||
<data name="QuickAccent_SelectedLanguage_Dutch.Content" xml:space="preserve">
|
||||
<value>Dutch</value>
|
||||
</data>
|
||||
<data name="QuickAccent_SelectedLanguage_French.Content" xml:space="preserve">
|
||||
<value>French</value>
|
||||
</data>
|
||||
<data name="QuickAccent_SelectedLanguage_Maori.Content" xml:space="preserve">
|
||||
<value>Maori</value>
|
||||
</data>
|
||||
<data name="QuickAccent_SelectedLanguage_Pinyin.Content" xml:space="preserve">
|
||||
<value>Pinyin</value>
|
||||
</data>
|
||||
<data name="QuickAccent_SelectedLanguage_Polish.Content" xml:space="preserve">
|
||||
<value>Polish</value>
|
||||
</data>
|
||||
<data name="QuickAccent_SelectedLanguage_Slovakian.Content" xml:space="preserve">
|
||||
<value>Slovakian</value>
|
||||
</data>
|
||||
<data name="QuickAccent_SelectedLanguage_Spanish.Content" xml:space="preserve">
|
||||
<value>Spanish</value>
|
||||
</data>
|
||||
<data name="QuickAccent_SelectedLanguage_Turkish.Content" xml:space="preserve">
|
||||
<value>Turkish</value>
|
||||
</data>
|
||||
<data name="QuickAccent_SelectedLanguage_Icelandic.Content" xml:space="preserve">
|
||||
<value>Icelandic</value>
|
||||
</data>
|
||||
<data name="QuickAccent_SelectedLanguage_Romanian.Content" xml:space="preserve">
|
||||
<value>Romanian</value>
|
||||
</data>
|
||||
<data name="QuickAccent_SelectedLanguage_Hungarian.Content" xml:space="preserve">
|
||||
<value>Hungarian</value>
|
||||
</data>
|
||||
<data name="QuickAccent_SelectedLanguage_Italian.Content" xml:space="preserve">
|
||||
<value>Italian</value>
|
||||
</data>
|
||||
</root>
|
||||
@@ -36,6 +36,31 @@
|
||||
</controls:Setting>
|
||||
</controls:SettingsGroup>
|
||||
|
||||
<controls:SettingsGroup x:Uid="QuickAccent_Language" IsEnabled="{Binding Mode=OneWay, Path=IsEnabled}">
|
||||
<controls:Setting x:Uid="QuickAccent_SelectedLanguage" Icon="">
|
||||
<controls:Setting.ActionContent>
|
||||
<ComboBox MinWidth="{StaticResource SettingActionControlMinWidth}"
|
||||
SelectedIndex="{x:Bind Path=ViewModel.SelectedLangIndex, Mode=TwoWay}" >
|
||||
<ComboBoxItem x:Uid="QuickAccent_SelectedLanguage_All"/>
|
||||
<ComboBoxItem x:Uid="QuickAccent_SelectedLanguage_Currency"/>
|
||||
<ComboBoxItem x:Uid="QuickAccent_SelectedLanguage_Czech"/>
|
||||
<ComboBoxItem x:Uid="QuickAccent_SelectedLanguage_Dutch"/>
|
||||
<ComboBoxItem x:Uid="QuickAccent_SelectedLanguage_French"/>
|
||||
<ComboBoxItem x:Uid="QuickAccent_SelectedLanguage_Hungarian"/>
|
||||
<ComboBoxItem x:Uid="QuickAccent_SelectedLanguage_Icelandic"/>
|
||||
<ComboBoxItem x:Uid="QuickAccent_SelectedLanguage_Italian"/>
|
||||
<ComboBoxItem x:Uid="QuickAccent_SelectedLanguage_Maori"/>
|
||||
<ComboBoxItem x:Uid="QuickAccent_SelectedLanguage_Pinyin"/>
|
||||
<ComboBoxItem x:Uid="QuickAccent_SelectedLanguage_Polish"/>
|
||||
<ComboBoxItem x:Uid="QuickAccent_SelectedLanguage_Romanian"/>
|
||||
<ComboBoxItem x:Uid="QuickAccent_SelectedLanguage_Slovakian"/>
|
||||
<ComboBoxItem x:Uid="QuickAccent_SelectedLanguage_Spanish"/>
|
||||
<ComboBoxItem x:Uid="QuickAccent_SelectedLanguage_Turkish"/>
|
||||
</ComboBox>
|
||||
</controls:Setting.ActionContent>
|
||||
</controls:Setting>
|
||||
</controls:SettingsGroup>
|
||||
|
||||
<controls:SettingsGroup x:Uid="QuickAccent_Toolbar" IsEnabled="{Binding Mode=OneWay, Path=IsEnabled}">
|
||||
<controls:Setting x:Uid="QuickAccent_ToolbarPosition" Icon="">
|
||||
<controls:Setting.ActionContent>
|
||||
@@ -54,6 +79,7 @@
|
||||
</controls:Setting.ActionContent>
|
||||
</controls:Setting>
|
||||
</controls:SettingsGroup>
|
||||
|
||||
<controls:SettingsGroup x:Uid="QuickAccent_Behavior" IsEnabled="{Binding Mode=OneWay, Path=IsEnabled}">
|
||||
<controls:Setting x:Uid="QuickAccent_InputTimeMs" Icon="">
|
||||
<controls:Setting.ActionContent>
|
||||
|
||||
Reference in New Issue
Block a user