Skip to content

Commit

Permalink
Added LangOptions section.
Browse files Browse the repository at this point in the history
  • Loading branch information
max-eroshkin committed Dec 3, 2021
1 parent a34365a commit 87ad3ae
Show file tree
Hide file tree
Showing 7 changed files with 85 additions and 1 deletion.
1 change: 1 addition & 0 deletions InnoSetup.ScriptBuilder.sln.DotSettings
Original file line number Diff line number Diff line change
Expand Up @@ -218,6 +218,7 @@
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=ASLR/@EntryIndexedValue">ASLR</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=DCS/@EntryIndexedValue">DCS</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=DEP/@EntryIndexedValue">DEP</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=ID/@EntryIndexedValue">ID</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=LZMA/@EntryIndexedValue">LZMA</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=OS/@EntryIndexedValue">OS</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=PSDCS/@EntryIndexedValue">PSDCS</s:String>
Expand Down
2 changes: 2 additions & 0 deletions source/BuilderTests/TestBuilder.cs
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,8 @@ public TestBuilder()
.InfoBeforeFile("InfoBeforeFile");
Languages.CreateEntry("Name", "MessageFile");

LangOptions.Create().LanguageName("LanguageName");

Registry.CreateEntry(RegistryKeys.HKCU, "Subkey")
.ValueName("ValueName")
.ValueType(ValueTypes.String)
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
namespace InnoSetup.ScriptBuilder
{
public interface ILangOptionsBuilder
{
LangOptionsBuilder Create();
}
}
4 changes: 4 additions & 0 deletions source/InnoSetup.ScriptBuilder/Builder/IssBuilder.cs
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ public abstract class IssBuilder : IBuilder
private readonly DeleteBuilder _installDelete = new("InstallDelete");
private readonly GenericKeyValueSectionBuilder _messages = new("Messages");
private readonly GenericKeyValueSectionBuilder _customMessages = new("CustomMessages");
private readonly LangOptionsBuilder _langOptionsBuilder = new();

public ISetupBuilder Setup => _setup;

Expand All @@ -32,6 +33,8 @@ public abstract class IssBuilder : IBuilder

public ILanguageEntryBuilder Languages => _languages;

public ILangOptionsBuilder LangOptions => _langOptionsBuilder;

public IDirsBuilder Dirs => _dirs;

public ITypesBuilder Types => _types;
Expand Down Expand Up @@ -67,6 +70,7 @@ public void Write(TextWriter writer)
_tasks.Write(writer);
_types.Write(writer);
_languages.Write(writer);
_langOptionsBuilder.Write(writer);
_messages.Write(writer);
_customMessages.Write(writer);
_dirs.Write(writer);
Expand Down
41 changes: 41 additions & 0 deletions source/InnoSetup.ScriptBuilder/Builder/LangOptionsBuilder.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
namespace InnoSetup.ScriptBuilder
{
using Model.LangOptionsSection;

public class LangOptionsBuilder :
KeyValueSectionBuilderBase<LangOptionsBuilder, LangOptionsSection>,
ILangOptionsBuilder
{
public override string SectionName => "LangOptions";

public LangOptionsBuilder Create()
{
CreateEntryInternal();
return this;
}

public LangOptionsBuilder LanguageName(string value) => SetPropertyValue(value);

public LangOptionsBuilder DialogFontName(string value) => SetPropertyValue(value);

public LangOptionsBuilder DialogFontSize(int value) => SetPropertyValue(value);

public LangOptionsBuilder WelcomeFontName(string value) => SetPropertyValue(value);

public LangOptionsBuilder WelcomeFontSize(int value) => SetPropertyValue(value);

public LangOptionsBuilder TitleFontName(string value) => SetPropertyValue(value);

public LangOptionsBuilder TitleFontSize(int value) => SetPropertyValue(value);

public LangOptionsBuilder CopyrightFontName(string value) => SetPropertyValue(value);

public LangOptionsBuilder CopyrightFontSize(int value) => SetPropertyValue(value);

public LangOptionsBuilder RightToLeft(YesNo value) => SetPropertyValue(value);

public LangOptionsBuilder LanguageID(string value) => SetPropertyValue(value);

public LangOptionsBuilder LanguageCodePage(long value) => SetPropertyValue(value);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
namespace InnoSetup.ScriptBuilder.Model.LangOptionsSection
{
public class LangOptionsSection : KeyValueSection
{
public string LanguageName { get; set; }

public string DialogFontName { get; set; }

public int? DialogFontSize { get; set; }

public string WelcomeFontName { get; set; }

public int? WelcomeFontSize { get; set; }

public string TitleFontName { get; set; }

public int? TitleFontSize { get; set; }

public string CopyrightFontName { get; set; }

public int? CopyrightFontSize { get; set; }

public YesNo? RightToLeft { get; set; }

public string LanguageID { get; set; }

public long? LanguageCodePage { get; set; }
}
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
namespace InnoSetup.ScriptBuilder.Model.SetupSection
{
public class SetupSection : ModelBase
public class SetupSection : KeyValueSection
{
public string AppName { get; set; }

Expand Down

0 comments on commit 87ad3ae

Please sign in to comment.