Skip to content

Commit dd07654

Browse files
committed
v1.4.14 Bug fix for default fonts
1 parent c237c2b commit dd07654

15 files changed

+232
-91
lines changed

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,5 @@ Release/
44
*.suo
55
*.cache
66
*.csproj.user
7+
*.userprefs
78
Thumbs.db

WsdlUI.sln

+57-51
Original file line numberDiff line numberDiff line change
@@ -35,85 +35,91 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Drexyia.WebSvc.Process.Test
3535
EndProject
3636
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Drexyia.Utils.Tests", "Drexyia\Drexyia.Utils.Tests\Drexyia.Utils.Tests.csproj", "{132E1BF7-7005-4268-AC8A-F8FC316BE74D}"
3737
EndProject
38+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WsdlUI.App.UI.Tests", "WsdlUI\WsdlUI.App.UI.Tests\WsdlUI.App.UI.Tests.csproj", "{09EC7822-8631-4607-8F04-375DA535CE13}"
39+
EndProject
3840
Global
3941
GlobalSection(SolutionConfigurationPlatforms) = preSolution
4042
Debug|Any CPU = Debug|Any CPU
4143
Release|Any CPU = Release|Any CPU
4244
EndGlobalSection
4345
GlobalSection(ProjectConfigurationPlatforms) = postSolution
46+
{09EC7822-8631-4607-8F04-375DA535CE13}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
47+
{09EC7822-8631-4607-8F04-375DA535CE13}.Debug|Any CPU.Build.0 = Debug|Any CPU
48+
{09EC7822-8631-4607-8F04-375DA535CE13}.Release|Any CPU.ActiveCfg = Release|Any CPU
49+
{09EC7822-8631-4607-8F04-375DA535CE13}.Release|Any CPU.Build.0 = Release|Any CPU
50+
{132E1BF7-7005-4268-AC8A-F8FC316BE74D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
51+
{132E1BF7-7005-4268-AC8A-F8FC316BE74D}.Debug|Any CPU.Build.0 = Debug|Any CPU
52+
{132E1BF7-7005-4268-AC8A-F8FC316BE74D}.Release|Any CPU.ActiveCfg = Release|Any CPU
53+
{132E1BF7-7005-4268-AC8A-F8FC316BE74D}.Release|Any CPU.Build.0 = Release|Any CPU
54+
{1A433E1B-2A12-49DA-AEDF-981A154AF920}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
55+
{1A433E1B-2A12-49DA-AEDF-981A154AF920}.Debug|Any CPU.Build.0 = Debug|Any CPU
56+
{1A433E1B-2A12-49DA-AEDF-981A154AF920}.Release|Any CPU.ActiveCfg = Release|Any CPU
57+
{1A433E1B-2A12-49DA-AEDF-981A154AF920}.Release|Any CPU.Build.0 = Release|Any CPU
58+
{1EC10D9E-FCCB-43A4-8933-110ACC3FCDBD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
59+
{1EC10D9E-FCCB-43A4-8933-110ACC3FCDBD}.Debug|Any CPU.Build.0 = Debug|Any CPU
60+
{1EC10D9E-FCCB-43A4-8933-110ACC3FCDBD}.Release|Any CPU.ActiveCfg = Release|Any CPU
61+
{1EC10D9E-FCCB-43A4-8933-110ACC3FCDBD}.Release|Any CPU.Build.0 = Release|Any CPU
62+
{233F44FE-EB70-4769-8AB4-2E8072CF6D65}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
63+
{233F44FE-EB70-4769-8AB4-2E8072CF6D65}.Debug|Any CPU.Build.0 = Debug|Any CPU
64+
{233F44FE-EB70-4769-8AB4-2E8072CF6D65}.Release|Any CPU.ActiveCfg = Release|Any CPU
65+
{233F44FE-EB70-4769-8AB4-2E8072CF6D65}.Release|Any CPU.Build.0 = Release|Any CPU
66+
{294DC784-F241-441B-9FF8-0E9B10938735}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
67+
{294DC784-F241-441B-9FF8-0E9B10938735}.Debug|Any CPU.Build.0 = Debug|Any CPU
68+
{294DC784-F241-441B-9FF8-0E9B10938735}.Release|Any CPU.ActiveCfg = Release|Any CPU
69+
{294DC784-F241-441B-9FF8-0E9B10938735}.Release|Any CPU.Build.0 = Release|Any CPU
70+
{3BE1683B-8E13-47EC-B2EF-E0D492AB81DF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
71+
{3BE1683B-8E13-47EC-B2EF-E0D492AB81DF}.Debug|Any CPU.Build.0 = Debug|Any CPU
72+
{3BE1683B-8E13-47EC-B2EF-E0D492AB81DF}.Release|Any CPU.ActiveCfg = Release|Any CPU
73+
{3BE1683B-8E13-47EC-B2EF-E0D492AB81DF}.Release|Any CPU.Build.0 = Release|Any CPU
74+
{45D682D2-A966-4381-A442-BD20357CD679}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
75+
{45D682D2-A966-4381-A442-BD20357CD679}.Debug|Any CPU.Build.0 = Debug|Any CPU
76+
{45D682D2-A966-4381-A442-BD20357CD679}.Release|Any CPU.ActiveCfg = Release|Any CPU
77+
{45D682D2-A966-4381-A442-BD20357CD679}.Release|Any CPU.Build.0 = Release|Any CPU
4478
{635D30AE-E121-412D-A0C7-5CB662CD2569}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
4579
{635D30AE-E121-412D-A0C7-5CB662CD2569}.Debug|Any CPU.Build.0 = Debug|Any CPU
4680
{635D30AE-E121-412D-A0C7-5CB662CD2569}.Release|Any CPU.ActiveCfg = Release|Any CPU
4781
{635D30AE-E121-412D-A0C7-5CB662CD2569}.Release|Any CPU.Build.0 = Release|Any CPU
82+
{6CDE5B71-3F96-43AA-A440-745D3C7A7B31}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
83+
{6CDE5B71-3F96-43AA-A440-745D3C7A7B31}.Debug|Any CPU.Build.0 = Debug|Any CPU
84+
{6CDE5B71-3F96-43AA-A440-745D3C7A7B31}.Release|Any CPU.ActiveCfg = Release|Any CPU
85+
{6CDE5B71-3F96-43AA-A440-745D3C7A7B31}.Release|Any CPU.Build.0 = Release|Any CPU
4886
{6D501389-8AAD-4A0D-BFA3-F7A61EB0DE90}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
4987
{6D501389-8AAD-4A0D-BFA3-F7A61EB0DE90}.Debug|Any CPU.Build.0 = Debug|Any CPU
5088
{6D501389-8AAD-4A0D-BFA3-F7A61EB0DE90}.Release|Any CPU.ActiveCfg = Release|Any CPU
5189
{6D501389-8AAD-4A0D-BFA3-F7A61EB0DE90}.Release|Any CPU.Build.0 = Release|Any CPU
52-
{D6829F54-F7F8-4C9E-B7E7-30BCDCDE5FF9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
53-
{D6829F54-F7F8-4C9E-B7E7-30BCDCDE5FF9}.Debug|Any CPU.Build.0 = Debug|Any CPU
54-
{D6829F54-F7F8-4C9E-B7E7-30BCDCDE5FF9}.Release|Any CPU.ActiveCfg = Release|Any CPU
55-
{D6829F54-F7F8-4C9E-B7E7-30BCDCDE5FF9}.Release|Any CPU.Build.0 = Release|Any CPU
56-
{9BE93312-85AF-43C9-A3FF-AC2AA0F80099}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
57-
{9BE93312-85AF-43C9-A3FF-AC2AA0F80099}.Debug|Any CPU.Build.0 = Debug|Any CPU
58-
{9BE93312-85AF-43C9-A3FF-AC2AA0F80099}.Release|Any CPU.ActiveCfg = Release|Any CPU
59-
{9BE93312-85AF-43C9-A3FF-AC2AA0F80099}.Release|Any CPU.Build.0 = Release|Any CPU
60-
{1EC10D9E-FCCB-43A4-8933-110ACC3FCDBD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
61-
{1EC10D9E-FCCB-43A4-8933-110ACC3FCDBD}.Debug|Any CPU.Build.0 = Debug|Any CPU
62-
{1EC10D9E-FCCB-43A4-8933-110ACC3FCDBD}.Release|Any CPU.ActiveCfg = Release|Any CPU
63-
{1EC10D9E-FCCB-43A4-8933-110ACC3FCDBD}.Release|Any CPU.Build.0 = Release|Any CPU
6490
{8FB1B2D3-2EFD-40A6-AD45-D4AE570D9CFA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
6591
{8FB1B2D3-2EFD-40A6-AD45-D4AE570D9CFA}.Debug|Any CPU.Build.0 = Debug|Any CPU
6692
{8FB1B2D3-2EFD-40A6-AD45-D4AE570D9CFA}.Release|Any CPU.ActiveCfg = Release|Any CPU
6793
{8FB1B2D3-2EFD-40A6-AD45-D4AE570D9CFA}.Release|Any CPU.Build.0 = Release|Any CPU
68-
{6CDE5B71-3F96-43AA-A440-745D3C7A7B31}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
69-
{6CDE5B71-3F96-43AA-A440-745D3C7A7B31}.Debug|Any CPU.Build.0 = Debug|Any CPU
70-
{6CDE5B71-3F96-43AA-A440-745D3C7A7B31}.Release|Any CPU.ActiveCfg = Release|Any CPU
71-
{6CDE5B71-3F96-43AA-A440-745D3C7A7B31}.Release|Any CPU.Build.0 = Release|Any CPU
72-
{AF547FA4-2BA4-4C47-98FB-3749422484C5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
73-
{AF547FA4-2BA4-4C47-98FB-3749422484C5}.Debug|Any CPU.Build.0 = Debug|Any CPU
74-
{AF547FA4-2BA4-4C47-98FB-3749422484C5}.Release|Any CPU.ActiveCfg = Release|Any CPU
75-
{AF547FA4-2BA4-4C47-98FB-3749422484C5}.Release|Any CPU.Build.0 = Release|Any CPU
94+
{9BE93312-85AF-43C9-A3FF-AC2AA0F80099}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
95+
{9BE93312-85AF-43C9-A3FF-AC2AA0F80099}.Debug|Any CPU.Build.0 = Debug|Any CPU
96+
{9BE93312-85AF-43C9-A3FF-AC2AA0F80099}.Release|Any CPU.ActiveCfg = Release|Any CPU
97+
{9BE93312-85AF-43C9-A3FF-AC2AA0F80099}.Release|Any CPU.Build.0 = Release|Any CPU
7698
{A500BE20-0E73-4439-A0E3-AC23A0F3AB97}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
7799
{A500BE20-0E73-4439-A0E3-AC23A0F3AB97}.Debug|Any CPU.Build.0 = Debug|Any CPU
78100
{A500BE20-0E73-4439-A0E3-AC23A0F3AB97}.Release|Any CPU.ActiveCfg = Release|Any CPU
79101
{A500BE20-0E73-4439-A0E3-AC23A0F3AB97}.Release|Any CPU.Build.0 = Release|Any CPU
80-
{FC3377B2-406B-48A9-BCF6-19E21DF84804}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
81-
{FC3377B2-406B-48A9-BCF6-19E21DF84804}.Debug|Any CPU.Build.0 = Debug|Any CPU
82-
{FC3377B2-406B-48A9-BCF6-19E21DF84804}.Release|Any CPU.ActiveCfg = Release|Any CPU
83-
{FC3377B2-406B-48A9-BCF6-19E21DF84804}.Release|Any CPU.Build.0 = Release|Any CPU
84-
{1A433E1B-2A12-49DA-AEDF-981A154AF920}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
85-
{1A433E1B-2A12-49DA-AEDF-981A154AF920}.Debug|Any CPU.Build.0 = Debug|Any CPU
86-
{1A433E1B-2A12-49DA-AEDF-981A154AF920}.Release|Any CPU.ActiveCfg = Release|Any CPU
87-
{1A433E1B-2A12-49DA-AEDF-981A154AF920}.Release|Any CPU.Build.0 = Release|Any CPU
88-
{45D682D2-A966-4381-A442-BD20357CD679}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
89-
{45D682D2-A966-4381-A442-BD20357CD679}.Debug|Any CPU.Build.0 = Debug|Any CPU
90-
{45D682D2-A966-4381-A442-BD20357CD679}.Release|Any CPU.ActiveCfg = Release|Any CPU
91-
{45D682D2-A966-4381-A442-BD20357CD679}.Release|Any CPU.Build.0 = Release|Any CPU
92-
{3BE1683B-8E13-47EC-B2EF-E0D492AB81DF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
93-
{3BE1683B-8E13-47EC-B2EF-E0D492AB81DF}.Debug|Any CPU.Build.0 = Debug|Any CPU
94-
{3BE1683B-8E13-47EC-B2EF-E0D492AB81DF}.Release|Any CPU.ActiveCfg = Release|Any CPU
95-
{3BE1683B-8E13-47EC-B2EF-E0D492AB81DF}.Release|Any CPU.Build.0 = Release|Any CPU
102+
{AF547FA4-2BA4-4C47-98FB-3749422484C5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
103+
{AF547FA4-2BA4-4C47-98FB-3749422484C5}.Debug|Any CPU.Build.0 = Debug|Any CPU
104+
{AF547FA4-2BA4-4C47-98FB-3749422484C5}.Release|Any CPU.ActiveCfg = Release|Any CPU
105+
{AF547FA4-2BA4-4C47-98FB-3749422484C5}.Release|Any CPU.Build.0 = Release|Any CPU
96106
{B919B522-6D24-4362-98B2-37BE459F1F64}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
97107
{B919B522-6D24-4362-98B2-37BE459F1F64}.Debug|Any CPU.Build.0 = Debug|Any CPU
98108
{B919B522-6D24-4362-98B2-37BE459F1F64}.Release|Any CPU.ActiveCfg = Release|Any CPU
99109
{B919B522-6D24-4362-98B2-37BE459F1F64}.Release|Any CPU.Build.0 = Release|Any CPU
100-
{233F44FE-EB70-4769-8AB4-2E8072CF6D65}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
101-
{233F44FE-EB70-4769-8AB4-2E8072CF6D65}.Debug|Any CPU.Build.0 = Debug|Any CPU
102-
{233F44FE-EB70-4769-8AB4-2E8072CF6D65}.Release|Any CPU.ActiveCfg = Release|Any CPU
103-
{233F44FE-EB70-4769-8AB4-2E8072CF6D65}.Release|Any CPU.Build.0 = Release|Any CPU
104-
{294DC784-F241-441B-9FF8-0E9B10938735}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
105-
{294DC784-F241-441B-9FF8-0E9B10938735}.Debug|Any CPU.Build.0 = Debug|Any CPU
106-
{294DC784-F241-441B-9FF8-0E9B10938735}.Release|Any CPU.ActiveCfg = Release|Any CPU
107-
{294DC784-F241-441B-9FF8-0E9B10938735}.Release|Any CPU.Build.0 = Release|Any CPU
108-
{132E1BF7-7005-4268-AC8A-F8FC316BE74D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
109-
{132E1BF7-7005-4268-AC8A-F8FC316BE74D}.Debug|Any CPU.Build.0 = Debug|Any CPU
110-
{132E1BF7-7005-4268-AC8A-F8FC316BE74D}.Release|Any CPU.ActiveCfg = Release|Any CPU
111-
{132E1BF7-7005-4268-AC8A-F8FC316BE74D}.Release|Any CPU.Build.0 = Release|Any CPU
112-
EndGlobalSection
113-
GlobalSection(SolutionProperties) = preSolution
114-
HideSolutionNode = FALSE
110+
{D6829F54-F7F8-4C9E-B7E7-30BCDCDE5FF9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
111+
{D6829F54-F7F8-4C9E-B7E7-30BCDCDE5FF9}.Debug|Any CPU.Build.0 = Debug|Any CPU
112+
{D6829F54-F7F8-4C9E-B7E7-30BCDCDE5FF9}.Release|Any CPU.ActiveCfg = Release|Any CPU
113+
{D6829F54-F7F8-4C9E-B7E7-30BCDCDE5FF9}.Release|Any CPU.Build.0 = Release|Any CPU
114+
{FC3377B2-406B-48A9-BCF6-19E21DF84804}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
115+
{FC3377B2-406B-48A9-BCF6-19E21DF84804}.Debug|Any CPU.Build.0 = Debug|Any CPU
116+
{FC3377B2-406B-48A9-BCF6-19E21DF84804}.Release|Any CPU.ActiveCfg = Release|Any CPU
117+
{FC3377B2-406B-48A9-BCF6-19E21DF84804}.Release|Any CPU.Build.0 = Release|Any CPU
115118
EndGlobalSection
116119
GlobalSection(MonoDevelopProperties) = preSolution
117120
StartupItem = WsdlUI\WsdlUI.App.UI.Windows\WsdlUI.App.UI.Windows.csproj
118121
EndGlobalSection
122+
GlobalSection(SolutionProperties) = preSolution
123+
HideSolutionNode = FALSE
124+
EndGlobalSection
119125
EndGlobal
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
using System;
2+
3+
using NUnit.Framework;
4+
5+
namespace WsdlUI.App.UI.Tests
6+
{
7+
[TestFixture]
8+
public class DefaultFontsTest
9+
{
10+
/// <summary>
11+
/// This checks that WsdlUI will use the correct font on each system.
12+
/// For the test to pass succesffuly on linux the Inconsolata font needs to be installed
13+
/// </summary>
14+
[Test]
15+
public void TestCheckForFonts() {
16+
17+
string[] availableFonts = new string[] {
18+
"Consolas",
19+
"Inconsolata",
20+
"Courier"
21+
};
22+
23+
//test 1: test that inconsolata font is installed
24+
string consolasFont = WsdlUI.App.UI.DefaultFonts.Instance.CheckForFonts (availableFonts);
25+
// on mono Inconsolata font will be installed
26+
#if __MonoCS__
27+
Assert.AreEqual(consolasFont, "Inconsolata");
28+
#endif
29+
// on windows Consolas will be installed
30+
#if !__MonoCS__
31+
Assert.AreEqual(consolasFont, "Consolas");
32+
#endif
33+
34+
//test 2: test that courier font is installed
35+
string courierFont = WsdlUI.App.UI.DefaultFonts.Instance.CheckForFonts(new string[] {"Courier", "Courier New"});
36+
// on mono Courier
37+
#if __MonoCS__
38+
Assert.AreEqual(courierFont, "Courier");
39+
#endif
40+
// on windows Courier New
41+
#if !__MonoCS__
42+
Assert.AreEqual(courierFont, "Courier New");
43+
#endif
44+
}
45+
}
46+
}
47+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
using System.Reflection;
2+
using System.Runtime.CompilerServices;
3+
4+
// Information about this assembly is defined by the following attributes.
5+
// Change them to the values specific to your project.
6+
7+
[assembly: AssemblyTitle ("WsdlUI.App.UI.Windows.Tests")]
8+
[assembly: AssemblyDescription ("")]
9+
[assembly: AssemblyConfiguration ("")]
10+
[assembly: AssemblyCompany ("")]
11+
[assembly: AssemblyProduct ("")]
12+
[assembly: AssemblyCopyright ("fred")]
13+
[assembly: AssemblyTrademark ("")]
14+
[assembly: AssemblyCulture ("")]
15+
16+
// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
17+
// The form "{Major}.{Minor}.*" will automatically update the build and revision,
18+
// and "{Major}.{Minor}.{Build}.*" will update just the revision.
19+
20+
[assembly: AssemblyVersion ("1.0.*")]
21+
22+
// The following attributes are used to specify the signing key for the assembly,
23+
// if desired. See the Mono documentation for more information about signing.
24+
25+
//[assembly: AssemblyDelaySign(false)]
26+
//[assembly: AssemblyKeyFile("")]
27+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<PropertyGroup>
4+
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
5+
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
6+
<ProjectGuid>{09EC7822-8631-4607-8F04-375DA535CE13}</ProjectGuid>
7+
<OutputType>Library</OutputType>
8+
<RootNamespace>WsdlUI.App.UI.Tests</RootNamespace>
9+
<AssemblyName>WsdlUI.App.UI.Tests</AssemblyName>
10+
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
11+
</PropertyGroup>
12+
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
13+
<DebugSymbols>true</DebugSymbols>
14+
<DebugType>full</DebugType>
15+
<Optimize>false</Optimize>
16+
<OutputPath>bin\Debug</OutputPath>
17+
<DefineConstants>DEBUG;</DefineConstants>
18+
<ErrorReport>prompt</ErrorReport>
19+
<WarningLevel>4</WarningLevel>
20+
<ConsolePause>false</ConsolePause>
21+
</PropertyGroup>
22+
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
23+
<DebugType>full</DebugType>
24+
<Optimize>true</Optimize>
25+
<OutputPath>bin\Release</OutputPath>
26+
<ErrorReport>prompt</ErrorReport>
27+
<WarningLevel>4</WarningLevel>
28+
<ConsolePause>false</ConsolePause>
29+
</PropertyGroup>
30+
<ItemGroup>
31+
<Reference Include="System" />
32+
<Reference Include="nunit.framework">
33+
<HintPath>..\..\External\nunit\nunit.framework.dll</HintPath>
34+
</Reference>
35+
</ItemGroup>
36+
<ItemGroup>
37+
<Compile Include="Properties\AssemblyInfo.cs" />
38+
<Compile Include="DefaultFontsTest.cs" />
39+
</ItemGroup>
40+
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
41+
<ItemGroup>
42+
<ProjectReference Include="..\WsdlUI.App.UI\WsdlUI.App.UI.csproj">
43+
<Project>{D6829F54-F7F8-4C9E-B7E7-30BCDCDE5FF9}</Project>
44+
<Name>WsdlUI.App.UI</Name>
45+
</ProjectReference>
46+
</ItemGroup>
47+
</Project>

WsdlUI/WsdlUI.App.UI/DefaultFonts.cs

+31-24
Original file line numberDiff line numberDiff line change
@@ -33,40 +33,47 @@ public Font Smaller {
3333
private set;
3434
}
3535

36+
/// <summary>
37+
/// takes a list of fonts to check for and returns the font that is available on the system
38+
/// fonts are looked for in order they are passed in.
39+
/// </summary>
40+
/// <returns>first font found or default font</returns>
41+
public string CheckForFonts(string[] availableFonts) {
42+
43+
foreach (var fontName in availableFonts) {
44+
using (Font fontTester = new Font(fontName, 12, FontStyle.Regular, GraphicsUnit.Pixel)) {
45+
if (fontTester.Name == fontName) {
46+
return fontName;
47+
}
48+
}
49+
}
50+
51+
using (Font defaultFont = new Font("not found", 12, FontStyle.Regular, GraphicsUnit.Pixel)) {
52+
return defaultFont.Name;
53+
}
54+
}
55+
3656
DefaultFonts() {
3757

38-
//Consolas is a windows font
39-
//Inconsolata is an open font similar to Consolas it can be installed on Windows and Linux
40-
//Courier New sould be installed on Windows and Linux
41-
string fontName = "Consolas";
42-
bool result = IsFontInstalled(fontName);
43-
if (!result) {
44-
fontName = "Inconsolata";
45-
result = IsFontInstalled(fontName);
46-
47-
if (!result) {
48-
fontName = "Courier New";
49-
result = IsFontInstalled(fontName);
50-
if (!result) {
51-
//process.Logger.Instance.Log.Info("no default font found");
52-
}
53-
}
54-
}
58+
//Consolas is a windows font
59+
//Inconsolata is an open font similar to Consolas it can be installed on Windows and Linux
60+
//Courier default for linux Courier New default for windows
61+
string[] availableFonts = new string[] {
62+
"Consolas",
63+
"Inconsolata",
64+
"Courier",
65+
"Courier New"
66+
};
5567

56-
//process.Logger.Instance.Log.Info("using font: " + fontName);
68+
string fontName = CheckForFonts (availableFonts);
5769

5870
Smaller = new System.Drawing.Font(fontName, 8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
5971
Small = new System.Drawing.Font(fontName, 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
6072
Medium = new System.Drawing.Font(fontName, 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
6173
Large = new System.Drawing.Font(fontName, 11F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
6274
}
6375

64-
bool IsFontInstalled(string fontName) {
65-
using (Font fontTester = new Font(fontName, 12, FontStyle.Regular, GraphicsUnit.Pixel)) {
66-
return (fontTester.Name == fontName);
67-
}
68-
}
69-
76+
7077
public static DefaultFonts Instance {
7178
get {
7279
return Nested.instance;

WsdlUI/WsdlUI.App.UI/Dialogs/dg_ConfigTimout.Designer.cs

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

WsdlUI/WsdlUI.App.UI/Dialogs/dg_HelpAbout.Designer.cs

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)