Skip to content

Commit

Permalink
Support translating chatrender badge mask items
Browse files Browse the repository at this point in the history
  • Loading branch information
ScrubN committed May 26, 2024
1 parent 8d3b748 commit d837ab6
Show file tree
Hide file tree
Showing 13 changed files with 352 additions and 26 deletions.
41 changes: 17 additions & 24 deletions TwitchDownloaderWPF/PageChatRender.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
using TwitchDownloaderCore.TwitchObjects;
using TwitchDownloaderWPF.Models;
using TwitchDownloaderWPF.Properties;
using TwitchDownloaderWPF.Translations;
using TwitchDownloaderWPF.Utils;
using WpfAnimatedGif;
using MessageBox = System.Windows.MessageBox;
Expand Down Expand Up @@ -146,7 +147,7 @@ public ChatRenderOptions GetOptions(string filename)
options.EmojiVendor = EmojiVendor.None;
foreach (var item in comboBadges.SelectedItems)
{
options.ChatBadgeMask += (int)((ChatBadgeListItem)item).Type;
options.ChatBadgeMask += (int)((CheckComboBoxItem)item).Tag;
}

return options;
Expand Down Expand Up @@ -196,19 +197,22 @@ private void LoadSettings()
RadioEmojiNone.IsChecked = (EmojiVendor)Settings.Default.RenderEmojiVendor == EmojiVendor.None;

comboBadges.Items.Clear();
comboBadges.Items.Add(new ChatBadgeListItem() { Type = ChatBadgeType.Broadcaster, Name = "Broadcaster" });
comboBadges.Items.Add(new ChatBadgeListItem() { Type = ChatBadgeType.Moderator, Name = "Mods" });
comboBadges.Items.Add(new ChatBadgeListItem() { Type = ChatBadgeType.VIP, Name = "VIPs" });
comboBadges.Items.Add(new ChatBadgeListItem() { Type = ChatBadgeType.Subscriber, Name = "Subs" });
comboBadges.Items.Add(new ChatBadgeListItem() { Type = ChatBadgeType.Predictions, Name = "Predictions" });
comboBadges.Items.Add(new ChatBadgeListItem() { Type = ChatBadgeType.NoAudioVisual, Name = "No Audio/No Video" });
comboBadges.Items.Add(new ChatBadgeListItem() { Type = ChatBadgeType.PrimeGaming, Name = "Prime" });
comboBadges.Items.Add(new ChatBadgeListItem() { Type = ChatBadgeType.Other, Name = "Others" });

foreach (ChatBadgeListItem item in comboBadges.Items)
comboBadges.Items.Add(new CheckComboBoxItem { Content = Strings.BadgeMaskBroadcaster, Tag = ChatBadgeType.Broadcaster });
comboBadges.Items.Add(new CheckComboBoxItem { Content = Strings.BadgeMaskModerator, Tag = ChatBadgeType.Moderator });
comboBadges.Items.Add(new CheckComboBoxItem { Content = Strings.BadgeMaskVIP, Tag = ChatBadgeType.VIP });
comboBadges.Items.Add(new CheckComboBoxItem { Content = Strings.BadgeMaskSubscriber, Tag = ChatBadgeType.Subscriber });
comboBadges.Items.Add(new CheckComboBoxItem { Content = Strings.BadgeMaskPredictions, Tag = ChatBadgeType.Predictions });
comboBadges.Items.Add(new CheckComboBoxItem { Content = Strings.BadgeMaskNoAudioNoVideo, Tag = ChatBadgeType.NoAudioVisual });
comboBadges.Items.Add(new CheckComboBoxItem { Content = Strings.BadgeMaskTwitchPrime, Tag = ChatBadgeType.PrimeGaming });
comboBadges.Items.Add(new CheckComboBoxItem { Content = Strings.BadgeMaskOthers, Tag = ChatBadgeType.Other });

var badgeMask = (ChatBadgeType)Settings.Default.ChatBadgeMask;
foreach (CheckComboBoxItem item in comboBadges.Items)
{
if (((ChatBadgeType)Settings.Default.ChatBadgeMask).HasFlag(item.Type))
if (badgeMask.HasFlag((Enum)item.Tag))
{
comboBadges.SelectedItems.Add(item);
}
}

foreach (VideoContainer container in comboFormat.Items)
Expand Down Expand Up @@ -317,7 +321,7 @@ public void SaveSettings()
int newMask = 0;
foreach (var item in comboBadges.SelectedItems)
{
newMask += (int)((ChatBadgeListItem)item).Type;
newMask += (int)((CheckComboBoxItem)item).Tag;
}
Settings.Default.ChatBadgeMask = newMask;

Expand Down Expand Up @@ -739,17 +743,6 @@ private void TextJson_TextChanged(object sender, TextChangedEventArgs e)
}
}

public class ChatBadgeListItem
{
public ChatBadgeType Type { get; set; }
public string Name { get; set; }

public override string ToString()
{
return Name;
}
}

