diff --git a/ChanSort.Loader.DbFile/ChanSort.Loader.DbFile.csproj b/ChanSort.Loader.DbFile/ChanSort.Loader.Toshiba.csproj
similarity index 97%
rename from ChanSort.Loader.DbFile/ChanSort.Loader.DbFile.csproj
rename to ChanSort.Loader.DbFile/ChanSort.Loader.Toshiba.csproj
index 0d87214..770f0b2 100644
--- a/ChanSort.Loader.DbFile/ChanSort.Loader.DbFile.csproj
+++ b/ChanSort.Loader.DbFile/ChanSort.Loader.Toshiba.csproj
@@ -8,8 +8,8 @@
{F6F02792-07F1-48D5-9AF3-F945CA5E3931}
Library
Properties
- ChanSort.Loader.DbFile
- ChanSort.Loader.DbFile
+ ChanSort.Loader.Toshiba
+ ChanSort.Loader.Toshiba
v3.5
diff --git a/ChanSort.Loader.DbFile/DbChannel.cs b/ChanSort.Loader.DbFile/DbChannel.cs
index e75e02a..9f78024 100644
--- a/ChanSort.Loader.DbFile/DbChannel.cs
+++ b/ChanSort.Loader.DbFile/DbChannel.cs
@@ -3,7 +3,7 @@ using System.Data.SQLite;
using System.Text;
using ChanSort.Api;
-namespace ChanSort.Loader.DbFile
+namespace ChanSort.Loader.Toshiba
{
internal class DbChannel : ChannelInfo
{
diff --git a/ChanSort.Loader.DbFile/DbSerializer.cs b/ChanSort.Loader.DbFile/DbSerializer.cs
index dd44fc4..41aaffb 100644
--- a/ChanSort.Loader.DbFile/DbSerializer.cs
+++ b/ChanSort.Loader.DbFile/DbSerializer.cs
@@ -7,7 +7,7 @@ using System.Windows.Forms;
using ChanSort.Api;
using ICSharpCode.SharpZipLib.Zip;
-namespace ChanSort.Loader.DbFile
+namespace ChanSort.Loader.Toshiba
{
class DbSerializer : SerializerBase
{
diff --git a/ChanSort.Loader.DbFile/DbSerializerPlugin.cs b/ChanSort.Loader.DbFile/DbSerializerPlugin.cs
index be92301..b5c3185 100644
--- a/ChanSort.Loader.DbFile/DbSerializerPlugin.cs
+++ b/ChanSort.Loader.DbFile/DbSerializerPlugin.cs
@@ -1,6 +1,6 @@
using ChanSort.Api;
-namespace ChanSort.Loader.DbFile
+namespace ChanSort.Loader.Toshiba
{
public class DbSerializerPlugin : ISerializerPlugin
{
diff --git a/ChanSort.Loader.DbFile/Properties/AssemblyInfo.cs b/ChanSort.Loader.DbFile/Properties/AssemblyInfo.cs
index d5a1f53..d084ede 100644
--- a/ChanSort.Loader.DbFile/Properties/AssemblyInfo.cs
+++ b/ChanSort.Loader.DbFile/Properties/AssemblyInfo.cs
@@ -5,11 +5,11 @@ using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
-[assembly: AssemblyTitle("ChanSort.Loader.DbFile")]
+[assembly: AssemblyTitle("ChanSort.Loader.Toshiba")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("ChanSort.Loader.DbFile")]
+[assembly: AssemblyProduct("ChanSort.Loader.Toshiba")]
[assembly: AssemblyCopyright("Copyright © 2013")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
diff --git a/ChanSort.Loader.Panasonic/DbChannel.cs b/ChanSort.Loader.Panasonic/DbChannel.cs
index 9e9c17b..69e5bd3 100644
--- a/ChanSort.Loader.Panasonic/DbChannel.cs
+++ b/ChanSort.Loader.Panasonic/DbChannel.cs
@@ -82,7 +82,9 @@ namespace ChanSort.Loader.Panasonic
int freq = r.GetInt32(field["freq"]);
if ((this.SignalSource & SignalSource.Sat) != 0)
{
+// ReSharper disable PossibleLossOfFraction
this.FreqInMhz = freq/10;
+// ReSharper restore PossibleLossOfFraction
int satId = r.GetInt32(field["physical_ch"]) >> 12;
var sat = dataRoot.Satellites.TryGet(satId);
if (sat != null)
diff --git a/ChanSort.Loader.Panasonic/Serializer.cs b/ChanSort.Loader.Panasonic/Serializer.cs
index 708c941..880c49b 100644
--- a/ChanSort.Loader.Panasonic/Serializer.cs
+++ b/ChanSort.Loader.Panasonic/Serializer.cs
@@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
+using System.Data;
using System.Data.SQLite;
using System.IO;
using System.Windows.Forms;
@@ -9,8 +10,8 @@ namespace ChanSort.Loader.Panasonic
{
class Serializer : SerializerBase
{
- private readonly ChannelList atvChannels = new ChannelList(SignalSource.AnalogCT | SignalSource.Tv, "Analog");
- private readonly ChannelList dtvTvChannels = new ChannelList(SignalSource.DvbCT | SignalSource.DvbS | SignalSource.Tv, "DTV");
+ private readonly ChannelList atvChannels = new ChannelList(SignalSource.AnalogCT | SignalSource.Tv, "Analog TV");
+ private readonly ChannelList dtvTvChannels = new ChannelList(SignalSource.DvbCT | SignalSource.DvbS | SignalSource.Tv, "Digital TV");
private readonly ChannelList dtvRadioChannels = new ChannelList(SignalSource.DvbCT | SignalSource.DvbS | SignalSource.Radio, "Radio");
private string tempFile;
@@ -147,8 +148,49 @@ namespace ChanSort.Loader.Panasonic
#endregion
+ #region Save()
public override void Save(string tvOutputFile)
{
+ this.FileName = tvOutputFile;
+
+ string channelConnString = "Data Source=" + this.tempFile;
+ using (var conn = new SQLiteConnection(channelConnString))
+ {
+ conn.Open();
+ using (var cmd = conn.CreateCommand())
+ {
+ using (var trans = conn.BeginTransaction())
+ {
+ this.WriteChannels(cmd, this.atvChannels);
+ this.WriteChannels(cmd, this.dtvTvChannels);
+ this.WriteChannels(cmd, this.dtvRadioChannels);
+ trans.Commit();
+ }
+ }
+ }
+
+ this.CypherFile(this.tempFile, this.FileName);
}
+ #endregion
+
+ #region WriteChannels()
+ private void WriteChannels(SQLiteCommand cmd, ChannelList channelList)
+ {
+ cmd.CommandText = "update SVL set ... child_lock=@lock, skip=@skip where rowid=@rowid";
+ cmd.Parameters.Add(new SQLiteParameter("@rowid", DbType.Int32));
+ cmd.Parameters.Add(new SQLiteParameter("@child_lock", DbType.Int32));
+ cmd.Parameters.Add(new SQLiteParameter("@skip", DbType.Int32));
+ cmd.Prepare();
+ foreach (DbChannel channel in channelList.Channels)
+ {
+ channel.UpdateRawData();
+ cmd.Parameters["@rowid"].Value = channel.RecordIndex;
+ cmd.Parameters["@child_lock"].Value = channel.Lock;
+ cmd.Parameters["@skip"].Value = channel.Skip;
+ cmd.ExecuteNonQuery();
+ }
+ }
+ #endregion
+
}
}
diff --git a/ChanSort.Loader.ScmFile/AnalogChannel.cs b/ChanSort.Loader.ScmFile/AnalogChannel.cs
index f6842af..fba2fce 100644
--- a/ChanSort.Loader.ScmFile/AnalogChannel.cs
+++ b/ChanSort.Loader.ScmFile/AnalogChannel.cs
@@ -1,6 +1,6 @@
using ChanSort.Api;
-namespace ChanSort.Loader.ScmFile
+namespace ChanSort.Loader.Samsung
{
internal class AnalogChannel : ScmChannelBase
{
diff --git a/ChanSort.Loader.ScmFile/ChanSort.Loader.ScmFile.csproj b/ChanSort.Loader.ScmFile/ChanSort.Loader.Samsung.csproj
similarity index 94%
rename from ChanSort.Loader.ScmFile/ChanSort.Loader.ScmFile.csproj
rename to ChanSort.Loader.ScmFile/ChanSort.Loader.Samsung.csproj
index a7d56d6..3e9538f 100644
--- a/ChanSort.Loader.ScmFile/ChanSort.Loader.ScmFile.csproj
+++ b/ChanSort.Loader.ScmFile/ChanSort.Loader.Samsung.csproj
@@ -8,11 +8,12 @@
{A1C9A98D-368A-44E8-9B7F-7EACA46C9EC5}
Library
Properties
- ChanSort.Loader.ScmFile
- ChanSort.Loader.ScmFile
+ ChanSort.Loader.Samsung
+ ChanSort.Loader.Samsung
v3.5
512
- Client
+
+
true
@@ -84,7 +85,7 @@
-
+
Always
diff --git a/ChanSort.Loader.ScmFile/ChanSort.Loader.ScmFile.ini b/ChanSort.Loader.ScmFile/ChanSort.Loader.Samsung.ini
similarity index 98%
rename from ChanSort.Loader.ScmFile/ChanSort.Loader.ScmFile.ini
rename to ChanSort.Loader.ScmFile/ChanSort.Loader.Samsung.ini
index 21dd254..b0f1af6 100644
--- a/ChanSort.Loader.ScmFile/ChanSort.Loader.ScmFile.ini
+++ b/ChanSort.Loader.ScmFile/ChanSort.Loader.Samsung.ini
@@ -132,7 +132,7 @@
offQam = 7
offServiceType = 9
offEncrypted = 23
- maskEncrypted = 0xff
+ maskEncrypted = 0x01
offSymbolRate = 32
offLock = 244
maskLock = 0x01
@@ -162,7 +162,7 @@
offHRes = 20
offVRes = 22
offEncrypted = 24
- maskEncrypted = 0xff
+ maskEncrypted = 0x01
offFrameRate = 25
offSymbolRate = 28
offLock = 31
@@ -197,7 +197,7 @@
offHRes = 20
offVRes = 22
offEncrypted = 24
- maskEncrypted = 0xff
+ maskEncrypted = 0x01
offFrameRate = 25
offSymbolRate = 28
offLock = 31
diff --git a/ChanSort.Loader.ScmFile/DigitalChannel.cs b/ChanSort.Loader.ScmFile/DigitalChannel.cs
index 1c3c7f7..1cf1885 100644
--- a/ChanSort.Loader.ScmFile/DigitalChannel.cs
+++ b/ChanSort.Loader.ScmFile/DigitalChannel.cs
@@ -1,7 +1,7 @@
using System.Collections.Generic;
using ChanSort.Api;
-namespace ChanSort.Loader.ScmFile
+namespace ChanSort.Loader.Samsung
{
public class DigitalChannel : ScmChannelBase
{
diff --git a/ChanSort.Loader.ScmFile/ModelConstants.cs b/ChanSort.Loader.ScmFile/ModelConstants.cs
index 6f69e15..62b03cd 100644
--- a/ChanSort.Loader.ScmFile/ModelConstants.cs
+++ b/ChanSort.Loader.ScmFile/ModelConstants.cs
@@ -1,6 +1,6 @@
using ChanSort.Api;
-namespace ChanSort.Loader.ScmFile
+namespace ChanSort.Loader.Samsung
{
internal class ModelConstants
{
diff --git a/ChanSort.Loader.ScmFile/Properties/AssemblyInfo.cs b/ChanSort.Loader.ScmFile/Properties/AssemblyInfo.cs
index ed05467..6602a5f 100644
--- a/ChanSort.Loader.ScmFile/Properties/AssemblyInfo.cs
+++ b/ChanSort.Loader.ScmFile/Properties/AssemblyInfo.cs
@@ -2,14 +2,16 @@
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
+[assembly:InternalsVisibleTo("Test.Loader")]
+
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
-[assembly: AssemblyTitle("ChanSort.Loader.ScmFile")]
+[assembly: AssemblyTitle("ChanSort.Loader.Samsung")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("ChanSort.Loader.ScmFile")]
+[assembly: AssemblyProduct("ChanSort.Loader.Samsung")]
[assembly: AssemblyCopyright("Copyright © 2012")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
diff --git a/ChanSort.Loader.ScmFile/SatChannel.cs b/ChanSort.Loader.ScmFile/SatChannel.cs
index e32649b..bea1669 100644
--- a/ChanSort.Loader.ScmFile/SatChannel.cs
+++ b/ChanSort.Loader.ScmFile/SatChannel.cs
@@ -1,6 +1,6 @@
using ChanSort.Api;
-namespace ChanSort.Loader.ScmFile
+namespace ChanSort.Loader.Samsung
{
class SatChannel : ScmChannelBase
{
diff --git a/ChanSort.Loader.ScmFile/SatelliteMapping.cs b/ChanSort.Loader.ScmFile/SatelliteMapping.cs
index 5db030d..49055a7 100644
--- a/ChanSort.Loader.ScmFile/SatelliteMapping.cs
+++ b/ChanSort.Loader.ScmFile/SatelliteMapping.cs
@@ -1,7 +1,7 @@
using System;
using System.Text;
-namespace ChanSort.Loader.ScmFile
+namespace ChanSort.Loader.Samsung
{
internal class SatelliteMapping
{
diff --git a/ChanSort.Loader.ScmFile/ScmChannelBase.cs b/ChanSort.Loader.ScmFile/ScmChannelBase.cs
index b72b844..8eb1736 100644
--- a/ChanSort.Loader.ScmFile/ScmChannelBase.cs
+++ b/ChanSort.Loader.ScmFile/ScmChannelBase.cs
@@ -2,7 +2,7 @@
using System.Text;
using ChanSort.Api;
-namespace ChanSort.Loader.ScmFile
+namespace ChanSort.Loader.Samsung
{
public class ScmChannelBase : ChannelInfo
{
diff --git a/ChanSort.Loader.ScmFile/ScmSerializer.cs b/ChanSort.Loader.ScmFile/ScmSerializer.cs
index ab45873..ad766e3 100644
--- a/ChanSort.Loader.ScmFile/ScmSerializer.cs
+++ b/ChanSort.Loader.ScmFile/ScmSerializer.cs
@@ -6,7 +6,7 @@ using System.Windows.Forms;
using ChanSort.Api;
using ICSharpCode.SharpZipLib.Zip;
-namespace ChanSort.Loader.ScmFile
+namespace ChanSort.Loader.Samsung
{
class ScmSerializer : SerializerBase
{
@@ -180,10 +180,10 @@ namespace ChanSort.Loader.ScmFile
validCandidates = newValidCandidats;
}
- if (validCandidates.Length != 1)
+ if (validCandidates.Length == 0)
return false;
- this.modelConstants.TryGetValue("Series:" + validCandidates, out this.c);
+ this.modelConstants.TryGetValue("Series:" + validCandidates[0], out this.c);
return true;
}
@@ -365,7 +365,7 @@ namespace ChanSort.Loader.ScmFile
for (int slotIndex = 0; slotIndex < count; slotIndex++)
{
DigitalChannel ci = new DigitalChannel(slotIndex, isCable, rawChannel, frequency, c.favoriteNotSetValue);
- if (ci.OldProgramNr != -1)
+ if (ci.OldProgramNr > 0)
this.DataRoot.AddChannel(list, ci);
rawChannel.BaseOffset += entrySize;
diff --git a/ChanSort.Loader.ScmFile/ScmSerializerPlugin.cs b/ChanSort.Loader.ScmFile/ScmSerializerPlugin.cs
index fecad32..6908da4 100644
--- a/ChanSort.Loader.ScmFile/ScmSerializerPlugin.cs
+++ b/ChanSort.Loader.ScmFile/ScmSerializerPlugin.cs
@@ -1,6 +1,6 @@
using ChanSort.Api;
-namespace ChanSort.Loader.ScmFile
+namespace ChanSort.Loader.Samsung
{
public class ScmSerializerPlugin : ISerializerPlugin
{
diff --git a/ChanSort.Loader.TllFile/AnalogChannel.cs b/ChanSort.Loader.TllFile/AnalogChannel.cs
index 3709c26..1f4acd2 100644
--- a/ChanSort.Loader.TllFile/AnalogChannel.cs
+++ b/ChanSort.Loader.TllFile/AnalogChannel.cs
@@ -1,6 +1,6 @@
using ChanSort.Api;
-namespace ChanSort.Loader.TllFile
+namespace ChanSort.Loader.LG
{
public class AnalogChannel : TllChannelBase
{
diff --git a/ChanSort.Loader.TllFile/ChanSort.Loader.TllFile.csproj b/ChanSort.Loader.TllFile/ChanSort.Loader.LG.csproj
similarity index 93%
rename from ChanSort.Loader.TllFile/ChanSort.Loader.TllFile.csproj
rename to ChanSort.Loader.TllFile/ChanSort.Loader.LG.csproj
index 0a30847..82329f4 100644
--- a/ChanSort.Loader.TllFile/ChanSort.Loader.TllFile.csproj
+++ b/ChanSort.Loader.TllFile/ChanSort.Loader.LG.csproj
@@ -8,11 +8,12 @@
{E972D8A1-2F5F-421C-AC91-CFF45E5191BE}
Library
Properties
- ChanSort.Loader.TllFile
- ChanSort.Loader.TllFile
+ ChanSort.Loader.LG
+ ChanSort.Loader.LG
v3.5
512
- Client
+
+
true
@@ -55,9 +56,9 @@
true
-
-
-
+
+
+
@@ -104,7 +105,7 @@
-
+
Always
diff --git a/ChanSort.Loader.TllFile/ChanSort.Loader.TllFile.ini b/ChanSort.Loader.TllFile/ChanSort.Loader.LG.ini
similarity index 100%
rename from ChanSort.Loader.TllFile/ChanSort.Loader.TllFile.ini
rename to ChanSort.Loader.TllFile/ChanSort.Loader.LG.ini
diff --git a/ChanSort.Loader.TllFile/DtvChannel.cs b/ChanSort.Loader.TllFile/DtvChannel.cs
index 9fa37b9..f617118 100644
--- a/ChanSort.Loader.TllFile/DtvChannel.cs
+++ b/ChanSort.Loader.TllFile/DtvChannel.cs
@@ -1,6 +1,6 @@
using ChanSort.Api;
-namespace ChanSort.Loader.TllFile
+namespace ChanSort.Loader.LG
{
public class DtvChannel : TllChannelBase
{
diff --git a/ChanSort.Loader.TllFile/DvbsDataLayout.cs b/ChanSort.Loader.TllFile/DvbsDataLayout.cs
index aca2d08..fdc9d3c 100644
--- a/ChanSort.Loader.TllFile/DvbsDataLayout.cs
+++ b/ChanSort.Loader.TllFile/DvbsDataLayout.cs
@@ -1,4 +1,4 @@
-namespace ChanSort.Loader.TllFile
+namespace ChanSort.Loader.LG
{
public class DvbsDataLayout
{
diff --git a/ChanSort.Loader.TllFile/FirmwareData.cs b/ChanSort.Loader.TllFile/FirmwareData.cs
index bc5c276..b6fdfaa 100644
--- a/ChanSort.Loader.TllFile/FirmwareData.cs
+++ b/ChanSort.Loader.TllFile/FirmwareData.cs
@@ -1,6 +1,6 @@
using ChanSort.Api;
-namespace ChanSort.Loader.TllFile
+namespace ChanSort.Loader.LG
{
public class FirmwareData : DataMapping
{
diff --git a/ChanSort.Loader.TllFile/Properties/AssemblyInfo.cs b/ChanSort.Loader.TllFile/Properties/AssemblyInfo.cs
index b1aeb86..15c8e8a 100644
--- a/ChanSort.Loader.TllFile/Properties/AssemblyInfo.cs
+++ b/ChanSort.Loader.TllFile/Properties/AssemblyInfo.cs
@@ -2,16 +2,16 @@
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
-[assembly: InternalsVisibleTo("Test.Loader.TllFile")]
+[assembly: InternalsVisibleTo("Test.Loader")]
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
-[assembly: AssemblyTitle("ChanSort.Loader.TllFile")]
+[assembly: AssemblyTitle("ChanSort.Loader.LG")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("ChanSort.Loader.TllFile")]
+[assembly: AssemblyProduct("ChanSort.Loader.LG")]
[assembly: AssemblyCopyright("Copyright © 2012")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
diff --git a/ChanSort.Loader.TllFile/Properties/licenses.licx b/ChanSort.Loader.TllFile/Properties/licenses.licx
index 88bdc16..e69de29 100644
--- a/ChanSort.Loader.TllFile/Properties/licenses.licx
+++ b/ChanSort.Loader.TllFile/Properties/licenses.licx
@@ -1,4 +0,0 @@
-DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-DevExpress.XtraEditors.TextEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
diff --git a/ChanSort.Loader.TllFile/Resource.Designer.cs b/ChanSort.Loader.TllFile/Resource.Designer.cs
index 496dbe8..b2b1f3c 100644
--- a/ChanSort.Loader.TllFile/Resource.Designer.cs
+++ b/ChanSort.Loader.TllFile/Resource.Designer.cs
@@ -8,7 +8,7 @@
//
//------------------------------------------------------------------------------
-namespace ChanSort.Loader.TllFile {
+namespace ChanSort.Loader.LG {
using System;
@@ -39,7 +39,7 @@ namespace ChanSort.Loader.TllFile {
internal static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
- global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("ChanSort.Loader.TllFile.Resource", typeof(Resource).Assembly);
+ global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("ChanSort.Loader.LG.Resource", typeof(Resource).Assembly);
resourceMan = temp;
}
return resourceMan;
diff --git a/ChanSort.Loader.TllFile/SatChannel.cs b/ChanSort.Loader.TllFile/SatChannel.cs
index 0515f1f..b9c2194 100644
--- a/ChanSort.Loader.TllFile/SatChannel.cs
+++ b/ChanSort.Loader.TllFile/SatChannel.cs
@@ -1,6 +1,6 @@
using ChanSort.Api;
-namespace ChanSort.Loader.TllFile
+namespace ChanSort.Loader.LG
{
class SatChannel : TllChannelBase
{
diff --git a/ChanSort.Loader.TllFile/SatChannelListHeader.cs b/ChanSort.Loader.TllFile/SatChannelListHeader.cs
index 111e698..9399825 100644
--- a/ChanSort.Loader.TllFile/SatChannelListHeader.cs
+++ b/ChanSort.Loader.TllFile/SatChannelListHeader.cs
@@ -1,6 +1,6 @@
using System;
-namespace ChanSort.Loader.TllFile
+namespace ChanSort.Loader.LG
{
internal class SatChannelListHeader
{
diff --git a/ChanSort.Loader.TllFile/SatTransponder.cs b/ChanSort.Loader.TllFile/SatTransponder.cs
index 0c22e64..9fad73d 100644
--- a/ChanSort.Loader.TllFile/SatTransponder.cs
+++ b/ChanSort.Loader.TllFile/SatTransponder.cs
@@ -1,6 +1,6 @@
using System;
-namespace ChanSort.Loader.TllFile
+namespace ChanSort.Loader.LG
{
internal class SatTransponder
{
diff --git a/ChanSort.Loader.TllFile/TllChannelBase.cs b/ChanSort.Loader.TllFile/TllChannelBase.cs
index 6f9494e..bd508ed 100644
--- a/ChanSort.Loader.TllFile/TllChannelBase.cs
+++ b/ChanSort.Loader.TllFile/TllChannelBase.cs
@@ -1,6 +1,6 @@
using ChanSort.Api;
-namespace ChanSort.Loader.TllFile
+namespace ChanSort.Loader.LG
{
public class TllChannelBase : ChannelInfo
{
diff --git a/ChanSort.Loader.TllFile/TllFileSerializer.cs b/ChanSort.Loader.TllFile/TllFileSerializer.cs
index 6ef8df6..a0476f2 100644
--- a/ChanSort.Loader.TllFile/TllFileSerializer.cs
+++ b/ChanSort.Loader.TllFile/TllFileSerializer.cs
@@ -11,7 +11,7 @@ using System.Text;
using System.Windows.Forms;
using ChanSort.Api;
-namespace ChanSort.Loader.TllFile
+namespace ChanSort.Loader.LG
{
public partial class TllFileSerializer : SerializerBase
{
diff --git a/ChanSort.Loader.TllFile/TllFileSerializer.sql.cs b/ChanSort.Loader.TllFile/TllFileSerializer.sql.cs
index 6265e9a..939b199 100644
--- a/ChanSort.Loader.TllFile/TllFileSerializer.sql.cs
+++ b/ChanSort.Loader.TllFile/TllFileSerializer.sql.cs
@@ -5,7 +5,7 @@ using System.Data.SqlClient;
using System.Text;
using ChanSort.Api;
-namespace ChanSort.Loader.TllFile
+namespace ChanSort.Loader.LG
{
///
/// For research purposes this class writes DVB-S channel information into a database
diff --git a/ChanSort.Loader.TllFile/TllFileSerializerPlugin.cs b/ChanSort.Loader.TllFile/TllFileSerializerPlugin.cs
index 219c9c3..947f26f 100644
--- a/ChanSort.Loader.TllFile/TllFileSerializerPlugin.cs
+++ b/ChanSort.Loader.TllFile/TllFileSerializerPlugin.cs
@@ -1,6 +1,6 @@
using ChanSort.Api;
-namespace ChanSort.Loader.TllFile
+namespace ChanSort.Loader.LG
{
public class TllFileSerializerPlugin : ISerializerPlugin
{
diff --git a/ChanSort.Loader.TllFile/TvSettingsForm.Designer.cs b/ChanSort.Loader.TllFile/TvSettingsForm.Designer.cs
index 8f9a16f..59c7c86 100644
--- a/ChanSort.Loader.TllFile/TvSettingsForm.Designer.cs
+++ b/ChanSort.Loader.TllFile/TvSettingsForm.Designer.cs
@@ -1,4 +1,4 @@
-namespace ChanSort.Loader.TllFile
+namespace ChanSort.Loader.LG
{
partial class TvSettingsForm
{
diff --git a/ChanSort.Loader.TllFile/TvSettingsForm.cs b/ChanSort.Loader.TllFile/TvSettingsForm.cs
index 6bf9367..6d12e6b 100644
--- a/ChanSort.Loader.TllFile/TvSettingsForm.cs
+++ b/ChanSort.Loader.TllFile/TvSettingsForm.cs
@@ -2,7 +2,7 @@
using DevExpress.XtraEditors;
using DevExpress.XtraEditors.Controls;
-namespace ChanSort.Loader.TllFile
+namespace ChanSort.Loader.LG
{
public partial class TvSettingsForm : XtraForm
{
diff --git a/ChanSort.Loader.TllFile/TvSettingsForm.de.resx b/ChanSort.Loader.TllFile/TvSettingsForm.de.resx
index 7cbedf2..d0a9b38 100644
--- a/ChanSort.Loader.TllFile/TvSettingsForm.de.resx
+++ b/ChanSort.Loader.TllFile/TvSettingsForm.de.resx
@@ -279,7 +279,7 @@
True
-
+
Default
diff --git a/ChanSort.Loader.TllFile/TvSettingsForm.resx b/ChanSort.Loader.TllFile/TvSettingsForm.resx
index dff5080..b6e45b5 100644
--- a/ChanSort.Loader.TllFile/TvSettingsForm.resx
+++ b/ChanSort.Loader.TllFile/TvSettingsForm.resx
@@ -139,7 +139,7 @@
cbHbbTv
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpOption
@@ -166,7 +166,7 @@
cbCustomCountry
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpOption
@@ -177,7 +177,7 @@
72, 29
-
+
Combo
@@ -191,7 +191,7 @@
comboBoxEdit1
- DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpOption
@@ -215,7 +215,7 @@
labelControl1
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpOption
@@ -242,7 +242,7 @@
grpOption
- DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -269,7 +269,7 @@
btnOk
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -296,7 +296,7 @@
btnCancel
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -304,7 +304,7 @@
2
-
+
Vertical
@@ -324,7 +324,7 @@
labelControl3
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpHotelMode
@@ -348,7 +348,7 @@
labelControl2
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpHotelMode
@@ -375,7 +375,7 @@
cbDtvUpdate
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpHotelMode
@@ -402,7 +402,7 @@
cbHotelMode
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpHotelMode
@@ -429,7 +429,7 @@
grpHotelMode
- DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -456,7 +456,7 @@
cbAutoChannelUpdate
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpSetup
@@ -483,7 +483,7 @@
grpSetup
- DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -510,7 +510,7 @@
labelControl4
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpInformation
@@ -537,7 +537,7 @@
grpInformation
- DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -567,7 +567,7 @@
lblHotelMenuAutoDetect
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -594,6 +594,6 @@
TvSettingsForm
- DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
\ No newline at end of file
diff --git a/ChanSort.sln b/ChanSort.sln
index d4fdc4e..336ea74 100644
--- a/ChanSort.sln
+++ b/ChanSort.sln
@@ -9,18 +9,18 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ChanSort", "ChanSort\ChanSo
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ChanSort.Api", "ChanSort.Api\ChanSort.Api.csproj", "{DCCFFA08-472B-4D17-BB90-8F513FC01392}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ChanSort.Loader.TllFile", "ChanSort.Loader.TllFile\ChanSort.Loader.TllFile.csproj", "{E972D8A1-2F5F-421C-AC91-CFF45E5191BE}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ChanSort.Loader.LG", "ChanSort.Loader.TllFile\ChanSort.Loader.LG.csproj", "{E972D8A1-2F5F-421C-AC91-CFF45E5191BE}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{67AED502-8AEB-45F2-9B95-AC42B6A5D2C4}"
ProjectSection(SolutionItems) = preProject
readme.txt = readme.txt
EndProjectSection
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Test.Loader.TllFile", "Test.Loader.TllFile\Test.Loader.TllFile.csproj", "{68CFCB2F-B52A-43A1-AA5C-5D64A1D655D2}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Test.Loader", "Test.Loader.TllFile\Test.Loader.csproj", "{68CFCB2F-B52A-43A1-AA5C-5D64A1D655D2}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ChanSort.Loader.ScmFile", "ChanSort.Loader.ScmFile\ChanSort.Loader.ScmFile.csproj", "{A1C9A98D-368A-44E8-9B7F-7EACA46C9EC5}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ChanSort.Loader.Samsung", "ChanSort.Loader.ScmFile\ChanSort.Loader.Samsung.csproj", "{A1C9A98D-368A-44E8-9B7F-7EACA46C9EC5}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ChanSort.Loader.DbFile", "ChanSort.Loader.DbFile\ChanSort.Loader.DbFile.csproj", "{F6F02792-07F1-48D5-9AF3-F945CA5E3931}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ChanSort.Loader.Toshiba", "ChanSort.Loader.DbFile\ChanSort.Loader.Toshiba.csproj", "{F6F02792-07F1-48D5-9AF3-F945CA5E3931}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ChanSort.Loader.Panasonic", "ChanSort.Loader.Panasonic\ChanSort.Loader.Panasonic.csproj", "{68DA8072-3A29-4076-9F64-D66F38349585}"
EndProject
diff --git a/ChanSort/AboutForm.resx b/ChanSort/AboutForm.resx
index 066b2b2..af3bfc4 100644
--- a/ChanSort/AboutForm.resx
+++ b/ChanSort/AboutForm.resx
@@ -135,7 +135,7 @@
labelControl1
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -166,7 +166,7 @@
lnkDownload
- DevExpress.XtraEditors.HyperLinkEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.HyperLinkEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -226,7 +226,7 @@
gcPlugins
- DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
horst@beham.biz
@@ -247,7 +247,7 @@
lnkEmail
- DevExpress.XtraEditors.HyperLinkEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.HyperLinkEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -271,7 +271,7 @@
labelControl2
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -295,7 +295,7 @@
labelControl4
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -325,7 +325,7 @@
lnkLicense
- DevExpress.XtraEditors.HyperLinkEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.HyperLinkEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -349,7 +349,7 @@
labelControl5
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -373,7 +373,7 @@
txtCredits
- DevExpress.XtraEditors.MemoEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.MemoEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -400,7 +400,7 @@
simpleButton1
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -424,7 +424,7 @@
labelControl3
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -451,30 +451,30 @@
gvPlugins
- DevExpress.XtraGrid.Views.Grid.GridView, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Views.Grid.GridView, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colPlugin
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colDisplayText
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colFileTypes
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
AboutForm
- DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
\ No newline at end of file
diff --git a/ChanSort/ChanSort.csproj b/ChanSort/ChanSort.csproj
index 08647bf..c0be3ca 100644
--- a/ChanSort/ChanSort.csproj
+++ b/ChanSort/ChanSort.csproj
@@ -58,22 +58,22 @@
app.ico
-
+
False
-
+
False
-
+
False
-
+
False
-
+
False
-
+
False
diff --git a/ChanSort/CharsetForm.resx b/ChanSort/CharsetForm.resx
index 0782b3d..77cbdf6 100644
--- a/ChanSort/CharsetForm.resx
+++ b/ChanSort/CharsetForm.resx
@@ -138,13 +138,13 @@
btnCancel
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
433, 446
- DevExpress.XtraGrid.Views.Grid.GridView, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Views.Grid.GridView, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
CharsetForm
@@ -178,11 +178,11 @@
0
-
+
Center
-
+
None
@@ -196,7 +196,7 @@
Top, Right
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
Fill
@@ -211,10 +211,10 @@
$this
- DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colName
@@ -259,7 +259,7 @@
gcCharset
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
Default character set for my country
@@ -274,7 +274,7 @@
353, 6
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
75, 23
@@ -337,7 +337,7 @@
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
433, 483
@@ -346,17 +346,17 @@
142
- DevExpress.XtraEditors.PanelControl, DevExpress.Utils.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.PanelControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
True
-
+
Default
- DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
True
diff --git a/ChanSort/GlobalImageCollection.cs b/ChanSort/GlobalImageCollection.cs
index 5ae7142..c4be357 100644
--- a/ChanSort/GlobalImageCollection.cs
+++ b/ChanSort/GlobalImageCollection.cs
@@ -41,8 +41,9 @@ namespace ChanSort.Ui
///
private void InitializeComponent()
{
+ this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(GlobalImageCollectionHolder));
- this.sharedImageCollection1 = new DevExpress.Utils.SharedImageCollection();
+ this.sharedImageCollection1 = new DevExpress.Utils.SharedImageCollection(this.components);
((System.ComponentModel.ISupportInitialize)(this.sharedImageCollection1)).BeginInit();
//
// sharedImageCollection1
@@ -80,6 +81,7 @@ namespace ChanSort.Ui
this.sharedImageCollection1.ImageSource.Images.SetKeyName(26, "0026.png");
this.sharedImageCollection1.ImageSource.Images.SetKeyName(27, "0027.png");
this.sharedImageCollection1.ImageSource.Images.SetKeyName(28, "0028.png");
+ this.sharedImageCollection1.ImageSource.Images.SetKeyName(29, "0029.png");
this.sharedImageCollection1.ParentControl = null;
((System.ComponentModel.ISupportInitialize)(this.sharedImageCollection1)).EndInit();
diff --git a/ChanSort/GlobalImageCollection.resx b/ChanSort/GlobalImageCollection.resx
index 22f1b54..829fc82 100644
--- a/ChanSort/GlobalImageCollection.resx
+++ b/ChanSort/GlobalImageCollection.resx
@@ -120,16 +120,16 @@
17, 17
-
+
AAEAAAD/////AQAAAAAAAAAMAgAAAFpEZXZFeHByZXNzLlV0aWxzLnYxMi4yLCBWZXJzaW9uPTEyLjIu
- Ni4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEMAwAAAFFT
+ OC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEMAwAAAFFT
eXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRv
a2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAAChEZXZFeHByZXNzLlV0aWxzLkltYWdlQ29sbGVjdGlvblN0
cmVhbWVyAgAAAAlJbWFnZVNpemUERGF0YQQHE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAAgIAAAAF/P//
/xNTeXN0ZW0uRHJhd2luZy5TaXplAgAAAAV3aWR0aAZoZWlnaHQAAAgIAwAAABAAAAAQAAAACQUAAAAP
- BQAAALhJAAACDgMAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAARnQU1BAACxjwv8
+ BQAAAJNLAAACDgMAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAACukAAArpAf11ztMAAAAqdEVYdENyZWF0aW9uIFRpbWUATWkgMSBNcnogMjAwNiAx
NToxMDo1MSArMDEwMP/NqUUAAAAHdElNRQfWAwEODCaDia/cAAACZ0lEQVQ4T82S7UsTUBSH75eCCAx6
oTAqg7BMRKjoQ6S9Oa1I10gzU8PUZmYpKEamy8gCX8iS2YxqiRmREMrUltEoLdSMps458wXUEiW0UToN
@@ -397,7 +397,7 @@
BU25oE+nK5DlAjr9T4HMAlcqIFiBQAemTNAmuI07BW7Sq8HJggRT7Sz47uDNWhggoBjTQnov/f4bvmET
bqiCRBvTQAWNQ3RZENP+Gf2EJXRlAqnS17lium7DHJaYmMb3KMxhiQ7dAovxvA/msGQsgTks2Yar6gWi
aB5TNw92LAAAAABJRU5ErkJggvkDAACJUE5HDQoaCgAAAA1JSERSAAAAEAAAABAIBgAAAB/z/2EAAAAE
- Z0FNQQAAsY8L/GEFAAAACXBIWXMAAA7BAAAOwQG4kWvtAAAAGnRFWHRTb2Z0d2FyZQBQYWludC5ORVQg
+ Z0FNQQAAsY8L/GEFAAAACXBIWXMAAA6/AAAOvwE4BVMkAAAAGnRFWHRTb2Z0d2FyZQBQYWludC5ORVQg
djMuNS4xMDD0cqEAAAN1SURBVDhPbZNrUJRlGIa/JXGL06KyoZZCA3kgtXIcKmYKRyVTbARJ2sXlGCuC
KCwU6bIsISgeQDJJA4IhYHEBUSIJGJihIkhEflAzkD+IoS11OMTADOeBq4/PGc2Zftzvv+t63vd55xaA
x/lzeOC38o4yjLUniSqPILj4Qw6XhmO8oae6vQrLQwuzs7NW/2WkY35+3qrrjy4yGlI405zKuZY0MpoN
@@ -443,12 +443,20 @@
lL7SYSYhBCSLA50VmyNLwCIX+lN11MnJsrHiQFnXHJLfGKG+Uw2SxoKCXNhYZI5w5yZiROJ829K3wiGv
Yw6pPUZ0yMtAif4gon+TGIBhiUu9pW+FQ+pzHZ/Ra4RCfg8UexoUcxIU5WuOcMf5QyMRVVv6VtiKw2VJ
UU9n+POKCRiC3H5TejgoLcwcds+fk2zHONp7Wfr/xe7wheuce37ry0xn+8vaQI/F5Ug/CBHuAtH+WNbZ
- Y67uji3LPpa9LK4spywRbja2sfkDNmCxwsesQzEAAAAASUVORK5CYIIL
+ Y67uji3LPpa9LK4spywRbja2sfkDNmCxwsesQzEAAAAASUVORK5CYILXAQAAiVBORw0KGgoAAAANSUhE
+ UgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsIA
+ AA7CARUoSoAAAAAHdElNRQfWAxoOERLaSefrAAAAGnRFWHRTb2Z0d2FyZQBQYWludC5ORVQgdjMuNS4x
+ MDD0cqEAAAEzSURBVDhPYxg8YNbs6RcaGhr+E4N7+7tWQ7UhAEiCWABSC9WGADADPnx4jxeDQH8kEwzH
+ QLWjGnD8+DGsGCQH0vju1bH/59cWgtlQ7cS5AKTh/evj/y+tyfq/sDn0D04DsNmOrHlJeziYD8TGUO34
+ XQBS/PbZ0f/nV2X+X9AchqkZBHC5AKz56ZH/J+an/F/QArG5syEL5nRGKI3dBe/fv/tfEG35/9Dqrv+L
+ W0PBmp/fOQWLRpBmVAP+/fuLohmkwcdJ7X92uBmYfebgeqD4e5gBrBCdUAAS/PXrJ9yAd+/eghSBNW5e
+ Oe3/oUOH/p8+fer/o0ePYAZwgDXCAEgQGfz79+//9+/f/798+RKs6enTp/9fvXqF7AI2iE4o6OnrXAyS
+ IAZ393YsBmpB+J98wMAAAEBy/BniHbchAAAAAElFTkSuQmCCCw==
- 04/07/2013 16:39:41
+ 04/21/2013 20:54:27
diff --git a/ChanSort/MainForm.Designer.cs b/ChanSort/MainForm.Designer.cs
index f077c91..e57be85 100644
--- a/ChanSort/MainForm.Designer.cs
+++ b/ChanSort/MainForm.Designer.cs
@@ -56,7 +56,7 @@
this.btnRenum = new DevExpress.XtraEditors.SimpleButton();
this.btnDown = new DevExpress.XtraEditors.SimpleButton();
this.btnUp = new DevExpress.XtraEditors.SimpleButton();
- this.btnRemove = new DevExpress.XtraEditors.SimpleButton();
+ this.btnRemoveLeft = new DevExpress.XtraEditors.SimpleButton();
this.grpInputList = new DevExpress.XtraEditors.GroupControl();
this.gridRight = new DevExpress.XtraGrid.GridControl();
this.gviewRight = new DevExpress.XtraGrid.Views.Grid.GridView();
@@ -88,8 +88,10 @@
this.colNetworkOperator = new DevExpress.XtraGrid.Columns.GridColumn();
this.colDebug = new DevExpress.XtraGrid.Columns.GridColumn();
this.colLogicalIndex = new DevExpress.XtraGrid.Columns.GridColumn();
+ this.colSignalSource = new DevExpress.XtraGrid.Columns.GridColumn();
this.lblHotkeyRight = new DevExpress.XtraEditors.LabelControl();
this.panelControl3 = new DevExpress.XtraEditors.PanelControl();
+ this.btnRemoveRight = new DevExpress.XtraEditors.SimpleButton();
this.btnAddAll = new DevExpress.XtraEditors.SimpleButton();
this.btnClearRightFilter = new DevExpress.XtraEditors.SimpleButton();
this.btnAdd = new DevExpress.XtraEditors.SimpleButton();
@@ -107,6 +109,7 @@
this.miEdit = new DevExpress.XtraBars.BarSubItem();
this.miAddChannel = new DevExpress.XtraBars.BarButtonItem();
this.miRemove = new DevExpress.XtraBars.BarButtonItem();
+ this.miRenameChannel = new DevExpress.XtraBars.BarButtonItem();
this.miSort = new DevExpress.XtraBars.BarButtonItem();
this.miRenum = new DevExpress.XtraBars.BarButtonItem();
this.mnuFavSet = new DevExpress.XtraBars.BarSubItem();
@@ -154,7 +157,7 @@
this.tabChannelList = new DevExpress.XtraTab.XtraTabControl();
this.pageEmpty = new DevExpress.XtraTab.XtraTabPage();
this.mnuContext = new DevExpress.XtraBars.PopupMenu(this.components);
- this.colSignalSource = new DevExpress.XtraGrid.Columns.GridColumn();
+ this.timerEditDelay = new System.Windows.Forms.Timer(this.components);
((System.ComponentModel.ISupportInitialize)(this.splitContainerControl1)).BeginInit();
this.splitContainerControl1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.grpOutputList)).BeginInit();
@@ -342,7 +345,7 @@
this.pnlEditControls.Controls.Add(this.btnRenum);
this.pnlEditControls.Controls.Add(this.btnDown);
this.pnlEditControls.Controls.Add(this.btnUp);
- this.pnlEditControls.Controls.Add(this.btnRemove);
+ this.pnlEditControls.Controls.Add(this.btnRemoveLeft);
resources.ApplyResources(this.pnlEditControls, "pnlEditControls");
this.pnlEditControls.Name = "pnlEditControls";
//
@@ -424,13 +427,13 @@
this.btnUp.Name = "btnUp";
this.btnUp.Click += new System.EventHandler(this.btnUp_Click);
//
- // btnRemove
+ // btnRemoveLeft
//
- this.btnRemove.ImageIndex = 11;
- this.btnRemove.ImageList = this.globalImageCollection1;
- resources.ApplyResources(this.btnRemove, "btnRemove");
- this.btnRemove.Name = "btnRemove";
- this.btnRemove.Click += new System.EventHandler(this.btnRemove_Click);
+ this.btnRemoveLeft.ImageIndex = 11;
+ this.btnRemoveLeft.ImageList = this.globalImageCollection1;
+ resources.ApplyResources(this.btnRemoveLeft, "btnRemoveLeft");
+ this.btnRemoveLeft.Name = "btnRemoveLeft";
+ this.btnRemoveLeft.Click += new System.EventHandler(this.btnRemoveLeft_Click);
//
// grpInputList
//
@@ -716,6 +719,13 @@
this.colLogicalIndex.OptionsColumn.AllowEdit = false;
this.colLogicalIndex.OptionsColumn.ReadOnly = true;
//
+ // colSignalSource
+ //
+ resources.ApplyResources(this.colSignalSource, "colSignalSource");
+ this.colSignalSource.FieldName = "SignalSource";
+ this.colSignalSource.Name = "colSignalSource";
+ this.colSignalSource.OptionsColumn.AllowEdit = false;
+ //
// lblHotkeyRight
//
resources.ApplyResources(this.lblHotkeyRight, "lblHotkeyRight");
@@ -723,12 +733,21 @@
//
// panelControl3
//
+ this.panelControl3.Controls.Add(this.btnRemoveRight);
this.panelControl3.Controls.Add(this.btnAddAll);
this.panelControl3.Controls.Add(this.btnClearRightFilter);
this.panelControl3.Controls.Add(this.btnAdd);
resources.ApplyResources(this.panelControl3, "panelControl3");
this.panelControl3.Name = "panelControl3";
//
+ // btnRemoveRight
+ //
+ this.btnRemoveRight.ImageIndex = 11;
+ this.btnRemoveRight.ImageList = this.globalImageCollection1;
+ resources.ApplyResources(this.btnRemoveRight, "btnRemoveRight");
+ this.btnRemoveRight.Name = "btnRemoveRight";
+ this.btnRemoveRight.Click += new System.EventHandler(this.btnRemoveRight_Click);
+ //
// btnAddAll
//
resources.ApplyResources(this.btnAddAll, "btnAddAll");
@@ -792,6 +811,7 @@
this.miMoveDown,
this.miAddChannel,
this.miRemove,
+ this.miRenameChannel,
this.miSort,
this.miRenum,
this.mnuFavSet,
@@ -809,7 +829,7 @@
this.miEraseChannelData,
this.miOpenWebsite,
this.miWiki});
- this.barManager1.MaxItemId = 52;
+ this.barManager1.MaxItemId = 53;
//
// bar1
//
@@ -938,6 +958,7 @@
this.miEdit.LinksPersistInfo.AddRange(new DevExpress.XtraBars.LinkPersistInfo[] {
new DevExpress.XtraBars.LinkPersistInfo(this.miAddChannel),
new DevExpress.XtraBars.LinkPersistInfo(this.miRemove),
+ new DevExpress.XtraBars.LinkPersistInfo(this.miRenameChannel),
new DevExpress.XtraBars.LinkPersistInfo(this.miSort),
new DevExpress.XtraBars.LinkPersistInfo(this.miRenum),
new DevExpress.XtraBars.LinkPersistInfo(DevExpress.XtraBars.BarLinkUserDefines.PaintStyle, this.mnuFavSet, "", true, true, true, 0, null, DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph),
@@ -969,6 +990,16 @@
this.miRemove.Name = "miRemove";
this.miRemove.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.miRemove_ItemClick);
//
+ // miRenameChannel
+ //
+ resources.ApplyResources(this.miRenameChannel, "miRenameChannel");
+ this.miRenameChannel.CategoryGuid = new System.Guid("d7eec464-59c9-4f45-88aa-602e64c81cc0");
+ this.miRenameChannel.Id = 52;
+ this.miRenameChannel.ImageIndex = 29;
+ this.miRenameChannel.ItemShortcut = new DevExpress.XtraBars.BarShortcut((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.N));
+ this.miRenameChannel.Name = "miRenameChannel";
+ this.miRenameChannel.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.miRenameChannel_ItemClick);
+ //
// miSort
//
resources.ApplyResources(this.miSort, "miSort");
@@ -1390,6 +1421,7 @@
new DevExpress.XtraBars.LinkPersistInfo(this.miMoveDown),
new DevExpress.XtraBars.LinkPersistInfo(this.miAddChannel),
new DevExpress.XtraBars.LinkPersistInfo(this.miRemove),
+ new DevExpress.XtraBars.LinkPersistInfo(this.miRenameChannel),
new DevExpress.XtraBars.LinkPersistInfo(this.miSort),
new DevExpress.XtraBars.LinkPersistInfo(this.miRenum),
new DevExpress.XtraBars.LinkPersistInfo(DevExpress.XtraBars.BarLinkUserDefines.PaintStyle, this.mnuFavSet, "", true, true, true, 0, null, DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph),
@@ -1403,12 +1435,10 @@
this.mnuContext.Manager = this.barManager1;
this.mnuContext.Name = "mnuContext";
//
- // colSignalSource
+ // timerEditDelay
//
- resources.ApplyResources(this.colSignalSource, "colSignalSource");
- this.colSignalSource.FieldName = "SignalSource";
- this.colSignalSource.Name = "colSignalSource";
- this.colSignalSource.OptionsColumn.AllowEdit = false;
+ this.timerEditDelay.Interval = 500;
+ this.timerEditDelay.Tick += new System.EventHandler(this.timerEditDelay_Tick);
//
// MainForm
//
@@ -1473,7 +1503,7 @@
private DevExpress.XtraGrid.Columns.GridColumn colUid;
private DevExpress.XtraGrid.Columns.GridColumn colName;
private DevExpress.XtraEditors.GroupControl grpOutputList;
- private DevExpress.XtraEditors.SimpleButton btnRemove;
+ private DevExpress.XtraEditors.SimpleButton btnRemoveLeft;
private DevExpress.XtraEditors.GroupControl grpInputList;
private DevExpress.XtraEditors.SimpleButton btnAdd;
private DevExpress.XtraGrid.GridControl gridLeft;
@@ -1587,6 +1617,9 @@
private DevExpress.XtraGrid.Columns.GridColumn colOutLock;
private DevExpress.XtraGrid.Columns.GridColumn colOutServiceType;
private DevExpress.XtraGrid.Columns.GridColumn colSignalSource;
+ private DevExpress.XtraEditors.SimpleButton btnRemoveRight;
+ private System.Windows.Forms.Timer timerEditDelay;
+ private DevExpress.XtraBars.BarButtonItem miRenameChannel;
private DevExpress.XtraSplashScreen.SplashScreenManager splashScreenManager1;
}
}
diff --git a/ChanSort/MainForm.cs b/ChanSort/MainForm.cs
index 2d8b6b3..e2eb5cc 100644
--- a/ChanSort/MainForm.cs
+++ b/ChanSort/MainForm.cs
@@ -23,7 +23,7 @@ namespace ChanSort.Ui
{
public partial class MainForm : XtraForm
{
- public const string AppVersion = "v2013-04-11";
+ public const string AppVersion = "v2013-04-21";
#region enum EditMode
private enum EditMode
@@ -224,16 +224,6 @@ namespace ChanSort.Ui
this.UpdateFavoritesEditor(this.dataRoot.SupportedFavorites);
this.colName.OptionsColumn.AllowEdit = this.currentTvSerializer.Features.ChannelNameEdit;
this.colOutName.OptionsColumn.AllowEdit = this.currentTvSerializer.Features.ChannelNameEdit;
-
- if (this.dataRoot.Warnings.Length > 0)
- {
- var lines = this.dataRoot.Warnings.ToString().Split('\n');
- Array.Sort(lines);
- var sortedWarnings = String.Join("\n", lines);
- InfoBox.Show(this,
- Resources.MainForm_LoadFiles_ValidationWarningMsg + "\r\n\r\n" + sortedWarnings,
- Resources.MainForm_LoadFiles_ValidationWarningCap);
- }
}
catch (Exception ex)
{
@@ -948,6 +938,7 @@ namespace ChanSort.Ui
if (col == this.colIndex) return col.Visible;
if (col == this.colUid) return col.Visible;
if (col == this.colDebug) return colDebug.Visible;
+ if (col == this.colSignalSource) return col.Visible;
if (col == this.colLogicalIndex) return colLogicalIndex.Visible;
if (col == this.colPolarity) return false;
@@ -1043,7 +1034,6 @@ namespace ChanSort.Ui
this.miRenum.Visibility = visLeft;
this.miMoveUp.Visibility = visLeft;
this.miMoveDown.Visibility = visLeft;
- this.miRemove.Visibility = visLeft;
this.miAddChannel.Visibility = visRight;
var sel = this.gviewLeft.GetSelectedRows();
@@ -1096,6 +1086,15 @@ namespace ChanSort.Ui
if (this.currentTvSerializer == null)
return;
var info = this.currentTvSerializer.GetFileInformation();
+
+ if (this.dataRoot.Warnings.Length > 0)
+ {
+ var lines = this.dataRoot.Warnings.ToString().Split('\n');
+ Array.Sort(lines);
+ var sortedWarnings = String.Join("\n", lines);
+ info += Resources.MainForm_LoadFiles_ValidationWarningMsg + "\r\n\r\n" + sortedWarnings;
+ }
+
InfoBox.Show(this, info, this.miFileInformation.Caption.Replace("...", "").Replace("&",""));
}
#endregion
@@ -1150,6 +1149,20 @@ namespace ChanSort.Ui
}
#endregion
+ #region RenameChannel()
+ private void RenameChannel()
+ {
+ if (this.lastFocusedGrid == null) return;
+
+ if (this.lastFocusedGrid == this.gviewLeft)
+ this.gviewLeft.FocusedColumn = this.colOutName;
+ else
+ this.gviewRight.FocusedColumn = this.colName;
+ this.dontOpenEditor = false;
+ this.lastFocusedGrid.ShowEditor();
+ }
+ #endregion
+
// UI events
#region MainForm_Load
@@ -1235,6 +1248,11 @@ namespace ChanSort.Ui
this.TryExecute(() => this.RemoveChannels(this.lastFocusedGrid, this.cbCloseGap.Checked));
}
+ private void miRenameChannel_ItemClick(object sender, ItemClickEventArgs e)
+ {
+ this.TryExecute(this.RenameChannel);
+ }
+
private void miSort_ItemClick(object sender, ItemClickEventArgs e)
{
this.TryExecute(this.SortSelectedChannels);
@@ -1389,9 +1407,9 @@ namespace ChanSort.Ui
}
#endregion
- #region gview_MouseDown, gview_MouseUp, gview_ShowingEditor
+ #region gview_MouseDown, gview_MouseUp, timerEditDelay_Tick, gview_ShowingEditor
- // these 3 event handler in combination override the default row-selection and editor-opening
+ // these 4 event handler in combination override the default row-selection and editor-opening
// behavior of the grid control.
private void gview_MouseDown(object sender, MouseEventArgs e)
@@ -1405,26 +1423,35 @@ namespace ChanSort.Ui
if (ModifierKeys == Keys.None)
{
if (hit.RowHandle != view.FocusedRowHandle)
- {
SelectFocusedRow(view, hit.RowHandle);
- this.dontOpenEditor = true;
- }
- else if (e.Clicks > 1)
- this.dontOpenEditor = true;
+ this.timerEditDelay.Start();
}
- else if (ModifierKeys == Keys.Control && !view.IsRowSelected(hit.RowHandle))
- this.BeginInvoke((Action)(()=>view.SelectRow(hit.RowHandle)));
- }
+ else
+ {
+ if (ModifierKeys == Keys.Control && !view.IsRowSelected(hit.RowHandle))
+ this.BeginInvoke((Action) (() => view.SelectRow(hit.RowHandle)));
+ }
+ }
else if (e.Button == MouseButtons.Right)
{
if (!view.IsRowSelected(hit.RowHandle))
SelectFocusedRow(view, hit.RowHandle);
}
+
+ this.dontOpenEditor = true;
}
private void gview_MouseUp(object sender, MouseEventArgs e)
{
- this.BeginInvoke((Action) (() => this.dontOpenEditor = false));
+ this.timerEditDelay.Stop();
+ }
+
+ private void timerEditDelay_Tick(object sender, EventArgs e)
+ {
+ this.timerEditDelay.Stop();
+ this.dontOpenEditor = false;
+ if (this.lastFocusedGrid != null)
+ this.lastFocusedGrid.ShowEditor();
}
private void gview_ShowingEditor(object sender, System.ComponentModel.CancelEventArgs e)
@@ -1712,12 +1739,17 @@ namespace ChanSort.Ui
}
#endregion
- #region btnRemove_Click
+ #region btnRemoveLeft_Click, btnRemoveRight_Click
- private void btnRemove_Click(object sender, EventArgs e)
+ private void btnRemoveLeft_Click(object sender, EventArgs e)
{
TryExecute(() => this.RemoveChannels(this.gviewLeft, this.cbCloseGap.Checked));
}
+
+ private void btnRemoveRight_Click(object sender, EventArgs e)
+ {
+ this.TryExecute(() => this.RemoveChannels(this.gviewRight, this.cbCloseGap.Checked));
+ }
#endregion
#region btnUp_Click, btnDown_Click
@@ -1847,5 +1879,6 @@ namespace ChanSort.Ui
this.SetActiveGrid(this.gviewRight);
}
#endregion
+
}
}
diff --git a/ChanSort/MainForm.de.resx b/ChanSort/MainForm.de.resx
index f1f0b0a..54b2bc1 100644
--- a/ChanSort/MainForm.de.resx
+++ b/ChanSort/MainForm.de.resx
@@ -117,51 +117,6 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
-
-
-
-
-
-
-
- Default
-
-
-
- Top, Left
-
-
-
-
-
- Tile
-
-
- Inherit
-
-
-
- Center
-
-
-
-
-
-
- None
-
-
-
-
-
-
- Horizontal
-
-
-
-
Neue Pr#
@@ -174,365 +129,19 @@
Favoriten
-
- Default
-
-
-
- False
-
-
- True
-
-
- _
-
-
- True
-
-
- True
-
-
- False
-
Ge- sperrt
Kindersicherung
+
333, 17
F3: Filter | F4: Liste | -: nach oben | +: nach unten | Entf: entfernen
-
-
- AAEAAAD/////AQAAAAAAAAAMAgAAAFpEZXZFeHByZXNzLlV0aWxzLnYxMi4yLCBWZXJzaW9uPTEyLjIu
- Ni4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEMAwAAAFFT
- eXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRv
- a2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAAChEZXZFeHByZXNzLlV0aWxzLkltYWdlQ29sbGVjdGlvblN0
- cmVhbWVyAgAAAAlJbWFnZVNpemUERGF0YQQHE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAAgIAAAAF/P//
- /xNTeXN0ZW0uRHJhd2luZy5TaXplAgAAAAV3aWR0aAZoZWlnaHQAAAgIAwAAABAAAAAQAAAACQUAAAAP
- BQAAAMBJAAACDgMAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAARnQU1BAACxjwv8
- YQUAAAAJcEhZcwAACukAAArpAf11ztMAAAAqdEVYdENyZWF0aW9uIFRpbWUATWkgMSBNcnogMjAwNiAx
- NToxMDo1MSArMDEwMP/NqUUAAAAHdElNRQfWAwEODCaDia/cAAACZ0lEQVQ4T82S7UsTUBSH75eCCAx6
- oTAqg7BMRKjoQ6S9Oa1I10gzU8PUZmYpKEamy8gCX8iS2YxqiRmREMrUltEoLdSMps458wXUEiW0UToN
- bdTTpaLtP6gDlwuXe57zO79zxP8RC1M7CCzqRSR0IZI7EepOvLO7CI4qRRGpxTejGRHTioiVd+RrAmMq
- 8FA+4k+6EGHJlfA4H+MoiMJviKtO7nbPQcJqOLaSNtsHxKUpxMUpzmobQX+aYI2E/Y3kftJ1LVClwfxF
- Qgp+cL3DKQG+ErAek2UUoZmloMwEFeco75hEhJrcAElWRD6ElA3CzVR6ZkDXA5zwgzgfntrsFGnroVLD
- leYZRKoEKp+5AP457TR0j/PA4uB9v4QMmGHWAepNcNyPuSEbziYDw2MT3GkcpuZVHz6JT1wA5dESiF0p
- q22ERH+ZuPn3ObVNqtgK0RsgfA0cWA57PWC3QLkz0wVQHSmGqCXy41qI8ZZ9S1CclK/eAvFSRYR8D10B
- +xeDYgHsEKgC0l0ArywrN2yQ1w7Wafg+0sfs9KSErvuV7Phsx/FxhD6LlexmJ8VtU6yKd/NAxMoZZ9k5
- //IrGHXoCu6ht8oxhnuCypP6tkHqeqUnpSmoi14gUkYQiho3QFQreou03lBIidYgRzaD3iwVHFwGYUsx
- tg4gzoxh6LbLHchAc82ICKp3AULy3sLDLHJLGhC5cmE0E1R1fpKmzZd9z6PpzTtEpqyaNsR98ziUp6EK
- vewCeETUERR9G3G4Ra5qI+KQCa+k5wTvuYBiVw4+cbWIfXWIkGpEYDUBJ2tZtP2WWwv/LoT4CbMJxWqJ
- cRPVAAAAAElFTkSuQmCCLgMAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAARnQU1B
- AACxjwv8YQUAAAAJcEhZcwAACukAAArpAf11ztMAAAArdEVYdENyZWF0aW9uIFRpbWUATWkgMzEgTXJ6
- IDIwMDQgMTM6NTc6MTYgKzAxMDAIvNkdAAAAB3RJTUUH1AMfDAE1TBPFhgAAAAZiS0dEAP8A/wD/oL2n
- kwAAAnRJREFUOE/Nj91LUwEYh4+VBFoG6ha5pgZmmWXl/JjjuHR+LLWZbLZp7cNNlmhaoReKIZhEdRNd
- e9U/EEUXXSRBhAV9XGSaSnWRYh9ikqbnmB7rPB1kMP+DeuHlvXmf5/29wv9Rubm5P81ms1JQUKDk5+cr
- JpNJycnJUbKzs5WsrCwlMzNTycjIUNLS0hSDwaCkpKQoCQkJyxFcEERRlIPBIM3NzbS0tBAOhwkEAni9
- XtxuN06nE4fDgd1ux2azYbVa0ev1qxFcECwWi+z3+2lqaiIUCm1Mn8+Hx+PB5XJRW1tLTU0N5eXlG7B2
- EJ1OFxVkFxbJznN+XN4A9b6ANn3UNZ7F4fZQ5aynzFFLSdUpzGUVmKylHLMUsz0xKSoYF3Urk0GRieZS
- xlsrmWivZrzNzruwjTG/yGhDHqOuo4xUH+CNzcioqGcwcdtaBBcE1RovEzZBWxFcLoXuk9BVAR3FcD4f
- AjnQkAl1qVCZDCXxPE2MiSZQinbIBHO15UK4oEGXNElHCbRaIJQH3iNwZj84jFCeBGIcQwmbBY07V9Tu
- ItTeYtT+MtQBO+rVCtS+E6g9ZtROE2r7IdRwOqpPB+54ho/HRF9Y/7BXZq0LfvcBt7Qe1Po2/OmH1U5Y
- DsKCE2a1VDOHYWo3nx9t3ZTgbYrM4kWQejTgOqxr8NpNkK9oYAfM+eDrafikvfc+Cyb0TN/fJFgdMcgs
- RQS/BkC5oQmuwUovLGqC+QB8q4NpET4ehMlkpu5uiQqk4djv8mujtPwqVVp6mSYtvtgnLTxPl+afGaW5
- JwZp9vEe6ctQkjTzcJc0/SBOmroXK43dEX5E8H9agvAXG8CZjO1x3DgAAAAASUVORK5CYIK/AgAAiVBO
- Rw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAK6QAA
- CukB/XXO0wAAACt0RVh0Q3JlYXRpb24gVGltZQBEaSAzMCBNcnogMjAwNCAxODozNDoxNyArMDEwMCLQ
- kMIAAAAHdElNRQfUAx4QJiq2XkdnAAACF0lEQVQ4T82S309SYRjHT5YzJRDJ6obc3BoXWRa5GIhoa2ZX
- rqvWTavVapn9Wrn+gbqo/6Gr6iIuIGaz1cpliEzJHyVgDqfBLNBxhAOe94XjK9u3w/EY6ta8rOfy3b6f
- 5/vu83D/x7Cmndm8fQ8Tm3VMsFUz3qpnCYuezZt17Eejls0c1rApUyX7Wl/BAsZy5jtQxjxVnKjGOW61
- TUdx9QRw0wbcOwU8PAs8aAduO4DrJ4FLjcAFE3CuDuioBRwaDO7bIalxuUGrDLhiBrpkwN02oEcO3z8N
- 3GoBrhUBR1XAQRVQBW/tBoDk0FJcPra2rdsO3Gld237DCqXZxQbg/CGg0wi0GwB7JQb2bgDMeV7mlv3v
- QQP9WJnwYnVyCOybD7nRAYjDHyB4+8D3e7Dw1ol5z3PMOZ/hzdPHK2qc48LhME2n0xBFEZIkoVAogDEG
- SikymQx4nkcikUAsFkMkEkEoFILb7S41kB9oKpVCNptVQkVIPp9XgIIgIJlMIh6PIxqNKoBgMAiXy1UC
- zL5+kRPGB7E8OQwyNYrc9Djo9zGIoQAyE34sffmMRf9H/PrUh+g7N2Z6X6H3yaPSF/5oLFpQNHZsq9H3
- d40yoOfMFo3rgG01WjZr7FrXeGSzxpYtGql5Fy+fMRGa9WTJVkMWrQby02IgsaYaMnu8mkw3aEnQpCFj
- 9bvJiLGc+PaXEWcFl1bj/3Q47jfWuMy1hgtjeQAAAABJRU5ErkJggucBAACJUE5HDQoaCgAAAA1JSERS
- AAAAEAAAABAIBgAAAB/z/2EAAAABc1JHQgCuzhzpAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAA
- DrwBlbxySQAAAXxJREFUOE+9ki2MhDAUhJErkVgkcuXalUgkFolE1lZWIrGVlUgsEllZW1lZOfdeYf9u
- 95ITl3vJhAT6zUxbsn+ZECLkqCGUpqeBdQ7Hp99NN4xw3icINGzmQ0BL78k9wGj1Jue2H1OYaXqFuieD
- tNhqxGiSEDRpOkzsR5MbXHeHQSToGU6yA/SkSBLTyBIYFWt4Nb0ZvMBOkEH3UW8GnBL9AZIWo5JmFpkb
- LWGoBTfR1IKbTKnJ0YY/RD8m2K0yQXAS8N/E77iZG6hJD2saLLNBxvuLjiC/p64LG/Ci5+otsDXAWiMu
- VzhdQfQtnVvcDYKV8Kt4pFPCHd4IPsA4XxDMGbIvsSyUzsP7CVaka9vWp3QG76kEzmeCK2wyR1uXezoP
- H4ZddoO0xxeQU3fQ6xJW5ZBdCaXk4yZGOSTYzj02ld21khZ1wixPMCLHNBQYSZzuj986jSIDJTtI0dHB
- NOi7Gl1zRVNfcL1UOFclqrJAUeTI8xMK0oH+xWTZF9s+A36qvos7AAAAAElFTkSuQmCC8gEAAIlQTkcN
- ChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAAFzUkdCAK7OHOkAAAAEZ0FNQQAAsY8L/GEFAAAA
- CXBIWXMAAA68AAAOvAGVvHJJAAABh0lEQVQ4T62SIY+EMBCF+Qknz648WVmLRFZikUgkFlm5shZZWYlF
- IldiK5HIuffaJbCby4nLTfKSDdv3zcxri3+pEHY55D00bjJCzkW536NYCw2rDFDfP6TroPYhT3sGTJPg
- sPxaO1TVk9R1SHrai4JdCbB2yyd/KJq3bRdtJlGqEWP8CeC4BAxDzKff6jCvcRdVBayxAjCeAOcyoOvW
- 7LjU1fxYN/kqfcrAVO4CQFAEtAjmWu/m+RHlsxylaRaprgAmTQD/OOon87RE+dAjApwBuJ8Aa9cECCFD
- DA8g7RQYdubY7HyYDb6XpT0BvF+avRfcP29jR6BbCpWBcWeud5grE14BfBzJ7PgWdnTvXmSaTuq2z2ZM
- VFYegOEEsMNhZmea8FmULmXB/syg6YZshDTW0bq/ADCeA+AYmwCa294ixE0iguzwW9EIKe1eAW27PPeO
- ckNgN1WKD7OEaZZpXmReeG0mGQ9pnabMxQ5Nw4B8emF8JLxnXhXDyhpS1yxMqNoT8Pcqim88sz2Gvhgj
- 5QAAAABJRU5ErkJggrEBAACJUE5HDQoaCgAAAA1JSERSAAAAEAAAABAIBgAAAB/z/2EAAAABc1JHQgCu
- zhzpAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAAAUZJREFUOE+dUqGygzAQ5DOw
- SCQSi6ysxFZW9hcqkchYJDISGxmJjEUikft2mbQ8pq8t83bmBnJ3m8vdbXIEIAbvEY/HIaIwzTPODhhD
- OHbJNE0w1uPW0+yIK+3ECy78CjHtFQrawaPqJlTDgnIAShILuyDvZxQ0Y+l4d4l1JDOpNB61cbh0DufO
- I+tmZCYgbQOyZlxbipQNM51V6/gCh2VZ1iqC+s76BVk7om4tvH/ThqYc/hhSx5ZqM8CPB/qPvzvoZR+J
- n/Bvoqo2vUPPiUfXE4qpnXjcoGraf9MP3MK4buP3TBTXQEsOWnnRvSHQWXLSVcck6kB7l5BaCupOO3G1
- qaHAWCBS9lCFG6ctYiajiFazQMo1SgN3wwMRKa9Qf7lEIwXyJQXFU7YeVxK/rvEB6SGndEOYVkE9RBXD
- 36Hkj3rfIUl+AJCNcVaotQnCAAAAAElFTkSuQmCCRAEAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgG
- AAAAH/P/YQAAAAFzUkdCAK7OHOkAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAAA
- 2UlEQVQ4T8WSIRKDMBBFc51KZC0yMjIWGRkZi0RWYiMrkVyBI9RWVlZu9yeEBqahFe30z7zJkt2/WSDi
- 6zqciIS9R5Kkf8YlNWc2onCLGuK6p+FSMOfsCuNyURg/ad5LOOdWKCVJ1hUtp4c1Vxp9htMrTq0ho7lB
- 3RO5cWPOjIkrm3K61GA1diYkUXTLTHm8TFASkijaGlO8TFASkn0rqXPqJci9bTB2FTXqGNE1GyJ4Ru6j
- Bvhl1lry3tM0TQHs/b4B1KgqXhgpSWtNxvCHY7CH1wgX6c8S4gEtwUamb8vaXgAAAABJRU5ErkJggoIM
- AACJUE5HDQoaCgAAAA1JSERSAAAAEAAAABAIBgAAAB/z/2EAAAAEZ0FNQQAAsY58+1GTAAAAIGNIUk0A
- AIcPAACMDwAA/VIAAIFAAAB9eQAA6YsAADzlAAAZzHM8hXcAAAo5aUNDUFBob3Rvc2hvcCBJQ0MgcHJv
- ZmlsZQAASMedlndUVNcWh8+9d3qhzTACUobeu8AA0nuTXkVhmBlgKAMOMzSxIaICEUVEmiJIUMSA0VAk
- VkSxEBRUsAckCCgxGEVULG9G1ouurLz38vL746xv7bP3ufvsvc9aFwCSpy+XlwZLAZDKE/CDPJzpEZFR
- dOwAgAEeYIApAExWRrpfsHsIEMnLzYWeIXICXwQB8HpYvAJw09AzgE4H/5+kWel8geiYABGbszkZLBEX
- iDglS5Auts+KmBqXLGYYJWa+KEERy4k5YZENPvsssqOY2ak8tojFOaezU9li7hXxtkwhR8SIr4gLM7mc
- LBHfErFGijCVK+I34thUDjMDABRJbBdwWIkiNhExiR8S5CLi5QDgSAlfcdxXLOBkC8SXcklLz+FzExIF
- dB2WLt3U2ppB9+RkpXAEAsMAJiuZyWfTXdJS05m8HAAW7/xZMuLa0kVFtjS1trQ0NDMy/apQ/3Xzb0rc
- 20V6Gfi5ZxCt/4vtr/zSGgBgzIlqs/OLLa4KgM4tAMjd+2LTOACApKhvHde/ug9NPC+JAkG6jbFxVlaW
- EZfDMhIX9A/9T4e/oa++ZyQ+7o/y0F058UxhioAurhsrLSVNyKdnpDNZHLrhn4f4Hwf+dR4GQZx4Dp/D
- E0WEiaaMy0sQtZvH5gq4aTw6l/efmvgPw/6kxbkWidL4EVBjjIDUdSpAfu0HKAoRINH7xV3/o2+++DAg
- fnnhKpOLc//vN/1nwaXiJYOb8DnOJSiEzhLyMxf3xM8SoAEBSAIqkAfKQB3oAENgBqyALXAEbsAb+IMQ
- EAlWAxZIBKmAD7JAHtgECkEx2An2gGpQBxpBM2gFx0EnOAXOg0vgGrgBboP7YBRMgGdgFrwGCxAEYSEy
- RIHkIRVIE9KHzCAGZA+5Qb5QEBQJxUIJEA8SQnnQZqgYKoOqoXqoGfoeOgmdh65Ag9BdaAyahn6H3sEI
- TIKpsBKsBRvDDNgJ9oFD4FVwArwGzoUL4B1wJdwAH4U74PPwNfg2PAo/g+cQgBARGqKKGCIMxAXxR6KQ
- eISPrEeKkAqkAWlFupE+5CYyiswgb1EYFAVFRxmibFGeqFAUC7UGtR5VgqpGHUZ1oHpRN1FjqFnURzQZ
- rYjWR9ugvdAR6AR0FroQXYFuQrejL6JvoyfQrzEYDA2jjbHCeGIiMUmYtZgSzD5MG+YcZhAzjpnDYrHy
- WH2sHdYfy8QKsIXYKuxR7FnsEHYC+wZHxKngzHDuuCgcD5ePq8AdwZ3BDeEmcQt4Kbwm3gbvj2fjc/Cl
- +EZ8N/46fgK/QJAmaBPsCCGEJMImQiWhlXCR8IDwkkgkqhGtiYFELnEjsZJ4jHiZOEZ8S5Ih6ZFcSNEk
- IWkH6RDpHOku6SWZTNYiO5KjyALyDnIz+QL5EfmNBEXCSMJLgi2xQaJGokNiSOK5JF5SU9JJcrVkrmSF
- 5AnJ65IzUngpLSkXKabUeqkaqZNSI1Jz0hRpU2l/6VTpEukj0lekp2SwMloybjJsmQKZgzIXZMYpCEWd
- 4kJhUTZTGikXKRNUDFWb6kVNohZTv6MOUGdlZWSXyYbJZsvWyJ6WHaUhNC2aFy2FVko7ThumvVuitMRp
- CWfJ9iWtS4aWzMstlXOU48gVybXJ3ZZ7J0+Xd5NPlt8l3yn/UAGloKcQqJClsF/hosLMUupS26WspUVL
- jy+9pwgr6ikGKa5VPKjYrzinpKzkoZSuVKV0QWlGmabsqJykXK58RnlahaJir8JVKVc5q/KULkt3oqfQ
- K+m99FlVRVVPVaFqveqA6oKatlqoWr5am9pDdYI6Qz1evVy9R31WQ0XDTyNPo0XjniZek6GZqLlXs09z
- XktbK1xrq1an1pS2nLaXdq52i/YDHbKOg84anQadW7oYXYZusu4+3Rt6sJ6FXqJejd51fVjfUp+rv09/
- 0ABtYG3AM2gwGDEkGToZZhq2GI4Z0Yx8jfKNOo2eG2sYRxnvMu4z/mhiYZJi0mhy31TG1Ns037Tb9Hcz
- PTOWWY3ZLXOyubv5BvMu8xfL9Jdxlu1fdseCYuFnsdWix+KDpZUl37LVctpKwyrWqtZqhEFlBDBKGJet
- 0dbO1husT1m/tbG0Edgct/nN1tA22faI7dRy7eWc5Y3Lx+3U7Jh29Xaj9nT7WPsD9qMOqg5MhwaHx47q
- jmzHJsdJJ12nJKejTs+dTZz5zu3O8y42Lutczrkirh6uRa4DbjJuoW7Vbo/c1dwT3FvcZz0sPNZ6nPNE
- e/p47vIc8VLyYnk1e816W3mv8+71IfkE+1T7PPbV8+X7dvvBft5+u/0erNBcwVvR6Q/8vfx3+z8M0A5Y
- E/BjICYwILAm8EmQaVBeUF8wJTgm+Ejw6xDnkNKQ+6E6ocLQnjDJsOiw5rD5cNfwsvDRCOOIdRHXIhUi
- uZFdUdiosKimqLmVbiv3rJyItogujB5epb0qe9WV1QqrU1afjpGMYcaciEXHhsceiX3P9Gc2MOfivOJq
- 42ZZLqy9rGdsR3Y5e5pjxynjTMbbxZfFTyXYJexOmE50SKxInOG6cKu5L5I8k+qS5pP9kw8lf0oJT2lL
- xaXGpp7kyfCSeb1pymnZaYPp+umF6aNrbNbsWTPL9+E3ZUAZqzK6BFTRz1S/UEe4RTiWaZ9Zk/kmKyzr
- RLZ0Ni+7P0cvZ3vOZK577rdrUWtZa3vyVPM25Y2tc1pXvx5aH7e+Z4P6hoINExs9Nh7eRNiUvOmnfJP8
- svxXm8M3dxcoFWwsGN/isaWlUKKQXziy1XZr3TbUNu62ge3m26u2fyxiF10tNimuKH5fwiq5+o3pN5Xf
- fNoRv2Og1LJ0/07MTt7O4V0Ouw6XSZfllo3v9tvdUU4vLyp/tSdmz5WKZRV1ewl7hXtHK30ru6o0qnZW
- va9OrL5d41zTVqtYu712fh9739B+x/2tdUp1xXXvDnAP3Kn3qO9o0GqoOIg5mHnwSWNYY9+3jG+bmxSa
- ips+HOIdGj0cdLi32aq5+YjikdIWuEXYMn00+uiN71y/62o1bK1vo7UVHwPHhMeefh/7/fBxn+M9Jxgn
- Wn/Q/KG2ndJe1AF15HTMdiZ2jnZFdg2e9D7Z023b3f6j0Y+HTqmeqjkte7r0DOFMwZlPZ3PPzp1LPzdz
- PuH8eE9Mz/0LERdu9Qb2Dlz0uXj5kvulC31OfWcv210+dcXmysmrjKud1yyvdfRb9Lf/ZPFT+4DlQMd1
- q+tdN6xvdA8uHzwz5DB0/qbrzUu3vG5du73i9uBw6PCdkeiR0TvsO1N3U+6+uJd5b+H+xgfoB0UPpR5W
- PFJ81PCz7s9to5ajp8dcx/ofBz++P84af/ZLxi/vJwqekJ9UTKpMNk+ZTZ2adp++8XTl04ln6c8WZgp/
- lf619rnO8x9+c/ytfzZiduIF/8Wn30teyr889GrZq565gLlHr1NfL8wXvZF/c/gt423fu/B3kwtZ77Hv
- Kz/ofuj+6PPxwafUT5/+BQOY8/y6xOjTAAAACXBIWXMAAAsMAAALDAE/QCLIAAABs0lEQVQ4T51TOUsD
- URjMT/FXWFhYpLCwEAQL7dIELFQQhDRWHogYRdAgrAbj1SgoghI0SBBE8cAQTJAouW9jEhLPiDLuPHeX
- PFPpwLDvzTfzse/tt6bfsNvtFpVelfhFahbN1gi12KTSpygKAoEAKpUKdHBNjTV66NViP9DCZbfbLQKx
- 0gdWr8oY9eQFuaZG0EOv1ETd+PSw67KE7rU4bHsZjBzmBPu3U0JjjdCa+PSwha9GLJ8X0eWK4iLxIvb1
- cJwURI0eQjuOhQ28PF+kWEOnMyzoPHvE0V0Vw/tpTHiyiDzWREiv08sMs2wgLmnxtIAO5b6BPa4wbjKv
- ooGu0csMs6IBYdtNon0hJLFvM4Z89efydvwlQ6eXkBoMbcfRNncr8fn9C0/vn5jyZCSdXsJowNdxHGdh
- ng0atG6E4Us+Y3ArKukkvfVHEJd4//CG1ukbiQObEbTPBxt0eusv0fiMs0dptEz6Bcf2E0JbOskZGkkP
- YXxGbRaMQZrxpNA8fg3ztB+963fiyT3JGiENEqFupFEO5V5hP0jCuhIS5JoaoYXlUSa0Jv/7meqhFv/w
- O5tM33TDo46olI1sAAAAAElFTkSuQmCCOwQAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/
- YQAAAAFzUkdCAK7OHOkAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAAAGnRFWHRT
- b2Z0d2FyZQBQYWludC5ORVQgdjMuNS4xMDD0cqEAAAOqSURBVDhPFZNrTNV1HId/B40Iikxb0tpKa5Wt
- ViyDViihYmTDYc4XYd5Bk2ygI2AggTCRxBTkMkUxCBwDAj1BgBDXMy6Hm9xUEvJwZyXI4XDg3P7nnKd/
- L75vPntefL7P9hGYR4W0gDDaEDq0YtG2LGYtiJLeKTJ7hyjue0R+x98sSHb6BjVEFZVxKL+GnEYVZquk
- EMZlq5CWLcKE5KABLrd1E5Z/m7AiJUdKUwktqCGie5jPfrlLQHQuPT0jTMtc2JVuDCaEWMKusNm0Cp0c
- hpQXENjyK1HtTdwcG6JSf5fsxxlsq4tgRbqK5+L72ZlYRNPQX+T8psZoNAqxaNe9v2Axklx1G39VCHt6
- I8l99BCNzU6vbZGwgQS8S3/kw6yruMVmsCb2KFsjo9HpzbssNr2TMJpsfu0Tj/G5foYtHV8RPXSN/jkj
- XZPNNGnHSL03Q7wqjz5tCHPm7XQueJJaf5D88hSsjAUJk1kiuX4a14Q0fCrPo1z4F+VwFTE133C2u4q8
- fjUa3QmWcWfO4obJ7IbFtE5ucBJsw/+bX+Kd8Hac45oJ7RwnQd3Gzjun2K5Owa96kOMNt2iYSiKzP4B1
- kS8SnuOO1fI6duNG7Ho1Yhwtr5xux7N0htjBf3jvQhJOeecQN8pxuqLh2WwNz6fX4HJhG44/vMuqoFXk
- tK1l3ujGkpSAWJAbvH2xgcP9sP78COLEHzjGVOKQdBLHtO9wTSyVs2ZE5Nc4HvTE8/uVPNCuZ9b2Kuqh
- WPkFG+yr1eNfNi8DrawIHsA5uBGHmAAU8S/zzLFAnA8/YOW3WbifCmXwyQYM0hpZ6Kfo7RrEDGb21szy
- ZsifCI8SFFurcPGvQHFoH+KIF86Bp3H5pICoklC6tH5MSG/R3OdBX+9ZZLM3xJ3RebxzZnD9spCnP8jG
- wSNdvss47j6Ow55gxKYk1nrGMb0Yjs7sRX7ZAULCI7FIeliaEuJ66yRvnFERc0uN77GrvOafyUublKze
- lckLnyewenMaH++4TG7xURJjfYkOP4BkAIPVoDBYJxUit2WADbEF3LdDw72H+IVm4L2/Hp+QWnz21vPF
- /haSs7KZMm2hZ9CLxqbfZfs4G7AIg31GiM7hiaAdiVVczK2lTtXFucJCUgrquFRcQY48pGulN1F1XJLF
- bWZe+oi4pDgWefLUsnVeIesTwmg27K4cmfRTVldToaxAdX8EnRX0MmazjCMtjdLSWkTEzxuJ+ckX85K8
- WYNFIRmtwmBF/AcoZsuMve9BDQAAAABJRU5ErkJggrEBAACJUE5HDQoaCgAAAA1JSERSAAAAEAAAABAI
- BgAAAB/z/2EAAAABc1JHQgCuzhzpAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAA
- ABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAABIElEQVQ4T53SoU4DQRDG8RFnW9GE
- EFxDkxOIOgSGUHEkCARPgKCCN0BcQjXuXgKBO0xdqw6BAIVEoQgKWTf8Z9klA+FKyya/7O7czJfL5URV
- hVXgDXaxfc/q4dnksIG2Ym3GwZ0YdoF5CoghAzTuXmEczqkYLiIdnOGrOdT/CmCVeMcCT1g9gLULG9yK
- hWOsFbCPV/SwgQb3qTkOLA3IcA272esfxPPdSgGp+F+/FtchkmuDm3DJdYwqnkvYkolIH+o8Ivxsnym5
- TjFECEAXL8jsucdghhMs0E0BR7hCCjhF+XPYY7jGKFxoznALjZ7Rcc0DcPwWUPmAS5wjvUGB2jW3B9C4
- jZkV2f1HtNAiNi8NqDG0IrsP6OEB9tFaAmT0AZdE/lIKPmnzAAAAAElFTkSuQmCCBAIAAIlQTkcNChoK
- AAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAAFzUkdCAK7OHOkAAAAEZ0FNQQAAsY8L/GEFAAAACXBI
- WXMAAA68AAAOvAGVvHJJAAABmUlEQVQ4T7WSIZDkIBBFI0eOPDty5cjYSGQkFomMxEYikVhkZGQsMhIZ
- i0Qi/3Vzmd2Z2927qqu6rvpFVcJ/TX/o/kvFdca2zFi9Qa0V5+evK+cDS7Dv8lailIBaPHKymNQAO09w
- 1sDRWkp5BbKp1gUgVTIGN7XVuxkpGhgtYNQdJRJ4vUFL8RnAZpabJfZIwOyou8ERFY0hoGSPYH5gt92f
- AAHWSJiJpEdMLCWatBzg9K0BpOhfAcGfAJq5ZouSNFK4vmt3F1LXzKyhv/8OmFtgNdN6aNR9RF0vsGGF
- 9Stmt8DYgGn2UMZBTvYVwGHxzDUpMgvUSIEt12Z+rkLXmXPBqGcIZT4gnq6nHgTZB9TtjbpfkUPXOnP5
- JZ7akI7SzFtMGEb1C8L3WxJd3WkuS4fDd+3YXI/ObI4pQ8ipmQcxou8p0PY4dpq9mS+te6LQNM3M5ucT
- OMpl3VJbWf3bDZ01BKAH8kj5IQ7sufMWj2Zeth3Lun8A+Glao9oDUeMAMdzbD06bzY9uX6kBvitOmzf8
- Tef2f62u+wlSbAABOMbXPAAAAABJRU5ErkJggrkAAACJUE5HDQoaCgAAAA1JSERSAAAAEAAAABAIBgAA
- AB/z/2EAAAABc1JHQgCuzhzpAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAAAE5J
- REFUOE/VjVsKACAIBPf+h+tKReCCkPmgPmpACGNGvEMDOkdWNXTAi7gHoshuv2BFUqJGRzjyleeaXI5Y
- UjpiySSMeDI5DkzCiDy/ABifwFoLoTstugAAAABJRU5ErkJggtoAAACJUE5HDQoaCgAAAA1JSERSAAAA
- EAAAABAIBgAAAB/z/2EAAAABc1JHQgCuzhzpAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwB
- lbxySQAAAG9JREFUOE+1kYEKwCAIRP14/3ub4oUuE1fswSGceW5FjsvqCulDEWbWhtWKPOABZhWQn8F2
- qPEVE++BLKAM7QQc0wr9ZbNHF8glQ+oa7e1+sPti4VAVsEoTPwxBZk2g4Su0/Qvp0JeAgQxBZp1AdAOK
- rlhF1QdZ1QAAAABJRU5ErkJggr0BAACJUE5HDQoaCgAAAA1JSERSAAAAEAAAABAIBgAAAB/z/2EAAAAB
- c1JHQgCuzhzpAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAAAVJJREFUOE+VUiuU
- wkAMrDyJrEUikVhkJfLsSeRJ7MmTyNrKysq1lStXro2MXDlMQoH7FB7kveGVTWaSnU31KIoM0LAASsF0
- 9HwUjShxiyIHaG5fEwBDhzf+tPwK0HHFIeR5EZXA7g1HHxxFvqDpcF/AOloHlZGFR8jAe+uRh90VOq6Z
- oxB9KZqNcRZUiSTUNIsF7FrSB8COPr6DQo5vlLxnzY5iG3KW9KZHJX3tCaiRXgCbSFihUk3ILmKdP5+G
- DKvzBJdr5H7J8d8BE3KxCT+/p/9GljSRL2EGmggS3c+7uziTu/kXSQNNjBuKbO/CJ53bTHvK2NoE64dw
- AZ1ZKnvXZALxhmIYf5+ZgHk20W5RiiJ1VrQgacHCGvG4ROwbP9dQe8525p+BFi7Q1iyuMZIoiWvMsJx1
- jF3jV8zMq6R5D3LYQ/J4Jf4NlYwUuAfXfFWdAADPK6qKc5p7AAAAAElFTkSuQmCCWwEAAIlQTkcNChoK
- AAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAAFzUkdCAK7OHOkAAAAEZ0FNQQAAsY8L/GEFAAAACXBI
- WXMAAA68AAAOvAGVvHJJAAAAGnRFWHRTb2Z0d2FyZQBQYWludC5ORVQgdjMuNS4xMDD0cqEAAADKSURB
- VDhPpZK9DsIgEIBpa6ObURdN3HzRPmUnpg506sTCBN6dd80VSQyV5OPgfr40DSbG2KSUSvTAAWgVeD8D
- J743BrYOD4w04hlriNR0bs2bYRjSXmB1JNizeK79V9CTIIRQDQseJPDeV8OCOwmWZamGBZ+fOM/zBufc
- Vy5nI5imqZqN4BfWWiLPkwA2eXkSNR02juNI8NAF88ATY/5US1xFwgLMrc9ZBGiUcyn2OKwEa12aJKGH
- JIr8WPgCQwW+3DjmQs0LULVk3hduNfOAMxUNAAAAAElFTkSuQmCCxQAAAIlQTkcNChoKAAAADUlIRFIA
- AAAQAAAAEAgGAAAAH/P/YQAAAAFzUkdCAK7OHOkAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAO
- vAGVvHJJAAAAWklEQVQ4T2OgGfCK6vmPjqFShAFI8fv37zEw0YbADIDZjMyHKsENcCkm2pCBNQAkSSyG
- akEFIAmQLYQwQQOqq6txYqIMIIQHuQuIxVAtqACbQlwYqoVSwMAAAGu3W43ADBe1AAAAAElFTkSuQmCC
- AwIAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAAFzUkdCAK7OHOkAAAAEZ0FNQQAA
- sY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAABmElEQVQ4T22SK7cCMQyEVyKRWCQSiUUikVgkkr+A
- RCKxSGTl2srKytqVK1fmzhe6l+ecA93mMZkkbV5hQl+Klfvd8vls+Xi0fDpZud3cDmroN4Zh8MCixLTb
- WVyvLa5W/7+03ToZcTXlCU++XLxiq8RwOFgUWWpbS1LDvZ3PLS0WljabdxJklevVsoJw8itK/ERJyVoI
- ZjNL+73bnIDeqBxWkqxkpEPSp/wMEvjucn4QTKf+7Q76JvEuBVRxEvoWUa/7J4kPdjKxpNN9if4YUghu
- gJl7u1w60SdJF6MVqaAdt1Mx6EL1EU4CAT3rfCWh5U72VircFrUe2LIG5yUEHJBESOhZ/pGE0wm0FdCw
- 26hLHHuq4NuHJl/W0LJOklm3tzBuoidIBkiQV/MdI0mWv0gyiZ3mkuVCsRPwx8vz9TD5XyRUZnW6Fv2C
- 4t4e09D33q9LVQVkIhcyl62HRmWS6b2THdT0RxUn4b2/SO15UKrW6Y5sKn8lj3CrULTnqAFRiVUFnYEW
- 9U6QDWrKb3hEBQlj0ogaVtE0f/hlWz5JHN5BAAAAAElFTkSuQmCCAQYAAIlQTkcNChoKAAAADUlIRFIA
- AAAQAAAAEAgGAAAAH/P/YQAAAAFzUkdCAK7OHOkAAAAEZ0FNQQAAsY8L/GEFAAAAGXRFWHRTb2Z0d2Fy
- ZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tl
- dCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1s
- bnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0
- MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRw
- Oi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiBy
- ZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4
- bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9u
- cy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRv
- YmUgUGhvdG9zaG9wIENTNS4xIFdpbmRvd3MiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NjQ1QTVE
- QzE1NTY1MTFFMTlEMzlGQkM3NTZEQTg5QjAiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NjQ1QTVE
- QzI1NTY1MTFFMTlEMzlGQkM3NTZEQTg5QjAiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFu
- Y2VJRD0ieG1wLmlpZDo2NDVBNURCRjU1NjUxMUUxOUQzOUZCQzc1NkRBODlCMCIgc3RSZWY6ZG9jdW1l
- bnRJRD0ieG1wLmRpZDo2NDVBNURDMDU1NjUxMUUxOUQzOUZCQzc1NkRBODlCMCIvPiA8L3JkZjpEZXNj
- cmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PqSWWTYAAAJY
- SURBVDhPbVJLaxNhFP2gexdCacxrEpIWUbJI2qSPpKn4iNZYGsGkWqFPRaGFaA1qYjOmaqFkEVQIFXWn
- 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
-
-
&Datei
@@ -569,6 +178,9 @@
Sender &entfernen
+
+ Sender umbenennen
+
Sender alphabetisch sortieren
@@ -626,11 +238,11 @@
&Über ChanSort...
-
+
AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMi4yLCBWZXJzaW9uPTEy
- LjIuNi4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
+ LjIuOC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
ACZEZXZFeHByZXNzLlh0cmFCYXJzLkJhck1hbmFnZXJDYXRlZ29yeQMAAAAETmFtZQRHdWlkB1Zpc2li
bGUBAwALU3lzdGVtLkd1aWQBAgAAAAYDAAAABEZpbGUE/P///wtTeXN0ZW0uR3VpZAsAAAACX2ECX2IC
X2MCX2QCX2UCX2YCX2cCX2gCX2kCX2oCX2sAAAAAAAAAAAAAAAgHBwICAgICAgICKaPJ5gsBeU2NTSFe
@@ -640,7 +252,7 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMi4yLCBWZXJzaW9uPTEy
- LjIuNi4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
+ LjIuOC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
ACZEZXZFeHByZXNzLlh0cmFCYXJzLkJhck1hbmFnZXJDYXRlZ29yeQMAAAAETmFtZQRHdWlkB1Zpc2li
bGUBAwALU3lzdGVtLkd1aWQBAgAAAAYDAAAABEhlbHAE/P///wtTeXN0ZW0uR3VpZAsAAAACX2ECX2IC
X2MCX2QCX2UCX2YCX2cCX2gCX2kCX2oCX2sAAAAAAAAAAAAAAAgHBwICAgICAgICdEVVDegwMU2acNpw
@@ -650,7 +262,7 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMi4yLCBWZXJzaW9uPTEy
- LjIuNi4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
+ LjIuOC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
ACZEZXZFeHByZXNzLlh0cmFCYXJzLkJhck1hbmFnZXJDYXRlZ29yeQMAAAAETmFtZQRHdWlkB1Zpc2li
bGUBAwALU3lzdGVtLkd1aWQBAgAAAAYDAAAABEVkaXQE/P///wtTeXN0ZW0uR3VpZAsAAAACX2ECX2IC
X2MCX2QCX2UCX2YCX2cCX2gCX2kCX2oCX2sAAAAAAAAAAAAAAAgHBwICAgICAgICZMTu18lZRU+IqmAu
@@ -660,175 +272,43 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMi4yLCBWZXJzaW9uPTEy
- LjIuNi4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
+ LjIuOC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
ACZEZXZFeHByZXNzLlh0cmFCYXJzLkJhck1hbmFnZXJDYXRlZ29yeQMAAAAETmFtZQRHdWlkB1Zpc2li
bGUBAwALU3lzdGVtLkd1aWQBAgAAAAYDAAAAB09wdGlvbnME/P///wtTeXN0ZW0uR3VpZAsAAAACX2EC
X2ICX2MCX2QCX2UCX2YCX2cCX2gCX2kCX2oCX2sAAAAAAAAAAAAAAAgHBwICAgICAgICXJMOh9nzAkKc
WIeWYGkVXQEL
-
- Horizontal
-
-
-
-
-
- Horizontal
-
-
-
-
-
- Horizontal
-
-
-
-
-
- Horizontal
-
-
-
-
Nach oben
Nach unten
-
-
-
-
-
-
-
- Horizontal
-
-
-
-
-
- True
-
tauschen
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- True
-
dahinter
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- True
-
davor
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- True
-
Lücken beim Verschieben/Entfernen von Sendern schließen
-
-
-
-
-
-
-
-
-
Wenn aktiv, werden folgende Programmnummer automatisch vorgerückt
-
-
-
-
-
-
-
- True
-
Unsortierte Sender beim Speichern automatisch anhängen
-
-
-
-
-
-
-
-
-
71, 13
Einfügemodus:
-
-
-
-
-
-
-
- Horizontal
-
-
-
-
Keine Datei geladen
@@ -838,54 +318,12 @@
Programplatz für Einfügen und Festlegen
-
-
-
-
-
-
-
- True
-
-
- Default
-
-
- False
-
-
- True
-
-
- _
-
-
- True
-
-
- True
-
-
- False
-
-
-
-
-
- False
-
ChanSort {0} - Senderlisten-Editor für Samsung, LG und Toshiba TVs
Kindersicherung
-
- Horizontal
-
-
-
-
Filter entfernen
@@ -898,51 +336,9 @@
Markierte Sender nach oben verschieben
-
- Markierte Sender entfernen
-
Sortierte Sender (.csv)
-
-
-
-
-
-
-
- Default
-
-
- Top, Left
-
-
-
-
-
- Tile
-
-
- Inherit
-
-
- Center
-
-
-
-
-
- None
-
-
-
-
-
- Horizontal
-
-
-
-
Alte Pr#
@@ -964,27 +360,6 @@
Favoriten
-
- Default
-
-
- False
-
-
- True
-
-
- _
-
-
- True
-
-
- True
-
-
- False
-
Ge- sperrt
@@ -1030,11 +405,8 @@
F5: Filter | F6: Liste | Eingabe: übernehmen
-
- Horizontal
-
-
-
+
+ Sender aus sortierter Liste entfernen
Filter entfernen
diff --git a/ChanSort/MainForm.resx b/ChanSort/MainForm.resx
index 17e86e3..292b976 100644
--- a/ChanSort/MainForm.resx
+++ b/ChanSort/MainForm.resx
@@ -183,14 +183,14 @@
False
-
+
Combo
-
+
RegEx
@@ -231,7 +231,7 @@
gridLeft
- DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpOutputList
@@ -261,7 +261,7 @@
lblHotkeyLeft
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpOutputList
@@ -323,6 +323,9 @@
&Remove channels
+
+ Rename channel
+
Sor&t channels alphabetically
@@ -404,11 +407,11 @@
Tools
-
+
AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMi4yLCBWZXJzaW9uPTEy
- LjIuNi4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
+ LjIuOC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
ACZEZXZFeHByZXNzLlh0cmFCYXJzLkJhck1hbmFnZXJDYXRlZ29yeQMAAAAETmFtZQRHdWlkB1Zpc2li
bGUBAwALU3lzdGVtLkd1aWQBAgAAAAYDAAAABEZpbGUE/P///wtTeXN0ZW0uR3VpZAsAAAACX2ECX2IC
X2MCX2QCX2UCX2YCX2cCX2gCX2kCX2oCX2sAAAAAAAAAAAAAAAgHBwICAgICAgICKaPJ5gsBeU2NTSFe
@@ -418,7 +421,7 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMi4yLCBWZXJzaW9uPTEy
- LjIuNi4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
+ LjIuOC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
ACZEZXZFeHByZXNzLlh0cmFCYXJzLkJhck1hbmFnZXJDYXRlZ29yeQMAAAAETmFtZQRHdWlkB1Zpc2li
bGUBAwALU3lzdGVtLkd1aWQBAgAAAAYDAAAABEhlbHAE/P///wtTeXN0ZW0uR3VpZAsAAAACX2ECX2IC
X2MCX2QCX2UCX2YCX2cCX2gCX2kCX2oCX2sAAAAAAAAAAAAAAAgHBwICAgICAgICdEVVDegwMU2acNpw
@@ -428,7 +431,7 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMi4yLCBWZXJzaW9uPTEy
- LjIuNi4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
+ LjIuOC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
ACZEZXZFeHByZXNzLlh0cmFCYXJzLkJhck1hbmFnZXJDYXRlZ29yeQMAAAAETmFtZQRHdWlkB1Zpc2li
bGUBAwALU3lzdGVtLkd1aWQBAgAAAAYDAAAABEVkaXQE/P///wtTeXN0ZW0uR3VpZAsAAAACX2ECX2IC
X2MCX2QCX2UCX2YCX2cCX2gCX2kCX2oCX2sAAAAAAAAAAAAAAAgHBwICAgICAgICZMTu18lZRU+IqmAu
@@ -438,7 +441,7 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMi4yLCBWZXJzaW9uPTEy
- LjIuNi4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
+ LjIuOC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
ACZEZXZFeHByZXNzLlh0cmFCYXJzLkJhck1hbmFnZXJDYXRlZ29yeQMAAAAETmFtZQRHdWlkB1Zpc2li
bGUBAwALU3lzdGVtLkd1aWQBAgAAAAYDAAAAB09wdGlvbnME/P///wtTeXN0ZW0uR3VpZAsAAAACX2EC
X2ICX2MCX2QCX2UCX2YCX2cCX2gCX2kCX2oCX2sAAAAAAAAAAAAAAAgHBwICAgICAgICXJMOh9nzAkKc
@@ -458,7 +461,7 @@
barDockControlTop
- DevExpress.XtraBars.BarDockControl, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarDockControl, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -479,7 +482,7 @@
barDockControlBottom
- DevExpress.XtraBars.BarDockControl, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarDockControl, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -500,7 +503,7 @@
barDockControlLeft
- DevExpress.XtraBars.BarDockControl, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarDockControl, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -521,7 +524,7 @@
barDockControlRight
- DevExpress.XtraBars.BarDockControl, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarDockControl, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -538,7 +541,7 @@
swap
-
+
Far
@@ -552,7 +555,7 @@
rbInsertSwap
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpTopPanel
@@ -579,7 +582,7 @@
rbInsertAfter
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpTopPanel
@@ -603,7 +606,7 @@
rbInsertBefore
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpTopPanel
@@ -633,7 +636,7 @@
cbCloseGap
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpTopPanel
@@ -660,7 +663,7 @@
cbAppendUnsortedChannels
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpTopPanel
@@ -684,7 +687,7 @@
labelControl2
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpTopPanel
@@ -711,7 +714,7 @@
picDonate
- DevExpress.XtraEditors.PictureEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.PictureEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpTopPanel
@@ -735,7 +738,7 @@
pageEmpty
- DevExpress.XtraTab.XtraTabPage, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraTab.XtraTabPage, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
tabChannelList
@@ -753,7 +756,7 @@
tabChannelList
- DevExpress.XtraTab.XtraTabControl, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraTab.XtraTabControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpTopPanel
@@ -783,7 +786,7 @@
labelControl11
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpTopPanel
@@ -813,7 +816,7 @@
txtSetSlot
- DevExpress.XtraEditors.ButtonEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.ButtonEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpTopPanel
@@ -840,7 +843,7 @@
grpTopPanel
- DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -864,55 +867,55 @@
gviewLeft
- DevExpress.XtraGrid.Views.Grid.GridView, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Views.Grid.GridView, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colIndex1
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colOutServiceType
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colOutSlot
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colOutName
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colOutFav
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
repositoryItemCheckedComboBoxEdit1
- DevExpress.XtraEditors.Repository.RepositoryItemCheckedComboBoxEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.Repository.RepositoryItemCheckedComboBoxEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colUid1
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colOutLock
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
globalImageCollection1
@@ -924,460 +927,472 @@
gviewRight
- DevExpress.XtraGrid.Views.Grid.GridView, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Views.Grid.GridView, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colIndex
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colSlotOld
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colSlotNew
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colName
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colShortName
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colFavorites
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
repositoryItemCheckedComboBoxEdit2
- DevExpress.XtraEditors.Repository.RepositoryItemCheckedComboBoxEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.Repository.RepositoryItemCheckedComboBoxEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colLock
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colSkip
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colHidden
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colEncrypted
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colChannelOrTransponder
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colFreqInMhz
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colServiceId
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colVideoPid
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colAudioPid
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colServiceType
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colServiceTypeName
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colSatellite
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colNetworkId
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colTransportStreamId
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colSymbolRate
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colPolarity
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colUid
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colNetworkName
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colNetworkOperator
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colDebug
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colLogicalIndex
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- barManager1
-
-
- DevExpress.XtraBars.BarManager, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- bar1
-
-
- DevExpress.XtraBars.Bar, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miFile
-
-
- DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miOpen
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miReload
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miRestoreOriginal
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miFileInformation
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miSave
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miSaveAs
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miOpenReferenceFile
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miQuit
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miEdit
-
-
- DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miAddChannel
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miRemove
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miSort
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miRenum
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- mnuFavSet
-
-
- DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miFavSet
-
-
- DevExpress.XtraBars.BarListItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- mnuFavUnset
-
-
- DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miFavUnset
-
-
- DevExpress.XtraBars.BarListItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miLockOn
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miLockOff
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miSkipOn
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miSkipOff
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miHideOn
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miHideOff
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- barSubItem2
-
-
- DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miTvSettings
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miEraseChannelData
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- mnuOptions
-
-
- DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- barSubItem1
-
-
- DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miEnglish
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miGerman
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- mnuCharset
-
-
- DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miCharsetForm
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miIsoCharSets
-
-
- DevExpress.XtraBars.BarListItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- mnuHelp
-
-
- DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miWiki
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miOpenWebsite
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miAbout
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miMoveUp
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- miMoveDown
-
-
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- defaultLookAndFeel1
-
-
- DevExpress.LookAndFeel.DefaultLookAndFeel, DevExpress.Utils.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- splashScreenManager1
-
-
- DevExpress.XtraSplashScreen.SplashScreenManager, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- mnuContext
-
-
- DevExpress.XtraBars.PopupMenu, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colSignalSource
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ barManager1
+
+
+ DevExpress.XtraBars.BarManager, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ bar1
+
+
+ DevExpress.XtraBars.Bar, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miFile
+
+
+ DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miOpen
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miReload
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miRestoreOriginal
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miFileInformation
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miSave
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miSaveAs
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miOpenReferenceFile
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miQuit
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miEdit
+
+
+ DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miAddChannel
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miRemove
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miRenameChannel
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miSort
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miRenum
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ mnuFavSet
+
+
+ DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miFavSet
+
+
+ DevExpress.XtraBars.BarListItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ mnuFavUnset
+
+
+ DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miFavUnset
+
+
+ DevExpress.XtraBars.BarListItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miLockOn
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miLockOff
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miSkipOn
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miSkipOff
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miHideOn
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miHideOff
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ barSubItem2
+
+
+ DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miTvSettings
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miEraseChannelData
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ mnuOptions
+
+
+ DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ barSubItem1
+
+
+ DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miEnglish
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miGerman
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ mnuCharset
+
+
+ DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miCharsetForm
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miIsoCharSets
+
+
+ DevExpress.XtraBars.BarListItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ mnuHelp
+
+
+ DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miWiki
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miOpenWebsite
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miAbout
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miMoveUp
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miMoveDown
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ defaultLookAndFeel1
+
+
+ DevExpress.LookAndFeel.DefaultLookAndFeel, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ splashScreenManager1
+
+
+ DevExpress.XtraSplashScreen.SplashScreenManager, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ mnuContext
+
+
+ DevExpress.XtraBars.PopupMenu, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ timerEditDelay
+
+
+ System.Windows.Forms.Timer, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
MainForm
- DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
- 04/11/2013 21:59:42
+ 04/21/2013 21:18:56
16, 16
@@ -1395,7 +1410,7 @@
btnToggleLock
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
pnlEditControls
@@ -1419,7 +1434,7 @@
btnToggleFavE
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
pnlEditControls
@@ -1443,7 +1458,7 @@
btnToggleFavD
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
pnlEditControls
@@ -1467,7 +1482,7 @@
btnToggleFavC
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
pnlEditControls
@@ -1491,7 +1506,7 @@
btnToggleFavB
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
pnlEditControls
@@ -1515,7 +1530,7 @@
btnToggleFavA
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
pnlEditControls
@@ -1527,14 +1542,17 @@
Tahoma, 8.25pt, style=Strikeout
- 304, 5
+ 295, 4
- 23, 23
+ 66, 23
9
+
+ Filter
+
Reset filter
@@ -1542,7 +1560,7 @@
btnClearLeftFilter
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
pnlEditControls
@@ -1569,7 +1587,7 @@
btnRenum
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
pnlEditControls
@@ -1596,7 +1614,7 @@
btnDown
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
pnlEditControls
@@ -1623,7 +1641,7 @@
btnUp
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
pnlEditControls
@@ -1631,31 +1649,31 @@
9
-
+
63, 5
-
+
23, 23
-
+
2
-
- >>
+
+ X
-
+
Remove selected channels
-
- btnRemove
+
+ btnRemoveLeft
-
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
+
pnlEditControls
-
+
10
@@ -1674,7 +1692,7 @@
pnlEditControls
- DevExpress.XtraEditors.PanelControl, DevExpress.Utils.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.PanelControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpOutputList
@@ -1701,7 +1719,7 @@
grpOutputList
- DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
splitContainerControl1.Panel1
@@ -2028,7 +2046,7 @@
gridRight
- DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpInputList
@@ -2058,7 +2076,7 @@
lblHotkeyRight
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpInputList
@@ -2066,8 +2084,35 @@
1
+
+ 34, 5
+
+
+ 23, 23
+
+
+ 6
+
+
+ X
+
+
+ Remove selected channels from sorted list
+
+
+ btnRemoveRight
+
+
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ panelControl3
+
+
+ 0
+
- 44, 5
+ 71, 5
121, 23
@@ -2085,19 +2130,19 @@
btnAddAll
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
panelControl3
- 0
+ 1
Tahoma, 8.25pt, style=Strikeout
- 171, 5
+ 198, 5
66, 23
@@ -2115,13 +2160,13 @@
btnClearRightFilter
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
panelControl3
- 1
+ 2
5, 5
@@ -2136,19 +2181,19 @@
<<
- Add selected channels
+ Add selected channels to sorted list
btnAdd
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
panelControl3
- 2
+ 3
Top
@@ -2166,7 +2211,7 @@
panelControl3
- DevExpress.XtraEditors.PanelControl, DevExpress.Utils.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.PanelControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpInputList
@@ -2193,7 +2238,7 @@
grpInputList
- DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
splitContainerControl1.Panel2
@@ -2217,7 +2262,7 @@
splitContainerControl1
- DevExpress.XtraEditors.SplitContainerControl, DevExpress.Utils.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SplitContainerControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -2231,4 +2276,7 @@
781, 17
+
+ 900, 17
+
\ No newline at end of file
diff --git a/ChanSort/Properties/licenses.licx b/ChanSort/Properties/licenses.licx
index 7d6b108..c04a81a 100644
--- a/ChanSort/Properties/licenses.licx
+++ b/ChanSort/Properties/licenses.licx
@@ -1,8 +1,7 @@
-DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-DevExpress.XtraTab.XtraTabControl, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-DevExpress.XtraBars.BarManager, DevExpress.XtraBars.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-DevExpress.XtraSplashScreen.SplashScreenManager, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-DevExpress.XtraEditors.ButtonEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraSplashScreen.SplashScreenManager, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraEditors.ButtonEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraTab.XtraTabControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraBars.BarManager, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
diff --git a/ChanSort/WaitForm1.resx b/ChanSort/WaitForm1.resx
index b297549..5d6673c 100644
--- a/ChanSort/WaitForm1.resx
+++ b/ChanSort/WaitForm1.resx
@@ -145,7 +145,7 @@
0, 14, 0, 14
- DevExpress.XtraWaitForm.WaitForm, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraWaitForm.WaitForm, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
WaitForm1
@@ -227,7 +227,7 @@
Horizontal
- DevExpress.XtraWaitForm.ProgressPanel, DevExpress.XtraEditors.v12.2, Version=12.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraWaitForm.ProgressPanel, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
Horizontal
diff --git a/Test.Loader.TllFile/LgTest.cs b/Test.Loader.TllFile/LgTest.cs
new file mode 100644
index 0000000..0ed442d
--- /dev/null
+++ b/Test.Loader.TllFile/LgTest.cs
@@ -0,0 +1,141 @@
+using System;
+using System.Collections.Generic;
+using System.Diagnostics;
+using System.IO;
+using System.Linq;
+using System.Text;
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using ChanSort.Loader.LG;
+
+namespace Test.Loader
+{
+ [TestClass]
+ public class LgTest : LoaderTestBase
+ {
+ #region TestLgTllLoader()
+ [TestMethod]
+ [DeploymentItem("ChanSort.Loader.LG\\ChanSort.Loader.LG.ini")]
+ public void TestLgTllLoader()
+ {
+ var expectedData = this.InitExpectedLgData();
+ TllFileSerializerPlugin plugin = new TllFileSerializerPlugin();
+
+ StringBuilder errors = new StringBuilder();
+ var list = this.FindAllFiles("TestFiles", "*.tll");
+ var models = new Dictionary();
+ var firmwareSize = new Dictionary();
+ foreach(var file in list)
+ {
+ if (file.Contains("GlobalClone") || file.Contains("CountrySettings"))
+ continue;
+ Debug.Print("Testing " + file);
+ try
+ {
+ var serializer = plugin.CreateSerializer(file) as TllFileSerializer;
+ Assert.IsNotNull(serializer, "No Serializer for " + file);
+
+ serializer.Load();
+
+ var fileName = Path.GetFileName(file) ?? "";
+ int idx = fileName.IndexOf("-");
+ string key = idx < 0 ? fileName : fileName.Substring(0, idx);
+ var satChannelList = serializer.DataRoot.GetChannelList(ChanSort.Api.SignalSource.DvbS|ChanSort.Api.SignalSource.Tv);
+ key += "\t" + serializer.ACTChannelLength+
+ "\t"+serializer.HasDvbs+
+ "\t"+serializer.SatChannelLength+
+ "\t" + (satChannelList == null ? "n/a" : satChannelList.Count.ToString());
+ string relPath = Path.GetFileName(Path.GetDirectoryName(file))+"\\"+fileName;
+ models[key] = relPath;
+
+ var model = this.GetLgModel(file);
+ if (firmwareSize.ContainsKey(serializer.FirmwareBlockSize))
+ {
+ string x = firmwareSize[serializer.FirmwareBlockSize];
+ if (!x.Contains(model))
+ firmwareSize[serializer.FirmwareBlockSize] = x + ", " + model;
+ }
+ else
+ firmwareSize[serializer.FirmwareBlockSize] = model;
+
+
+
+ Assert.IsFalse(serializer.DataRoot.IsEmpty, "No channels loaded from " + file);
+
+ ExpectedData exp;
+ key = Path.GetFileName(Path.GetDirectoryName(file)) + "\\" + Path.GetFileName(file);
+ if (expectedData.TryGetValue(key, out exp))
+ {
+ var analogTv = serializer.DataRoot.GetChannelList(ChanSort.Api.SignalSource.AnalogCT|ChanSort.Api.SignalSource.Tv);
+ var dtvTv = serializer.DataRoot.GetChannelList(ChanSort.Api.SignalSource.DvbCT|ChanSort.Api.SignalSource.Tv);
+ var satTv = serializer.DataRoot.GetChannelList(ChanSort.Api.SignalSource.DvbS | ChanSort.Api.SignalSource.Tv);
+ expectedData.Remove(key);
+ Assert.AreEqual(exp.AnalogChannels, analogTv.Channels.Count, file + ": analog");
+ Assert.AreEqual(exp.DtvChannels, dtvTv.Channels.Count, file + ": DTV");
+ if (exp.SatChannels != 0)
+ Assert.AreEqual(exp.SatChannels, satTv.Channels.Count, file + ": Sat");
+ }
+ }
+ catch(Exception ex)
+ {
+ errors.AppendLine();
+ errors.AppendLine();
+ errors.AppendLine(file);
+ errors.AppendLine(ex.ToString());
+ }
+ }
+
+ foreach(var model in models.OrderBy(e => e.Key))
+ Debug.WriteLine(model.Key + "\t"+model.Value);
+
+ foreach (var size in firmwareSize.OrderBy(e => e.Key))
+ Debug.WriteLine(size.Key + "\t" + size.Value);
+
+ if (expectedData.Count > 0)
+ Assert.Fail("Some files were not tested: " + expectedData.Keys.Aggregate((prev,cur) => prev+","+cur));
+ Assert.AreEqual("", errors.ToString());
+ }
+ #endregion
+
+ #region InitExpectedLgData()
+ private Dictionary InitExpectedLgData()
+ {
+ var expected = new[]
+ {
+ new ExpectedData(@"opel\xx2350D-PZM00001.TLL", 31, 345, 0, 89, 0), // 164/-
+ new ExpectedData(@"defycgn\xxLH4010-ZD99970.TLL", 34, 280, 0, 129, 0), // 164/-
+ new ExpectedData(@"karlv\xxLD750-ZA00001.TLL", 30, 248, 0, 104, 0), // 176/-
+ new ExpectedData(@"JLevi\xxLE5500-ZA00002.TLL", 36, 0, 0, 0, 0), // 176/-
+ new ExpectedData(@"chlabnet\xxLK450-ZB00001.TLL", 34, 310, 0, 128, 0), // 176/-
+ new ExpectedData(@"Stabilo\xxLW4500-ZB00001.TLL", 31, 338, 0, 34, 0), // 176/-
+ new ExpectedData(@"MarioAntonioLiptaj\xxPT353-ZA00001.TLL", 50, 123, 0, 13, 0), // 180/-
+ new ExpectedData(@"Muffix\xxLW5500-ZE00001.TLL", 34, 290, 0, 125, 0), // 184/-
+ new ExpectedData(@"FranzSteinert\xxCS460S-ZA00001.TLL", 0, 0, 1261, 0, 200), // ?/68
+ new ExpectedData(@"Klausi1\xxLK950S-ZA00001.TLL", 37, 390, 2695, 150, 491), // 184/68
+ new ExpectedData(@"MP3Chris2712\xxLV570S-ZB00001.TLL", 0, 12, 2895, 0, 669), // 184/68
+ new ExpectedData(@"decklen\xxLW570S-ZD00001.TLL", 0, 30, 1598, 0, 339), // 184/68
+ new ExpectedData(@"NeuerScan\xxLM340S-ZA00001.TLL", 34, 317, 1698, 129, 264), // 188/68
+ new ExpectedData(@"wagnale\xxLM611S-ZA00001.TLL", 0, 13, 1094, 0, 191), // 188/68
+ new ExpectedData(@"_Pred\xxLM620S-ZE00021.TLL", 0, 11, 1303, 0, 191) // 192/72
+ };
+
+ var dict = new Dictionary(StringComparer.InvariantCultureIgnoreCase);
+ foreach (var entry in expected)
+ dict[entry.File] = entry;
+ return dict;
+ }
+
+ #endregion
+
+ private string GetLgModel(string filePath)
+ {
+ string name = Path.GetFileName(filePath)??"";
+ if (name.StartsWith("xx"))
+ {
+ int idx = name.IndexOf("-");
+ if (idx > 0)
+ return name.Substring(2, idx - 2);
+ }
+ return filePath;
+ }
+ }
+}
diff --git a/Test.Loader.TllFile/LoaderTestBase.cs b/Test.Loader.TllFile/LoaderTestBase.cs
new file mode 100644
index 0000000..91c43bd
--- /dev/null
+++ b/Test.Loader.TllFile/LoaderTestBase.cs
@@ -0,0 +1,62 @@
+using System.Collections.Generic;
+using System.IO;
+using System.Reflection;
+
+namespace Test.Loader
+{
+ public class LoaderTestBase
+ {
+ #region class ExpectedData
+ public class ExpectedData
+ {
+ public readonly string File;
+ public readonly int AnalogChannels;
+ public readonly int DtvChannels;
+ public readonly int SatChannels;
+ public readonly int DtvRadio;
+ public readonly int SatRadio;
+
+ public ExpectedData(string file, int analog, int dtv, int sat, int dtvRadio, int satRadio)
+ {
+ this.File = file;
+ this.AnalogChannels = analog;
+ this.DtvChannels = dtv;
+ this.SatChannels = sat;
+ this.DtvRadio = dtvRadio;
+ this.SatRadio = satRadio;
+ }
+ }
+ #endregion
+
+ #region Helper Methods
+
+ protected IEnumerable FindAllFiles(string baseDir, string mask)
+ {
+ string path = this.GetTestFileDirectory(baseDir);
+ List files = new List();
+ this.FindAllTllFilesRecursively(path, mask, files);
+ return files;
+ }
+
+ private string GetTestFileDirectory(string baseDir)
+ {
+ string exeDir = Assembly.GetExecutingAssembly().Location;
+ while (!string.IsNullOrEmpty(exeDir))
+ {
+ string testFileDir = Path.Combine(exeDir, baseDir);
+ if (Directory.Exists(testFileDir))
+ return testFileDir;
+ exeDir = Path.GetDirectoryName(exeDir);
+ }
+ throw new FileNotFoundException("No 'TestFiles' directory found");
+ }
+
+ private void FindAllTllFilesRecursively(string path, string mask, List files)
+ {
+ files.AddRange(Directory.GetFiles(path, mask));
+ foreach (var dir in Directory.GetDirectories(path))
+ this.FindAllTllFilesRecursively(dir, mask, files);
+ }
+ #endregion
+ }
+}
diff --git a/Test.Loader.TllFile/SamsungTest.cs b/Test.Loader.TllFile/SamsungTest.cs
new file mode 100644
index 0000000..bc643a7
--- /dev/null
+++ b/Test.Loader.TllFile/SamsungTest.cs
@@ -0,0 +1,96 @@
+using System;
+using System.Collections.Generic;
+using System.Diagnostics;
+using System.IO;
+using System.Linq;
+using System.Text;
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using ChanSort.Loader.Samsung;
+
+namespace Test.Loader
+{
+ [TestClass]
+ public class SamsungTest : LoaderTestBase
+ {
+ #region InitExpectedSamsungData()
+ private Dictionary InitExpectedSamsungData()
+ {
+ var expected = new[]
+ {
+ new ExpectedData(@"catmater_B\Clone.scm", 31, 272, 0, 0, 0) ,
+ new ExpectedData(@"easy2003_B\easy2003_B.scm", 0, 0, 1225, 0, 0) ,
+ new ExpectedData(@"_Manu_C\channel_list_LE40C650_1001.scm", 0, 9, 0, 0, 0)
+ };
+
+ var dict = new Dictionary(StringComparer.InvariantCultureIgnoreCase);
+ foreach (var entry in expected)
+ dict[entry.File] = entry;
+ return dict;
+ }
+
+ #endregion
+
+ #region TestSamsungScmLoader()
+ [TestMethod]
+ [DeploymentItem("ChanSort.Loader.Samsung\\ChanSort.Loader.Samsung.ini")]
+ public void TestSamsungScmLoader()
+ {
+ var expectedData = this.InitExpectedSamsungData();
+ ScmSerializerPlugin plugin = new ScmSerializerPlugin();
+
+ StringBuilder errors = new StringBuilder();
+ var list = this.FindAllFiles("TestFiles_Samsung", "*.scm");
+ var models = new Dictionary();
+ foreach (var file in list)
+ {
+ Debug.Print("Testing " + file);
+ try
+ {
+ var serializer = plugin.CreateSerializer(file) as ScmSerializer;
+ Assert.IsNotNull(serializer, "No Serializer for " + file);
+
+ serializer.Load();
+
+ var fileName = Path.GetFileName(file) ?? "";
+ string key = fileName.StartsWith("channel_list_") ? fileName.Substring(13, fileName.IndexOf('_',14)-13) : fileName;
+
+ string relPath = Path.GetFileName(Path.GetDirectoryName(file)) + "\\" + fileName;
+ models[key] = relPath;
+
+ Assert.IsFalse(serializer.DataRoot.IsEmpty, "No channels loaded from " + file);
+
+ ExpectedData exp;
+ key = Path.GetFileName(Path.GetDirectoryName(file)) + "\\" + Path.GetFileName(file);
+ if (expectedData.TryGetValue(key, out exp))
+ {
+ var analogTv = serializer.DataRoot.GetChannelList(ChanSort.Api.SignalSource.AnalogC | ChanSort.Api.SignalSource.TvAndRadio);
+ var dtvTv = serializer.DataRoot.GetChannelList(ChanSort.Api.SignalSource.DvbCT | ChanSort.Api.SignalSource.TvAndRadio);
+ var satTv = serializer.DataRoot.GetChannelList(ChanSort.Api.SignalSource.DvbS | ChanSort.Api.SignalSource.TvAndRadio);
+ expectedData.Remove(key);
+ if (exp.AnalogChannels != 0 || analogTv != null)
+ Assert.AreEqual(exp.AnalogChannels, analogTv.Channels.Count, file + ": analog");
+ if (exp.DtvChannels != 0 || dtvTv != null)
+ Assert.AreEqual(exp.DtvChannels, dtvTv.Channels.Count, file + ": DTV");
+ if (exp.SatChannels != 0 || satTv != null)
+ Assert.AreEqual(exp.SatChannels, satTv.Channels.Count, file + ": Sat");
+ }
+ }
+ catch (Exception ex)
+ {
+ errors.AppendLine();
+ errors.AppendLine();
+ errors.AppendLine(file);
+ errors.AppendLine(ex.ToString());
+ }
+ }
+
+ foreach (var model in models.OrderBy(e => e.Key))
+ Debug.WriteLine(model.Key + "\t" + model.Value);
+
+ if (expectedData.Count > 0)
+ Assert.Fail("Some files were not tested: " + expectedData.Keys.Aggregate((prev, cur) => prev + "," + cur));
+ Assert.AreEqual("", errors.ToString());
+ }
+ #endregion
+ }
+}
diff --git a/Test.Loader.TllFile/Test.Loader.TllFile.csproj b/Test.Loader.TllFile/Test.Loader.csproj
similarity index 80%
rename from Test.Loader.TllFile/Test.Loader.TllFile.csproj
rename to Test.Loader.TllFile/Test.Loader.csproj
index 26e0b60..e7ad3a9 100644
--- a/Test.Loader.TllFile/Test.Loader.TllFile.csproj
+++ b/Test.Loader.TllFile/Test.Loader.csproj
@@ -9,8 +9,8 @@
{68CFCB2F-B52A-43A1-AA5C-5D64A1D655D2}
Library
Properties
- Test.Loader.TllFile
- Test.Loader.TllFile
+ Test.Loader
+ Test.Loader
v3.5
512
{3AC096D0-A1C2-E12C-1390-A8335801FDAB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
@@ -67,8 +67,10 @@
+
+
-
+
@@ -76,9 +78,21 @@
ChanSort.Api
True
-
+
+ {F6F02792-07F1-48D5-9AF3-F945CA5E3931}
+ ChanSort.Loader.Toshiba
+
+
+ {68DA8072-3A29-4076-9F64-D66F38349585}
+ ChanSort.Loader.Panasonic
+
+
+ {A1C9A98D-368A-44E8-9B7F-7EACA46C9EC5}
+ ChanSort.Loader.Samsung
+
+
{E972D8A1-2F5F-421C-AC91-CFF45E5191BE}
- ChanSort.Loader.TllFile
+ ChanSort.Loader.LG
diff --git a/Test.Loader.TllFile/UnitTest1.cs b/Test.Loader.TllFile/UnitTest1.cs
deleted file mode 100644
index 2297c96..0000000
--- a/Test.Loader.TllFile/UnitTest1.cs
+++ /dev/null
@@ -1,197 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Diagnostics;
-using System.IO;
-using System.Linq;
-using System.Reflection;
-using System.Text;
-using ChanSort.Loader.TllFile;
-using Microsoft.VisualStudio.TestTools.UnitTesting;
-
-namespace Test.Loader.TllFile
-{
- [TestClass]
- public class UnitTest1
- {
- #region class ExpectedData
- public class ExpectedData
- {
- public readonly string File;
- public readonly int AnalogChannels;
- public readonly int DtvChannels;
- public readonly int SatChannels;
- public readonly int DtvRadio;
- public readonly int SatRadio;
-
- public ExpectedData(string file, int analog, int dtv, int sat, int dtvRadio, int satRadio)
- {
- this.File = file;
- this.AnalogChannels = analog;
- this.DtvChannels = dtv;
- this.SatChannels = sat;
- this.DtvRadio = dtvRadio;
- this.SatRadio = satRadio;
- }
- }
- #endregion
-
- private readonly Dictionary expectedData = new Dictionary();
-
- #region ctor()
- public UnitTest1()
- {
- var expected = new [] {
- new ExpectedData(@"opel\xx2350D-PZM00001.TLL", 31, 345, 0, 89, 0), // 164/-
- new ExpectedData(@"defycgn\xxLH4010-ZD99970.TLL", 34, 280, 0, 129, 0), // 164/-
- new ExpectedData(@"karlv\xxLD750-ZA00001.TLL", 30, 248, 0, 104, 0), // 176/-
- new ExpectedData(@"JLevi\xxLE5500-ZA00002.TLL", 36, 0, 0,0, 0), // 176/-
- new ExpectedData(@"chlabnet\xxLK450-ZB00001.TLL", 34, 310, 0, 128, 0), // 176/-
- new ExpectedData(@"Stabilo\xxLW4500-ZB00001.TLL", 31 ,338, 0, 34, 0), // 176/-
- new ExpectedData(@"MarioAntonioLiptaj\xxPT353-ZA00001.TLL", 50, 123, 0, 13, 0), // 180/-
- new ExpectedData(@"Muffix\xxLW5500-ZE00001.TLL", 34, 290, 0, 125, 0), // 184/-
- new ExpectedData(@"FranzSteinert\xxCS460S-ZA00001.TLL", 0, 0, 1261, 0, 200), // ?/68
- new ExpectedData(@"Klausi1\xxLK950S-ZA00001.TLL", 37, 390, 2695, 150, 491), // 184/68
- new ExpectedData(@"MP3Chris2712\xxLV570S-ZB00001.TLL", 0, 12, 2895, 0, 669), // 184/68
- new ExpectedData(@"decklen\xxLW570S-ZD00001.TLL", 0, 30, 1598, 0, 339), // 184/68
- new ExpectedData(@"NeuerScan\xxLM340S-ZA00001.TLL", 34, 317, 1698, 129, 264), // 188/68
- new ExpectedData(@"wagnale\xxLM611S-ZA00001.TLL", 0, 13, 1094, 0, 191), // 188/68
- new ExpectedData(@"_Pred\xxLM620S-ZE00021.TLL", 0, 11, 1303, 0, 191) // 192/72
- };
-
- foreach (var entry in expected)
- this.expectedData[entry.File] = entry;
- }
- #endregion
-
- [TestMethod]
- public void MetaTest()
- {
- }
-
- #region TestLoadingAllTllFilesInTestFilesDirectory()
- [TestMethod]
- [DeploymentItem("ChanSort.Loader.TllFile\\ChanSort.Loader.TllFile.ini")]
- public void TestLoadingAllTllFilesInTestFilesDirectory()
- {
- TllFileSerializerPlugin plugin = new TllFileSerializerPlugin();
-
- StringBuilder errors = new StringBuilder();
- var list = this.FindAllTllFiles();
- var models = new Dictionary();
- var firmwareSize = new Dictionary();
- foreach(var file in list)
- {
- if (file.Contains("GlobalClone") || file.Contains("CountrySettings"))
- continue;
- Debug.Print("Testing " + file);
- try
- {
- var serializer = plugin.CreateSerializer(file) as TllFileSerializer;
- Assert.IsNotNull(serializer, "No Serializer for " + file);
-
- serializer.Load();
-
- var fileName = Path.GetFileName(file) ?? "";
- int idx = fileName.IndexOf("-");
- string key = idx < 0 ? fileName : fileName.Substring(0, idx);
- var satChannelList = serializer.DataRoot.GetChannelList(ChanSort.Api.SignalSource.DvbS|ChanSort.Api.SignalSource.Tv);
- key += "\t" + serializer.ACTChannelLength+
- "\t"+serializer.HasDvbs+
- "\t"+serializer.SatChannelLength+
- "\t" + (satChannelList == null ? "n/a" : satChannelList.Count.ToString());
- string relPath = Path.GetFileName(Path.GetDirectoryName(file))+"\\"+fileName;
- models[key] = relPath;
-
- var model = this.GetModel(file);
- if (firmwareSize.ContainsKey(serializer.FirmwareBlockSize))
- {
- string x = firmwareSize[serializer.FirmwareBlockSize];
- if (!x.Contains(model))
- firmwareSize[serializer.FirmwareBlockSize] = x + ", " + model;
- }
- else
- firmwareSize[serializer.FirmwareBlockSize] = model;
-
-
-
- Assert.IsFalse(serializer.DataRoot.IsEmpty, "No channels loaded from " + file);
-
- ExpectedData exp;
- key = Path.GetFileName(Path.GetDirectoryName(file)) + "\\" + Path.GetFileName(file);
- this.expectedData.TryGetValue(key, out exp);
- var analogTv = serializer.DataRoot.GetChannelList(ChanSort.Api.SignalSource.AnalogCT|ChanSort.Api.SignalSource.Tv);
- var dtvTv = serializer.DataRoot.GetChannelList(ChanSort.Api.SignalSource.DvbCT|ChanSort.Api.SignalSource.Tv);
- var satTv = serializer.DataRoot.GetChannelList(ChanSort.Api.SignalSource.DvbS | ChanSort.Api.SignalSource.Tv);
- if (exp != null)
- {
- this.expectedData.Remove(key);
- Assert.AreEqual(exp.AnalogChannels, analogTv.Channels.Count, file + ": analog");
- Assert.AreEqual(exp.DtvChannels, dtvTv.Channels.Count, file + ": DTV");
- Assert.AreEqual(exp.SatChannels, satTv.Channels.Count, file + ": Sat");
- }
- }
- catch(Exception ex)
- {
- errors.AppendLine();
- errors.AppendLine();
- errors.AppendLine(file);
- errors.AppendLine(ex.ToString());
- }
- }
-
- foreach(var model in models.OrderBy(e => e.Key))
- Debug.WriteLine(model.Key + "\t"+model.Value);
-
- foreach (var size in firmwareSize.OrderBy(e => e.Key))
- Debug.WriteLine(size.Key + "\t" + size.Value);
-
- if (this.expectedData.Count > 0)
- Assert.Fail("Some files were not tested: " + this.expectedData.Keys.Aggregate((prev,cur) => prev+","+cur));
- Assert.AreEqual("", errors.ToString());
- }
- #endregion
-
- private string GetModel(string filePath)
- {
- string name = Path.GetFileName(filePath)??"";
- if (name.StartsWith("xx"))
- {
- int idx = name.IndexOf("-");
- if (idx > 0)
- return name.Substring(2, idx - 2);
- }
- return filePath;
- }
-
- #region Helper Methods
-
- private IEnumerable FindAllTllFiles()
- {
- string path = this.GetTestFileDirectory();
- List files = new List();
- this.FindAllTllFilesRecursively(path, files);
- return files;
- }
-
- private string GetTestFileDirectory()
- {
- string exeDir = Assembly.GetExecutingAssembly().Location;
- while (!string.IsNullOrEmpty(exeDir))
- {
- string testFileDir = Path.Combine(exeDir, "TestFiles");
- if (Directory.Exists(testFileDir))
- return testFileDir;
- exeDir = Path.GetDirectoryName(exeDir);
- }
- throw new FileNotFoundException("No 'TestFiles' directory found");
- }
-
- private void FindAllTllFilesRecursively(string path, List files)
- {
- files.AddRange(Directory.GetFiles(path, "*.TLL"));
- foreach (var dir in Directory.GetDirectories(path))
- this.FindAllTllFilesRecursively(dir, files);
- }
- #endregion
- }
-}
diff --git a/readme.txt b/readme.txt
index e5cd617..466a706 100644
--- a/readme.txt
+++ b/readme.txt
@@ -1,82 +1,99 @@
-Version v2013-04-11 ========================================================
+Version v2013-04-21 =======================================================
This is a maintenance release based on version v2013-04-05, which brought a
refurbished user interface and fixes for various usability issues.
-New:
-- Added support for Toshiba *.zip channel lists (containing chmgt.db list)
-- Allow Pr #0 for analog channels
-
-Fixed:
-- first channel list only got populated after switching between tabs
+- Fix: Encryption flag for Samsung analog and DVB-C/T lists now shown
+ correctly
+- Added "Remove channels" function to right list. E.g. you can use this to
+ search and select encrypted channels in the right list and remove them
+ (from the sorted list).
+- Text editor for channel number or name now only opens after holding the
+ left mouse button down for at least 0.5sec. This prevents it from opening
+ when you double-click a channel.
+- Added "Edit channel name" function to menus (due to the editor no longer
+ opening automatically after a short click on the name)
+- Warnings and information about TV file content are no longer shown when
+ opening the file. It can be viewed by using the
+ "File / Show file information" menu item.
+- Added experimental loader for Panasonic TV files. Saving is not
+ supported yet!
The complete change log can be found at the end of this document
-About ChanSort =============================================================
+About ChanSort ============================================================
-ChanSort is a program to manage your Samsung, LG or Toshiba TV's channel list
-on your PC.
+ChanSort is a program to manage your Samsung, LG or Toshiba TV's channel
+list on your PC.
-It allows you to change program numbers and channel names, select your favorites,
-set a parental lock and much more. With its multi-selection capabilities and the
-side-by-side view of your sorted list and the available channels a list can be
-created in no-time.
+It allows you to change program numbers and channel names, select your
+favorites, set a parental lock and much more. With its multi-selection
+capabilities and the side-by-side view of your sorted list and the available
+channels a list can be created in no-time.
-You can apply reference lists to your TV data file to restore a previous order,
-e.g. after running a channel scan. You can even apply the same reference list
-to your LG and Samsung TV.
+You can apply reference lists to your TV data file to restore a previous
+order, e.g. after running a channel scan. You can even apply the same
+reference list to TVs from different manufacturers.
You can get get the latest version and support on
-https://sourceforge.net/projects/chansort/?source=navbar
+http://sourceforge.net/p/chansort/discussion/ or by contacting me by email:
+mailto:horst@beham.biz
-Supported models ===========================================================
-
-LG
-------
- Series: CS, DM, LD, LE, LH, LK, LM*, LS, LV, LW, LX, PM, PT
- Lists: Analog TV, DTV (DVB-C/T), Radio (DVB-C/T), Sat-DTV (DVB-S2), Sat-Radio (DVB-S2)
-
- * NOTE: See system requirements for LM-Series.
- Other models might also work, but have not been tested.
- If you have a .TLL file of a series not listed here, please send it to me.
-
- Instructions on how to access the hidden service-menu for transferring the
- channel list from/to USB can be found here:
- https://sourceforge.net/p/chansort/wiki/Home/
- http://www.ullrich.es/job/service-menue/lg-tlledit-lg-sendersortierung/
-
+Supported TV models =======================================================
Samsung
-------
- Series: B*, C, D, E
- Lists: Air analog, Air digital, Cable analog, Cable digital, Sat digital, Astra HD+
+ Series: B*, C, D, E, F
+ Lists: Air analog, Air digital, Cable analog, Cable digital,
+ Sat digital, Astra HD+
- * NOTE: the "Air Analog"-List of the B-Series doesn't support all editing features
- due to a lack of test files. If you have such a file, please send it to me.
+ * NOTE: the "Air Analog"-List of the B-Series doesn't support all
+ editing features due to a lack of test files. If you have such a file,
+ please send it to me.
Instructions for transferring the channel list can be found on:
http://www.ullrich.es/job/sendersortierung/senderlisten-samsung-tv-exportieren-importieren/
+LG
+------
+ Series: CS, DM, LD, LE, LH, LK, LM*, LS, LV, LW, LX, PM, PT
+ Lists: Analog TV, DTV (DVB-C/T), Radio (DVB-C/T), Sat-DTV (DVB-S2),
+ Sat-Radio (DVB-S2)
+
+ * NOTE: See system requirements for LM-Series.
+ Model xxLM640T is not supported due to its broken firmware.
+ Other models might also work, but have not been tested. If you have a
+ .TLL file of a series not listed here, please send it to me.
+
+ Instructions on how to access the hidden service-menu for transferring
+ the channel list from/to USB can be found here:
+ https://sourceforge.net/p/chansort/wiki/Home/
+ http://www.ullrich.es/job/service-menue/lg-tlledit-lg-sendersortierung/
+
+
+
Toshiba
-------
- Models that export a .zip file containing chmgt.db, dvbSysData.db and dvbMainData.db files.
+ Models that export a .zip file containing chmgt.db, dvbSysData.db and
+ dvbMainData.db files.
(e.g. RL, SL, TL, UL, VL, WL, XL, YL models of series 8xx/9xx)
! USE AT YOUR OWN RISK !
------------------------
-This software was written without access to any official documentation from either
-Samsung or LG about the file formats involved. Without full knowledge about there
-specifics there is a chance of unwanted side-effects or damage to your TV.
+This software was written without access to official documentation about
+the file formats involved. Without full knowledge about the specifics of a
+format there is a chance of unwanted side-effects or damage to your TV.
-System requirements =========================================================
+System requirements =======================================================
- USB-Stick to transfer the channel list between your TV and PC
-- For LG's LM-series you need a programmable remote control to access the service menu
- for transferring the list to/from USB. (e.g. Logitech Harmony 300, One-For-All URC3920,...)
+- For LG's LM-series you need a programmable remote control to access the
+ service menu for transferring the list to/from USB.
+ (e.g. Logitech Harmony 300, One-For-All URC3920,...)
Details can be found on the ChanSort wiki and on
http://openlgtv.org.ru/wiki/index.php/Access_hidden_service_menus_/_modes
- Microsoft .NET Framework 3.5 (included in WinXP SP3, Vista, Win7, Win8)
@@ -85,7 +102,7 @@ System requirements =========================================================
License ===============================================================
GNU General Public Licence, Version 3: http://www.gnu.org/licenses/gpl.html
-Source code available on https://sourceforge.net/projects/chansort/
+Source code available on http://sourceforge.net/projects/chansort/
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
@@ -96,7 +113,24 @@ ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.
-Change log ====================================================================
+Change log ================================================================
+
+2013-04-21
+- Fix: Encryption flag for Samsung analog and DVB-C/T lists now shown
+ correctly
+- Added "Remove channels" function to right list. E.g. you can use this to
+ search and select encrypted channels in the right list and remove them
+ (from the sorted list).
+- Text editor for channel number or name now only opens after holding the
+ left mouse button down for at least 0.5sec. This prevents it from opening
+ when you double-click a channel.
+- Added "Edit channel name" function to menus (due to the editor no longer
+ opening automatically after a short click on the name)
+- Warnings and information about TV file content are no longer shown when
+ opening the file. It can be viewed by using the
+ "File / Show file information" menu item.
+- Added experimental loader for Panasonic TV files.
+ Saving is not supported yet!
2013-04-11
- added support for Toshiba *.zip channel lists (containing chmgt.db list)
@@ -108,12 +142,12 @@ Change log ====================================================================
- Added online check for updated program version
2013-04-07
-- FIX: saving a .TLL file after loading a reference list which contained channels
- that are no longer inside the .TLL caused an error during saving.
+- FIX: saving a .TLL file after loading a reference list which contained
+ channels that are no longer inside the .TLL caused an error during saving
2013-04-06
-- FIX: When double-clicking a channel in the right list, which was already part of the
- sorted list, the wrong channel was selected in the left list.
+- FIX: When double-clicking a channel in the right list, which was already
+ part of the sorted list, the wrong channel was selected in the left list.
- new application icon which is licensed free-to-use
2013-04-05
@@ -122,16 +156,17 @@ Change log ====================================================================
- Support for LG LMxxxT models, which export an invalid DVB-S data block
- Opening a file automatically shows the first non-empty channel list
- Reloading a TV-file will show the last opened list
-- FIX: Deleting rows caused incorrect selections in the left list. Successive
- deletes resulted in the loss of the first channel.
-- FIX: Duplicate Pr# was assigned to channels when they were added out of order
+- FIX: Deleting rows caused incorrect selections in the left list.
+ Successive deletes resulted in the loss of the first channel.
+- FIX: Duplicate Pr# was assigned to channels when they were added out of
+ order
2013-04-04
-- Deleting channels for Samsung TVs now stores the files correctly (no longer
- showing them all on Pr #0 on your TV)
+- Deleting channels for Samsung TVs now stores the files correctly
+ (no longer showing them all on Pr #0 on your TV)
2013-04-03 (major release)
-- complete re-write of the code for loading/saving TV-data files (SCM, TLL)
+- complete re-write of the code for loading/saving TV-data files (SCM, TLL)
and reference lists (CSV).
- added support for LG's LX-models
- channel names can now be edited for both LG and Samsung
@@ -139,8 +174,9 @@ Change log ====================================================================
- Samsung channel lists are now loaded/saved correctly
(program numbers, favorites, locking, frequencies, ...)
- loading a reference list for a Samsung .SCM file which contains both
- air and cable channels or satellite and AstraHD+ channels caused the items
- to be mixed up and all shown in the first list (showing not-found channels in red)
+ air and cable channels or satellite and AstraHD+ channels caused the
+ items to be mixed up and all shown in the first list (showing not-found
+ channels in red)
2013-03-30
- FIX: bei nicht-LM Geräten wurden die DVB-S Programmnummern falsch ausgelesen