using System.Windows.Forms;\r
using System.Xml.Serialization;\r
\r
- using HandBrake.Framework.Services;\r
- using HandBrake.Framework.Services.Interfaces;\r
+\r
using HandBrake.ApplicationServices.Model;\r
using HandBrake.ApplicationServices.Parsing;\r
using HandBrake.ApplicationServices.Services.Interfaces;\r
- using Model;\r
+\r
+ using Handbrake.ToolWindows;\r
\r
/// <summary>\r
/// Useful functions which various screens can use.\r
/// </summary>\r
public static class Main\r
{\r
- /// <summary>\r
- /// The Error Service\r
- /// </summary>\r
- private static readonly IErrorService errorService = new ErrorService();\r
-\r
/// <summary>\r
/// The XML Serializer\r
/// </summary>\r
/// </param>\r
public static void ShowExceptiowWindow(string shortError, string longError)\r
{\r
- errorService.ShowError(shortError, longError);\r
+ ExceptionWindow window = new ExceptionWindow();\r
+ window.Setup(shortError, longError);\r
+ window.ShowDialog();\r
}\r
\r
/// <summary>\r
<ItemGroup>\r
<None Include="Resources\logo64.png" />\r
</ItemGroup>\r
- <ItemGroup>\r
- <ProjectReference Include="..\HandBrake.Framework\HandBrake.Framework.csproj">\r
- <Project>{49AD42C1-BF9B-4D78-A644-020878FAADE6}</Project>\r
- <Name>HandBrake.Framework</Name>\r
- </ProjectReference>\r
- </ItemGroup>\r
<ItemGroup />\r
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
<Import Project="$(ProgramFiles)\MSBuild\Microsoft\StyleCop\v4.4\Microsoft.StyleCop.targets" />\r
using System.Text.RegularExpressions;\r
using System.Xml;\r
\r
- using HandBrake.Framework.Services.Interfaces;\r
-\r
/// <summary>\r
/// Appcast Reader - Used for parsing HandBrakes update file\r
/// </summary>\r
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>\r
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
- <PropertyGroup>\r
- <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
- <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
- <ProductVersion>8.0.30703</ProductVersion>\r
- <SchemaVersion>2.0</SchemaVersion>\r
- <ProjectGuid>{49AD42C1-BF9B-4D78-A644-020878FAADE6}</ProjectGuid>\r
- <OutputType>Library</OutputType>\r
- <AppDesignerFolder>Properties</AppDesignerFolder>\r
- <RootNamespace>HandBrake.Framework</RootNamespace>\r
- <AssemblyName>HandBrake.Framework</AssemblyName>\r
- <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>\r
- <FileAlignment>512</FileAlignment>\r
- <FileUpgradeFlags>\r
- </FileUpgradeFlags>\r
- <OldToolsVersion>3.5</OldToolsVersion>\r
- <UpgradeBackupLocation />\r
- <TargetFrameworkProfile>Client</TargetFrameworkProfile>\r
- </PropertyGroup>\r
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
- <DebugSymbols>true</DebugSymbols>\r
- <DebugType>full</DebugType>\r
- <Optimize>false</Optimize>\r
- <OutputPath>bin\Debug\</OutputPath>\r
- <DefineConstants>DEBUG;TRACE</DefineConstants>\r
- <ErrorReport>prompt</ErrorReport>\r
- <WarningLevel>4</WarningLevel>\r
- <PlatformTarget>AnyCPU</PlatformTarget>\r
- </PropertyGroup>\r
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
- <DebugType>pdbonly</DebugType>\r
- <Optimize>true</Optimize>\r
- <OutputPath>bin\Release\</OutputPath>\r
- <DefineConstants>TRACE</DefineConstants>\r
- <ErrorReport>prompt</ErrorReport>\r
- <WarningLevel>4</WarningLevel>\r
- </PropertyGroup>\r
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'NightlyBuild|AnyCPU' ">\r
- <OutputPath>bin\NightlyBuild\</OutputPath>\r
- <DefineConstants>TRACE</DefineConstants>\r
- <Optimize>true</Optimize>\r
- <DebugType>pdbonly</DebugType>\r
- <PlatformTarget>AnyCPU</PlatformTarget>\r
- <ErrorReport>prompt</ErrorReport>\r
- </PropertyGroup>\r
- <ItemGroup>\r
- <Reference Include="System" />\r
- <Reference Include="System.Core" />\r
- <Reference Include="System.Drawing" />\r
- <Reference Include="System.Windows.Forms" />\r
- <Reference Include="System.Xml.Linq" />\r
- <Reference Include="System.Data.DataSetExtensions" />\r
- <Reference Include="System.Data" />\r
- <Reference Include="System.Xml" />\r
- </ItemGroup>\r
- <ItemGroup>\r
- <Compile Include="Properties\AssemblyInfo.cs" />\r
- <Compile Include="Properties\Resources.Designer.cs">\r
- <AutoGen>True</AutoGen>\r
- <DesignTime>True</DesignTime>\r
- <DependentUpon>Resources.resx</DependentUpon>\r
- </Compile>\r
- <Compile Include="Services\ErrorService.cs" />\r
- <Compile Include="Services\Interfaces\IErrorService.cs" />\r
- <Compile Include="Views\ExceptionWindow.cs">\r
- <SubType>Form</SubType>\r
- </Compile>\r
- <Compile Include="Views\ExceptionWindow.designer.cs">\r
- <DependentUpon>ExceptionWindow.cs</DependentUpon>\r
- </Compile>\r
- </ItemGroup>\r
- <ItemGroup>\r
- <EmbeddedResource Include="Properties\Resources.resx">\r
- <Generator>ResXFileCodeGenerator</Generator>\r
- <LastGenOutput>Resources.Designer.cs</LastGenOutput>\r
- </EmbeddedResource>\r
- <EmbeddedResource Include="Views\ExceptionWindow.resx">\r
- <DependentUpon>ExceptionWindow.cs</DependentUpon>\r
- </EmbeddedResource>\r
- </ItemGroup>\r
- <ItemGroup>\r
- <None Include="Resources\copy.png" />\r
- </ItemGroup>\r
- <ItemGroup>\r
- <None Include="Resources\errorx.png" />\r
- </ItemGroup>\r
- <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
- <Import Project="$(ProgramFiles)\MSBuild\Microsoft\StyleCop\v4.4\Microsoft.StyleCop.targets" />\r
- <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
- Other similar extension points exist, see Microsoft.Common.targets.\r
- <Target Name="BeforeBuild">\r
- </Target>\r
- <Target Name="AfterBuild">\r
- </Target>\r
- -->\r
-</Project>
\ No newline at end of file
+++ /dev/null
-using System.Reflection;\r
-using System.Runtime.CompilerServices;\r
-using System.Runtime.InteropServices;\r
-\r
-// General Information about an assembly is controlled through the following \r
-// set of attributes. Change these attribute values to modify the information\r
-// associated with an assembly.\r
-[assembly: AssemblyTitle("HandBrake.Framework")]\r
-[assembly: AssemblyDescription("")]\r
-[assembly: AssemblyConfiguration("")]\r
-[assembly: AssemblyCompany("HandBrake Team")]\r
-[assembly: AssemblyProduct("HandBrake.Framework")]\r
-[assembly: AssemblyCopyright("Copyright © HandBrake Team")]\r
-[assembly: AssemblyTrademark("")]\r
-[assembly: AssemblyCulture("")]\r
-\r
-// Setting ComVisible to false makes the types in this assembly not visible \r
-// to COM components. If you need to access a type in this assembly from \r
-// COM, set the ComVisible attribute to true on that type.\r
-[assembly: ComVisible(false)]\r
-\r
-// The following GUID is for the ID of the typelib if this project is exposed to COM\r
-[assembly: Guid("85248e69-53e0-4a37-a1a6-95c2e99fc750")]\r
-\r
-// Version information for an assembly consists of the following four values:\r
-//\r
-// Major Version\r
-// Minor Version \r
-// Build Number\r
-// Revision\r
-//\r
-// You can specify all the values or you can default the Build and Revision Numbers \r
-// by using the '*' as shown below:\r
-// [assembly: AssemblyVersion("1.0.*")]\r
-[assembly: AssemblyVersion("0.9.5.0")]\r
-[assembly: AssemblyFileVersion("0.9.5.0")]\r
+++ /dev/null
-//------------------------------------------------------------------------------\r
-// <auto-generated>\r
-// This code was generated by a tool.\r
-// Runtime Version:4.0.30319.1\r
-//\r
-// Changes to this file may cause incorrect behavior and will be lost if\r
-// the code is regenerated.\r
-// </auto-generated>\r
-//------------------------------------------------------------------------------\r
-\r
-namespace HandBrake.Framework.Properties {\r
- using System;\r
- \r
- \r
- /// <summary>\r
- /// A strongly-typed resource class, for looking up localized strings, etc.\r
- /// </summary>\r
- // This class was auto-generated by the StronglyTypedResourceBuilder\r
- // class via a tool like ResGen or Visual Studio.\r
- // To add or remove a member, edit your .ResX file then rerun ResGen\r
- // with the /str option, or rebuild your VS project.\r
- [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]\r
- [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]\r
- [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]\r
- internal class Resources {\r
- \r
- private static global::System.Resources.ResourceManager resourceMan;\r
- \r
- private static global::System.Globalization.CultureInfo resourceCulture;\r
- \r
- [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]\r
- internal Resources() {\r
- }\r
- \r
- /// <summary>\r
- /// Returns the cached ResourceManager instance used by this class.\r
- /// </summary>\r
- [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]\r
- internal static global::System.Resources.ResourceManager ResourceManager {\r
- get {\r
- if (object.ReferenceEquals(resourceMan, null)) {\r
- global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("HandBrake.Framework.Properties.Resources", typeof(Resources).Assembly);\r
- resourceMan = temp;\r
- }\r
- return resourceMan;\r
- }\r
- }\r
- \r
- /// <summary>\r
- /// Overrides the current thread's CurrentUICulture property for all\r
- /// resource lookups using this strongly typed resource class.\r
- /// </summary>\r
- [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]\r
- internal static global::System.Globalization.CultureInfo Culture {\r
- get {\r
- return resourceCulture;\r
- }\r
- set {\r
- resourceCulture = value;\r
- }\r
- }\r
- \r
- internal static System.Drawing.Bitmap copy {\r
- get {\r
- object obj = ResourceManager.GetObject("copy", resourceCulture);\r
- return ((System.Drawing.Bitmap)(obj));\r
- }\r
- }\r
- \r
- internal static System.Drawing.Bitmap ErrorX {\r
- get {\r
- object obj = ResourceManager.GetObject("ErrorX", resourceCulture);\r
- return ((System.Drawing.Bitmap)(obj));\r
- }\r
- }\r
- }\r
-}\r
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>\r
-<root>\r
- <!-- \r
- Microsoft ResX Schema \r
- \r
- Version 2.0\r
- \r
- The primary goals of this format is to allow a simple XML format \r
- that is mostly human readable. The generation and parsing of the \r
- various data types are done through the TypeConverter classes \r
- associated with the data types.\r
- \r
- Example:\r
- \r
- ... ado.net/XML headers & schema ...\r
- <resheader name="resmimetype">text/microsoft-resx</resheader>\r
- <resheader name="version">2.0</resheader>\r
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>\r
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>\r
- <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>\r
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>\r
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">\r
- <value>[base64 mime encoded serialized .NET Framework object]</value>\r
- </data>\r
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">\r
- <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>\r
- <comment>This is a comment</comment>\r
- </data>\r
- \r
- There are any number of "resheader" rows that contain simple \r
- name/value pairs.\r
- \r
- Each data row contains a name, and value. The row also contains a \r
- type or mimetype. Type corresponds to a .NET class that support \r
- text/value conversion through the TypeConverter architecture. \r
- Classes that don't support this are serialized and stored with the \r
- mimetype set.\r
- \r
- The mimetype is used for serialized objects, and tells the \r
- ResXResourceReader how to depersist the object. This is currently not \r
- extensible. For a given mimetype the value must be set accordingly:\r
- \r
- Note - application/x-microsoft.net.object.binary.base64 is the format \r
- that the ResXResourceWriter will generate, however the reader can \r
- read any of the formats listed below.\r
- \r
- mimetype: application/x-microsoft.net.object.binary.base64\r
- value : The object must be serialized with \r
- : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter\r
- : and then encoded with base64 encoding.\r
- \r
- mimetype: application/x-microsoft.net.object.soap.base64\r
- value : The object must be serialized with \r
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter\r
- : and then encoded with base64 encoding.\r
-\r
- mimetype: application/x-microsoft.net.object.bytearray.base64\r
- value : The object must be serialized into a byte array \r
- : using a System.ComponentModel.TypeConverter\r
- : and then encoded with base64 encoding.\r
- -->\r
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">\r
- <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />\r
- <xsd:element name="root" msdata:IsDataSet="true">\r
- <xsd:complexType>\r
- <xsd:choice maxOccurs="unbounded">\r
- <xsd:element name="metadata">\r
- <xsd:complexType>\r
- <xsd:sequence>\r
- <xsd:element name="value" type="xsd:string" minOccurs="0" />\r
- </xsd:sequence>\r
- <xsd:attribute name="name" use="required" type="xsd:string" />\r
- <xsd:attribute name="type" type="xsd:string" />\r
- <xsd:attribute name="mimetype" type="xsd:string" />\r
- <xsd:attribute ref="xml:space" />\r
- </xsd:complexType>\r
- </xsd:element>\r
- <xsd:element name="assembly">\r
- <xsd:complexType>\r
- <xsd:attribute name="alias" type="xsd:string" />\r
- <xsd:attribute name="name" type="xsd:string" />\r
- </xsd:complexType>\r
- </xsd:element>\r
- <xsd:element name="data">\r
- <xsd:complexType>\r
- <xsd:sequence>\r
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />\r
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />\r
- </xsd:sequence>\r
- <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />\r
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />\r
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />\r
- <xsd:attribute ref="xml:space" />\r
- </xsd:complexType>\r
- </xsd:element>\r
- <xsd:element name="resheader">\r
- <xsd:complexType>\r
- <xsd:sequence>\r
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />\r
- </xsd:sequence>\r
- <xsd:attribute name="name" type="xsd:string" use="required" />\r
- </xsd:complexType>\r
- </xsd:element>\r
- </xsd:choice>\r
- </xsd:complexType>\r
- </xsd:element>\r
- </xsd:schema>\r
- <resheader name="resmimetype">\r
- <value>text/microsoft-resx</value>\r
- </resheader>\r
- <resheader name="version">\r
- <value>2.0</value>\r
- </resheader>\r
- <resheader name="reader">\r
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
- </resheader>\r
- <resheader name="writer">\r
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
- </resheader>\r
- <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />\r
- <data name="copy" type="System.Resources.ResXFileRef, System.Windows.Forms">\r
- <value>..\Resources\copy.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>\r
- </data>\r
- <data name="ErrorX" type="System.Resources.ResXFileRef, System.Windows.Forms">\r
- <value>..\Resources\errorx.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>\r
- </data>\r
-</root>
\ No newline at end of file
+++ /dev/null
-/* ErrorService.cs $\r
- This file is part of the HandBrake source code.\r
- Homepage: <http://handbrake.fr>.\r
- It may be used under the terms of the GNU General Public License. */\r
-\r
-namespace HandBrake.Framework.Services\r
-{\r
- using System;\r
- using System.IO;\r
- using System.Threading;\r
- using System.Windows.Forms;\r
-\r
- using HandBrake.Framework.Services.Interfaces;\r
- using HandBrake.Framework.Views;\r
-\r
- /// <summary>\r
- /// The Error Service\r
- /// </summary>\r
- public class ErrorService : IErrorService\r
- {\r
- private int exceptionCount;\r
-\r
- /// <summary>\r
- /// Show an Error Window\r
- /// </summary>\r
- /// <param name="shortError">\r
- /// The short error message for the user to read\r
- /// </param>\r
- /// <param name="longError">\r
- /// Exception string or advanced details\r
- /// </param>\r
- public void ShowError(string shortError, string longError)\r
- {\r
- exceptionCount++;\r
-\r
- try\r
- {\r
- Thread newThread = new Thread(new ParameterizedThreadStart(this.LogError));\r
- newThread.Start(shortError + Environment.NewLine + longError);\r
- }\r
- catch (Exception)\r
- {\r
- // Do Nothing\r
- }\r
-\r
- if (exceptionCount > 30)\r
- {\r
- // If we are getting a large number of exceptions, just die out. We don't want to fill the users drive with a ton \r
- // of exception files.\r
- return;\r
- }\r
-\r
- ExceptionWindow window = new ExceptionWindow();\r
- window.Setup(shortError, longError);\r
-\r
- // This seems far from ideal so maybe have a think about a better way of doing this.\r
- // This method can be called from UI and worker threads, so the ExcWindow needs to be called on the UI thread or on it's on UI thread.\r
- Application.Run(window); \r
- }\r
-\r
- /// <summary>\r
- /// Show a Notice or Warning Message.\r
- /// </summary>\r
- /// <param name="notice">\r
- /// The text to display to the user\r
- /// </param>\r
- /// <param name="isWarning">\r
- /// Is a warning window, show the warning icon instead of the notice\r
- /// </param>\r
- public void ShowNotice(string notice, bool isWarning)\r
- {\r
- throw new NotImplementedException();\r
- }\r
-\r
- /// <summary>\r
- /// Write Exceptions out to log files\r
- /// </summary>\r
- /// <param name="state">\r
- /// The state.\r
- /// </param>\r
- public void LogError(object state)\r
- {\r
- try\r
- {\r
- if (exceptionCount > 30)\r
- {\r
- // If we are getting a large number of exceptions, just die out. We don't want to fill the users drive with a ton \r
- // of exception files.\r
- return;\r
- }\r
-\r
- string logDir = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\HandBrake\\logs";\r
- string file = Path.Combine(logDir, string.Format("Exception_{0}.txt", DateTime.Now.Ticks));\r
-\r
- if (!File.Exists(file))\r
- {\r
- using (StreamWriter streamWriter = new StreamWriter(file))\r
- {\r
- streamWriter.WriteLine(state.ToString());\r
- }\r
- }\r
- }\r
- catch\r
- {\r
- return; // Game over. Stop digging.\r
- }\r
- }\r
- }\r
-}\r
+++ /dev/null
-/* IErrorService.cs $\r
- This file is part of the HandBrake source code.\r
- Homepage: <http://handbrake.fr>.\r
- It may be used under the terms of the GNU General Public License. */\r
-\r
-namespace HandBrake.Framework.Services.Interfaces\r
-{\r
- /// <summary>\r
- /// The Error service for showing the exception window.\r
- /// </summary>\r
- public interface IErrorService\r
- {\r
- /// <summary>\r
- /// Show an Error Window\r
- /// </summary>\r
- /// <param name="shortError">\r
- /// The short error message for the user to read\r
- /// </param>\r
- /// <param name="longError">\r
- /// Exception string or advanced details\r
- /// </param>\r
- void ShowError(string shortError, string longError);\r
-\r
- /// <summary>\r
- /// Show a Notice or Warning Message.\r
- /// </summary>\r
- /// <param name="notice">\r
- /// The text to display to the user\r
- /// </param>\r
- /// <param name="isWarning">\r
- /// Is a warning window, show the warning icon instead of the notice\r
- /// </param>\r
- void ShowNotice(string notice, bool isWarning);\r
-\r
- /// <summary>\r
- /// Log the error\r
- /// </summary>\r
- /// <param name="state">The error message</param>\r
- void LogError(object state);\r
- }\r
-}
\ No newline at end of file
+++ /dev/null
-<StyleCopSettings Version="4.3" />
\ No newline at end of file
EndProject\r
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HandBrake.ApplicationServices", "HandBrake.ApplicationServices\HandBrake.ApplicationServices.csproj", "{087A2BA8-BAC2-4577-A46F-07FF9D420016}"\r
EndProject\r
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HandBrake.Framework", "HandBrake.Framework\HandBrake.Framework.csproj", "{49AD42C1-BF9B-4D78-A644-020878FAADE6}"\r
-EndProject\r
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HandBrakeWPF", "HandBrakeWPF\HandBrakeWPF.csproj", "{DADE66CB-0E12-4959-ADE5-0ACD31D27C59}"\r
EndProject\r
Global\r
{087A2BA8-BAC2-4577-A46F-07FF9D420016}.Release|Mixed Platforms.Build.0 = Release|Any CPU\r
{087A2BA8-BAC2-4577-A46F-07FF9D420016}.Release|x64.ActiveCfg = Release|Any CPU\r
{087A2BA8-BAC2-4577-A46F-07FF9D420016}.Release|x86.ActiveCfg = Release|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.Debug|Any CPU.Build.0 = Debug|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.Debug|x64.ActiveCfg = Debug|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.Debug|x86.ActiveCfg = Debug|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.Install|Any CPU.ActiveCfg = Release|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.Install|Any CPU.Build.0 = Release|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.Install|Mixed Platforms.ActiveCfg = NightlyBuild|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.Install|Mixed Platforms.Build.0 = NightlyBuild|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.Install|x64.ActiveCfg = NightlyBuild|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.Install|x86.ActiveCfg = Release|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.NightlyBuild|Any CPU.ActiveCfg = Release|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.NightlyBuild|Any CPU.Build.0 = Release|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.NightlyBuild|Mixed Platforms.ActiveCfg = NightlyBuild|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.NightlyBuild|Mixed Platforms.Build.0 = NightlyBuild|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.NightlyBuild|x64.ActiveCfg = NightlyBuild|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.NightlyBuild|x86.ActiveCfg = Release|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.Release|Any CPU.ActiveCfg = Release|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.Release|Any CPU.Build.0 = Release|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.Release|Mixed Platforms.Build.0 = Release|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.Release|x64.ActiveCfg = Release|Any CPU\r
- {49AD42C1-BF9B-4D78-A644-020878FAADE6}.Release|x86.ActiveCfg = Release|Any CPU\r
{DADE66CB-0E12-4959-ADE5-0ACD31D27C59}.Debug|Any CPU.ActiveCfg = Debug|x86\r
{DADE66CB-0E12-4959-ADE5-0ACD31D27C59}.Debug|Mixed Platforms.ActiveCfg = Debug|x86\r
{DADE66CB-0E12-4959-ADE5-0ACD31D27C59}.Debug|Mixed Platforms.Build.0 = Debug|x86\r
<Compile Include="ToolWindows\DownloadUpdate.Designer.cs">\r
<DependentUpon>DownloadUpdate.cs</DependentUpon>\r
</Compile>\r
+ <Compile Include="ToolWindows\ExceptionWindow.cs">\r
+ <SubType>Form</SubType>\r
+ </Compile>\r
+ <Compile Include="ToolWindows\ExceptionWindow.designer.cs">\r
+ <DependentUpon>ExceptionWindow.cs</DependentUpon>\r
+ </Compile>\r
<Compile Include="ToolWindows\PreviewOverlay.cs">\r
<SubType>Form</SubType>\r
</Compile>\r
<DependentUpon>DownloadUpdate.cs</DependentUpon>\r
<SubType>Designer</SubType>\r
</EmbeddedResource>\r
+ <EmbeddedResource Include="ToolWindows\ExceptionWindow.resx">\r
+ <DependentUpon>ExceptionWindow.cs</DependentUpon>\r
+ </EmbeddedResource>\r
<EmbeddedResource Include="ToolWindows\PreviewOverlay.resx">\r
<DependentUpon>PreviewOverlay.cs</DependentUpon>\r
</EmbeddedResource>\r
<Project>{087A2BA8-BAC2-4577-A46F-07FF9D420016}</Project>\r
<Name>HandBrake.ApplicationServices</Name>\r
</ProjectReference>\r
- <ProjectReference Include="HandBrake.Framework\HandBrake.Framework.csproj">\r
- <Project>{49AD42C1-BF9B-4D78-A644-020878FAADE6}</Project>\r
- <Name>HandBrake.Framework</Name>\r
- </ProjectReference>\r
</ItemGroup>\r
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />\r
<!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
</PropertyGroup>\r
<PropertyGroup Condition=" '$(Configuration)' == 'NightlyBuild' ">\r
<PostBuildEvent>\r
- cd ../../\r
- copy Installer\MakeNightly.nsi bin\NightlyBuild /Y\r
- copy handbrakepineapple.ico bin\NightlyBuild /Y\r
- xcopy doc bin\NightlyBuild\doc /I /Y\r
- cd bin\NightlyBuild\r
- makensis MakeNightly.nsi\r
- </PostBuildEvent>\r
+ copy "$(ProjectDir)\Installer\MakeNightly.nsi" "$(ProjectDir)\bin\x86\NightlyBuild" /Y\r
+ copy "$(ProjectDir)\handbrakepineapple.ico" "$(ProjectDir)\bin\x86\NightlyBuild" /Y\r
+ xcopy "$(ProjectDir)\doc" "$(ProjectDir)\bin\x86\NightlyBuild\doc" /I /Y\r
+ makensis "$(ProjectDir)\bin\x86\NightlyBuild\MakeNightly.nsi"\r
+ </PostBuildEvent>\r
</PropertyGroup>\r
<PropertyGroup>\r
<PreBuildEvent>\r
subwcrev.exe "$(ProjectDir)." "$(ProjectDir)Properties\AssemblyInfo.cs.tmpl" "$(ProjectDir)Properties\AssemblyInfo.cs"\r
subwcrev.exe "$(ProjectDir)." "$(ProjectDir)Properties\AssemblyInfo.cs.tmpl" "$(ProjectDir)Properties\AssemblyInfo.cs"\r
-subwcrev.exe "$(ProjectDir)." "$(ProjectDir)Installer\MakeNightly.nsi.tmpl" "$(ProjectDir)Installer\MakeNightly.nsi"</PreBuildEvent>\r
+ subwcrev.exe "$(ProjectDir)." "$(ProjectDir)Installer\MakeNightly.nsi.tmpl" "$(ProjectDir)Installer\MakeNightly.nsi"</PreBuildEvent>\r
</PropertyGroup>\r
</Project>
\ No newline at end of file
\r
; HM NIS Edit Wizard helper defines\r
!define PRODUCT_NAME "HandBrake"\r
-!define PRODUCT_VERSION "0.9.5"\r
-!define PRODUCT_VERSION_NUMBER "0.9.5"\r
+!define PRODUCT_VERSION "0.9.6"\r
+!define PRODUCT_VERSION_NUMBER "0.9.6"\r
!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\Handbrake.exe"\r
!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}"\r
!define PRODUCT_UNINST_ROOT_KEY "HKLM"\r
\r
;Required .NET framework\r
-!define MIN_FRA_MAJOR "3"\r
-!define MIN_FRA_MINOR "5"\r
+!define MIN_FRA_MAJOR "4"\r
+!define MIN_FRA_MINOR "0"\r
!define MIN_FRA_BUILD "*"\r
\r
SetCompressor lzma\r
Call CheckFramework\r
StrCmp $0 "1" +3\r
StrCpy $InstallDotNET "Yes"\r
- MessageBox MB_OK|MB_ICONINFORMATION "${PRODUCT_NAME} requires that the .NET Framework 3.5 SP1 is installed. The latest .NET Framework will be downloaded and installed automatically during installation of ${PRODUCT_NAME}."\r
+ MessageBox MB_OK|MB_ICONINFORMATION "${PRODUCT_NAME} requires that the .NET Framework 4.0 is installed. The latest .NET Framework will be downloaded and installed automatically during installation of ${PRODUCT_NAME}."\r
Pop $0\r
\r
; Get .NET if required\r
${If} $InstallDotNET == "Yes"\r
SetDetailsView hide\r
- inetc::get /caption "Downloading .NET Framework 3.5" /canceltext "Cancel" "http://www.microsoft.com/downloads/info.aspx?na=90&p=&SrcDisplayLang=en&SrcCategoryId=&SrcFamilyId=ab99342f-5d1a-413d-8319-81da479ab0d7&u=http%3a%2f%2fdownload.microsoft.com%2fdownload%2f0%2f6%2f1%2f061f001c-8752-4600-a198-53214c69b51f%2fdotnetfx35setup.exe" "$INSTDIR\dotnetfx.exe" /end\r
+ inetc::get /caption "Downloading .NET Framework 4.0" /canceltext "Cancel" "http://www.microsoft.com/downloads/info.aspx?na=41&SrcFamilyId=9CFB2D51-5FF4-4491-B0E5-B386F32C0992&SrcDisplayLang=en&u=http%3a%2f%2fdownload.microsoft.com%2fdownload%2f1%2fB%2fE%2f1BE39E79-7E39-46A3-96FF-047F95396215%2fdotNetFx40_Full_setup.exe" "$INSTDIR\dotnetfx.exe" /end\r
Pop $1\r
\r
${If} $1 != "OK"\r
Delete "$INSTDIR\dotnetfx.exe"\r
- Abort "Installation cancelled, ${PRODUCT_NAME} requires the .NET 3.5 Framework"\r
+ Abort "Installation cancelled, ${PRODUCT_NAME} requires the .NET 4.0 Framework"\r
${EndIf}\r
\r
ExecWait "$INSTDIR\dotnetfx.exe"\r
File "Growl.CoreLibrary.dll"\r
File "Handbrake.exe.config"\r
File "HandBrake.ApplicationServices.dll"\r
- File "HandBrake.Framework.dll"\r
File "Microsoft.WindowsAPICodePack.Shell.dll"\r
File "Microsoft.WindowsAPICodePack.dll"\r
File "HandBrakeInterop.dll"\r
!define PRODUCT_UNINST_ROOT_KEY "HKLM"\r
\r
;Required .NET framework\r
-!define MIN_FRA_MAJOR "3"\r
-!define MIN_FRA_MINOR "5"\r
+!define MIN_FRA_MAJOR "4"\r
+!define MIN_FRA_MINOR "0"\r
!define MIN_FRA_BUILD "*"\r
\r
SetCompressor lzma\r
Call CheckFramework\r
StrCmp $0 "1" +3\r
StrCpy $InstallDotNET "Yes"\r
- MessageBox MB_OK|MB_ICONINFORMATION "${PRODUCT_NAME} requires that the .NET Framework 3.5 SP1 is installed. The latest .NET Framework will be downloaded and installed automatically during installation of ${PRODUCT_NAME}."\r
+ MessageBox MB_OK|MB_ICONINFORMATION "${PRODUCT_NAME} requires that the .NET Framework 4.0 is installed. The latest .NET Framework will be downloaded and installed automatically during installation of ${PRODUCT_NAME}."\r
Pop $0\r
\r
; Get .NET if required\r
${If} $InstallDotNET == "Yes"\r
SetDetailsView hide\r
- inetc::get /caption "Downloading .NET Framework 3.5" /canceltext "Cancel" "http://www.microsoft.com/downloads/info.aspx?na=90&p=&SrcDisplayLang=en&SrcCategoryId=&SrcFamilyId=ab99342f-5d1a-413d-8319-81da479ab0d7&u=http%3a%2f%2fdownload.microsoft.com%2fdownload%2f0%2f6%2f1%2f061f001c-8752-4600-a198-53214c69b51f%2fdotnetfx35setup.exe" "$INSTDIR\dotnetfx.exe" /end\r
+ inetc::get /caption "Downloading .NET Framework 4.0" /canceltext "Cancel" "http://www.microsoft.com/downloads/info.aspx?na=41&SrcFamilyId=9CFB2D51-5FF4-4491-B0E5-B386F32C0992&SrcDisplayLang=en&u=http%3a%2f%2fdownload.microsoft.com%2fdownload%2f1%2fB%2fE%2f1BE39E79-7E39-46A3-96FF-047F95396215%2fdotNetFx40_Full_setup.exe" "$INSTDIR\dotnetfx.exe" /end\r
Pop $1\r
\r
${If} $1 != "OK"\r
Delete "$INSTDIR\dotnetfx.exe"\r
- Abort "Installation cancelled, ${PRODUCT_NAME} requires the .NET 3.5 Framework"\r
+ Abort "Installation cancelled, ${PRODUCT_NAME} requires the .NET 4.0 Framework"\r
${EndIf}\r
\r
ExecWait "$INSTDIR\dotnetfx.exe"\r
File "Growl.CoreLibrary.dll"\r
File "Handbrake.exe.config"\r
File "HandBrake.ApplicationServices.dll"\r
- File "HandBrake.Framework.dll"\r
File "Microsoft.WindowsAPICodePack.Shell.dll"\r
File "Microsoft.WindowsAPICodePack.dll"\r
File "HandBrakeInterop.dll"\r
\r
- ;File "Caliburn.Castle.dll"\r
- ;File "Caliburn.Core.dll"\r
- ;File "Castle.Core.dll"\r
- ;File "Castle.DynamicProxy2.dll"\r
- ;File "Castle.MicroKernel.dll"\r
- ;File "Castle.Windsor.dll"\r
- ;File "Microsoft.Practices.ServiceLocation.dll"\r
-\r
; Copy the standard doc set into the doc folder\r
SetOutPath "$INSTDIR\doc"\r
SetOverwrite ifnewer\r
Delete "$INSTDIR\Growl.CoreLibrary.dll"\r
Delete "$INSTDIR\libgcc_s_sjlj-1.dll"\r
Delete "$INSTDIR\HandBrake.ApplicationServices.dll"\r
- Delete "$INSTDIR\HandBrake.Framework.dll"\r
Delete "$INSTDIR\Microsoft.WindowsAPICodePack.Shell.dll"\r
Delete "$INSTDIR\Microsoft.WindowsAPICodePack.dll"\r
Delete "$INSTDIR\HandBrakeInterop.dll"\r
\r
- Delete "$INSTDIR\Caliburn.Castle.dll"\r
- Delete "$INSTDIR\Caliburn.Core.dll"\r
- Delete "$INSTDIR\Castle.Core.dll"\r
- Delete "$INSTDIR\Castle.DynamicProxy2.dll"\r
- Delete "$INSTDIR\Castle.MicroKernel.dll"\r
- Delete "$INSTDIR\Castle.Windsor.dll"\r
- Delete "$INSTDIR\Microsoft.Practices.ServiceLocation.dll"\r
-\r
Delete "$INSTDIR\doc\AUTHORS"\r
Delete "$INSTDIR\doc\COPYING"\r
Delete "$INSTDIR\doc\CREDITS"\r
\r
using HandBrake.ApplicationServices;\r
using HandBrake.ApplicationServices.Services;\r
- using HandBrake.Framework.Views;\r
\r
using Handbrake.Properties;\r
+ using Handbrake.ToolWindows;\r
\r
/// <summary>\r
/// HandBrake Starts Here\r
Homepage: <http://handbrake.fr>.\r
It may be used under the terms of the GNU General Public License. */\r
\r
-namespace HandBrake.Framework.Views\r
+namespace Handbrake.ToolWindows\r
{\r
using System;\r
using System.Windows.Forms;\r
-namespace HandBrake.Framework.Views\r
+namespace Handbrake.ToolWindows\r
{\r
partial class ExceptionWindow\r
{\r
// \r
// PictureBox1\r
// \r
- this.PictureBox1.Image = global::HandBrake.Framework.Properties.Resources.ErrorX;\r
+ this.PictureBox1.Image = Properties.Resources.ErrorX;\r
resources.ApplyResources(this.PictureBox1, "PictureBox1");\r
this.PictureBox1.Name = "PictureBox1";\r
this.PictureBox1.TabStop = false;\r
this.btn_copy.FlatAppearance.BorderColor = System.Drawing.Color.Black;\r
resources.ApplyResources(this.btn_copy, "btn_copy");\r
this.btn_copy.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));\r
- this.btn_copy.Image = global::HandBrake.Framework.Properties.Resources.copy;\r
+ this.btn_copy.Image = Properties.Resources.copy;\r
this.btn_copy.Name = "btn_copy";\r
this.btn_copy.UseVisualStyleBackColor = false;\r
this.btn_copy.Click += new System.EventHandler(this.BtnCopyClick);\r
// \r
// mnu_copy_log\r
// \r
- this.mnu_copy_log.Image = global::HandBrake.Framework.Properties.Resources.copy;\r
+ this.mnu_copy_log.Image = Properties.Resources.copy;\r
this.mnu_copy_log.Name = "mnu_copy_log";\r
resources.ApplyResources(this.mnu_copy_log, "mnu_copy_log");\r
this.mnu_copy_log.Click += new System.EventHandler(this.MnuCopyLogClick);\r
using System.Windows.Forms;\r
\r
using HandBrake.ApplicationServices.Model.General;\r
- using HandBrake.Framework.Views;\r
\r
/// <summary>\r
/// A window to display update information.\r
using System.Threading;\r
using System.Windows.Forms;\r
\r
- using HandBrake.Framework.Services;\r
- using HandBrake.Framework.Services.Interfaces;\r
using HandBrake.ApplicationServices.Services.Interfaces;\r
\r
+ using Handbrake.Functions;\r
+\r
using Model;\r
using Timer = System.Threading.Timer;\r
\r
/// </summary>\r
private readonly IScan scan;\r
\r
- /// <summary>\r
- /// The Error service\r
- /// </summary>\r
- private readonly IErrorService errorService = new ErrorService();\r
-\r
/// <summary>\r
/// The current position in the log file\r
/// </summary>\r
}\r
catch (Exception exc)\r
{\r
- errorService.ShowError("Error during load.", exc.ToString());\r
+ Main.ShowExceptiowWindow("Error during load.", exc.ToString());\r
}\r
}\r
\r
catch (Exception exc)\r
{\r
windowTimer.Dispose();\r
- errorService.ShowError("GetLog() Error", exc.ToString());\r
+ Main.ShowExceptiowWindow("GetLog() Error.", exc.ToString());\r
}\r
\r
return appendText;\r