diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 000000000..10aedc6a2 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,12 @@ +root = true + +# Unix-style newlines with a newline ending every file +[*] +end_of_line = crlf +insert_final_newline = true +indent_style = space +indent_size = 4 +csharp_new_line_before_open_brace = all +csharp_new_line_before_else = true +csharp_new_line_before_catch = true +csharp_new_line_before_finally = true diff --git a/.gitignore b/.gitignore index b06e864a3..9c3b54d1d 100644 --- a/.gitignore +++ b/.gitignore @@ -210,3 +210,7 @@ FakesAssemblies/ GeneratedArtifacts/ _Pvt_Extensions/ ModelManifest.xml +*.bacpac +/*.rb +/*.bat +/tools/XmlGenerator/*.sqlite diff --git a/Downloads/EVEMon-install-3.0.4.exe b/Downloads/EVEMon-install-3.0.4.exe deleted file mode 100644 index ee6059337..000000000 Binary files a/Downloads/EVEMon-install-3.0.4.exe and /dev/null differ diff --git a/EVEAuthGateway/Controllers/CallbackController.cs b/EVEAuthGateway/Controllers/CallbackController.cs deleted file mode 100644 index 86e64877d..000000000 --- a/EVEAuthGateway/Controllers/CallbackController.cs +++ /dev/null @@ -1,39 +0,0 @@ -using System; -using System.Linq; -using System.Net; -using System.Net.Http; -using System.Web.Http; - -using Flurl; -using Flurl.Util; - -using EVEMon.Gateways.Extensions.Owin; -using EVEMon.Gateways.Properties; - -namespace EVEMon.Gateways.Controllers -{ - public class CallbackController : ApiController - { - public HttpResponseMessage Get() - { - var query = Request.GetQueryNameValuePairs().ToDictionary(k => k.Key); - - if (!query.ContainsKey("code")) return RedirectTo("failed"); - - var code = query["code"].Value; - - TokenOperations.FromAuthorizationCode(code); - - return RedirectTo("success"); - } - - private HttpResponseMessage RedirectTo(string pathSegment) - { - var url = Settings.Default.InternalServerBaseURL - .AppendPathSegment($"{pathSegment}.html"); - var response = Request.CreateResponse(HttpStatusCode.Moved); - response.Headers.Location = new Uri(url.ToInvariantString()); - return response; - } - } -} \ No newline at end of file diff --git a/EVEAuthGateway/Controllers/StartupController.cs b/EVEAuthGateway/Controllers/StartupController.cs deleted file mode 100644 index 4524f5c1f..000000000 --- a/EVEAuthGateway/Controllers/StartupController.cs +++ /dev/null @@ -1,57 +0,0 @@ -using System; -using System.Net; -using System.Net.Http; -using System.Text; -using System.Web.Http; - -using Flurl; -using Flurl.Util; - -using EVEMon.Gateways.Properties; - -namespace EVEMon.Gateways.Controllers -{ - public class StartupController : ApiController - { - Settings AppSettings = EVEMon.Gateways.Properties.Settings.Default; - - public HttpResponseMessage Get() - { - string CallbackURL = AppSettings.InternalServerBaseURL.AppendPathSegment("callback"); - - // Create a Guid to use as an insurance policy. The Guid prevents man-in-the-middle attacks. - Guid State = Guid.NewGuid(); - - // Create the redirect URL for our local server - string RedirectURL = AppSettings.LoginServerBaseUrl - .AppendPathSegment("authorize") - .SetQueryParam("response_type", "code") - .SetQueryParam("redirect_uri", CallbackURL) - .SetQueryParam("client_id", AppSettings.ClientID) - .SetQueryParam("state", State) - .SetQueryParam("scope", AssembleRequestScopes()); - - HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.Redirect); - response.Headers.Location = new Uri(RedirectURL.ToInvariantString()); - return response; - } - - /// - /// Gets and returns the collection of scopes defined in the Settings file - /// - /// A single space delimeted string of scopes - private string AssembleRequestScopes() - { - string[] ScopeList = new string[AppSettings.Scopes.Count]; - AppSettings.Scopes.CopyTo(ScopeList, 0); - StringBuilder Builder = new StringBuilder(); - - foreach (string Scope in ScopeList) - { - Builder.Append($" {Scope}"); - } - - return Builder.ToString(); - } - } -} \ No newline at end of file diff --git a/EVEAuthGateway/EVEAuthFactory.cs b/EVEAuthGateway/EVEAuthFactory.cs deleted file mode 100644 index 50f7157e3..000000000 --- a/EVEAuthGateway/EVEAuthFactory.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; - -using EVEMon.Gateways.Specification; - -namespace EVEMon.Gateways.Factories -{ - /// - /// Based on the information required, determines which API to use and returns a class to interact with it. - /// - public static class EVEAuthFactory - { - public static IEVEAuthGateway GetEVEAuthGateway() - { - return new EVEAuthGateway(); - } - } -} diff --git a/EVEAuthGateway/EVEAuthGateway.cs b/EVEAuthGateway/EVEAuthGateway.cs deleted file mode 100644 index 3cbe4e687..000000000 --- a/EVEAuthGateway/EVEAuthGateway.cs +++ /dev/null @@ -1,65 +0,0 @@ -using System; -using System.Diagnostics; - -using Flurl; -using Microsoft.Owin.Hosting; - -using EVEMon.Gateways.Extensions.Owin; -using EVEMon.Gateways.Properties; -using EVEMon.Gateways.Specification; - -namespace EVEMon.Gateways -{ - public class EVEAuthGateway : IEVEAuthGateway - { - private IDisposable WebServer; - - /// - /// A constructor which initialises the WebApp required for the authentication process - /// - public EVEAuthGateway() - { - Settings AppSettings = Settings.Default; - string BaseURL = AppSettings.InternalServerBaseURL; - bool StartSuccess = StartWebApp(BaseURL); - - if (!StartSuccess) - throw new NotImplementedException(); // TODO - Ashilta - Need to do some error things in here - - try - { Process.Start(BaseURL.AppendPathSegment("Startup")); } - catch (Exception ex) - { } // TODO - Ashilta - Need to do some error things in here! - } - - private IDisposable OwinServer; - - /// - /// Perform any cleanup actions with the API we're using, dispose of resources and tidy up cleanly. - /// - public void Dispose() - { - OwinServer.Dispose(); - // TODO - Ashilta - Need to progmmatically unreserve the port that was used for the startup process so that we know it's free for A) other applications or B) next time - } - - /// - /// Starts a locally run WebApp, required to receive the responses of calls to any EVE API or SSO process - /// (baseURL); - } - catch(Exception ex) - { - // TODO - Ashilta - Call the error logging stuff that we normally use. I need to look into this. - // TODO - Ashilta - Catch the specific exception that's thrown when trying to start using a port that's already been reserved. It can retry. - return false; - } - - return true; - } - } -} \ No newline at end of file diff --git a/EVEAuthGateway/EVEMon.Gateways.csproj b/EVEAuthGateway/EVEMon.Gateways.csproj deleted file mode 100644 index 33ddfe5f0..000000000 --- a/EVEAuthGateway/EVEMon.Gateways.csproj +++ /dev/null @@ -1,176 +0,0 @@ - - - - - Debug - AnyCPU - {16BE72BB-4BCD-4CFC-B292-F54DE40970F8} - Library - Properties - EVEMon.Gateways - EVEAuthGateway - v4.6.1 - 512 - - - - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - ..\packages\Flurl.2.2.1\lib\netstandard1.4\Flurl.dll - True - - - ..\packages\Flurl.Http.1.1.1\lib\net45\Flurl.Http.dll - True - - - ..\packages\Microsoft.Owin.3.0.1\lib\net45\Microsoft.Owin.dll - True - - - ..\packages\Microsoft.Owin.Diagnostics.3.0.1\lib\net45\Microsoft.Owin.Diagnostics.dll - True - - - ..\packages\Microsoft.Owin.FileSystems.3.0.1\lib\net45\Microsoft.Owin.FileSystems.dll - True - - - ..\packages\Microsoft.Owin.Host.HttpListener.3.0.1\lib\net45\Microsoft.Owin.Host.HttpListener.dll - True - - - ..\packages\Microsoft.Owin.Hosting.3.0.1\lib\net45\Microsoft.Owin.Hosting.dll - True - - - ..\packages\Microsoft.Owin.StaticFiles.3.0.1\lib\net45\Microsoft.Owin.StaticFiles.dll - True - - - ..\packages\Microsoft.Win32.Primitives.4.0.1\lib\net46\Microsoft.Win32.Primitives.dll - True - - - ..\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll - True - - - ..\packages\Owin.1.0\lib\net40\Owin.dll - True - - - - - ..\packages\System.Diagnostics.DiagnosticSource.4.0.0\lib\net46\System.Diagnostics.DiagnosticSource.dll - True - - - ..\packages\System.IO.FileSystem.4.0.1\lib\net46\System.IO.FileSystem.dll - True - - - ..\packages\System.IO.FileSystem.Primitives.4.0.1\lib\net46\System.IO.FileSystem.Primitives.dll - True - - - ..\packages\System.Net.Http.4.3.1\lib\net46\System.Net.Http.dll - True - - - ..\packages\Microsoft.AspNet.WebApi.Client.5.2.3\lib\net45\System.Net.Http.Formatting.dll - True - - - ..\packages\System.Reflection.TypeExtensions.4.1.0\lib\net46\System.Reflection.TypeExtensions.dll - True - - - ..\packages\System.Security.Cryptography.Algorithms.4.3.0\lib\net461\System.Security.Cryptography.Algorithms.dll - True - - - ..\packages\System.Security.Cryptography.Encoding.4.3.0\lib\net46\System.Security.Cryptography.Encoding.dll - True - - - ..\packages\System.Security.Cryptography.Primitives.4.3.0\lib\net46\System.Security.Cryptography.Primitives.dll - True - - - ..\packages\System.Security.Cryptography.X509Certificates.4.3.0\lib\net461\System.Security.Cryptography.X509Certificates.dll - True - - - ..\packages\System.Text.Encoding.CodePages.4.0.1\lib\net46\System.Text.Encoding.CodePages.dll - True - - - ..\packages\Microsoft.AspNet.WebApi.Core.5.2.3\lib\net45\System.Web.Http.dll - True - - - ..\packages\Microsoft.AspNet.WebApi.Owin.5.2.3\lib\net45\System.Web.Http.Owin.dll - True - - - - - - - - - - - - - - - - - True - True - Settings.settings - - - - - - - - - SettingsSingleFileGenerator - Settings.Designer.cs - - - - - {69910606-a534-49ce-8c8b-7df694988f7e} - EVEMon.Entities - - - - - \ No newline at end of file diff --git a/EVEAuthGateway/OWIN Support/OwinExtensions.cs b/EVEAuthGateway/OWIN Support/OwinExtensions.cs deleted file mode 100644 index 3bf493107..000000000 --- a/EVEAuthGateway/OWIN Support/OwinExtensions.cs +++ /dev/null @@ -1,50 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Web.Http; - -using Microsoft.Owin.FileSystems; -using Microsoft.Owin.StaticFiles; -using Microsoft.Owin.StaticFiles.ContentTypes; -using Owin; - -namespace EVEMon.Gateways.Extensions.Owin -{ - public static class OwinExtensions - { - public static IAppBuilder UseRedirectionEndPoints(this IAppBuilder app) - { - // Configure Web API for self-host. - var config = new HttpConfiguration(); - config.Routes.MapHttpRoute( - "Authentication", - "{controller}" - ); - - return app.UseWebApi(config); - } - - public static IAppBuilder UseStaticContent(this IAppBuilder app) - { - var contentTypes = new Dictionary { - {".html", "text/html"}, - {".jpeg", "image/jpeg"}, - {".png", "image/png"}, - {".css", "text/css"} - }; - - // Configure static file hosting - var options = new FileServerOptions - { - EnableDefaultFiles = false, - EnableDirectoryBrowsing = false, - FileSystem = - new EmbeddedResourceFileSystem(typeof(OwinStartupConfig).Assembly, "EVEOnlineSingleSignOnWinForms.Content"), - StaticFileOptions = { - ContentTypeProvider = new FileExtensionContentTypeProvider(contentTypes) - } - }; - - return app.UseFileServer(options); - } - } -} \ No newline at end of file diff --git a/EVEAuthGateway/OWIN Support/OwinStartupConfig.cs b/EVEAuthGateway/OWIN Support/OwinStartupConfig.cs deleted file mode 100644 index 04a3773e8..000000000 --- a/EVEAuthGateway/OWIN Support/OwinStartupConfig.cs +++ /dev/null @@ -1,15 +0,0 @@ -using System; - -using Owin; - -namespace EVEMon.Gateways.Extensions.Owin -{ - public class OwinStartupConfig - { - public void Configuration(IAppBuilder app) - { - app.UseRedirectionEndPoints(); - app.UseStaticContent(); - } - } -} \ No newline at end of file diff --git a/EVEAuthGateway/OWIN Support/TokenOperations.cs b/EVEAuthGateway/OWIN Support/TokenOperations.cs deleted file mode 100644 index 00cd7ee66..000000000 --- a/EVEAuthGateway/OWIN Support/TokenOperations.cs +++ /dev/null @@ -1,77 +0,0 @@ -using System.Collections.Generic; -using System.Net.Http; - -using Flurl; -using Flurl.Http; -using Newtonsoft.Json.Linq; - -using EVEMon.Entities.Events; - -namespace EVEMon.Gateways.Extensions.Owin -{ - public static class TokenOperations - { - public static void FromAuthorizationCode(string code) - { - var body = new Dictionary - { - {"grant_type", "authorization_code"}, - {"code", code} - }; - - GetToken(code, body); - } - - public static void FromRefreshToken(string refreshToken) - { - var body = new Dictionary - { - {"grant_type", "refresh_token"}, - {"refresh_token", refreshToken} - }; - GetToken(refreshToken, body); - } - - private static void GetToken(string authenticationArtifact, Dictionary body) - { - var settings = EVEMon.Gateways.Properties.Settings.Default; - var content = new FormUrlEncodedContent(body); - var result = settings.LoginServerBaseUrl - .AppendPathSegment("token") - .WithBasicAuth(settings.ClientID, settings.ClientSecret) - .PostAsync(content) - .ReceiveString() - .Result; - - var obj = JObject.Parse(result); - var args = new SSOCompleteEventArgs - { - AccessToken = obj.SelectToken("access_token").Value(), - Expires = obj.SelectToken("expires_in").Value(), - RefreshToken = obj.SelectToken("refresh_token").Value() - }; - - if (body["grant_type"] == "authorization_code") args.AuthorizationToken = authenticationArtifact; - - // Before we finish, we need to get details of the character we're dealing with: - GetCharacterDetailsFromSSO(ref args); - - // An event to signal that the SSO process has finished. - GlobalEvents.Complete(null, args); - } - - private static void GetCharacterDetailsFromSSO(ref SSOCompleteEventArgs args) - { - var Settings = Properties.Settings.Default; - var Character = Settings.LoginServerBaseUrl.AppendPathSegment("verify") - .WithOAuthBearerToken(args.AccessToken) - .GetAsync() - .ReceiveJson() - .Result; - - args.CharacterName = Character.CharacterName; - args.CharacterID = (int)Character.CharacterID; - args.CharacterOwnerHash = Character.CharacterOwnerHash; - } - } -} \ No newline at end of file diff --git a/EVEAuthGateway/Properties/AssemblyInfo.cs b/EVEAuthGateway/Properties/AssemblyInfo.cs deleted file mode 100644 index eeb875ea0..000000000 --- a/EVEAuthGateway/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("EVEMon Gateways")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("EVEMon Gateways")] -[assembly: AssemblyCopyright("Copyright © 2017")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("16be72bb-4bcd-4cfc-b292-f54de40970f8")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/EVEAuthGateway/Properties/Settings.Designer.cs b/EVEAuthGateway/Properties/Settings.Designer.cs deleted file mode 100644 index bb55929c3..000000000 --- a/EVEAuthGateway/Properties/Settings.Designer.cs +++ /dev/null @@ -1,116 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.42000 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace EVEMon.Gateways.Properties { - - - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.0.1.0")] - internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { - - private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); - - public static Settings Default { - get { - return defaultInstance; - } - } - - [global::System.Configuration.ApplicationScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("http://localhost:38164")] - public string InternalServerBaseURL - { - get - { - return ((string)(this["InternalServerBaseURL"])); - } - } - - [global::System.Configuration.ApplicationScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("https://login.eveonline.com/oauth")] - public string LoginServerBaseUrl - { - get - { - return ((string)(this["LoginServerBaseURL"])); - } - } - - [global::System.Configuration.ApplicationScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute(@" - -publicData -characterStatsRead -characterFactionalWarfareRead -characterIndustryJobsRead -characterMarketOrdersRead -characterNotificationsRead -characterAccountRead -characterContractsRead -characterOpportunitiesRead -characterLoyaltyPointsRead -esi-calendar.respond_calendar_events.v1 -esi-calendar.read_calendar_events.v1 -esi-characters.read_contacts.v1 -esi-characters.read_loyalty.v1 -esi-characters.read_opportunities.v1 -esi-characters.read_medals.v1 -esi-characters.read_standings.v1 -esi-characters.read_agents_research.v1 -esi-clones.read_clones.v1 -esi-location.read_location.v1 -esi-location.read_ship_type.v1 -esi-mail.read_mail.v1 -esi-search.search_structures.v1 -esi-skills.read_skills.v1 -esi-skills.read_skillqueue.v1 -esi-wallet.read_character_wallet.v1 -esi-universe.read_structures.v1 -esi-bookmarks.read_character_bookmarks.v1 -esi-killmails.read_killmails.v1 -esi-assets.read_assets.v1 -esi-planets.manage_planets.v1 -esi-markets.structure_markets.v1 -esi-characters.read_standings.v1 -")] - public global::System.Collections.Specialized.StringCollection Scopes - { - get - { - return ((global::System.Collections.Specialized.StringCollection)(this["Scopes"])); - } - } - - [global::System.Configuration.ApplicationScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("6744fb2bede34f02a21a8becb3647f45")] - public string ClientID - { - get - { - return ((string)(this["ClientID"])); - } - } - - [global::System.Configuration.ApplicationScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("J2vJrNrHxLPHwdQksLVlL8gaCArKgZ6cCnegb5Jp")] - public string ClientSecret - { - get - { - return ((string)(this["ClientSecret"])); - } - } - } -} \ No newline at end of file diff --git a/EVEAuthGateway/Properties/Settings.settings b/EVEAuthGateway/Properties/Settings.settings deleted file mode 100644 index 404fde718..000000000 --- a/EVEAuthGateway/Properties/Settings.settings +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - http://localhost:3816 - - - \ No newline at end of file diff --git a/EVEAuthGateway/Specification/IEVEAuthGateway.cs b/EVEAuthGateway/Specification/IEVEAuthGateway.cs deleted file mode 100644 index 18595c1c7..000000000 --- a/EVEAuthGateway/Specification/IEVEAuthGateway.cs +++ /dev/null @@ -1,9 +0,0 @@ -using System; - -namespace EVEMon.Gateways.Specification -{ - public interface IEVEAuthGateway : IDisposable - { - - } -} diff --git a/EVEAuthGateway/app.config b/EVEAuthGateway/app.config deleted file mode 100644 index cfe17e8d3..000000000 --- a/EVEAuthGateway/app.config +++ /dev/null @@ -1,43 +0,0 @@ - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - http://localhost:3816 - - - - diff --git a/EVEAuthGateway/packages.config b/EVEAuthGateway/packages.config deleted file mode 100644 index 759f9f6b8..000000000 --- a/EVEAuthGateway/packages.config +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/EVEMon.Clients.Winforms/EVEMon.Clients.Winforms.csproj b/EVEMon.Clients.Winforms/EVEMon.Clients.Winforms.csproj deleted file mode 100644 index 0adeaac59..000000000 --- a/EVEMon.Clients.Winforms/EVEMon.Clients.Winforms.csproj +++ /dev/null @@ -1,66 +0,0 @@ - - - - - Debug - AnyCPU - {449EE2F8-179A-42D4-A0F0-9A4C925C0D11} - Library - Properties - EVEMon.Clients.Winforms - EVEMon.Clients.Winforms - v4.6.1 - 512 - - - - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - - - - - - - - - - - - - - - - - {c0665275-3e0b-4117-81b0-751206ed03cd} - EVEMon.Common - - - - - - - - \ No newline at end of file diff --git a/EVEMon.Clients.Winforms/Properties/AssemblyInfo.cs b/EVEMon.Clients.Winforms/Properties/AssemblyInfo.cs deleted file mode 100644 index 99bb3b389..000000000 --- a/EVEMon.Clients.Winforms/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("EVEMon.Clients.Winforms")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("EVEMon.Clients.Winforms")] -[assembly: AssemblyCopyright("Copyright © 2017")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("449ee2f8-179a-42d4-a0f0-9a4c925c0d11")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/EVEMon.Clients.Winforms/ViewBinders/DockableViewBinder.cs b/EVEMon.Clients.Winforms/ViewBinders/DockableViewBinder.cs deleted file mode 100644 index af63e3522..000000000 --- a/EVEMon.Clients.Winforms/ViewBinders/DockableViewBinder.cs +++ /dev/null @@ -1,41 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows.Forms; - -namespace EVEMon.Clients.Winforms.ViewBinders -{ - public static class DockableViewBinder - { - private static List