Skip to content

Commit c9b76d9

Browse files
committed
2 parents 72d470c + ba07aec commit c9b76d9

File tree

10 files changed

+61
-87
lines changed

10 files changed

+61
-87
lines changed

Drachenhorn.Core/Lang/LanguageManager.cs

+5-1
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
using System.Resources;
66
using Drachenhorn.Xml;
77
using Easy.Logger.Interfaces;
8+
using GalaSoft.MvvmLight;
89
using GalaSoft.MvvmLight.Ioc;
910

1011
namespace Drachenhorn.Core.Lang
@@ -13,7 +14,7 @@ public class LanguageManager : BindableBase, INotifyLanguageChanged
1314
{
1415
#region Properties
1516

16-
private readonly ResourceManager _resourceManager =
17+
private readonly ResourceManager _resourceManager =
1718
new ResourceManager("Drachenhorn.Core.Lang.lang", typeof(LanguageManager).Assembly);
1819

1920
private CultureInfo _currentCulture = CultureInfo.CurrentUICulture;
@@ -47,6 +48,9 @@ public CultureInfo CurrentCulture
4748
/// <returns>Translated Text.</returns>
4849
public string GetLanguageText(string identifier)
4950
{
51+
if (ViewModelBase.IsInDesignModeStatic)
52+
return identifier;
53+
5054
try
5155
{
5256
return _resourceManager.GetString(identifier, CurrentCulture)?.Replace("\\n", "\n");

Drachenhorn.Core/Settings/ISettings.cs

+1-2
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,7 @@ public interface ISettings : INotifyPropertyChanged
1414

1515
CultureInfo CurrentCulture { get; set; }
1616
string Version { get; }
17-
string GitCommit { get; }
18-
string GitCommitLink { get; }
17+
string NewVersion { get; }
1918

2019
VisualThemeType VisualTheme { get; set; }
2120
string AccentColor { get; set; }

Drachenhorn.Desktop/Converter/NullVisibilityConverter.cs

+13-4
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,19 @@ public class NullVisibilityConverter : IValueConverter
1414
/// <inheritdoc />
1515
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
1616
{
17-
if (value == null)
18-
return Visibility.Collapsed;
19-
else
20-
return Visibility.Visible;
17+
var onNull = Visibility.Collapsed;
18+
var notNull = Visibility.Visible;
19+
20+
if (parameter != null && parameter.ToString() == "Invert")
21+
{
22+
onNull = Visibility.Visible;
23+
notNull = Visibility.Collapsed;
24+
}
25+
26+
if (value == null || string.IsNullOrEmpty(value.ToString()))
27+
return onNull;
28+
29+
return notNull;
2130
}
2231

2332
/// <inheritdoc />

Drachenhorn.Desktop/Drachenhorn.Desktop.csproj

-3
Original file line numberDiff line numberDiff line change
@@ -469,9 +469,6 @@
469469
<Resource Include="..\img\White\Common\Yes.png">
470470
<Link>Images\White\Common\Yes.png</Link>
471471
</Resource>
472-
<Content Include="commit">
473-
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
474-
</Content>
475472
<Resource Include="Images\Common\Drachenhorn.ico" />
476473
<Content Include="log4net.config">
477474
<CopyToOutputDirectory>Always</CopyToOutputDirectory>

Drachenhorn.Desktop/UI/Lang/TranslateExtension.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ public TranslateExtension(string name) : base("[%" + name + "]")
2020
try
2121
{
2222
if (ViewModelBase.IsInDesignModeStatic)
23-
Source = new LanguageManager {CurrentCulture = CultureInfo.CurrentCulture};
23+
Source = new LanguageManager();
2424
else
2525
Source = SimpleIoc.Default.GetInstance<LanguageManager>();
2626
}

Drachenhorn.Desktop/UserControls/Common/SettingsViewControl.xaml

+34-40
Original file line numberDiff line numberDiff line change
@@ -92,51 +92,45 @@
9292
<mah:MetroTabItem Header="{lang:Translate UI.Properties.About}"
9393
CloseButtonEnabled="False">
9494
<StackPanel>
95-
<Border Margin="5" BorderThickness="2">
96-
<Grid>
97-
<Grid.ColumnDefinitions>
98-
<ColumnDefinition Width="Auto" />
99-
<ColumnDefinition Width="*" />
100-
</Grid.ColumnDefinitions>
101-
<Grid.RowDefinitions>
102-
<RowDefinition Height="Auto" />
103-
<RowDefinition Height="Auto" />
104-
<RowDefinition Height="Auto" />
105-
<RowDefinition Height="Auto" />
106-
</Grid.RowDefinitions>
107-
<TextBlock Text="{lang:Translate About.Version}"
108-
Grid.Row="0" Grid.Column="0" Margin="5" />
109-
<TextBlock Text="{Binding Settings.Version}"
110-
Grid.Row="0" Grid.Column="1" Margin="5" />
111-
112-
<TextBlock Text="{lang:Translate About.GitCommit}" Grid.Row="1" Grid.Column="0"
113-
Margin="5" />
114-
<TextBlock Margin="5" Grid.Row="1" Grid.Column="1">
115-
<Hyperlink NavigateUri="{Binding Settings.GitCommitLink}"
116-
RequestNavigate="Hyperlink_RequestNavigate">
117-
<Run Text="{Binding Settings.GitCommit, FallbackValue=commit, Mode=OneWay}" />
118-
</Hyperlink>
119-
</TextBlock>
95+
<Border Margin="5" BorderThickness="2" BorderBrush="{DynamicResource ControlBorderBrush}">
96+
<StackPanel>
97+
98+
<DockPanel Margin="10">
99+
<mah:ProgressRing Name="UpdateRing" IsActive="False" Height="55" Width="55"
100+
Foreground="{DynamicResource AccentColorBrush}" DockPanel.Dock="Right"/>
101+
102+
<TextBlock Margin="5 3 5 0" DockPanel.Dock="Bottom" FontSize="12">
103+
<Hyperlink NavigateUri="https://github.com/lightlike"
104+
RequestNavigate="Hyperlink_RequestNavigate">
105+
<Run Text="lightlike (DanielN)" />
106+
</Hyperlink>
107+
</TextBlock>
108+
109+
<StackPanel Orientation="Horizontal">
110+
<TextBlock Text="Drachenhorn" FontSize="30" Margin="0 0 10 0" FontFamily="{StaticResource Morpheus}"/>
111+
<TextBlock Text="v" FontSize="20" FontFamily="{StaticResource Morpheus}" VerticalAlignment="Bottom"/>
112+
<TextBlock Text="{Binding Settings.Version}" FontSize="20" FontFamily="{StaticResource Morpheus}" VerticalAlignment="Bottom"/>
113+
</StackPanel>
114+
</DockPanel>
115+
116+
<WrapPanel Margin="20 5 10 0" Visibility="{Binding Settings.NewVersion, Converter={StaticResource NullVisibilityConverter}}">
117+
<TextBlock Text="{lang:Translate Updater.UpdateAvailable}" FontSize="18"/>
118+
<TextBlock Text="{Binding Settings.NewVersion}" FontSize="18"/>
119+
</WrapPanel>
120120

121-
<WrapPanel Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="2" Margin="5">
122-
<Button Content="{lang:Translate Updater.CheckForUpdate}" HorizontalAlignment="Left"
123-
Click="UpdateButton_OnClick" />
121+
<Button Content="{lang:Translate Updater.CheckForUpdate}"
122+
Click="CheckUpdateButton_OnClick" HorizontalAlignment="Right"
123+
Visibility="{Binding Settings.NewVersion, Converter={StaticResource NullVisibilityConverter}, ConverterParameter=Invert}"/>
124124

125-
<mah:ProgressRing Name="UpdateRing" IsActive="False" Height="28" Width="28" />
125+
<WrapPanel HorizontalAlignment="Right" Margin="10 5 10 0"
126+
Visibility="{Binding Settings.NewVersion, Converter={StaticResource NullVisibilityConverter}}">
127+
<Button Content="{lang:Translate Updater.DoUpdate}"/>
128+
<Button Content="{lang:Translate Updater.Changelog}"/>
126129
</WrapPanel>
127-
128-
<TextBlock Text="{lang:Translate About.Publisher}" Grid.Row="3" Grid.Column="0"
129-
Margin="5" />
130-
<TextBlock Margin="5" Grid.Row="3" Grid.Column="1">
131-
<Hyperlink NavigateUri="https://github.com/lightlike"
132-
RequestNavigate="Hyperlink_RequestNavigate">
133-
<Run Text="lightlike (DanielN)" />
134-
</Hyperlink>
135-
</TextBlock>
136-
</Grid>
130+
</StackPanel>
137131
</Border>
138132

139-
<Border Margin="5" BorderThickness="2">
133+
<Border Margin="5" BorderThickness="2" BorderBrush="{DynamicResource ControlBorderBrush}">
140134
<Grid>
141135
<Grid.ColumnDefinitions>
142136
<ColumnDefinition Width="Auto" />

Drachenhorn.Desktop/UserControls/Common/SettingsViewControl.xaml.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ private void LanguageComboBox_SelectionChanged(object sender, SelectionChangedEv
5454
}
5555
}
5656

57-
private void UpdateButton_OnClick(object sender, RoutedEventArgs e)
57+
private void CheckUpdateButton_OnClick(object sender, RoutedEventArgs e)
5858
{
5959
UpdateRing.IsActive = true;
6060

Drachenhorn.Desktop/UserSettings/Settings.cs

+1-31
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,6 @@ public class Settings : BindableBase, ISettings
2424

2525
public Settings()
2626
{
27-
var path = Path.Combine(Environment.CurrentDirectory, "commit");
28-
if (File.Exists(path))
29-
GitCommit = File.ReadAllText(Path.Combine(Environment.CurrentDirectory, "commit")).Replace("\r", "")
30-
.Replace("\n", "");
31-
else
32-
GitCommit = "No Commit found";
33-
3427
PropertyChanged += (sender, args) => { Save(); };
3528
LastOpenFiles.CollectionChanged += (sender, args) => { Save(); };
3629
}
@@ -43,8 +36,6 @@ public Settings()
4336

4437
[XmlIgnore] private SheetTemplate _currentTemplate;
4538

46-
[XmlIgnore] private string _gitCommit;
47-
4839
[XmlIgnore] private bool _isNew = true;
4940

5041
[XmlIgnore] private VisualThemeType _visualTheme;
@@ -121,28 +112,7 @@ public CultureInfo CurrentCulture
121112
public string Version => SquirrelManager.CurrentVersion;
122113

123114
[XmlIgnore]
124-
public string GitCommit
125-
{
126-
get => _gitCommit;
127-
private set
128-
{
129-
if (_gitCommit == value)
130-
return;
131-
_gitCommit = value;
132-
OnPropertyChanged();
133-
}
134-
}
135-
136-
[XmlIgnore]
137-
public string GitCommitLink
138-
{
139-
get
140-
{
141-
if (GitCommit.Contains(" "))
142-
return null;
143-
return @"https://github.com/lightlike/Drachenhorn/commit/" + GitCommit;
144-
}
145-
}
115+
public string NewVersion => SquirrelManager.NewVersion;
146116

147117
[XmlElement("VisualTheme")]
148118
public VisualThemeType VisualTheme

Drachenhorn.Desktop/UserSettings/SquirrelManager.cs

+5-3
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@ private set
3333
_newVersion = value;
3434
}
3535
}
36+
37+
3638
private static string _currentVersion;
3739

3840
public static string CurrentVersion
@@ -43,18 +45,18 @@ public static string CurrentVersion
4345
{
4446
try
4547
{
46-
using (var mgr = new UpdateManager(null))
48+
using (var mgr = new UpdateManager("C:"))
4749
{
4850
_currentVersion = mgr.CurrentlyInstalledVersion().ToString();
4951
}
5052
}
5153
catch (Exception e)
5254
{
55+
_currentVersion = "X.X.X";
56+
5357
SimpleIoc.Default.GetInstance<ILogService>().GetLogger<Settings>()
5458
.Debug("Unable to load Squirrel Version.", e);
5559
}
56-
57-
_currentVersion = "Application not installed.";
5860
}
5961

6062
return _currentVersion;

Drachenhorn.Desktop/commit

-1
This file was deleted.

0 commit comments

Comments
 (0)