Add theme menu + new strings

Add theme menu to Editor and accompanying logic + strings.

Updated Misc fruit/flower and CampsiteEditor to use translatable strings. Add strings to lang files.
This commit is contained in:
Josh (vector_cmdr) 2026-01-23 13:28:52 +11:00
parent 22b3a50d34
commit bbffb6df90
27 changed files with 387 additions and 34 deletions

View File

@ -1,4 +1,4 @@
MsgBackupCreateLocation=NHSE can perform automatic backups if you create a folder with the name '{0}' in the same folder as the executable.
MsgBackupCreateLocation=NHSE can perform automatic backups if you create a folder with the name '{0}' in the same folder as the executable.
MsgBackupCreateQuestion=Would you like NHSE to automatically keep a backup of your save data?
MsgDataSizeMismatchImport=The size of the imported file (0x{0:X}) does not match the required size (0x{1:X}).
MsgDataSizeMismatchRAM=Read size (0x{0:X}) != Write size (0x{1:X}).
@ -38,3 +38,8 @@ MsgVillagerFriendshipMax=Do you want to set all Villager Friendship memories to
MsgVillagerReplaceNoText=Clipboard: No text found! Expected internal villager name.
MsgVillagerReplaceOutdatedSaveFormat=Save file is not up to date with latest villager format. Please update in-game.
MsgVillagerReplaceUnknownName=Clipboard: {0} is not a valid internal villager name.
MsgDialogButtonYes=Ja
MsgDialogButtonNo=Nein
MsgDialogButtonCancel=Abbrechen
MsgWarning=Achtung!
MsgAskSaveBeforeRestart=This requires the application to restart! Save any current changes first?

View File

@ -1,4 +1,4 @@
MsgBackupCreateLocation=NHSE can perform automatic backups if you create a folder with the name '{0}' in the same folder as the executable.
MsgBackupCreateLocation=NHSE can perform automatic backups if you create a folder with the name '{0}' in the same folder as the executable.
MsgBackupCreateQuestion=Would you like NHSE to automatically keep a backup of your save data?
MsgDataSizeMismatchImport=The size of the imported file (0x{0:X}) does not match the required size (0x{1:X}).
MsgDataSizeMismatchRAM=Read size (0x{0:X}) != Write size (0x{1:X}).
@ -38,3 +38,8 @@ MsgVillagerFriendshipMax=Do you want to set all Villager Friendship memories to
MsgVillagerReplaceNoText=Clipboard: No text found! Expected internal villager name.
MsgVillagerReplaceOutdatedSaveFormat=Save file is not up to date with latest villager format. Please update in-game.
MsgVillagerReplaceUnknownName=Clipboard: {0} is not a valid internal villager name.
MsgDialogButtonYes=Yes
MsgDialogButtonNo=No
MsgDialogButtonCancel=Cancel
MsgWarning=Warning!
MsgAskSaveBeforeRestart=This requires the application to restart! Save any current changes first?

View File

@ -1,4 +1,4 @@
MsgBackupCreateLocation=NHSE puede crear un respaldos automáticos si crea una carpeta con el nombre '{0}' en la misma carpeta del ejecutable.
MsgBackupCreateLocation=NHSE puede crear un respaldos automáticos si crea una carpeta con el nombre '{0}' en la misma carpeta del ejecutable.
MsgBackupCreateQuestion=¿Quisiera que NHSE cree automáticamente un respaldo de sus datos de guardado?
MsgDataSizeMismatchImport=El tamaño del archivo importado (0x{0:X}) no coincide con el tamaño requerido (0x{1:X}).
MsgDataSizeMismatchRAM=Tamaño de lectura (0x{0:X}) != Tamaño de Escritura (0x{1:X}).
@ -38,3 +38,8 @@ MsgVillagerFriendshipMax=¿Quiere colocar la Amistad de todos los Aldeanos a 255
MsgVillagerReplaceNoText=Clipboard: ¡Ningún texto encontrado! Se esperaba nombre del Aldeano.
MsgVillagerReplaceOutdatedSaveFormat=Archivo de guardado no usa el formato de Aldeano más reciente. Por favor, actualice en el juego.
MsgVillagerReplaceUnknownName=Clipboard: {0} no es un nombre de Aldeano válido.
MsgDialogButtonYes=Sí
MsgDialogButtonNo=No
MsgDialogButtonCancel=Cancelar
MsgWarning=¡Advertencia!
MsgAskSaveBeforeRestart=¡Esto requiere que la aplicación se reinicie! ¿Guardar primero los cambios actuales?

View File

@ -1,4 +1,4 @@
MsgBackupCreateLocation=NHSE peut effectuer des sauvegardes automatiques si vous créez un dossier portant le nom «{0}» dans le même dossier que l'exécutable.
MsgBackupCreateLocation=NHSE peut effectuer des sauvegardes automatiques si vous créez un dossier portant le nom «{0}» dans le même dossier que l'exécutable.
MsgBackupCreateQuestion=Souhaitez-vous que NHSE conserve automatiquement une sauvegarde de vos données de sauvegarde?
MsgDataSizeMismatchImport=La taille du fichier importé (0x{0:X}) ne correspond pas à la taille requise (0x{1:X}).
MsgDataSizeMismatchRAM=Taille de lecture (0x{0:X})! = Taille d'écriture (0x{1:X}).
@ -38,3 +38,8 @@ MsgVillagerFriendshipMax=Voulez-vous définir tous les souvenirs d'amitié villa
MsgVillagerReplaceNoText=Clipboard: Aucun texte trouvé! Nom attendu du villageois interne.
MsgVillagerReplaceOutdatedSaveFormat=Le fichier de sauvegarde n'est pas à jour avec le dernier format de villageois. Veuillez mettre à jour dans le jeu.
MsgVillagerReplaceUnknownName=Presse-papiers: {0} n'est pas un nom de villageois interne valide.
MsgDialogButtonYes=Oui
MsgDialogButtonNo=Non
MsgDialogButtonCancel=Annuler
MsgWarning=Attention!
MsgAskSaveBeforeRestart=L'application doit être redémarrée ! Veuillez d'abord enregistrer vos modifications.

View File

