[PTRun][DateTime]Setting for First week of year and First day of week (#33406)

## Summary of the Pull Request

This PR implements two new plugin settings:
- **First week of year**

![image](https://github.com/microsoft/PowerToys/assets/61519853/c866ffc2-2a21-438c-9a1a-5f4c7f68a22e)

- **First day of week**

![image](https://github.com/microsoft/PowerToys/assets/61519853/b2ec125b-d87c-40c5-8793-743a1ffae237)

## Detailed Description of the Pull Request / Additional comments

For both settings the users can decide to be in sync with the system
settings (default) or to use their own setting. The order of days for
the `first day of week` setting is based on the current system culture.

PT Run respects these settings for the relevant results:
- calendar week
- week of month
- number of day in week
This commit is contained in:
Heiko
2024-07-18 15:29:01 +02:00
committed by GitHub
parent 98cfeb0776
commit 7808033436
9 changed files with 483 additions and 43 deletions

View File

@@ -438,6 +438,15 @@ namespace Microsoft.PowerToys.Run.Plugin.TimeDate.Properties {
}
}
/// <summary>
/// Looks up a localized string similar to Use system setting.
/// </summary>
internal static string Microsoft_plugin_timedate_Setting_UseSystemSetting {
get {
return ResourceManager.GetString("Microsoft_plugin_timedate_Setting_UseSystemSetting", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Show date with weekday and name of month.
/// </summary>
@@ -456,6 +465,123 @@ namespace Microsoft.PowerToys.Run.Plugin.TimeDate.Properties {
}
}
/// <summary>
/// Looks up a localized string similar to First day of the week.
/// </summary>
internal static string Microsoft_plugin_timedate_SettingFirstDayOfWeek {
get {
return ResourceManager.GetString("Microsoft_plugin_timedate_SettingFirstDayOfWeek", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Friday.
/// </summary>
internal static string Microsoft_plugin_timedate_SettingFirstDayOfWeek_Friday {
get {
return ResourceManager.GetString("Microsoft_plugin_timedate_SettingFirstDayOfWeek_Friday", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Monday.
/// </summary>
internal static string Microsoft_plugin_timedate_SettingFirstDayOfWeek_Monday {
get {
return ResourceManager.GetString("Microsoft_plugin_timedate_SettingFirstDayOfWeek_Monday", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Saturday.
/// </summary>
internal static string Microsoft_plugin_timedate_SettingFirstDayOfWeek_Saturday {
get {
return ResourceManager.GetString("Microsoft_plugin_timedate_SettingFirstDayOfWeek_Saturday", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Sunday.
/// </summary>
internal static string Microsoft_plugin_timedate_SettingFirstDayOfWeek_Sunday {
get {
return ResourceManager.GetString("Microsoft_plugin_timedate_SettingFirstDayOfWeek_Sunday", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Thursday.
/// </summary>
internal static string Microsoft_plugin_timedate_SettingFirstDayOfWeek_Thursday {
get {
return ResourceManager.GetString("Microsoft_plugin_timedate_SettingFirstDayOfWeek_Thursday", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Tuesday.
/// </summary>
internal static string Microsoft_plugin_timedate_SettingFirstDayOfWeek_Tuesday {
get {
return ResourceManager.GetString("Microsoft_plugin_timedate_SettingFirstDayOfWeek_Tuesday", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Wednesday.
/// </summary>
internal static string Microsoft_plugin_timedate_SettingFirstDayOfWeek_Wednesday {
get {
return ResourceManager.GetString("Microsoft_plugin_timedate_SettingFirstDayOfWeek_Wednesday", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to First week of the year.
/// </summary>
internal static string Microsoft_plugin_timedate_SettingFirstWeekRule {
get {
return ResourceManager.GetString("Microsoft_plugin_timedate_SettingFirstWeekRule", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Configure the calendar rule for the first week of the year..
/// </summary>
internal static string Microsoft_plugin_timedate_SettingFirstWeekRule_Description {
get {
return ResourceManager.GetString("Microsoft_plugin_timedate_SettingFirstWeekRule_Description", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to First day of year.
/// </summary>
internal static string Microsoft_plugin_timedate_SettingFirstWeekRule_FirstDay {
get {
return ResourceManager.GetString("Microsoft_plugin_timedate_SettingFirstWeekRule_FirstDay", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to First four day week.
/// </summary>
internal static string Microsoft_plugin_timedate_SettingFirstWeekRule_FirstFourDayWeek {
get {
return ResourceManager.GetString("Microsoft_plugin_timedate_SettingFirstWeekRule_FirstFourDayWeek", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to First full week.
/// </summary>
internal static string Microsoft_plugin_timedate_SettingFirstWeekRule_FirstFullWeek {
get {
return ResourceManager.GetString("Microsoft_plugin_timedate_SettingFirstWeekRule_FirstFullWeek", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Hide &apos;Invalid number input&apos; error message on global queries.
/// </summary>

View File

@@ -315,4 +315,46 @@
<data name="Microsoft_plugin_timedate_Unix_Milliseconds" xml:space="preserve">
<value>Unix epoch time in milliseconds</value>
</data>
<data name="Microsoft_plugin_timedate_SettingFirstDayOfWeek" xml:space="preserve">
<value>First day of the week</value>
</data>
<data name="Microsoft_plugin_timedate_SettingFirstDayOfWeek_Friday" xml:space="preserve">
<value>Friday</value>
</data>
<data name="Microsoft_plugin_timedate_SettingFirstDayOfWeek_Monday" xml:space="preserve">
<value>Monday</value>
</data>
<data name="Microsoft_plugin_timedate_SettingFirstDayOfWeek_Saturday" xml:space="preserve">
<value>Saturday</value>
</data>
<data name="Microsoft_plugin_timedate_SettingFirstDayOfWeek_Sunday" xml:space="preserve">
<value>Sunday</value>
</data>
<data name="Microsoft_plugin_timedate_SettingFirstDayOfWeek_Thursday" xml:space="preserve">
<value>Thursday</value>
</data>
<data name="Microsoft_plugin_timedate_SettingFirstDayOfWeek_Tuesday" xml:space="preserve">
<value>Tuesday</value>
</data>
<data name="Microsoft_plugin_timedate_SettingFirstDayOfWeek_Wednesday" xml:space="preserve">
<value>Wednesday</value>
</data>
<data name="Microsoft_plugin_timedate_SettingFirstWeekRule" xml:space="preserve">
<value>First week of the year</value>
</data>
<data name="Microsoft_plugin_timedate_SettingFirstWeekRule_Description" xml:space="preserve">
<value>Configure the calendar rule for the first week of the year.</value>
</data>
<data name="Microsoft_plugin_timedate_SettingFirstWeekRule_FirstDay" xml:space="preserve">
<value>First day of year</value>
</data>
<data name="Microsoft_plugin_timedate_SettingFirstWeekRule_FirstFourDayWeek" xml:space="preserve">
<value>First four day week</value>
</data>
<data name="Microsoft_plugin_timedate_SettingFirstWeekRule_FirstFullWeek" xml:space="preserve">
<value>First full week</value>
</data>
<data name="Microsoft_plugin_timedate_Setting_UseSystemSetting" xml:space="preserve">
<value>Use system setting</value>
</data>
</root>