diff --git a/ChanSort.Api/ChanSort.Api.csproj b/ChanSort.Api/ChanSort.Api.csproj
index e564e4b..7557e6c 100644
--- a/ChanSort.Api/ChanSort.Api.csproj
+++ b/ChanSort.Api/ChanSort.Api.csproj
@@ -10,9 +10,10 @@
Properties
ChanSort.Api
ChanSort.Api
- v3.5
+ v4.0
512
- Client
+
+
true
@@ -68,6 +69,7 @@
+
diff --git a/ChanSort.Api/ChanSort.Api.csproj.DotSettings b/ChanSort.Api/ChanSort.Api.csproj.DotSettings
new file mode 100644
index 0000000..12e33bc
--- /dev/null
+++ b/ChanSort.Api/ChanSort.Api.csproj.DotSettings
@@ -0,0 +1,2 @@
+
+ True
\ No newline at end of file
diff --git a/ChanSort.Api/Controller/ChlFileSerializer.cs b/ChanSort.Api/Controller/ChlFileSerializer.cs
index 1c17f47..f4cebe5 100644
--- a/ChanSort.Api/Controller/ChlFileSerializer.cs
+++ b/ChanSort.Api/Controller/ChlFileSerializer.cs
@@ -1,5 +1,6 @@
using System.IO;
using System.Linq;
+using System.Text;
namespace ChanSort.Api
{
@@ -11,7 +12,7 @@ namespace ChanSort.Api
public class ChlFileSerializer
{
private static readonly char[] Separators = new[] { ';' };
- private readonly System.Text.StringBuilder warnings = new System.Text.StringBuilder();
+ private readonly StringBuilder warnings = new StringBuilder();
private int lineNumber;
private DataRoot dataRoot;
private ChannelList channelList;
@@ -30,7 +31,7 @@ namespace ChanSort.Api
foreach (var channel in this.channelList.Channels)
channel.NewProgramNr = -1;
- using (var stream = new StreamReader(fileName, System.Text.Encoding.Default))
+ using (var stream = new StreamReader(fileName, Encoding.Default))
{
ReadChannelsFromStream(stream);
}
@@ -97,5 +98,23 @@ namespace ChanSort.Api
this.warnings.AppendFormat("Line {0,4}: Pr# {1,4}, channel '{2}' found multiple times\r\n", this.lineNumber, progNr, name);
}
#endregion
+
+ #region Save()
+ public void Save(string fileName, ChannelList list)
+ {
+ using (var writer = new StreamWriter(fileName, false, Encoding.UTF8))
+ {
+ foreach (var channel in list.Channels.OrderBy(c => c.NewProgramNr))
+ {
+ if (channel.NewProgramNr == -1) continue;
+
+ writer.Write(channel.NewProgramNr);
+ writer.Write(';');
+ writer.Write(channel.Name);
+ writer.WriteLine();
+ }
+ }
+ }
+ #endregion
}
}
diff --git a/ChanSort.Api/Controller/CsvFileSerializer.cs b/ChanSort.Api/Controller/CsvFileSerializer.cs
index 8f13962..f923c88 100644
--- a/ChanSort.Api/Controller/CsvFileSerializer.cs
+++ b/ChanSort.Api/Controller/CsvFileSerializer.cs
@@ -15,12 +15,14 @@ namespace ChanSort.Api
private readonly HashSet clearedLists = new HashSet();
private readonly DataRoot dataRoot;
private readonly string fileName;
+ private readonly bool addChannels;
#region ctor()
- public CsvFileSerializer(string fileName, DataRoot dataRoot)
+ public CsvFileSerializer(string fileName, DataRoot dataRoot, bool addChannels)
{
this.fileName = fileName;
this.dataRoot = dataRoot;
+ this.addChannels = addChannels;
}
#endregion
@@ -77,13 +79,21 @@ namespace ChanSort.Api
var channel = channels == null ? null : channels.FirstOrDefault(c => c.NewProgramNr == -1);
if (channel != null)
{
- channel.NewProgramNr = programNr;
- if (parts.Count >= 7)
- ApplyFlags(channel, parts[6]);
+ if (!this.addChannels)
+ {
+ channel.NewProgramNr = programNr;
+ if (parts.Count >= 7)
+ ApplyFlags(channel, parts[6]);
+ }
}
else if (parts.Count >= 6) // create proxy channel when using the new ref-list format
{
channel = new ChannelInfo(signalSource, uid, programNr, name);
+ if (addChannels)
+ {
+ channel.NewProgramNr = -1;
+ channel.OldProgramNr = programNr;
+ }
channelList.AddChannel(channel);
}
}
@@ -135,7 +145,7 @@ namespace ChanSort.Api
var channelList = dataRoot.GetChannelList(signalSource);
if (channelList == null || channelList.ReadOnly)
return null;
- if (!this.clearedLists.Contains(channelList))
+ if (!this.addChannels && !this.clearedLists.Contains(channelList))
{
foreach (var channel in channelList.Channels)
channel.NewProgramNr = -1;
diff --git a/ChanSort.Api/Model/DataRoot.cs b/ChanSort.Api/Model/DataRoot.cs
index 82bfc75..6796a14 100644
--- a/ChanSort.Api/Model/DataRoot.cs
+++ b/ChanSort.Api/Model/DataRoot.cs
@@ -7,12 +7,14 @@ namespace ChanSort.Api
{
private readonly IDictionary satellites = new Dictionary();
private readonly IDictionary transponder = new Dictionary();
+ private readonly IDictionary lnbConfig = new Dictionary();
private readonly IList channelLists = new List();
private readonly StringBuilder warnings = new StringBuilder();
public StringBuilder Warnings { get { return this.warnings; } }
public IDictionary Satellites { get { return this.satellites; } }
public IDictionary Transponder { get { return this.transponder; } }
+ public IDictionary LnbConfig { get { return this.lnbConfig; } }
public ICollection ChannelLists { get { return this.channelLists; } }
public bool IsEmpty { get { return this.channelLists.Count == 0; } }
public bool NeedsSaving { get; set; }
@@ -45,6 +47,13 @@ namespace ChanSort.Api
}
#endregion
+ #region AddLnbConfig()
+ public void AddLnbConfig(LnbConfig lnb)
+ {
+ this.lnbConfig.Add(lnb.Id, lnb);
+ }
+ #endregion
+
#region AddChannelList()
public virtual void AddChannelList(ChannelList list)
{
diff --git a/ChanSort.Api/Model/LnbConfig.cs b/ChanSort.Api/Model/LnbConfig.cs
new file mode 100644
index 0000000..2aa3d91
--- /dev/null
+++ b/ChanSort.Api/Model/LnbConfig.cs
@@ -0,0 +1,7 @@
+namespace ChanSort.Api
+{
+ public class LnbConfig
+ {
+ public int Id { get; protected set; }
+ }
+}
diff --git a/ChanSort.Api/Model/Satellite.cs b/ChanSort.Api/Model/Satellite.cs
index a74c460..df37910 100644
--- a/ChanSort.Api/Model/Satellite.cs
+++ b/ChanSort.Api/Model/Satellite.cs
@@ -17,9 +17,12 @@ namespace ChanSort.Api
this.id = id;
}
+ public LnbConfig LnbConfig { get; set; }
+
public override string ToString()
{
return Name;
}
+
}
}
diff --git a/ChanSort.Api/Resources.Designer.cs b/ChanSort.Api/Resources.Designer.cs
index 8de5a0e..fd49a5b 100644
--- a/ChanSort.Api/Resources.Designer.cs
+++ b/ChanSort.Api/Resources.Designer.cs
@@ -1,7 +1,7 @@
//------------------------------------------------------------------------------
//
// This code was generated by a tool.
-// Runtime Version:4.0.30319.586
+// Runtime Version:4.0.30319.18052
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
diff --git a/ChanSort.Api/Utils/IniFile.cs b/ChanSort.Api/Utils/IniFile.cs
index 4e719a2..91f1697 100644
--- a/ChanSort.Api/Utils/IniFile.cs
+++ b/ChanSort.Api/Utils/IniFile.cs
@@ -133,6 +133,8 @@ namespace ChanSort.Api
{
Section currentSection = null;
string line;
+ string key = null;
+ string val = null;
while ((line = rdr.ReadLine()) != null)
{
string trimmedLine = line.Trim();
@@ -150,12 +152,23 @@ namespace ChanSort.Api
}
if (currentSection == null)
continue;
- int idx = trimmedLine.IndexOf("=");
- if (idx < 0)
- continue;
- string key = trimmedLine.Substring(0, idx).Trim();
- string val = trimmedLine.Substring(idx + 1).Trim();
- currentSection.Set(key, val);
+ if (val == null)
+ {
+ int idx = trimmedLine.IndexOf("=");
+ if (idx < 0)
+ continue;
+ key = trimmedLine.Substring(0, idx).Trim();
+ val = trimmedLine.Substring(idx + 1).Trim();
+ }
+ else
+ val += line;
+ if (val.EndsWith("\\"))
+ val = val.Substring(val.Length - 1).Trim();
+ else
+ {
+ currentSection.Set(key, val);
+ val = null;
+ }
}
}
}
diff --git a/ChanSort.Api/Utils/Tools.cs b/ChanSort.Api/Utils/Tools.cs
index 6e206c8..63e5260 100644
--- a/ChanSort.Api/Utils/Tools.cs
+++ b/ChanSort.Api/Utils/Tools.cs
@@ -1,4 +1,5 @@
-using System.Collections.Generic;
+using System;
+using System.Collections.Generic;
namespace ChanSort.Api
{
@@ -11,6 +12,7 @@ namespace ChanSort.Api
return val;
}
+ #region GetAnalogChannelNumber()
public static string GetAnalogChannelNumber(int freq)
{
if (freq < 41) return "";
@@ -23,20 +25,58 @@ namespace ChanSort.Api
if (freq <= 1000) return ((freq - 471)/8 + 21).ToString("d2"); // Band IV, V
return "";
}
+ #endregion
- public static void SetInt16(byte[] data, int offset, int value)
+ #region GetInt16/32()
+
+ public static int GetInt16(byte[] data, int offset, bool littleEndian)
{
- data[offset+0] = (byte)value;
- data[offset + 1] = (byte) (value >> 8);
+ return littleEndian ? BitConverter.ToInt16(data, offset) : (data[offset] << 8) + data[offset + 1];
}
- public static void SetInt32(byte[] data, int offset, int value)
+ public static int GetInt32(byte[] data, int offset, bool littleEndian)
{
- data[offset + 0] = (byte)value;
- data[offset + 1] = (byte)(value >> 8);
- data[offset + 2] = (byte)(value >> 16);
- data[offset + 3] = (byte)(value >> 24);
+ return littleEndian ? BitConverter.ToInt32(data, offset) :
+ (data[offset] << 24) + (data[offset + 1] << 16) + (data[offset + 2] << 8) + data[offset + 3];
}
+ #endregion
+
+ #region SetInt16/32()
+
+ public static void SetInt16(byte[] data, int offset, int value, bool littleEndian = true)
+ {
+ if (littleEndian)
+ {
+ data[offset + 0] = (byte) value;
+ data[offset + 1] = (byte) (value >> 8);
+ }
+ else
+ {
+ data[offset + 0] = (byte)(value >> 8);
+ data[offset + 1] = (byte) value;
+ }
+ }
+
+ public static void SetInt32(byte[] data, int offset, int value, bool littleEndian = true)
+ {
+ if (littleEndian)
+ {
+ data[offset + 0] = (byte) value;
+ data[offset + 1] = (byte) (value >> 8);
+ data[offset + 2] = (byte) (value >> 16);
+ data[offset + 3] = (byte) (value >> 24);
+ }
+ else
+ {
+ data[offset + 0] = (byte)(value >> 24);
+ data[offset + 1] = (byte)(value >> 16);
+ data[offset + 2] = (byte)(value >> 8);
+ data[offset + 3] = (byte)value;
+ }
+ }
+ #endregion
+
+ #region MemCopy(), MemSet()
public static void MemCopy(byte[] source, int sourceIndex, byte[] dest, int destIndex, int count)
{
@@ -49,5 +89,6 @@ namespace ChanSort.Api
for (int i = 0; i < count; i++)
data[offset++] = value;
}
+ #endregion
}
}
diff --git a/ChanSort.Loader.LG/ChanSort.Loader.LG.csproj b/ChanSort.Loader.LG/ChanSort.Loader.LG.csproj
index 5787312..081ead9 100644
--- a/ChanSort.Loader.LG/ChanSort.Loader.LG.csproj
+++ b/ChanSort.Loader.LG/ChanSort.Loader.LG.csproj
@@ -10,7 +10,7 @@
Properties
ChanSort.Loader.LG
ChanSort.Loader.LG
- v3.5
+ v4.0
512
@@ -56,9 +56,9 @@
true
-
-
-
+
+
+
@@ -73,6 +73,7 @@
+
Form
diff --git a/ChanSort.Loader.LG/ChanSort.Loader.LG.ini b/ChanSort.Loader.LG/ChanSort.Loader.LG.ini
index c50aee8..97aaae0 100644
--- a/ChanSort.Loader.LG/ChanSort.Loader.LG.ini
+++ b/ChanSort.Loader.LG/ChanSort.Loader.LG.ini
@@ -376,6 +376,7 @@
offVideoPid = 60
offAudioPid = 62
+
[SatChannelDataMapping:72]
; LM series
lenName = 40
@@ -403,6 +404,11 @@
offName = 20
offVideoPid = 60
offAudioPid = 62
+ newRecordTemplate = \
+0, 0, 0, 0, 7, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 31, 255, 31
+252, 127, 0, 0, 0, 0, 0, 0
+
[SatChannelDataMapping:76]
; LN series
@@ -460,6 +466,21 @@
offVideoPid = 72
offAudioPid = 74
+[LnbMapping:44]
+ ; all except LA
+ offSettingId = 0
+ offSatIndex = 4
+
+[LnbMapping:48]
+ ; LA
+ offSettingId = 0
+ offSatIndex = 4
+
+[LnbMapping:52]
+ ; LN
+ offSettingId = 0
+ offSatIndex = 4
+
[FirmwareData:6936]
; LH3000
offSize = 0
diff --git a/ChanSort.Loader.LG/LnbConfig.cs b/ChanSort.Loader.LG/LnbConfig.cs
new file mode 100644
index 0000000..179056f
--- /dev/null
+++ b/ChanSort.Loader.LG/LnbConfig.cs
@@ -0,0 +1,18 @@
+using ChanSort.Api;
+
+namespace ChanSort.Loader.LG
+{
+ internal class LnbConfig : Api.LnbConfig
+ {
+ public Satellite Satellite { get; private set; }
+
+ public LnbConfig(DataMapping mapping, DataRoot dataRoot)
+ {
+ this.Id = mapping.GetByte("SettingId");
+ if (this.Id == 0)
+ return;
+ int satIndex = mapping.GetByte("SatIndex");
+ this.Satellite = dataRoot.Satellites[satIndex];
+ }
+ }
+}
diff --git a/ChanSort.Loader.LG/PresetProgramNrDialog.resx b/ChanSort.Loader.LG/PresetProgramNrDialog.resx
index 2d00e34..8cae940 100644
--- a/ChanSort.Loader.LG/PresetProgramNrDialog.resx
+++ b/ChanSort.Loader.LG/PresetProgramNrDialog.resx
@@ -121,8 +121,8 @@
Top, Left, Right
-
-
+
+
Vertical
@@ -143,7 +143,7 @@
labelControl1
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -157,7 +157,7 @@
Tahoma, 8.25pt, style=Bold
-
+
Vertical
@@ -176,7 +176,7 @@
labelControl3
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -190,7 +190,7 @@
Tahoma, 8.25pt, style=Bold
-
+
Vertical
@@ -209,7 +209,7 @@
labelControl4
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -220,7 +220,7 @@
Top, Left, Right
-
+
Vertical
@@ -239,7 +239,7 @@
labelControl5
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -250,7 +250,7 @@
Top, Left, Right
-
+
Vertical
@@ -269,7 +269,7 @@
labelControl6
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -280,7 +280,7 @@
Top, Left, Right
-
+
Vertical
@@ -299,7 +299,7 @@
labelControl7
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -353,7 +353,7 @@
btnOk
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -364,7 +364,7 @@
Top, Left, Right
-
+
Vertical
@@ -383,7 +383,7 @@
labelControl2
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -410,6 +410,6 @@
PresetProgramNrDialog
- DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
\ No newline at end of file
diff --git a/ChanSort.Loader.LG/Properties/licenses.licx b/ChanSort.Loader.LG/Properties/licenses.licx
index 1694bc1..e69de29 100644
--- a/ChanSort.Loader.LG/Properties/licenses.licx
+++ b/ChanSort.Loader.LG/Properties/licenses.licx
@@ -1,3 +0,0 @@
-DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
diff --git a/ChanSort.Loader.LG/Resource.Designer.cs b/ChanSort.Loader.LG/Resource.Designer.cs
index b2b1f3c..ddf11d3 100644
--- a/ChanSort.Loader.LG/Resource.Designer.cs
+++ b/ChanSort.Loader.LG/Resource.Designer.cs
@@ -1,7 +1,7 @@
//------------------------------------------------------------------------------
//
// This code was generated by a tool.
-// Runtime Version:4.0.30319.586
+// Runtime Version:4.0.30319.18052
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
diff --git a/ChanSort.Loader.LG/SatChannel.cs b/ChanSort.Loader.LG/SatChannel.cs
index 9d4109e..c4f94ed 100644
--- a/ChanSort.Loader.LG/SatChannel.cs
+++ b/ChanSort.Loader.LG/SatChannel.cs
@@ -36,14 +36,22 @@ namespace ChanSort.Loader.LG
this.FreqInMhz = transponder.FrequencyInMhz;
}
- public override void UpdateRawData()
+ internal static SatChannel CreateFromProxy(ChannelInfo proxy, DataRoot dataRoot, DataMapping mapping, int rawSize)
{
- base.UpdateRawData();
-#if false
- bool deleted = this.NewProgramNr == -1;
- if (deleted)
- mapping.SetWord(_SatConfigIndex, 0xFFFF);
-#endif
- }
+ if (proxy.Transponder == null || proxy.Transponder.Satellite == null || proxy.Transponder.Satellite.LnbConfig == null)
+ return null;
+
+ byte[] rawData = mapping.Settings.GetBytes("newRecordTemplate");
+ if (rawData == null)
+ return null;
+
+ mapping.SetDataPtr(rawData, 0);
+ mapping.SetWord(_SatConfigIndex, proxy.Transponder.Satellite.LnbConfig.Id);
+ mapping.SetWord(_TransponderIndex, proxy.Transponder.Id);
+ mapping.SetWord(_ServiceId, proxy.ServiceId);
+ var channel = new SatChannel(0, proxy.NewProgramNr, mapping, dataRoot);
+ channel.Name = proxy.Name;
+ return channel;
+ }
}
}
diff --git a/ChanSort.Loader.LG/TllChannelBase.cs b/ChanSort.Loader.LG/TllChannelBase.cs
index e78195c..59731e8 100644
--- a/ChanSort.Loader.LG/TllChannelBase.cs
+++ b/ChanSort.Loader.LG/TllChannelBase.cs
@@ -5,28 +5,28 @@ namespace ChanSort.Loader.LG
public class TllChannelBase : ChannelInfo
{
// common
- private const string _ProgramNr = "offProgramNr";
- private const string _ProgramNr2 = "offProgramNr2"; // not for DVB-S
- private const string _Name = "offName";
- private const string _NameLength = "offNameLength";
- private const string _Favorites = "offFavorites"; // not for DVB-S (which only uses Favorite2)
+ protected const string _ProgramNr = "offProgramNr";
+ protected const string _ProgramNr2 = "offProgramNr2"; // not for DVB-S
+ protected const string _Name = "offName";
+ protected const string _NameLength = "offNameLength";
+ protected const string _Favorites = "offFavorites"; // not for DVB-S (which only uses Favorite2)
- private const string _Deleted = "Deleted";
- private const string _Favorites2 = "offFavorites2";
- private const string _Encrypted = "Encrypted";
+ protected const string _Deleted = "Deleted";
+ protected const string _Favorites2 = "offFavorites2";
+ protected const string _Encrypted = "Encrypted";
- private const string _Lock = "Lock";
- private const string _Skip = "Skip";
- private const string _Hide = "Hide";
- private const string _Moved = "ProgNrCustomized";
+ protected const string _Lock = "Lock";
+ protected const string _Skip = "Skip";
+ protected const string _Hide = "Hide";
+ protected const string _Moved = "ProgNrCustomized";
// DVB
- private const string _ServiceId = "offServiceId";
- private const string _VideoPid = "offVideoPid";
- private const string _AudioPid = "offAudioPid";
- private const string _OriginalNetworkId = "offOriginalNetworkId";
- private const string _TransportStreamId = "offTransportStreamId";
- private const string _ServiceType = "offServiceType";
+ protected const string _ServiceId = "offServiceId";
+ protected const string _VideoPid = "offVideoPid";
+ protected const string _AudioPid = "offAudioPid";
+ protected const string _OriginalNetworkId = "offOriginalNetworkId";
+ protected const string _TransportStreamId = "offTransportStreamId";
+ protected const string _ServiceType = "offServiceType";
protected readonly DataMapping mapping;
protected readonly byte[] rawData;
@@ -121,5 +121,8 @@ namespace ChanSort.Loader.LG
this.ParseNames();
}
#endregion
+
+ internal byte[] RawDataBuffer { get { return this.rawData; } }
+ internal int RawDataOffset { get { return this.baseOffset; } }
}
}
diff --git a/ChanSort.Loader.LG/TllFileSerializer.cs b/ChanSort.Loader.LG/TllFileSerializer.cs
index f07adac..65e1028 100644
--- a/ChanSort.Loader.LG/TllFileSerializer.cs
+++ b/ChanSort.Loader.LG/TllFileSerializer.cs
@@ -24,6 +24,7 @@ namespace ChanSort.Loader.LG
private readonly MappingPool dvbsMappings = new MappingPool("DVB-S Channel");
private readonly MappingPool dvbsTransponderMappings = new MappingPool("DVB-S Transponder");
private readonly MappingPool firmwareMappings = new MappingPool("Firmware");
+ private readonly MappingPool lnbMappings = new MappingPool("LNB Config");
private readonly ChannelList atvChannels = new ChannelList(SignalSource.AnalogCT | SignalSource.Tv, "Analog TV");
private readonly ChannelList dvbcTvChannels = new ChannelList(SignalSource.DvbC | SignalSource.Tv, "DVB-C TV");
@@ -64,6 +65,7 @@ namespace ChanSort.Loader.LG
private int presetChannels;
private bool removeDeletedActChannels = false;
+ private bool mustReorganizeDvbs = false;
private decimal dvbsSymbolRateFactor;
#region ctor()
@@ -111,6 +113,8 @@ namespace ChanSort.Loader.LG
dvbsMappings.AddMapping(recordLength, new DataMapping(section));
else if (section.Name.StartsWith("TransponderDataMapping"))
dvbsTransponderMappings.AddMapping(recordLength, new DataMapping(section));
+ else if (section.Name.StartsWith("LnbMapping"))
+ lnbMappings.AddMapping(recordLength, new DataMapping(section));
else if (section.Name.StartsWith("FirmwareData"))
firmwareMappings.AddMapping(recordLength, new FirmwareData(section));
}
@@ -357,7 +361,7 @@ namespace ChanSort.Loader.LG
this.ReadDvbsChannels(ref off, header.LinkedListStartIndex);
// subblock 5 (satellite/LNB config)
- off += satConfig.LnbBlockHeaderSize + satConfig.lnbCount*satConfig.lnbLength;
+ this.ReadLnbConfig(ref off);
}
#endregion
@@ -503,6 +507,25 @@ namespace ChanSort.Loader.LG
}
#endregion
+ #region ReadLnbConfig()
+ private void ReadLnbConfig(ref int off)
+ {
+ off += satConfig.LnbBlockHeaderSize;
+ var mapping = this.lnbMappings.GetMapping(satConfig.lnbLength);
+ for (int i = 0; i < satConfig.lnbCount; i++)
+ {
+ mapping.SetDataPtr(this.fileContent, off);
+ var lnb = new LnbConfig(mapping, this.DataRoot);
+ if (lnb.Id != 0)
+ {
+ lnb.Satellite.LnbConfig = lnb;
+ this.DataRoot.AddLnbConfig(lnb);
+ }
+ off += satConfig.lnbLength;
+ }
+ }
+ #endregion
+
// Test code for fixing broken DVB-S block of xxLM640T ==========
#region EraseDvbsBlock()
@@ -625,20 +648,21 @@ namespace ChanSort.Loader.LG
{
// even if there's 0 channels, channel[0] must contain valid data
Tools.MemSet(this.fileContent,
- this.dvbsBlockOffset + satConfig.ChannelListOffset + 1 * satConfig.dvbsChannelLength,
+ this.dvbsBlockOffset + satConfig.ChannelListOffset + 1*satConfig.dvbsChannelLength,
0xFF,
- (satConfig.dvbsMaxChannelCount - 1) * satConfig.dvbsChannelLength);
+ (satConfig.dvbsMaxChannelCount - 1)*satConfig.dvbsChannelLength);
}
else
{
Tools.MemCopy(sortedChannels, 0,
- this.fileContent, this.dvbsBlockOffset + satConfig.ChannelListOffset,
- channelCounter * satConfig.dvbsChannelLength);
+ this.fileContent, this.dvbsBlockOffset + satConfig.ChannelListOffset,
+ channelCounter*satConfig.dvbsChannelLength);
Tools.MemSet(this.fileContent,
- this.dvbsBlockOffset + satConfig.ChannelListOffset + channelCounter * satConfig.dvbsChannelLength,
+ this.dvbsBlockOffset + satConfig.ChannelListOffset + channelCounter*satConfig.dvbsChannelLength,
0xFF,
- (satConfig.dvbsMaxChannelCount - channelCounter) * satConfig.dvbsChannelLength);
+ (satConfig.dvbsMaxChannelCount - channelCounter)*satConfig.dvbsChannelLength);
}
+
UpdateChannelAllocationBitmap(channelCounter);
UpdateChannelLinkedList(channelCounter);
UpdateDvbsChecksums();
@@ -676,11 +700,12 @@ namespace ChanSort.Loader.LG
UpdateChannelIndexInTransponderData(channel, ref prevTransponderIndex, counter, ref currentTransponder);
- Tools.MemCopy(this.fileContent,
- this.dvbsBlockOffset + satConfig.ChannelListOffset + channel.RecordIndex*satConfig.dvbsChannelLength,
- sortedChannels,
- counter*satConfig.dvbsChannelLength,
- satConfig.dvbsChannelLength);
+ Tools.MemCopy(
+ channel.RawDataBuffer,
+ channel.RawDataOffset,
+ sortedChannels,
+ counter*satConfig.dvbsChannelLength,
+ satConfig.dvbsChannelLength);
channel.RecordIndex = counter++;
channel.baseOffset = this.dvbsBlockOffset + satConfig.ChannelListOffset + channel.RecordIndex*satConfig.dvbsChannelLength;
@@ -778,6 +803,12 @@ namespace ChanSort.Loader.LG
if (this.reorderPhysically || removeDeletedActChannels)
this.ReorderActChannelsPhysically();
+ if (this.mustReorganizeDvbs)
+ {
+ this.CleanUpChannelData();
+ this.mustReorganizeDvbs = false;
+ }
+
if (this.dvbsSubblockCrcOffset != null)
this.UpdateDvbsChecksums();
@@ -817,21 +848,44 @@ namespace ChanSort.Loader.LG
newDvbctChannelCount = 0;
foreach (var list in this.DataRoot.ChannelLists)
{
- foreach (ChannelInfo channel in list.Channels)
+ int count = list.Channels.Count;
+ for (int i=0; icbHbbTv
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpOption
@@ -166,7 +166,7 @@
cbCustomCountry
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpOption
@@ -177,8 +177,8 @@
72, 29
-
-
+
+
Combo
@@ -191,7 +191,7 @@
comboBoxEdit1
- DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpOption
@@ -215,7 +215,7 @@
labelControl1
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpOption
@@ -242,7 +242,7 @@
grpOption
- DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -269,7 +269,7 @@
btnOk
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -296,7 +296,7 @@
btnCancel
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -304,8 +304,8 @@
2
-
-
+
+
Vertical
@@ -324,7 +324,7 @@
labelControl3
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpHotelMode
@@ -348,7 +348,7 @@
labelControl2
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpHotelMode
@@ -375,7 +375,7 @@
cbDtvUpdate
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpHotelMode
@@ -402,7 +402,7 @@
cbHotelMode
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpHotelMode
@@ -429,7 +429,7 @@
grpHotelMode
- DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -456,7 +456,7 @@
cbAutoChannelUpdate
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpSetup
@@ -483,7 +483,7 @@
grpSetup
- DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -491,7 +491,7 @@
5
-
+
Vertical
@@ -510,7 +510,7 @@
labelControl4
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpInformation
@@ -537,7 +537,7 @@
grpInformation
- DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -567,7 +567,7 @@
lblHotelMenuAutoDetect
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -594,6 +594,6 @@
TvSettingsForm
- DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
\ No newline at end of file
diff --git a/ChanSort.Loader.Panasonic/ChanSort.Loader.Panasonic.csproj b/ChanSort.Loader.Panasonic/ChanSort.Loader.Panasonic.csproj
index ac789b9..5ff604b 100644
--- a/ChanSort.Loader.Panasonic/ChanSort.Loader.Panasonic.csproj
+++ b/ChanSort.Loader.Panasonic/ChanSort.Loader.Panasonic.csproj
@@ -10,7 +10,7 @@
Properties
ChanSort.Loader.Panasonic
ChanSort.Loader.Panasonic
- v3.5
+ v4.0
512
diff --git a/ChanSort.Loader.Panasonic/Serializer.cs b/ChanSort.Loader.Panasonic/Serializer.cs
index 31b51c9..7c95c73 100644
--- a/ChanSort.Loader.Panasonic/Serializer.cs
+++ b/ChanSort.Loader.Panasonic/Serializer.cs
@@ -23,6 +23,7 @@ namespace ChanSort.Loader.Panasonic
private CypherMode cypherMode;
private byte[] fileHeader = new byte[0];
private int dbSizeOffset;
+ private bool littleEndianByteOrder = false;
enum CypherMode
{
@@ -410,11 +411,9 @@ namespace ChanSort.Loader.Panasonic
if (this.CalcChecksum(data, data.Length) != 0)
throw new FileLoadException("Checksum validation failed");
- int offset = 30 + (data[28] << 8) + data[29];
- this.dbSizeOffset = offset;
- int dbSize = (data[offset] << 24) + (data[offset + 1] << 16) + (data[offset + 2] << 8) + data[offset + 3];
- offset += 4;
- if (data.Length != offset + dbSize + 4)
+ int offset;
+ if (!this.ValidateFileSize(data, false, out offset)
+ && !this.ValidateFileSize(data, true, out offset))
throw new FileLoadException("File size validation failed");
using (var stream = new FileStream(outputFile, FileMode.Create, FileAccess.Write))
@@ -425,6 +424,19 @@ namespace ChanSort.Loader.Panasonic
}
#endregion
+ #region ValidateFileSize()
+ private bool ValidateFileSize(byte[] data, bool littleEndian, out int offset)
+ {
+ this.littleEndianByteOrder = littleEndian;
+ offset = 30 + Tools.GetInt16(data, 28, littleEndian);
+ if (offset >= data.Length) return false;
+ this.dbSizeOffset = offset;
+ int dbSize = Tools.GetInt32(data, offset, littleEndian);
+ offset += 4;
+ return data.Length == offset + dbSize + 4;
+ }
+ #endregion
+
#region CalcChecksum()
private uint CalcChecksum(byte[] data, int length)
{
@@ -607,11 +619,7 @@ order by s.ntype,major_channel
using (var stream = new FileStream(this.workFile, FileMode.Open, FileAccess.Read))
stream.Read(data, fileHeader.Length, (int)workFileSize);
- data[this.dbSizeOffset + 0] = (byte)(workFileSize >> 24);
- data[this.dbSizeOffset + 1] = (byte)(workFileSize >> 16);
- data[this.dbSizeOffset + 2] = (byte)(workFileSize >> 8);
- data[this.dbSizeOffset + 3] = (byte)(workFileSize);
-
+ Tools.SetInt32(data, this.dbSizeOffset, (int)workFileSize, this.littleEndianByteOrder);
this.UpdateChecksum(data);
using (var stream = new FileStream(this.FileName, FileMode.Create, FileAccess.Write))
diff --git a/ChanSort.Loader.Samsung/ChanSort.Loader.Samsung.csproj b/ChanSort.Loader.Samsung/ChanSort.Loader.Samsung.csproj
index 3e9538f..fc1235e 100644
--- a/ChanSort.Loader.Samsung/ChanSort.Loader.Samsung.csproj
+++ b/ChanSort.Loader.Samsung/ChanSort.Loader.Samsung.csproj
@@ -10,7 +10,7 @@
Properties
ChanSort.Loader.Samsung
ChanSort.Loader.Samsung
- v3.5
+ v4.0
512
diff --git a/ChanSort.Loader.Toshiba/ChanSort.Loader.Toshiba.csproj b/ChanSort.Loader.Toshiba/ChanSort.Loader.Toshiba.csproj
index 770f0b2..d694590 100644
--- a/ChanSort.Loader.Toshiba/ChanSort.Loader.Toshiba.csproj
+++ b/ChanSort.Loader.Toshiba/ChanSort.Loader.Toshiba.csproj
@@ -10,7 +10,7 @@
Properties
ChanSort.Loader.Toshiba
ChanSort.Loader.Toshiba
- v3.5
+ v4.0
512
diff --git a/ChanSort/AboutForm.resx b/ChanSort/AboutForm.resx
index 2a7b249..d0738ef 100644
--- a/ChanSort/AboutForm.resx
+++ b/ChanSort/AboutForm.resx
@@ -117,8 +117,8 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
+
+
Vertical
@@ -139,7 +139,7 @@
lblWebsite
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -170,7 +170,7 @@
lnkDownload
- DevExpress.XtraEditors.HyperLinkEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.HyperLinkEdit, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -194,7 +194,7 @@
gcPlugins
- DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
horst@beham.biz
@@ -215,7 +215,7 @@
lnkEmail
- DevExpress.XtraEditors.HyperLinkEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.HyperLinkEdit, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -223,7 +223,7 @@
7
-
+
Vertical
@@ -242,7 +242,7 @@
lblAuthor
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -250,7 +250,7 @@
6
-
+
Vertical
@@ -269,7 +269,7 @@
lblLicense
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -299,7 +299,7 @@
lnkLicense
- DevExpress.XtraEditors.HyperLinkEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.HyperLinkEdit, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -307,7 +307,7 @@
4
-
+
Vertical
@@ -326,7 +326,7 @@
lblCredits
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -350,7 +350,7 @@
txtCredits
- DevExpress.XtraEditors.MemoEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.MemoEdit, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -377,7 +377,7 @@
btnClose
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -401,7 +401,7 @@
txtAuthor
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -428,30 +428,30 @@
gvPlugins
- DevExpress.XtraGrid.Views.Grid.GridView, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Views.Grid.GridView, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colPlugin
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colDisplayText
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colFileTypes
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
AboutForm
- DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
\ No newline at end of file
diff --git a/ChanSort/ActionBox.resx b/ChanSort/ActionBox.resx
index dcf11f7..fb21e0a 100644
--- a/ChanSort/ActionBox.resx
+++ b/ChanSort/ActionBox.resx
@@ -125,8 +125,8 @@
Tahoma, 9pt
-
-
+
+
Vertical
@@ -146,7 +146,7 @@
lblMessage
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -160,8 +160,8 @@
32, 32
-
-
+
+
AAEAAAD/////AQAAAAAAAAAMAgAAAFpEZXZFeHByZXNzLlV0aWxzLnYxMi4yLCBWZXJzaW9uPTEyLjIu
OC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEMAwAAAFFT
@@ -459,12 +459,12 @@
imageCollection1
- DevExpress.Utils.ImageCollection, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.Utils.ImageCollection, DevExpress.Utils.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
ActionBoxDialog
- DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
\ No newline at end of file
diff --git a/ChanSort/ChanSort.csproj b/ChanSort/ChanSort.csproj
index 8a2fdd8..a9d71b7 100644
--- a/ChanSort/ChanSort.csproj
+++ b/ChanSort/ChanSort.csproj
@@ -10,7 +10,7 @@
Properties
ChanSort.Ui
ChanSort
- v3.5
+ v4.0
512
@@ -58,22 +58,25 @@
app.ico
-
+
False
-
+
False
-
+
False
-
+
False
-
+
False
-
+
+ False
+
+
False
@@ -81,7 +84,7 @@
-
+
diff --git a/ChanSort/CharsetForm.resx b/ChanSort/CharsetForm.resx
index 77cbdf6..9b00c74 100644
--- a/ChanSort/CharsetForm.resx
+++ b/ChanSort/CharsetForm.resx
@@ -138,13 +138,13 @@
btnCancel
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
433, 446
- DevExpress.XtraGrid.Views.Grid.GridView, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Views.Grid.GridView, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
CharsetForm
@@ -178,12 +178,12 @@
0
-
-
+
+
Center
-
-
+
+
None
@@ -196,7 +196,7 @@
Top, Right
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
Fill
@@ -211,10 +211,10 @@
$this
- DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colName
@@ -259,7 +259,7 @@
gcCharset
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.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.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
75, 23
@@ -337,7 +337,7 @@
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
433, 483
@@ -346,17 +346,17 @@
142
- DevExpress.XtraEditors.PanelControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.PanelControl, DevExpress.Utils.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
True
-
-
+
+
Default
- DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
True
diff --git a/ChanSort/GlobalImageCollection.resx b/ChanSort/GlobalImageCollection.resx
index 9eacb30..a387f7f 100644
--- a/ChanSort/GlobalImageCollection.resx
+++ b/ChanSort/GlobalImageCollection.resx
@@ -120,8 +120,8 @@
17, 17
-
-
+
+
AAEAAAD/////AQAAAAAAAAAMAgAAAFpEZXZFeHByZXNzLlV0aWxzLnYxMi4yLCBWZXJzaW9uPTEyLjIu
OC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEMAwAAAFFT
diff --git a/ChanSort/MainForm.Designer.cs b/ChanSort/MainForm.Designer.cs
index 9544aa4..23d7d38 100644
--- a/ChanSort/MainForm.Designer.cs
+++ b/ChanSort/MainForm.Designer.cs
@@ -106,6 +106,7 @@
this.miSave = new DevExpress.XtraBars.BarButtonItem();
this.miSaveAs = new DevExpress.XtraBars.BarButtonItem();
this.miOpenReferenceFile = new DevExpress.XtraBars.BarButtonItem();
+ this.miAddFromRefList = new DevExpress.XtraBars.BarButtonItem();
this.miSaveReferenceFile = new DevExpress.XtraBars.BarButtonItem();
this.miExcelExport = new DevExpress.XtraBars.BarButtonItem();
this.miQuit = new DevExpress.XtraBars.BarButtonItem();
@@ -888,9 +889,10 @@
this.miSaveReferenceFile,
this.miRecentFiles,
this.miExcelExport,
- this.miPortuguese});
+ this.miPortuguese,
+ this.miAddFromRefList});
this.barManager1.MainMenu = this.bar1;
- this.barManager1.MaxItemId = 61;
+ this.barManager1.MaxItemId = 62;
this.barManager1.ShowFullMenus = true;
//
// bar1
@@ -940,6 +942,7 @@
new DevExpress.XtraBars.LinkPersistInfo(this.miSave, true),
new DevExpress.XtraBars.LinkPersistInfo(this.miSaveAs),
new DevExpress.XtraBars.LinkPersistInfo(this.miOpenReferenceFile, true),
+ new DevExpress.XtraBars.LinkPersistInfo(this.miAddFromRefList),
new DevExpress.XtraBars.LinkPersistInfo(this.miSaveReferenceFile),
new DevExpress.XtraBars.LinkPersistInfo(this.miExcelExport),
new DevExpress.XtraBars.LinkPersistInfo(this.miQuit, true),
@@ -1022,6 +1025,13 @@
this.miOpenReferenceFile.Name = "miOpenReferenceFile";
this.miOpenReferenceFile.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.miOpenReferenceFile_ItemClick);
//
+ // miAddFromRefList
+ //
+ resources.ApplyResources(this.miAddFromRefList, "miAddFromRefList");
+ this.miAddFromRefList.Id = 61;
+ this.miAddFromRefList.Name = "miAddFromRefList";
+ this.miAddFromRefList.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.miAddFromRefList_ItemClick);
+ //
// miSaveReferenceFile
//
resources.ApplyResources(this.miSaveReferenceFile, "miSaveReferenceFile");
@@ -1771,6 +1781,7 @@
private DevExpress.XtraEditors.GroupControl grpSubList;
private DevExpress.XtraTab.XtraTabControl tabSubList;
private DevExpress.XtraTab.XtraTabPage pageProgNr;
+ private DevExpress.XtraBars.BarButtonItem miAddFromRefList;
private DevExpress.XtraSplashScreen.SplashScreenManager splashScreenManager1;
}
}
diff --git a/ChanSort/MainForm.cs b/ChanSort/MainForm.cs
index c90c85a..7239797 100644
--- a/ChanSort/MainForm.cs
+++ b/ChanSort/MainForm.cs
@@ -1,4 +1,5 @@
-using System;
+//#define ADD_CHANNELS_FROM_REF_LIST
+using System;
using System.Collections.Generic;
using System.Drawing;
using System.Globalization;
@@ -24,7 +25,7 @@ namespace ChanSort.Ui
{
public partial class MainForm : XtraForm
{
- public const string AppVersion = "v2013-07-03";
+ public const string AppVersion = "v2013-07-19";
private const int MaxMruEntries = 5;
@@ -80,15 +81,19 @@ namespace ChanSort.Ui
Thread.CurrentThread.CurrentUICulture = new CultureInfo(Settings.Default.Language);
this.LookAndFeel.SetSkinStyle("Office 2010 Blue");
InitializeComponent();
- //this.SetControlsEnabled(false);
+
if (!Settings.Default.WindowSize.IsEmpty)
this.Size = Settings.Default.WindowSize;
- this.title = string.Format(this.Text, AppVersion);
- this.Text = title;
+ this.title = string.Format(base.Text, AppVersion);
+ base.Text = title;
this.plugins = this.LoadSerializerPlugins();
this.FillMenuWithIsoEncodings();
- this.Icon = new Icon(Assembly.GetExecutingAssembly().GetManifestResourceStream("ChanSort.Ui.app.ico"));
+ using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("ChanSort.Ui.app.ico"))
+ {
+ if (stream != null)
+ this.Icon = new Icon(stream);
+ }
var bcLeft = new BindingContext();
this.grpOutputList.BindingContext = bcLeft;
this.lastFocusedGrid = this.gviewRight;
@@ -96,6 +101,11 @@ namespace ChanSort.Ui
else if (this.curEditMode == EditMode.InsertBefore) this.rbInsertBefore.Checked = true;
else this.rbInsertSwap.Checked = true;
this.ActiveControl = this.gridRight;
+
+#if !ADD_CHANNELS_FROM_REF_LIST
+ this.miAddFromRefList.Visibility = BarItemVisibility.Never;
+ this.miAddFromRefList.Enabled = false;
+#endif
}
#endregion
@@ -106,28 +116,11 @@ namespace ChanSort.Ui
}
#endregion
- #region SetControlsEnabled()
- private void SetControlsEnabled(bool enabled)
- {
- foreach (Control control in this.grpTopPanel.Controls)
- control.Enabled = enabled;
- foreach (Control control in this.pnlEditControls.Controls)
- {
- if (control != this.btnClearLeftFilter)
- control.Enabled = enabled;
- }
-
- this.miReload.Enabled = enabled;
- this.miSave.Enabled = enabled;
- this.miSaveAs.Enabled = enabled;
- }
- #endregion
-
#region LoadSerializerPlugins()
private IList LoadSerializerPlugins()
{
var list = new List();
- string exeDir = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
+ string exeDir = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) ?? "";
foreach (var file in Directory.GetFiles(exeDir, "ChanSort.Loader.*.dll"))
{
try
@@ -197,7 +190,7 @@ namespace ChanSort.Ui
this.currentTvFile = tvDataFile;
if (!string.IsNullOrEmpty(tvDataFile))
{
- this.currentCsvFile = Path.Combine(Path.GetDirectoryName(this.currentTvFile),
+ this.currentCsvFile = Path.Combine(Path.GetDirectoryName(this.currentTvFile) ?? "",
Path.GetFileNameWithoutExtension(this.currentTvFile) + ".csv");
}
this.Text = this.title + " - " + this.currentTvFile;
@@ -453,7 +446,7 @@ namespace ChanSort.Ui
}
if (res == DialogResult.Yes)
- this.BeginInvoke((Action)this.ShowOpenReferenceFileDialog);
+ this.BeginInvoke((Action)(()=>this.ShowOpenReferenceFileDialog(false)));
else if (res == DialogResult.No)
{
this.dataRoot.ApplyCurrentProgramNumbers();
@@ -463,7 +456,7 @@ namespace ChanSort.Ui
#endregion
#region ShowOpenReferenceFileDialog()
- private void ShowOpenReferenceFileDialog()
+ private void ShowOpenReferenceFileDialog(bool addChannels)
{
using (OpenFileDialog dlg = new OpenFileDialog())
{
@@ -499,14 +492,14 @@ namespace ChanSort.Ui
dlg.Title = this.miOpenReferenceFile.Caption;
if (dlg.ShowDialog(this) == DialogResult.OK)
{
- this.LoadReferenceFile(dlg.FileName);
+ this.LoadReferenceFile(dlg.FileName, addChannels);
}
}
}
#endregion
#region LoadReferenceFile()
- private void LoadReferenceFile(string fileName)
+ private void LoadReferenceFile(string fileName, bool addChannels)
{
this.gviewRight.BeginDataUpdate();
this.gviewLeft.BeginDataUpdate();
@@ -514,7 +507,7 @@ namespace ChanSort.Ui
string ext = (Path.GetExtension(fileName) ?? "").ToLower();
if (ext == ".csv")
{
- var csvSerializer = new CsvFileSerializer(fileName, this.dataRoot);
+ var csvSerializer = new CsvFileSerializer(fileName, this.dataRoot, addChannels);
csvSerializer.Load();
}
else if (ext == ".chl")
@@ -627,7 +620,6 @@ namespace ChanSort.Ui
if (!this.PromptHandlingOfUnsortedChannels())
return;
- this.SaveReferenceFile();
this.SaveTvDataFile();
this.dataRoot.NeedsSaving = false;
this.RefreshGrid(this.gviewLeft, this.gviewRight);
@@ -686,8 +678,28 @@ namespace ChanSort.Ui
private void SaveReferenceFile()
{
- var csvSerializer = new CsvFileSerializer(this.currentCsvFile, this.dataRoot);
- csvSerializer.Save();
+ string fileName;
+ using (var dlg = new SaveFileDialog())
+ {
+ dlg.RestoreDirectory = true;
+ dlg.InitialDirectory = Path.GetDirectoryName(this.currentCsvFile);
+ dlg.FileName = Path.GetFileName(this.currentCsvFile);
+ dlg.DefaultExt = ".csv";
+ dlg.Filter = "ChanSort|*.csv|SamToolBox|*.chl|All files|*";
+ dlg.FilterIndex = 1;
+ dlg.CheckPathExists = true;
+ dlg.CheckFileExists = false;
+ dlg.AddExtension = true;
+ if (dlg.ShowDialog(this) != DialogResult.OK)
+ return;
+ fileName = dlg.FileName;
+ }
+
+ string ext = (Path.GetExtension(fileName)??"").ToLower();
+ if (ext == ".csv")
+ new CsvFileSerializer(this.currentCsvFile, this.dataRoot, false).Save();
+ else if (ext == ".chl")
+ new ChlFileSerializer().Save(fileName, this.currentChannelList);
}
#endregion
@@ -1504,7 +1516,12 @@ namespace ChanSort.Ui
private void miOpenReferenceFile_ItemClick(object sender, ItemClickEventArgs e)
{
- this.TryExecute(this.ShowOpenReferenceFileDialog);
+ this.TryExecute(() => this.ShowOpenReferenceFileDialog(false));
+ }
+
+ private void miAddFromRefList_ItemClick(object sender, ItemClickEventArgs e)
+ {
+ this.TryExecute(() => this.ShowOpenReferenceFileDialog(true));
}
private void miReload_ItemClick(object sender, ItemClickEventArgs e)
@@ -2351,5 +2368,6 @@ namespace ChanSort.Ui
}
#endregion
+
}
}
diff --git a/ChanSort/MainForm.de.resx b/ChanSort/MainForm.de.resx
index 1234960..21d9238 100644
--- a/ChanSort/MainForm.de.resx
+++ b/ChanSort/MainForm.de.resx
@@ -167,7 +167,7 @@
Referenzliste öffnen...
- Referenzliste speichern
+ Referenzliste speichern...
Excel liste exportieren...
@@ -253,8 +253,8 @@
&Über ChanSort...
-
-
+
+
AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMi4yLCBWZXJzaW9uPTEy
LjIuOC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
@@ -264,7 +264,7 @@
Xxl+0wEL
-
+
AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMi4yLCBWZXJzaW9uPTEy
LjIuOC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
@@ -274,7 +274,7 @@
KphCYAEL
-
+
AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMi4yLCBWZXJzaW9uPTEy
LjIuOC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
@@ -284,7 +284,7 @@
ZMgcwAEL
-
+
AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMi4yLCBWZXJzaW9uPTEy
LjIuOC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
diff --git a/ChanSort/MainForm.pt.resx b/ChanSort/MainForm.pt.resx
index 92c78a6..bb8eaa7 100644
--- a/ChanSort/MainForm.pt.resx
+++ b/ChanSort/MainForm.pt.resx
@@ -62,9 +62,9 @@
-
-
-
+
+
+
Tipo serviço
@@ -194,8 +194,8 @@
&Sobre ChanSort...
-
-
+
+
AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMi4yLCBWZXJzaW9uPTEy
LjIuNi4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
@@ -205,7 +205,7 @@
Xxl+0wEL
-
+
AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMi4yLCBWZXJzaW9uPTEy
LjIuNi4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
@@ -215,7 +215,7 @@
KphCYAEL
-
+
AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMi4yLCBWZXJzaW9uPTEy
LjIuNi4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
@@ -225,7 +225,7 @@
ZMgcwAEL
-
+
AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMi4yLCBWZXJzaW9uPTEy
LjIuNi4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
diff --git a/ChanSort/MainForm.resx b/ChanSort/MainForm.resx
index d9d7c5a..5d21496 100644
--- a/ChanSort/MainForm.resx
+++ b/ChanSort/MainForm.resx
@@ -112,20 +112,20 @@
2.0
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
+
Fill
-
+
0, 108
-
+
361, 17
@@ -146,7 +146,7 @@
Service Type
-
+
True
@@ -189,15 +189,15 @@
False
-
-
+
+
Combo
-
-
+
+
RegEx
@@ -230,7 +230,7 @@
False
-
+
Numeric
@@ -243,7 +243,7 @@
gridLeft
- DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpOutputList
@@ -273,7 +273,7 @@
lblHotkeyLeft
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpOutputList
@@ -281,10 +281,10 @@
1
-
+
600, 17
-
+
True
@@ -309,7 +309,7 @@
pageProgNr
- DevExpress.XtraTab.XtraTabPage, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraTab.XtraTabPage, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
tabSubList
@@ -327,7 +327,7 @@
tabSubList
- DevExpress.XtraTab.XtraTabControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraTab.XtraTabControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpSubList
@@ -357,7 +357,7 @@
grpSubList
- DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -368,7 +368,7 @@
256, 6
-
+
475, 17
@@ -395,8 +395,11 @@
Load reference list...
+
+ Add channels from reference list...
+
- Save reference list
+ Save reference list...
Export Excel list...
@@ -509,41 +512,41 @@
Tools
-
-
+
+
- AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMi4yLCBWZXJzaW9uPTEy
- LjIuOC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
+ AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMy4xLCBWZXJzaW9uPTEz
+ LjEuNS4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
ACZEZXZFeHByZXNzLlh0cmFCYXJzLkJhck1hbmFnZXJDYXRlZ29yeQMAAAAETmFtZQRHdWlkB1Zpc2li
bGUBAwALU3lzdGVtLkd1aWQBAgAAAAYDAAAABEZpbGUE/P///wtTeXN0ZW0uR3VpZAsAAAACX2ECX2IC
X2MCX2QCX2UCX2YCX2cCX2gCX2kCX2oCX2sAAAAAAAAAAAAAAAgHBwICAgICAgICKaPJ5gsBeU2NTSFe
Xxl+0wEL
-
+
- AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMi4yLCBWZXJzaW9uPTEy
- LjIuOC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
+ AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMy4xLCBWZXJzaW9uPTEz
+ LjEuNS4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
ACZEZXZFeHByZXNzLlh0cmFCYXJzLkJhck1hbmFnZXJDYXRlZ29yeQMAAAAETmFtZQRHdWlkB1Zpc2li
bGUBAwALU3lzdGVtLkd1aWQBAgAAAAYDAAAABEhlbHAE/P///wtTeXN0ZW0uR3VpZAsAAAACX2ECX2IC
X2MCX2QCX2UCX2YCX2cCX2gCX2kCX2oCX2sAAAAAAAAAAAAAAAgHBwICAgICAgICdEVVDegwMU2acNpw
KphCYAEL
-
+
- AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMi4yLCBWZXJzaW9uPTEy
- LjIuOC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
+ AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMy4xLCBWZXJzaW9uPTEz
+ LjEuNS4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
ACZEZXZFeHByZXNzLlh0cmFCYXJzLkJhck1hbmFnZXJDYXRlZ29yeQMAAAAETmFtZQRHdWlkB1Zpc2li
bGUBAwALU3lzdGVtLkd1aWQBAgAAAAYDAAAABEVkaXQE/P///wtTeXN0ZW0uR3VpZAsAAAACX2ECX2IC
X2MCX2QCX2UCX2YCX2cCX2gCX2kCX2oCX2sAAAAAAAAAAAAAAAgHBwICAgICAgICZMTu18lZRU+IqmAu
ZMgcwAEL
-
+
- AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMi4yLCBWZXJzaW9uPTEy
- LjIuOC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
+ AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYxMy4xLCBWZXJzaW9uPTEz
+ LjEuNS4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
ACZEZXZFeHByZXNzLlh0cmFCYXJzLkJhck1hbmFnZXJDYXRlZ29yeQMAAAAETmFtZQRHdWlkB1Zpc2li
bGUBAwALU3lzdGVtLkd1aWQBAgAAAAYDAAAAB09wdGlvbnME/P///wtTeXN0ZW0uR3VpZAsAAAACX2EC
X2ICX2MCX2QCX2UCX2YCX2cCX2gCX2kCX2oCX2sAAAAAAAAAAAAAAAgHBwICAgICAgICXJMOh9nzAkKc
@@ -563,7 +566,7 @@
barDockControlTop
- DevExpress.XtraBars.BarDockControl, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarDockControl, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -584,7 +587,7 @@
barDockControlBottom
- DevExpress.XtraBars.BarDockControl, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarDockControl, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -605,7 +608,7 @@
barDockControlLeft
- DevExpress.XtraBars.BarDockControl, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarDockControl, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -626,7 +629,7 @@
barDockControlRight
- DevExpress.XtraBars.BarDockControl, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarDockControl, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -643,8 +646,8 @@
swap
-
-
+
+
Default
@@ -657,7 +660,7 @@
rbInsertSwap
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpTopPanel
@@ -684,7 +687,7 @@
rbInsertAfter
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpTopPanel
@@ -708,7 +711,7 @@
rbInsertBefore
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpTopPanel
@@ -738,7 +741,7 @@
cbCloseGap
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpTopPanel
@@ -762,7 +765,7 @@
lblInsertMode
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpTopPanel
@@ -789,7 +792,7 @@
picDonate
- DevExpress.XtraEditors.PictureEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.PictureEdit, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpTopPanel
@@ -813,7 +816,7 @@
pageEmpty
- DevExpress.XtraTab.XtraTabPage, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraTab.XtraTabPage, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
tabChannelList
@@ -831,7 +834,7 @@
tabChannelList
- DevExpress.XtraTab.XtraTabControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraTab.XtraTabControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpTopPanel
@@ -839,7 +842,7 @@
6
-
+
Vertical
@@ -861,7 +864,7 @@
lblSetProgramNr
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpTopPanel
@@ -872,13 +875,13 @@
437, 5
-
+
OK
\d{1,4}
-
+
RegEx
@@ -891,7 +894,7 @@
txtSetSlot
- DevExpress.XtraEditors.ButtonEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.ButtonEdit, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpTopPanel
@@ -918,7 +921,7 @@
grpTopPanel
- DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -936,67 +939,67 @@
dsChannels
- System.Windows.Forms.BindingSource, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.BindingSource, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
gviewLeft
- DevExpress.XtraGrid.Views.Grid.GridView, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Views.Grid.GridView, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colIndex1
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colOutServiceType
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colOutSlot
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colOutName
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colOutFav
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
repositoryItemCheckedComboBoxEdit1
- DevExpress.XtraEditors.Repository.RepositoryItemCheckedComboBoxEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.Repository.RepositoryItemCheckedComboBoxEdit, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colUid1
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colOutLock
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
repositoryItemTextEdit1
- DevExpress.XtraEditors.Repository.RepositoryItemTextEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.Repository.RepositoryItemTextEdit, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
globalImageCollection1
@@ -1008,502 +1011,508 @@
gviewRight
- DevExpress.XtraGrid.Views.Grid.GridView, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Views.Grid.GridView, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colIndex
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colSlotOld
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colSlotNew
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colName
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colShortName
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colFavorites
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
repositoryItemCheckedComboBoxEdit2
- DevExpress.XtraEditors.Repository.RepositoryItemCheckedComboBoxEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.Repository.RepositoryItemCheckedComboBoxEdit, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colLock
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colSkip
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colHidden
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colEncrypted
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colChannelOrTransponder
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colFreqInMhz
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colServiceId
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colVideoPid
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colAudioPid
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colServiceType
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colServiceTypeName
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colSatellite
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colNetworkId
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colTransportStreamId
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colSymbolRate
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colPolarity
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colUid
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colNetworkName
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colNetworkOperator
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colDebug
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colLogicalIndex
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
colSignalSource
- DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
barManager1
- DevExpress.XtraBars.BarManager, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarManager, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
bar1
- DevExpress.XtraBars.Bar, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.Bar, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miFile
- DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miOpen
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miReload
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miRestoreOriginal
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miFileInformation
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miSave
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miSaveAs
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miOpenReferenceFile
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ miAddFromRefList
+
+
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miSaveReferenceFile
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miExcelExport
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miQuit
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miRecentFiles
- DevExpress.XtraBars.BarListItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarListItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miEdit
- DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miAddChannel
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miRemove
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miRenameChannel
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miSort
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miRenum
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
mnuFavSet
- DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miFavSet
- DevExpress.XtraBars.BarListItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarListItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
mnuFavUnset
- DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miFavUnset
- DevExpress.XtraBars.BarListItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarListItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miLockOn
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miLockOff
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miSkipOn
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miSkipOff
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miHideOn
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miHideOff
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
barSubItem2
- DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miTvSettings
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miCleanupChannels
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
mnuOptions
- DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
barSubItem1
- DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miEnglish
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miGerman
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miPortuguese
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
mnuCharset
- DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miCharsetForm
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miIsoCharSets
- DevExpress.XtraBars.BarListItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarListItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miShowWarningsAfterLoad
- DevExpress.XtraBars.BarCheckItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarCheckItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
mnuHelp
- DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miWiki
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miOpenWebsite
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miAbout
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miMoveUp
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
miMoveDown
- DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
defaultLookAndFeel1
- DevExpress.LookAndFeel.DefaultLookAndFeel, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.LookAndFeel.DefaultLookAndFeel, DevExpress.Utils.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
splashScreenManager1
- DevExpress.XtraSplashScreen.SplashScreenManager, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraSplashScreen.SplashScreenManager, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
mnuContext
- DevExpress.XtraBars.PopupMenu, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraBars.PopupMenu, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
timerEditDelay
- System.Windows.Forms.Timer, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.Timer, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
MainForm
- DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
- 07/02/2013 20:57:05
+ 07/19/2013 17:03:01
16, 16
@@ -1524,7 +1533,7 @@
btnToggleLock
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
pnlEditControls
@@ -1548,7 +1557,7 @@
btnToggleFavE
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
pnlEditControls
@@ -1572,7 +1581,7 @@
btnToggleFavD
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
pnlEditControls
@@ -1596,7 +1605,7 @@
btnToggleFavC
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
pnlEditControls
@@ -1620,7 +1629,7 @@
btnToggleFavB
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
pnlEditControls
@@ -1644,7 +1653,7 @@
btnToggleFavA
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
pnlEditControls
@@ -1674,7 +1683,7 @@
btnClearLeftFilter
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
pnlEditControls
@@ -1701,7 +1710,7 @@
btnRenum
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
pnlEditControls
@@ -1728,7 +1737,7 @@
btnDown
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
pnlEditControls
@@ -1755,7 +1764,7 @@
btnUp
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
pnlEditControls
@@ -1782,7 +1791,7 @@
btnRemoveLeft
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
pnlEditControls
@@ -1806,7 +1815,7 @@
pnlEditControls
- DevExpress.XtraEditors.PanelControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.PanelControl, DevExpress.Utils.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpOutputList
@@ -1833,7 +1842,7 @@
grpOutputList
- DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
splitContainerControl1.Panel1
@@ -1916,13 +1925,13 @@
False
-
+
Combo
-
+
RegEx
@@ -2166,7 +2175,7 @@
gridRight
- DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpInputList
@@ -2196,7 +2205,7 @@
lblHotkeyRight
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpInputList
@@ -2223,7 +2232,7 @@
btnRemoveRight
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
panelControl3
@@ -2250,7 +2259,7 @@
btnAddAll
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
panelControl3
@@ -2280,7 +2289,7 @@
btnClearRightFilter
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
panelControl3
@@ -2307,7 +2316,7 @@
btnAdd
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
panelControl3
@@ -2331,7 +2340,7 @@
panelControl3
- DevExpress.XtraEditors.PanelControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.PanelControl, DevExpress.Utils.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
grpInputList
@@ -2358,7 +2367,7 @@
grpInputList
- DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
splitContainerControl1.Panel2
@@ -2382,7 +2391,7 @@
splitContainerControl1
- DevExpress.XtraEditors.SplitContainerControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraEditors.SplitContainerControl, DevExpress.Utils.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
$this
@@ -2390,13 +2399,13 @@
0
-
+
194, 17
-
+
781, 17
-
+
900, 17
\ No newline at end of file
diff --git a/ChanSort/Properties/Resources.Designer.cs b/ChanSort/Properties/Resources.Designer.cs
index ded89f6..4370e2a 100644
--- a/ChanSort/Properties/Resources.Designer.cs
+++ b/ChanSort/Properties/Resources.Designer.cs
@@ -1,7 +1,7 @@
//------------------------------------------------------------------------------
//
// This code was generated by a tool.
-// Runtime Version:4.0.30319.586
+// Runtime Version:4.0.30319.18052
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
@@ -60,6 +60,9 @@ namespace ChanSort.Ui.Properties {
}
}
+ ///
+ /// Looks up a localized resource of type System.Drawing.Bitmap.
+ ///
internal static System.Drawing.Bitmap Donate {
get {
object obj = ResourceManager.GetObject("Donate", resourceCulture);
diff --git a/ChanSort/Properties/Settings.Designer.cs b/ChanSort/Properties/Settings.Designer.cs
index 0ddbaf9..ed728d7 100644
--- a/ChanSort/Properties/Settings.Designer.cs
+++ b/ChanSort/Properties/Settings.Designer.cs
@@ -1,7 +1,7 @@
//------------------------------------------------------------------------------
//
// This code was generated by a tool.
-// Runtime Version:4.0.30319.586
+// Runtime Version:4.0.30319.18052
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
diff --git a/ChanSort/Properties/licenses.licx b/ChanSort/Properties/licenses.licx
index e0298cf..ff64f1a 100644
--- a/ChanSort/Properties/licenses.licx
+++ b/ChanSort/Properties/licenses.licx
@@ -1,8 +1,2 @@
-DevExpress.XtraEditors.Repository.RepositoryItemTextEdit, 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.XtraTab.XtraTabControl, 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.XtraEditors.LabelControl, 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
+DevExpress.XtraBars.BarManager, DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
diff --git a/ChanSort/WaitForm1.resx b/ChanSort/WaitForm1.resx
index 5d6673c..f997a62 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.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraWaitForm.WaitForm, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
WaitForm1
@@ -227,7 +227,7 @@
Horizontal
- DevExpress.XtraWaitForm.ProgressPanel, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+ DevExpress.XtraWaitForm.ProgressPanel, DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
Horizontal
diff --git a/ChanSort/app.config b/ChanSort/app.config
index b7cc4c8..5f7ac01 100644
--- a/ChanSort/app.config
+++ b/ChanSort/app.config
@@ -6,7 +6,7 @@
-
+
0
@@ -15,37 +15,37 @@
0
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
False
@@ -54,13 +54,13 @@
0, 0
-
+
-
+
-
+
0
@@ -81,19 +81,19 @@
True
-
+
-
+
-
+
-
+
-
+
diff --git a/DLL/System.Data.SQLite.dll b/DLL/System.Data.SQLite.dll
index 970f07d..2652b9b 100644
Binary files a/DLL/System.Data.SQLite.dll and b/DLL/System.Data.SQLite.dll differ
diff --git a/DLL/System.Data.SQLite.xml b/DLL/System.Data.SQLite.xml
deleted file mode 100644
index 65e9cf7..0000000
--- a/DLL/System.Data.SQLite.xml
+++ /dev/null
@@ -1,5365 +0,0 @@
-
-
-
- System.Data.SQLite
-
-
-
-
- This is the method signature for the SQLite core library logging callback
- function for use with sqlite3_log() and the SQLITE_CONFIG_LOG.
-
- WARNING: This delegate is used more-or-less directly by native code, do
- not modify its type signature.
-
-
- The extra data associated with this message, if any.
-
-
- The error code associated with this message.
-
-
- The message string to be logged.
-
-
-
-
- This class implements SQLiteBase completely, and is the guts of the code that interop's SQLite with .NET
-
-
-
-
- This internal class provides the foundation of SQLite support. It defines all the abstract members needed to implement
- a SQLite data provider, and inherits from SQLiteConvert which allows for simple translations of string to and from SQLite.
-
-
-
-
- This base class provides datatype conversion services for the SQLite provider.
-
-
-
-
- The format string for DateTime values when using the InvariantCulture or CurrentCulture formats.
-
-
-
-
- The value for the Unix epoch (e.g. January 1, 1970 at midnight, in UTC).
-
-
-
-
- The value of the OLE Automation epoch represented as a Julian day.
-
-
-
-
- An array of ISO8601 datetime formats we support conversion from
-
-
-
-
- The internal default format for UTC DateTime values when converting
- to a string.
-
-
-
-
- The internal default format for local DateTime values when converting
- to a string.
-
-
-
-
- An UTF-8 Encoding instance, so we can convert strings to and from UTF-8
-
-
-
-
- The default DateTime format for this instance
-
-
-
-
- The default DateTimeKind for this instance.
-
-
-
-
- Initializes the conversion class
-
- The default date/time format to use for this instance
- The DateTimeKind to use.
-
-
-
- Converts a string to a UTF-8 encoded byte array sized to include a null-terminating character.
-
- The string to convert to UTF-8
- A byte array containing the converted string plus an extra 0 terminating byte at the end of the array.
-
-
-
- Convert a DateTime to a UTF-8 encoded, zero-terminated byte array.
-
-
- This function is a convenience function, which first calls ToString() on the DateTime, and then calls ToUTF8() with the
- string result.
-
- The DateTime to convert.
- The UTF-8 encoded string, including a 0 terminating byte at the end of the array.
-
-
-
- Converts a UTF-8 encoded IntPtr of the specified length into a .NET string
-
- The pointer to the memory where the UTF-8 string is encoded
- The number of bytes to decode
- A string containing the translated character(s)
-
-
-
- Converts a UTF-8 encoded IntPtr of the specified length into a .NET string
-
- The pointer to the memory where the UTF-8 string is encoded
- The number of bytes to decode
- A string containing the translated character(s)
-
-
-
- Converts a string into a DateTime, using the current DateTimeFormat specified for the connection when it was opened.
-
-
- Acceptable ISO8601 DateTime formats are:
-
- - THHmmssK
- - THHmmK
- - HH:mm:ss.FFFFFFFK
- - HH:mm:ssK
- - HH:mmK
- - yyyy-MM-dd HH:mm:ss.FFFFFFFK
- - yyyy-MM-dd HH:mm:ssK
- - yyyy-MM-dd HH:mmK
- - yyyy-MM-ddTHH:mm:ss.FFFFFFFK
- - yyyy-MM-ddTHH:mmK
- - yyyy-MM-ddTHH:mm:ssK
- - yyyyMMddHHmmssK
- - yyyyMMddHHmmK
- - yyyyMMddTHHmmssFFFFFFFK
- - THHmmss
- - THHmm
- - HH:mm:ss.FFFFFFF
- - HH:mm:ss
- - HH:mm
- - yyyy-MM-dd HH:mm:ss.FFFFFFF
- - yyyy-MM-dd HH:mm:ss
- - yyyy-MM-dd HH:mm
- - yyyy-MM-ddTHH:mm:ss.FFFFFFF
- - yyyy-MM-ddTHH:mm
- - yyyy-MM-ddTHH:mm:ss
- - yyyyMMddHHmmss
- - yyyyMMddHHmm
- - yyyyMMddTHHmmssFFFFFFF
- - yyyy-MM-dd
- - yyyyMMdd
- - yy-MM-dd
-
- If the string cannot be matched to one of the above formats, an exception will be thrown.
-
- The string containing either a long integer number of 100-nanosecond units since
- System.DateTime.MinValue, a Julian day double, an integer number of seconds since the Unix epoch, a
- culture-independent formatted date and time string, a formatted date and time string in the current
- culture, or an ISO8601-format string.
- A DateTime value
-
-
-
- Converts a string into a DateTime, using the specified DateTimeFormat and DateTimeKind.
-
-
- Acceptable ISO8601 DateTime formats are:
-
- - THHmmssK
- - THHmmK
- - HH:mm:ss.FFFFFFFK
- - HH:mm:ssK
- - HH:mmK
- - yyyy-MM-dd HH:mm:ss.FFFFFFFK
- - yyyy-MM-dd HH:mm:ssK
- - yyyy-MM-dd HH:mmK
- - yyyy-MM-ddTHH:mm:ss.FFFFFFFK
- - yyyy-MM-ddTHH:mmK
- - yyyy-MM-ddTHH:mm:ssK
- - yyyyMMddHHmmssK
- - yyyyMMddHHmmK
- - yyyyMMddTHHmmssFFFFFFFK
- - THHmmss
- - THHmm
- - HH:mm:ss.FFFFFFF
- - HH:mm:ss
- - HH:mm
- - yyyy-MM-dd HH:mm:ss.FFFFFFF
- - yyyy-MM-dd HH:mm:ss
- - yyyy-MM-dd HH:mm
- - yyyy-MM-ddTHH:mm:ss.FFFFFFF
- - yyyy-MM-ddTHH:mm
- - yyyy-MM-ddTHH:mm:ss
- - yyyyMMddHHmmss
- - yyyyMMddHHmm
- - yyyyMMddTHHmmssFFFFFFF
- - yyyy-MM-dd
- - yyyyMMdd
- - yy-MM-dd
-
- If the string cannot be matched to one of the above formats, an exception will be thrown.
-
- The string containing either a long integer number of 100-nanosecond units since
- System.DateTime.MinValue, a Julian day double, an integer number of seconds since the Unix epoch, a
- culture-independent formatted date and time string, a formatted date and time string in the current
- culture, or an ISO8601-format string.
- The SQLiteDateFormats to use.
- The DateTimeKind to use.
- A DateTime value
-
-
-
- Converts a julianday value into a DateTime
-
- The value to convert
- A .NET DateTime
-
-
-
- Converts a julianday value into a DateTime
-
- The value to convert
- The DateTimeKind to use.
- A .NET DateTime
-
-
-
- Converts a DateTime struct to a JulianDay double
-
- The DateTime to convert
- The JulianDay value the Datetime represents
-
-
-
- Converts a DateTime struct to the whole number of seconds since the
- Unix epoch.
-
- The DateTime to convert
- The whole number of seconds since the Unix epoch
-
-
-
- Returns the default DateTime format string to use for the specified
- DateTimeKind.
-
- The DateTimeKind to use.
-
- The default DateTime format string to use for the specified DateTimeKind.
-
-
-
-
- Converts a DateTime to a string value, using the current DateTimeFormat specified for the connection when it was opened.
-
- The DateTime value to convert
- Either a string containing the long integer number of 100-nanosecond units since System.DateTime.MinValue, a
- Julian day double, an integer number of seconds since the Unix epoch, a culture-independent formatted date and time
- string, a formatted date and time string in the current culture, or an ISO8601-format date/time string.
-
-
-
- Internal function to convert a UTF-8 encoded IntPtr of the specified length to a DateTime.
-
-
- This is a convenience function, which first calls ToString() on the IntPtr to convert it to a string, then calls
- ToDateTime() on the string to return a DateTime.
-
- A pointer to the UTF-8 encoded string
- The length in bytes of the string
- The parsed DateTime value
-
-
-
- Smart method of splitting a string. Skips quoted elements, removes the quotes.
-
-
- This split function works somewhat like the String.Split() function in that it breaks apart a string into
- pieces and returns the pieces as an array. The primary differences are:
-
- - Only one character can be provided as a separator character
- - Quoted text inside the string is skipped over when searching for the separator, and the quotes are removed.
-
- Thus, if splitting the following string looking for a comma:
- One,Two, "Three, Four", Five
-
- The resulting array would contain
- [0] One
- [1] Two
- [2] Three, Four
- [3] Five
-
- Note that the leading and trailing spaces were removed from each item during the split.
-
- Source string to split apart
- Separator character
- A string array of the split up elements
-
-
-
- Convert a value to true or false.
-
- A string or number representing true or false
-
-
-
-
- Convert a string to true or false.
-
- A string representing true or false
-
-
- "yes", "no", "y", "n", "0", "1", "on", "off" as well as Boolean.FalseString and Boolean.TrueString will all be
- converted to a proper boolean value.
-
-
-
-
- Determines the data type of a column in a statement
-
- The statement to retrieve information for
- The column to retrieve type information on
- The SQLiteType to receive the affinity for the given column
-
-
-
- Converts a SQLiteType to a .NET Type object
-
- The SQLiteType to convert
- Returns a .NET Type object
-
-
-
- For a given intrinsic type, return a DbType
-
- The native type to convert
- The corresponding (closest match) DbType
-
-
-
- Returns the ColumnSize for the given DbType
-
- The DbType to get the size of
-
-
-
-
- Convert a DbType to a Type
-
- The DbType to convert from
- The closest-match .NET type
-
-
-
- For a given type, return the closest-match SQLite TypeAffinity, which only understands a very limited subset of types.
-
- The type to evaluate
- The SQLite type affinity for that type.
-
-
-
- For a given type name, return a closest-match .NET type
-
- The name of the type to match
- The .NET DBType the text evaluates to.
-
-
-
- Sets the status of the memory usage tracking subsystem in the SQLite core library. By default, this is enabled.
- If this is disabled, memory usage tracking will not be performed. This is not really a per-connection value, it is
- global to the process.
-
- Non-zero to enable memory usage tracking, zero otherwise.
- A standard SQLite return code (i.e. zero for success and non-zero for failure).
-
-
-
- Shutdown the SQLite engine so that it can be restarted with different config options.
- We depend on auto initialization to recover.
-
-
-
-
- Returns non-zero if a database connection is open.
-
-
-
-
-
- Opens a database.
-
-
- Implementers should call SQLiteFunction.BindFunctions() and save the array after opening a connection
- to bind all attributed user-defined functions and collating sequences to the new connection.
-
- The filename of the database to open. SQLite automatically creates it if it doesn't exist.
- The flags associated with the parent connection object
- The open flags to use when creating the connection
- The maximum size of the pool for the given filename
- If true, the connection can be pulled from the connection pool
-
-
-
- Closes the currently-open database.
-
-
- After the database has been closed implemeters should call SQLiteFunction.UnbindFunctions() to deallocate all interop allocated
- memory associated with the user-defined functions and collating sequences tied to the closed connection.
-
- Non-zero if the operation is allowed to throw exceptions, zero otherwise.
-
-
-
- Sets the busy timeout on the connection. SQLiteCommand will call this before executing any command.
-
- The number of milliseconds to wait before returning SQLITE_BUSY
-
-
-
- Returns the text of the last error issued by SQLite
-
-
-
-
-
- When pooling is enabled, force this connection to be disposed rather than returned to the pool
-
-
-
-
- When pooling is enabled, returns the number of pool entries matching the current file name.
-
- The number of pool entries matching the current file name.
-
-
-
- Prepares a SQL statement for execution.
-
- The source connection preparing the command. Can be null for any caller except LINQ
- The SQL command text to prepare
- The previous statement in a multi-statement command, or null if no previous statement exists
- The timeout to wait before aborting the prepare
- The remainder of the statement that was not processed. Each call to prepare parses the
- SQL up to to either the end of the text or to the first semi-colon delimiter. The remaining text is returned
- here for a subsequent call to Prepare() until all the text has been processed.
- Returns an initialized SQLiteStatement.
-
-
-
- Steps through a prepared statement.
-
- The SQLiteStatement to step through
- True if a row was returned, False if not.
-
-
-
- Resets a prepared statement so it can be executed again. If the error returned is SQLITE_SCHEMA,
- transparently attempt to rebuild the SQL statement and throw an error if that was not possible.
-
- The statement to reset
- Returns -1 if the schema changed while resetting, 0 if the reset was sucessful or 6 (SQLITE_LOCKED) if the reset failed due to a lock
-
-
-
- Enables or disabled extension loading by SQLite.
-
-
- True to enable loading of extensions, false to disable.
-
-
-
-
- Loads a SQLite extension library from the named file.
-
-
- The name of the dynamic link library file containing the extension.
-
-
- The name of the exported function used to initialize the extension.
- If null, the default "sqlite3_extension_init" will be used.
-
-
-
-
- Enables or disabled extened result codes returned by SQLite
-
- true to enable extended result codes, false to disable.
-
-
-
-
- Returns the numeric result code for the most recent failed SQLite API call
- associated with the database connection.
-
- Result code
-
-
-
- Returns the extended numeric result code for the most recent failed SQLite API call
- associated with the database connection.
-
- Extended result code
-
-
-
- Add a log message via the SQLite sqlite3_log interface.
-
- Error code to be logged with the message.
- String to be logged. Unlike the SQLite sqlite3_log()
- interface, this should be pre-formatted. Consider using the
- String.Format() function.
-
-
-
-
- Checks if the SQLite core library has been initialized in the current process.
-
-
- Non-zero if the SQLite core library has been initialized in the current process,
- zero otherwise.
-
-
-
-
- Creates a new SQLite backup object based on the provided destination
- database connection. The source database connection is the one
- associated with this object. The source and destination database
- connections cannot be the same.
-
- The destination database connection.
- The destination database name.
- The source database name.
- The newly created backup object.
-
-
-
- Copies up to N pages from the source database to the destination
- database associated with the specified backup object.
-
- The backup object to use.
-
- The number of pages to copy or negative to copy all remaining pages.
-
-
- Set to true if the operation needs to be retried due to database
- locking issues.
-
-
- True if there are more pages to be copied, false otherwise.
-
-
-
-
- Returns the number of pages remaining to be copied from the source
- database to the destination database associated with the specified
- backup object.
-
- The backup object to check.
- The number of pages remaining to be copied.
-
-
-
- Returns the total number of pages in the source database associated
- with the specified backup object.
-
- The backup object to check.
- The total number of pages in the source database.
-
-
-
- Destroys the backup object, rolling back any backup that may be in
- progess.
-
- The backup object to destroy.
-
-
-
- Returns the error message for the specified SQLite return code using
- the internal static lookup table.
-
- The SQLite return code.
- The error message or null if it cannot be found.
-
-
-
- Returns the error message for the specified SQLite return code using
- the sqlite3_errstr() function, falling back to the internal lookup
- table if necessary.
-
- The SQLite return code.
- The error message or null if it cannot be found.
-
-
-
- Returns a string representing the active version of SQLite
-
-
-
-
- Returns an integer representing the active version of SQLite
-
-
-
-
- Returns the rowid of the most recent successful INSERT into the database from this connection.
-
-
-
-
- Returns the number of changes the last executing insert/update caused.
-
-
-
-
- Returns the amount of memory (in bytes) currently in use by the SQLite core library. This is not really a per-connection
- value, it is global to the process.
-
-
-
-
- Returns the maximum amount of memory (in bytes) used by the SQLite core library since the high-water mark was last reset.
- This is not really a per-connection value, it is global to the process.
-
-
-
-
- The opaque pointer returned to us by the sqlite provider
-
-
-
-
- The user-defined functions registered on this connection
-
-
-
-
- Shutdown the SQLite engine so that it can be restarted with different config options.
- We depend on auto initialization to recover.
-
- Returns a result code
-
-
-
- Enables or disabled extension loading by SQLite.
-
-
- True to enable loading of extensions, false to disable.
-
-
-
-
- Loads a SQLite extension library from the named file.
-
-
- The name of the dynamic link library file containing the extension.
-
-
- The name of the exported function used to initialize the extension.
- If null, the default "sqlite3_extension_init" will be used.
-
-
-
- Enables or disabled extended result codes returned by SQLite
-
-
- Gets the last SQLite error code
-
-
- Gets the last SQLite extended error code
-
-
- Add a log message via the SQLite sqlite3_log interface.
-
-
-
- Allows the setting of a logging callback invoked by SQLite when a
- log event occurs. Only one callback may be set. If NULL is passed,
- the logging callback is unregistered.
-
- The callback function to invoke.
- Returns a result code
-
-
-
- Creates a new SQLite backup object based on the provided destination
- database connection. The source database connection is the one
- associated with this object. The source and destination database
- connections cannot be the same.
-
- The destination database connection.
- The destination database name.
- The source database name.
- The newly created backup object.
-
-
-
- Copies up to N pages from the source database to the destination
- database associated with the specified backup object.
-
- The backup object to use.
-
- The number of pages to copy, negative to copy all remaining pages.
-
-
- Set to true if the operation needs to be retried due to database
- locking issues; otherwise, set to false.
-
-
- True if there are more pages to be copied, false otherwise.
-
-
-
-
- Returns the number of pages remaining to be copied from the source
- database to the destination database associated with the specified
- backup object.
-
- The backup object to check.
- The number of pages remaining to be copied.
-
-
-
- Returns the total number of pages in the source database associated
- with the specified backup object.
-
- The backup object to check.
- The total number of pages in the source database.
-
-
-
- Destroys the backup object, rolling back any backup that may be in
- progess.
-
- The backup object to destroy.
-
-
-
- Determines if the SQLite core library has been initialized for the
- current process.
-
-
- A boolean indicating whether or not the SQLite core library has been
- initialized for the current process.
-
-
-
-
- Determines if the SQLite core library has been initialized for the
- current process.
-
-
- A boolean indicating whether or not the SQLite core library has been
- initialized for the current process.
-
-
-
-
- Helper function to retrieve a column of data from an active statement.
-
- The statement being step()'d through
- The column index to retrieve
- The type of data contained in the column. If Uninitialized, this function will retrieve the datatype information.
- Returns the data in the column
-
-
-
- Alternate SQLite3 object, overriding many text behaviors to support UTF-16 (Unicode)
-
-
-
-
- Overrides SQLiteConvert.ToString() to marshal UTF-16 strings instead of UTF-8
-
- A pointer to a UTF-16 string
- The length (IN BYTES) of the string
- A .NET string
-
-
-
- Represents a single SQL backup in SQLite.
-
-
-
-
- The underlying SQLite object this backup is bound to.
-
-
-
-
- The actual backup handle.
-
-
-
-
- The destination database for the backup.
-
-
-
-
- The destination database name for the backup.
-
-
-
-
- The source database for the backup.
-
-
-
-
- The source database name for the backup.
-
-
-
-
- The last result from the StepBackup method of the SQLite3 class.
- This is used to determine if the call to the FinishBackup method of
- the SQLite3 class should throw an exception when it receives a non-Ok
- return code from the core SQLite library.
-
-
-
-
- Initializes the backup.
-
- The base SQLite object.
- The backup handle.
- The destination database for the backup.
- The destination database name for the backup.
- The source database for the backup.
- The source database name for the backup.
-
-
-
- Disposes and finalizes the backup.
-
-
-
-
- The extra behavioral flags that can be applied to a connection.
-
-
-
-
- No extra flags.
-
-
-
-
- Enable logging of all SQL statements to be prepared.
-
-
-
-
- Enable logging of all bound parameter types and raw values.
-
-
-
-
- Enable logging of all bound parameter strongly typed values.
-
-
-
-
- Enable logging of all exceptions caught from user-provided
- managed code called from native code via delegates.
-
-
-
-
- Enable logging of backup API errors.
-
-
-
-
- Skip adding the extension functions provided by the native
- interop assembly.
-
-
-
-
- Enable all logging.
-
-
-
-
- The default extra flags for new connections.
-
-
-
-
- SQLite implementation of DbCommand.
-
-
-
-
- The command text this command is based on
-
-
-
-
- The connection the command is associated with
-
-
-
-
- The version of the connection the command is associated with
-
-
-
-
- Indicates whether or not a DataReader is active on the command.
-
-
-
-
- The timeout for the command, kludged because SQLite doesn't support per-command timeout values
-
-
-
-
- Designer support
-
-
-
-
- Used by DbDataAdapter to determine updating behavior
-
-
-
-
- The collection of parameters for the command
-
-
-
-
- The SQL command text, broken into individual SQL statements as they are executed
-
-
-
-
- Unprocessed SQL text that has not been executed
-
-
-
-
- Transaction associated with this command
-
-
-
-
- Constructs a new SQLiteCommand
-
-
- Default constructor
-
-
-
-
- Initializes the command with the given command text
-
- The SQL command text
-
-
-
- Initializes the command with the given SQL command text and attach the command to the specified
- connection.
-
- The SQL command text
- The connection to associate with the command
-
-
-
- Initializes the command and associates it with the specified connection.
-
- The connection to associate with the command
-
-
-
- Initializes a command with the given SQL, connection and transaction
-
- The SQL command text
- The connection to associate with the command
- The transaction the command should be associated with
-
-
-
- Disposes of the command and clears all member variables
-
- Whether or not the class is being explicitly or implicitly disposed
-
-
-
- Clears and destroys all statements currently prepared
-
-
-
-
- Builds an array of prepared statements for each complete SQL statement in the command text
-
-
-
-
- Not implemented
-
-
-
-
- Forwards to the local CreateParameter() function
-
-
-
-
-
- Create a new parameter
-
-
-
-
-
- This function ensures there are no active readers, that we have a valid connection,
- that the connection is open, that all statements are prepared and all parameters are assigned
- in preparation for allocating a data reader.
-
-
-
-
- Creates a new SQLiteDataReader to execute/iterate the array of SQLite prepared statements
-
- The behavior the data reader should adopt
- Returns a SQLiteDataReader object
-
-
-
- Overrides the default behavior to return a SQLiteDataReader specialization class
-
- The flags to be associated with the reader
- A SQLiteDataReader
-
-
-
- Overrides the default behavior of DbDataReader to return a specialized SQLiteDataReader class
-
- A SQLiteDataReader
-
-
-
- Called by the SQLiteDataReader when the data reader is closed.
-
-
-
-
- Execute the command and return the number of rows inserted/updated affected by it.
-
-
-
-
-
- Execute the command and return the first column of the first row of the resultset
- (if present), or null if no resultset was returned.
-
- The first column of the first row of the first resultset from the query
-
-
-
- Does nothing. Commands are prepared as they are executed the first time, and kept in prepared state afterwards.
-
-
-
-
- Clones a command, including all its parameters
-
- A new SQLiteCommand with the same commandtext, connection and parameters
-
-
-
- The SQL command text associated with the command
-
-
-
-
- The amount of time to wait for the connection to become available before erroring out
-
-
-
-
- The type of the command. SQLite only supports CommandType.Text
-
-
-
-
- The connection associated with this command
-
-
-
-
- Forwards to the local Connection property
-
-
-
-
- Returns the SQLiteParameterCollection for the given command
-
-
-
-
- Forwards to the local Parameters property
-
-
-
-
- The transaction associated with this command. SQLite only supports one transaction per connection, so this property forwards to the
- command's underlying connection.
-
-
-
-
- Forwards to the local Transaction property
-
-
-
-
- Sets the method the SQLiteCommandBuilder uses to determine how to update inserted or updated rows in a DataTable.
-
-
-
-
- Determines if the command is visible at design time. Defaults to True.
-
-
-
-
- SQLite implementation of DbCommandBuilder.
-
-
-
-
- Default constructor
-
-
-
-
- Initializes the command builder and associates it with the specified data adapter.
-
-
-
-
-
- Minimal amount of parameter processing. Primarily sets the DbType for the parameter equal to the provider type in the schema
-
- The parameter to use in applying custom behaviors to a row
- The row to apply the parameter to
- The type of statement
- Whether the application of the parameter is part of a WHERE clause
-
-
-
- Returns a valid named parameter
-
- The name of the parameter
- Error
-
-
-
- Returns a named parameter for the given ordinal
-
- The i of the parameter
- Error
-
-
-
- Returns a placeholder character for the specified parameter i.
-
- The index of the parameter to provide a placeholder for
- Returns a named parameter
-
-
-
- Sets the handler for receiving row updating events. Used by the DbCommandBuilder to autogenerate SQL
- statements that may not have previously been generated.
-
- A data adapter to receive events on.
-
-
-
- Returns the automatically-generated SQLite command to delete rows from the database
-
-
-
-
-
- Returns the automatically-generated SQLite command to delete rows from the database
-
-
-
-
-
-
- Returns the automatically-generated SQLite command to update rows in the database
-
-
-
-
-
- Returns the automatically-generated SQLite command to update rows in the database
-
-
-
-
-
-
- Returns the automatically-generated SQLite command to insert rows into the database
-
-
-
-
-
- Returns the automatically-generated SQLite command to insert rows into the database
-
-
-
-
-
-
- Places brackets around an identifier
-
- The identifier to quote
- The bracketed identifier
-
-
-
- Removes brackets around an identifier
-
- The quoted (bracketed) identifier
- The undecorated identifier
-
-
-
- Override helper, which can help the base command builder choose the right keys for the given query
-
-
-
-
-
-
- Gets/sets the DataAdapter for this CommandBuilder
-
-
-
-
- Overridden to hide its property from the designer
-
-
-
-
- Overridden to hide its property from the designer
-
-
-
-
- Overridden to hide its property from the designer
-
-
-
-
- Overridden to hide its property from the designer
-
-
-
-
- Overridden to hide its property from the designer
-
-
-
-
- Event data for connection event handlers.
-
-
-
-
- The type of event being raised.
-
-
-
-
- The associated with this event, if any.
-
-
-
-
- The transaction associated with this event, if any.
-
-
-
-
- The command associated with this event, if any.
-
-
-
-
- Command or message text associated with this event, if any.
-
-
-
-
- Extra data associated with this event, if any.
-
-
-
-
- Constructs the object.
-
- The type of event being raised.
- The base associated
- with this event, if any.
- The transaction associated with this event, if any.
- The command associated with this event, if any.
- The command or message text, if any.
- The extra data, if any.
-
-
-
- Raised when an event pertaining to a connection occurs.
-
- The connection involved.
- Extra information about the event.
-
-
-
- SQLite implentation of DbConnection.
-
-
- The property can contain the following parameter(s), delimited with a semi-colon:
-
-
- Parameter
- Values
- Required
- Default
-
- -
- Data Source
- This may be a file name, the string ":memory:", or any supported URI (starting with SQLite 3.7.7).
- Y
-
-
- -
- Version
- 3
- N
- 3
-
- -
- UseUTF16Encoding
- True
False
- N
- False
-
- -
- DateTimeFormat
-
- Ticks - Use the value of DateTime.Ticks.
- ISO8601 - Use the ISO-8601 format. Uses the "yyyy-MM-dd HH:mm:ss.FFFFFFFK" format for UTC
- DateTime values and "yyyy-MM-dd HH:mm:ss.FFFFFFF" format for local DateTime values).
- JulianDay - The interval of time in days and fractions of a day since January 1, 4713 BC.
- UnixEpoch - The whole number of seconds since the Unix epoch (January 1, 1970).
- InvariantCulture - Any culture-independent string value that the .NET Framework can interpret as a valid DateTime.
- CurrentCulture - Any string value that the .NET Framework can interpret as a valid DateTime using the current culture.
- N
- ISO8601
-
- -
- DateTimeKind
- Unspecified - Not specified as either UTC or local time.
Utc - The time represented is UTC.
Local - The time represented is local time.
- N
- Unspecified
-
- -
- BaseSchemaName
- Some base data classes in the framework (e.g. those that build SQL queries dynamically)
- assume that an ADO.NET provider cannot support an alternate catalog (i.e. database) without supporting
- alternate schemas as well; however, SQLite does not fit into this model. Therefore, this value is used
- as a placeholder and removed prior to preparing any SQL statements that may contain it.
- N
- sqlite_default_schema
-
- -
- BinaryGUID
- True - Store GUID columns in binary form
False - Store GUID columns as text
- N
- True
-
- -
- Cache Size
- {size in bytes}
- N
- 2000
-
- -
- Synchronous
- Normal - Normal file flushing behavior
Full - Full flushing after all writes
Off - Underlying OS flushes I/O's
- N
- Full
-
- -
- Page Size
- {size in bytes}
- N
- 1024
-
- -
- Password
- {password} - Using this parameter requires that the CryptoAPI based codec be enabled at compile-time for both the native interop assembly and the core managed assemblies; otherwise, using this parameter may result in an exception being thrown when attempting to open the connection.
- N
-
-
- -
- Enlist
- Y - Automatically enlist in distributed transactions
N - No automatic enlistment
- N
- Y
-
- -
- Pooling
- True - Use connection pooling
False - Do not use connection pooling
- N
- False
-
- -
- FailIfMissing
- True - Don't create the database if it does not exist, throw an error instead
False - Automatically create the database if it does not exist
- N
- False
-
- -
- Max Page Count
- {size in pages} - Limits the maximum number of pages (limits the size) of the database
- N
- 0
-
- -
- Legacy Format
- True - Use the more compatible legacy 3.x database format
False - Use the newer 3.3x database format which compresses numbers more effectively
- N
- False
-
- -
- Default Timeout
- {time in seconds}
The default command timeout
- N
- 30
-
- -
- Journal Mode
- Delete - Delete the journal file after a commit
Persist - Zero out and leave the journal file on disk after a commit
Off - Disable the rollback journal entirely
- N
- Delete
-
- -
- Read Only
- True - Open the database for read only access
False - Open the database for normal read/write access
- N
- False
-
- -
- Max Pool Size
- The maximum number of connections for the given connection string that can be in the connection pool
- N
- 100
-
- -
- Default IsolationLevel
- The default transaciton isolation level
- N
- Serializable
-
- -
- Foreign Keys
- Enable foreign key constraints
- N
- False
-
- -
- Flags
- Extra behavioral flags for the connection. See the enumeration for possible values.
- N
- Default
-
- -
- SetDefaults
-
- True - Apply the default connection settings to the opened database.
- False - Skip applying the default connection settings to the opened database.
-
- N
- True
-
- -
- ToFullPath
-
- True - Attempt to expand the data source file name to a fully qualified path before opening.
- False - Skip attempting to expand the data source file name to a fully qualified path before opening.
-
- N
- True
-
-
-
-
-
-
- The default "stub" (i.e. placeholder) base schema name to use when
- returning column schema information. Used as the initial value of
- the BaseSchemaName property. This should start with "sqlite_*"
- because those names are reserved for use by SQLite (i.e. they cannot
- be confused with the names of user objects).
-
-
-
-
- Object used to synchronize access to the static instance data
- for this class.
-
-
-
-
- State of the current connection
-
-
-
-
- The connection string
-
-
-
-
- Nesting level of the transactions open on the connection
-
-
-
-
- If set, then the connection is currently being disposed.
-
-
-
-
- The default isolation level for new transactions
-
-
-
-
- Whether or not the connection is enlisted in a distrubuted transaction
-
-
-
-
- The base SQLite object to interop with
-
-
-
-
- The database filename minus path and extension
-
-
-
-
- Temporary password storage, emptied after the database has been opened
-
-
-
-
- The "stub" (i.e. placeholder) base schema name to use when returning
- column schema information.
-
-
-
-
- The extra behavioral flags for this connection, if any. See the
- enumeration for a list of
- possible values.
-
-
-
-
- Default command timeout
-
-
-
-
- Non-zero if the built-in (i.e. framework provided) connection string
- parser should be used when opening the connection.
-
-
-
-
- Constructs a new SQLiteConnection object
-
-
- Default constructor
-
-
-
-
- Initializes the connection with the specified connection string.
-
- The connection string to use.
-
-
-
- Initializes the connection with the specified connection string.
-
-
- The connection string to use on.
-
-
- Non-zero to parse the connection string using the built-in (i.e.
- framework provided) parser when opening the connection.
-
-
-
-
- Clones the settings and connection string from an existing connection. If the existing connection is already open, this
- function will open its own connection, enumerate any attached databases of the original connection, and automatically
- attach to them.
-
- The connection to copy the settings from.
-
-
-
- Raises the event.
-
-
- The connection associated with this event.
-
-
- A that contains the event data.
-
-
-
-
- Backs up the database, using the specified database connection as the
- destination.
-
- The destination database connection.
- The destination database name.
- The source database name.
-
- The number of pages to copy or negative to copy all remaining pages.
-
-
- The method to invoke between each step of the backup process. This
- parameter may be null (i.e. no callbacks will be performed).
-
-
- The number of milliseconds to sleep after encountering a locking error
- during the backup process. A value less than zero means that no sleep
- should be performed.
-
-
-
-
- Creates a clone of the connection. All attached databases and user-defined functions are cloned. If the existing connection is open, the cloned connection
- will also be opened.
-
-
-
-
-
- Creates a database file. This just creates a zero-byte file which SQLite
- will turn into a database when the file is opened properly.
-
- The file to create
-
-
-
- Raises the state change event when the state of the connection changes
-
- The new connection state. If this is different
- from the previous state, the event is
- raised.
- The event data created for the raised event, if
- it was actually raised.
-
-
-
- OBSOLETE. Creates a new SQLiteTransaction if one isn't already active on the connection.
-
- This parameter is ignored.
- When TRUE, SQLite defers obtaining a write lock until a write operation is requested.
- When FALSE, a writelock is obtained immediately. The default is TRUE, but in a multi-threaded multi-writer
- environment, one may instead choose to lock the database immediately to avoid any possible writer deadlock.
- Returns a SQLiteTransaction object.
-
-
-
- OBSOLETE. Creates a new SQLiteTransaction if one isn't already active on the connection.
-
- When TRUE, SQLite defers obtaining a write lock until a write operation is requested.
- When FALSE, a writelock is obtained immediately. The default is false, but in a multi-threaded multi-writer
- environment, one may instead choose to lock the database immediately to avoid any possible writer deadlock.
- Returns a SQLiteTransaction object.
-
-
-
- Creates a new if one isn't already active on the connection.
-
- Supported isolation levels are Serializable, ReadCommitted and Unspecified.
-
- Unspecified will use the default isolation level specified in the connection string. If no isolation level is specified in the
- connection string, Serializable is used.
- Serializable transactions are the default. In this mode, the engine gets an immediate lock on the database, and no other threads
- may begin a transaction. Other threads may read from the database, but not write.
- With a ReadCommitted isolation level, locks are deferred and elevated as needed. It is possible for multiple threads to start
- a transaction in ReadCommitted mode, but if a thread attempts to commit a transaction while another thread
- has a ReadCommitted lock, it may timeout or cause a deadlock on both threads until both threads' CommandTimeout's are reached.
-
- Returns a SQLiteTransaction object.
-
-
-
- Creates a new if one isn't already
- active on the connection.
-
- Returns the new transaction object.
-
-
-
- Forwards to the local function
-
- Supported isolation levels are Unspecified, Serializable, and ReadCommitted
-
-
-
-
- This method is not implemented; however, the
- event will still be raised.
-
-
-
-
-
- When the database connection is closed, all commands linked to this connection are automatically reset.
-
-
-
-
- Clears the connection pool associated with the connection. Any other active connections using the same database file
- will be discarded instead of returned to the pool when they are closed.
-
-
-
-
-
- Clears all connection pools. Any active connections will be discarded instead of sent to the pool when they are closed.
-
-
-
-
- Create a new and associate it with this connection.
-
- Returns a new command object already assigned to this connection.
-
-
-
- Forwards to the local function.
-
-
-
-
-
- Parses the connection string into component parts using the custom
- connection string parser.
-
- The connection string to parse
- An array of key-value pairs representing each parameter of the connection string
-
-
-
- Parses a connection string using the built-in (i.e. framework provided)
- connection string parser class and returns the key/value pairs. An
- exception may be thrown if the connection string is invalid or cannot be
- parsed. When compiled for the .NET Compact Framework, the custom
- connection string parser is always used instead because the framework
- provided one is unavailable there.
-
-
- The connection string to parse.
-
-
- Non-zero to throw an exception if any connection string values are not of
- the type.
-
- The list of key/value pairs.
-
-
-
- Manual distributed transaction enlistment support
-
- The distributed transaction to enlist in
-
-
-
- Looks for a key in the array of key/values of the parameter string. If not found, return the specified default value
-
- The list to look in
- The key to find
- The default value to return if the key is not found
- The value corresponding to the specified key, or the default value if not found.
-
-
-
- Attempts to convert the string value to an enumerated value of the specified type.
-
- The enumerated type to convert the string value to.
- The string value to be converted.
- Non-zero to make the conversion case-insensitive.
- The enumerated value upon success or null upon error.
-
-
-
- Enables or disabled extension loading.
-
-
- True to enable loading of extensions, false to disable.
-
-
-
-
- Loads a SQLite extension library from the named dynamic link library file.
-
-
- The name of the dynamic link library file containing the extension.
-
-
-
-
- Loads a SQLite extension library from the named dynamic link library file.
-
-
- The name of the dynamic link library file containing the extension.
-
-
- The name of the exported function used to initialize the extension.
- If null, the default "sqlite3_extension_init" will be used.
-
-
-
-
- Opens the connection using the parameters found in the .
-
-
-
-
- Opens the connection using the parameters found in the and then returns it.
-
- The current connection object.
-
-
-
- This method causes any pending database operation to abort and return at
- its earliest opportunity. This routine is typically called in response
- to a user action such as pressing "Cancel" or Ctrl-C where the user wants
- a long query operation to halt immediately. It is safe to call this
- routine from any thread. However, it is not safe to call this routine
- with a database connection that is closed or might close before this method
- returns.
-
-
-
-
- Sets the status of the memory usage tracking subsystem in the SQLite core library. By default, this is enabled.
- If this is disabled, memory usage tracking will not be performed. This is not really a per-connection value, it is
- global to the process.
-
- Non-zero to enable memory usage tracking, zero otherwise.
- A standard SQLite return code (i.e. zero for success and non-zero for failure).
-
-
- Passes a shutdown request off to SQLite.
-
-
- Enables or disabled extended result codes returned by SQLite
-
-
- Enables or disabled extended result codes returned by SQLite
-
-
- Enables or disabled extended result codes returned by SQLite
-
-
- Add a log message via the SQLite sqlite3_log interface.
-
-
- Add a log message via the SQLite sqlite3_log interface.
-
-
-
- Change the password (or assign a password) to an open database.
-
-
- No readers or writers may be active for this process. The database must already be open
- and if it already was password protected, the existing password must already have been supplied.
-
- The new password to assign to the database
-
-
-
- Change the password (or assign a password) to an open database.
-
-
- No readers or writers may be active for this process. The database must already be open
- and if it already was password protected, the existing password must already have been supplied.
-
- The new password to assign to the database
-
-
-
- Sets the password for a password-protected database. A password-protected database is
- unusable for any operation until the password has been set.
-
- The password for the database
-
-
-
- Sets the password for a password-protected database. A password-protected database is
- unusable for any operation until the password has been set.
-
- The password for the database
-
-
-
- Queries or modifies the number of retries or the retry interval (in milliseconds) for
- certain I/O operations that may fail due to anti-virus software.
-
- The number of times to retry the I/O operation. A negative value
- will cause the current count to be queried and replace that negative value.
- The number of milliseconds to wait before retrying the I/O
- operation. This number is multiplied by the number of retry attempts so far to come
- up with the final number of milliseconds to wait. A negative value will cause the
- current interval to be queried and replace that negative value.
- Zero for success, non-zero for error.
-
-
-
- Removes one set of surrounding single -OR- double quotes from the string
- value and returns the resulting string value. If the string is null, empty,
- or contains quotes that are not balanced, nothing is done and the original
- string value will be returned.
-
- The string value to process.
-
- The string value, modified to remove one set of surrounding single -OR-
- double quotes, if applicable.
-
-
-
-
- Expand the filename of the data source, resolving the |DataDirectory|
- macro as appropriate.
-
- The database filename to expand
-
- Non-zero if the returned file name should be converted to a full path
- (except when using the .NET Compact Framework).
-
- The expanded path and filename of the filename
-
-
-
- The following commands are used to extract schema information out of the database. Valid schema types are:
-
- -
- MetaDataCollections
-
- -
- DataSourceInformation
-
- -
- Catalogs
-
- -
- Columns
-
- -
- ForeignKeys
-
- -
- Indexes
-
- -
- IndexColumns
-
- -
- Tables
-
- -
- Views
-
- -
- ViewColumns
-
-
-
-
- Returns the MetaDataCollections schema
-
- A DataTable of the MetaDataCollections schema
-
-
-
- Returns schema information of the specified collection
-
- The schema collection to retrieve
- A DataTable of the specified collection
-
-
-
- Retrieves schema information using the specified constraint(s) for the specified collection
-
- The collection to retrieve
- The restrictions to impose
- A DataTable of the specified collection
-
-
-
- Builds a MetaDataCollections schema datatable
-
- DataTable
-
-
-
- Builds a DataSourceInformation datatable
-
- DataTable
-
-
-
- Build a Columns schema
-
- The catalog (attached database) to query, can be null
- The table to retrieve schema information for, must not be null
- The column to retrieve schema information for, can be null
- DataTable
-
-
-
- Returns index information for the given database and catalog
-
- The catalog (attached database) to query, can be null
- The name of the index to retrieve information for, can be null
- The table to retrieve index information for, can be null
- DataTable
-
-
-
- Retrieves table schema information for the database and catalog
-
- The catalog (attached database) to retrieve tables on
- The table to retrieve, can be null
- The table type, can be null
- DataTable
-
-
-
- Retrieves view schema information for the database
-
- The catalog (attached database) to retrieve views on
- The view name, can be null
- DataTable
-
-
-
- Retrieves catalog (attached databases) schema information for the database
-
- The catalog to retrieve, can be null
- DataTable
-
-
-
- Returns the base column information for indexes in a database
-
- The catalog to retrieve indexes for (can be null)
- The table to restrict index information by (can be null)
- The index to restrict index information by (can be null)
- The source column to restrict index information by (can be null)
- A DataTable containing the results
-
-
-
- Returns detailed column information for a specified view
-
- The catalog to retrieve columns for (can be null)
- The view to restrict column information by (can be null)
- The source column to restrict column information by (can be null)
- A DataTable containing the results
-
-
-
- Retrieves foreign key information from the specified set of filters
-
- An optional catalog to restrict results on
- An optional table to restrict results on
- An optional foreign key name to restrict results on
- A DataTable with the results of the query
-
-
-
- Static variable to store the connection event handlers to call.
-
-
-
-
- This event is raised whenever the database is opened or closed.
-
-
-
-
- This event is raised when events related to the lifecycle of a
- SQLiteConnection object occur.
-
-
-
-
- Returns the number of pool entries for the file name associated with this connection.
-
-
-
-
- The connection string containing the parameters for the connection
-
-
-
-
- Parameter
- Values
- Required
- Default
-
- -
- Data Source
- This may be a file name, the string ":memory:", or any supported URI (starting with SQLite 3.7.7).
- Y
-
-
- -
- Version
- 3
- N
- 3
-
- -
- UseUTF16Encoding
- True
False
- N
- False
-
- -
- DateTimeFormat
-
- Ticks - Use the value of DateTime.Ticks.
- ISO8601 - Use the ISO-8601 format. Uses the "yyyy-MM-dd HH:mm:ss.FFFFFFFK" format for UTC
- DateTime values and "yyyy-MM-dd HH:mm:ss.FFFFFFF" format for local DateTime values).
- JulianDay - The interval of time in days and fractions of a day since January 1, 4713 BC.
- UnixEpoch - The whole number of seconds since the Unix epoch (January 1, 1970).
- InvariantCulture - Any culture-independent string value that the .NET Framework can interpret as a valid DateTime.
- CurrentCulture - Any string value that the .NET Framework can interpret as a valid DateTime using the current culture.
- N
- ISO8601
-
- -
- DateTimeKind
- Unspecified - Not specified as either UTC or local time.
Utc - The time represented is UTC.
Local - The time represented is local time.
- N
- Unspecified
-
- -
- BaseSchemaName
- Some base data classes in the framework (e.g. those that build SQL queries dynamically)
- assume that an ADO.NET provider cannot support an alternate catalog (i.e. database) without supporting
- alternate schemas as well; however, SQLite does not fit into this model. Therefore, this value is used
- as a placeholder and removed prior to preparing any SQL statements that may contain it.
- N
- sqlite_default_schema
-
- -
- BinaryGUID
- True - Store GUID columns in binary form
False - Store GUID columns as text
- N
- True
-
- -
- Cache Size
- {size in bytes}
- N
- 2000
-
- -
- Synchronous
- Normal - Normal file flushing behavior
Full - Full flushing after all writes
Off - Underlying OS flushes I/O's
- N
- Full
-
- -
- Page Size
- {size in bytes}
- N
- 1024
-
- -
- Password
- {password} - Using this parameter requires that the CryptoAPI based codec be enabled at compile-time for both the native interop assembly and the core managed assemblies; otherwise, using this parameter may result in an exception being thrown when attempting to open the connection.
- N
-
-
- -
- Enlist
- Y - Automatically enlist in distributed transactions
N - No automatic enlistment
- N
- Y
-
- -
- Pooling
- True - Use connection pooling
False - Do not use connection pooling
- N
- False
-
- -
- FailIfMissing
- True - Don't create the database if it does not exist, throw an error instead
False - Automatically create the database if it does not exist
- N
- False
-
- -
- Max Page Count
- {size in pages} - Limits the maximum number of pages (limits the size) of the database
- N
- 0
-
- -
- Legacy Format
- True - Use the more compatible legacy 3.x database format
False - Use the newer 3.3x database format which compresses numbers more effectively
- N
- False
-
- -
- Default Timeout
- {time in seconds}
The default command timeout
- N
- 30
-
- -
- Journal Mode
- Delete - Delete the journal file after a commit
Persist - Zero out and leave the journal file on disk after a commit
Off - Disable the rollback journal entirely
- N
- Delete
-
- -
- Read Only
- True - Open the database for read only access
False - Open the database for normal read/write access
- N
- False
-
- -
- Max Pool Size
- The maximum number of connections for the given connection string that can be in the connection pool
- N
- 100
-
- -
- Default IsolationLevel
- The default transaciton isolation level
- N
- Serializable
-
- -
- Foreign Keys
- Enable foreign key constraints
- N
- False
-
- -
- Flags
- Extra behavioral flags for the connection. See the enumeration for possible values.
- N
- Default
-
- -
- SetDefaults
-
- True - Apply the default connection settings to the opened database.
- False - Skip applying the default connection settings to the opened database.
-
- N
- True
-
- -
- ToFullPath
-
- True - Attempt to expand the data source file name to a fully qualified path before opening.
- False - Skip attempting to expand the data source file name to a fully qualified path before opening.
-
- N
- True
-
-
-
-
-
-
- Returns the data source file name without extension or path.
-
-
-
-
- Returns the string "main".
-
-
-
-
- Gets/sets the default command timeout for newly-created commands. This is especially useful for
- commands used internally such as inside a SQLiteTransaction, where setting the timeout is not possible.
- This can also be set in the ConnectionString with "Default Timeout"
-
-
-
-
- Non-zero if the built-in (i.e. framework provided) connection string
- parser should be used when opening the connection.
-
-
-
-
- Gets/sets the extra behavioral flags for this connection. See the
- enumeration for a list of
- possible values.
-
-
-
-
- Returns the version of the underlying SQLite database engine
-
-
-
-
- Returns the rowid of the most recent successful INSERT into the database from this connection.
-
-
-
-
- Returns the number of rows changed by the last INSERT, UPDATE, or DELETE statement executed on
- this connection.
-
-
-
-
- Returns the amount of memory (in bytes) currently in use by the SQLite core library.
-
-
-
-
- Returns the maximum amount of memory (in bytes) used by the SQLite core library since the high-water mark was last reset.
-
-
-
-
- Returns a string containing the define constants (i.e. compile-time
- options) used to compile the core managed assembly, delimited with
- spaces.
-
-
-
-
- Returns the version of the underlying SQLite database engine
-
-
-
-
- This method returns the string whose value is the same as the
- SQLITE_SOURCE_ID C preprocessor macro used when compiling the
- SQLite core library.
-
-
-
-
- Returns the state of the connection.
-
-
-
-
- This event is raised whenever SQLite makes an update/delete/insert into the database on
- this connection. It only applies to the given connection.
-
-
-
-
- This event is raised whenever SQLite is committing a transaction.
- Return non-zero to trigger a rollback.
-
-
-
-
- This event is raised whenever SQLite statement first begins executing on
- this connection. It only applies to the given connection.
-
-
-
-
- This event is raised whenever SQLite is rolling back a transaction.
-
-
-
-
- Returns the instance.
-
-
-
-
- The I/O file cache flushing behavior for the connection
-
-
-
-
- Normal file flushing at critical sections of the code
-
-
-
-
- Full file flushing after every write operation
-
-
-
-
- Use the default operating system's file flushing, SQLite does not explicitly flush the file buffers after writing
-
-
-
-
- Raised when a transaction is about to be committed. To roll back a transaction, set the
- rollbackTrans boolean value to true.
-
- The connection committing the transaction
- Event arguments on the transaction
-
-
-
- Raised when data is inserted, updated and deleted on a given connection
-
- The connection committing the transaction
- The event parameters which triggered the event
-
-
-
- Raised when a statement first begins executing on a given connection
-
- The connection executing the statement
- Event arguments of the trace
-
-
-
- Raised between each backup step.
-
-
- The source database connection.
-
-
- The source database name.
-
-
- The destination database connection.
-
-
- The destination database name.
-
-
- The number of pages copied with each step.
-
-
- The number of pages remaining to be copied.
-
-
- The total number of pages in the source database.
-
-
- Set to true if the operation needs to be retried due to database
- locking issues; otherwise, set to false.
-
-
- True to continue with the backup process or false to halt the backup
- process, rolling back any changes that have been made so far.
-
-
-
-
- Whenever an update event is triggered on a connection, this enum will indicate
- exactly what type of operation is being performed.
-
-
-
-
- A row is being deleted from the given database and table
-
-
-
-
- A row is being inserted into the table.
-
-
-
-
- A row is being updated in the table.
-
-
-
-
- Passed during an Update callback, these event arguments detail the type of update operation being performed
- on the given connection.
-
-
-
-
- The name of the database being updated (usually "main" but can be any attached or temporary database)
-
-
-
-
- The name of the table being updated
-
-
-
-
- The type of update being performed (insert/update/delete)
-
-
-
-
- The RowId affected by this update.
-
-
-
-
- Event arguments raised when a transaction is being committed
-
-
-
-
- Set to true to abort the transaction and trigger a rollback
-
-
-
-
- Passed during an Trace callback, these event arguments contain the UTF-8 rendering of the SQL statement text
-
-
-
-
- SQL statement text as the statement first begins executing
-
-
-
-
- The connection pool object
-
-
-
-
- The default version number new pools will get
-
-
-
-
- The number of connections successfully opened from any pool.
- This value is incremented by the Remove method.
-
-
-
-
- The number of connections successfully closed from any pool.
- This value is incremented by the Add method.
-
-
-
-
- Counts the number of pool entries matching the specified file name.
-
- The file name to match or null to match all files.
- The pool entry counts for each matching file.
- The total number of connections successfully opened from any pool.
- The total number of connections successfully closed from any pool.
- The total number of pool entries for all matching files.
-
-
-
- Attempt to pull a pooled connection out of the queue for active duty
-
- The filename for a desired connection
- The maximum size the connection pool for the filename can be
- The pool version the returned connection will belong to
- Returns NULL if no connections were available. Even if none are, the poolversion will still be a valid pool version
-
-
-
- Clears out all pooled connections and rev's up the default pool version to force all old active objects
- not in the pool to get discarded rather than returned to their pools.
-
-
-
-
- Clear a given pool for a given filename. Discards anything in the pool for the given file, and revs the pool
- version so current active objects on the old version of the pool will get discarded rather than be returned to the pool.
-
- The filename of the pool to clear
-
-
-
- Return a connection to the pool for someone else to use.
-
- The filename of the pool to use
- The connection handle to pool
- The pool version the handle was created under
-
- If the version numbers don't match between the connection and the pool, then the handle is discarded.
-
-
-
-
- We don't have to thread-lock anything in this function, because it's only called by other functions above
- which already have a thread-safe lock.
-
- The queue to resize
- If a function intends to add to the pool, this is true, which forces the resize
- to take one more than it needs from the pool
-
-
-
- Keeps track of connections made on a specified file. The PoolVersion dictates whether old objects get
- returned to the pool or discarded when no longer in use.
-
-
-
-
- SQLite implementation of DbConnectionStringBuilder.
-
-
-
-
- Properties of this class
-
-
-
-
- Constructs a new instance of the class
-
-
- Default constructor
-
-
-
-
- Constructs a new instance of the class using the specified connection string.
-
- The connection string to parse
-
-
-
- Private initializer, which assigns the connection string and resets the builder
-
- The connection string to assign
-
-
-
- Helper function for retrieving values from the connectionstring
-
- The keyword to retrieve settings for
- The resulting parameter value
- Returns true if the value was found and returned
-
-
-
- Fallback method for MONO, which doesn't implement DbConnectionStringBuilder.GetProperties()
-
- The hashtable to fill with property descriptors
-
-
-
- Gets/Sets the default version of the SQLite engine to instantiate. Currently the only valid value is 3, indicating version 3 of the sqlite library.
-
-
-
-
- Gets/Sets the synchronization mode (file flushing) of the connection string. Default is "Normal".
-
-
-
-
- Gets/Sets the encoding for the connection string. The default is "False" which indicates UTF-8 encoding.
-
-
-
-
- Gets/Sets whether or not to use connection pooling. The default is "False"
-
-
-
-
- Gets/Sets whethor not to store GUID's in binary format. The default is True
- which saves space in the database.
-
-
-
-
- Gets/Sets the filename to open on the connection string.
-
-
-
-
- An alternate to the data source property
-
-
-
-
- An alternate to the data source property that uses the SQLite URI syntax.
-
-
-
-
- Gets/sets the default command timeout for newly-created commands. This is especially useful for
- commands used internally such as inside a SQLiteTransaction, where setting the timeout is not possible.
-
-
-
-
- Determines whether or not the connection will automatically participate
- in the current distributed transaction (if one exists)
-
-
-
-
- If set to true, will throw an exception if the database specified in the connection
- string does not exist. If false, the database will be created automatically.
-
-
-
-
- If enabled, uses the legacy 3.xx format for maximum compatibility, but results in larger
- database sizes.
-
-
-
-
- When enabled, the database will be opened for read-only access and writing will be disabled.
-
-
-
-
- Gets/sets the database encryption password
-
-
-
-
- Gets/Sets the page size for the connection.
-
-
-
-
- Gets/Sets the maximum number of pages the database may hold
-
-
-
-
- Gets/Sets the cache size for the connection.
-
-
-
-
- Gets/Sets the DateTime format for the connection.
-
-
-
-
- Gets/Sets the DateTime kind for the connection.
-
-
-
-
- Gets/Sets the placeholder base schema name used for
- .NET Framework compatibility purposes.
-
-
-
-
- Determines how SQLite handles the transaction journal file.
-
-
-
-
- Sets the default isolation level for transactions on the connection.
-
-
-
-
- If enabled, use foreign key constraints
-
-
-
-
- Gets/Sets the extra behavioral flags.
-
-
-
-
- If enabled, apply the default connection settings to opened databases.
-
-
-
-
- If enabled, attempt to resolve the provided data source file name to a
- full path before opening.
-
-
-
-
- SQLite has very limited types, and is inherently text-based. The first 5 types below represent the sum of all types SQLite
- understands. The DateTime extension to the spec is for internal use only.
-
-
-
-
- Not used
-
-
-
-
- All integers in SQLite default to Int64
-
-
-
-
- All floating point numbers in SQLite default to double
-
-
-
-
- The default data type of SQLite is text
-
-
-
-
- Typically blob types are only seen when returned from a function
-
-
-
-
- Null types can be returned from functions
-
-
-
-
- Used internally by this provider
-
-
-
-
- Used internally
-
-
-
-
- These are the event types associated with the
-
- delegate (and its corresponding event) and the
- class.
-
-
-
-
- Not used.
-
-
-
-
- Not used.
-
-
-
-
- The connection is being opened.
-
-
-
-
- The connection string has been parsed.
-
-
-
-
- The connection was opened.
-
-
-
-
- The method was called on the
- connection.
-
-
-
-
- A transaction was created using the connection.
-
-
-
-
- The connection was enlisted into a transaction.
-
-
-
-
- A command was created using the connection.
-
-
-
-
- The connection is being closed.
-
-
-
-
- The connection was closed.
-
-
-
-
- This implementation of SQLite for ADO.NET can process date/time fields in databases in only one of three formats. Ticks, ISO8601
- and JulianDay.
-
-
- ISO8601 is more compatible, readable, fully-processable, but less accurate as it doesn't provide time down to fractions of a second.
- JulianDay is the numeric format the SQLite uses internally and is arguably the most compatible with 3rd party tools. It is
- not readable as text without post-processing.
- Ticks less compatible with 3rd party tools that query the database, and renders the DateTime field unreadable as text without post-processing.
-
- The preferred order of choosing a datetime format is JulianDay, ISO8601, and then Ticks. Ticks is mainly present for legacy
- code support.
-
-
-
-
- Use the value of DateTime.Ticks. This value is not recommended and is not well supported with LINQ.
-
-
-
-
- Use the ISO-8601 format. Uses the "yyyy-MM-dd HH:mm:ss.FFFFFFFK" format for UTC DateTime values and
- "yyyy-MM-dd HH:mm:ss.FFFFFFF" format for local DateTime values).
-
-
-
-
- The interval of time in days and fractions of a day since January 1, 4713 BC.
-
-
-
-
- The whole number of seconds since the Unix epoch (January 1, 1970).
-
-
-
-
- Any culture-independent string value that the .NET Framework can interpret as a valid DateTime.
-
-
-
-
- Any string value that the .NET Framework can interpret as a valid DateTime using the current culture.
-
-
-
-
- The default format for this provider.
-
-
-
-
- This enum determines how SQLite treats its journal file.
-
-
- By default SQLite will create and delete the journal file when needed during a transaction.
- However, for some computers running certain filesystem monitoring tools, the rapid
- creation and deletion of the journal file can cause those programs to fail, or to interfere with SQLite.
-
- If a program or virus scanner is interfering with SQLite's journal file, you may receive errors like "unable to open database file"
- when starting a transaction. If this is happening, you may want to change the default journal mode to Persist.
-
-
-
-
- The default mode, this causes SQLite to use the existing journaling mode for the database.
-
-
-
-
- SQLite will create and destroy the journal file as-needed.
-
-
-
-
- When this is set, SQLite will keep the journal file even after a transaction has completed. It's contents will be erased,
- and the journal re-used as often as needed. If it is deleted, it will be recreated the next time it is needed.
-
-
-
-
- This option disables the rollback journal entirely. Interrupted transactions or a program crash can cause database
- corruption in this mode!
-
-
-
-
- SQLite will truncate the journal file to zero-length instead of deleting it.
-
-
-
-
- SQLite will store the journal in volatile RAM. This saves disk I/O but at the expense of database safety and integrity.
- If the application using SQLite crashes in the middle of a transaction when the MEMORY journaling mode is set, then the
- database file will very likely go corrupt.
-
-
-
-
- SQLite uses a write-ahead log instead of a rollback journal to implement transactions. The WAL journaling mode is persistent;
- after being set it stays in effect across multiple database connections and after closing and reopening the database. A database
- in WAL journaling mode can only be accessed by SQLite version 3.7.0 or later.
-
-
-
-
- Possible values for the "synchronous" database setting. This setting determines
- how often the database engine calls the xSync method of the VFS.
-
-
-
-
- Use the default "synchronous" database setting. Currently, this should be
- the same as using the FULL mode.
-
-
-
-
- The database engine continues without syncing as soon as it has handed
- data off to the operating system. If the application running SQLite
- crashes, the data will be safe, but the database might become corrupted
- if the operating system crashes or the computer loses power before that
- data has been written to the disk surface.
-
-
-
-
- The database engine will still sync at the most critical moments, but
- less often than in FULL mode. There is a very small (though non-zero)
- chance that a power failure at just the wrong time could corrupt the
- database in NORMAL mode.
-
-
-
-
- The database engine will use the xSync method of the VFS to ensure that
- all content is safely written to the disk surface prior to continuing.
- This ensures that an operating system crash or power failure will not
- corrupt the database. FULL synchronous is very safe, but it is also
- slower.
-
-
-
-
- Struct used internally to determine the datatype of a column in a resultset
-
-
-
-
- The DbType of the column, or DbType.Object if it cannot be determined
-
-
-
-
- The affinity of a column, used for expressions or when Type is DbType.Object
-
-
-
-
- SQLite implementation of DbDataAdapter.
-
-
-
-
- This class is just a shell around the DbDataAdapter. Nothing from DbDataAdapter is overridden here, just a few constructors are defined.
-
-
- Default constructor.
-
-
-
-
- Constructs a data adapter using the specified select command.
-
- The select command to associate with the adapter.
-
-
-
- Constructs a data adapter with the supplied select command text and associated with the specified connection.
-
- The select command text to associate with the data adapter.
- The connection to associate with the select command.
-
-
-
- Constructs a data adapter with the specified select command text, and using the specified database connection string.
-
- The select command text to use to construct a select command.
- A connection string suitable for passing to a new SQLiteConnection, which is associated with the select command.
-
-
-
- Raised by the underlying DbDataAdapter when a row is being updated
-
- The event's specifics
-
-
-
- Raised by DbDataAdapter after a row is updated
-
- The event's specifics
-
-
-
- Row updating event handler
-
-
-
-
- Row updated event handler
-
-
-
-
- Gets/sets the select command for this DataAdapter
-
-
-
-
- Gets/sets the insert command for this DataAdapter
-
-
-
-
- Gets/sets the update command for this DataAdapter
-
-
-
-
- Gets/sets the delete command for this DataAdapter
-
-
-
-
- SQLite implementation of DbDataReader.
-
-
-
-
- Underlying command this reader is attached to
-
-
-
-
- Index of the current statement in the command being processed
-
-
-
-
- Current statement being Read()
-
-
-
-
- State of the current statement being processed.
- -1 = First Step() executed, so the first Read() will be ignored
- 0 = Actively reading
- 1 = Finished reading
- 2 = Non-row-returning statement, no records
-
-
-
-
- Number of records affected by the insert/update statements executed on the command
-
-
-
-
- Count of fields (columns) in the row-returning statement currently being processed
-
-
-
-
- Maps the field (column) names to their corresponding indexes within the results.
-
-
-
-
- Datatypes of active fields (columns) in the current statement, used for type-restricting data
-
-
-
-
- The behavior of the datareader
-
-
-
-
- If set, then dispose of the command object when the reader is finished
-
-
-
-
- If set, then raise an exception when the object is accessed after being disposed.
-
-
-
-
- An array of rowid's for the active statement if CommandBehavior.KeyInfo is specified
-
-
-
-
- Matches the version of the connection.
-
-
-
-
- The "stub" (i.e. placeholder) base schema name to use when returning
- column schema information. Matches the base schema name used by the
- associated connection.
-
-
-
-
- Internal constructor, initializes the datareader and sets up to begin executing statements
-
- The SQLiteCommand this data reader is for
- The expected behavior of the data reader
-
-
-
- Dispose of all resources used by this datareader.
-
-
-
-
-
- Closes the datareader, potentially closing the connection as well if CommandBehavior.CloseConnection was specified.
-
-
-
-
- Throw an error if the datareader is closed
-
-
-
-
- Throw an error if a row is not loaded
-
-
-
-
- Enumerator support
-
- Returns a DbEnumerator object.
-
-
-
- SQLite is inherently un-typed. All datatypes in SQLite are natively strings. The definition of the columns of a table
- and the affinity of returned types are all we have to go on to type-restrict data in the reader.
-
- This function attempts to verify that the type of data being requested of a column matches the datatype of the column. In
- the case of columns that are not backed into a table definition, we attempt to match up the affinity of a column (int, double, string or blob)
- to a set of known types that closely match that affinity. It's not an exact science, but its the best we can do.
-
-
- This function throws an InvalidTypeCast() exception if the requested type doesn't match the column's definition or affinity.
-
- The index of the column to type-check
- The type we want to get out of the column
-
-
-
- Retrieves the column as a boolean value
-
- The index of the column to retrieve
- bool
-
-
-
- Retrieves the column as a single byte value
-
- The index of the column to retrieve
- byte
-
-
-
- Retrieves a column as an array of bytes (blob)
-
- The index of the column to retrieve
- The zero-based index of where to begin reading the data
- The buffer to write the bytes into
- The zero-based index of where to begin writing into the array
- The number of bytes to retrieve
- The actual number of bytes written into the array
-
- To determine the number of bytes in the column, pass a null value for the buffer. The total length will be returned.
-
-
-
-
- Returns the column as a single character
-
- The index of the column to retrieve
- char
-
-
-
- Retrieves a column as an array of chars (blob)
-
- The index of the column to retrieve
- The zero-based index of where to begin reading the data
- The buffer to write the characters into
- The zero-based index of where to begin writing into the array
- The number of bytes to retrieve
- The actual number of characters written into the array
-
- To determine the number of characters in the column, pass a null value for the buffer. The total length will be returned.
-
-
-
-
- Retrieves the name of the back-end datatype of the column
-
- The index of the column to retrieve
- string
-
-
-
- Retrieve the column as a date/time value
-
- The index of the column to retrieve
- DateTime
-
-
-
- Retrieve the column as a decimal value
-
- The index of the column to retrieve
- decimal
-
-
-
- Returns the column as a double
-
- The index of the column to retrieve
- double
-
-
-
- Returns the .NET type of a given column
-
- The index of the column to retrieve
- Type
-
-
-
- Returns a column as a float value
-
- The index of the column to retrieve
- float
-
-
-
- Returns the column as a Guid
-
- The index of the column to retrieve
- Guid
-
-
-
- Returns the column as a short
-
- The index of the column to retrieve
- Int16
-
-
-
- Retrieves the column as an int
-
- The index of the column to retrieve
- Int32
-
-
-
- Retrieves the column as a long
-
- The index of the column to retrieve
- Int64
-
-
-
- Retrieves the name of the column
-
- The index of the column to retrieve
- string
-
-
-
- Retrieves the i of a column, given its name
-
- The name of the column to retrieve
- The int i of the column
-
-
-
- Schema information in SQLite is difficult to map into .NET conventions, so a lot of work must be done
- to gather the necessary information so it can be represented in an ADO.NET manner.
-
- Returns a DataTable containing the schema information for the active SELECT statement being processed.
-
-
-
- Retrieves the column as a string
-
- The index of the column to retrieve
- string
-
-
-
- Retrieves the column as an object corresponding to the underlying datatype of the column
-
- The index of the column to retrieve
- object
-
-
-
- Retreives the values of multiple columns, up to the size of the supplied array
-
- The array to fill with values from the columns in the current resultset
- The number of columns retrieved
-
-
-
- Returns a collection containing all the column names and values for the
- current row of data in the current resultset, if any. If there is no
- current row or no current resultset, an exception may be thrown.
-
-
- The collection containing the column name and value information for the
- current row of data in the current resultset or null if this information
- cannot be obtained.
-
-
-
-
- Returns True if the specified column is null
-
- The index of the column to retrieve
- True or False
-
-
-
- Moves to the next resultset in multiple row-returning SQL command.
-
- True if the command was successful and a new resultset is available, False otherwise.
-
-
-
- Retrieves the SQLiteType for a given column, and caches it to avoid repetetive interop calls.
-
- The index of the column to retrieve
- A SQLiteType structure
-
-
-
- Reads the next row from the resultset
-
- True if a new row was successfully loaded and is ready for processing
-
-
-
- Not implemented. Returns 0
-
-
-
-
- Returns the number of columns in the current resultset
-
-
-
-
- Returns the number of visible fields in the current resultset
-
-
-
-
- Returns True if the resultset has rows that can be fetched
-
-
-
-
- Returns True if the data reader is closed
-
-
-
-
- Retrieve the count of records affected by an update/insert command. Only valid once the data reader is closed!
-
-
-
-
- Indexer to retrieve data from a column given its name
-
- The name of the column to retrieve data for
- The value contained in the column
-
-
-
- Indexer to retrieve data from a column given its i
-
- The index of the column to retrieve
- The value contained in the column
-
-
-
- SQLite exception class.
-
-
-
-
- Private constructor for use with serialization.
-
-
- Holds the serialized object data about the exception being thrown.
-
-
- Contains contextual information about the source or destination.
-
-
-
-
- Public constructor for generating a SQLite exception given the error
- code and message.
-
-
- The SQLite return code to report.
-
-
- Message text to go along with the return code message text.
-
-
-
-
- Public constructor that uses the base class constructor for the error
- message.
-
- Error message text.
-
-
-
- Public constructor that uses the default base class constructor.
-
-
-
-
- Public constructor that uses the base class constructor for the error
- message and inner exception.
-
- Error message text.
- The original (inner) exception.
-
-
-
- Adds extra information to the serialized object data specific to this
- class type. This is only used for serialization.
-
-
- Holds the serialized object data about the exception being thrown.
-
-
- Contains contextual information about the source or destination.
-
-
-
-
- Returns the error message for the specified SQLite return code.
-
- The SQLite return code.
- The error message or null if it cannot be found.
-
-
-
- Returns the composite error message based on the SQLite return code
- and the optional detailed error message.
-
- The SQLite return code.
- Optional detailed error message.
- Error message text for the return code.
-
-
-
- Gets the associated SQLite return code for this exception as a
- . This property returns the same
- underlying value as the property.
-
-
-
-
- Gets the associated SQLite return code for this exception as an
- . For desktop versions of the .NET Framework,
- this property overrides the property of the same name within the
-
- class. This property returns the same underlying value as the
- property.
-
-
-
-
- SQLite error codes. Actually, this enumeration represents a return code,
- which may also indicate success in one of several ways (e.g. SQLITE_OK,
- SQLITE_ROW, and SQLITE_DONE). Therefore, the name of this enumeration is
- something of a misnomer.
-
-
-
-
- Successful result
-
-
-
-
- SQL error or missing database
-
-
-
-
- Internal logic error in SQLite
-
-
-
-
- Access permission denied
-
-
-
-
- Callback routine requested an abort
-
-
-
-
- The database file is locked
-
-
-
-
- A table in the database is locked
-
-
-
-
- A malloc() failed
-
-
-
-
- Attempt to write a readonly database
-
-
-
-
- Operation terminated by sqlite3_interrupt()
-
-
-
-
- Some kind of disk I/O error occurred
-
-
-
-
- The database disk image is malformed
-
-
-
-
- Unknown opcode in sqlite3_file_control()
-
-
-
-
- Insertion failed because database is full
-
-
-
-
- Unable to open the database file
-
-
-
-
- Database lock protocol error
-
-
-
-
- Database is empty
-
-
-
-
- The database schema changed
-
-
-
-
- String or BLOB exceeds size limit
-
-
-
-
- Abort due to constraint violation
-
-
-
-
- Data type mismatch
-
-
-
-
- Library used incorrectly
-
-
-
-
- Uses OS features not supported on host
-
-
-
-
- Authorization denied
-
-
-
-
- Auxiliary database format error
-
-
-
-
- 2nd parameter to sqlite3_bind out of range
-
-
-
-
- File opened that is not a database file
-
-
-
-
- sqlite3_step() has another row ready
-
-
-
-
- sqlite3_step() has finished executing
-
-
-
-
- SQLite implementation of .
-
-
- SQLite implementation of .
-
-
-
-
- Constructs a new instance.
-
-
-
-
- Static instance member which returns an instanced class.
-
-
-
-
- Creates and returns a new object.
-
- The new object.
-
-
-
- Creates and returns a new object.
-
- The new object.
-
-
-
- Creates and returns a new object.
-
- The new object.
-
-
-
- Creates and returns a new object.
-
- The new object.
-
-
-
- Creates and returns a new object.
-
- The new object.
-
-
-
- Creates and returns a new object.
-
- The new object.
-
-
-
- Will provide a object in .NET 3.5.
-
- The class or interface type to query for.
-
-
-
-
- This event is raised whenever SQLite raises a logging event.
- Note that this should be set as one of the first things in the
- application. This event is provided for backward compatibility only.
- New code should use the class instead.
-
-
-
-
- This abstract class is designed to handle user-defined functions easily. An instance of the derived class is made for each
- connection to the database.
-
-
- Although there is one instance of a class derived from SQLiteFunction per database connection, the derived class has no access
- to the underlying connection. This is necessary to deter implementers from thinking it would be a good idea to make database
- calls during processing.
-
- It is important to distinguish between a per-connection instance, and a per-SQL statement context. One instance of this class
- services all SQL statements being stepped through on that connection, and there can be many. One should never store per-statement
- information in member variables of user-defined function classes.
-
- For aggregate functions, always create and store your per-statement data in the contextData object on the 1st step. This data will
- be automatically freed for you (and Dispose() called if the item supports IDisposable) when the statement completes.
-
-
-
-
- The error code used for logging exceptions caught in user-provided
- code.
-
-
-
-
- The base connection this function is attached to
-
-
-
-
- Internal array used to keep track of aggregate function context data
-
-
-
-
- The connection flags associated with this object (this should be the
- same value as the flags associated with the parent connection object).
-
-
-
-
- Holds a reference to the callback function for user functions
-
-
-
-
- Holds a reference to the callbakc function for stepping in an aggregate function
-
-
-
-
- Holds a reference to the callback function for finalizing an aggregate function
-
-
-
-
- Holds a reference to the callback function for collation sequences
-
-
-
-
- Current context of the current callback. Only valid during a callback
-
-
-
-
- This static list contains all the user-defined functions declared using the proper attributes.
-
-
-
-
- Internal constructor, initializes the function's internal variables.
-
-
-
-
- Disposes of any active contextData variables that were not automatically cleaned up. Sometimes this can happen if
- someone closes the connection while a DataReader is open.
-
-
-
-
- Placeholder for a user-defined disposal routine
-
- True if the object is being disposed explicitly
-
-
-
- Scalar functions override this method to do their magic.
-
-
- Parameters passed to functions have only an affinity for a certain data type, there is no underlying schema available
- to force them into a certain type. Therefore the only types you will ever see as parameters are
- DBNull.Value, Int64, Double, String or byte[] array.
-
- The arguments for the command to process
- You may return most simple types as a return value, null or DBNull.Value to return null, DateTime, or
- you may return an Exception-derived class if you wish to return an error to SQLite. Do not actually throw the error,
- just return it!
-
-
-
- Aggregate functions override this method to do their magic.
-
-
- Typically you'll be updating whatever you've placed in the contextData field and returning as quickly as possible.
-
- The arguments for the command to process
- The 1-based step number. This is incrememted each time the step method is called.
- A placeholder for implementers to store contextual data pertaining to the current context.
-
-
-
- Aggregate functions override this method to finish their aggregate processing.
-
-
- If you implemented your aggregate function properly,
- you've been recording and keeping track of your data in the contextData object provided, and now at this stage you should have
- all the information you need in there to figure out what to return.
- NOTE: It is possible to arrive here without receiving a previous call to Step(), in which case the contextData will
- be null. This can happen when no rows were returned. You can either return null, or 0 or some other custom return value
- if that is the case.
-
- Your own assigned contextData, provided for you so you can return your final results.
- You may return most simple types as a return value, null or DBNull.Value to return null, DateTime, or
- you may return an Exception-derived class if you wish to return an error to SQLite. Do not actually throw the error,
- just return it!
-
-
-
-
- User-defined collation sequences override this method to provide a custom string sorting algorithm.
-
- The first string to compare
- The second strnig to compare
- 1 if param1 is greater than param2, 0 if they are equal, or -1 if param1 is less than param2
-
-
-
- Converts an IntPtr array of context arguments to an object array containing the resolved parameters the pointers point to.
-
-
- Parameters passed to functions have only an affinity for a certain data type, there is no underlying schema available
- to force them into a certain type. Therefore the only types you will ever see as parameters are
- DBNull.Value, Int64, Double, String or byte[] array.
-
- The number of arguments
- A pointer to the array of arguments
- An object array of the arguments once they've been converted to .NET values
-
-
-
- Takes the return value from Invoke() and Final() and figures out how to return it to SQLite's context.
-
- The context the return value applies to
- The parameter to return to SQLite
-
-
-
- Internal scalar callback function, which wraps the raw context pointer and calls the virtual Invoke() method.
- WARNING: Must not throw exceptions.
-
- A raw context pointer
- Number of arguments passed in
- A pointer to the array of arguments
-
-
-
- Internal collation sequence function, which wraps up the raw string pointers and executes the Compare() virtual function.
- WARNING: Must not throw exceptions.
-
- Not used
- Length of the string pv1
- Pointer to the first string to compare
- Length of the string pv2
- Pointer to the second string to compare
- Returns -1 if the first string is less than the second. 0 if they are equal, or 1 if the first string is greater
- than the second. Returns 0 if an exception is caught.
-
-
-
- Internal collation sequence function, which wraps up the raw string pointers and executes the Compare() virtual function.
- WARNING: Must not throw exceptions.
-
- Not used
- Length of the string pv1
- Pointer to the first string to compare
- Length of the string pv2
- Pointer to the second string to compare
- Returns -1 if the first string is less than the second. 0 if they are equal, or 1 if the first string is greater
- than the second. Returns 0 if an exception is caught.
-
-
-
- The internal aggregate Step function callback, which wraps the raw context pointer and calls the virtual Step() method.
- WARNING: Must not throw exceptions.
-
-
- This function takes care of doing the lookups and getting the important information put together to call the Step() function.
- That includes pulling out the user's contextData and updating it after the call is made. We use a sorted list for this so
- binary searches can be done to find the data.
-
- A raw context pointer
- Number of arguments passed in
- A pointer to the array of arguments
-
-
-
- An internal aggregate Final function callback, which wraps the context pointer and calls the virtual Final() method.
- WARNING: Must not throw exceptions.
-
- A raw context pointer
-
-
-
- Using reflection, enumerate all assemblies in the current appdomain looking for classes that
- have a SQLiteFunctionAttribute attribute, and registering them accordingly.
-
-
-
-
- Manual method of registering a function. The type must still have the SQLiteFunctionAttributes in order to work
- properly, but this is a workaround for the Compact Framework where enumerating assemblies is not currently supported.
-
- The type of the function to register
-
-
-
- Called by SQLiteBase derived classes, this function binds all user-defined functions to a connection.
- It is done this way so that all user-defined functions will access the database using the same encoding scheme
- as the connection (UTF-8 or UTF-16).
-
-
- The wrapper functions that interop with SQLite will create a unique cookie value, which internally is a pointer to
- all the wrapped callback functions. The interop function uses it to map CDecl callbacks to StdCall callbacks.
-
- The base object on which the functions are to bind
- The flags associated with the parent connection object
- Returns an array of functions which the connection object should retain until the connection is closed.
-
-
-
- Returns a reference to the underlying connection's SQLiteConvert class, which can be used to convert
- strings and DateTime's into the current connection's encoding schema.
-
-
-
-
- Extends SQLiteFunction and allows an inherited class to obtain the collating sequence associated with a function call.
-
-
- User-defined functions can call the GetCollationSequence() method in this class and use it to compare strings and char arrays.
-
-
-
-
- Obtains the collating sequence in effect for the given function.
-
-
-
-
-
- The type of user-defined function to declare
-
-
-
-
- Scalar functions are designed to be called and return a result immediately. Examples include ABS(), Upper(), Lower(), etc.
-
-
-
-
- Aggregate functions are designed to accumulate data until the end of a call and then return a result gleaned from the accumulated data.
- Examples include SUM(), COUNT(), AVG(), etc.
-
-
-
-
- Collation sequences are used to sort textual data in a custom manner, and appear in an ORDER BY clause. Typically text in an ORDER BY is
- sorted using a straight case-insensitive comparison function. Custom collating sequences can be used to alter the behavior of text sorting
- in a user-defined manner.
-
-
-
-
- An internal callback delegate declaration.
-
- Raw context pointer for the user function
- Count of arguments to the function
- A pointer to the array of argument pointers
-
-
-
- An internal final callback delegate declaration.
-
- Raw context pointer for the user function
-
-
-
- Internal callback delegate for implementing collation sequences
-
- Not used
- Length of the string pv1
- Pointer to the first string to compare
- Length of the string pv2
- Pointer to the second string to compare
- Returns -1 if the first string is less than the second. 0 if they are equal, or 1 if the first string is greater
- than the second.
-
-
-
- The type of collating sequence
-
-
-
-
- The built-in BINARY collating sequence
-
-
-
-
- The built-in NOCASE collating sequence
-
-
-
-
- The built-in REVERSE collating sequence
-
-
-
-
- A custom user-defined collating sequence
-
-
-
-
- The encoding type the collation sequence uses
-
-
-
-
- The collation sequence is UTF8
-
-
-
-
- The collation sequence is UTF16 little-endian
-
-
-
-
- The collation sequence is UTF16 big-endian
-
-
-
-
- A struct describing the collating sequence a function is executing in
-
-
-
-
- The name of the collating sequence
-
-
-
-
- The type of collating sequence
-
-
-
-
- The text encoding of the collation sequence
-
-
-
-
- Context of the function that requested the collating sequence
-
-
-
-
- Calls the base collating sequence to compare two strings
-
- The first string to compare
- The second string to compare
- -1 if s1 is less than s2, 0 if s1 is equal to s2, and 1 if s1 is greater than s2
-
-
-
- Calls the base collating sequence to compare two character arrays
-
- The first array to compare
- The second array to compare
- -1 if c1 is less than c2, 0 if c1 is equal to c2, and 1 if c1 is greater than c2
-
-
-
- A simple custom attribute to enable us to easily find user-defined functions in
- the loaded assemblies and initialize them in SQLite as connections are made.
-
-
-
-
- Default constructor, initializes the internal variables for the function.
-
-
-
-
- The function's name as it will be used in SQLite command text.
-
-
-
-
- The number of arguments this function expects. -1 if the number of arguments is variable.
-
-
-
-
- The type of function this implementation will be.
-
-
-
-
- This class provides key info for a given SQLite statement.
-
- Providing key information for a given statement is non-trivial :(
-
-
-
-
-
- This function does all the nasty work at determining what keys need to be returned for
- a given statement.
-
-
-
-
-
-
-
- Make sure all the subqueries are open and ready and sync'd with the current rowid
- of the table they're supporting
-
-
-
-
- Release any readers on any subqueries
-
-
-
-
- Append all the columns we've added to the original query to the schema
-
-
-
-
-
- How many additional columns of keyinfo we're holding
-
-
-
-
- Used to support CommandBehavior.KeyInfo
-
-
-
-
- A single sub-query for a given table/database.
-
-
-
-
- Event data for logging event handlers.
-
-
-
-
- The error code. The type of this object value should be
- or .
-
-
-
-
- SQL statement text as the statement first begins executing
-
-
-
-
- Extra data associated with this event, if any.
-
-
-
-
- Constructs the object.
-
- Should be null.
-
- The error code. The type of this object value should be
- or .
-
- The error message, if any.
- The extra data, if any.
-
-
-
- Raised when a log event occurs.
-
- The current connection
- Event arguments of the trace
-
-
-
- Manages the SQLite custom logging functionality and the associated
- callback for the whole process.
-
-
-
-
- Object used to synchronize access to the static instance data
- for this class.
-
-
-
-
- Member variable to store the AppDomain.DomainUnload event handler.
-
-
-
-
- The default log event handler.
-
-
-
-
- The log callback passed to native SQLite engine. This must live
- as long as the SQLite library has a pointer to it.
-
-
-
-
- The base SQLite object to interop with.
-
-
-
-
- This will be non-zero if logging is currently enabled.
-
-
-
-
- Initializes the SQLite logging facilities.
-
-
-
-
- Handles the AppDomain being unloaded.
-
- Should be null.
- The data associated with this event.
-
-
-
- Log a message to all the registered log event handlers without going
- through the SQLite library.
-
- The message to be logged.
-
-
-
- Log a message to all the registered log event handlers without going
- through the SQLite library.
-
- The SQLite error code.
- The message to be logged.
-
-
-
- Log a message to all the registered log event handlers without going
- through the SQLite library.
-
- The integer error code.
- The message to be logged.
-
-
-
- Log a message to all the registered log event handlers without going
- through the SQLite library.
-
-
- The error code. The type of this object value should be
- System.Int32 or SQLiteErrorCode.
-
- The message to be logged.
-
-
-
- Creates and initializes the default log event handler.
-
-
-
-
- Adds the default log event handler to the list of handlers.
-
-
-
-
- Removes the default log event handler from the list of handlers.
-
-
-
-
- Internal proxy function that calls any registered application log
- event handlers.
-
- WARNING: This method is used more-or-less directly by native code,
- do not modify its type signature.
-
-
- The extra data associated with this message, if any.
-
-
- The error code associated with this message.
-
-
- The message string to be logged.
-
-
-
-
- Default logger. Currently, uses the Trace class (i.e. sends events
- to the current trace listeners, if any).
-
- Should be null.
- The data associated with this event.
-
-
-
- Member variable to store the application log handler to call.
-
-
-
-
- This event is raised whenever SQLite raises a logging event.
- Note that this should be set as one of the first things in the
- application.
-
-
-
-
- If this property is true, logging is enabled; otherwise, logging is
- disabled. When logging is disabled, no logging events will fire.
-
-
-
-
- MetaDataCollections specific to SQLite
-
-
-
-
- Returns a list of databases attached to the connection
-
-
-
-
- Returns column information for the specified table
-
-
-
-
- Returns index information for the optionally-specified table
-
-
-
-
- Returns base columns for the given index
-
-
-
-
- Returns the tables in the given catalog
-
-
-
-
- Returns user-defined views in the given catalog
-
-
-
-
- Returns underlying column information on the given view
-
-
-
-
- Returns foreign key information for the given catalog
-
-
-
-
- Returns the triggers on the database
-
-
-
-
- SQLite implementation of DbParameter.
-
-
-
-
- The data type of the parameter
-
-
-
-
- The version information for mapping the parameter
-
-
-
-
- The value of the data in the parameter
-
-
-
-
- The source column for the parameter
-
-
-
-
- The column name
-
-
-
-
- The data size, unused by SQLite
-
-
-
-
- Default constructor
-
-
-
-
- Constructs a named parameter given the specified parameter name
-
- The parameter name
-
-
-
- Constructs a named parameter given the specified parameter name and initial value
-
- The parameter name
- The initial value of the parameter
-
-
-
- Constructs a named parameter of the specified type
-
- The parameter name
- The datatype of the parameter
-
-
-
- Constructs a named parameter of the specified type and source column reference
-
- The parameter name
- The data type
- The source column
-
-
-
- Constructs a named parameter of the specified type, source column and row version
-
- The parameter name
- The data type
- The source column
- The row version information
-
-
-
- Constructs an unnamed parameter of the specified data type
-
- The datatype of the parameter
-
-
-
- Constructs an unnamed parameter of the specified data type and sets the initial value
-
- The datatype of the parameter
- The initial value of the parameter
-
-
-
- Constructs an unnamed parameter of the specified data type and source column
-
- The datatype of the parameter
- The source column
-
-
-
- Constructs an unnamed parameter of the specified data type, source column and row version
-
- The data type
- The source column
- The row version information
-
-
-
- Constructs a named parameter of the specified type and size
-
- The parameter name
- The data type
- The size of the parameter
-
-
-
- Constructs a named parameter of the specified type, size and source column
-
- The name of the parameter
- The data type
- The size of the parameter
- The source column
-
-
-
- Constructs a named parameter of the specified type, size, source column and row version
-
- The name of the parameter
- The data type
- The size of the parameter
- The source column
- The row version information
-
-
-
- Constructs a named parameter of the specified type, size, source column and row version
-
- The name of the parameter
- The data type
- The size of the parameter
- Only input parameters are supported in SQLite
- Ignored
- Ignored
- Ignored
- The source column
- The row version information
- The initial value to assign the parameter
-
-
-
- Constructs a named parameter, yet another flavor
-
- The name of the parameter
- The data type
- The size of the parameter
- Only input parameters are supported in SQLite
- Ignored
- Ignored
- The source column
- The row version information
- Whether or not this parameter is for comparing NULL's
- The intial value to assign the parameter
-
-
-
- Constructs an unnamed parameter of the specified type and size
-
- The data type
- The size of the parameter
-
-
-
- Constructs an unnamed parameter of the specified type, size, and source column
-
- The data type
- The size of the parameter
- The source column
-
-
-
- Constructs an unnamed parameter of the specified type, size, source column and row version
-
- The data type
- The size of the parameter
- The source column
- The row version information
-
-
-
- Resets the DbType of the parameter so it can be inferred from the value
-
-
-
-
- Clones a parameter
-
- A new, unassociated SQLiteParameter
-
-
-
- Whether or not the parameter can contain a null value
-
-
-
-
- Returns the datatype of the parameter
-
-
-
-
- Supports only input parameters
-
-
-
-
- Returns the parameter name
-
-
-
-
- Returns the size of the parameter
-
-
-
-
- Gets/sets the source column
-
-
-
-
- Used by DbCommandBuilder to determine the mapping for nullable fields
-
-
-
-
- Gets and sets the row version
-
-
-
-
- Gets and sets the parameter value. If no datatype was specified, the datatype will assume the type from the value given.
-
-
-
-
- SQLite implementation of DbParameterCollection.
-
-
-
-
- The underlying command to which this collection belongs
-
-
-
-
- The internal array of parameters in this collection
-
-
-
-
- Determines whether or not all parameters have been bound to their statement(s)
-
-
-
-
- Initializes the collection
-
- The command to which the collection belongs
-
-
-
- Retrieves an enumerator for the collection
-
- An enumerator for the underlying array
-
-
-
- Adds a parameter to the collection
-
- The parameter name
- The data type
- The size of the value
- The source column
- A SQLiteParameter object
-
-
-
- Adds a parameter to the collection
-
- The parameter name
- The data type
- The size of the value
- A SQLiteParameter object
-
-
-
- Adds a parameter to the collection
-
- The parameter name
- The data type
- A SQLiteParameter object
-
-
-
- Adds a parameter to the collection
-
- The parameter to add
- A zero-based index of where the parameter is located in the array
-
-
-
- Adds a parameter to the collection
-
- The parameter to add
- A zero-based index of where the parameter is located in the array
-
-
-
- Adds a named/unnamed parameter and its value to the parameter collection.
-
- Name of the parameter, or null to indicate an unnamed parameter
- The initial value of the parameter
- Returns the SQLiteParameter object created during the call.
-
-
-
- Adds an array of parameters to the collection
-
- The array of parameters to add
-
-
-
- Adds an array of parameters to the collection
-
- The array of parameters to add
-
-
-
- Clears the array and resets the collection
-
-
-
-
- Determines if the named parameter exists in the collection
-
- The name of the parameter to check
- True if the parameter is in the collection
-
-
-
- Determines if the parameter exists in the collection
-
- The SQLiteParameter to check
- True if the parameter is in the collection
-
-
-
- Not implemented
-
-
-
-
-
-
- Retrieve a parameter by name from the collection
-
- The name of the parameter to fetch
- A DbParameter object
-
-
-
- Retrieves a parameter by its index in the collection
-
- The index of the parameter to retrieve
- A DbParameter object
-
-
-
- Returns the index of a parameter given its name
-
- The name of the parameter to find
- -1 if not found, otherwise a zero-based index of the parameter
-
-
-
- Returns the index of a parameter
-
- The parameter to find
- -1 if not found, otherwise a zero-based index of the parameter
-
-
-
- Inserts a parameter into the array at the specified location
-
- The zero-based index to insert the parameter at
- The parameter to insert
-
-
-
- Removes a parameter from the collection
-
- The parameter to remove
-
-
-
- Removes a parameter from the collection given its name
-
- The name of the parameter to remove
-
-
-
- Removes a parameter from the collection given its index
-
- The zero-based parameter index to remove
-
-
-
- Re-assign the named parameter to a new parameter object
-
- The name of the parameter to replace
- The new parameter
-
-
-
- Re-assign a parameter at the specified index
-
- The zero-based index of the parameter to replace
- The new parameter
-
-
-
- Un-binds all parameters from their statements
-
-
-
-
- This function attempts to map all parameters in the collection to all statements in a Command.
- Since named parameters may span multiple statements, this function makes sure all statements are bound
- to the same named parameter. Unnamed parameters are bound in sequence.
-
-
-
-
- Returns true
-
-
-
-
- Returns false
-
-
-
-
- Returns false
-
-
-
-
- Returns null
-
-
-
-
- Returns a count of parameters in the collection
-
-
-
-
- Overloaded to specialize the return value of the default indexer
-
- Name of the parameter to get/set
- The specified named SQLite parameter
-
-
-
- Overloaded to specialize the return value of the default indexer
-
- The index of the parameter to get/set
- The specified SQLite parameter
-
-
-
- Represents a single SQL statement in SQLite.
-
-
-
-
- The underlying SQLite object this statement is bound to
-
-
-
-
- The command text of this SQL statement
-
-
-
-
- The actual statement pointer
-
-
-
-
- An index from which unnamed parameters begin
-
-
-
-
- Names of the parameters as SQLite understands them to be
-
-
-
-
- Parameters for this statement
-
-
-
-
- Command this statement belongs to (if any)
-
-
-
-
- The flags associated with the parent connection object.
-
-
-
-
- Initializes the statement and attempts to get all information about parameters in the statement
-
- The base SQLite object
- The flags associated with the parent connection object
- The statement
- The command text for this statement
- The previous command in a multi-statement command
-
-
-
- Disposes and finalizes the statement
-
-
-
-
- If the underlying database connection is open, fetches the number of changed rows
- resulting from the most recent query; otherwise, does nothing.
-
-
- The number of changes when true is returned.
- Undefined if false is returned.
-
- Non-zero if the number of changed rows was fetched.
-
-
-
- Called by SQLiteParameterCollection, this function determines if the specified parameter name belongs to
- this statement, and if so, keeps a reference to the parameter so it can be bound later.
-
- The parameter name to map
- The parameter to assign it
-
-
-
- Bind all parameters, making sure the caller didn't miss any
-
-
-
-
- Attempts to convert an arbitrary object to the Boolean data type.
- Null object values are converted to false. Throws a SQLiteException
- upon failure.
-
- The object value to convert.
- The format provider to use.
- The converted boolean value.
-
-
-
- Perform the bind operation for an individual parameter
-
- The index of the parameter to bind
- The parameter we're binding
-
-
-
- SQLite implementation of DbTransaction.
-
-
-
-
- The connection to which this transaction is bound
-
-
-
-
- Constructs the transaction object, binding it to the supplied connection
-
- The connection to open a transaction on
- TRUE to defer the writelock, or FALSE to lock immediately
-
-
-
- Disposes the transaction. If it is currently active, any changes are rolled back.
-
-
-
-
- Commits the current transaction.
-
-
-
-
- Rolls back the active transaction.
-
-
-
-
- Returns the underlying connection to which this transaction applies.
-
-
-
-
- Forwards to the local Connection property
-
-
-
-
- Gets the isolation level of the transaction. SQLite only supports Serializable transactions.
-
-
-
-
- A strongly-typed resource class, for looking up localized strings, etc.
-
-
-
-
- Returns the cached ResourceManager instance used by this class.
-
-
-
-
- Overrides the current thread's CurrentUICulture property for all
- resource lookups using this strongly typed resource class.
-
-
-
-
- Looks up a localized string similar to <?xml version="1.0" standalone="yes"?>
- <DocumentElement>
- <DataTypes>
- <TypeName>smallint</TypeName>
- <ProviderDbType>10</ProviderDbType>
- <ColumnSize>5</ColumnSize>
- <DataType>System.Int16</DataType>
- <CreateFormat>smallint</CreateFormat>
- <IsAutoIncrementable>false</IsAutoIncrementable>
- <IsCaseSensitive>false</IsCaseSensitive>
- <IsFixedLength>true</IsFixedLength>
- <IsFixedPrecisionScale>true</IsFixedPrecisionScale>
- <IsLong>false</IsLong>
- <IsNullable>true</ [rest of string was truncated]";.
-
-
-
-
- Looks up a localized string similar to ALL,ALTER,AND,AS,AUTOINCREMENT,BETWEEN,BY,CASE,CHECK,COLLATE,COMMIT,CONSTRAINT,CREATE,CROSS,DEFAULT,DEFERRABLE,DELETE,DISTINCT,DROP,ELSE,ESCAPE,EXCEPT,FOREIGN,FROM,FULL,GROUP,HAVING,IN,INDEX,INNER,INSERT,INTERSECT,INTO,IS,ISNULL,JOIN,LEFT,LIMIT,NATURAL,NOT,NOTNULL,NULL,ON,OR,ORDER,OUTER,PRIMARY,REFERENCES,RIGHT,ROLLBACK,SELECT,SET,TABLE,THEN,TO,TRANSACTION,UNION,UNIQUE,UPDATE,USING,VALUES,WHEN,WHERE.
-
-
-
-
- Looks up a localized string similar to <?xml version="1.0" encoding="utf-8" ?>
- <DocumentElement>
- <MetaDataCollections>
- <CollectionName>MetaDataCollections</CollectionName>
- <NumberOfRestrictions>0</NumberOfRestrictions>
- <NumberOfIdentifierParts>0</NumberOfIdentifierParts>
- </MetaDataCollections>
- <MetaDataCollections>
- <CollectionName>DataSourceInformation</CollectionName>
- <NumberOfRestrictions>0</NumberOfRestrictions>
- <NumberOfIdentifierParts>0</NumberOfIdentifierParts>
- </MetaDataCollections>
- <MetaDataC [rest of string was truncated]";.
-
-
-
-
- The name of the environment variable containing the processor
- architecture of the current process.
-
-
-
-
- This is the P/Invoke method that wraps the native Win32 LoadLibrary
- function. See the MSDN documentation for full details on what it
- does.
-
-
- The name of the executable library.
-
-
- The native module handle upon success -OR- IntPtr.Zero on failure.
-
-
-
-
- This lock is used to protect the static _SQLiteModule and
- processorArchitecturePlatforms fields, below.
-
-
-
-
- Stores the mappings between processor architecture names and platform
- names.
-
-
-
-
- The native module handle for the native SQLite library or the value
- IntPtr.Zero.
-
-
-
-
- For now, this method simply calls the Initialize method.
-
-
-
-
- Attempts to initialize this class by pre-loading the native SQLite
- library for the processor architecture of the current process.
-
-
-
-
- Queries and returns the base directory of the current application
- domain.
-
-
- The base directory for the current application domain -OR- null if it
- cannot be determined.
-
-
-
-
- Determines if the dynamic link library file name requires a suffix
- and adds it if necessary.
-
-
- The original dynamic link library file name to inspect.
-
-
- The dynamic link library file name, possibly modified to include an
- extension.
-
-
-
-
- Queries and returns the processor architecture of the current
- process.
-
-
- The processor architecture of the current process -OR- null if it
- cannot be determined. Always returns an empty string when running on
- the .NET Compact Framework.
-
-
-
-
- Given the processor architecture, returns the name of the platform.
-
-
- The processor architecture to be translated to a platform name.
-
-
- The platform name for the specified processor architecture -OR- null
- if it cannot be determined.
-
-
-
-
- Attempts to load the native SQLite library based on the specified
- directory and processor architecture.
-
-
- The base directory to use, null for default (the base directory of
- the current application domain). This directory should contain the
- processor architecture specific sub-directories.
-
-
- The requested processor architecture, null for default (the
- processor architecture of the current process). This caller should
- almost always specify null for this parameter.
-
-
- The native module handle as returned by LoadLibrary -OR- IntPtr.Zero
- if the loading fails for any reason.
-
-
-
-
diff --git a/Information/FileStructures_for_HHD_Hex_Editor_Neo/scm-map-Digital.h b/Information/FileStructures_for_HHD_Hex_Editor_Neo/scm-map-Digital.h
index 97d5c2d..53b6d55 100644
--- a/Information/FileStructures_for_HHD_Hex_Editor_Neo/scm-map-Digital.h
+++ b/Information/FileStructures_for_HHD_Hex_Editor_Neo/scm-map-Digital.h
@@ -81,7 +81,7 @@ public struct SCM_mapDigital_C
-struct SCM_mapDigital_DE_entry
+struct SCM_mapDigital_DEF_entry
{
word ProgramNr;
word VideoPid;
@@ -124,7 +124,7 @@ struct SCM_mapDigital_DE_entry
byte Checksum;
};
-public struct SCM_mapDigital_DE
+public struct SCM_mapDigital_DEF
{
SCM_mapDigital_DE_entry Entries[*];
};
diff --git a/Information/FileStructures_for_HHD_Hex_Editor_Neo/scm-map-Satellite.h b/Information/FileStructures_for_HHD_Hex_Editor_Neo/scm-map-Satellite.h
index ec16426..194e9c9 100644
--- a/Information/FileStructures_for_HHD_Hex_Editor_Neo/scm-map-Satellite.h
+++ b/Information/FileStructures_for_HHD_Hex_Editor_Neo/scm-map-Satellite.h
@@ -78,7 +78,7 @@ public struct SCM_mapSate_D
SCM_mapSate_D_entry Entries[*];
};
-struct SCM_mapSate_E_entry
+struct SCM_mapSate_EF_entry
{
word ProgramNr;
word VideoPid;
@@ -112,7 +112,7 @@ struct SCM_mapSate_E_entry
byte Checksum;
};
-public struct SCM_mapSate_E
+public struct SCM_mapSate_EF
{
SCM_mapSate_E_entry Entries[*];
};
diff --git a/Information/FileStructures_for_HHD_Hex_Editor_Neo/tll-192-LM_LS.h b/Information/FileStructures_for_HHD_Hex_Editor_Neo/tll-192-LM_LS.h
index dac8992..609311d 100644
--- a/Information/FileStructures_for_HHD_Hex_Editor_Neo/tll-192-LM_LS.h
+++ b/Information/FileStructures_for_HHD_Hex_Editor_Neo/tll-192-LM_LS.h
@@ -1,11 +1,25 @@
-#include "tll-common.h"
-
// all LM models except 340S and 611S
+#include "tll-common.h"
+
#define MAX_SAT_COUNT 64
-#define MAX_LNB_COUNT 40
-#define MAX_DVBS_COUNT 7520
+struct TLL44_Satellite;
+typedef TLL44_Satellite TLL_Satellite;
+
#define MAX_TP_COUNT 2400
+struct TLL40_Transponder;
+typedef TLL40_Transponder TLL_Transponder;
+
+#define MAX_DVBS_COUNT 7520
+struct TLL72_SatChannel;
+typedef TLL72_SatChannel TLL_SatChannel;
+
+#define MAX_LNB_COUNT 40
+struct TLL44_Lnb;
+typedef TLL44_Lnb TLL_Lnb;
+
+#include "tll-satellite.h"
+
struct LM192_AnalogChannel
{
@@ -121,143 +135,7 @@ struct LM192_DvbCTBlock
LM192_DvbCtChannel Channels[ChannelCount];
};
-struct LM192_DvbsHeaderSubblock
-{
- dword Crc32;
- byte DVBS_S2_Tag[8];
- word Temp03[2];
-};
-struct LM192_Satellite
-{
- char Name[32];
- byte PosDeg;
- byte PosCDeg;
- word Unknown1;
- word Unknown2;
- word Unknown3;
- word TransponderCount;
- word Unknown4;
-};
-
-struct LM192_DvbsSatelliteSubblock
-{
- dword Crc32;
- word Unknown1;
- byte SatAllocationBitmap[MAX_SAT_COUNT/8];
- word Unknown2;
- word SatCount;
- byte SatOrder[MAX_SAT_COUNT];
- word Unknown3;
- LM192_Satellite Satellites[MAX_SAT_COUNT];
-};
-
-struct LM192_Transponder
-{
- byte t1[10];
- word TP_Number;
- word TP_Freq;
- byte t2[4];
- word NID;
- word TID;
- byte t3[3];
- word SRate;
- byte t4[9];
- byte SatIndexTimes2;
- byte t5[3];
-};
-
-struct LM192_DvbsTransponderSubblock
-{
- dword Crc32;
- word Unknown1;
- word Unknown2;
- word Unknown3;
- word Unknown4;
- word TransponderCount;
- byte AllocationBitmap[MAX_TP_COUNT/8];
- struct LM192_DvbsTransponderTable1
- {
- word Prev;
- word Next;
- word Current;
- } TransponderTable1[MAX_TP_COUNT];
- word Unknown5;
- LM192_Transponder Transponder[MAX_TP_COUNT];
-};
-
-struct LM192_SatChannel
-{
- word LnbIndex;
- word t1;
- TLL_SignalSource SignalSource;
- byte t2;
- word TP_Number;
- word ChannelNumber;
- word LogicalChannelNumber;
- word TP_Number2;
- byte FavCrypt;
- byte LockSkipHide;
- word SID;
- byte ServiceType;
- byte CH_NameLength;
- char CH_Name[40];
- word VID;
- word AID;
- word AID_Times8;
- byte t6[6];
-};
-
-struct LM192_DvbsChannelSubblock
-{
- dword Crc32;
- word Unknown[2];
- word LinkedListStartIndex;
- word LinkedListEndIndex1;
- word LinkedListEndIndex2;
- word ChannelCount;
- byte AllocationBitmap[MAX_DVBS_COUNT/8];
- struct LM192_LinkedChannelList
- {
- word Prev;
- word Next;
- word Current;
- word Zero;
- } LinkedList[MAX_DVBS_COUNT];
- LM192_SatChannel Channels[MAX_DVBS_COUNT];
-};
-
-struct LM192_Lnb
-{
- byte SettingsID;
- byte t2[3];
- byte SatelliteID;
- byte t3[3];
- char FrequenceName[12];
- word LOF1;
- byte t4[2];
- word LOF2;
- byte t5[18];
-};
-
-struct LM192_DvbsLnbSubblock
-{
- dword Crc32;
- word Unknown1;
- byte AllocationBitmap[5];
- byte Unknown2;
- LM192_Lnb Lnb[MAX_LNB_COUNT];
-};
-
-struct LM192_DvbSBlock
-{
- dword BlockSize;
- LM192_DvbsHeaderSubblock HeaderBlock;
- LM192_DvbsSatelliteSubblock SatelliteBlock;
- LM192_DvbsTransponderSubblock TransponderBlock;
- LM192_DvbsChannelSubblock ChannelBlock;
- LM192_DvbsLnbSubblock LnbBlock;
-};
struct LM192_SettingsBlock
{
@@ -272,6 +150,6 @@ public struct LM192
LM192_AnalogBlock Analog;
LM192_FirmwareBlock Firmware;
LM192_DvbCTBlock DvbCT;
- LM192_DvbSBlock DvbS;
- LM192_SettingsBlock Settings;
+ TLL_DvbSBlock DvbS;
+ TLL_SettingsBlock Settings;
};
diff --git a/Information/FileStructures_for_HHD_Hex_Editor_Neo/tll-256-LA.h b/Information/FileStructures_for_HHD_Hex_Editor_Neo/tll-256-LA.h
index 03843d7..616e131 100644
--- a/Information/FileStructures_for_HHD_Hex_Editor_Neo/tll-256-LA.h
+++ b/Information/FileStructures_for_HHD_Hex_Editor_Neo/tll-256-LA.h
@@ -1,9 +1,22 @@
#include "tll-common.h"
#define MAX_SAT_COUNT 64
-#define MAX_LNB_COUNT 40
-#define MAX_DVBS_COUNT 7520
+struct TLL48_Satellite;
+typedef TLL48_Satellite TLL_Satellite;
+
#define MAX_TP_COUNT 2400
+struct TLL56_Transponder;
+typedef TLL56_Transponder TLL_Transponder;
+
+#define MAX_DVBS_COUNT 7520
+struct TLL92_SatChannel;
+typedef TLL92_SatChannel TLL_SatChannel;
+
+#define MAX_LNB_COUNT 40
+struct TLL52_Lnb;
+typedef TLL52_Lnb TLL_Lnb;
+
+#include "tll-satellite.h"
struct LA256_AnalogChannel
{
@@ -147,41 +160,22 @@ struct LA256_DvbCTBlock
LA256_DvbCtChannel Channels[ChannelCount];
};
-struct LA256_DvbsHeaderSubblock
-{
- dword Crc32;
- byte DVBS_S2_Tag[8];
- word Temp03[2];
-};
-
-struct LA256_Satellite
+struct TLL48_Satellite
{
char Name[32];
byte PosDeg;
byte PosCDeg;
byte LnbIndex;
byte FactoryDefault;
- word TransponderStartIndex;
- word TransponderEndIndex;
+ word TransponderHead;
+ word TransponderTail;
word TransponderCount;
word Unknown4;
word Unknown5;
word Unknown6;
};
-struct LA256_DvbsSatelliteSubblock
-{
- dword Crc32;
- word MagicNo;
- byte SatAllocationBitmap[MAX_SAT_COUNT/8];
- word Reserved;
- word SatCount;
- byte SatOrder[MAX_SAT_COUNT];
- word Unknown3;
- LA256_Satellite Satellites[MAX_SAT_COUNT];
-};
-
-struct LA256_Transponder
+struct TLL56_Transponder
{
byte t1[10];
word TP_Number;
@@ -197,26 +191,7 @@ struct LA256_Transponder
byte u40[12];
};
-struct LA256_DvbsTransponderSubblock
-{
- dword Crc32;
- word Unknown1;
- word Unknown2;
- word Unknown3;
- word Unknown4;
- word TransponderCount;
- byte AllocationBitmap[MAX_TP_COUNT/8];
- struct LA256_DvbsTransponderTable1
- {
- word Prev;
- word Next;
- word Current;
- } TransponderTable1[MAX_TP_COUNT];
- word Unknown5;
- LA256_Transponder Transponder[MAX_TP_COUNT];
-};
-
-struct LA256_SatChannel
+struct TLL92_SatChannel
{
word LnbIndex;
word t1;
@@ -239,26 +214,7 @@ struct LA256_SatChannel
byte t5[12];
};
-struct LA256_DvbsChannelSubblock
-{
- dword Crc32;
- word Unknown[2];
- word LinkedListStartIndex;
- word LinkedListEndIndex1;
- word LinkedListEndIndex2;
- word ChannelCount;
- byte AllocationBitmap[MAX_DVBS_COUNT/8];
- struct LA256_LinkedChannelList
- {
- word Prev;
- word Next;
- word Current;
- word Zero;
- } LinkedList[MAX_DVBS_COUNT];
- LA256_SatChannel Channels[MAX_DVBS_COUNT];
-};
-
-struct LA256_Lnb
+struct TLL52_Lnb
{
byte SettingsID;
byte t2[3];
@@ -274,30 +230,6 @@ struct LA256_Lnb
byte t5[22];
};
-struct LA256_DvbsLnbSubblock
-{
- dword Crc32;
- word Unknown1;
- byte AllocationBitmap[5];
- byte Unknown2;
- LA256_Lnb Lnb[MAX_LNB_COUNT];
-};
-
-struct LA256_DvbSBlock
-{
- dword BlockSize;
- LA256_DvbsHeaderSubblock HeaderBlock;
- LA256_DvbsSatelliteSubblock SatelliteBlock;
- LA256_DvbsTransponderSubblock TransponderBlock;
- LA256_DvbsChannelSubblock ChannelBlock;
- LA256_DvbsLnbSubblock LnbBlock;
-};
-
-struct LA256_SettingsBlock
-{
- dword BlockSize;
- byte Data[BlockSize];
-};
public struct LA256
{
@@ -306,6 +238,6 @@ public struct LA256
LA256_AnalogBlock Analog;
LA256_FirmwareBlock Firmware;
LA256_DvbCTBlock DvbCT;
- LA256_DvbSBlock DvbS;
- LA256_SettingsBlock Settings;
+ TLL_DvbSBlock DvbS;
+ TLL_SettingsBlock Settings;
};
diff --git a/Information/FileStructures_for_HHD_Hex_Editor_Neo/tll-common.h b/Information/FileStructures_for_HHD_Hex_Editor_Neo/tll-common.h
index ee6209e..fb56652 100644
--- a/Information/FileStructures_for_HHD_Hex_Editor_Neo/tll-common.h
+++ b/Information/FileStructures_for_HHD_Hex_Editor_Neo/tll-common.h
@@ -43,3 +43,9 @@ enum LH_SignalSource : byte
Antenna = 2,
Cable = 3
};
+
+struct TLL_SettingsBlock
+{
+ dword BlockSize;
+ byte Data[BlockSize];
+};
diff --git a/Information/FileStructures_for_HHD_Hex_Editor_Neo/tll-satellite.h b/Information/FileStructures_for_HHD_Hex_Editor_Neo/tll-satellite.h
new file mode 100644
index 0000000..d89dd7a
--- /dev/null
+++ b/Information/FileStructures_for_HHD_Hex_Editor_Neo/tll-satellite.h
@@ -0,0 +1,161 @@
+struct TLL_DvbsHeaderSubblock
+{
+ dword Crc32;
+ byte DVBS_S2_Tag[8];
+ word Temp03[2];
+};
+
+struct TLL44_Satellite
+{
+ char Name[32];
+ byte PosDeg;
+ byte PosCDeg;
+ byte Unknown1[2];
+ word TransponderHead;
+ word TransponderTail;
+ word TransponderCount;
+ word InUse;
+};
+
+struct TLL40_Transponder
+{
+ word FirstChannelIndex;
+ word LastChannelIndex;
+ word ChannelCount;
+ word t1a;
+ word t1b;
+ word TP_Number;
+ word TP_Freq;
+ byte t2[4];
+ word NID;
+ word TID;
+ word t3;
+ struct TP_Flags1
+ {
+ byte Unknown : 6;
+ byte IsHorizontal : 1;
+ } Flags1;
+ word SRate;
+ struct TP_Flags2
+ {
+ enum E_FEC : byte
+ {
+ FEC2_3 = 2,
+ FEC3_4 = 3,
+ FEC5_6 = 4,
+ FEC7_8 = 5,
+ FEC9_10 = 9
+ } FEC : 4;
+ byte S2 : 1;
+ } Flags2;
+
+ byte t4[8];
+ byte SatIndexTimes2;
+ byte t5[3];
+};
+
+struct TLL_DvbsSatelliteSubblock
+{
+ dword Crc32;
+ word Unknown1;
+ byte SatAllocationBitmap[MAX_SAT_COUNT/8];
+ word Unknown2;
+ word SatCount;
+ byte SatOrder[MAX_SAT_COUNT];
+ word Unknown3;
+ TLL_Satellite Satellites[MAX_SAT_COUNT];
+};
+
+
+struct TLL_DvbsTransponderSubblock
+{
+ dword Crc32;
+ word Unknown1;
+ word LinkedListHead;
+ word LinkedListTail1;
+ word LinkedListTail2;
+ word TransponderCount;
+ byte AllocationBitmap[MAX_TP_COUNT/8];
+ struct TLL_DvbsTransponderLinkedListEntry
+ {
+ word Prev;
+ word Next;
+ word Current;
+ } LinkedList[MAX_TP_COUNT];
+ word Unknown5;
+ TLL_Transponder Transponder[MAX_TP_COUNT];
+};
+
+
+struct TLL72_SatChannel
+{
+ word LnbIndex;
+ word t1;
+ TLL_SignalSource SignalSource;
+ byte t2;
+ word TP_Number;
+ word ChannelNumber;
+ word LogicalChannelNumber;
+ word TP_Number2;
+ byte FavCrypt;
+ byte LockSkipHide;
+ word SID;
+ byte ServiceType;
+ byte CH_NameLength;
+ char CH_Name[40];
+ word VID;
+ word AID;
+ word AID_Times8;
+ byte t6[6];
+};
+
+struct TLL_DvbsChannelSubblock
+{
+ dword Crc32;
+ word Unknown[2];
+ word LinkedListHead;
+ word LinkedListTail1;
+ word LinkedListTail2;
+ word ChannelCount;
+ byte AllocationBitmap[MAX_DVBS_COUNT/8];
+ struct TLL_LinkedChannelListEntry
+ {
+ word Prev;
+ word Next;
+ word Current;
+ word Zero;
+ } LinkedList[MAX_DVBS_COUNT];
+ TLL_SatChannel Channels[MAX_DVBS_COUNT];
+};
+
+struct TLL44_Lnb
+{
+ byte SettingsID;
+ byte t2[3];
+ byte SatelliteID;
+ byte t3[3];
+ char FrequenceName[12];
+ word LOF1;
+ byte t4[2];
+ word LOF2;
+ byte t5[18];
+};
+
+struct TLL_DvbsLnbSubblock
+{
+ dword Crc32;
+ word Unknown1;
+ byte AllocationBitmap[5];
+ byte Unknown2;
+ TLL_Lnb Lnb[MAX_LNB_COUNT];
+};
+
+struct TLL_DvbSBlock
+{
+ dword BlockSize;
+ TLL_DvbsHeaderSubblock HeaderBlock;
+ TLL_DvbsSatelliteSubblock SatelliteBlock;
+ TLL_DvbsTransponderSubblock TransponderBlock;
+ TLL_DvbsChannelSubblock ChannelBlock;
+ TLL_DvbsLnbSubblock LnbBlock;
+};
diff --git a/Test.Loader.LG/DvbsCleanup/xxLM860V-ZB99998.TLL.out b/Test.Loader.LG/DvbsCleanup/xxLM860V-ZB99998.TLL.out
index 7eb0e9c..3ef568c 100644
Binary files a/Test.Loader.LG/DvbsCleanup/xxLM860V-ZB99998.TLL.out and b/Test.Loader.LG/DvbsCleanup/xxLM860V-ZB99998.TLL.out differ
diff --git a/Test.Loader.LG/Test.Loader.LG.csproj b/Test.Loader.LG/Test.Loader.LG.csproj
index 4027df9..e6274d1 100644
--- a/Test.Loader.LG/Test.Loader.LG.csproj
+++ b/Test.Loader.LG/Test.Loader.LG.csproj
@@ -11,7 +11,7 @@
Properties
Test.Loader.LG
Test.Loader.LG
- v3.5
+ v4.0
512
{3AC096D0-A1C2-E12C-1390-A8335801FDAB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
@@ -55,7 +55,7 @@
false
-
+
False
..\DLL\nunit.framework.dll
diff --git a/Test.Loader.LG/TestBase.cs b/Test.Loader.LG/TestBase.cs
index 6c7c9a2..f838480 100644
--- a/Test.Loader.LG/TestBase.cs
+++ b/Test.Loader.LG/TestBase.cs
@@ -75,7 +75,7 @@ namespace Test.Loader.LG
#region AssertRefListContent()
private void AssertRefListContent(DataRoot dataRoot, string refListFile)
{
- CsvFileSerializer csv = new CsvFileSerializer(null, dataRoot);
+ CsvFileSerializer csv = new CsvFileSerializer(null, dataRoot, false);
MemoryStream mem = new MemoryStream();
var writer = new StreamWriter(mem);
csv.Save(writer);
@@ -175,7 +175,7 @@ namespace Test.Loader.LG
tll.IsTesting = true;
tll.Load();
tll.DataRoot.ApplyCurrentProgramNumbers();
- CsvFileSerializer csv = new CsvFileSerializer(testDataDir + "\\" + basename + ".csv.in", tll.DataRoot);
+ CsvFileSerializer csv = new CsvFileSerializer(testDataDir + "\\" + basename + ".csv.in", tll.DataRoot, false);
csv.Save();
// save modified list as .TLL.out
diff --git a/Test.Loader.LG/app.config b/Test.Loader.LG/app.config
index e59af44..e365603 100644
--- a/Test.Loader.LG/app.config
+++ b/Test.Loader.LG/app.config
@@ -1,3 +1,3 @@
-
+
diff --git a/Test.Loader/Test.Loader.csproj b/Test.Loader/Test.Loader.csproj
index 2ea4ed9..6577966 100644
--- a/Test.Loader/Test.Loader.csproj
+++ b/Test.Loader/Test.Loader.csproj
@@ -11,7 +11,7 @@
Properties
Test.Loader
Test.Loader
- v3.5
+ v4.0
512
{3AC096D0-A1C2-E12C-1390-A8335801FDAB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
@@ -55,7 +55,7 @@
false
-
+
3.5
diff --git a/makeDistribZip.cmd b/makeDistribZip.cmd
index 9b3525d..8728e77 100644
--- a/makeDistribZip.cmd
+++ b/makeDistribZip.cmd
@@ -2,7 +2,7 @@
c:\cygwin\bin\date "+%%Y-%%m-%%d">%TEMP%\date.txt
set /p curdate=<%temp%\date.txt
set target=%cd%\..\ChanSort_%curdate%
-set DXversion=12.2
+set DXversion=13.1
mkdir "%target%" 2>nul
del /s /q "%target%\*"
copy debug\ChanSort.exe* "%target%"
@@ -21,7 +21,6 @@ del Website\ChanSort.zip 2>nul
copy Source\readme.txt %target%
cd %target%\..
"c:\program files\7-Zip\7z.exe" a -tzip ChanSort_%curdate%.zip ChanSort_%curdate%
-rem c:\cygwin\bin\gzip --name -r -9 ChanSort_%curdate%.zip ChanSort%curdate%
pause
diff --git a/readme.txt b/readme.txt
index 3c1c03c..3506762 100644
--- a/readme.txt
+++ b/readme.txt
@@ -1,10 +1,16 @@
-Version v2013-07-03 ======================================================
+Version v2013-07-19 ======================================================
Changes:
-- Support for individually sorted favorite lists, if supported by TV
- (e.g. Samsung E and F series, Panasonic Viera)
-- FIX: "insert after" using drag and drop from right to left list
- inserted before instead of after the drop position
+- Supports Panasonic "svl.bin" channel lists for different TV CPUs
+ (auto-detecting big-endian or little-endian byte order).
+- *.csv reference list is no longer created automatically. (You can always
+ use your TV data file as a reference list anyway)
+- File / Save reference list... now opens a dialog which allows to save in
+ either ChanSort *.csv or SamToolBox *.chl format.
+ (The *.chl format only contains the currently selected list, so it can be
+ used to duplicate the order from e.g. the "Astra HD+" to the "Satellite"
+ list within the same *.scm file)
+- Upgraded to .NET Framework 4.0 and DevExpress 13.1 libraries
The complete change log can be found at the end of this document
@@ -104,6 +110,18 @@ OTHER DEALINGS IN THE SOFTWARE.
Change log ================================================================
+2013-07-19
+- Supports Panasonic "svl.bin" channel lists for different TV CPUs
+ (auto-detecting big-endian or little-endian byte order).
+- *.csv reference list is no longer created automatically. (You can always
+ use your TV data file as a reference list anyway)
+- File / Save reference list... now opens a dialog which allows to save in
+ either ChanSort *.csv or SamToolBox *.chl format.
+ (The *.chl format only contains the currently selected list, so it can be
+ used to duplicate the order from e.g. the "Astra HD+" to the "Satellite"
+ list within the same *.scm file)
+- Upgraded to .NET Framework 4.0 and DevExpress 13.1 libraries
+
2013-07-03
- Support for individually sorted favorite lists, if supported by TV
(e.g. Samsung E and F series, Panasonic Viera)