@ -1,4 +1,4 @@
MsgBackupCreateLocation=NHSE pu<70> fare backup automatici se crei una cartella chiamata '{0}' nella stessa cartella dell'eseguibile.
MsgBackupCreateLocation=NHSE pu<70> fare backup automatici se crei una cartella chiamata '{0}' nella stessa cartella dell'eseguibile.
MsgBackupCreateQuestion=Vuoi che NHSE faccia automaticamente un backup dei tuoi dati di salvataggio?
MsgDataSizeMismatchImport=La dimensione del file importato (0x{0:X}) non corrisponde alla dimensione richiesta (0x{1:X}).
MsgDataSizeMismatchRAM=Dimensione letta (0x{0:X}) != Dimensione da scrivere (0x{1:X}).
@ -38,3 +38,8 @@ MsgVillagerFriendshipMax=Vuoi impostare tutti i ricordi dell'Amicizia dei Reside
MsgVillagerReplaceNoText=Clipboard: No text found! Expected internal villager name.
MsgVillagerReplaceOutdatedSaveFormat=Save file is not up to date with latest villager format. Please update in-game.
MsgVillagerReplaceUnknownName=Clipboard: {0} is not a valid internal villager name.
MsgDialogButtonYes=Sì
MsgDialogButtonNo=No
MsgDialogButtonCancel=Cancellare
MsgWarning=Avvertimento!
MsgAskSaveBeforeRestart=Per farlo, è necessario riavviare l'applicazione! Vuoi prima salvare le modifiche apportate?

View File

@ -1,4 +1,4 @@
MsgBackupCreateLocation=実行可能ファイルと同じフォルダー内に '{0}' という名前のフォルダーを作成すると、NHSE は自動バックアップを実行できます。
MsgBackupCreateLocation=実行可能ファイルと同じフォルダー内に '{0}' という名前のフォルダーを作成すると、NHSE は自動バックアップを実行できます。
MsgBackupCreateQuestion=NHSE がセーブ データのバックアップを自動的に保存することを希望しますか?
MsgDataSizeMismatchImport=インポートされたファイル (0x{0:X}) のサイズが必要なサイズ (0x{1:X}) と一致しません。
MsgDataSizeMismatchRAM=読み取りサイズ (0x{0:X}) は書き込みサイズ (0x{1:X}) と等しくありません。
@ -37,4 +37,9 @@ MsgTerrainSetAllSkipExterior=外側のエーカー (ビーチ/岩) のタイル
MsgVillagerFriendshipMax=村人との友情の思い出をすべて 255 に設定しますか?
MsgVillagerReplaceNoText=クリップボード: テキストが見つかりません! 予期される内部村人の名前。
MsgVillagerReplaceOutdatedSaveFormat=保存ファイルは最新の村人形式ではありません。 ゲーム内でアップデートしてください。
MsgVillagerReplaceUnknownName=クリップボード: {0} は有効な内部村民名ではありません。
MsgVillagerReplaceUnknownName=クリップボード: {0} は有効な内部村民名ではありません。
MsgDialogButtonYes=はい
MsgDialogButtonNo=いいえ
MsgDialogButtonCancel=キャンセル
MsgWarning=警告!
MsgAskSaveBeforeRestart=これにはアプリケーションを再起動する必要があります。まず現在の変更を保存しますか?

View File

@ -1,4 +1,4 @@
MsgBackupCreateLocation=실행 파일과 같은 폴더에 '{0}' 이름으로 폴더를 만들면 NHSE가 자동으로 백업을 수행합니다.
MsgBackupCreateLocation=실행 파일과 같은 폴더에 '{0}' 이름으로 폴더를 만들면 NHSE가 자동으로 백업을 수행합니다.
MsgBackupCreateQuestion=NHSE가 세이브 데이터를 자동으로 백업하도록 설정하시겠습니까?
MsgDataSizeMismatchImport=가져온 파일의 크기(0x{0:X})가 필요한 크기(0x{1:X})와 일치하지 않습니다.
MsgDataSizeMismatchRAM=읽기 크기(0x{0:X})와 쓰기 크기(0x{1:X})가 다릅니다.
@ -38,3 +38,8 @@ MsgVillagerFriendshipMax=모든 주민의 친밀도를 255로 설정하시겠습
MsgVillagerReplaceNoText=클립보드: 텍스트를 찾을 수 없습니다! 주민의 내부 이름이 필요합니다.
MsgVillagerReplaceOutdatedSaveFormat=세이브 파일이 최신 주민 포맷이 아닙니다. 게임 내에서 업데이트해주세요.
MsgVillagerReplaceUnknownName=클립보드: {0}은(는) 유효한 주민의 내부 이름이 아닙니다.
MsgDialogButtonYes=예
MsgDialogButtonNo=아니요
MsgDialogButtonCancel=취소
MsgWarning=경고!
MsgAskSaveBeforeRestart=이 작업을 하려면 애플리케이션을 다시 시작해야 합니다! 현재 변경 사항을 먼저 저장하시겠습니까?

View File

@ -1,4 +1,4 @@
MsgBackupCreateLocation=如果您在本程序根目录创建 '{0}' 文件夹NHSE可以帮您自动备份存档。
MsgBackupCreateLocation=如果您在本程序根目录创建 '{0}' 文件夹NHSE可以帮您自动备份存档。
MsgBackupCreateQuestion=您希望NHSE自动备份您的存档吗
MsgDataSizeMismatchImport=导入的文件尺寸(0x{0:X})和必要的文件尺寸(0x{1:X})不匹配。
MsgDataSizeMismatchRAM=读取大小 (0x{0:X}) != 写入大小 (0x{1:X})。
@ -38,3 +38,8 @@ MsgVillagerFriendshipMax=确定要设定所有岛民的友谊回忆值到255吗
MsgVillagerReplaceNoText=剪贴板:未找到文本! 预期的内部村民姓名。
MsgVillagerReplaceOutdatedSaveFormat=保存文件不是最新的村民格式。 请在游戏中更新。
MsgVillagerReplaceUnknownName=剪贴板:{0} 不是有效的内部村民姓名。
MsgDialogButtonYes=是的
MsgDialogButtonNo=不
MsgDialogButtonCancel=取消
MsgWarning=警告!
MsgAskSaveBeforeRestart=这需要重启应用程序!请先保存当前更改?

View File

