Merge branch 'develop'
This commit is contained in:
50
Eve-O-Preview/ApplicationBase/ExceptionHandler.cs
Normal file
50
Eve-O-Preview/ApplicationBase/ExceptionHandler.cs
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
using System;
|
||||||
|
using System.IO;
|
||||||
|
using System.Threading;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
|
||||||
|
namespace EveOPreview
|
||||||
|
{
|
||||||
|
// A really very primitive exception handler stuff here
|
||||||
|
// No IoC, no fancy DI containers - just a plain exception stacktrace dump
|
||||||
|
// If this code is called then something was gone really bad
|
||||||
|
// so even the DI infrastructure might be dead already.
|
||||||
|
// So this dumb and non elegant approach is used
|
||||||
|
sealed class ExceptionHandler
|
||||||
|
{
|
||||||
|
private const string ExceptionDumpFileName = "EVE-O Preview.log";
|
||||||
|
private const string ExceptionMessage = "EVE-O Preview has encountered a problem and needs to close. Additional information has been saved in the crash log file.";
|
||||||
|
|
||||||
|
public void SetupExceptionHandlers()
|
||||||
|
{
|
||||||
|
Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException);
|
||||||
|
Application.ThreadException += delegate (Object sender, ThreadExceptionEventArgs e)
|
||||||
|
{
|
||||||
|
this.ExceptionEventHandler(e.Exception);
|
||||||
|
};
|
||||||
|
|
||||||
|
AppDomain.CurrentDomain.UnhandledException += delegate (Object sender, UnhandledExceptionEventArgs e)
|
||||||
|
{
|
||||||
|
this.ExceptionEventHandler(e.ExceptionObject as Exception);
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ExceptionEventHandler(Exception exception)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
String exceptionMessage = exception.ToString();
|
||||||
|
File.WriteAllText(ExceptionHandler.ExceptionDumpFileName, exceptionMessage);
|
||||||
|
|
||||||
|
MessageBox.Show(ExceptionHandler.ExceptionMessage, @"EVE-O Preview", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
catch
|
||||||
|
{
|
||||||
|
// We are in unstable state now so even this operation might fail
|
||||||
|
// Still we actually don't care anymore - anyway the application has been cashed
|
||||||
|
}
|
||||||
|
|
||||||
|
System.Environment.Exit(1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@@ -34,6 +34,7 @@ namespace EveOPreview.Configuration
|
|||||||
Color ActiveClientHighlightColor { get; set; }
|
Color ActiveClientHighlightColor { get; set; }
|
||||||
int ActiveClientHighlightThickness { get; set; }
|
int ActiveClientHighlightThickness { get; set; }
|
||||||
|
|
||||||
|
Point GetDefaultThumbnailLocation();
|
||||||
Point GetThumbnailLocation(string currentClient, string activeClient, Point defaultLocation);
|
Point GetThumbnailLocation(string currentClient, string activeClient, Point defaultLocation);
|
||||||
void SetThumbnailLocation(string currentClient, string activeClient, Point location);
|
void SetThumbnailLocation(string currentClient, string activeClient, Point location);
|
||||||
|
|
||||||
|
@@ -80,6 +80,14 @@ namespace EveOPreview.Configuration
|
|||||||
[JsonProperty]
|
[JsonProperty]
|
||||||
private Dictionary<string, string> ClientHotkey { get; set; }
|
private Dictionary<string, string> ClientHotkey { get; set; }
|
||||||
|
|
||||||
|
public Point GetDefaultThumbnailLocation()
|
||||||
|
{
|
||||||
|
// Returns default thumbnail location
|
||||||
|
// This location can be used for f.e. EVE clients sitting on the login screen
|
||||||
|
// Can be made configurable later (that's why it was moved out here)
|
||||||
|
return new Point(5, 5);
|
||||||
|
}
|
||||||
|
|
||||||
public Point GetThumbnailLocation(string currentClient, string activeClient, Point defaultLocation)
|
public Point GetThumbnailLocation(string currentClient, string activeClient, Point defaultLocation)
|
||||||
{
|
{
|
||||||
Point location;
|
Point location;
|
||||||
|
@@ -119,6 +119,10 @@ namespace EveOPreview
|
|||||||
public const UInt32 WS_EX_NOACTIVATE = 0x08000000;
|
public const UInt32 WS_EX_NOACTIVATE = 0x08000000;
|
||||||
|
|
||||||
public const int WM_SIZE = 5;
|
public const int WM_SIZE = 5;
|
||||||
|
public const int WM_SYSCOMMAND = 0x0112;
|
||||||
|
|
||||||
|
public const int SC_MINIMIZE = 0xf020;
|
||||||
|
|
||||||
public const int SIZE_RESTORED = 0;
|
public const int SIZE_RESTORED = 0;
|
||||||
public const int SIZE_MINIMIZED = 1;
|
public const int SIZE_MINIMIZED = 1;
|
||||||
public const int SIZE_MAXIMIZED = 2;
|
public const int SIZE_MAXIMIZED = 2;
|
||||||
|
@@ -71,13 +71,15 @@
|
|||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup />
|
<PropertyGroup />
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Reference Include="LightInject, Version=4.0.9.0, Culture=neutral, processorArchitecture=MSIL">
|
<Reference Include="Costura, Version=1.6.2.0, Culture=neutral, PublicKeyToken=9919ef960d84173d, processorArchitecture=MSIL">
|
||||||
<HintPath>..\packages\LightInject.4.0.9\lib\net45\LightInject.dll</HintPath>
|
<HintPath>..\packages\Costura.Fody.1.6.2\lib\dotnet\Costura.dll</HintPath>
|
||||||
<Private>True</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="Newtonsoft.Json, Version=8.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
<Reference Include="LightInject, Version=5.0.3.0, Culture=neutral, processorArchitecture=MSIL">
|
||||||
<HintPath>..\packages\Newtonsoft.Json.8.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
|
<HintPath>..\packages\LightInject.5.0.3\lib\net45\LightInject.dll</HintPath>
|
||||||
<Private>True</Private>
|
</Reference>
|
||||||
|
<Reference Include="Newtonsoft.Json, Version=10.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Newtonsoft.Json.10.0.2\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.Deployment" />
|
<Reference Include="System.Deployment" />
|
||||||
@@ -90,6 +92,7 @@
|
|||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="ApplicationBase\ApplicationController.cs" />
|
<Compile Include="ApplicationBase\ApplicationController.cs" />
|
||||||
|
<Compile Include="ApplicationBase\ExceptionHandler.cs" />
|
||||||
<Compile Include="ApplicationBase\IApplicationController.cs" />
|
<Compile Include="ApplicationBase\IApplicationController.cs" />
|
||||||
<Compile Include="ApplicationBase\IIocContainer.cs" />
|
<Compile Include="ApplicationBase\IIocContainer.cs" />
|
||||||
<Compile Include="ApplicationBase\IPresenterGeneric.cs" />
|
<Compile Include="ApplicationBase\IPresenterGeneric.cs" />
|
||||||
@@ -162,7 +165,6 @@
|
|||||||
<DependentUpon>Resources.resx</DependentUpon>
|
<DependentUpon>Resources.resx</DependentUpon>
|
||||||
<DesignTime>True</DesignTime>
|
<DesignTime>True</DesignTime>
|
||||||
</Compile>
|
</Compile>
|
||||||
<None Include="packages.config" />
|
|
||||||
<Compile Include="UI\Implementation\ThumbnailView.cs">
|
<Compile Include="UI\Implementation\ThumbnailView.cs">
|
||||||
<SubType>Form</SubType>
|
<SubType>Form</SubType>
|
||||||
</Compile>
|
</Compile>
|
||||||
@@ -172,21 +174,24 @@
|
|||||||
<Compile Include="DwmAPI\WindowManagerNativeMethods.cs" />
|
<Compile Include="DwmAPI\WindowManagerNativeMethods.cs" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<None Include="packages.config" />
|
||||||
<None Include="Resources\icon.png" />
|
<None Include="Resources\icon.png" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Content Include="FodyWeavers.xml" />
|
<None Include="FodyWeavers.xml" />
|
||||||
<Content Include="icon.ico" />
|
<Content Include="icon.ico" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup />
|
<ItemGroup />
|
||||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
||||||
<Import Project="..\packages\Fody.1.29.4\build\dotnet\Fody.targets" Condition="Exists('..\packages\Fody.1.29.4\build\dotnet\Fody.targets')" />
|
|
||||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
|
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<Error Condition="!Exists('..\packages\Fody.1.29.4\build\dotnet\Fody.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Fody.1.29.4\build\dotnet\Fody.targets'))" />
|
<Error Condition="!Exists('..\packages\Fody.2.1.0\build\netstandard1.0\Fody.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Fody.2.1.0\build\netstandard1.0\Fody.targets'))" />
|
||||||
|
<Error Condition="!Exists('..\packages\Costura.Fody.1.6.2\build\dotnet\Costura.Fody.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Costura.Fody.1.6.2\build\dotnet\Costura.Fody.targets'))" />
|
||||||
</Target>
|
</Target>
|
||||||
|
<Import Project="..\packages\Fody.2.1.0\build\netstandard1.0\Fody.targets" Condition="Exists('..\packages\Fody.2.1.0\build\netstandard1.0\Fody.targets')" />
|
||||||
|
<Import Project="..\packages\Costura.Fody.1.6.2\build\dotnet\Costura.Fody.targets" Condition="Exists('..\packages\Costura.Fody.1.6.2\build\dotnet\Costura.Fody.targets')" />
|
||||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||||
Other similar extension points exist, see Microsoft.Common.targets.
|
Other similar extension points exist, see Microsoft.Common.targets.
|
||||||
<Target Name="BeforeBuild">
|
<Target Name="BeforeBuild">
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
<Weavers>
|
<Weavers>
|
||||||
<Costura IncludeDebugSymbols="false" />
|
<Costura IncludeDebugSymbols="false" />
|
||||||
</Weavers>
|
</Weavers>
|
@@ -16,6 +16,8 @@ namespace EveOPreview.UI
|
|||||||
Action<IList<IThumbnailView>> ThumbnailsAdded { get; set; }
|
Action<IList<IThumbnailView>> ThumbnailsAdded { get; set; }
|
||||||
Action<IList<IThumbnailView>> ThumbnailsUpdated { get; set; }
|
Action<IList<IThumbnailView>> ThumbnailsUpdated { get; set; }
|
||||||
Action<IList<IThumbnailView>> ThumbnailsRemoved { get; set; }
|
Action<IList<IThumbnailView>> ThumbnailsRemoved { get; set; }
|
||||||
|
|
||||||
|
Action<String, String, Point> ThumbnailPositionChanged { get; set; }
|
||||||
Action<Size> ThumbnailSizeChanged { get; set; }
|
Action<Size> ThumbnailSizeChanged { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
@@ -41,19 +41,22 @@ namespace EveOPreview.UI
|
|||||||
this.View.ApplicationSettingsChanged = this.SaveApplicationSettings;
|
this.View.ApplicationSettingsChanged = this.SaveApplicationSettings;
|
||||||
this.View.ThumbnailsSizeChanged = this.UpdateThumbnailsSize;
|
this.View.ThumbnailsSizeChanged = this.UpdateThumbnailsSize;
|
||||||
this.View.ThumbnailStateChanged = this.UpdateThumbnailState;
|
this.View.ThumbnailStateChanged = this.UpdateThumbnailState;
|
||||||
this.View.ForumUrlLinkActivated = this.OpenForumUrlLink;
|
this.View.DocumentationLinkActivated = this.OpenDocumentationLink;
|
||||||
this.View.ApplicationExitRequested = this.ExitApplication;
|
this.View.ApplicationExitRequested = this.ExitApplication;
|
||||||
|
|
||||||
this._thumbnailManager.ThumbnailsAdded = this.ThumbnailsAdded;
|
this._thumbnailManager.ThumbnailsAdded = this.ThumbnailsAdded;
|
||||||
this._thumbnailManager.ThumbnailsUpdated = this.ThumbnailsUpdated;
|
this._thumbnailManager.ThumbnailsUpdated = this.ThumbnailsUpdated;
|
||||||
this._thumbnailManager.ThumbnailsRemoved = this.ThumbnailsRemoved;
|
this._thumbnailManager.ThumbnailsRemoved = this.ThumbnailsRemoved;
|
||||||
|
|
||||||
|
this._thumbnailManager.ThumbnailPositionChanged = this.ThumbnailPositionChanged;
|
||||||
this._thumbnailManager.ThumbnailSizeChanged = this.ThumbnailSizeChanged;
|
this._thumbnailManager.ThumbnailSizeChanged = this.ThumbnailSizeChanged;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Activate()
|
private void Activate()
|
||||||
{
|
{
|
||||||
this.LoadApplicationSettings();
|
this.LoadApplicationSettings();
|
||||||
this.View.SetForumUrl(MainPresenter.ForumUrl);
|
this.View.SetDocumentationUrl(MainPresenter.ForumUrl);
|
||||||
|
this.View.SetVersionInfo(this.GetApplicationVersion());
|
||||||
if (this._configuration.MinimizeToTray)
|
if (this._configuration.MinimizeToTray)
|
||||||
{
|
{
|
||||||
this.View.Minimize();
|
this.View.Minimize();
|
||||||
@@ -206,6 +209,12 @@ namespace EveOPreview.UI
|
|||||||
return thumbnailViews;
|
return thumbnailViews;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void ThumbnailPositionChanged(String thumbnailName, String activeClientName, Point location)
|
||||||
|
{
|
||||||
|
this._configuration.SetThumbnailLocation(thumbnailName, activeClientName, location);
|
||||||
|
this._configurationStorage.Save();
|
||||||
|
}
|
||||||
|
|
||||||
private void ThumbnailSizeChanged(Size size)
|
private void ThumbnailSizeChanged(Size size)
|
||||||
{
|
{
|
||||||
this.View.ThumbnailSize = size;
|
this.View.ThumbnailSize = size;
|
||||||
@@ -216,12 +225,18 @@ namespace EveOPreview.UI
|
|||||||
this._thumbnailManager.SetThumbnailState(thumbnailId, this._thumbnailDescriptionViews[thumbnailId].IsDisabled);
|
this._thumbnailManager.SetThumbnailState(thumbnailId, this._thumbnailDescriptionViews[thumbnailId].IsDisabled);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OpenForumUrlLink()
|
private void OpenDocumentationLink()
|
||||||
{
|
{
|
||||||
ProcessStartInfo processStartInfo = new ProcessStartInfo(new Uri(MainPresenter.ForumUrl).AbsoluteUri);
|
ProcessStartInfo processStartInfo = new ProcessStartInfo(new Uri(MainPresenter.ForumUrl).AbsoluteUri);
|
||||||
Process.Start(processStartInfo);
|
Process.Start(processStartInfo);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private string GetApplicationVersion()
|
||||||
|
{
|
||||||
|
Version version = System.Reflection.Assembly.GetEntryAssembly().GetName().Version;
|
||||||
|
return String.Format("{0}.{1}.{2}", version.Major, version.Minor, version.Revision);
|
||||||
|
}
|
||||||
|
|
||||||
private void ExitApplication()
|
private void ExitApplication()
|
||||||
{
|
{
|
||||||
this._exitApplication = true;
|
this._exitApplication = true;
|
||||||
|
@@ -52,6 +52,8 @@ namespace EveOPreview.UI
|
|||||||
|
|
||||||
public Action<IList<IThumbnailView>> ThumbnailsRemoved { get; set; }
|
public Action<IList<IThumbnailView>> ThumbnailsRemoved { get; set; }
|
||||||
|
|
||||||
|
public Action<String, String, Point> ThumbnailPositionChanged { get; set; }
|
||||||
|
|
||||||
public Action<Size> ThumbnailSizeChanged { get; set; }
|
public Action<Size> ThumbnailSizeChanged { get; set; }
|
||||||
|
|
||||||
public void Activate()
|
public void Activate()
|
||||||
@@ -126,7 +128,7 @@ namespace EveOPreview.UI
|
|||||||
if (!this._isHoverEffectActive)
|
if (!this._isHoverEffectActive)
|
||||||
{
|
{
|
||||||
// Do not even move thumbnails with default caption
|
// Do not even move thumbnails with default caption
|
||||||
if (view.Title != ThumbnailManager.DefaultClientTitle)
|
if (this.IsManageableThumbnail(view))
|
||||||
{
|
{
|
||||||
view.ThumbnailLocation = this._configuration.GetThumbnailLocation(view.Title, this._activeClientTitle, view.ThumbnailLocation);
|
view.ThumbnailLocation = this._configuration.GetThumbnailLocation(view.Title, this._activeClientTitle, view.ThumbnailLocation);
|
||||||
}
|
}
|
||||||
@@ -216,7 +218,10 @@ namespace EveOPreview.UI
|
|||||||
// Otherwise thumbnail window will be unnecessary resized
|
// Otherwise thumbnail window will be unnecessary resized
|
||||||
view.SetSizeLimitations(this._configuration.ThumbnailMinimumSize, this._configuration.ThumbnailMaximumSize);
|
view.SetSizeLimitations(this._configuration.ThumbnailMinimumSize, this._configuration.ThumbnailMaximumSize);
|
||||||
view.SetTopMost(this._configuration.ShowThumbnailsAlwaysOnTop);
|
view.SetTopMost(this._configuration.ShowThumbnailsAlwaysOnTop);
|
||||||
view.ThumbnailLocation = this._configuration.GetThumbnailLocation(processTitle, this._activeClientTitle, view.ThumbnailLocation);
|
|
||||||
|
view.ThumbnailLocation = this.IsManageableThumbnail(view)
|
||||||
|
? this._configuration.GetThumbnailLocation(processTitle, this._activeClientTitle, view.ThumbnailLocation)
|
||||||
|
: this._configuration.GetDefaultThumbnailLocation();
|
||||||
|
|
||||||
this._thumbnailViews.Add(processHandle, view);
|
this._thumbnailViews.Add(processHandle, view);
|
||||||
|
|
||||||
@@ -225,6 +230,7 @@ namespace EveOPreview.UI
|
|||||||
view.ThumbnailFocused = this.ThumbnailViewFocused;
|
view.ThumbnailFocused = this.ThumbnailViewFocused;
|
||||||
view.ThumbnailLostFocus = this.ThumbnailViewLostFocus;
|
view.ThumbnailLostFocus = this.ThumbnailViewLostFocus;
|
||||||
view.ThumbnailActivated = this.ThumbnailActivated;
|
view.ThumbnailActivated = this.ThumbnailActivated;
|
||||||
|
view.ThumbnailDeactivated = this.ThumbnailDeactivated;
|
||||||
|
|
||||||
view.RegisterHotkey(this._configuration.GetClientHotkey(processTitle));
|
view.RegisterHotkey(this._configuration.GetClientHotkey(processTitle));
|
||||||
|
|
||||||
@@ -351,6 +357,29 @@ namespace EveOPreview.UI
|
|||||||
view?.Refresh(true);
|
view?.Refresh(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void ThumbnailDeactivated(IntPtr id)
|
||||||
|
{
|
||||||
|
IThumbnailView view;
|
||||||
|
this._thumbnailViews.TryGetValue(id, out view);
|
||||||
|
|
||||||
|
|
||||||
|
if (view?.Id == this._activeClientHandle)
|
||||||
|
{
|
||||||
|
WindowManagerNativeMethods.SendMessage(view.Id, WindowManagerNativeMethods.WM_SYSCOMMAND, WindowManagerNativeMethods.SC_MINIMIZE, 0);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
int style = WindowManagerNativeMethods.GetWindowLong(id, WindowManagerNativeMethods.GWL_STYLE);
|
||||||
|
// If the window is not already minimized then minimize it
|
||||||
|
if ((style & WindowManagerNativeMethods.WS_MINIMIZE) != WindowManagerNativeMethods.WS_MINIMIZE)
|
||||||
|
{
|
||||||
|
WindowManagerNativeMethods.ShowWindowAsync(id, WindowManagerNativeMethods.SW_SHOWMINIMIZED);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
this.RefreshThumbnails();
|
||||||
|
}
|
||||||
|
|
||||||
private void ThumbnailViewResized(IntPtr id)
|
private void ThumbnailViewResized(IntPtr id)
|
||||||
{
|
{
|
||||||
if (this._ignoreViewEvents)
|
if (this._ignoreViewEvents)
|
||||||
@@ -374,7 +403,10 @@ namespace EveOPreview.UI
|
|||||||
|
|
||||||
IThumbnailView view = this._thumbnailViews[id];
|
IThumbnailView view = this._thumbnailViews[id];
|
||||||
|
|
||||||
this._configuration.SetThumbnailLocation(view.Title, this._activeClientTitle, view.ThumbnailLocation);
|
if (this.IsManageableThumbnail(view))
|
||||||
|
{
|
||||||
|
this.ThumbnailPositionChanged?.Invoke(view.Title, this._activeClientTitle, view.ThumbnailLocation);
|
||||||
|
}
|
||||||
|
|
||||||
view.Refresh(false);
|
view.Refresh(false);
|
||||||
}
|
}
|
||||||
@@ -458,5 +490,11 @@ namespace EveOPreview.UI
|
|||||||
this._configuration.SetClientLayout(process.MainWindowTitle, clientLayout);
|
this._configuration.SetClientLayout(process.MainWindowTitle, clientLayout);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// We should no manage some thumbnails (like thumbnail of the EVE client sitting on the login screen)
|
||||||
|
private bool IsManageableThumbnail(IThumbnailView view)
|
||||||
|
{
|
||||||
|
return view.Title != ThumbnailManager.DefaultClientTitle;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
@@ -27,15 +27,15 @@ namespace EveOPreview
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ExceptionHandler handler = new ExceptionHandler();
|
||||||
|
handler.SetupExceptionHandlers();
|
||||||
|
|
||||||
Program.InitializeWinFormsGui();
|
Program.InitializeWinFormsGui();
|
||||||
|
|
||||||
IApplicationController controller = Program.InitializeApplicationController();
|
IApplicationController controller = Program.InitializeApplicationController();
|
||||||
|
|
||||||
Program.SetupApplicationConttroller(controller, Program.GetCustomConfigFile(args));
|
Program.SetupApplicationConttroller(controller, Program.GetCustomConfigFile(args));
|
||||||
|
|
||||||
controller.Run<MainPresenter>();
|
controller.Run<MainPresenter>();
|
||||||
|
|
||||||
token = null;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private static string GetCustomConfigFile(string[] args)
|
private static string GetCustomConfigFile(string[] args)
|
||||||
|
@@ -12,7 +12,7 @@ using System.Runtime.InteropServices;
|
|||||||
[assembly: AssemblyCulture("")]
|
[assembly: AssemblyCulture("")]
|
||||||
[assembly: ComVisible(false)]
|
[assembly: ComVisible(false)]
|
||||||
[assembly: Guid("04f08f8d-9e98-423b-acdb-4effb31c0d35")]
|
[assembly: Guid("04f08f8d-9e98-423b-acdb-4effb31c0d35")]
|
||||||
[assembly: AssemblyVersion("2.2.0.0")]
|
[assembly: AssemblyVersion("3.0.0.0")]
|
||||||
[assembly: AssemblyFileVersion("2.2.0.0")]
|
[assembly: AssemblyFileVersion("3.0.0.0")]
|
||||||
|
|
||||||
[assembly: CLSCompliant(true)]
|
[assembly: CLSCompliant(true)]
|
10
Eve-O-Preview/Properties/Resources.Designer.cs
generated
10
Eve-O-Preview/Properties/Resources.Designer.cs
generated
@@ -59,15 +59,5 @@ namespace EveOPreview.Properties {
|
|||||||
resourceCulture = value;
|
resourceCulture = value;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
|
||||||
/// </summary>
|
|
||||||
internal static System.Drawing.Bitmap icon {
|
|
||||||
get {
|
|
||||||
object obj = ResourceManager.GetObject("icon", resourceCulture);
|
|
||||||
return ((System.Drawing.Bitmap)(obj));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -117,8 +117,4 @@
|
|||||||
<resheader name="writer">
|
<resheader name="writer">
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
</resheader>
|
</resheader>
|
||||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
|
||||||
<data name="icon" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
|
||||||
<value>..\Resources\icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
|
||||||
</data>
|
|
||||||
</root>
|
</root>
|
Binary file not shown.
Before Width: | Height: | Size: 34 KiB |
Binary file not shown.
Before Width: | Height: | Size: 4.2 KiB |
686
Eve-O-Preview/UI/Implementation/MainForm.Designer.cs
generated
686
Eve-O-Preview/UI/Implementation/MainForm.Designer.cs
generated
File diff suppressed because it is too large
Load Diff
@@ -34,22 +34,13 @@ namespace EveOPreview.UI
|
|||||||
|
|
||||||
public bool MinimizeToTray
|
public bool MinimizeToTray
|
||||||
{
|
{
|
||||||
get
|
get => this.MinimizeToTrayCheckBox.Checked;
|
||||||
{
|
set => this.MinimizeToTrayCheckBox.Checked = value;
|
||||||
return this.MinimizeToTrayCheckBox.Checked;
|
|
||||||
}
|
|
||||||
set
|
|
||||||
{
|
|
||||||
this.MinimizeToTrayCheckBox.Checked = value;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public double ThumbnailOpacity
|
public double ThumbnailOpacity
|
||||||
{
|
{
|
||||||
get
|
get => Math.Min(this.ThumbnailOpacityTrackBar.Value / 100.00, 1.00);
|
||||||
{
|
|
||||||
return Math.Min(this.ThumbnailOpacityTrackBar.Value / 100.00, 1.00);
|
|
||||||
}
|
|
||||||
set
|
set
|
||||||
{
|
{
|
||||||
int barValue = (int)(100.0 * value);
|
int barValue = (int)(100.0 * value);
|
||||||
@@ -68,70 +59,37 @@ namespace EveOPreview.UI
|
|||||||
|
|
||||||
public bool EnableClientLayoutTracking
|
public bool EnableClientLayoutTracking
|
||||||
{
|
{
|
||||||
get
|
get => this.EnableClientLayoutTrackingCheckBox.Checked;
|
||||||
{
|
set => this.EnableClientLayoutTrackingCheckBox.Checked = value;
|
||||||
return this.EnableClientLayoutTrackingCheckBox.Checked;
|
|
||||||
}
|
|
||||||
set
|
|
||||||
{
|
|
||||||
this.EnableClientLayoutTrackingCheckBox.Checked = value;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool HideActiveClientThumbnail
|
public bool HideActiveClientThumbnail
|
||||||
{
|
{
|
||||||
get
|
get => this.HideActiveClientThumbnailCheckBox.Checked;
|
||||||
{
|
set => this.HideActiveClientThumbnailCheckBox.Checked = value;
|
||||||
return this.HideActiveClientThumbnailCheckBox.Checked;
|
|
||||||
}
|
|
||||||
set
|
|
||||||
{
|
|
||||||
this.HideActiveClientThumbnailCheckBox.Checked = value;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool ShowThumbnailsAlwaysOnTop
|
public bool ShowThumbnailsAlwaysOnTop
|
||||||
{
|
{
|
||||||
get
|
get => this.ShowThumbnailsAlwaysOnTopCheckBox.Checked;
|
||||||
{
|
set => this.ShowThumbnailsAlwaysOnTopCheckBox.Checked = value;
|
||||||
return this.ShowThumbnailsAlwaysOnTopCheckBox.Checked;
|
|
||||||
}
|
|
||||||
set
|
|
||||||
{
|
|
||||||
this.ShowThumbnailsAlwaysOnTopCheckBox.Checked = value;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool HideThumbnailsOnLostFocus
|
public bool HideThumbnailsOnLostFocus
|
||||||
{
|
{
|
||||||
get
|
get => this.HideThumbnailsOnLostFocusCheckBox.Checked;
|
||||||
{
|
set => this.HideThumbnailsOnLostFocusCheckBox.Checked = value;
|
||||||
return this.HideThumbnailsOnLostFocusCheckBox.Checked;
|
|
||||||
}
|
|
||||||
set
|
|
||||||
{
|
|
||||||
this.HideThumbnailsOnLostFocusCheckBox.Checked = value;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool EnablePerClientThumbnailLayouts
|
public bool EnablePerClientThumbnailLayouts
|
||||||
{
|
{
|
||||||
get
|
get => this.EnablePerClientThumbnailsLayoutsCheckBox.Checked;
|
||||||
{
|
set => this.EnablePerClientThumbnailsLayoutsCheckBox.Checked = value;
|
||||||
return this.EnablePerClientThumbnailsLayoutsCheckBox.Checked;
|
|
||||||
}
|
|
||||||
set
|
|
||||||
{
|
|
||||||
this.EnablePerClientThumbnailsLayoutsCheckBox.Checked = value;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public Size ThumbnailSize
|
public Size ThumbnailSize
|
||||||
{
|
{
|
||||||
get
|
get => new Size((int)this.ThumbnailsWidthNumericEdit.Value, (int)this.ThumbnailsHeightNumericEdit.Value);
|
||||||
{
|
|
||||||
return new Size((int)this.ThumbnailsWidthNumericEdit.Value, (int)this.ThumbnailsHeightNumericEdit.Value);
|
|
||||||
}
|
|
||||||
set
|
set
|
||||||
{
|
{
|
||||||
this.ThumbnailsWidthNumericEdit.Value = value.Width;
|
this.ThumbnailsWidthNumericEdit.Value = value.Width;
|
||||||
@@ -141,10 +99,7 @@ namespace EveOPreview.UI
|
|||||||
|
|
||||||
public bool EnableThumbnailZoom
|
public bool EnableThumbnailZoom
|
||||||
{
|
{
|
||||||
get
|
get => this.EnableThumbnailZoomCheckBox.Checked;
|
||||||
{
|
|
||||||
return this.EnableThumbnailZoomCheckBox.Checked;
|
|
||||||
}
|
|
||||||
set
|
set
|
||||||
{
|
{
|
||||||
this.EnableThumbnailZoomCheckBox.Checked = value;
|
this.EnableThumbnailZoomCheckBox.Checked = value;
|
||||||
@@ -154,14 +109,8 @@ namespace EveOPreview.UI
|
|||||||
|
|
||||||
public int ThumbnailZoomFactor
|
public int ThumbnailZoomFactor
|
||||||
{
|
{
|
||||||
get
|
get => (int)this.ThumbnailZoomFactorNumericEdit.Value;
|
||||||
{
|
set => this.ThumbnailZoomFactorNumericEdit.Value = value;
|
||||||
return (int)this.ThumbnailZoomFactorNumericEdit.Value;
|
|
||||||
}
|
|
||||||
set
|
|
||||||
{
|
|
||||||
this.ThumbnailZoomFactorNumericEdit.Value = value;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public ViewZoomAnchor ThumbnailZoomAnchor
|
public ViewZoomAnchor ThumbnailZoomAnchor
|
||||||
@@ -196,46 +145,25 @@ namespace EveOPreview.UI
|
|||||||
|
|
||||||
public bool ShowThumbnailOverlays
|
public bool ShowThumbnailOverlays
|
||||||
{
|
{
|
||||||
get
|
get => this.ShowThumbnailOverlaysCheckBox.Checked;
|
||||||
{
|
set => this.ShowThumbnailOverlaysCheckBox.Checked = value;
|
||||||
return this.ShowThumbnailOverlaysCheckBox.Checked;
|
|
||||||
}
|
|
||||||
set
|
|
||||||
{
|
|
||||||
this.ShowThumbnailOverlaysCheckBox.Checked = value;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool ShowThumbnailFrames
|
public bool ShowThumbnailFrames
|
||||||
{
|
{
|
||||||
get
|
get => this.ShowThumbnailFramesCheckBox.Checked;
|
||||||
{
|
set => this.ShowThumbnailFramesCheckBox.Checked = value;
|
||||||
return this.ShowThumbnailFramesCheckBox.Checked;
|
|
||||||
}
|
|
||||||
set
|
|
||||||
{
|
|
||||||
this.ShowThumbnailFramesCheckBox.Checked = value;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool EnableActiveClientHighlight
|
public bool EnableActiveClientHighlight
|
||||||
{
|
{
|
||||||
get
|
get => this.EnableActiveClientHighlightCheckBox.Checked;
|
||||||
{
|
set => this.EnableActiveClientHighlightCheckBox.Checked = value;
|
||||||
return this.EnableActiveClientHighlightCheckBox.Checked;
|
|
||||||
}
|
|
||||||
set
|
|
||||||
{
|
|
||||||
this.EnableActiveClientHighlightCheckBox.Checked = value;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public Color ActiveClientHighlightColor
|
public Color ActiveClientHighlightColor
|
||||||
{
|
{
|
||||||
get
|
get => this._activeClientHighlightColor;
|
||||||
{
|
|
||||||
return this._activeClientHighlightColor;
|
|
||||||
}
|
|
||||||
set
|
set
|
||||||
{
|
{
|
||||||
this._activeClientHighlightColor = value;
|
this._activeClientHighlightColor = value;
|
||||||
@@ -267,9 +195,14 @@ namespace EveOPreview.UI
|
|||||||
this.WindowState = FormWindowState.Minimized;
|
this.WindowState = FormWindowState.Minimized;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SetForumUrl(string url)
|
public void SetVersionInfo(string version)
|
||||||
{
|
{
|
||||||
this.ForumLinkLabel.Text = url;
|
this.VersionLabel.Text = version;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void SetDocumentationUrl(string url)
|
||||||
|
{
|
||||||
|
this.DocumentationLink.Text = url;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void AddThumbnails(IList<IThumbnailDescriptionView> thumbnails)
|
public void AddThumbnails(IList<IThumbnailDescriptionView> thumbnails)
|
||||||
@@ -336,9 +269,34 @@ namespace EveOPreview.UI
|
|||||||
|
|
||||||
public Action<IntPtr> ThumbnailStateChanged { get; set; }
|
public Action<IntPtr> ThumbnailStateChanged { get; set; }
|
||||||
|
|
||||||
public Action ForumUrlLinkActivated { get; set; }
|
public Action DocumentationLinkActivated { get; set; }
|
||||||
|
|
||||||
#region UI events
|
#region UI events
|
||||||
|
private void ContentTabControl_DrawItem(object sender, DrawItemEventArgs e)
|
||||||
|
{
|
||||||
|
TabControl control = (TabControl)sender;
|
||||||
|
TabPage page = control.TabPages[e.Index];
|
||||||
|
Rectangle bounds = control.GetTabRect(e.Index);
|
||||||
|
|
||||||
|
Graphics graphics = e.Graphics;
|
||||||
|
|
||||||
|
Brush textBrush = new SolidBrush(SystemColors.ActiveCaptionText);
|
||||||
|
Brush backgroundBrush = (e.State == DrawItemState.Selected)
|
||||||
|
? new SolidBrush(SystemColors.Control)
|
||||||
|
: new SolidBrush(SystemColors.ControlDark);
|
||||||
|
graphics.FillRectangle(backgroundBrush, e.Bounds);
|
||||||
|
|
||||||
|
// Use our own font
|
||||||
|
Font font = new Font("Arial", this.Font.Size * 1.2f, FontStyle.Bold, GraphicsUnit.Pixel);
|
||||||
|
|
||||||
|
// Draw string and center the text
|
||||||
|
StringFormat stringFlags = new StringFormat();
|
||||||
|
stringFlags.Alignment = StringAlignment.Center;
|
||||||
|
stringFlags.LineAlignment = StringAlignment.Center;
|
||||||
|
|
||||||
|
graphics.DrawString(page.Text, font, textBrush, bounds, stringFlags);
|
||||||
|
}
|
||||||
|
|
||||||
private void OptionChanged_Handler(object sender, EventArgs e)
|
private void OptionChanged_Handler(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
if (this._suppressEvents)
|
if (this._suppressEvents)
|
||||||
@@ -396,9 +354,9 @@ namespace EveOPreview.UI
|
|||||||
this.ThumbnailStateChanged?.Invoke(selectedItem.Id);
|
this.ThumbnailStateChanged?.Invoke(selectedItem.Id);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ForumLinkLabelClicked_Handler(object sender, LinkLabelLinkClickedEventArgs e)
|
private void DocumentationLinkClicked_Handler(object sender, LinkLabelLinkClickedEventArgs e)
|
||||||
{
|
{
|
||||||
this.ForumUrlLinkActivated?.Invoke();
|
this.DocumentationLinkActivated?.Invoke();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void MainFormResize_Handler(object sender, EventArgs e)
|
private void MainFormResize_Handler(object sender, EventArgs e)
|
||||||
|
File diff suppressed because it is too large
Load Diff
@@ -58,10 +58,7 @@ namespace EveOPreview.UI
|
|||||||
|
|
||||||
public string Title
|
public string Title
|
||||||
{
|
{
|
||||||
get
|
get => this.Text;
|
||||||
{
|
|
||||||
return this.Text;
|
|
||||||
}
|
|
||||||
set
|
set
|
||||||
{
|
{
|
||||||
this.Text = value;
|
this.Text = value;
|
||||||
@@ -77,10 +74,7 @@ namespace EveOPreview.UI
|
|||||||
|
|
||||||
public Point ThumbnailLocation
|
public Point ThumbnailLocation
|
||||||
{
|
{
|
||||||
get
|
get => this.Location;
|
||||||
{
|
|
||||||
return this.Location;
|
|
||||||
}
|
|
||||||
set
|
set
|
||||||
{
|
{
|
||||||
if ((value.X > 0) || (value.Y > 0))
|
if ((value.X > 0) || (value.Y > 0))
|
||||||
@@ -93,14 +87,8 @@ namespace EveOPreview.UI
|
|||||||
|
|
||||||
public Size ThumbnailSize
|
public Size ThumbnailSize
|
||||||
{
|
{
|
||||||
get
|
get => this.ClientSize;
|
||||||
{
|
set => this.ClientSize = value;
|
||||||
return this.ClientSize;
|
|
||||||
}
|
|
||||||
set
|
|
||||||
{
|
|
||||||
this.ClientSize = value;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public Action<IntPtr> ThumbnailResized { get; set; }
|
public Action<IntPtr> ThumbnailResized { get; set; }
|
||||||
@@ -113,6 +101,8 @@ namespace EveOPreview.UI
|
|||||||
|
|
||||||
public Action<IntPtr> ThumbnailActivated { get; set; }
|
public Action<IntPtr> ThumbnailActivated { get; set; }
|
||||||
|
|
||||||
|
public Action<IntPtr> ThumbnailDeactivated { get; set; }
|
||||||
|
|
||||||
public new void Show()
|
public new void Show()
|
||||||
{
|
{
|
||||||
base.Show();
|
base.Show();
|
||||||
@@ -446,9 +436,16 @@ namespace EveOPreview.UI
|
|||||||
private void MouseDown_Handler(object sender, MouseEventArgs e)
|
private void MouseDown_Handler(object sender, MouseEventArgs e)
|
||||||
{
|
{
|
||||||
if (e.Button == MouseButtons.Left)
|
if (e.Button == MouseButtons.Left)
|
||||||
|
{
|
||||||
|
if (Control.ModifierKeys == Keys.Control)
|
||||||
|
{
|
||||||
|
this.ThumbnailDeactivated?.Invoke(this.Id);
|
||||||
|
}
|
||||||
|
else
|
||||||
{
|
{
|
||||||
this.ThumbnailActivated?.Invoke(this.Id);
|
this.ThumbnailActivated?.Invoke(this.Id);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if ((e.Button == MouseButtons.Right) || (e.Button == (MouseButtons.Left | MouseButtons.Right)))
|
if ((e.Button == MouseButtons.Right) || (e.Button == (MouseButtons.Left | MouseButtons.Right)))
|
||||||
{
|
{
|
||||||
|
@@ -32,7 +32,8 @@ namespace EveOPreview.UI
|
|||||||
bool EnableActiveClientHighlight { get; set; }
|
bool EnableActiveClientHighlight { get; set; }
|
||||||
Color ActiveClientHighlightColor { get; set; }
|
Color ActiveClientHighlightColor { get; set; }
|
||||||
|
|
||||||
void SetForumUrl(string url);
|
void SetDocumentationUrl(string url);
|
||||||
|
void SetVersionInfo(string version);
|
||||||
void SetThumbnailSizeLimitations(Size minimumSize, Size maximumSize);
|
void SetThumbnailSizeLimitations(Size minimumSize, Size maximumSize);
|
||||||
|
|
||||||
void Minimize();
|
void Minimize();
|
||||||
@@ -49,6 +50,6 @@ namespace EveOPreview.UI
|
|||||||
Action ApplicationSettingsChanged { get; set; }
|
Action ApplicationSettingsChanged { get; set; }
|
||||||
Action ThumbnailsSizeChanged { get; set; }
|
Action ThumbnailsSizeChanged { get; set; }
|
||||||
Action<IntPtr> ThumbnailStateChanged { get; set; }
|
Action<IntPtr> ThumbnailStateChanged { get; set; }
|
||||||
Action ForumUrlLinkActivated { get; set; }
|
Action DocumentationLinkActivated { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
@@ -35,6 +35,8 @@ namespace EveOPreview.UI
|
|||||||
Action<IntPtr> ThumbnailMoved { get; set; }
|
Action<IntPtr> ThumbnailMoved { get; set; }
|
||||||
Action<IntPtr> ThumbnailFocused { get; set; }
|
Action<IntPtr> ThumbnailFocused { get; set; }
|
||||||
Action<IntPtr> ThumbnailLostFocus { get; set; }
|
Action<IntPtr> ThumbnailLostFocus { get; set; }
|
||||||
|
|
||||||
Action<IntPtr> ThumbnailActivated { get; set; }
|
Action<IntPtr> ThumbnailActivated { get; set; }
|
||||||
|
Action<IntPtr> ThumbnailDeactivated { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
Binary file not shown.
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 31 KiB |
@@ -1,7 +1,7 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<packages>
|
<packages>
|
||||||
<package id="Costura.Fody" version="1.3.3.0" targetFramework="net45" developmentDependency="true" />
|
<package id="Costura.Fody" version="1.6.2" targetFramework="net45" developmentDependency="true" />
|
||||||
<package id="Fody" version="1.29.4" targetFramework="net45" developmentDependency="true" />
|
<package id="Fody" version="2.1.0" targetFramework="net45" developmentDependency="true" />
|
||||||
<package id="LightInject" version="4.0.9" targetFramework="net45" />
|
<package id="LightInject" version="5.0.3" targetFramework="net45" />
|
||||||
<package id="Newtonsoft.Json" version="8.0.3" targetFramework="net45" />
|
<package id="Newtonsoft.Json" version="10.0.2" targetFramework="net45" />
|
||||||
</packages>
|
</packages>
|
42
README.md
42
README.md
@@ -10,7 +10,7 @@ The program does NOT (and will NOT ever) do the following things:
|
|||||||
* broadcast any keyboard or mouse events
|
* broadcast any keyboard or mouse events
|
||||||
* anyhow interact with EVE Online except of bringing its main window to foreground or resizing it
|
* anyhow interact with EVE Online except of bringing its main window to foreground or resizing it
|
||||||
|
|
||||||
Under any conditions you should NOT use EVE-O Preview for any actions that break EULA or ToS of EVE Online.
|
**Under any conditions you should NOT use EVE-O Preview for any actions that break EULA or ToS of EVE Online.**
|
||||||
|
|
||||||
If you have find out that some of the features or their combination of EVE-O Preview might cause actions that can be considered as breaking EULA or ToS of EVE Online you should consider them as a bug and immediately notify the Developer ( Phrynohyas Tig-Rah ) via in-game mail.
|
If you have find out that some of the features or their combination of EVE-O Preview might cause actions that can be considered as breaking EULA or ToS of EVE Online you should consider them as a bug and immediately notify the Developer ( Phrynohyas Tig-Rah ) via in-game mail.
|
||||||
|
|
||||||
@@ -28,7 +28,7 @@ If you have find out that some of the features or their combination of EVE-O Pre
|
|||||||
2. Start up both EVE-O Preview and your EVE Clients (the order does not matter)
|
2. Start up both EVE-O Preview and your EVE Clients (the order does not matter)
|
||||||
3. Adjust settings as you see fit. Program options are described below
|
3. Adjust settings as you see fit. Program options are described below
|
||||||
|
|
||||||
#EVE Online EULA/ToS
|
# EVE Online EULA/ToS
|
||||||
|
|
||||||
This program is legal under the EULA/ToS:
|
This program is legal under the EULA/ToS:
|
||||||
|
|
||||||
@@ -54,25 +54,25 @@ CCP FoxFour wrote:
|
|||||||
|
|
||||||
## Application Options Available Via GUI
|
## Application Options Available Via GUI
|
||||||
|
|
||||||
| Option | Description |
|
| Tab | Option | Description |
|
||||||
| --- | --- |
|
| --- | --- | --- |
|
||||||
| Minimize to System Tray | Determines whether the main window form be minimized to windows tray when it is closed |
|
| **General** | Minimize to System Tray | Determines whether the main window form be minimized to windows tray when it is closed |
|
||||||
| Opacity | Determines the inactive EVE thumbnails opacity (from almost invisible 20% to 100% solid) |
|
| General | Track client locations | Determines whether the client's window position should be restored when it is activated or started |
|
||||||
| Track client locations | Determines whether the client's window position should be restored when it is activated or started |
|
| General | Hide preview of active EVE client | Determines whether the thumbnail corresponding to the active EVE client is not displayed |
|
||||||
| Hide preview of active EVE client | Determines whether the thumbnail corresponding to the active EVE client is not displayed |
|
| General | Previews always on top | Determines whether EVE client thumbnails should stay on top of all other windows |
|
||||||
| Previews always on top | Determines whether EVE client thumbnails should stay on top of all other windows |
|
| General | Hide previews when EVE client is not active | Determines whether all thumbnails should be visible only when an EVE client is active |
|
||||||
| Hide previews when EVE client is not active | Determines whether all thumbnails should be visible only when an EVE client is active |
|
| General | Unique layout for each EVE client | Determines whether thumbnails positions are different depending on the EVE client being active (f.e. links char have thumbnails of the Falcon and DPS char in the right bottom corner while DPS and Falcon alts have them placed at the top of the main EVE window ) |
|
||||||
| Unique layout for each EVE client | Determines whether thumbnails positions are different depending on the EVE client being active (f.e. links char have thumbnails of the Falcon and DPS char in the right bottom corner while DPS and Falcon alts have them placed at the top of the main EVE window ) |
|
| **Thumbnail** | Opacity | Determines the inactive EVE thumbnails opacity (from almost invisible 20% to 100% solid) |
|
||||||
| Thumbnail width | Thumbnails width. Can be set to any value from **100** to **640** points |
|
| Thumbnail | Thumbnail Width | Thumbnails width. Can be set to any value from **100** to **640** points |
|
||||||
| Thumbnail height | Thumbnails Height. Can be set to any value from **80** to **400** points |
|
| Thumbnail | Thumbnail Height | Thumbnails Height. Can be set to any value from **80** to **400** points |
|
||||||
| Zoom on hover | Determines whether a thumbnail should be zoomed when the mouse pointer is over it |
|
| **Zoom** | Zoom on hover | Determines whether a thumbnail should be zoomed when the mouse pointer is over it |
|
||||||
| Zoom factor | Thumbnail zoom factor. Can be set to any value from **2** to **10** |
|
| Zoom | Zoom factor | Thumbnail zoom factor. Can be set to any value from **2** to **10** |
|
||||||
| Zoom anchor | Sets the starting point of the thumbnail zoom |
|
| Zoom | Zoom anchor | Sets the starting point of the thumbnail zoom |
|
||||||
| Show overlay | Determines whether a name of the corresponding EVE cliet should be displayed on the thumbnail |
|
| **Overlay** | Show overlay | Determines whether a name of the corresponding EVE cliet should be displayed on the thumbnail |
|
||||||
| Show frames | Determines whether thumbnails should be displayd with window caption and borders |
|
| Overlay | Show frames | Determines whether thumbnails should be displayd with window caption and borders |
|
||||||
| Highlight active client | Determines whether the thumbnail of the active EVE client should be highlighted with a bright border |
|
| Overlay | Highlight active client | Determines whether the thumbnail of the active EVE client should be highlighted with a bright border |
|
||||||
| Color | Color used to highlight the active client's thumbnail in case the corresponding option is set |
|
| Overlay | Color | Color used to highlight the active client's thumbnail in case the corresponding option is set |
|
||||||
| Thumbnails list | List of currently active EVE client thumbnails. Checking an element in this list will hide the corresponding thumbnail. However these checks are not persisted and on the next EVE client or EVE-O Preview run the thumbnail will be visible again |
|
| **Active Clients** | Thumbnails list | List of currently active EVE client thumbnails. Checking an element in this list will hide the corresponding thumbnail. However these checks are not persisted and on the next EVE client or EVE-O Preview run the thumbnail will be visible again |
|
||||||
|
|
||||||
## Mouse Gestures
|
## Mouse Gestures
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user