Skip to content

Commit d56fa1c

Browse files
Dola-Shuvibitbeans
authored andcommitted
Implement color coding for DNS return codes (#456)
1 parent 8c5b2ae commit d56fa1c

3 files changed

Lines changed: 48 additions & 1 deletion

File tree

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
using SimpleDnsCrypt.Models;
2+
using System;
3+
using System.Globalization;
4+
using System.Windows.Data;
5+
6+
namespace SimpleDnsCrypt.Converters
7+
{
8+
public class QueryLogReturnCodeToColorConverter : IValueConverter
9+
{
10+
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
11+
{
12+
var logLineReturnCode = (QueryLogReturnCode) value;
13+
switch (logLineReturnCode)
14+
{
15+
case QueryLogReturnCode.PASS:
16+
return "#FF8ab329";
17+
case QueryLogReturnCode.FORWARD:
18+
return "#FF8ab329";
19+
case QueryLogReturnCode.DROP:
20+
return "#FFB32929";
21+
case QueryLogReturnCode.REJECT:
22+
return "#FFB32929";
23+
case QueryLogReturnCode.SYNTH:
24+
return "#FF8ab329";
25+
case QueryLogReturnCode.PARSE_ERROR:
26+
return "#FFB32929";
27+
case QueryLogReturnCode.NXDOMAIN:
28+
return "#FFB36729";
29+
case QueryLogReturnCode.RESPONSE_ERROR:
30+
return "#FFB32929";
31+
case QueryLogReturnCode.SERVER_ERROR:
32+
return "#FFB32929";
33+
case QueryLogReturnCode.CLOAK:
34+
return "#FF2a3b68";
35+
default:
36+
return "#FFB32929";
37+
}
38+
}
39+
40+
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
41+
{
42+
throw new NotImplementedException();
43+
}
44+
}
45+
}

SimpleDnsCrypt/SimpleDnsCrypt.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,7 @@
104104
<Compile Include="Converters\LocalDateConverter.cs" />
105105
<Compile Include="Converters\MessageBoxTypeToColor.cs" />
106106
<Compile Include="Converters\ProtocolToVisibilityConverter.cs" />
107+
<Compile Include="Converters\QueryLogReturnCodeToColorConverter.cs" />
107108
<Compile Include="Converters\QueryLogTypeToColorConverter.cs" />
108109
<Compile Include="Converters\ReverseBoolToEnabledConverter.cs" />
109110
<Compile Include="Converters\RouteStateToColorConverter.cs" />

SimpleDnsCrypt/Views/MainView.xaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
<converters:BoolToVisibilityCollapsedConverter x:Key="BoolToVisibilityCollapsedConverter" />
2626
<converters:ReverseBoolToEnabledConverter x:Key="ReverseBoolToEnabledConverter" />
2727
<converters:QueryLogTypeToColorConverter x:Key="QueryLogTypeToColorConverter" />
28+
<converters:QueryLogReturnCodeToColorConverter x:Key="QueryLogReturnCodeToColorConverter" />
2829
<converters:LocalDateConverter x:Key="LocalDateConverter" />
2930
<converters:IntegerBoolToVisibilityConverter x:Key="IntegerBoolToVisibilityConverter" />
3031
<converters:ServerListBackgroundConverter x:Key="ServerListBackgroundConverter" />
@@ -1049,7 +1050,7 @@
10491050
<TextBlock Grid.Column="1" Text="{Binding Type}"
10501051
Foreground="{Binding Type, Converter={StaticResource QueryLogTypeToColorConverter}}" />
10511052
<TextBlock Grid.Column="2" Text="{Binding ReturnCode}"
1052-
Foreground="#FF575757" />
1053+
Foreground="{Binding ReturnCode, Converter={StaticResource QueryLogReturnCodeToColorConverter}}" />
10531054
<TextBlock Grid.Column="3" Text="{Binding Address}"
10541055
Foreground="#FF575757" />
10551056
<TextBlock Grid.Column="4" Text="{Binding Remote}"

0 commit comments

Comments
 (0)