@ -1,4 +1,4 @@
MsgBackupCreateLocation=NHSE can perform automatic backups if you create a folder with the name '{0}' in the same folder as the executable.
MsgBackupCreateLocation=NHSE can perform automatic backups if you create a folder with the name '{0}' in the same folder as the executable.
MsgBackupCreateQuestion=Would you like NHSE to automatically keep a backup of your save data?
MsgDataSizeMismatchImport=The size of the imported file (0x{0:X}) does not match the required size (0x{1:X}).
MsgDataSizeMismatchRAM=Read size (0x{0:X}) != Write size (0x{1:X}).
@ -38,3 +38,8 @@ MsgVillagerFriendshipMax=Do you want to set all Villager Friendship memories to
MsgVillagerReplaceNoText=Clipboard: No text found! Expected internal villager name.
MsgVillagerReplaceOutdatedSaveFormat=Save file is not up to date with latest villager format. Please update in-game.
MsgVillagerReplaceUnknownName=Clipboard: {0} is not a valid internal villager name.
MsgDialogButtonYes=是的
MsgDialogButtonNo=不
MsgDialogButtonCancel=取消
MsgWarning=警告!
MsgAskSaveBeforeRestart=這需要重啟應用程式!請先儲存目前變更?

View File

@ -42,6 +42,10 @@ private void InitializeComponent()
Menu_Options = new System.Windows.Forms.ToolStripMenuItem();
Menu_Language = new System.Windows.Forms.ToolStripComboBox();
Menu_Settings = new System.Windows.Forms.ToolStripMenuItem();
Menu_Theme = new System.Windows.Forms.ToolStripMenuItem();
Menu_Theme_System = new System.Windows.Forms.ToolStripMenuItem();
Menu_Theme_Classic = new System.Windows.Forms.ToolStripMenuItem();
Menu_Theme_Dark = new System.Windows.Forms.ToolStripMenuItem();
CM_Picture = new System.Windows.Forms.ContextMenuStrip(components);
Menu_SavePNG = new System.Windows.Forms.ToolStripMenuItem();
Tab_Map = new System.Windows.Forms.TabPage();
@ -200,7 +204,7 @@ private void InitializeComponent()
//
// Menu_Options
//
Menu_Options.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { Menu_Language, Menu_Settings });
Menu_Options.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { Menu_Language, Menu_Theme, Menu_Settings });
Menu_Options.Name = "Menu_Options";
Menu_Options.Size = new System.Drawing.Size(61, 20);
Menu_Options.Text = "Options";
@ -217,10 +221,38 @@ private void InitializeComponent()
//
Menu_Settings.Name = "Menu_Settings";
Menu_Settings.ShortcutKeys = System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.P;
Menu_Settings.Size = new System.Drawing.Size(175, 22);
Menu_Settings.Size = new System.Drawing.Size(180, 22);
Menu_Settings.Text = "Settings";
Menu_Settings.Click += Menu_Settings_Click;
//
// Menu_Theme
//
Menu_Theme.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { Menu_Theme_System, Menu_Theme_Classic, Menu_Theme_Dark });
Menu_Theme.Name = "Menu_Theme";
Menu_Theme.Size = new System.Drawing.Size(180, 22);
Menu_Theme.Text = "Theme";
//
// Menu_Theme_System
//
Menu_Theme_System.Name = "Menu_Theme_System";
Menu_Theme_System.Size = new System.Drawing.Size(180, 22);
Menu_Theme_System.Text = "System Theme";
Menu_Theme_System.Click += Menu_Theme_System_Click;
//
// Menu_Theme_Classic
//
Menu_Theme_Classic.Name = "Menu_Theme_Classic";
Menu_Theme_Classic.Size = new System.Drawing.Size(180, 22);
Menu_Theme_Classic.Text = "Light (Classic)";
Menu_Theme_Classic.Click += Menu_Theme_Classic_Click;
//
// Menu_Theme_Dark
//
Menu_Theme_Dark.Name = "Menu_Theme_Dark";
Menu_Theme_Dark.Size = new System.Drawing.Size(180, 22);
Menu_Theme_Dark.Text = "Dark";
Menu_Theme_Dark.Click += Menu_Theme_Dark_Click;
//
// CM_Picture
//
CM_Picture.ImageScalingSize = new System.Drawing.Size(20, 20);
@ -967,6 +999,10 @@ private void InitializeComponent()
private System.Windows.Forms.Label L_HotelTickets;
private System.Windows.Forms.NumericUpDown NUD_HotelTickets;
private System.Windows.Forms.Button B_EditCampsite;
private System.Windows.Forms.ToolStripMenuItem Menu_Theme;
private System.Windows.Forms.ToolStripMenuItem Menu_Theme_System;
private System.Windows.Forms.ToolStripMenuItem Menu_Theme_Classic;
private System.Windows.Forms.ToolStripMenuItem Menu_Theme_Dark;
}
}

View File

@ -24,6 +24,8 @@ public sealed partial class Editor : Form
public Editor(HorizonSave file)
{
WinFormsUtil.SetApplicationTheme(int.Parse(Settings.Default.DarkMode));
InitializeComponent();
SAV = file;
@ -158,6 +160,69 @@ private void Menu_ItemImages_Click(object sender, EventArgs e)
imgfetcher.Show();
}
private void Menu_Theme_System_Click(object sender, EventArgs e)
{
Menu_Options.DropDown.Close();
ThemeChangeDialog(1);
}
private void Menu_Theme_Classic_Click(object sender, EventArgs e)
{
Menu_Options.DropDown.Close();
ThemeChangeDialog(0);
}
private void Menu_Theme_Dark_Click(object sender, EventArgs e)
{
Menu_Options.DropDown.Close();
ThemeChangeDialog(2);
}
private void ThemeChangeDialog(int theme)
{
TaskDialogButton yesButton = new(MessageStrings.MsgDialogButtonYes) { Tag = DialogResult.Yes };
TaskDialogButton noButton = new(MessageStrings.MsgDialogButtonNo) { Tag = DialogResult.No };
TaskDialogButton cancelButton = new(MessageStrings.MsgDialogButtonCancel) { Tag = DialogResult.Cancel };
var buttons = new TaskDialogButtonCollection
{
yesButton,
noButton,
cancelButton
};
TaskDialogPage page = new()
{
Caption = MessageStrings.MsgWarning,
SizeToContent = true,
Heading = MessageStrings.MsgAskSaveBeforeRestart,
Icon = TaskDialogIcon.Warning,
Buttons = buttons
};
TaskDialogButton resultButton = TaskDialog.ShowDialog(this, page);
if (resultButton == yesButton)
{
SaveAll();
try
{
SAV.Save((uint)DateTime.Now.Ticks);
}
catch (Exception ex)
{
WinFormsUtil.Error(MessageStrings.MsgSaveDataExportFail, ex.Message);
return;
}
WinFormsUtil.Alert(MessageStrings.MsgSaveDataExportSuccess);
WinFormsUtil.SetApplicationTheme(theme);
Application.Restart();
}
else if(resultButton == noButton)
{
WinFormsUtil.SetApplicationTheme(theme);
Application.Restart();
}
}
private void ReloadAll()
{
Villagers.Villagers = SAV.Main.GetVillagers();

View File

@ -22,6 +22,8 @@ public partial class Main : Form
public Main()
{
WinFormsUtil.SetApplicationTheme(int.Parse(Settings.Default.DarkMode));
InitializeComponent();
// Flash to front

View File

@ -1,4 +1,5 @@
using System;
using NHSE.WinForms.Properties;
using System;
using System.Windows.Forms;
namespace NHSE.WinForms;
@ -18,7 +19,11 @@ private static void Main()
if (args.Length > 1)
{
if (args.Contains("-dark"))
Application.SetColorMode(SystemColorMode.Dark);
{
WinFormsUtil.SetApplicationTheme(2);
Settings.Default.DarkMode = "2";
Settings.Default.Save();
}
}
Application.Run(new Main());

View File

@ -130,5 +130,20 @@ internal sealed partial class Settings : global::System.Configuration.Applicatio
this["Language"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("1")]
public string DarkMode
{
get
{
return ((string)(this["DarkMode"]));
}
set
{
this["DarkMode"] = value;
}
}
}
}

