Allow decoders of different formats to share the same name.

Rename "builtin alac", libFlake and "builtin wav" decoders to "cuetools".
Select builtin decoders by default.
This commit is contained in:
Grigory Chudov
2013-03-31 13:29:09 -04:00
parent 4a2f8dc0a6
commit 96157898ef
14 changed files with 415 additions and 204 deletions

View File

@@ -27,7 +27,7 @@ using CUETools.Codecs;
namespace CUETools.Codecs.ALAC namespace CUETools.Codecs.ALAC
{ {
[AudioDecoderClass("builtin alac", "m4a")] [AudioDecoderClass("cuetools", "m4a", 2)]
public class ALACReader : IAudioSource public class ALACReader : IAudioSource
{ {
public ALACReader(string path, Stream IO) public ALACReader(string path, Stream IO)

View File

@@ -101,7 +101,7 @@ namespace CUETools { namespace Codecs { namespace APE {
GCHandle _gchBuffer; GCHandle _gchBuffer;
}; };
[AudioDecoderClass("MAC_SDK", "ape")] [AudioDecoderClass("MAC_SDK", "ape", 1)]
public ref class APEReader : public IAudioSource public ref class APEReader : public IAudioSource
{ {
public: public:

View File

@@ -72,7 +72,7 @@ namespace CUETools { namespace Codecs { namespace FLAC {
[UnmanagedFunctionPointer(CallingConvention::Cdecl)] [UnmanagedFunctionPointer(CallingConvention::Cdecl)]
public delegate FLAC__bool DecoderEofDelegate (const FLAC__StreamDecoder *decoder, void *client_data); public delegate FLAC__bool DecoderEofDelegate (const FLAC__StreamDecoder *decoder, void *client_data);
[AudioDecoderClass("libFLAC", "flac")] [AudioDecoderClass("libFLAC", "flac", 1)]
public ref class FLACReader : public IAudioSource public ref class FLACReader : public IAudioSource
{ {
public: public:

View File

@@ -26,7 +26,7 @@ using System.IO;
namespace CUETools.Codecs.FLAKE namespace CUETools.Codecs.FLAKE
{ {
[AudioDecoderClass("libFlake", "flac")] [AudioDecoderClass("cuetools", "flac", 2)]
public class FlakeReader: IAudioSource public class FlakeReader: IAudioSource
{ {
int[] samplesBuffer; int[] samplesBuffer;

View File

@@ -27,7 +27,7 @@ namespace TTA {
"operation canceled" "operation canceled"
}; };
[AudioDecoderClass("ttalib", "tta")] [AudioDecoderClass("ttalib", "tta", 1)]
public ref class TTAReader : public IAudioSource public ref class TTAReader : public IAudioSource
{ {
public: public:

View File

@@ -27,7 +27,7 @@ using System.Runtime.InteropServices;
namespace CUETools.Codecs.WMA namespace CUETools.Codecs.WMA
{ {
[AudioDecoderClass("windows", "wma")] [AudioDecoderClass("windows", "wma", 2)]
public class WMAReader : IAudioSource public class WMAReader : IAudioSource
{ {
IWMSyncReader m_syncReader; IWMSyncReader m_syncReader;

View File

@@ -59,7 +59,7 @@ namespace CUETools { namespace Codecs { namespace WavPack {
[UnmanagedFunctionPointer(CallingConvention::Cdecl)] [UnmanagedFunctionPointer(CallingConvention::Cdecl)]
public delegate int DecoderCanSeekDelegate(void *id); public delegate int DecoderCanSeekDelegate(void *id);
[AudioDecoderClass("libwavpack", "wv")] [AudioDecoderClass("libwavpack", "wv", 1)]
public ref class WavPackReader : public IAudioSource public ref class WavPackReader : public IAudioSource
{ {
public: public:

View File

@@ -21,22 +21,29 @@ namespace CUETools.Codecs
[AttributeUsage(AttributeTargets.Class, AllowMultiple = false)] [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)]
public sealed class AudioDecoderClass : Attribute public sealed class AudioDecoderClass : Attribute
{ {
private string _decoderName, _extension;
public string DecoderName public string DecoderName
{ {
get { return _decoderName; } get;
set;
} }
public string Extension public string Extension
{ {
get { return _extension; } get;
set;
} }
public AudioDecoderClass(string decoderName, string extension) public int Priority
{ {
_decoderName = decoderName; get;
_extension = extension; set;
}
public AudioDecoderClass(string decoderName, string extension, int priority)
{
DecoderName = decoderName;
Extension = extension;
Priority = priority;
} }
} }
} }

View File

@@ -3,7 +3,7 @@ using System.IO;
namespace CUETools.Codecs namespace CUETools.Codecs
{ {
[AudioDecoderClass("builtin wav", "wav")] [AudioDecoderClass("cuetools", "wav", 2)]
public class WAVReader : IAudioSource public class WAVReader : IAudioSource
{ {
Stream _IO; Stream _IO;

View File

@@ -57,7 +57,7 @@ namespace CUETools.Processor
public string language; public string language;
public Dictionary<string, CUEToolsFormat> formats; public Dictionary<string, CUEToolsFormat> formats;
public CUEToolsUDCList encoders; public CUEToolsUDCList encoders;
public Dictionary<string, CUEToolsUDC> decoders; public CUEToolsUDCList decoders;
public Dictionary<string, CUEToolsScript> scripts; public Dictionary<string, CUEToolsScript> scripts;
public string defaultVerifyScript; public string defaultVerifyScript;
public string defaultEncodeScript; public string defaultEncodeScript;
@@ -81,6 +81,10 @@ namespace CUETools.Processor
{ {
get { return encoders; } get { return encoders; }
} }
public CUEToolsUDCList Decoders
{
get { return decoders; }
}
public CUEConfig() public CUEConfig()
{ {
@@ -151,12 +155,10 @@ namespace CUETools.Processor
foreach (Type type in CUEProcessorPlugins.encs) foreach (Type type in CUEProcessorPlugins.encs)
foreach (AudioEncoderClass enc in Attribute.GetCustomAttributes(type, typeof(AudioEncoderClass))) foreach (AudioEncoderClass enc in Attribute.GetCustomAttributes(type, typeof(AudioEncoderClass)))
encoders.Add(new CUEToolsUDC(enc, type)); encoders.Add(new CUEToolsUDC(enc, type));
decoders = new Dictionary<string, CUEToolsUDC>(); decoders = new CUEToolsUDCList();
foreach (Type type in CUEProcessorPlugins.decs) foreach (Type type in CUEProcessorPlugins.decs)
{ foreach (AudioDecoderClass dec in Attribute.GetCustomAttributes(type, typeof(AudioDecoderClass)))
AudioDecoderClass dec = Attribute.GetCustomAttribute(type, typeof(AudioDecoderClass)) as AudioDecoderClass; decoders.Add(new CUEToolsUDC(dec, type));
decoders.Add(dec.DecoderName, new CUEToolsUDC(dec, type));
}
if (Type.GetType("Mono.Runtime", false) == null) if (Type.GetType("Mono.Runtime", false) == null)
{ {
encoders.Add(new CUEToolsUDC("flake", "flac", true, "0 1 2 3 4 5 6 7 8 9 10 11 12", "8", "flake.exe", "-%M - -o %O -p %P")); encoders.Add(new CUEToolsUDC("flake", "flac", true, "0 1 2 3 4 5 6 7 8 9 10 11 12", "8", "flake.exe", "-%M - -o %O -p %P"));
@@ -169,9 +171,9 @@ namespace CUETools.Processor
encoders.Add(new CUEToolsUDC("nero aac", "m4a", false, "0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9", "0.4", "neroAacEnc.exe", "-q %M -if - -of %O")); encoders.Add(new CUEToolsUDC("nero aac", "m4a", false, "0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9", "0.4", "neroAacEnc.exe", "-q %M -if - -of %O"));
encoders.Add(new CUEToolsUDC("qaac tvbr", "m4a", false, "10 20 30 40 50 60 70 80 90 100 110 127", "80", "qaac.exe", "-s -V %M -q 2 - -o %O")); encoders.Add(new CUEToolsUDC("qaac tvbr", "m4a", false, "10 20 30 40 50 60 70 80 90 100 110 127", "80", "qaac.exe", "-s -V %M -q 2 - -o %O"));
decoders.Add("takc", new CUEToolsUDC("takc", "tak", true, "", "", "takc.exe", "-d %I -")); decoders.Add(new CUEToolsUDC("takc", "tak", true, "", "", "takc.exe", "-d %I -"));
decoders.Add("ffmpeg alac", new CUEToolsUDC("ffmpeg alac", "m4a", true, "", "", "ffmpeg.exe", "-v 0 -i %I -f wav -")); decoders.Add(new CUEToolsUDC("ffmpeg alac", "m4a", true, "", "", "ffmpeg.exe", "-v 0 -i %I -f wav -"));
decoders.Add("wma2wav", new CUEToolsUDC("wma2wav", "wma", true, "", "", "wma2wav.exe", "-s -i %I -w -o -")); decoders.Add(new CUEToolsUDC("wma2wav", "wma", true, "", "", "wma2wav.exe", "-s -i %I -w -o -"));
} }
else else
{ {
@@ -179,14 +181,14 @@ namespace CUETools.Processor
} }
formats = new Dictionary<string, CUEToolsFormat>(); formats = new Dictionary<string, CUEToolsFormat>();
formats.Add("flac", new CUEToolsFormat("flac", CUEToolsTagger.TagLibSharp, true, false, true, true, true, encoders.GetDefault("flac", true), null, GetDefaultDecoder("flac"))); formats.Add("flac", new CUEToolsFormat("flac", CUEToolsTagger.TagLibSharp, true, false, true, true, true, encoders.GetDefault("flac", true), null, decoders.GetDefault("flac", true)));
formats.Add("wv", new CUEToolsFormat("wv", CUEToolsTagger.TagLibSharp, true, false, true, true, true, encoders.GetDefault("wv", true), null, GetDefaultDecoder("wv"))); formats.Add("wv", new CUEToolsFormat("wv", CUEToolsTagger.TagLibSharp, true, false, true, true, true, encoders.GetDefault("wv", true), null, decoders.GetDefault("wv", true)));
formats.Add("ape", new CUEToolsFormat("ape", CUEToolsTagger.TagLibSharp, true, false, false, true, true, encoders.GetDefault("ape", true), null, GetDefaultDecoder("ape"))); formats.Add("ape", new CUEToolsFormat("ape", CUEToolsTagger.TagLibSharp, true, false, false, true, true, encoders.GetDefault("ape", true), null, decoders.GetDefault("ape", true)));
formats.Add("tta", new CUEToolsFormat("tta", CUEToolsTagger.APEv2, true, false, false, false, true, encoders.GetDefault("tta", true), null, GetDefaultDecoder("tta"))); formats.Add("tta", new CUEToolsFormat("tta", CUEToolsTagger.APEv2, true, false, false, false, true, encoders.GetDefault("tta", true), null, decoders.GetDefault("tta", true)));
formats.Add("wav", new CUEToolsFormat("wav", CUEToolsTagger.TagLibSharp, true, false, true, false, true, encoders.GetDefault("wav", true), null, GetDefaultDecoder("wav"))); formats.Add("wav", new CUEToolsFormat("wav", CUEToolsTagger.TagLibSharp, true, false, true, false, true, encoders.GetDefault("wav", true), null, decoders.GetDefault("wav", true)));
formats.Add("m4a", new CUEToolsFormat("m4a", CUEToolsTagger.TagLibSharp, true, true, false, false, true, encoders.GetDefault("m4a", true), encoders.GetDefault("m4a", false), GetDefaultDecoder("m4a"))); formats.Add("m4a", new CUEToolsFormat("m4a", CUEToolsTagger.TagLibSharp, true, true, false, false, true, encoders.GetDefault("m4a", true), encoders.GetDefault("m4a", false), decoders.GetDefault("m4a", true)));
formats.Add("tak", new CUEToolsFormat("tak", CUEToolsTagger.APEv2, true, false, true, true, true, encoders.GetDefault("tak", true), null, GetDefaultDecoder("tak"))); formats.Add("tak", new CUEToolsFormat("tak", CUEToolsTagger.APEv2, true, false, true, true, true, encoders.GetDefault("tak", true), null, decoders.GetDefault("tak", true)));
formats.Add("wma", new CUEToolsFormat("wma", CUEToolsTagger.TagLibSharp, true, true, false, false, true, encoders.GetDefault("wma", true), null, GetDefaultDecoder("wma"))); formats.Add("wma", new CUEToolsFormat("wma", CUEToolsTagger.TagLibSharp, true, true, false, false, true, encoders.GetDefault("wma", true), null, decoders.GetDefault("wma", true)));
formats.Add("mp3", new CUEToolsFormat("mp3", CUEToolsTagger.TagLibSharp, false, true, false, false, true, null, encoders.GetDefault("mp3", false), null)); formats.Add("mp3", new CUEToolsFormat("mp3", CUEToolsTagger.TagLibSharp, false, true, false, false, true, null, encoders.GetDefault("mp3", false), null));
formats.Add("ogg", new CUEToolsFormat("ogg", CUEToolsTagger.TagLibSharp, false, true, false, false, true, null, encoders.GetDefault("ogg", false), null)); formats.Add("ogg", new CUEToolsFormat("ogg", CUEToolsTagger.TagLibSharp, false, true, false, false, true, null, encoders.GetDefault("ogg", false), null));
@@ -349,13 +351,13 @@ return processor.Go();
sw.Save("ExternalEncoders", nEncoders); sw.Save("ExternalEncoders", nEncoders);
int nDecoders = 0; int nDecoders = 0;
foreach (KeyValuePair<string, CUEToolsUDC> decoder in decoders) foreach (var decoder in decoders)
if (decoder.Value.path != null) if (decoder.path != null)
{ {
sw.Save(string.Format("ExternalDecoder{0}Name", nDecoders), decoder.Key); sw.Save(string.Format("ExternalDecoder{0}Name", nDecoders), decoder.Name);
sw.Save(string.Format("ExternalDecoder{0}Extension", nDecoders), decoder.Value.extension); sw.Save(string.Format("ExternalDecoder{0}Extension", nDecoders), decoder.extension);
sw.Save(string.Format("ExternalDecoder{0}Path", nDecoders), decoder.Value.path); sw.Save(string.Format("ExternalDecoder{0}Path", nDecoders), decoder.path);
sw.Save(string.Format("ExternalDecoder{0}Parameters", nDecoders), decoder.Value.parameters); sw.Save(string.Format("ExternalDecoder{0}Parameters", nDecoders), decoder.parameters);
nDecoders++; nDecoders++;
} }
sw.Save("ExternalDecoders", nDecoders); sw.Save("ExternalDecoders", nDecoders);
@@ -517,8 +519,8 @@ return processor.Go();
string path = sr.Load(string.Format("ExternalDecoder{0}Path", nDecoders)); string path = sr.Load(string.Format("ExternalDecoder{0}Path", nDecoders));
string parameters = sr.Load(string.Format("ExternalDecoder{0}Parameters", nDecoders)); string parameters = sr.Load(string.Format("ExternalDecoder{0}Parameters", nDecoders));
CUEToolsUDC decoder; CUEToolsUDC decoder;
if (!decoders.TryGetValue(name, out decoder)) if (!decoders.TryGetValue(extension, true, name, out decoder))
decoders.Add(name, new CUEToolsUDC(name, extension, true, "", "", path, parameters)); decoders.Add(new CUEToolsUDC(name, extension, true, "", "", path, parameters));
else else
{ {
decoder.extension = extension; decoder.extension = extension;
@@ -545,8 +547,8 @@ return processor.Go();
udcLossless = encoders.GetDefault(extension, true); udcLossless = encoders.GetDefault(extension, true);
if (encoderLossy == "" || !encoders.TryGetValue(extension, false, encoderLossy, out udcLossy)) if (encoderLossy == "" || !encoders.TryGetValue(extension, false, encoderLossy, out udcLossy))
udcLossy = encoders.GetDefault(extension, false); udcLossy = encoders.GetDefault(extension, false);
if (decoder == "" || !decoders.TryGetValue(decoder, out udcDecoder)) if (decoder == "" || !decoders.TryGetValue(extension, true, decoder, out udcDecoder))
udcDecoder = GetDefaultDecoder(extension); udcDecoder = decoders.GetDefault(extension, true);
if (!formats.TryGetValue(extension, out format)) if (!formats.TryGetValue(extension, out format))
formats.Add(extension, new CUEToolsFormat(extension, tagger, allowLossless, allowLossy, allowLossyWav, allowEmbed, false, udcLossless, udcLossy, udcDecoder)); formats.Add(extension, new CUEToolsFormat(extension, tagger, allowLossless, allowLossy, allowLossyWav, allowEmbed, false, udcLossless, udcLossy, udcDecoder));
else else
@@ -605,16 +607,6 @@ return processor.Go();
trackFilenameFormat = "%tracknumber%. %title%"; trackFilenameFormat = "%tracknumber%. %title%";
} }
public CUEToolsUDC GetDefaultDecoder(string extension)
{
//|| !config.decoders.TryGetValue(fmt.decoder, out decoder)
CUEToolsUDC result = null;
foreach (KeyValuePair<string, CUEToolsUDC> decoder in decoders)
if (decoder.Value.Extension == extension && (result == null || result.priority < decoder.Value.priority))
result = decoder.Value;
return result;
}
public IWebProxy GetProxy() public IWebProxy GetProxy()
{ {
IWebProxy proxy = null; IWebProxy proxy = null;

View File

@@ -69,7 +69,7 @@ namespace CUETools.Processor
lossless = true; lossless = true;
supported_modes = ""; supported_modes = "";
default_mode = ""; default_mode = "";
priority = 1; priority = dec.Priority;
path = null; path = null;
parameters = null; parameters = null;
type = dectype; type = dectype;

View File

@@ -133,7 +133,6 @@ namespace JDP
this.columnHeader1 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.columnHeader1 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.tabPage10 = new System.Windows.Forms.TabPage(); this.tabPage10 = new System.Windows.Forms.TabPage();
this.tableLayoutPanel4 = new System.Windows.Forms.TableLayoutPanel(); this.tableLayoutPanel4 = new System.Windows.Forms.TableLayoutPanel();
this.listBoxEncoders = new System.Windows.Forms.ListBox();
this.panel1 = new System.Windows.Forms.Panel(); this.panel1 = new System.Windows.Forms.Panel();
this.groupBoxExternalEncoder = new System.Windows.Forms.GroupBox(); this.groupBoxExternalEncoder = new System.Windows.Forms.GroupBox();
this.labelEncoderName = new System.Windows.Forms.Label(); this.labelEncoderName = new System.Windows.Forms.Label();
@@ -146,15 +145,20 @@ namespace JDP
this.labelEncoderExtension = new System.Windows.Forms.Label(); this.labelEncoderExtension = new System.Windows.Forms.Label();
this.buttonEncoderAdd = new System.Windows.Forms.Button(); this.buttonEncoderAdd = new System.Windows.Forms.Button();
this.comboBoxEncoderExtension = new System.Windows.Forms.ComboBox(); this.comboBoxEncoderExtension = new System.Windows.Forms.ComboBox();
this.listBoxEncoders = new System.Windows.Forms.ListBox();
this.tabPage11 = new System.Windows.Forms.TabPage(); this.tabPage11 = new System.Windows.Forms.TabPage();
this.comboBoxDecoderExtension = new System.Windows.Forms.ComboBox(); this.tableLayoutPanel5 = new System.Windows.Forms.TableLayoutPanel();
this.listViewDecoders = new System.Windows.Forms.ListView();
this.columnHeader4 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.groupBoxExternalDecoder = new System.Windows.Forms.GroupBox(); this.groupBoxExternalDecoder = new System.Windows.Forms.GroupBox();
this.textBoxDecoderPath = new System.Windows.Forms.TextBox(); this.textBoxDecoderPath = new System.Windows.Forms.TextBox();
this.labelDecoderPath = new System.Windows.Forms.Label(); this.labelDecoderPath = new System.Windows.Forms.Label();
this.labelDecoderParameters = new System.Windows.Forms.Label(); this.labelDecoderParameters = new System.Windows.Forms.Label();
this.textBoxDecoderParameters = new System.Windows.Forms.TextBox(); this.textBoxDecoderParameters = new System.Windows.Forms.TextBox();
this.listViewDecoders = new System.Windows.Forms.ListView(); this.panel2 = new System.Windows.Forms.Panel();
this.columnHeader4 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.button2 = new System.Windows.Forms.Button();
this.button1 = new System.Windows.Forms.Button();
this.comboBoxDecoderExtension = new System.Windows.Forms.ComboBox();
this.labelDecoderExtension = new System.Windows.Forms.Label(); this.labelDecoderExtension = new System.Windows.Forms.Label();
this.tabPage4 = new System.Windows.Forms.TabPage(); this.tabPage4 = new System.Windows.Forms.TabPage();
this.groupBox2 = new System.Windows.Forms.GroupBox(); this.groupBox2 = new System.Windows.Forms.GroupBox();
@@ -209,7 +213,9 @@ namespace JDP
this.groupBoxExternalEncoder.SuspendLayout(); this.groupBoxExternalEncoder.SuspendLayout();
this.panel3.SuspendLayout(); this.panel3.SuspendLayout();
this.tabPage11.SuspendLayout(); this.tabPage11.SuspendLayout();
this.tableLayoutPanel5.SuspendLayout();
this.groupBoxExternalDecoder.SuspendLayout(); this.groupBoxExternalDecoder.SuspendLayout();
this.panel2.SuspendLayout();
this.tabPage4.SuspendLayout(); this.tabPage4.SuspendLayout();
this.groupBox2.SuspendLayout(); this.groupBox2.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.numericLossyWAVQuality)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.numericLossyWAVQuality)).BeginInit();
@@ -519,8 +525,8 @@ namespace JDP
// //
// textBoxEncoderModes // textBoxEncoderModes
// //
this.textBoxEncoderModes.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.encodersBindingSource, "SupportedModesStr", true));
resources.ApplyResources(this.textBoxEncoderModes, "textBoxEncoderModes"); resources.ApplyResources(this.textBoxEncoderModes, "textBoxEncoderModes");
this.textBoxEncoderModes.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.encodersBindingSource, "SupportedModesStr", true));
this.textBoxEncoderModes.Name = "textBoxEncoderModes"; this.textBoxEncoderModes.Name = "textBoxEncoderModes";
this.toolTip1.SetToolTip(this.textBoxEncoderModes, resources.GetString("textBoxEncoderModes.ToolTip")); this.toolTip1.SetToolTip(this.textBoxEncoderModes, resources.GetString("textBoxEncoderModes.ToolTip"));
// //
@@ -545,15 +551,15 @@ namespace JDP
// //
// textBoxEncoderPath // textBoxEncoderPath
// //
this.textBoxEncoderPath.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.encodersBindingSource, "Path", true));
resources.ApplyResources(this.textBoxEncoderPath, "textBoxEncoderPath"); resources.ApplyResources(this.textBoxEncoderPath, "textBoxEncoderPath");
this.textBoxEncoderPath.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.encodersBindingSource, "Path", true));
this.textBoxEncoderPath.Name = "textBoxEncoderPath"; this.textBoxEncoderPath.Name = "textBoxEncoderPath";
this.toolTip1.SetToolTip(this.textBoxEncoderPath, resources.GetString("textBoxEncoderPath.ToolTip")); this.toolTip1.SetToolTip(this.textBoxEncoderPath, resources.GetString("textBoxEncoderPath.ToolTip"));
// //
// textBoxEncoderParameters // textBoxEncoderParameters
// //
this.textBoxEncoderParameters.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.encodersBindingSource, "Parameters", true));
resources.ApplyResources(this.textBoxEncoderParameters, "textBoxEncoderParameters"); resources.ApplyResources(this.textBoxEncoderParameters, "textBoxEncoderParameters");
this.textBoxEncoderParameters.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.encodersBindingSource, "Parameters", true));
this.textBoxEncoderParameters.Name = "textBoxEncoderParameters"; this.textBoxEncoderParameters.Name = "textBoxEncoderParameters";
this.toolTip1.SetToolTip(this.textBoxEncoderParameters, resources.GetString("textBoxEncoderParameters.ToolTip")); this.toolTip1.SetToolTip(this.textBoxEncoderParameters, resources.GetString("textBoxEncoderParameters.ToolTip"));
// //
@@ -588,8 +594,8 @@ namespace JDP
// //
// textBoxEncoderName // textBoxEncoderName
// //
this.textBoxEncoderName.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.encodersBindingSource, "Name", true));
resources.ApplyResources(this.textBoxEncoderName, "textBoxEncoderName"); resources.ApplyResources(this.textBoxEncoderName, "textBoxEncoderName");
this.textBoxEncoderName.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.encodersBindingSource, "Name", true));
this.textBoxEncoderName.Name = "textBoxEncoderName"; this.textBoxEncoderName.Name = "textBoxEncoderName";
this.toolTip1.SetToolTip(this.textBoxEncoderName, resources.GetString("textBoxEncoderName.ToolTip")); this.toolTip1.SetToolTip(this.textBoxEncoderName, resources.GetString("textBoxEncoderName.ToolTip"));
// //
@@ -1077,17 +1083,6 @@ namespace JDP
this.tableLayoutPanel4.Controls.Add(this.listBoxEncoders, 0, 0); this.tableLayoutPanel4.Controls.Add(this.listBoxEncoders, 0, 0);
this.tableLayoutPanel4.Name = "tableLayoutPanel4"; this.tableLayoutPanel4.Name = "tableLayoutPanel4";
// //
// listBoxEncoders
//
this.listBoxEncoders.BackColor = System.Drawing.SystemColors.Control;
this.listBoxEncoders.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.listBoxEncoders.DataSource = this.encodersBindingSource;
this.listBoxEncoders.DisplayMember = "FullName";
resources.ApplyResources(this.listBoxEncoders, "listBoxEncoders");
this.listBoxEncoders.Name = "listBoxEncoders";
this.tableLayoutPanel4.SetRowSpan(this.listBoxEncoders, 2);
this.listBoxEncoders.KeyDown += new System.Windows.Forms.KeyEventHandler(this.listBoxEncoders_KeyDown);
//
// panel1 // panel1
// //
this.panel1.Controls.Add(this.groupBoxExternalEncoder); this.panel1.Controls.Add(this.groupBoxExternalEncoder);
@@ -1169,30 +1164,63 @@ namespace JDP
// //
// comboBoxEncoderExtension // comboBoxEncoderExtension
// //
resources.ApplyResources(this.comboBoxEncoderExtension, "comboBoxEncoderExtension");
this.comboBoxEncoderExtension.DataBindings.Add(new System.Windows.Forms.Binding("SelectedItem", this.encodersBindingSource, "Extension", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged)); this.comboBoxEncoderExtension.DataBindings.Add(new System.Windows.Forms.Binding("SelectedItem", this.encodersBindingSource, "Extension", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.comboBoxEncoderExtension.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.comboBoxEncoderExtension.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.comboBoxEncoderExtension.FormattingEnabled = true; this.comboBoxEncoderExtension.FormattingEnabled = true;
resources.ApplyResources(this.comboBoxEncoderExtension, "comboBoxEncoderExtension");
this.comboBoxEncoderExtension.Name = "comboBoxEncoderExtension"; this.comboBoxEncoderExtension.Name = "comboBoxEncoderExtension";
this.comboBoxEncoderExtension.SelectedIndexChanged += new System.EventHandler(this.comboBoxEncoderExtension_SelectedIndexChanged); this.comboBoxEncoderExtension.SelectedIndexChanged += new System.EventHandler(this.comboBoxEncoderExtension_SelectedIndexChanged);
// //
// listBoxEncoders
//
this.listBoxEncoders.BackColor = System.Drawing.SystemColors.Control;
this.listBoxEncoders.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.listBoxEncoders.DataSource = this.encodersBindingSource;
this.listBoxEncoders.DisplayMember = "FullName";
resources.ApplyResources(this.listBoxEncoders, "listBoxEncoders");
this.listBoxEncoders.Name = "listBoxEncoders";
this.tableLayoutPanel4.SetRowSpan(this.listBoxEncoders, 2);
this.listBoxEncoders.KeyDown += new System.Windows.Forms.KeyEventHandler(this.listBoxEncoders_KeyDown);
//
// tabPage11 // tabPage11
// //
this.tabPage11.BackColor = System.Drawing.SystemColors.Control; this.tabPage11.BackColor = System.Drawing.SystemColors.Control;
this.tabPage11.Controls.Add(this.comboBoxDecoderExtension); this.tabPage11.Controls.Add(this.tableLayoutPanel5);
this.tabPage11.Controls.Add(this.groupBoxExternalDecoder);
this.tabPage11.Controls.Add(this.listViewDecoders);
this.tabPage11.Controls.Add(this.labelDecoderExtension);
resources.ApplyResources(this.tabPage11, "tabPage11"); resources.ApplyResources(this.tabPage11, "tabPage11");
this.tabPage11.Name = "tabPage11"; this.tabPage11.Name = "tabPage11";
// //
// comboBoxDecoderExtension // tableLayoutPanel5
// //
this.comboBoxDecoderExtension.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; resources.ApplyResources(this.tableLayoutPanel5, "tableLayoutPanel5");
this.comboBoxDecoderExtension.FormattingEnabled = true; this.tableLayoutPanel5.Controls.Add(this.groupBoxExternalDecoder, 1, 1);
resources.ApplyResources(this.comboBoxDecoderExtension, "comboBoxDecoderExtension"); this.tableLayoutPanel5.Controls.Add(this.panel2, 1, 0);
this.comboBoxDecoderExtension.Name = "comboBoxDecoderExtension"; this.tableLayoutPanel5.Controls.Add(this.listViewDecoders, 0, 0);
this.comboBoxDecoderExtension.SelectedIndexChanged += new System.EventHandler(this.comboBoxDecoderExtension_SelectedIndexChanged); this.tableLayoutPanel5.Name = "tableLayoutPanel5";
//
// listViewDecoders
//
this.listViewDecoders.BackColor = System.Drawing.SystemColors.Control;
this.listViewDecoders.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.listViewDecoders.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
this.columnHeader4});
this.listViewDecoders.FullRowSelect = true;
this.listViewDecoders.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.None;
this.listViewDecoders.HideSelection = false;
this.listViewDecoders.LabelEdit = true;
resources.ApplyResources(this.listViewDecoders, "listViewDecoders");
this.listViewDecoders.MultiSelect = false;
this.listViewDecoders.Name = "listViewDecoders";
this.tableLayoutPanel5.SetRowSpan(this.listViewDecoders, 2);
this.listViewDecoders.UseCompatibleStateImageBehavior = false;
this.listViewDecoders.View = System.Windows.Forms.View.Details;
this.listViewDecoders.AfterLabelEdit += new System.Windows.Forms.LabelEditEventHandler(this.listViewDecoders_AfterLabelEdit);
this.listViewDecoders.BeforeLabelEdit += new System.Windows.Forms.LabelEditEventHandler(this.listViewDecoders_BeforeLabelEdit);
this.listViewDecoders.ItemSelectionChanged += new System.Windows.Forms.ListViewItemSelectionChangedEventHandler(this.listViewDecoders_ItemSelectionChanged);
this.listViewDecoders.KeyDown += new System.Windows.Forms.KeyEventHandler(this.listViewDecoders_KeyDown);
//
// columnHeader4
//
resources.ApplyResources(this.columnHeader4, "columnHeader4");
// //
// groupBoxExternalDecoder // groupBoxExternalDecoder
// //
@@ -1224,29 +1252,35 @@ namespace JDP
resources.ApplyResources(this.textBoxDecoderParameters, "textBoxDecoderParameters"); resources.ApplyResources(this.textBoxDecoderParameters, "textBoxDecoderParameters");
this.textBoxDecoderParameters.Name = "textBoxDecoderParameters"; this.textBoxDecoderParameters.Name = "textBoxDecoderParameters";
// //
// listViewDecoders // panel2
// //
this.listViewDecoders.BackColor = System.Drawing.SystemColors.Control; this.panel2.Controls.Add(this.button2);
this.listViewDecoders.BorderStyle = System.Windows.Forms.BorderStyle.None; this.panel2.Controls.Add(this.button1);
this.listViewDecoders.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] { this.panel2.Controls.Add(this.comboBoxDecoderExtension);
this.columnHeader4}); this.panel2.Controls.Add(this.labelDecoderExtension);
this.listViewDecoders.FullRowSelect = true; resources.ApplyResources(this.panel2, "panel2");
this.listViewDecoders.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.None; this.panel2.Name = "panel2";
this.listViewDecoders.HideSelection = false;
this.listViewDecoders.LabelEdit = true;
resources.ApplyResources(this.listViewDecoders, "listViewDecoders");
this.listViewDecoders.MultiSelect = false;
this.listViewDecoders.Name = "listViewDecoders";
this.listViewDecoders.UseCompatibleStateImageBehavior = false;
this.listViewDecoders.View = System.Windows.Forms.View.Details;
this.listViewDecoders.AfterLabelEdit += new System.Windows.Forms.LabelEditEventHandler(this.listViewDecoders_AfterLabelEdit);
this.listViewDecoders.BeforeLabelEdit += new System.Windows.Forms.LabelEditEventHandler(this.listViewDecoders_BeforeLabelEdit);
this.listViewDecoders.ItemSelectionChanged += new System.Windows.Forms.ListViewItemSelectionChangedEventHandler(this.listViewDecoders_ItemSelectionChanged);
this.listViewDecoders.KeyDown += new System.Windows.Forms.KeyEventHandler(this.listViewDecoders_KeyDown);
// //
// columnHeader4 // button2
// //
resources.ApplyResources(this.columnHeader4, "columnHeader4"); this.button2.DataBindings.Add(new System.Windows.Forms.Binding("Enabled", this.encodersBindingSource, "CanBeDeleted", true));
resources.ApplyResources(this.button2, "button2");
this.button2.Name = "button2";
this.button2.UseVisualStyleBackColor = true;
//
// button1
//
resources.ApplyResources(this.button1, "button1");
this.button1.Name = "button1";
this.button1.UseVisualStyleBackColor = true;
//
// comboBoxDecoderExtension
//
resources.ApplyResources(this.comboBoxDecoderExtension, "comboBoxDecoderExtension");
this.comboBoxDecoderExtension.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.comboBoxDecoderExtension.FormattingEnabled = true;
this.comboBoxDecoderExtension.Name = "comboBoxDecoderExtension";
this.comboBoxDecoderExtension.SelectedIndexChanged += new System.EventHandler(this.comboBoxDecoderExtension_SelectedIndexChanged);
// //
// labelDecoderExtension // labelDecoderExtension
// //
@@ -1476,9 +1510,11 @@ namespace JDP
this.panel3.ResumeLayout(false); this.panel3.ResumeLayout(false);
this.panel3.PerformLayout(); this.panel3.PerformLayout();
this.tabPage11.ResumeLayout(false); this.tabPage11.ResumeLayout(false);
this.tabPage11.PerformLayout(); this.tableLayoutPanel5.ResumeLayout(false);
this.groupBoxExternalDecoder.ResumeLayout(false); this.groupBoxExternalDecoder.ResumeLayout(false);
this.groupBoxExternalDecoder.PerformLayout(); this.groupBoxExternalDecoder.PerformLayout();
this.panel2.ResumeLayout(false);
this.panel2.PerformLayout();
this.tabPage4.ResumeLayout(false); this.tabPage4.ResumeLayout(false);
this.tabPage4.PerformLayout(); this.tabPage4.PerformLayout();
this.groupBox2.ResumeLayout(false); this.groupBox2.ResumeLayout(false);
@@ -1640,6 +1676,10 @@ namespace JDP
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel4; private System.Windows.Forms.TableLayoutPanel tableLayoutPanel4;
private System.Windows.Forms.Panel panel1; private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.Panel panel3; private System.Windows.Forms.Panel panel3;
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel5;
private System.Windows.Forms.Panel panel2;
private System.Windows.Forms.Button button2;
private System.Windows.Forms.Button button1;
} }
} }

View File

@@ -116,11 +116,11 @@ namespace JDP
if (comboLanguage.SelectedItem == null) if (comboLanguage.SelectedItem == null)
comboLanguage.SelectedItem = comboLanguage.Items[0]; comboLanguage.SelectedItem = comboLanguage.Items[0];
foreach (KeyValuePair<string, CUEToolsUDC> decoder in _config.decoders) foreach (var decoder in _config.decoders)
if (decoder.Value.path != null) if (decoder.path != null)
{ {
ListViewItem item = new ListViewItem(decoder.Key); ListViewItem item = new ListViewItem(decoder.Name);
item.Tag = decoder.Value; item.Tag = decoder;
listViewDecoders.Items.Add(item); listViewDecoders.Items.Add(item);
} }
//listViewDecoders.Items[0].Selected = true; //listViewDecoders.Items[0].Selected = true;
@@ -326,13 +326,13 @@ namespace JDP
return; return;
} }
foreach (CUEToolsUDC encoder in _config.encoders) foreach (var encoder in _config.encoders)
if (encoder.extension == format.extension) if (encoder.extension == format.extension)
encoder.extension = e.Label; encoder.extension = e.Label;
foreach (KeyValuePair<string, CUEToolsUDC> decoder in _config.decoders) foreach (var decoder in _config.decoders)
if (decoder.Value.extension == format.extension) if (decoder.extension == format.extension)
decoder.Value.extension = e.Label; decoder.extension = e.Label;
comboBoxEncoderExtension.Items.Remove(format.extension); comboBoxEncoderExtension.Items.Remove(format.extension);
comboBoxEncoderExtension.Items.Add(e.Label); comboBoxEncoderExtension.Items.Add(e.Label);
@@ -370,15 +370,15 @@ namespace JDP
CUEToolsFormat format = (CUEToolsFormat)listViewFormats.SelectedItems[0].Tag; CUEToolsFormat format = (CUEToolsFormat)listViewFormats.SelectedItems[0].Tag;
if (format.builtin) if (format.builtin)
return; return;
List<string> decodersToRemove = new List<string>(); var decodersToRemove = new List<CUEToolsUDC>();
foreach (KeyValuePair<string, CUEToolsUDC> decoder in _config.decoders) foreach (var decoder in _config.decoders)
if (decoder.Value.extension == format.extension) if (decoder.extension == format.extension)
decodersToRemove.Add(decoder.Key); decodersToRemove.Add(decoder);
foreach (string decoder in decodersToRemove) foreach (var decoder in decodersToRemove)
{ {
_config.decoders.Remove(decoder); _config.decoders.Remove(decoder);
foreach (ListViewItem item in listViewDecoders.Items) foreach (ListViewItem item in listViewDecoders.Items)
if (item.Text == decoder) if (item.Tag == decoder)
{ {
item.Remove(); item.Remove();
break; break;
@@ -422,9 +422,9 @@ namespace JDP
comboFormatLossyEncoder.Enabled = format.allowLossy; comboFormatLossyEncoder.Enabled = format.allowLossy;
comboFormatDecoder.Items.Clear(); comboFormatDecoder.Items.Clear();
foreach (KeyValuePair<string, CUEToolsUDC> decoder in _config.decoders) foreach (var decoder in _config.decoders)
if (decoder.Value.extension == format.extension) if (decoder.extension == format.extension)
comboFormatDecoder.Items.Add(decoder.Value); comboFormatDecoder.Items.Add(decoder);
comboFormatDecoder.SelectedItem = format.decoder; comboFormatDecoder.SelectedItem = format.decoder;
comboFormatDecoder.Enabled = format.allowLossless; comboFormatDecoder.Enabled = format.allowLossless;
@@ -579,18 +579,15 @@ namespace JDP
private void listViewDecoders_AfterLabelEdit(object sender, LabelEditEventArgs e) private void listViewDecoders_AfterLabelEdit(object sender, LabelEditEventArgs e)
{ {
CUEToolsUDC decoder; if (e.Label == null)
if (e.Label == null || _config.decoders.TryGetValue(e.Label, out decoder))
{ {
e.CancelEdit = true; e.CancelEdit = true;
return; return;
} }
decoder = (CUEToolsUDC)listViewDecoders.Items[e.Item].Tag; var decoder = listViewDecoders.Items[e.Item].Tag as CUEToolsUDC;
if (listViewFormats.SelectedItems.Count > 0) if (listViewFormats.SelectedItems.Count > 0)
listViewFormats.SelectedItems[0].Selected = false; listViewFormats.SelectedItems[0].Selected = false;
_config.decoders.Remove(decoder.name);
decoder.name = e.Label; decoder.name = e.Label;
_config.decoders.Add(decoder.name, decoder);
} }
private void listViewDecoders_BeforeLabelEdit(object sender, LabelEditEventArgs e) private void listViewDecoders_BeforeLabelEdit(object sender, LabelEditEventArgs e)
@@ -606,11 +603,8 @@ namespace JDP
{ {
case Keys.Insert: case Keys.Insert:
{ {
CUEToolsUDC decoder; var decoder = new CUEToolsUDC("new", "wav", true, "", "", "", "");
if (_config.decoders.TryGetValue("new", out decoder)) _config.decoders.Add(decoder);
return;
decoder = new CUEToolsUDC("new", "wav", true, "", "", "", "");
_config.decoders.Add("new", decoder);
ListViewItem item = new ListViewItem(decoder.name); ListViewItem item = new ListViewItem(decoder.name);
item.Tag = decoder; item.Tag = decoder;
listViewDecoders.Items.Add(item); listViewDecoders.Items.Add(item);
@@ -621,12 +615,12 @@ namespace JDP
{ {
if (listViewDecoders.SelectedItems.Count <= 0) if (listViewDecoders.SelectedItems.Count <= 0)
return; return;
CUEToolsUDC decoder = (CUEToolsUDC)listViewDecoders.SelectedItems[0].Tag; CUEToolsUDC decoder = listViewDecoders.SelectedItems[0].Tag as CUEToolsUDC;
if (decoder.path == null) if (decoder.path == null)
return; return;
if (_config.formats[decoder.extension].decoder == decoder) if (_config.formats[decoder.extension].decoder == decoder)
_config.formats[decoder.extension].decoder = null; _config.formats[decoder.extension].decoder = null;
_config.decoders.Remove(decoder.name); _config.decoders.Remove(decoder);
listViewDecoders.Items.Remove(listViewDecoders.SelectedItems[0]); listViewDecoders.Items.Remove(listViewDecoders.SelectedItems[0]);
break; break;
} }

View File

@@ -1122,6 +1122,9 @@
<data name="&gt;&gt;txtSingleFilenameFormat.ZOrder" xml:space="preserve"> <data name="&gt;&gt;txtSingleFilenameFormat.ZOrder" xml:space="preserve">
<value>8</value> <value>8</value>
</data> </data>
<data name="textBoxEncoderModes.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Left, Right</value>
</data>
<metadata name="encodersBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="encodersBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>575, 17</value> <value>575, 17</value>
</metadata> </metadata>
@@ -1129,10 +1132,10 @@
<value>251, 17</value> <value>251, 17</value>
</metadata> </metadata>
<data name="textBoxEncoderModes.Location" type="System.Drawing.Point, System.Drawing"> <data name="textBoxEncoderModes.Location" type="System.Drawing.Point, System.Drawing">
<value>96, 80</value> <value>96, 78</value>
</data> </data>
<data name="textBoxEncoderModes.Size" type="System.Drawing.Size, System.Drawing"> <data name="textBoxEncoderModes.Size" type="System.Drawing.Size, System.Drawing">
<value>262, 21</value> <value>287, 21</value>
</data> </data>
<data name="textBoxEncoderModes.TabIndex" type="System.Int32, mscorlib"> <data name="textBoxEncoderModes.TabIndex" type="System.Int32, mscorlib">
<value>27</value> <value>27</value>
@@ -1165,7 +1168,7 @@
<value>NoControl</value> <value>NoControl</value>
</data> </data>
<data name="checkBoxEncoderLossless.Location" type="System.Drawing.Point, System.Drawing"> <data name="checkBoxEncoderLossless.Location" type="System.Drawing.Point, System.Drawing">
<value>301, 115</value> <value>314, 109</value>
</data> </data>
<data name="checkBoxEncoderLossless.Size" type="System.Drawing.Size, System.Drawing"> <data name="checkBoxEncoderLossless.Size" type="System.Drawing.Size, System.Drawing">
<value>65, 17</value> <value>65, 17</value>
@@ -1191,11 +1194,14 @@
<data name="&gt;&gt;checkBoxEncoderLossless.ZOrder" xml:space="preserve"> <data name="&gt;&gt;checkBoxEncoderLossless.ZOrder" xml:space="preserve">
<value>5</value> <value>5</value>
</data> </data>
<data name="textBoxEncoderPath.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Left, Right</value>
</data>
<data name="textBoxEncoderPath.Location" type="System.Drawing.Point, System.Drawing"> <data name="textBoxEncoderPath.Location" type="System.Drawing.Point, System.Drawing">
<value>96, 20</value> <value>96, 20</value>
</data> </data>
<data name="textBoxEncoderPath.Size" type="System.Drawing.Size, System.Drawing"> <data name="textBoxEncoderPath.Size" type="System.Drawing.Size, System.Drawing">
<value>262, 21</value> <value>287, 21</value>
</data> </data>
<data name="textBoxEncoderPath.TabIndex" type="System.Int32, mscorlib"> <data name="textBoxEncoderPath.TabIndex" type="System.Int32, mscorlib">
<value>14</value> <value>14</value>
@@ -1215,11 +1221,14 @@
<data name="&gt;&gt;textBoxEncoderPath.ZOrder" xml:space="preserve"> <data name="&gt;&gt;textBoxEncoderPath.ZOrder" xml:space="preserve">
<value>2</value> <value>2</value>
</data> </data>
<data name="textBoxEncoderParameters.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Left, Right</value>
</data>
<data name="textBoxEncoderParameters.Location" type="System.Drawing.Point, System.Drawing"> <data name="textBoxEncoderParameters.Location" type="System.Drawing.Point, System.Drawing">
<value>96, 49</value> <value>96, 49</value>
</data> </data>
<data name="textBoxEncoderParameters.Size" type="System.Drawing.Size, System.Drawing"> <data name="textBoxEncoderParameters.Size" type="System.Drawing.Size, System.Drawing">
<value>262, 21</value> <value>287, 21</value>
</data> </data>
<data name="textBoxEncoderParameters.TabIndex" type="System.Int32, mscorlib"> <data name="textBoxEncoderParameters.TabIndex" type="System.Int32, mscorlib">
<value>16</value> <value>16</value>
@@ -1371,11 +1380,14 @@
<data name="&gt;&gt;rbGapsPlusHTOA.ZOrder" xml:space="preserve"> <data name="&gt;&gt;rbGapsPlusHTOA.ZOrder" xml:space="preserve">
<value>0</value> <value>0</value>
</data> </data>
<data name="textBoxEncoderName.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Left, Right</value>
</data>
<data name="textBoxEncoderName.Location" type="System.Drawing.Point, System.Drawing"> <data name="textBoxEncoderName.Location" type="System.Drawing.Point, System.Drawing">
<value>96, 111</value> <value>96, 107</value>
</data> </data>
<data name="textBoxEncoderName.Size" type="System.Drawing.Size, System.Drawing"> <data name="textBoxEncoderName.Size" type="System.Drawing.Size, System.Drawing">
<value>191, 21</value> <value>212, 21</value>
</data> </data>
<data name="textBoxEncoderName.TabIndex" type="System.Int32, mscorlib"> <data name="textBoxEncoderName.TabIndex" type="System.Int32, mscorlib">
<value>28</value> <value>28</value>
@@ -2952,6 +2964,9 @@
<data name="tableLayoutPanel4.ColumnCount" type="System.Int32, mscorlib"> <data name="tableLayoutPanel4.ColumnCount" type="System.Int32, mscorlib">
<value>2</value> <value>2</value>
</data> </data>
<data name="groupBoxExternalEncoder.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Left, Right</value>
</data>
<data name="groupBoxExternalEncoder.BackgroundImageLayout" type="System.Windows.Forms.ImageLayout, System.Windows.Forms"> <data name="groupBoxExternalEncoder.BackgroundImageLayout" type="System.Windows.Forms.ImageLayout, System.Windows.Forms">
<value>None</value> <value>None</value>
</data> </data>
@@ -2959,7 +2974,7 @@
<value>True</value> <value>True</value>
</data> </data>
<data name="labelEncoderName.Location" type="System.Drawing.Point, System.Drawing"> <data name="labelEncoderName.Location" type="System.Drawing.Point, System.Drawing">
<value>6, 114</value> <value>6, 110</value>
</data> </data>
<data name="labelEncoderName.Size" type="System.Drawing.Size, System.Drawing"> <data name="labelEncoderName.Size" type="System.Drawing.Size, System.Drawing">
<value>34, 13</value> <value>34, 13</value>
@@ -2989,7 +3004,7 @@
<value>NoControl</value> <value>NoControl</value>
</data> </data>
<data name="labelEncoderModes.Location" type="System.Drawing.Point, System.Drawing"> <data name="labelEncoderModes.Location" type="System.Drawing.Point, System.Drawing">
<value>6, 83</value> <value>6, 81</value>
</data> </data>
<data name="labelEncoderModes.Size" type="System.Drawing.Size, System.Drawing"> <data name="labelEncoderModes.Size" type="System.Drawing.Size, System.Drawing">
<value>38, 13</value> <value>38, 13</value>
@@ -3072,14 +3087,11 @@
<data name="&gt;&gt;labelEncoderParameters.ZOrder" xml:space="preserve"> <data name="&gt;&gt;labelEncoderParameters.ZOrder" xml:space="preserve">
<value>8</value> <value>8</value>
</data> </data>
<data name="groupBoxExternalEncoder.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="groupBoxExternalEncoder.Location" type="System.Drawing.Point, System.Drawing"> <data name="groupBoxExternalEncoder.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value> <value>0, 0</value>
</data> </data>
<data name="groupBoxExternalEncoder.Size" type="System.Drawing.Size, System.Drawing"> <data name="groupBoxExternalEncoder.Size" type="System.Drawing.Size, System.Drawing">
<value>398, 235</value> <value>394, 235</value>
</data> </data>
<data name="groupBoxExternalEncoder.TabIndex" type="System.Int32, mscorlib"> <data name="groupBoxExternalEncoder.TabIndex" type="System.Int32, mscorlib">
<value>22</value> <value>22</value>
@@ -3109,7 +3121,7 @@
<value>0, 0</value> <value>0, 0</value>
</data> </data>
<data name="propertyGridEncoderSettings.Size" type="System.Drawing.Size, System.Drawing"> <data name="propertyGridEncoderSettings.Size" type="System.Drawing.Size, System.Drawing">
<value>398, 235</value> <value>394, 236</value>
</data> </data>
<data name="propertyGridEncoderSettings.TabIndex" type="System.Int32, mscorlib"> <data name="propertyGridEncoderSettings.TabIndex" type="System.Int32, mscorlib">
<value>31</value> <value>31</value>
@@ -3130,10 +3142,10 @@
<value>Fill</value> <value>Fill</value>
</data> </data>
<data name="panel1.Location" type="System.Drawing.Point, System.Drawing"> <data name="panel1.Location" type="System.Drawing.Point, System.Drawing">
<value>128, 47</value> <value>132, 46</value>
</data> </data>
<data name="panel1.Size" type="System.Drawing.Size, System.Drawing"> <data name="panel1.Size" type="System.Drawing.Size, System.Drawing">
<value>398, 235</value> <value>394, 236</value>
</data> </data>
<data name="panel1.TabIndex" type="System.Int32, mscorlib"> <data name="panel1.TabIndex" type="System.Int32, mscorlib">
<value>32</value> <value>32</value>
@@ -3171,7 +3183,7 @@
<value>NoControl</value> <value>NoControl</value>
</data> </data>
<data name="buttonEncoderDelete.Location" type="System.Drawing.Point, System.Drawing"> <data name="buttonEncoderDelete.Location" type="System.Drawing.Point, System.Drawing">
<value>34, 6</value> <value>42, 7</value>
</data> </data>
<data name="buttonEncoderDelete.Size" type="System.Drawing.Size, System.Drawing"> <data name="buttonEncoderDelete.Size" type="System.Drawing.Size, System.Drawing">
<value>25, 23</value> <value>25, 23</value>
@@ -3191,6 +3203,9 @@
<data name="&gt;&gt;buttonEncoderDelete.ZOrder" xml:space="preserve"> <data name="&gt;&gt;buttonEncoderDelete.ZOrder" xml:space="preserve">
<value>0</value> <value>0</value>
</data> </data>
<data name="labelEncoderExtension.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Right</value>
</data>
<data name="labelEncoderExtension.AutoSize" type="System.Boolean, mscorlib"> <data name="labelEncoderExtension.AutoSize" type="System.Boolean, mscorlib">
<value>True</value> <value>True</value>
</data> </data>
@@ -3201,7 +3216,7 @@
<value>NoControl</value> <value>NoControl</value>
</data> </data>
<data name="labelEncoderExtension.Location" type="System.Drawing.Point, System.Drawing"> <data name="labelEncoderExtension.Location" type="System.Drawing.Point, System.Drawing">
<value>222, 6</value> <value>208, 10</value>
</data> </data>
<data name="labelEncoderExtension.MinimumSize" type="System.Drawing.Size, System.Drawing"> <data name="labelEncoderExtension.MinimumSize" type="System.Drawing.Size, System.Drawing">
<value>100, 16</value> <value>100, 16</value>
@@ -3248,7 +3263,7 @@
</value> </value>
</data> </data>
<data name="buttonEncoderAdd.Location" type="System.Drawing.Point, System.Drawing"> <data name="buttonEncoderAdd.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 6</value> <value>9, 7</value>
</data> </data>
<data name="buttonEncoderAdd.Size" type="System.Drawing.Size, System.Drawing"> <data name="buttonEncoderAdd.Size" type="System.Drawing.Size, System.Drawing">
<value>25, 23</value> <value>25, 23</value>
@@ -3268,8 +3283,11 @@
<data name="&gt;&gt;buttonEncoderAdd.ZOrder" xml:space="preserve"> <data name="&gt;&gt;buttonEncoderAdd.ZOrder" xml:space="preserve">
<value>2</value> <value>2</value>
</data> </data>
<data name="comboBoxEncoderExtension.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Right</value>
</data>
<data name="comboBoxEncoderExtension.Location" type="System.Drawing.Point, System.Drawing"> <data name="comboBoxEncoderExtension.Location" type="System.Drawing.Point, System.Drawing">
<value>328, 3</value> <value>316, 7</value>
</data> </data>
<data name="comboBoxEncoderExtension.Size" type="System.Drawing.Size, System.Drawing"> <data name="comboBoxEncoderExtension.Size" type="System.Drawing.Size, System.Drawing">
<value>67, 21</value> <value>67, 21</value>
@@ -3296,10 +3314,10 @@
<value>Fill</value> <value>Fill</value>
</data> </data>
<data name="panel3.Location" type="System.Drawing.Point, System.Drawing"> <data name="panel3.Location" type="System.Drawing.Point, System.Drawing">
<value>128, 3</value> <value>132, 3</value>
</data> </data>
<data name="panel3.Size" type="System.Drawing.Size, System.Drawing"> <data name="panel3.Size" type="System.Drawing.Size, System.Drawing">
<value>398, 38</value> <value>394, 37</value>
</data> </data>
<data name="panel3.TabIndex" type="System.Int32, mscorlib"> <data name="panel3.TabIndex" type="System.Int32, mscorlib">
<value>34</value> <value>34</value>
@@ -3323,7 +3341,7 @@
<value>3, 3</value> <value>3, 3</value>
</data> </data>
<data name="listBoxEncoders.Size" type="System.Drawing.Size, System.Drawing"> <data name="listBoxEncoders.Size" type="System.Drawing.Size, System.Drawing">
<value>119, 279</value> <value>123, 279</value>
</data> </data>
<data name="listBoxEncoders.TabIndex" type="System.Int32, mscorlib"> <data name="listBoxEncoders.TabIndex" type="System.Int32, mscorlib">
<value>27</value> <value>27</value>
@@ -3368,7 +3386,7 @@
<value>0</value> <value>0</value>
</data> </data>
<data name="tableLayoutPanel4.LayoutSettings" type="System.Windows.Forms.TableLayoutSettings, System.Windows.Forms"> <data name="tableLayoutPanel4.LayoutSettings" type="System.Windows.Forms.TableLayoutSettings, System.Windows.Forms">
<value>&lt;?xml version="1.0" encoding="utf-16"?&gt;&lt;TableLayoutSettings&gt;&lt;Controls&gt;&lt;Control Name="panel1" Row="1" RowSpan="1" Column="1" ColumnSpan="1" /&gt;&lt;Control Name="panel3" Row="0" RowSpan="1" Column="1" ColumnSpan="1" /&gt;&lt;Control Name="listBoxEncoders" Row="0" RowSpan="2" Column="0" ColumnSpan="1" /&gt;&lt;/Controls&gt;&lt;Columns Styles="Percent,23.62949,Percent,76.37051" /&gt;&lt;Rows Styles="Percent,15.44715,Percent,84.55285" /&gt;&lt;/TableLayoutSettings&gt;</value> <value>&lt;?xml version="1.0" encoding="utf-16"?&gt;&lt;TableLayoutSettings&gt;&lt;Controls&gt;&lt;Control Name="panel1" Row="1" RowSpan="1" Column="1" ColumnSpan="1" /&gt;&lt;Control Name="panel3" Row="0" RowSpan="1" Column="1" ColumnSpan="1" /&gt;&lt;Control Name="listBoxEncoders" Row="0" RowSpan="2" Column="0" ColumnSpan="1" /&gt;&lt;/Controls&gt;&lt;Columns Styles="Percent,24.38563,Percent,75.61436" /&gt;&lt;Rows Styles="Percent,15.08772,Percent,84.91228" /&gt;&lt;/TableLayoutSettings&gt;</value>
</data> </data>
<data name="tabPage10.Location" type="System.Drawing.Point, System.Drawing"> <data name="tabPage10.Location" type="System.Drawing.Point, System.Drawing">
<value>4, 22</value> <value>4, 22</value>
@@ -3397,35 +3415,17 @@
<data name="&gt;&gt;tabPage10.ZOrder" xml:space="preserve"> <data name="&gt;&gt;tabPage10.ZOrder" xml:space="preserve">
<value>4</value> <value>4</value>
</data> </data>
<data name="comboBoxDecoderExtension.Location" type="System.Drawing.Point, System.Drawing"> <data name="tableLayoutPanel5.ColumnCount" type="System.Int32, mscorlib">
<value>459, 12</value> <value>2</value>
</data> </data>
<data name="comboBoxDecoderExtension.Size" type="System.Drawing.Size, System.Drawing"> <data name="textBoxDecoderPath.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>67, 21</value> <value>Top, Left, Right</value>
</data>
<data name="comboBoxDecoderExtension.TabIndex" type="System.Int32, mscorlib">
<value>28</value>
</data>
<data name="comboBoxDecoderExtension.Visible" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="&gt;&gt;comboBoxDecoderExtension.Name" xml:space="preserve">
<value>comboBoxDecoderExtension</value>
</data>
<data name="&gt;&gt;comboBoxDecoderExtension.Type" xml:space="preserve">
<value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;comboBoxDecoderExtension.Parent" xml:space="preserve">
<value>tabPage11</value>
</data>
<data name="&gt;&gt;comboBoxDecoderExtension.ZOrder" xml:space="preserve">
<value>0</value>
</data> </data>
<data name="textBoxDecoderPath.Location" type="System.Drawing.Point, System.Drawing"> <data name="textBoxDecoderPath.Location" type="System.Drawing.Point, System.Drawing">
<value>96, 20</value> <value>96, 20</value>
</data> </data>
<data name="textBoxDecoderPath.Size" type="System.Drawing.Size, System.Drawing"> <data name="textBoxDecoderPath.Size" type="System.Drawing.Size, System.Drawing">
<value>262, 21</value> <value>287, 21</value>
</data> </data>
<data name="textBoxDecoderPath.TabIndex" type="System.Int32, mscorlib"> <data name="textBoxDecoderPath.TabIndex" type="System.Int32, mscorlib">
<value>21</value> <value>21</value>
@@ -3479,7 +3479,7 @@
<value>NoControl</value> <value>NoControl</value>
</data> </data>
<data name="labelDecoderParameters.Location" type="System.Drawing.Point, System.Drawing"> <data name="labelDecoderParameters.Location" type="System.Drawing.Point, System.Drawing">
<value>6, 50</value> <value>6, 52</value>
</data> </data>
<data name="labelDecoderParameters.Size" type="System.Drawing.Size, System.Drawing"> <data name="labelDecoderParameters.Size" type="System.Drawing.Size, System.Drawing">
<value>62, 13</value> <value>62, 13</value>
@@ -3502,11 +3502,14 @@
<data name="&gt;&gt;labelDecoderParameters.ZOrder" xml:space="preserve"> <data name="&gt;&gt;labelDecoderParameters.ZOrder" xml:space="preserve">
<value>2</value> <value>2</value>
</data> </data>
<data name="textBoxDecoderParameters.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Left, Right</value>
</data>
<data name="textBoxDecoderParameters.Location" type="System.Drawing.Point, System.Drawing"> <data name="textBoxDecoderParameters.Location" type="System.Drawing.Point, System.Drawing">
<value>96, 47</value> <value>96, 49</value>
</data> </data>
<data name="textBoxDecoderParameters.Size" type="System.Drawing.Size, System.Drawing"> <data name="textBoxDecoderParameters.Size" type="System.Drawing.Size, System.Drawing">
<value>262, 21</value> <value>287, 21</value>
</data> </data>
<data name="textBoxDecoderParameters.TabIndex" type="System.Int32, mscorlib"> <data name="textBoxDecoderParameters.TabIndex" type="System.Int32, mscorlib">
<value>23</value> <value>23</value>
@@ -3523,11 +3526,14 @@
<data name="&gt;&gt;textBoxDecoderParameters.ZOrder" xml:space="preserve"> <data name="&gt;&gt;textBoxDecoderParameters.ZOrder" xml:space="preserve">
<value>3</value> <value>3</value>
</data> </data>
<data name="groupBoxExternalDecoder.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="groupBoxExternalDecoder.Location" type="System.Drawing.Point, System.Drawing"> <data name="groupBoxExternalDecoder.Location" type="System.Drawing.Point, System.Drawing">
<value>136, 39</value> <value>132, 44</value>
</data> </data>
<data name="groupBoxExternalDecoder.Size" type="System.Drawing.Size, System.Drawing"> <data name="groupBoxExternalDecoder.Size" type="System.Drawing.Size, System.Drawing">
<value>390, 87</value> <value>394, 238</value>
</data> </data>
<data name="groupBoxExternalDecoder.TabIndex" type="System.Int32, mscorlib"> <data name="groupBoxExternalDecoder.TabIndex" type="System.Int32, mscorlib">
<value>27</value> <value>27</value>
@@ -3545,35 +3551,129 @@
<value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;groupBoxExternalDecoder.Parent" xml:space="preserve"> <data name="&gt;&gt;groupBoxExternalDecoder.Parent" xml:space="preserve">
<value>tabPage11</value> <value>tableLayoutPanel5</value>
</data> </data>
<data name="&gt;&gt;groupBoxExternalDecoder.ZOrder" xml:space="preserve"> <data name="&gt;&gt;groupBoxExternalDecoder.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="button2.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6
JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAACaUlEQVQ4T6WT+0tTYRjH/Vv0hyhBohsh
YRQU5rzMnbU2t3k7y/S4xSKWpuwM0wxqGLrwh3CW2lUrf8k0sVFeMnJ2HVoeKy/t1Eat6Tm7pnzbJm0u
RxC98HnhPDyf78t5znmTAPwXGwoLGk3KPFWp/0CVM7MqkptRlXDvSSUzRcr1tlJpyp/9cQ+Lag3xiaLY
76Ym+EcsCLy1IjAxCv5+Nxa0ZXhdSLAvlEJivRMnz1VQ/PLdbqzOvkNw8B6CXc0Imi/g5+02rIwPwlGr
hVWezT+XZkZDItu8Wp0cku3czS6sMjYEL5+Du9mApaYa+C8ZEGih4Teegv/BLSweJzF+5IB9TLIvORoQ
kmlnvR4rtsnIiT4TDdd5HbwN6ji40yT8vdfwKi8Dw+IMOhrwkTrGeHqvI9hjhttYhW9F4oQsV5Hgm+rg
MFTjMZHORAOYCpU38LAXQZMB7rPaUCnxcshy4KIKsWRuhSVvlzdUWguYIYu8vp4O+Bu18J4pjzQnWuEA
Z5kCS22tGBJuiwVMlyoYl7EOvmYa3EllpDEh8jy462uxUKvDoCAt9gq2YinNSATw9nTCrZLAVSbaILPS
bLAFIni6rmBUuAMDWVtiQ3xTJE5+WULYFytL4LnTERmYUyFcE2W5YCUhWSIE39mOqWJxWLb3CTbHPmOY
yYIcYkJ2iJ87qoDnRgd+NNJwkHJ8UcrgatCDv9qOaWU++rNS+ZAc/yP95pn0IPH08H7WKtqDrzU6uFou
RvhcfQJPcraHZXa9HCYuIMyIeG/KsDBdbyF2M4/yd3JDgq3cQG4a05+dqu/L3PT3y/TvIOkXHdLOuWlI
1ksAAAAASUVORK5CYII=
</value>
</data>
<data name="button2.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="button2.Location" type="System.Drawing.Point, System.Drawing">
<value>42, 7</value>
</data>
<data name="button2.Size" type="System.Drawing.Size, System.Drawing">
<value>25, 23</value>
</data>
<data name="button2.TabIndex" type="System.Int32, mscorlib">
<value>30</value>
</data>
<data name="button2.Visible" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="&gt;&gt;button2.Name" xml:space="preserve">
<value>button2</value>
</data>
<data name="&gt;&gt;button2.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;button2.Parent" xml:space="preserve">
<value>panel2</value>
</data>
<data name="&gt;&gt;button2.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="button1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6
JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAChUlEQVQ4T6WT/UtTURzG/Vv0lwIhKTEL
BTWlBAtlZbNNVHSaLudsis52N5fOuc0XMp0bvlTUhm6jkW7TOR2+YCZOLV2kXocSbRRBUBv++nTPhk5N
guiB58D9fs/nufece04MgP/yHwWNqy6u3VlLtToEdPN4VVDypiLY8LqUFpmLKcEIN+70/BMPGpeIpZys
Dbxa68VKYAHe7+tY+7aMSZ8VMmc1Kg3sAO/FbdZx5hQsDLl2rdj/tYuZLw4Y6AE839bCumfA4tdZqOfF
KBrODXEGco5CwoN6ShTLwP6JHRN2f25haKsHT1fb0eVphdarQZ9Xja6NFkzsW0E5+cjX3fDn9WbGHgUw
sLR/SYFPPzaYN/ahd1MN1TsZ04pIsSqGZIEP6VIN7HsW3B3OQs6TNCnTigS02Ktph8/CfKoRHStytC1L
IJ4RhGGiKgsHDdPFEE1xof+gQc9iM653pdBMKxIgHas8cH92oP+jhoGbwtBZEk4WQDpXCZN3CBma5AOm
FAlosvIOxn2jUK9TkHvqw5PPEgmg3BUweweR2p4YDai3lNA6jxraTRWa3vIhnCsFz3wnDBERkPihk4N+
jwKd7ke4okiILkE4Wii9b2bB5jNBPFeGWndReM2HIrDAzkbdBBe2HSOudScj8XF8dBP5xoLY8pf5fspZ
hTF65GjDCFhjJyYwB+PbBjww3SOwP0F2PvobiUue5bEKB2+GGm1lsDMhOo8S1HQ5JFNl0K20wcbAfBMb
ifL4EAOfPEiHZuuzWSxtViBXn47ueQrG91oY17VQuRuR0ZlE4MBxmPhEAPGtnvS47O5UKrPjKp2mSgqm
KC8GL7deoC/J46kE2bm/X6Z/N2J+A0FGyx8pOKmLAAAAAElFTkSuQmCC
</value>
</data>
<data name="button1.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="button1.Location" type="System.Drawing.Point, System.Drawing">
<value>9, 7</value>
</data>
<data name="button1.Size" type="System.Drawing.Size, System.Drawing">
<value>25, 23</value>
</data>
<data name="button1.TabIndex" type="System.Int32, mscorlib">
<value>29</value>
</data>
<data name="button1.Visible" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="&gt;&gt;button1.Name" xml:space="preserve">
<value>button1</value>
</data>
<data name="&gt;&gt;button1.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;button1.Parent" xml:space="preserve">
<value>panel2</value>
</data>
<data name="&gt;&gt;button1.ZOrder" xml:space="preserve">
<value>1</value> <value>1</value>
</data> </data>
<data name="columnHeader4.Width" type="System.Int32, mscorlib"> <data name="comboBoxDecoderExtension.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>120</value> <value>Top, Right</value>
</data> </data>
<data name="listViewDecoders.Location" type="System.Drawing.Point, System.Drawing"> <data name="comboBoxDecoderExtension.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 6</value> <value>316, 7</value>
</data> </data>
<data name="listViewDecoders.Size" type="System.Drawing.Size, System.Drawing"> <data name="comboBoxDecoderExtension.Size" type="System.Drawing.Size, System.Drawing">
<value>124, 279</value> <value>67, 21</value>
</data> </data>
<data name="listViewDecoders.TabIndex" type="System.Int32, mscorlib"> <data name="comboBoxDecoderExtension.TabIndex" type="System.Int32, mscorlib">
<value>26</value> <value>28</value>
</data> </data>
<data name="&gt;&gt;listViewDecoders.Name" xml:space="preserve"> <data name="comboBoxDecoderExtension.Visible" type="System.Boolean, mscorlib">
<value>listViewDecoders</value> <value>False</value>
</data> </data>
<data name="&gt;&gt;listViewDecoders.Type" xml:space="preserve"> <data name="&gt;&gt;comboBoxDecoderExtension.Name" xml:space="preserve">
<value>System.Windows.Forms.ListView, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>comboBoxDecoderExtension</value>
</data> </data>
<data name="&gt;&gt;listViewDecoders.Parent" xml:space="preserve"> <data name="&gt;&gt;comboBoxDecoderExtension.Type" xml:space="preserve">
<value>tabPage11</value> <value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;listViewDecoders.ZOrder" xml:space="preserve"> <data name="&gt;&gt;comboBoxDecoderExtension.Parent" xml:space="preserve">
<value>panel2</value>
</data>
<data name="&gt;&gt;comboBoxDecoderExtension.ZOrder" xml:space="preserve">
<value>2</value> <value>2</value>
</data> </data>
<data name="labelDecoderExtension.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Right</value>
</data>
<data name="labelDecoderExtension.AutoSize" type="System.Boolean, mscorlib"> <data name="labelDecoderExtension.AutoSize" type="System.Boolean, mscorlib">
<value>True</value> <value>True</value>
</data> </data>
@@ -3584,7 +3684,7 @@
<value>NoControl</value> <value>NoControl</value>
</data> </data>
<data name="labelDecoderExtension.Location" type="System.Drawing.Point, System.Drawing"> <data name="labelDecoderExtension.Location" type="System.Drawing.Point, System.Drawing">
<value>351, 15</value> <value>208, 10</value>
</data> </data>
<data name="labelDecoderExtension.MinimumSize" type="System.Drawing.Size, System.Drawing"> <data name="labelDecoderExtension.MinimumSize" type="System.Drawing.Size, System.Drawing">
<value>100, 16</value> <value>100, 16</value>
@@ -3608,11 +3708,89 @@
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;labelDecoderExtension.Parent" xml:space="preserve"> <data name="&gt;&gt;labelDecoderExtension.Parent" xml:space="preserve">
<value>tabPage11</value> <value>panel2</value>
</data> </data>
<data name="&gt;&gt;labelDecoderExtension.ZOrder" xml:space="preserve"> <data name="&gt;&gt;labelDecoderExtension.ZOrder" xml:space="preserve">
<value>3</value> <value>3</value>
</data> </data>
<data name="panel2.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="panel2.Location" type="System.Drawing.Point, System.Drawing">
<value>132, 3</value>
</data>
<data name="panel2.Size" type="System.Drawing.Size, System.Drawing">
<value>394, 35</value>
</data>
<data name="panel2.TabIndex" type="System.Int32, mscorlib">
<value>28</value>
</data>
<data name="&gt;&gt;panel2.Name" xml:space="preserve">
<value>panel2</value>
</data>
<data name="&gt;&gt;panel2.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panel2.Parent" xml:space="preserve">
<value>tableLayoutPanel5</value>
</data>
<data name="&gt;&gt;panel2.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="columnHeader4.Width" type="System.Int32, mscorlib">
<value>120</value>
</data>
<data name="listViewDecoders.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 3</value>
</data>
<data name="listViewDecoders.Size" type="System.Drawing.Size, System.Drawing">
<value>123, 279</value>
</data>
<data name="listViewDecoders.TabIndex" type="System.Int32, mscorlib">
<value>26</value>
</data>
<data name="&gt;&gt;listViewDecoders.Name" xml:space="preserve">
<value>listViewDecoders</value>
</data>
<data name="&gt;&gt;listViewDecoders.Type" xml:space="preserve">
<value>System.Windows.Forms.ListView, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;listViewDecoders.Parent" xml:space="preserve">
<value>tableLayoutPanel5</value>
</data>
<data name="&gt;&gt;listViewDecoders.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="tableLayoutPanel5.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="tableLayoutPanel5.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 3</value>
</data>
<data name="tableLayoutPanel5.RowCount" type="System.Int32, mscorlib">
<value>2</value>
</data>
<data name="tableLayoutPanel5.Size" type="System.Drawing.Size, System.Drawing">
<value>529, 285</value>
</data>
<data name="tableLayoutPanel5.TabIndex" type="System.Int32, mscorlib">
<value>29</value>
</data>
<data name="&gt;&gt;tableLayoutPanel5.Name" xml:space="preserve">
<value>tableLayoutPanel5</value>
</data>
<data name="&gt;&gt;tableLayoutPanel5.Type" xml:space="preserve">
<value>System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;tableLayoutPanel5.Parent" xml:space="preserve">
<value>tabPage11</value>
</data>
<data name="&gt;&gt;tableLayoutPanel5.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="tableLayoutPanel5.LayoutSettings" type="System.Windows.Forms.TableLayoutSettings, System.Windows.Forms">
<value>&lt;?xml version="1.0" encoding="utf-16"?&gt;&lt;TableLayoutSettings&gt;&lt;Controls&gt;&lt;Control Name="groupBoxExternalDecoder" Row="1" RowSpan="1" Column="1" ColumnSpan="1" /&gt;&lt;Control Name="panel2" Row="0" RowSpan="1" Column="1" ColumnSpan="1" /&gt;&lt;Control Name="listViewDecoders" Row="0" RowSpan="2" Column="0" ColumnSpan="1" /&gt;&lt;/Controls&gt;&lt;Columns Styles="Percent,24.38563,Percent,75.61436" /&gt;&lt;Rows Styles="Percent,14.73684,Percent,85.26316" /&gt;&lt;/TableLayoutSettings&gt;</value>
</data>
<data name="tabPage11.Location" type="System.Drawing.Point, System.Drawing"> <data name="tabPage11.Location" type="System.Drawing.Point, System.Drawing">
<value>4, 22</value> <value>4, 22</value>
</data> </data>