public class VideoContainer
{
public string Name;
Expand Down
72 changes: 72 additions & 0 deletions TwitchDownloaderWPF/Translations/Strings.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

24 changes: 24 additions & 0 deletions TwitchDownloaderWPF/Translations/Strings.es.resx
Original file line number Diff line number Diff line change
Expand Up @@ -874,4 +874,28 @@
<data name="IncreaseUsernameReadability" xml:space="preserve">
<value>Increase Username Readability:</value>
</data>
<data name="BadgeMaskBroadcaster" xml:space="preserve">
<value>Broadcaster</value>
</data>
<data name="BadgeMaskModerator" xml:space="preserve">
<value>Mods</value>
</data>
<data name="BadgeMaskVIP" xml:space="preserve">
<value>VIPs</value>
</data>
<data name="BadgeMaskSubscriber" xml:space="preserve">
<value>Subs</value>
</data>
<data name="BadgeMaskPredictions" xml:space="preserve">
<value>Predictions</value>
</data>
<data name="BadgeMaskNoAudioNoVideo" xml:space="preserve">
<value>No Audio/No Video</value>
</data>
<data name="BadgeMaskTwitchPrime" xml:space="preserve">
<value>Prime</value>
</data>
<data name="BadgeMaskOthers" xml:space="preserve">
<value>Others</value>
</data>
</root>
24 changes: 24 additions & 0 deletions TwitchDownloaderWPF/Translations/Strings.fr.resx
Original file line number Diff line number Diff line change
Expand Up @@ -873,4 +873,28 @@
<data name="IncreaseUsernameReadability" xml:space="preserve">
<value>Increase Username Readability:</value>
</data>
<data name="BadgeMaskBroadcaster" xml:space="preserve">
<value>Broadcaster</value>
</data>
<data name="BadgeMaskModerator" xml:space="preserve">
<value>Mods</value>
</data>
<data name="BadgeMaskVIP" xml:space="preserve">
<value>VIPs</value>
</data>
<data name="BadgeMaskSubscriber" xml:space="preserve">
<value>Subs</value>
</data>
<data name="BadgeMaskPredictions" xml:space="preserve">
<value>Predictions</value>
</data>
<data name="BadgeMaskNoAudioNoVideo" xml:space="preserve">
<value>No Audio/No Video</value>
</data>
<data name="BadgeMaskTwitchPrime" xml:space="preserve">
<value>Prime</value>
</data>
<data name="BadgeMaskOthers" xml:space="preserve">
<value>Others</value>
</data>
</root>
24 changes: 24 additions & 0 deletions TwitchDownloaderWPF/Translations/Strings.it.resx
Original file line number Diff line number Diff line change
Expand Up @@ -874,4 +874,28 @@
<data name="IncreaseUsernameReadability" xml:space="preserve">
<value>Increase Username Readability:</value>
</data>
<data name="BadgeMaskBroadcaster" xml:space="preserve">
<value>Broadcaster</value>
</data>
<data name="BadgeMaskModerator" xml:space="preserve">
<value>Mods</value>
</data>
<data name="BadgeMaskVIP" xml:space="preserve">
<value>VIPs</value>
</data>
<data name="BadgeMaskSubscriber" xml:space="preserve">
<value>Subs</value>
</data>
<data name="BadgeMaskPredictions" xml:space="preserve">
<value>Predictions</value>
</data>
<data name="BadgeMaskNoAudioNoVideo" xml:space="preserve">
<value>No Audio/No Video</value>
</data>
<data name="BadgeMaskTwitchPrime" xml:space="preserve">
<value>Prime</value>
</data>
<data name="BadgeMaskOthers" xml:space="preserve">
<value>Others</value>
</data>
</root>
25 changes: 23 additions & 2 deletions TwitchDownloaderWPF/Translations/Strings.ja.resx
Original file line number Diff line number Diff line change
Expand Up @@ -872,7 +872,28 @@
<data name="IncreaseUsernameReadability" xml:space="preserve">
<value>ユーザー名の読みやすさを向上する:</value>
</data>
<data name="IncreaseUsernameReadability" xml:space="preserve">
<value>Increase Username Readability:</value>
<data name="BadgeMaskBroadcaster" xml:space="preserve">
<value>Broadcaster</value>
</data>
<data name="BadgeMaskModerator" xml:space="preserve">
<value>Mods</value>
</data>
<data name="BadgeMaskVIP" xml:space="preserve">
<value>VIPs</value>
</data>
<data name="BadgeMaskSubscriber" xml:space="preserve">
<value>Subs</value>
</data>
<data name="BadgeMaskPredictions" xml:space="preserve">
<value>Predictions</value>
</data>
<data name="BadgeMaskNoAudioNoVideo" xml:space="preserve">
<value>No Audio/No Video</value>
</data>
<data name="BadgeMaskTwitchPrime" xml:space="preserve">
<value>Prime</value>
</data>
<data name="BadgeMaskOthers" xml:space="preserve">
<value>Others</value>
</data>
</root>
24 changes: 24 additions & 0 deletions TwitchDownloaderWPF/Translations/Strings.pl.resx
Original file line number Diff line number Diff line change
Expand Up @@ -873,4 +873,28 @@
<data name="IncreaseUsernameReadability" xml:space="preserve">
<value>Increase Username Readability:</value>
</data>
<data name="BadgeMaskBroadcaster" xml:space="preserve">
<value>Broadcaster</value>
</data>
<data name="BadgeMaskModerator" xml:space="preserve">
<value>Mods</value>
</data>
<data name="BadgeMaskVIP" xml:space="preserve">
<value>VIPs</value>
</data>
<data name="BadgeMaskSubscriber" xml:space="preserve">
<value>Subs</value>
</data>
<data name="BadgeMaskPredictions" xml:space="preserve">
<value>Predictions</value>
</data>
<data name="BadgeMaskNoAudioNoVideo" xml:space="preserve">
<value>No Audio/No Video</value>
</data>
<data name="BadgeMaskTwitchPrime" xml:space="preserve">
<value>Prime</value>
</data>
<data name="BadgeMaskOthers" xml:space="preserve">
<value>Others</value>
</data>
</root>
24 changes: 24 additions & 0 deletions TwitchDownloaderWPF/Translations/Strings.pt-br.resx
Original file line number Diff line number Diff line change
Expand Up @@ -872,4 +872,28 @@
<data name="IncreaseUsernameReadability" xml:space="preserve">
<value>Increase Username Readability:</value>
</data>
<data name="BadgeMaskBroadcaster" xml:space="preserve">
<value>Broadcaster</value>
</data>
<data name="BadgeMaskModerator" xml:space="preserve">
<value>Mods</value>
</data>
<data name="BadgeMaskVIP" xml:space="preserve">
<value>VIPs</value>
</data>
<data name="BadgeMaskSubscriber" xml:space="preserve">
<value>Subs</value>
</data>
<data name="BadgeMaskPredictions" xml:space="preserve">
<value>Predictions</value>
</data>
<data name="BadgeMaskNoAudioNoVideo" xml:space="preserve">
<value>No Audio/No Video</value>
</data>
<data name="BadgeMaskTwitchPrime" xml:space="preserve">
<value>Prime</value>
</data>
<data name="BadgeMaskOthers" xml:space="preserve">
<value>Others</value>
</data>
</root>
24 changes: 24 additions & 0 deletions TwitchDownloaderWPF/Translations/Strings.resx
Original file line number Diff line number Diff line change
Expand Up @@ -872,4 +872,28 @@
<data name="IncreaseUsernameReadability" xml:space="preserve">
<value>Increase Username Readability:</value>
</data>
<data name="BadgeMaskBroadcaster" xml:space="preserve">
<value>Broadcaster</value>
</data>
<data name="BadgeMaskModerator" xml:space="preserve">
<value>Mods</value>
</data>
<data name="BadgeMaskVIP" xml:space="preserve">
<value>VIPs</value>
</data>
<data name="BadgeMaskSubscriber" xml:space="preserve">
<value>Subs</value>
</data>
<data name="BadgeMaskPredictions" xml:space="preserve">
<value>Predictions</value>
</data>
<data name="BadgeMaskNoAudioNoVideo" xml:space="preserve">
<value>No Audio/No Video</value>
</data>
<data name="BadgeMaskTwitchPrime" xml:space="preserve">
<value>Prime</value>
</data>
<data name="BadgeMaskOthers" xml:space="preserve">
<value>Others</value>
</data>
</root>
24 changes: 24 additions & 0 deletions TwitchDownloaderWPF/Translations/Strings.ru.resx
Original file line number Diff line number Diff line change
Expand Up @@ -873,4 +873,28 @@
<data name="IncreaseUsernameReadability" xml:space="preserve">
<value>Increase Username Readability:</value>
</data>
<data name="BadgeMaskBroadcaster" xml:space="preserve">
<value>Broadcaster</value>
</data>
<data name="BadgeMaskModerator" xml:space="preserve">
<value>Mods</value>
</data>
<data name="BadgeMaskVIP" xml:space="preserve">
<value>VIPs</value>
</data>
<data name="BadgeMaskSubscriber" xml:space="preserve">
<value>Subs</value>
</data>
<data name="BadgeMaskPredictions" xml:space="preserve">
<value>Predictions</value>
</data>
<data name="BadgeMaskNoAudioNoVideo" xml:space="preserve">
<value>No Audio/No Video</value>
</data>
<data name="BadgeMaskTwitchPrime" xml:space="preserve">
<value>Prime</value>
</data>
<data name="BadgeMaskOthers" xml:space="preserve">
<value>Others</value>
</data>
</root>
Loading

0 comments on commit d837ab6

Please sign in to comment.