View File

@ -1,4 +1,4 @@
AchievementEditor=Record Editor
AchievementEditor=Record Editor
BuildingHelp=Building Help
BulkSpawn=Bulk Spawn
FieldItemEditor=Field Item Editor
@ -78,6 +78,7 @@ Editor.B_MoveOutAllVillagers=Box All Villagers
Editor.B_RecycleBin=Edit Recycle Bin
Editor.B_ReplaceVillager=Replace Villager
Editor.B_SetPhraseOriginal=Original
Editor.B_EditCampsite=Edit Campsite
Editor.CHK_VillagerMovingOut=Moving Out
Editor.L_AirportColor=Airport Color
Editor.L_BankBells=Bank Bells:
@ -107,6 +108,10 @@ Editor.Menu_SavePNG=Save .png
Editor.Menu_Settings=Settings
Editor.Menu_Tools=Tools
Editor.Menu_VerifyHashes=Verify Hashes
Editor.Menu_Theme=Theme
Editor.Menu_Theme_System=System Theme
Editor.Menu_Theme_Classic=Light (Classic)
Editor.Menu_Theme_Dark=Dark
Editor.Tab_Map=Map
Editor.Tab_Players=Players
Editor.Tab_Villagers=Villagers
@ -242,7 +247,10 @@ MiscPlayerEditor.B_Save=Save
MiscPlayerEditor.CHK_CustomItem=Custom
MiscPlayerEditor.CHK_ProfileMadeVillage=Made Village
MiscPlayerEditor.L_Birthday=Birthday (M/D):
MiscPlayerEditor.L_ProfileSpecialtyFruit=Fruit
MiscPlayerEditor.L_ProfileSpecialtyFruit=Obst (Lokal)
MiscPlayerEditor.L_ProfileSisterFruit=Obst (Schwester)
MiscPlayerEditor.L_ProfileSpecialtyFlower=Blume (Lokal)
MiscPlayerEditor.L_ProfileSisterFlower=Blume (Schwester)
MiscPlayerEditor.L_ProfileTimestamp=Timestamp
MiscPlayerEditor.Tab_Misc=Misc
MiscPlayerEditor.Tab_Profile=Profile
@ -490,3 +498,12 @@ VillagerMemoryEditor.LBL_Name=Name:
VillagerMemoryEditor.Tab_Flags=Flags
VillagerMemoryEditor.Tab_Greet=Greet
VillagerMemoryEditor.Tab_Misc=Misc
CampsiteEditor.B_Cancel=Stornieren
CampsiteEditor.B_Save=Speichern
CampsiteEditor.L_Variant=Variante:
CampsiteEditor.L_Species=Spezies:
CampsiteEditor.L_Camper_ExternalName=Name des Besuchers:
CampsiteEditor.L_Camper_InternalName=Dorfbewohner-Code:
CampsiteEditor.L_Camper_Edit=Besucher bearbeiten:
CampsiteEditor.L_CampsiteUnlockStatus=Der Campingplatz ist in diesem Speicherstand derzeit nicht freigeschaltet.
CampsiteEditor.L_CampDate=Termin für den Campbesuch festlegen:

View File

@ -1,4 +1,4 @@
AchievementEditor=Record Editor
AchievementEditor=Record Editor
BuildingHelp=Building Help
BulkSpawn=Bulk Spawn
FieldItemEditor=Field Item Editor
@ -78,6 +78,7 @@ Editor.B_MoveOutAllVillagers=Box All Villagers
Editor.B_RecycleBin=Edit Recycle Bin
Editor.B_ReplaceVillager=Replace Villager
Editor.B_SetPhraseOriginal=Original
Editor.B_EditCampsite=Edit Campsite
Editor.CHK_VillagerMovingOut=Moving Out
Editor.L_AirportColor=Airport Color
Editor.L_BankBells=Bank Bells:
@ -107,6 +108,10 @@ Editor.Menu_SavePNG=Save .png
Editor.Menu_Settings=Settings
Editor.Menu_Tools=Tools
Editor.Menu_VerifyHashes=Verify Hashes
Editor.Menu_Theme=Theme
Editor.Menu_Theme_System=System Theme
Editor.Menu_Theme_Classic=Light (Classic)
Editor.Menu_Theme_Dark=Dark
Editor.Tab_Map=Map
Editor.Tab_Players=Players
Editor.Tab_Villagers=Villagers
@ -242,7 +247,10 @@ MiscPlayerEditor.B_Save=Save
MiscPlayerEditor.CHK_CustomItem=Custom
MiscPlayerEditor.CHK_ProfileMadeVillage=Made Village
MiscPlayerEditor.L_Birthday=Birthday (M/D):
MiscPlayerEditor.L_ProfileSpecialtyFruit=Fruit
MiscPlayerEditor.L_ProfileSpecialtyFruit=Fruit (Local)
MiscPlayerEditor.L_ProfileSisterFruit=Fruit (Sister)
MiscPlayerEditor.L_ProfileSpecialtyFlower=Flower (Local)
MiscPlayerEditor.L_ProfileSisterFlower=Flower (Sister)
MiscPlayerEditor.L_ProfileTimestamp=Timestamp
MiscPlayerEditor.Tab_Misc=Misc
MiscPlayerEditor.Tab_Profile=Profile
@ -490,3 +498,12 @@ VillagerMemoryEditor.LBL_Name=Name:
VillagerMemoryEditor.Tab_Flags=Flags
VillagerMemoryEditor.Tab_Greet=Greet
VillagerMemoryEditor.Tab_Misc=Misc
CampsiteEditor.B_Cancel=Cancel
CampsiteEditor.B_Save=Save
CampsiteEditor.L_Variant=Variant:
CampsiteEditor.L_Species=Species:
CampsiteEditor.L_Camper_ExternalName=Visitor Name:
CampsiteEditor.L_Camper_InternalName=Villager Code:
CampsiteEditor.L_Camper_Edit=Edit Visitor:
CampsiteEditor.L_CampsiteUnlockStatus=Campsite is not currently unlocked on this save.
CampsiteEditor.L_CampDate=Set Camp Visit Date:

View File

@ -1,4 +1,4 @@
AchievementEditor=Editor de Récords
AchievementEditor=Editor de Récords
BuildingHelp=Ayuda de Construcción
BulkSpawn=Aumentar Spawn
FieldItemEditor=Editor de Objetos (Terreno)
@ -77,6 +77,7 @@ Editor.B_MoveOutAllVillagers=Box All Villagers
Editor.B_RecycleBin=Editar Papelera de Reciclaje
Editor.B_ReplaceVillager=Replace Villager
Editor.B_SetPhraseOriginal=Original
Editor.B_EditCampsite=Edit Campsite
Editor.CHK_VillagerMovingOut=Moviebdo Afuera
Editor.L_AirportColor=Color de Aeropuerto
Editor.L_BankBells=Bayas (Banco):
@ -106,6 +107,10 @@ Editor.Menu_SavePNG=Guardar .png
Editor.Menu_Settings=Ajustes
Editor.Menu_Tools=Herramientas
Editor.Menu_VerifyHashes=Verificar Hashes
Editor.Menu_Theme=Theme
Editor.Menu_Theme_System=System Theme
Editor.Menu_Theme_Classic=Light (Classic)
Editor.Menu_Theme_Dark=Dark
Editor.Tab_Map=Mapa
Editor.Tab_Players=Jugadores
Editor.Tab_Villagers=Ciudadanos
@ -241,7 +246,10 @@ MiscPlayerEditor.B_Save=Guardar
MiscPlayerEditor.CHK_CustomItem=Custom
MiscPlayerEditor.CHK_ProfileMadeVillage=Ciudadano Hecho
MiscPlayerEditor.L_Birthday=Cumpleaños (M/D):
MiscPlayerEditor.L_ProfileSpecialtyFruit=Fruta
MiscPlayerEditor.L_ProfileSpecialtyFruit=Fruta (Local)
MiscPlayerEditor.L_ProfileSisterFruit=Fruta (Sister)
MiscPlayerEditor.L_ProfileSpecialtyFlower=Flor (Local)
MiscPlayerEditor.L_ProfileSisterFlower=Flor (Sister)
MiscPlayerEditor.L_ProfileTimestamp=Timestamp
MiscPlayerEditor.Tab_Misc=Misc.
MiscPlayerEditor.Tab_Profile=Perfil
@ -490,3 +498,12 @@ VillagerMemoryEditor.LBL_Name=Name:
VillagerMemoryEditor.Tab_Flags=Flags
VillagerMemoryEditor.Tab_Greet=Saludo
VillagerMemoryEditor.Tab_Misc=Misc.
CampsiteEditor.B_Cancel=Cancelar
CampsiteEditor.B_Save=Guardar
CampsiteEditor.L_Variant=Variante:
CampsiteEditor.L_Species=Especies:
CampsiteEditor.L_Camper_ExternalName=Nombre del visitante:
CampsiteEditor.L_Camper_InternalName=Código de aldeano:
CampsiteEditor.L_Camper_Edit=Editar Visitante:
CampsiteEditor.L_CampsiteUnlockStatus=El camping no está desbloqueado actualmente en este guardado.
CampsiteEditor.L_CampDate=Establecer fecha de visita al campamento:

View File

@ -1,4 +1,4 @@
AchievementEditor=Éditeur d'enregistrement
AchievementEditor=Éditeur d'enregistrement
BuildingHelp=Aide à la construction
BulkSpawn=Spawn en vrac
FieldItemEditor=Éditeur d'élément de champ
@ -78,6 +78,7 @@ Editor.B_MoveOutAllVillagers=Box All Villagers
Editor.B_RecycleBin=Edit Recycle Bin
Editor.B_ReplaceVillager=Replace Villager
Editor.B_SetPhraseOriginal=Original
Editor.B_EditCampsite=Edit Campsite
Editor.CHK_VillagerMovingOut=Moving Out
Editor.L_AirportColor=Airport Color
Editor.L_BankBells=Bank Bells:
@ -107,6 +108,10 @@ Editor.Menu_SavePNG=Save .png
Editor.Menu_Settings=Settings
Editor.Menu_Tools=Tools
Editor.Menu_VerifyHashes=Verify Hashes
Editor.Menu_Theme=Theme
Editor.Menu_Theme_System=System Theme
Editor.Menu_Theme_Classic=Light (Classic)
Editor.Menu_Theme_Dark=Dark
Editor.Tab_Map=Map
Editor.Tab_Players=Players
Editor.Tab_Villagers=Villagers
@ -242,7 +247,10 @@ MiscPlayerEditor.B_Save=Save
MiscPlayerEditor.CHK_CustomItem=Custom
MiscPlayerEditor.CHK_ProfileMadeVillage=Made Village
MiscPlayerEditor.L_Birthday=Birthday (M/D):
MiscPlayerEditor.L_ProfileSpecialtyFruit=Fruit
MiscPlayerEditor.L_ProfileSpecialtyFruit=Fruit (Local)
MiscPlayerEditor.L_ProfileSisterFruit=Fruit (Sœur)
MiscPlayerEditor.L_ProfileSpecialtyFlower=Fleur (Local)
MiscPlayerEditor.L_ProfileSisterFlower=Fleur (Sœur)
MiscPlayerEditor.L_ProfileTimestamp=Timestamp
MiscPlayerEditor.Tab_Misc=Misc
MiscPlayerEditor.Tab_Profile=Profile
@ -490,3 +498,12 @@ VillagerMemoryEditor.LBL_Name=Name:
VillagerMemoryEditor.Tab_Flags=Flags
VillagerMemoryEditor.Tab_Greet=Greet
VillagerMemoryEditor.Tab_Misc=Misc
CampsiteEditor.B_Cancel=Annuler
CampsiteEditor.B_Save=Enregistrer
CampsiteEditor.L_Variant=Variante:
CampsiteEditor.L_Species=Espèces:
CampsiteEditor.L_Camper_ExternalName=Nom du visiteur:
CampsiteEditor.L_Camper_InternalName=Code villageois:
CampsiteEditor.L_Camper_Edit=Modifier le visiteur:
CampsiteEditor.L_CampsiteUnlockStatus=Le camping n'est pas débloqué pour le moment dans cette sauvegarde.
CampsiteEditor.L_CampDate=Fixez la date de visite du camp:

View File

@ -1,4 +1,4 @@
AchievementEditor=Modifica Record
AchievementEditor=Modifica Record
BuildingHelp=Aiuto Costruzione
BulkSpawn=Genera in massa
FieldItemEditor=Modifica oggetti sul terreno
@ -78,6 +78,7 @@ Editor.B_MoveOutAllVillagers=Box All Villagers
Editor.B_RecycleBin=Modifica Cestino
Editor.B_ReplaceVillager=Replace Villager
Editor.B_SetPhraseOriginal=Original
Editor.B_EditCampsite=Modifica Campeggio
Editor.CHK_VillagerMovingOut=Trasloco Residente
Editor.L_AirportColor=Colore Aeroporto
Editor.L_BankBells=Stelline Banca:
@ -107,6 +108,10 @@ Editor.Menu_SavePNG=Salva .png
Editor.Menu_Settings=Impostazioni
Editor.Menu_Tools=Strumenti
Editor.Menu_VerifyHashes=Verifica hash
Editor.Menu_Theme=Tema
Editor.Menu_Theme_System=Sistema Tema
Editor.Menu_Theme_Classic=Leggero (Classico)
Editor.Menu_Theme_Dark=Scuro
Editor.Tab_Map=Mappa
Editor.Tab_Players=Giocatori
Editor.Tab_Villagers=Residenti
@ -242,7 +247,10 @@ MiscPlayerEditor.B_Save=Salva
MiscPlayerEditor.CHK_CustomItem=Personale
MiscPlayerEditor.CHK_ProfileMadeVillage=Isola Creata
MiscPlayerEditor.L_Birthday=Compleanno (M/G):
MiscPlayerEditor.L_ProfileSpecialtyFruit=Frutto
MiscPlayerEditor.L_ProfileSpecialtyFruit=Frutto (Locale)
MiscPlayerEditor.L_ProfileSisterFruit=Frutto (Sorella)
MiscPlayerEditor.L_ProfileSpecialtyFlower=Fiore (Locale)
MiscPlayerEditor.L_ProfileSisterFlower=Fiore (Sorella)
MiscPlayerEditor.L_ProfileTimestamp=Registrazione
MiscPlayerEditor.Tab_Misc=Altro
MiscPlayerEditor.Tab_Profile=Profilo
@ -491,3 +499,12 @@ VillagerMemoryEditor.Tab_Flags=Flags
VillagerMemoryEditor.Tab_Greet=Saluti
VillagerMemoryEditor.Tab_Misc=Altro
VillagmoderMemoryEditor.L_Greeting3=Saluto 3:
CampsiteEditor.B_Cancel=Cancellare
CampsiteEditor.B_Save=Salva
CampsiteEditor.L_Variant=Variante:
CampsiteEditor.L_Species=Specie:
CampsiteEditor.L_Camper_ExternalName=Nome del visitatore:
CampsiteEditor.L_Camper_InternalName=Codice del villico:
CampsiteEditor.L_Camper_Edit=Modifica visitatore:
CampsiteEditor.L_CampsiteUnlockStatus=Al momento, il campeggio non è sbloccato in questo salvataggio.
CampsiteEditor.L_CampDate=Imposta la data della visita al campo:

View File

@ -1,4 +1,4 @@
AchievementEditor=Record Editor
AchievementEditor=Record Editor
BuildingHelp=Building Help
BulkSpawn=Bulk Spawn
FieldItemEditor=Field Item Editor
@ -78,6 +78,7 @@ Editor.B_MoveOutAllVillagers=Box All Villagers
Editor.B_RecycleBin=Edit Recycle Bin
Editor.B_ReplaceVillager=Replace Villager
Editor.B_SetPhraseOriginal=Original
Editor.B_EditCampsite=キャンプ場を編集
Editor.CHK_VillagerMovingOut=Moving Out
Editor.L_AirportColor=Airport Color
Editor.L_BankBells=Bank Bells:
@ -107,6 +108,10 @@ Editor.Menu_SavePNG=Save .png
Editor.Menu_Settings=Settings
Editor.Menu_Tools=Tools
Editor.Menu_VerifyHashes=Verify Hashes
Editor.Menu_Theme=テーマ
Editor.Menu_Theme_System=システムテーマ
Editor.Menu_Theme_Classic=ライトモード(クラシック)
Editor.Menu_Theme_Dark=ダークモード
Editor.Tab_Map=Map
Editor.Tab_Players=Players
Editor.Tab_Villagers=Villagers
@ -242,7 +247,10 @@ MiscPlayerEditor.B_Save=Save
MiscPlayerEditor.CHK_CustomItem=Custom
MiscPlayerEditor.CHK_ProfileMadeVillage=Made Village
MiscPlayerEditor.L_Birthday=Birthday (M/D):
MiscPlayerEditor.L_ProfileSpecialtyFruit=Fruit
MiscPlayerEditor.L_ProfileSpecialtyFruit=果物(地元)
MiscPlayerEditor.L_ProfileSisterFruit=果物 (姉妹)
MiscPlayerEditor.L_ProfileSpecialtyFlower=花 (地元)
MiscPlayerEditor.L_ProfileSisterFlower=花 (姉妹)
MiscPlayerEditor.L_ProfileTimestamp=Timestamp
MiscPlayerEditor.Tab_Misc=Misc
MiscPlayerEditor.Tab_Profile=Profile
@ -490,3 +498,12 @@ VillagerMemoryEditor.LBL_Name=Name:
VillagerMemoryEditor.Tab_Flags=Flags
VillagerMemoryEditor.Tab_Greet=Greet
VillagerMemoryEditor.Tab_Misc=Misc
CampsiteEditor.B_Cancel=キャンセル
CampsiteEditor.B_Save=保存
CampsiteEditor.L_Variant=変異体:
CampsiteEditor.L_Species=種:
CampsiteEditor.L_Camper_ExternalName=村人の名前:
CampsiteEditor.L_Camper_InternalName=村人コード:
CampsiteEditor.L_Camper_Edit=訪問者を編集:
CampsiteEditor.L_CampsiteUnlockStatus=このセーブではキャンプ場は現在ロック解除されていません。
CampsiteEditor.L_CampDate=キャンプ訪問日を設定:

View File

@ -1,4 +1,4 @@
AchievementEditor=업적 편집기
AchievementEditor=업적 편집기
BuildingHelp=건물 도움말
BulkSpawn=대량 생성
FieldItemEditor=필드 아이템 편집기
@ -78,6 +78,7 @@ Editor.B_MoveOutAllVillagers=모든 주민 짐싸기
Editor.B_RecycleBin=재활용함 편집
Editor.B_ReplaceVillager=주민 교체
Editor.B_SetPhraseOriginal=원본
Editor.B_EditCampsite=캠핑장 편집
Editor.CHK_VillagerMovingOut=이사 준비
Editor.L_AirportColor=공항 색상
Editor.L_BankBells=은행 벨:
@ -107,6 +108,10 @@ Editor.Menu_SavePNG=.png 저장
Editor.Menu_Settings=설정
Editor.Menu_Tools=도구
Editor.Menu_VerifyHashes=해시 검증
Editor.Menu_Theme=주제
Editor.Menu_Theme_System=시스템 테마
Editor.Menu_Theme_Classic=라이트 모드(클래식)
Editor.Menu_Theme_Dark=다크 모드
Editor.Tab_Map=지도
Editor.Tab_Players=플레이어
Editor.Tab_Villagers=주민
@ -242,7 +247,10 @@ MiscPlayerEditor.B_Save=저장
MiscPlayerEditor.CHK_CustomItem=사용자 지정
MiscPlayerEditor.CHK_ProfileMadeVillage=마을 생성
MiscPlayerEditor.L_Birthday=생일 (월/일):
MiscPlayerEditor.L_ProfileSpecialtyFruit=과일
MiscPlayerEditor.L_ProfileSpecialtyFruit=과일(현지)
MiscPlayerEditor.L_ProfileSisterFruit=과일 (자매)
MiscPlayerEditor.L_ProfileSpecialtyFlower=꽃 (현지)
MiscPlayerEditor.L_ProfileSisterFlower=꽃 (자매)
MiscPlayerEditor.L_ProfileTimestamp=타임스탬프
MiscPlayerEditor.Tab_Misc=기타
MiscPlayerEditor.Tab_Profile=프로필
@ -490,3 +498,12 @@ VillagerMemoryEditor.LBL_Name=이름:
VillagerMemoryEditor.Tab_Flags=플래그
VillagerMemoryEditor.Tab_Greet=인사
VillagerMemoryEditor.Tab_Misc=기타
CampsiteEditor.B_Cancel=취소
CampsiteEditor.B_Save=구하다
CampsiteEditor.L_Variant=변종:
CampsiteEditor.L_Species=종:
CampsiteEditor.L_Camper_ExternalName=방문자 이름:
CampsiteEditor.L_Camper_InternalName=마을 주민 코드:
CampsiteEditor.L_Camper_Edit=방문자 정보 수정:
CampsiteEditor.L_CampsiteUnlockStatus=현재 이 저장 파일에서는 캠프장이 잠금 해제되지 않았습니다.
CampsiteEditor.L_CampDate=캠프 방문 날짜를 정하세요:

View File

@ -1,4 +1,4 @@
AchievementEditor=记录编辑器
AchievementEditor=记录编辑器
BuildingHelp=建筑帮助
BulkSpawn=Bulk Spawn
FieldItemEditor=地皮编辑器
@ -78,6 +78,7 @@ Editor.B_MoveOutAllVillagers=赶走所有岛民
Editor.B_RecycleBin=编辑回收箱
Editor.B_ReplaceVillager=替换村民
Editor.B_SetPhraseOriginal=初始口头禅
Editor.B_EditCampsite=编辑露营地
Editor.CHK_VillagerMovingOut=赶走岛民
Editor.L_AirportColor=机场颜色
Editor.L_BankBells=银行存款:
@ -107,6 +108,10 @@ Editor.Menu_SavePNG=保存为PNG
Editor.Menu_Settings=设置
Editor.Menu_Tools=工具
Editor.Menu_VerifyHashes=校验哈希
Editor.Menu_Theme=主题
Editor.Menu_Theme_System=系统主题
Editor.Menu_Theme_Classic=浅色模式(经典)
Editor.Menu_Theme_Dark=深色模式
Editor.Tab_Map=地图
Editor.Tab_Players=玩家
Editor.Tab_Villagers=岛民
@ -242,7 +247,10 @@ MiscPlayerEditor.B_Save=保存
MiscPlayerEditor.CHK_CustomItem=自定义
MiscPlayerEditor.CHK_ProfileMadeVillage=已建立村庄
MiscPlayerEditor.L_Birthday=生日 (月/日):
MiscPlayerEditor.L_ProfileSpecialtyFruit=默认水果
MiscPlayerEditor.L_ProfileSpecialtyFruit=水果(当地)
MiscPlayerEditor.L_ProfileSisterFruit=水果 (姐妹)
MiscPlayerEditor.L_ProfileSpecialtyFlower=花 (当地)
MiscPlayerEditor.L_ProfileSisterFlower=花 (姐妹)
MiscPlayerEditor.L_ProfileTimestamp=登岛日
MiscPlayerEditor.Tab_Misc=杂项
MiscPlayerEditor.Tab_Profile=个人信息
@ -490,3 +498,12 @@ VillagerMemoryEditor.LBL_Name=玩家名称:
VillagerMemoryEditor.Tab_Flags=参数
VillagerMemoryEditor.Tab_Greet=打招呼
VillagerMemoryEditor.Tab_Misc=杂项
CampsiteEditor.B_Cancel=取消
CampsiteEditor.B_Save=节省
CampsiteEditor.L_Variant=变体:
CampsiteEditor.L_Species=物种:
CampsiteEditor.L_Camper_ExternalName=访客姓名:
CampsiteEditor.L_Camper_InternalName=村民代码:
CampsiteEditor.L_Camper_Edit=编辑访客:
CampsiteEditor.L_CampsiteUnlockStatus=此存档中露营地尚未解锁。
CampsiteEditor.L_CampDate=确定营地参观日期:

View File

@ -1,4 +1,4 @@
AchievementEditor=成就編輯器
AchievementEditor=成就編輯器
BuildingHelp=建築說明
BulkSpawn=Bulk Spawn
FieldItemEditor=地皮編輯器
@ -78,6 +78,7 @@ Editor.B_MoveOutAllVillagers=Box All Villagers
Editor.B_RecycleBin=編輯回收箱
Editor.B_ReplaceVillager=Replace Villager
Editor.B_SetPhraseOriginal=Original
Editor.B_EditCampsite=編輯露營地
Editor.CHK_VillagerMovingOut=趕走島民
Editor.L_AirportColor=機場顏色
Editor.L_BankBells=銀行存款:
@ -107,6 +108,10 @@ Editor.Menu_SavePNG=儲存為PNG
Editor.Menu_Settings=設定
Editor.Menu_Tools=工具
Editor.Menu_VerifyHashes=校驗Hashes
Editor.Menu_Theme=主題
Editor.Menu_Theme_System=系統主題
Editor.Menu_Theme_Classic=淺色模式(經典)
Editor.Menu_Theme_Dark=深色模式
Editor.Tab_Map=地圖
Editor.Tab_Players=玩家
Editor.Tab_Villagers=島民
@ -242,7 +247,10 @@ MiscPlayerEditor.B_Save=儲存
MiscPlayerEditor.CHK_CustomItem=自訂
MiscPlayerEditor.CHK_ProfileMadeVillage=已建立村莊
MiscPlayerEditor.L_Birthday=生日 (月/日):
MiscPlayerEditor.L_ProfileSpecialtyFruit=預設水果
MiscPlayerEditor.L_ProfileSpecialtyFruit=水果(当地)
MiscPlayerEditor.L_ProfileSisterFruit=水果 (姊妹)
MiscPlayerEditor.L_ProfileSpecialtyFlower=花 (当地)
MiscPlayerEditor.L_ProfileSisterFlower=花 (姊妹)
MiscPlayerEditor.L_ProfileTimestamp=Timestamp
MiscPlayerEditor.Tab_Misc=雜項
MiscPlayerEditor.Tab_Profile=個人資訊
@ -490,3 +498,12 @@ VillagerMemoryEditor.LBL_Name=Name:
VillagerMemoryEditor.Tab_Flags=參數
VillagerMemoryEditor.Tab_Greet=打招呼
VillagerMemoryEditor.Tab_Misc=雜項
CampsiteEditor.B_Cancel=取消
CampsiteEditor.B_Save=節省
CampsiteEditor.L_Variant=變體:
CampsiteEditor.L_Species=物種:
CampsiteEditor.L_Camper_ExternalName=訪客姓名:
CampsiteEditor.L_Camper_InternalName=村民代碼:
CampsiteEditor.L_Camper_Edit=編輯訪客
CampsiteEditor.L_CampsiteUnlockStatus=此存檔中露營地尚未解鎖。
CampsiteEditor.L_CampDate=確定營地參觀日期:

View File

@ -246,6 +246,7 @@ private void InitializeComponent()
Controls.Add(PB_Villager);
Icon = Properties.Resources.icon;
Name = "CampsiteEditor";
SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide;
Text = "Campsite Editor";
((System.ComponentModel.ISupportInitialize)PB_Villager).EndInit();
((System.ComponentModel.ISupportInitialize)NUD_Variant).EndInit();

View File

@ -194,7 +194,7 @@ private void InitializeComponent()
L_ProfileSpecialtyFlower.Name = "L_ProfileSpecialtyFlower";
L_ProfileSpecialtyFlower.Size = new System.Drawing.Size(42, 15);
L_ProfileSpecialtyFlower.TabIndex = 20;
L_ProfileSpecialtyFlower.Text = "Flower";
L_ProfileSpecialtyFlower.Text = "Flower (Local)";
//
// RIS_SisterFruit
//
@ -249,7 +249,7 @@ private void InitializeComponent()
L_ProfileSpecialtyFruit.Name = "L_ProfileSpecialtyFruit";
L_ProfileSpecialtyFruit.Size = new System.Drawing.Size(89, 15);
L_ProfileSpecialtyFruit.TabIndex = 14;
L_ProfileSpecialtyFruit.Text = "Fruit (Specialty)";
L_ProfileSpecialtyFruit.Text = "Fruit (Local)";
//
// L_ProfileTimestamp
//

View File

@ -53,4 +53,10 @@ public static class MessageStrings
public static string MsgVillagerReplaceNoText { get; set; } = "Clipboard: No text found! Expected internal villager name.";
public static string MsgVillagerReplaceOutdatedSaveFormat { get; set; } = "Save file is not up to date with latest villager format. Please update in-game.";
public static string MsgVillagerReplaceUnknownName { get; set; } = "Clipboard: {0} is not a valid internal villager name.";
public static string MsgDialogButtonYes { get; set; } = "Yes";
public static string MsgDialogButtonNo { get; set; } = "No";
public static string MsgDialogButtonCancel { get; set; } = "Cancel";
public static string MsgWarning { get; set; } = "Warning!";
public static string MsgAskSaveBeforeRestart { get; set; } = "This requires the application to restart! Save any current changes first?";
}

View File

@ -1,3 +1,4 @@
using NHSE.WinForms.Properties;
using System;
using System.Diagnostics.CodeAnalysis;
using System.Drawing;
@ -89,4 +90,28 @@ internal static void CenterToForm(this Control child, Control parent)
int y = parent.Location.Y + ((parent.Height - child.Height) / 2);
child.Location = new Point(Math.Max(x, 0), Math.Max(y, 0));
}
/// <summary>
/// Sets the application color mode based on the <paramref name="theme"/> <typeparamref name="int"/> passed to it and stores it in the application <see cref="Settings"/>.
/// </summary>
/// <param name="theme"></param>
public static void SetApplicationTheme(int theme)
{
switch (theme)
{
case 0:
Application.SetColorMode(SystemColorMode.Classic);
break;
case 1:
Application.SetColorMode(SystemColorMode.System);
break;
case 2:
Application.SetColorMode(SystemColorMode.Dark);
break;
}
var settings = Settings.Default;
settings.DarkMode = theme.ToString();
settings.Save();
}
}