Added support for LG's 2013 LA-Series (Sat list only)

Improved LG duplicate channel cleanup (including linked list and allocation bitmap)
This commit is contained in:
hbeham
2013-04-28 12:44:40 +02:00
parent d6570d18f3
commit a2ae5583ff
15 changed files with 3079 additions and 2126 deletions

View File

@@ -18,6 +18,7 @@ namespace ChanSort.Api
public string FileName { get; set; }
public DataRoot DataRoot { get; protected set; }
public SupportedFeatures Features { get; private set; }
public bool EraseDuplicateChannels { get; set; }
protected SerializerBase(string inputFile)
{

View File

@@ -24,5 +24,19 @@ namespace ChanSort.Api
if (freq <= 1000) return ((freq - 471)/8 + 21).ToString("d2"); // Band IV, V
return "";
}
public static void SetInt16(byte[] data, int offset, int value)
{
data[offset+0] = (byte)value;
data[offset + 1] = (byte) (value >> 8);
}
public static void SetInt32(byte[] data, int offset, int value)
{
data[offset + 0] = (byte)value;
data[offset + 1] = (byte)(value >> 8);
data[offset + 2] = (byte)(value >> 16);
data[offset + 3] = (byte)(value >> 24);
}
}
}

View File

@@ -196,6 +196,35 @@
lnbCount = 40
lnbLength = 44
[DvbsBlock:907336]
; LA series
satCount = 64
satLength = 48
transponderCount = 2400
transponderLength = 56
dvbsChannelCount = 7520
dvbsChannelLength = 92
lnbCount = 40
lnbLength = 52
[TransponderDataMapping:40]
offTransponderIndex = 10
offFrequency = 12
offOriginalNetworkId = 18
offTransportStreamId = 20
offSymbolRate = 25
offSatIndex = 36
symbolRateFactor = 1
[TransponderDataMapping:56]
offTransponderIndex = 10
offFrequency = 12
offOriginalNetworkId = 22
offTransportStreamId = 24
offSymbolRate = 29
offSatIndex = 40
symbolRateFactor = 0.5
[SatChannelDataMapping:68]
lenName = 40
offSatelliteNr = 0
@@ -250,6 +279,34 @@
offVideoPid = 60
offAudioPid = 62
[SatChannelDataMapping:92]
; LA series
lenName = 40
offSatelliteNr = 0
offSourceType = 4
offTransponderIndex = 6, 12
offProgramNr = 8
offProgramNrPreset = 10
offFavorites2 = 14
offDeleted = 14
maskDeleted = 0x42
offEncrypted = 14
maskEncrypted = 0x80
offLock = 15
maskLock = 0x01
offSkip = 15
maskSkip = 0x02
offHide = 15
maskHide = 0x04
offProgNrCustomized = 15
maskProgNrCustomized = 0x40
offServiceId = 16
offServiceType = 18
offNameLength = 19
offName = 20
offVideoPid = 72
offAudioPid = 74
[FirmwareData:6944]
; LH series
offSize = 0
@@ -307,9 +364,6 @@
[FirmwareData:35504]
; LV,LW,LK950S
offSize = 0
offSystemLock =
offTvPassword =
offHbbTvEnabled =
offHotelModeEnabled=34643
offHotelModeDtvUpdate=34653
offHotelMenuAccessCode = 34668
@@ -338,3 +392,10 @@
offHotelMenuAccessCode = 35660
offHotelMenuPin = 35706
offSettingsChannelUpdate=36544
[FirmwareData:39592]
; LA7408
offSize = 0
offHotelModeEnabled=38255
offHotelModeDtvUpdate=38266
offHotelMenuAccessCode = 38282

View File

@@ -47,16 +47,18 @@
/// </summary>
public int ChannelListHeaderOffset
{
get { return 4 + this.dvbsSubblockLength[0] + this.dvbsSubblockLength[1] + this.dvbsSubblockLength[2]; }
get { return 4 + 4 + this.dvbsSubblockLength[0] + 4 + this.dvbsSubblockLength[1] + 4 + this.dvbsSubblockLength[2]; }
}
/// <summary>
/// relative to start of DVBS-Block (including the intial 4 length bytes)
/// </summary>
public int SequenceTableOffset
{
get { return ChannelListHeaderOffset + 12 + dvbsMaxChannelCount/8; }
}
public int AllocationBitmapOffset { get { return ChannelListHeaderOffset + 16; } }
/// <summary>
/// relative to start of DVBS-Block (including the intial 4 length bytes)
/// </summary>
public int SequenceTableOffset { get { return this.AllocationBitmapOffset + dvbsMaxChannelCount/8; } }
/// <summary>
/// relative to start of DVBS-Block (including the intial 4 length bytes)
@@ -65,5 +67,6 @@
{
get { return SequenceTableOffset + dvbsMaxChannelCount*sizeOfChannelLinkedListEntry; }
}
}
}

View File

@@ -1,4 +1,5 @@
using System;
using ChanSort.Api;
namespace ChanSort.Loader.LG
{
@@ -6,13 +7,34 @@ namespace ChanSort.Loader.LG
{
private readonly byte[] data;
private readonly int baseOffset;
public SatChannelListHeader(byte[] data, int offset) { this.data = data; this.baseOffset = offset; }
public uint Checksum { get { return BitConverter.ToUInt32(data, baseOffset + 0); } }
public int LinkedListStartIndex { get { return BitConverter.ToInt16(data, baseOffset + 8); }}
public int LinkedListEndIndex1 { get { return BitConverter.ToInt16(data, baseOffset + 10); } }
public int LinkedListEndIndex2 { get { return BitConverter.ToInt16(data, baseOffset + 12); } }
public int ChannelCount { get { return BitConverter.ToInt16(data, baseOffset + 14); } }
public SatChannelListHeader(byte[] data, int offset)
{
this.data = data; this.baseOffset = offset;
}
public uint Checksum { get { return BitConverter.ToUInt32(data, baseOffset + 0); } }
public int LinkedListStartIndex
{
get { return BitConverter.ToInt16(data, baseOffset + 8); }
set { Tools.SetInt16(data, baseOffset + 8, value); }
}
public int LinkedListEndIndex1
{
get { return BitConverter.ToInt16(data, baseOffset + 10); }
set { Tools.SetInt16(data, baseOffset + 10, value); }
}
public int LinkedListEndIndex2
{
get { return BitConverter.ToInt16(data, baseOffset + 12); }
set { Tools.SetInt16(data, baseOffset + 12, value); }
}
public int ChannelCount
{
get { return BitConverter.ToInt16(data, baseOffset + 14); }
set { Tools.SetInt16(data, baseOffset + 14, value); }
}
public int Size { get { return 16; } }
}

View File

@@ -1,31 +1,52 @@
using System;
using System.Globalization;
using ChanSort.Api;
namespace ChanSort.Loader.LG
{
internal class SatTransponder
{
private readonly byte[] data;
public int BaseOffset { get; set; }
private const string _Frequency = "offFrequency";
private const string _OriginalNetworkId = "offOriginalNetworkId";
private const string _TransportStreamId = "offTransportStreamId";
private const string _SymbolRate = "offSymbolRate";
private const string _SatIndex = "offSatIndex";
public SatTransponder(byte[] data)
private readonly DataMapping mapping;
private readonly byte[] data;
private readonly int offset;
private int symbolRate;
public SatTransponder(DataMapping mapping)
{
this.data = data;
this.mapping = mapping;
this.data = mapping.Data;
this.offset = mapping.BaseOffset;
this.Frequency = mapping.GetWord(_Frequency);
this.OriginalNetworkId = mapping.GetWord(_OriginalNetworkId);
this.TransportStreamId = mapping.GetWord(_TransportStreamId);
this.symbolRate = mapping.GetWord(_SymbolRate);
string strFactor = mapping.Settings.GetString("symbolRateFactor");
decimal factor;
if (!string.IsNullOrEmpty(strFactor) && decimal.TryParse(strFactor, NumberStyles.AllowDecimalPoint, NumberFormatInfo.InvariantInfo, out factor))
this.symbolRate = (int)(this.symbolRate * factor);
this.SatIndex = mapping.GetByte(_SatIndex);
}
public int Frequency { get { return BitConverter.ToInt16(data, BaseOffset + 12); } }
public int OriginalNetworkId { get { return BitConverter.ToInt16(data, BaseOffset + 18); } }
public int TransportStreamId { get { return BitConverter.ToInt16(data, BaseOffset + 20); } }
public int Frequency { get; private set; }
public int OriginalNetworkId { get; private set; }
public int TransportStreamId { get; private set; }
public int SatIndex { get; private set; }
public int SymbolRate
{
get { return BitConverter.ToInt16(data, BaseOffset + 25); }
get { return symbolRate; }
set
{
data[BaseOffset + 25] = (byte)value;
data[BaseOffset + 26] = (byte)(value >> 8);
mapping.SetDataPtr(this.data, this.offset);
mapping.SetWord(_SymbolRate, value);
this.symbolRate = value;
}
}
public int SatIndex { get { return data[BaseOffset + 36]; } }
}
}

View File

@@ -24,7 +24,8 @@ namespace ChanSort.Loader.LG
private readonly Dictionary<int, DvbsDataLayout> satConfigs = new Dictionary<int, DvbsDataLayout>();
private readonly MappingPool<DataMapping> actMappings = new MappingPool<DataMapping>("Analog and DVB-C/T");
private readonly MappingPool<DataMapping> dvbsMappings = new MappingPool<DataMapping>("DVB-S");
private readonly MappingPool<DataMapping> dvbsMappings = new MappingPool<DataMapping>("DVB-S Channel");
private readonly MappingPool<DataMapping> dvbsTransponderMappings = new MappingPool<DataMapping>("DVB-S Transponder");
private readonly MappingPool<FirmwareData> firmwareMappings = new MappingPool<FirmwareData>("Firmware");
private readonly ChannelList atvChannels = new ChannelList(SignalSource.AnalogCT | SignalSource.Tv, "Analog TV");
@@ -106,6 +107,8 @@ namespace ChanSort.Loader.LG
actMappings.AddMapping(recordLength, new DataMapping(section));
else if (section.Name.StartsWith("SatChannelDataMapping"))
dvbsMappings.AddMapping(recordLength, new DataMapping(section));
else if (section.Name.StartsWith("TransponderDataMapping"))
dvbsTransponderMappings.AddMapping(recordLength, new DataMapping(section));
else if (section.Name.StartsWith("FirmwareData"))
firmwareMappings.AddMapping(recordLength, new FirmwareData(section));
}
@@ -372,10 +375,11 @@ namespace ChanSort.Loader.LG
#region ReadTransponderData()
private void ReadTransponderData(ref int off)
{
var data = new SatTransponder(fileContent);
data.BaseOffset = off;
var mapping = this.dvbsTransponderMappings.GetMapping(this.satConfig.transponderLength);
for (int i=0; i<satConfig.transponderCount; i++)
{
mapping.SetDataPtr(this.fileContent, off + i*satConfig.transponderLength);
var data = new SatTransponder(mapping);
if (data.SatIndex == 0xFF)
continue;
#if SYMBOL_RATE_ROUNDING
@@ -394,8 +398,6 @@ namespace ChanSort.Loader.LG
var sat = this.DataRoot.Satellites.TryGet(data.SatIndex/2);
this.DataRoot.AddTransponder(sat, transponder);
data.BaseOffset += satConfig.transponderLength;
}
if (this.isDvbsSymbolRateDiv2)
@@ -454,7 +456,8 @@ namespace ChanSort.Loader.LG
// program list, so we erase all dupes here
this.DataRoot.Warnings.AppendFormat(ERR_dupeChannel, ci.RecordIndex, ci.OldProgramNr, dupes[0].RecordIndex,
dupes[0].OldProgramNr, dupes[0].Name).AppendLine();
this.EraseDuplicateDvbsChannel(recordOffset, satConfig);
if (this.EraseDuplicateChannels)
this.EraseDuplicateDvbsChannel(index, recordOffset, satConfig);
++this.duplicateChannels;
}
}
@@ -467,10 +470,35 @@ namespace ChanSort.Loader.LG
#endregion
#region EraseDuplicateDvbsChannel()
private void EraseDuplicateDvbsChannel(int off, DvbsDataLayout c)
private void EraseDuplicateDvbsChannel(int index, int off, DvbsDataLayout c)
{
// erase channel data
for (int i = 0; i < c.dvbsChannelLength; i++)
fileContent[off++] = 0xFF;
// remove channel record from linked list
int listBaseOff = this.dvbsBlockOffset + c.SequenceTableOffset;
int listEntryOff = listBaseOff + index*c.sizeOfChannelLinkedListEntry;
int prevRecordIndex = BitConverter.ToInt16(fileContent, listEntryOff + 0);
int nextRecordIndex = BitConverter.ToInt16(fileContent, listEntryOff + 2);
Tools.SetInt16(fileContent, listEntryOff + 0, 0);
Tools.SetInt16(fileContent, listEntryOff + 2, 0);
Tools.SetInt16(fileContent, listEntryOff + 4, 0);
Tools.SetInt16(fileContent, listBaseOff + prevRecordIndex * c.sizeOfChannelLinkedListEntry + 2, nextRecordIndex);
Tools.SetInt16(fileContent, listBaseOff + nextRecordIndex*c.sizeOfChannelLinkedListEntry + 0, prevRecordIndex);
var header = new SatChannelListHeader(this.fileContent, this.dvbsBlockOffset + c.ChannelListHeaderOffset);
if (header.LinkedListStartIndex == index)
header.LinkedListStartIndex = nextRecordIndex;
if (header.LinkedListEndIndex1 == index)
header.LinkedListEndIndex1 = prevRecordIndex;
if (header.LinkedListEndIndex2 == index)
header.LinkedListEndIndex2 = prevRecordIndex;
--header.ChannelCount;
// remove channel from allocation bitmap
int allocBitmapOffset = dvbsBlockOffset + c.AllocationBitmapOffset + (index/8);
int mask = 1 << (index & 7);
this.fileContent[allocBitmapOffset] &= (byte)~mask;
}
#endregion
@@ -579,7 +607,7 @@ namespace ChanSort.Loader.LG
newDvbctChannelCount = this.dvbctChannelCount;
}
if (this.reorderPhysically || this.removeDeletedActChannels)
if (this.reorderPhysically || removeDeletedActChannels)
this.ReorderActChannelsPhysically();
if (satConfig != null)
@@ -658,7 +686,7 @@ namespace ChanSort.Loader.LG
int slot = 0;
foreach (ChannelInfo appChannel in sortedList)
{
if (appChannel.NewProgramNr <= 0 && this.removeDeletedActChannels)
if (appChannel.NewProgramNr <= 0 && removeDeletedActChannels)
continue;
if (appChannel.RecordIndex != slot)
{

View File

@@ -132,6 +132,8 @@
this.mnuCharset = new DevExpress.XtraBars.BarSubItem();
this.miCharsetForm = new DevExpress.XtraBars.BarButtonItem();
this.miIsoCharSets = new DevExpress.XtraBars.BarListItem();
this.miEraseDuplicateChannels = new DevExpress.XtraBars.BarCheckItem();
this.miShowWarningsAfterLoad = new DevExpress.XtraBars.BarCheckItem();
this.mnuHelp = new DevExpress.XtraBars.BarSubItem();
this.miWiki = new DevExpress.XtraBars.BarButtonItem();
this.miOpenWebsite = new DevExpress.XtraBars.BarButtonItem();
@@ -194,25 +196,36 @@
//
resources.ApplyResources(this.splitContainerControl1, "splitContainerControl1");
this.splitContainerControl1.Name = "splitContainerControl1";
this.splitContainerControl1.Panel1.Controls.Add(this.grpOutputList);
resources.ApplyResources(this.splitContainerControl1.Panel1, "splitContainerControl1.Panel1");
this.splitContainerControl1.Panel2.Controls.Add(this.grpInputList);
this.splitContainerControl1.Panel1.Controls.Add(this.grpOutputList);
resources.ApplyResources(this.splitContainerControl1.Panel2, "splitContainerControl1.Panel2");
this.splitContainerControl1.Panel2.Controls.Add(this.grpInputList);
this.splitContainerControl1.SplitterPosition = 386;
//
// grpOutputList
//
resources.ApplyResources(this.grpOutputList, "grpOutputList");
this.grpOutputList.Controls.Add(this.gridLeft);
this.grpOutputList.Controls.Add(this.lblHotkeyLeft);
this.grpOutputList.Controls.Add(this.pnlEditControls);
resources.ApplyResources(this.grpOutputList, "grpOutputList");
this.grpOutputList.Name = "grpOutputList";
this.grpOutputList.Enter += new System.EventHandler(this.grpOutputList_Enter);
//
// gridLeft
//
this.gridLeft.DataSource = this.dsChannels;
resources.ApplyResources(this.gridLeft, "gridLeft");
this.gridLeft.DataSource = this.dsChannels;
this.gridLeft.EmbeddedNavigator.AccessibleDescription = resources.GetString("gridLeft.EmbeddedNavigator.AccessibleDescription");
this.gridLeft.EmbeddedNavigator.AccessibleName = resources.GetString("gridLeft.EmbeddedNavigator.AccessibleName");
this.gridLeft.EmbeddedNavigator.AllowHtmlTextInToolTip = ((DevExpress.Utils.DefaultBoolean)(resources.GetObject("gridLeft.EmbeddedNavigator.AllowHtmlTextInToolTip")));
this.gridLeft.EmbeddedNavigator.Anchor = ((System.Windows.Forms.AnchorStyles)(resources.GetObject("gridLeft.EmbeddedNavigator.Anchor")));
this.gridLeft.EmbeddedNavigator.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("gridLeft.EmbeddedNavigator.BackgroundImage")));
this.gridLeft.EmbeddedNavigator.BackgroundImageLayout = ((System.Windows.Forms.ImageLayout)(resources.GetObject("gridLeft.EmbeddedNavigator.BackgroundImageLayout")));
this.gridLeft.EmbeddedNavigator.ImeMode = ((System.Windows.Forms.ImeMode)(resources.GetObject("gridLeft.EmbeddedNavigator.ImeMode")));
this.gridLeft.EmbeddedNavigator.TextLocation = ((DevExpress.XtraEditors.NavigatorButtonsTextLocation)(resources.GetObject("gridLeft.EmbeddedNavigator.TextLocation")));
this.gridLeft.EmbeddedNavigator.ToolTip = resources.GetString("gridLeft.EmbeddedNavigator.ToolTip");
this.gridLeft.EmbeddedNavigator.ToolTipIconType = ((DevExpress.Utils.ToolTipIconType)(resources.GetObject("gridLeft.EmbeddedNavigator.ToolTipIconType")));
this.gridLeft.EmbeddedNavigator.ToolTipTitle = resources.GetString("gridLeft.EmbeddedNavigator.ToolTipTitle");
this.gridLeft.MainView = this.gviewLeft;
this.gridLeft.Name = "gridLeft";
this.gridLeft.RepositoryItems.AddRange(new DevExpress.XtraEditors.Repository.RepositoryItem[] {
@@ -227,8 +240,11 @@
//
// gviewLeft
//
this.gviewLeft.Appearance.HeaderPanel.GradientMode = ((System.Drawing.Drawing2D.LinearGradientMode)(resources.GetObject("gviewLeft.Appearance.HeaderPanel.GradientMode")));
this.gviewLeft.Appearance.HeaderPanel.Image = ((System.Drawing.Image)(resources.GetObject("gviewLeft.Appearance.HeaderPanel.Image")));
this.gviewLeft.Appearance.HeaderPanel.Options.UseTextOptions = true;
this.gviewLeft.Appearance.HeaderPanel.TextOptions.WordWrap = DevExpress.Utils.WordWrap.Wrap;
resources.ApplyResources(this.gviewLeft, "gviewLeft");
this.gviewLeft.ColumnPanelRowHeight = 35;
this.gviewLeft.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] {
this.colIndex1,
@@ -306,8 +322,15 @@
new DevExpress.XtraEditors.Controls.EditorButton(((DevExpress.XtraEditors.Controls.ButtonPredefines)(resources.GetObject("repositoryItemCheckedComboBoxEdit1.Buttons"))))});
this.repositoryItemCheckedComboBoxEdit1.CloseUpKey = new DevExpress.Utils.KeyShortcut(System.Windows.Forms.Keys.F2);
this.repositoryItemCheckedComboBoxEdit1.ForceUpdateEditValue = DevExpress.Utils.DefaultBoolean.True;
this.repositoryItemCheckedComboBoxEdit1.Mask.AutoComplete = ((DevExpress.XtraEditors.Mask.AutoCompleteType)(resources.GetObject("repositoryItemCheckedComboBoxEdit1.Mask.AutoComplete")));
this.repositoryItemCheckedComboBoxEdit1.Mask.BeepOnError = ((bool)(resources.GetObject("repositoryItemCheckedComboBoxEdit1.Mask.BeepOnError")));
this.repositoryItemCheckedComboBoxEdit1.Mask.EditMask = resources.GetString("repositoryItemCheckedComboBoxEdit1.Mask.EditMask");
this.repositoryItemCheckedComboBoxEdit1.Mask.IgnoreMaskBlank = ((bool)(resources.GetObject("repositoryItemCheckedComboBoxEdit1.Mask.IgnoreMaskBlank")));
this.repositoryItemCheckedComboBoxEdit1.Mask.MaskType = ((DevExpress.XtraEditors.Mask.MaskType)(resources.GetObject("repositoryItemCheckedComboBoxEdit1.Mask.MaskType")));
this.repositoryItemCheckedComboBoxEdit1.Mask.PlaceHolder = ((char)(resources.GetObject("repositoryItemCheckedComboBoxEdit1.Mask.PlaceHolder")));
this.repositoryItemCheckedComboBoxEdit1.Mask.SaveLiteral = ((bool)(resources.GetObject("repositoryItemCheckedComboBoxEdit1.Mask.SaveLiteral")));
this.repositoryItemCheckedComboBoxEdit1.Mask.ShowPlaceHolders = ((bool)(resources.GetObject("repositoryItemCheckedComboBoxEdit1.Mask.ShowPlaceHolders")));
this.repositoryItemCheckedComboBoxEdit1.Mask.UseMaskAsDisplayFormat = ((bool)(resources.GetObject("repositoryItemCheckedComboBoxEdit1.Mask.UseMaskAsDisplayFormat")));
this.repositoryItemCheckedComboBoxEdit1.Name = "repositoryItemCheckedComboBoxEdit1";
this.repositoryItemCheckedComboBoxEdit1.PopupSizeable = false;
this.repositoryItemCheckedComboBoxEdit1.SelectAllItemVisible = false;
@@ -335,6 +358,7 @@
//
// pnlEditControls
//
resources.ApplyResources(this.pnlEditControls, "pnlEditControls");
this.pnlEditControls.Controls.Add(this.btnToggleLock);
this.pnlEditControls.Controls.Add(this.btnToggleFavE);
this.pnlEditControls.Controls.Add(this.btnToggleFavD);
@@ -346,108 +370,120 @@
this.pnlEditControls.Controls.Add(this.btnDown);
this.pnlEditControls.Controls.Add(this.btnUp);
this.pnlEditControls.Controls.Add(this.btnRemoveLeft);
resources.ApplyResources(this.pnlEditControls, "pnlEditControls");
this.pnlEditControls.Name = "pnlEditControls";
//
// btnToggleLock
//
resources.ApplyResources(this.btnToggleLock, "btnToggleLock");
this.btnToggleLock.ImageIndex = 15;
this.btnToggleLock.ImageList = this.globalImageCollection1;
resources.ApplyResources(this.btnToggleLock, "btnToggleLock");
this.btnToggleLock.Name = "btnToggleLock";
this.btnToggleLock.Click += new System.EventHandler(this.btnToggleLock_Click);
//
// btnToggleFavE
//
this.btnToggleFavE.ImageList = this.globalImageCollection1;
resources.ApplyResources(this.btnToggleFavE, "btnToggleFavE");
this.btnToggleFavE.ImageList = this.globalImageCollection1;
this.btnToggleFavE.Name = "btnToggleFavE";
this.btnToggleFavE.Tag = "";
this.btnToggleFavE.Click += new System.EventHandler(this.btnToggleFav_Click);
//
// btnToggleFavD
//
this.btnToggleFavD.ImageList = this.globalImageCollection1;
resources.ApplyResources(this.btnToggleFavD, "btnToggleFavD");
this.btnToggleFavD.ImageList = this.globalImageCollection1;
this.btnToggleFavD.Name = "btnToggleFavD";
this.btnToggleFavD.Click += new System.EventHandler(this.btnToggleFav_Click);
//
// btnToggleFavC
//
this.btnToggleFavC.ImageList = this.globalImageCollection1;
resources.ApplyResources(this.btnToggleFavC, "btnToggleFavC");
this.btnToggleFavC.ImageList = this.globalImageCollection1;
this.btnToggleFavC.Name = "btnToggleFavC";
this.btnToggleFavC.Click += new System.EventHandler(this.btnToggleFav_Click);
//
// btnToggleFavB
//
this.btnToggleFavB.ImageList = this.globalImageCollection1;
resources.ApplyResources(this.btnToggleFavB, "btnToggleFavB");
this.btnToggleFavB.ImageList = this.globalImageCollection1;
this.btnToggleFavB.Name = "btnToggleFavB";
this.btnToggleFavB.Click += new System.EventHandler(this.btnToggleFav_Click);
//
// btnToggleFavA
//
this.btnToggleFavA.ImageList = this.globalImageCollection1;
resources.ApplyResources(this.btnToggleFavA, "btnToggleFavA");
this.btnToggleFavA.ImageList = this.globalImageCollection1;
this.btnToggleFavA.Name = "btnToggleFavA";
this.btnToggleFavA.Click += new System.EventHandler(this.btnToggleFav_Click);
//
// btnClearLeftFilter
//
resources.ApplyResources(this.btnClearLeftFilter, "btnClearLeftFilter");
this.btnClearLeftFilter.Appearance.Font = ((System.Drawing.Font)(resources.GetObject("btnClearLeftFilter.Appearance.Font")));
this.btnClearLeftFilter.Appearance.GradientMode = ((System.Drawing.Drawing2D.LinearGradientMode)(resources.GetObject("btnClearLeftFilter.Appearance.GradientMode")));
this.btnClearLeftFilter.Appearance.Image = ((System.Drawing.Image)(resources.GetObject("btnClearLeftFilter.Appearance.Image")));
this.btnClearLeftFilter.Appearance.Options.UseFont = true;
this.btnClearLeftFilter.ImageIndex = 28;
this.btnClearLeftFilter.ImageList = this.globalImageCollection1;
resources.ApplyResources(this.btnClearLeftFilter, "btnClearLeftFilter");
this.btnClearLeftFilter.Name = "btnClearLeftFilter";
this.btnClearLeftFilter.Click += new System.EventHandler(this.btnClearLeftFilter_Click);
//
// btnRenum
//
resources.ApplyResources(this.btnRenum, "btnRenum");
this.btnRenum.ImageIndex = 22;
this.btnRenum.ImageList = this.globalImageCollection1;
resources.ApplyResources(this.btnRenum, "btnRenum");
this.btnRenum.Name = "btnRenum";
this.btnRenum.Click += new System.EventHandler(this.btnRenum_Click);
//
// btnDown
//
resources.ApplyResources(this.btnDown, "btnDown");
this.btnDown.ImageIndex = 25;
this.btnDown.ImageList = this.globalImageCollection1;
resources.ApplyResources(this.btnDown, "btnDown");
this.btnDown.Name = "btnDown";
this.btnDown.Click += new System.EventHandler(this.btnDown_Click);
//
// btnUp
//
resources.ApplyResources(this.btnUp, "btnUp");
this.btnUp.ImageIndex = 24;
this.btnUp.ImageList = this.globalImageCollection1;
resources.ApplyResources(this.btnUp, "btnUp");
this.btnUp.Name = "btnUp";
this.btnUp.Click += new System.EventHandler(this.btnUp_Click);
//
// btnRemoveLeft
//
resources.ApplyResources(this.btnRemoveLeft, "btnRemoveLeft");
this.btnRemoveLeft.ImageIndex = 11;
this.btnRemoveLeft.ImageList = this.globalImageCollection1;
resources.ApplyResources(this.btnRemoveLeft, "btnRemoveLeft");
this.btnRemoveLeft.Name = "btnRemoveLeft";
this.btnRemoveLeft.Click += new System.EventHandler(this.btnRemoveLeft_Click);
//
// grpInputList
//
resources.ApplyResources(this.grpInputList, "grpInputList");
this.grpInputList.Controls.Add(this.gridRight);
this.grpInputList.Controls.Add(this.lblHotkeyRight);
this.grpInputList.Controls.Add(this.panelControl3);
resources.ApplyResources(this.grpInputList, "grpInputList");
this.grpInputList.Name = "grpInputList";
this.grpInputList.Enter += new System.EventHandler(this.grpInputList_Enter);
//
// gridRight
//
this.gridRight.DataSource = this.dsChannels;
resources.ApplyResources(this.gridRight, "gridRight");
this.gridRight.DataSource = this.dsChannels;
this.gridRight.EmbeddedNavigator.AccessibleDescription = resources.GetString("gridRight.EmbeddedNavigator.AccessibleDescription");
this.gridRight.EmbeddedNavigator.AccessibleName = resources.GetString("gridRight.EmbeddedNavigator.AccessibleName");
this.gridRight.EmbeddedNavigator.AllowHtmlTextInToolTip = ((DevExpress.Utils.DefaultBoolean)(resources.GetObject("gridRight.EmbeddedNavigator.AllowHtmlTextInToolTip")));
this.gridRight.EmbeddedNavigator.Anchor = ((System.Windows.Forms.AnchorStyles)(resources.GetObject("gridRight.EmbeddedNavigator.Anchor")));
this.gridRight.EmbeddedNavigator.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("gridRight.EmbeddedNavigator.BackgroundImage")));
this.gridRight.EmbeddedNavigator.BackgroundImageLayout = ((System.Windows.Forms.ImageLayout)(resources.GetObject("gridRight.EmbeddedNavigator.BackgroundImageLayout")));
this.gridRight.EmbeddedNavigator.ImeMode = ((System.Windows.Forms.ImeMode)(resources.GetObject("gridRight.EmbeddedNavigator.ImeMode")));
this.gridRight.EmbeddedNavigator.TextLocation = ((DevExpress.XtraEditors.NavigatorButtonsTextLocation)(resources.GetObject("gridRight.EmbeddedNavigator.TextLocation")));
this.gridRight.EmbeddedNavigator.ToolTip = resources.GetString("gridRight.EmbeddedNavigator.ToolTip");
this.gridRight.EmbeddedNavigator.ToolTipIconType = ((DevExpress.Utils.ToolTipIconType)(resources.GetObject("gridRight.EmbeddedNavigator.ToolTipIconType")));
this.gridRight.EmbeddedNavigator.ToolTipTitle = resources.GetString("gridRight.EmbeddedNavigator.ToolTipTitle");
this.gridRight.MainView = this.gviewRight;
this.gridRight.Name = "gridRight";
this.gridRight.RepositoryItems.AddRange(new DevExpress.XtraEditors.Repository.RepositoryItem[] {
@@ -458,8 +494,11 @@
//
// gviewRight
//
this.gviewRight.Appearance.HeaderPanel.GradientMode = ((System.Drawing.Drawing2D.LinearGradientMode)(resources.GetObject("gviewRight.Appearance.HeaderPanel.GradientMode")));
this.gviewRight.Appearance.HeaderPanel.Image = ((System.Drawing.Image)(resources.GetObject("gviewRight.Appearance.HeaderPanel.Image")));
this.gviewRight.Appearance.HeaderPanel.Options.UseTextOptions = true;
this.gviewRight.Appearance.HeaderPanel.TextOptions.WordWrap = DevExpress.Utils.WordWrap.Wrap;
resources.ApplyResources(this.gviewRight, "gviewRight");
this.gviewRight.ColumnPanelRowHeight = 35;
this.gviewRight.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] {
this.colIndex,
@@ -564,8 +603,15 @@
new DevExpress.XtraEditors.Controls.EditorButton(((DevExpress.XtraEditors.Controls.ButtonPredefines)(resources.GetObject("repositoryItemCheckedComboBoxEdit2.Buttons"))))});
this.repositoryItemCheckedComboBoxEdit2.CloseUpKey = new DevExpress.Utils.KeyShortcut(System.Windows.Forms.Keys.F2);
this.repositoryItemCheckedComboBoxEdit2.ForceUpdateEditValue = DevExpress.Utils.DefaultBoolean.True;
this.repositoryItemCheckedComboBoxEdit2.Mask.AutoComplete = ((DevExpress.XtraEditors.Mask.AutoCompleteType)(resources.GetObject("repositoryItemCheckedComboBoxEdit2.Mask.AutoComplete")));
this.repositoryItemCheckedComboBoxEdit2.Mask.BeepOnError = ((bool)(resources.GetObject("repositoryItemCheckedComboBoxEdit2.Mask.BeepOnError")));
this.repositoryItemCheckedComboBoxEdit2.Mask.EditMask = resources.GetString("repositoryItemCheckedComboBoxEdit2.Mask.EditMask");
this.repositoryItemCheckedComboBoxEdit2.Mask.IgnoreMaskBlank = ((bool)(resources.GetObject("repositoryItemCheckedComboBoxEdit2.Mask.IgnoreMaskBlank")));
this.repositoryItemCheckedComboBoxEdit2.Mask.MaskType = ((DevExpress.XtraEditors.Mask.MaskType)(resources.GetObject("repositoryItemCheckedComboBoxEdit2.Mask.MaskType")));
this.repositoryItemCheckedComboBoxEdit2.Mask.PlaceHolder = ((char)(resources.GetObject("repositoryItemCheckedComboBoxEdit2.Mask.PlaceHolder")));
this.repositoryItemCheckedComboBoxEdit2.Mask.SaveLiteral = ((bool)(resources.GetObject("repositoryItemCheckedComboBoxEdit2.Mask.SaveLiteral")));
this.repositoryItemCheckedComboBoxEdit2.Mask.ShowPlaceHolders = ((bool)(resources.GetObject("repositoryItemCheckedComboBoxEdit2.Mask.ShowPlaceHolders")));
this.repositoryItemCheckedComboBoxEdit2.Mask.UseMaskAsDisplayFormat = ((bool)(resources.GetObject("repositoryItemCheckedComboBoxEdit2.Mask.UseMaskAsDisplayFormat")));
this.repositoryItemCheckedComboBoxEdit2.Name = "repositoryItemCheckedComboBoxEdit2";
this.repositoryItemCheckedComboBoxEdit2.PopupSizeable = false;
this.repositoryItemCheckedComboBoxEdit2.SelectAllItemVisible = false;
@@ -644,10 +690,10 @@
//
// colServiceTypeName
//
resources.ApplyResources(this.colServiceTypeName, "colServiceTypeName");
this.colServiceTypeName.FieldName = "ServiceTypeName";
this.colServiceTypeName.Name = "colServiceTypeName";
this.colServiceTypeName.OptionsColumn.AllowEdit = false;
resources.ApplyResources(this.colServiceTypeName, "colServiceTypeName");
//
// colSatellite
//
@@ -707,6 +753,7 @@
//
// colDebug
//
resources.ApplyResources(this.colDebug, "colDebug");
this.colDebug.FieldName = "Debug";
this.colDebug.Name = "colDebug";
this.colDebug.OptionsColumn.AllowEdit = false;
@@ -733,18 +780,18 @@
//
// panelControl3
//
resources.ApplyResources(this.panelControl3, "panelControl3");
this.panelControl3.Controls.Add(this.btnRemoveRight);
this.panelControl3.Controls.Add(this.btnAddAll);
this.panelControl3.Controls.Add(this.btnClearRightFilter);
this.panelControl3.Controls.Add(this.btnAdd);
resources.ApplyResources(this.panelControl3, "panelControl3");
this.panelControl3.Name = "panelControl3";
//
// btnRemoveRight
//
resources.ApplyResources(this.btnRemoveRight, "btnRemoveRight");
this.btnRemoveRight.ImageIndex = 11;
this.btnRemoveRight.ImageList = this.globalImageCollection1;
resources.ApplyResources(this.btnRemoveRight, "btnRemoveRight");
this.btnRemoveRight.Name = "btnRemoveRight";
this.btnRemoveRight.Click += new System.EventHandler(this.btnRemoveRight_Click);
//
@@ -756,19 +803,21 @@
//
// btnClearRightFilter
//
resources.ApplyResources(this.btnClearRightFilter, "btnClearRightFilter");
this.btnClearRightFilter.Appearance.Font = ((System.Drawing.Font)(resources.GetObject("btnClearRightFilter.Appearance.Font")));
this.btnClearRightFilter.Appearance.GradientMode = ((System.Drawing.Drawing2D.LinearGradientMode)(resources.GetObject("btnClearRightFilter.Appearance.GradientMode")));
this.btnClearRightFilter.Appearance.Image = ((System.Drawing.Image)(resources.GetObject("btnClearRightFilter.Appearance.Image")));
this.btnClearRightFilter.Appearance.Options.UseFont = true;
this.btnClearRightFilter.ImageIndex = 28;
this.btnClearRightFilter.ImageList = this.globalImageCollection1;
resources.ApplyResources(this.btnClearRightFilter, "btnClearRightFilter");
this.btnClearRightFilter.Name = "btnClearRightFilter";
this.btnClearRightFilter.Click += new System.EventHandler(this.btnClearRightFilter_Click);
//
// btnAdd
//
resources.ApplyResources(this.btnAdd, "btnAdd");
this.btnAdd.ImageIndex = 26;
this.btnAdd.ImageList = this.globalImageCollection1;
resources.ApplyResources(this.btnAdd, "btnAdd");
this.btnAdd.Name = "btnAdd";
this.btnAdd.Click += new System.EventHandler(this.btnAdd_Click);
//
@@ -828,8 +877,10 @@
this.miTvSettings,
this.miEraseChannelData,
this.miOpenWebsite,
this.miWiki});
this.barManager1.MaxItemId = 53;
this.miWiki,
this.miEraseDuplicateChannels,
this.miShowWarningsAfterLoad});
this.barManager1.MaxItemId = 55;
//
// bar1
//
@@ -1158,7 +1209,9 @@
this.mnuOptions.Id = 34;
this.mnuOptions.LinksPersistInfo.AddRange(new DevExpress.XtraBars.LinkPersistInfo[] {
new DevExpress.XtraBars.LinkPersistInfo(DevExpress.XtraBars.BarLinkUserDefines.PaintStyle, this.barSubItem1, DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph),
new DevExpress.XtraBars.LinkPersistInfo(DevExpress.XtraBars.BarLinkUserDefines.PaintStyle, this.mnuCharset, DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph)});
new DevExpress.XtraBars.LinkPersistInfo(DevExpress.XtraBars.BarLinkUserDefines.PaintStyle, this.mnuCharset, DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph),
new DevExpress.XtraBars.LinkPersistInfo(this.miEraseDuplicateChannels),
new DevExpress.XtraBars.LinkPersistInfo(this.miShowWarningsAfterLoad)});
this.mnuOptions.Name = "mnuOptions";
//
// barSubItem1
@@ -1175,8 +1228,8 @@
//
// miEnglish
//
this.miEnglish.ButtonStyle = DevExpress.XtraBars.BarButtonStyle.Check;
resources.ApplyResources(this.miEnglish, "miEnglish");
this.miEnglish.ButtonStyle = DevExpress.XtraBars.BarButtonStyle.Check;
this.miEnglish.CategoryGuid = new System.Guid("870e935c-f3d9-4202-9c58-87966069155d");
this.miEnglish.Id = 2;
this.miEnglish.ImageIndex = 0;
@@ -1186,8 +1239,8 @@
//
// miGerman
//
this.miGerman.ButtonStyle = DevExpress.XtraBars.BarButtonStyle.Check;
resources.ApplyResources(this.miGerman, "miGerman");
this.miGerman.ButtonStyle = DevExpress.XtraBars.BarButtonStyle.Check;
this.miGerman.CategoryGuid = new System.Guid("870e935c-f3d9-4202-9c58-87966069155d");
this.miGerman.Id = 1;
this.miGerman.ImageIndex = 1;
@@ -1225,6 +1278,19 @@
this.miIsoCharSets.ShowNumbers = true;
this.miIsoCharSets.ListItemClick += new DevExpress.XtraBars.ListItemClickEventHandler(this.miIsoCharSets_ListItemClick);
//
// miEraseDuplicateChannels
//
resources.ApplyResources(this.miEraseDuplicateChannels, "miEraseDuplicateChannels");
this.miEraseDuplicateChannels.Checked = true;
this.miEraseDuplicateChannels.Id = 53;
this.miEraseDuplicateChannels.Name = "miEraseDuplicateChannels";
//
// miShowWarningsAfterLoad
//
resources.ApplyResources(this.miShowWarningsAfterLoad, "miShowWarningsAfterLoad");
this.miShowWarningsAfterLoad.Id = 54;
this.miShowWarningsAfterLoad.Name = "miShowWarningsAfterLoad";
//
// mnuHelp
//
resources.ApplyResources(this.mnuHelp, "mnuHelp");
@@ -1261,23 +1327,31 @@
//
// barDockControlTop
//
this.barDockControlTop.CausesValidation = false;
resources.ApplyResources(this.barDockControlTop, "barDockControlTop");
this.barDockControlTop.Appearance.GradientMode = ((System.Drawing.Drawing2D.LinearGradientMode)(resources.GetObject("barDockControlTop.Appearance.GradientMode")));
this.barDockControlTop.Appearance.Image = ((System.Drawing.Image)(resources.GetObject("barDockControlTop.Appearance.Image")));
this.barDockControlTop.CausesValidation = false;
//
// barDockControlBottom
//
this.barDockControlBottom.CausesValidation = false;
resources.ApplyResources(this.barDockControlBottom, "barDockControlBottom");
this.barDockControlBottom.Appearance.GradientMode = ((System.Drawing.Drawing2D.LinearGradientMode)(resources.GetObject("barDockControlBottom.Appearance.GradientMode")));
this.barDockControlBottom.Appearance.Image = ((System.Drawing.Image)(resources.GetObject("barDockControlBottom.Appearance.Image")));
this.barDockControlBottom.CausesValidation = false;
//
// barDockControlLeft
//
this.barDockControlLeft.CausesValidation = false;
resources.ApplyResources(this.barDockControlLeft, "barDockControlLeft");
this.barDockControlLeft.Appearance.GradientMode = ((System.Drawing.Drawing2D.LinearGradientMode)(resources.GetObject("barDockControlLeft.Appearance.GradientMode")));
this.barDockControlLeft.Appearance.Image = ((System.Drawing.Image)(resources.GetObject("barDockControlLeft.Appearance.Image")));
this.barDockControlLeft.CausesValidation = false;
//
// barDockControlRight
//
this.barDockControlRight.CausesValidation = false;
resources.ApplyResources(this.barDockControlRight, "barDockControlRight");
this.barDockControlRight.Appearance.GradientMode = ((System.Drawing.Drawing2D.LinearGradientMode)(resources.GetObject("barDockControlRight.Appearance.GradientMode")));
this.barDockControlRight.Appearance.Image = ((System.Drawing.Image)(resources.GetObject("barDockControlRight.Appearance.Image")));
this.barDockControlRight.CausesValidation = false;
//
// miMoveUp
//
@@ -1306,10 +1380,22 @@
//
resources.ApplyResources(this.txtSetSlot, "txtSetSlot");
this.txtSetSlot.Name = "txtSetSlot";
this.txtSetSlot.Properties.AccessibleDescription = resources.GetString("txtSetSlot.Properties.AccessibleDescription");
this.txtSetSlot.Properties.AccessibleName = resources.GetString("txtSetSlot.Properties.AccessibleName");
this.txtSetSlot.Properties.AutoHeight = ((bool)(resources.GetObject("txtSetSlot.Properties.AutoHeight")));
this.txtSetSlot.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
new DevExpress.XtraEditors.Controls.EditorButton(((DevExpress.XtraEditors.Controls.ButtonPredefines)(resources.GetObject("txtSetSlot.Properties.Buttons"))))});
this.txtSetSlot.Properties.Mask.AutoComplete = ((DevExpress.XtraEditors.Mask.AutoCompleteType)(resources.GetObject("txtSetSlot.Properties.Mask.AutoComplete")));
this.txtSetSlot.Properties.Mask.BeepOnError = ((bool)(resources.GetObject("txtSetSlot.Properties.Mask.BeepOnError")));
this.txtSetSlot.Properties.Mask.EditMask = resources.GetString("txtSetSlot.Properties.Mask.EditMask");
this.txtSetSlot.Properties.Mask.IgnoreMaskBlank = ((bool)(resources.GetObject("txtSetSlot.Properties.Mask.IgnoreMaskBlank")));
this.txtSetSlot.Properties.Mask.MaskType = ((DevExpress.XtraEditors.Mask.MaskType)(resources.GetObject("txtSetSlot.Properties.Mask.MaskType")));
this.txtSetSlot.Properties.Mask.PlaceHolder = ((char)(resources.GetObject("txtSetSlot.Properties.Mask.PlaceHolder")));
this.txtSetSlot.Properties.Mask.SaveLiteral = ((bool)(resources.GetObject("txtSetSlot.Properties.Mask.SaveLiteral")));
this.txtSetSlot.Properties.Mask.ShowPlaceHolders = ((bool)(resources.GetObject("txtSetSlot.Properties.Mask.ShowPlaceHolders")));
this.txtSetSlot.Properties.Mask.UseMaskAsDisplayFormat = ((bool)(resources.GetObject("txtSetSlot.Properties.Mask.UseMaskAsDisplayFormat")));
this.txtSetSlot.Properties.NullValuePrompt = resources.GetString("txtSetSlot.Properties.NullValuePrompt");
this.txtSetSlot.Properties.NullValuePromptShowForEmptyValue = ((bool)(resources.GetObject("txtSetSlot.Properties.NullValuePromptShowForEmptyValue")));
this.txtSetSlot.ButtonClick += new DevExpress.XtraEditors.Controls.ButtonPressedEventHandler(this.txtSetSlot_ButtonClick);
this.txtSetSlot.EditValueChanged += new System.EventHandler(this.txtSetSlot_EditValueChanged);
this.txtSetSlot.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txtSetSlot_KeyDown);
@@ -1325,7 +1411,11 @@
this.picDonate.EditValue = global::ChanSort.Ui.Properties.Resources.Donate;
this.picDonate.MenuManager = this.barManager1;
this.picDonate.Name = "picDonate";
this.picDonate.Properties.AccessibleDescription = resources.GetString("picDonate.Properties.AccessibleDescription");
this.picDonate.Properties.AccessibleName = resources.GetString("picDonate.Properties.AccessibleName");
this.picDonate.Properties.Appearance.BackColor = ((System.Drawing.Color)(resources.GetObject("picDonate.Properties.Appearance.BackColor")));
this.picDonate.Properties.Appearance.GradientMode = ((System.Drawing.Drawing2D.LinearGradientMode)(resources.GetObject("picDonate.Properties.Appearance.GradientMode")));
this.picDonate.Properties.Appearance.Image = ((System.Drawing.Image)(resources.GetObject("picDonate.Properties.Appearance.Image")));
this.picDonate.Properties.Appearance.Options.UseBackColor = true;
this.picDonate.Properties.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder;
this.picDonate.Properties.PictureAlignment = System.Drawing.ContentAlignment.TopRight;
@@ -1337,6 +1427,7 @@
//
// grpTopPanel
//
resources.ApplyResources(this.grpTopPanel, "grpTopPanel");
this.grpTopPanel.Controls.Add(this.rbInsertSwap);
this.grpTopPanel.Controls.Add(this.rbInsertAfter);
this.grpTopPanel.Controls.Add(this.rbInsertBefore);
@@ -1347,7 +1438,6 @@
this.grpTopPanel.Controls.Add(this.tabChannelList);
this.grpTopPanel.Controls.Add(this.labelControl11);
this.grpTopPanel.Controls.Add(this.txtSetSlot);
resources.ApplyResources(this.grpTopPanel, "grpTopPanel");
this.grpTopPanel.Name = "grpTopPanel";
this.grpTopPanel.ShowCaption = false;
//
@@ -1356,10 +1446,18 @@
resources.ApplyResources(this.rbInsertSwap, "rbInsertSwap");
this.rbInsertSwap.MenuManager = this.barManager1;
this.rbInsertSwap.Name = "rbInsertSwap";
this.rbInsertSwap.Properties.AccessibleDescription = resources.GetString("rbInsertSwap.Properties.AccessibleDescription");
this.rbInsertSwap.Properties.AccessibleName = resources.GetString("rbInsertSwap.Properties.AccessibleName");
this.rbInsertSwap.Properties.Appearance.GradientMode = ((System.Drawing.Drawing2D.LinearGradientMode)(resources.GetObject("rbInsertSwap.Properties.Appearance.GradientMode")));
this.rbInsertSwap.Properties.Appearance.Image = ((System.Drawing.Image)(resources.GetObject("rbInsertSwap.Properties.Appearance.Image")));
this.rbInsertSwap.Properties.Appearance.Options.UseTextOptions = true;
this.rbInsertSwap.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far;
this.rbInsertSwap.Properties.AutoHeight = ((bool)(resources.GetObject("rbInsertSwap.Properties.AutoHeight")));
this.rbInsertSwap.Properties.Caption = resources.GetString("rbInsertSwap.Properties.Caption");
this.rbInsertSwap.Properties.CheckStyle = DevExpress.XtraEditors.Controls.CheckStyles.Radio;
this.rbInsertSwap.Properties.DisplayValueChecked = resources.GetString("rbInsertSwap.Properties.DisplayValueChecked");
this.rbInsertSwap.Properties.DisplayValueGrayed = resources.GetString("rbInsertSwap.Properties.DisplayValueGrayed");
this.rbInsertSwap.Properties.DisplayValueUnchecked = resources.GetString("rbInsertSwap.Properties.DisplayValueUnchecked");
this.rbInsertSwap.Properties.GlyphAlignment = ((DevExpress.Utils.HorzAlignment)(resources.GetObject("rbInsertSwap.Properties.GlyphAlignment")));
this.rbInsertSwap.Properties.RadioGroupIndex = 1;
this.rbInsertSwap.TabStop = false;
@@ -1370,8 +1468,14 @@
resources.ApplyResources(this.rbInsertAfter, "rbInsertAfter");
this.rbInsertAfter.MenuManager = this.barManager1;
this.rbInsertAfter.Name = "rbInsertAfter";
this.rbInsertAfter.Properties.AccessibleDescription = resources.GetString("rbInsertAfter.Properties.AccessibleDescription");
this.rbInsertAfter.Properties.AccessibleName = resources.GetString("rbInsertAfter.Properties.AccessibleName");
this.rbInsertAfter.Properties.AutoHeight = ((bool)(resources.GetObject("rbInsertAfter.Properties.AutoHeight")));
this.rbInsertAfter.Properties.Caption = resources.GetString("rbInsertAfter.Properties.Caption");
this.rbInsertAfter.Properties.CheckStyle = DevExpress.XtraEditors.Controls.CheckStyles.Radio;
this.rbInsertAfter.Properties.DisplayValueChecked = resources.GetString("rbInsertAfter.Properties.DisplayValueChecked");
this.rbInsertAfter.Properties.DisplayValueGrayed = resources.GetString("rbInsertAfter.Properties.DisplayValueGrayed");
this.rbInsertAfter.Properties.DisplayValueUnchecked = resources.GetString("rbInsertAfter.Properties.DisplayValueUnchecked");
this.rbInsertAfter.Properties.RadioGroupIndex = 1;
this.rbInsertAfter.CheckedChanged += new System.EventHandler(this.rbInsertMode_CheckedChanged);
//
@@ -1380,8 +1484,14 @@
resources.ApplyResources(this.rbInsertBefore, "rbInsertBefore");
this.rbInsertBefore.MenuManager = this.barManager1;
this.rbInsertBefore.Name = "rbInsertBefore";
this.rbInsertBefore.Properties.AccessibleDescription = resources.GetString("rbInsertBefore.Properties.AccessibleDescription");
this.rbInsertBefore.Properties.AccessibleName = resources.GetString("rbInsertBefore.Properties.AccessibleName");
this.rbInsertBefore.Properties.AutoHeight = ((bool)(resources.GetObject("rbInsertBefore.Properties.AutoHeight")));
this.rbInsertBefore.Properties.Caption = resources.GetString("rbInsertBefore.Properties.Caption");
this.rbInsertBefore.Properties.CheckStyle = DevExpress.XtraEditors.Controls.CheckStyles.Radio;
this.rbInsertBefore.Properties.DisplayValueChecked = resources.GetString("rbInsertBefore.Properties.DisplayValueChecked");
this.rbInsertBefore.Properties.DisplayValueGrayed = resources.GetString("rbInsertBefore.Properties.DisplayValueGrayed");
this.rbInsertBefore.Properties.DisplayValueUnchecked = resources.GetString("rbInsertBefore.Properties.DisplayValueUnchecked");
this.rbInsertBefore.Properties.RadioGroupIndex = 1;
this.rbInsertBefore.TabStop = false;
this.rbInsertBefore.CheckedChanged += new System.EventHandler(this.rbInsertMode_CheckedChanged);
@@ -1391,14 +1501,26 @@
resources.ApplyResources(this.cbCloseGap, "cbCloseGap");
this.cbCloseGap.MenuManager = this.barManager1;
this.cbCloseGap.Name = "cbCloseGap";
this.cbCloseGap.Properties.AccessibleDescription = resources.GetString("cbCloseGap.Properties.AccessibleDescription");
this.cbCloseGap.Properties.AccessibleName = resources.GetString("cbCloseGap.Properties.AccessibleName");
this.cbCloseGap.Properties.AutoHeight = ((bool)(resources.GetObject("cbCloseGap.Properties.AutoHeight")));
this.cbCloseGap.Properties.Caption = resources.GetString("cbCloseGap.Properties.Caption");
this.cbCloseGap.Properties.DisplayValueChecked = resources.GetString("cbCloseGap.Properties.DisplayValueChecked");
this.cbCloseGap.Properties.DisplayValueGrayed = resources.GetString("cbCloseGap.Properties.DisplayValueGrayed");
this.cbCloseGap.Properties.DisplayValueUnchecked = resources.GetString("cbCloseGap.Properties.DisplayValueUnchecked");
//
// cbAppendUnsortedChannels
//
resources.ApplyResources(this.cbAppendUnsortedChannels, "cbAppendUnsortedChannels");
this.cbAppendUnsortedChannels.MenuManager = this.barManager1;
this.cbAppendUnsortedChannels.Name = "cbAppendUnsortedChannels";
this.cbAppendUnsortedChannels.Properties.AccessibleDescription = resources.GetString("cbAppendUnsortedChannels.Properties.AccessibleDescription");
this.cbAppendUnsortedChannels.Properties.AccessibleName = resources.GetString("cbAppendUnsortedChannels.Properties.AccessibleName");
this.cbAppendUnsortedChannels.Properties.AutoHeight = ((bool)(resources.GetObject("cbAppendUnsortedChannels.Properties.AutoHeight")));
this.cbAppendUnsortedChannels.Properties.Caption = resources.GetString("cbAppendUnsortedChannels.Properties.Caption");
this.cbAppendUnsortedChannels.Properties.DisplayValueChecked = resources.GetString("cbAppendUnsortedChannels.Properties.DisplayValueChecked");
this.cbAppendUnsortedChannels.Properties.DisplayValueGrayed = resources.GetString("cbAppendUnsortedChannels.Properties.DisplayValueGrayed");
this.cbAppendUnsortedChannels.Properties.DisplayValueUnchecked = resources.GetString("cbAppendUnsortedChannels.Properties.DisplayValueUnchecked");
//
// tabChannelList
//
@@ -1411,8 +1533,8 @@
//
// pageEmpty
//
this.pageEmpty.Name = "pageEmpty";
resources.ApplyResources(this.pageEmpty, "pageEmpty");
this.pageEmpty.Name = "pageEmpty";
//
// mnuContext
//
@@ -1620,6 +1742,8 @@
private DevExpress.XtraEditors.SimpleButton btnRemoveRight;
private System.Windows.Forms.Timer timerEditDelay;
private DevExpress.XtraBars.BarButtonItem miRenameChannel;
private DevExpress.XtraBars.BarCheckItem miEraseDuplicateChannels;
private DevExpress.XtraBars.BarCheckItem miShowWarningsAfterLoad;
private DevExpress.XtraSplashScreen.SplashScreenManager splashScreenManager1;
}
}

View File

@@ -23,7 +23,7 @@ namespace ChanSort.Ui
{
public partial class MainForm : XtraForm
{
public const string AppVersion = "v2013-04-21";
public const string AppVersion = "v2013-04-28a";
#region enum EditMode
private enum EditMode
@@ -224,12 +224,15 @@ namespace ChanSort.Ui
this.UpdateFavoritesEditor(this.dataRoot.SupportedFavorites);
this.colName.OptionsColumn.AllowEdit = this.currentTvSerializer.Features.ChannelNameEdit;
this.colOutName.OptionsColumn.AllowEdit = this.currentTvSerializer.Features.ChannelNameEdit;
if (this.dataRoot.Warnings.Length > 0 && this.miShowWarningsAfterLoad.Checked)
this.BeginInvoke((Action)this.ShowFileInformation);
}
catch (Exception ex)
{
if (!(ex is IOException))
throw;
string name = newSerializer != null ? newSerializer.DisplayName : plugin.PluginName;
string name = newSerializer != null ? newSerializer.DisplayName : plugin != null ? plugin.PluginName : "Loader";
XtraMessageBox.Show(this, name + "\n\n" + ex.Message, Resources.MainForm_LoadFiles_IOException,
MessageBoxButtons.OK, MessageBoxIcon.Error);
this.currentPlugin = null;
@@ -309,7 +312,7 @@ namespace ChanSort.Ui
return null;
}
string extension = (Path.GetExtension(inputFileName) ?? "").ToUpper();
string upperFileName = Path.GetFileName(inputFileName).ToUpper();
string upperFileName = (Path.GetFileName(inputFileName) ??"").ToUpper();
foreach (var plugin in this.plugins)
{
if ((plugin.FileFilter.ToUpper()+"|").Contains("*"+extension) || plugin.FileFilter.ToUpper() == upperFileName)
@@ -324,6 +327,7 @@ namespace ChanSort.Ui
#region LoadTvDataFile()
private bool LoadTvDataFile()
{
this.currentTvSerializer.EraseDuplicateChannels = this.miEraseDuplicateChannels.Checked;
this.currentTvSerializer.Load();
this.dataRoot = this.currentTvSerializer.DataRoot;
return true;
@@ -741,6 +745,9 @@ namespace ChanSort.Ui
this.SetGridLayout(this.gviewLeft, Settings.Default.OutputListLayout);
this.miEraseDuplicateChannels.Checked = Settings.Default.EraseDuplicateChannels;
this.miShowWarningsAfterLoad.Checked = Settings.Default.ShowWarningsAfterLoading;
this.ClearLeftFilter();
}
#endregion
@@ -803,6 +810,9 @@ namespace ChanSort.Ui
Settings.Default.OutputListLayout = GetGridLayout(this.gviewLeft);
if (this.currentChannelList != null)
SaveInputGridLayout(this.currentChannelList.SignalSource);
Settings.Default.EraseDuplicateChannels = this.miEraseDuplicateChannels.Checked;
Settings.Default.ShowWarningsAfterLoading = this.miShowWarningsAfterLoad.Checked;
Settings.Default.Save();
}
@@ -908,12 +918,12 @@ namespace ChanSort.Ui
private void SaveInputGridLayout(SignalSource signalSource)
{
string currentLayout = GetGridLayout(this.gviewRight);
switch (signalSource)
{
case SignalSource.Analog: Settings.Default.InputGridLayoutAnalog = currentLayout; break;
case SignalSource.DvbCT: Settings.Default.InputGridLayoutDvbCT = currentLayout; break;
case SignalSource.DvbS: Settings.Default.InputGridLayoutDvbS = currentLayout; break;
}
if ((signalSource & SignalSource.Analog) != 0)
Settings.Default.InputGridLayoutAnalog = currentLayout;
else if ((signalSource & SignalSource.DvbS) != 0)
Settings.Default.InputGridLayoutDvbS = currentLayout;
else //if ((signalSource & SignalSource.DvbCT) != 0)
Settings.Default.InputGridLayoutDvbCT = currentLayout;
}
#endregion
@@ -1092,7 +1102,7 @@ namespace ChanSort.Ui
var lines = this.dataRoot.Warnings.ToString().Split('\n');
Array.Sort(lines);
var sortedWarnings = String.Join("\n", lines);
info += Resources.MainForm_LoadFiles_ValidationWarningMsg + "\r\n\r\n" + sortedWarnings;
info += "\r\n\r\n\r\n" + Resources.MainForm_LoadFiles_ValidationWarningMsg + "\r\n\r\n" + sortedWarnings;
}
InfoBox.Show(this, info, this.miFileInformation.Caption.Replace("...", "").Replace("&",""));
@@ -1401,7 +1411,7 @@ namespace ChanSort.Ui
#endregion
#region tabChannelList_SelectedPageChanged
private void tabChannelList_SelectedPageChanged(object sender, DevExpress.XtraTab.TabPageChangedEventArgs e)
private void tabChannelList_SelectedPageChanged(object sender, TabPageChangedEventArgs e)
{
this.TryExecute(() => ShowChannelList(e.Page == null ? null : (ChannelList)e.Page.Tag));
}

View File

@@ -117,6 +117,50 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="gridLeft.EmbeddedNavigator.AccessibleDescription" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="gridLeft.EmbeddedNavigator.AccessibleName" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<assembly alias="DevExpress.Data.v12.2" name="DevExpress.Data.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<data name="gridLeft.EmbeddedNavigator.AllowHtmlTextInToolTip" type="DevExpress.Utils.DefaultBoolean, DevExpress.Data.v12.2">
<value>Default</value>
</data>
<data name="gridLeft.EmbeddedNavigator.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Left</value>
</data>
<data name="gridLeft.EmbeddedNavigator.BackgroundImage" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="gridLeft.EmbeddedNavigator.BackgroundImageLayout" type="System.Windows.Forms.ImageLayout, System.Windows.Forms">
<value>Tile</value>
</data>
<data name="gridLeft.EmbeddedNavigator.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>Inherit</value>
</data>
<assembly alias="DevExpress.XtraEditors.v12.2" name="DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<data name="gridLeft.EmbeddedNavigator.TextLocation" type="DevExpress.XtraEditors.NavigatorButtonsTextLocation, DevExpress.XtraEditors.v12.2">
<value>Center</value>
</data>
<data name="gridLeft.EmbeddedNavigator.ToolTip" xml:space="preserve">
<value />
</data>
<assembly alias="DevExpress.Utils.v12.2" name="DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<data name="gridLeft.EmbeddedNavigator.ToolTipIconType" type="DevExpress.Utils.ToolTipIconType, DevExpress.Utils.v12.2">
<value>None</value>
</data>
<data name="gridLeft.EmbeddedNavigator.ToolTipTitle" xml:space="preserve">
<value />
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="gviewLeft.Appearance.HeaderPanel.GradientMode" type="System.Drawing.Drawing2D.LinearGradientMode, System.Drawing">
<value>Horizontal</value>
</data>
<data name="gviewLeft.Appearance.HeaderPanel.Image" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="colOutSlot.Caption" xml:space="preserve">
<value>Neue Pr#</value>
</data>
@@ -129,13 +173,34 @@
<data name="colOutFav.Caption" xml:space="preserve">
<value>Favoriten</value>
</data>
<data name="repositoryItemCheckedComboBoxEdit1.Mask.AutoComplete" type="DevExpress.XtraEditors.Mask.AutoCompleteType, DevExpress.XtraEditors.v12.2">
<value>Default</value>
</data>
<assembly alias="mscorlib" name="mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="repositoryItemCheckedComboBoxEdit1.Mask.BeepOnError" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="repositoryItemCheckedComboBoxEdit1.Mask.IgnoreMaskBlank" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="repositoryItemCheckedComboBoxEdit1.Mask.PlaceHolder" type="System.Char, mscorlib" xml:space="preserve">
<value>_</value>
</data>
<data name="repositoryItemCheckedComboBoxEdit1.Mask.SaveLiteral" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="repositoryItemCheckedComboBoxEdit1.Mask.ShowPlaceHolders" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="repositoryItemCheckedComboBoxEdit1.Mask.UseMaskAsDisplayFormat" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="colOutLock.Caption" xml:space="preserve">
<value>Ge- sperrt</value>
</data>
<data name="colOutLock.ToolTip" xml:space="preserve">
<value>Kindersicherung</value>
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="lblHotkeyLeft.Size" type="System.Drawing.Size, System.Drawing">
<value>333, 17</value>
</data>
@@ -229,6 +294,12 @@
<data name="mnuCharset.Caption" xml:space="preserve">
<value>&amp;Zeichensatz</value>
</data>
<data name="miEraseDuplicateChannels.Caption" xml:space="preserve">
<value>Mehrfach vorhandene Sender löschen</value>
</data>
<data name="miShowWarningsAfterLoad.Caption" xml:space="preserve">
<value>Warnungen nach dem Laden einer Datei anzeigen</value>
</data>
<data name="mnuHelp.Caption" xml:space="preserve">
<value>&amp;Hilfe</value>
</data>
@@ -279,36 +350,168 @@
WIeWYGkVXQEL
</value>
</data>
<data name="barDockControlTop.Appearance.GradientMode" type="System.Drawing.Drawing2D.LinearGradientMode, System.Drawing">
<value>Horizontal</value>
</data>
<data name="barDockControlTop.Appearance.Image" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="barDockControlBottom.Appearance.GradientMode" type="System.Drawing.Drawing2D.LinearGradientMode, System.Drawing">
<value>Horizontal</value>
</data>
<data name="barDockControlBottom.Appearance.Image" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="barDockControlLeft.Appearance.GradientMode" type="System.Drawing.Drawing2D.LinearGradientMode, System.Drawing">
<value>Horizontal</value>
</data>
<data name="barDockControlLeft.Appearance.Image" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="barDockControlRight.Appearance.GradientMode" type="System.Drawing.Drawing2D.LinearGradientMode, System.Drawing">
<value>Horizontal</value>
</data>
<data name="barDockControlRight.Appearance.Image" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="miMoveUp.Caption" xml:space="preserve">
<value>Nach oben</value>
</data>
<data name="miMoveDown.Caption" xml:space="preserve">
<value>Nach unten</value>
</data>
<data name="rbInsertSwap.Properties.AccessibleDescription" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="rbInsertSwap.Properties.AccessibleName" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="rbInsertSwap.Properties.Appearance.GradientMode" type="System.Drawing.Drawing2D.LinearGradientMode, System.Drawing">
<value>Horizontal</value>
</data>
<data name="rbInsertSwap.Properties.Appearance.Image" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="rbInsertSwap.Properties.AutoHeight" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="rbInsertSwap.Properties.Caption" xml:space="preserve">
<value>tauschen</value>
</data>
<data name="rbInsertSwap.Properties.DisplayValueChecked" xml:space="preserve">
<value />
</data>
<data name="rbInsertSwap.Properties.DisplayValueGrayed" xml:space="preserve">
<value />
</data>
<data name="rbInsertSwap.Properties.DisplayValueUnchecked" xml:space="preserve">
<value />
</data>
<data name="rbInsertAfter.Properties.AccessibleDescription" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="rbInsertAfter.Properties.AccessibleName" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="rbInsertAfter.Properties.AutoHeight" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="rbInsertAfter.Properties.Caption" xml:space="preserve">
<value>dahinter</value>
</data>
<data name="rbInsertAfter.Properties.DisplayValueChecked" xml:space="preserve">
<value />
</data>
<data name="rbInsertAfter.Properties.DisplayValueGrayed" xml:space="preserve">
<value />
</data>
<data name="rbInsertAfter.Properties.DisplayValueUnchecked" xml:space="preserve">
<value />
</data>
<data name="rbInsertBefore.Properties.AccessibleDescription" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="rbInsertBefore.Properties.AccessibleName" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="rbInsertBefore.Properties.AutoHeight" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="rbInsertBefore.Properties.Caption" xml:space="preserve">
<value>davor</value>
</data>
<data name="rbInsertBefore.Properties.DisplayValueChecked" xml:space="preserve">
<value />
</data>
<data name="rbInsertBefore.Properties.DisplayValueGrayed" xml:space="preserve">
<value />
</data>
<data name="rbInsertBefore.Properties.DisplayValueUnchecked" xml:space="preserve">
<value />
</data>
<data name="cbCloseGap.Properties.AccessibleDescription" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="cbCloseGap.Properties.AccessibleName" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="cbCloseGap.Properties.AutoHeight" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="cbCloseGap.Properties.Caption" xml:space="preserve">
<value>Lücken beim Verschieben/Entfernen von Sendern schließen</value>
</data>
<data name="cbCloseGap.Properties.DisplayValueChecked" xml:space="preserve">
<value />
</data>
<data name="cbCloseGap.Properties.DisplayValueGrayed" xml:space="preserve">
<value />
</data>
<data name="cbCloseGap.Properties.DisplayValueUnchecked" xml:space="preserve">
<value />
</data>
<data name="cbCloseGap.ToolTip" xml:space="preserve">
<value>Wenn aktiv, werden folgende Programmnummer automatisch vorgerückt</value>
</data>
<data name="cbAppendUnsortedChannels.Properties.AccessibleDescription" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="cbAppendUnsortedChannels.Properties.AccessibleName" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="cbAppendUnsortedChannels.Properties.AutoHeight" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="cbAppendUnsortedChannels.Properties.Caption" xml:space="preserve">
<value>Unsortierte Sender beim Speichern automatisch anhängen</value>
</data>
<data name="cbAppendUnsortedChannels.Properties.DisplayValueChecked" xml:space="preserve">
<value />
</data>
<data name="cbAppendUnsortedChannels.Properties.DisplayValueGrayed" xml:space="preserve">
<value />
</data>
<data name="cbAppendUnsortedChannels.Properties.DisplayValueUnchecked" xml:space="preserve">
<value />
</data>
<data name="labelControl2.Size" type="System.Drawing.Size, System.Drawing">
<value>71, 13</value>
</data>
<data name="labelControl2.Text" xml:space="preserve">
<value>Einfügemodus:</value>
</data>
<data name="picDonate.Properties.AccessibleDescription" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="picDonate.Properties.AccessibleName" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="picDonate.Properties.Appearance.GradientMode" type="System.Drawing.Drawing2D.LinearGradientMode, System.Drawing">
<value>Horizontal</value>
</data>
<data name="picDonate.Properties.Appearance.Image" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="pageEmpty.Text" xml:space="preserve">
<value>Keine Datei geladen</value>
</data>
@@ -318,12 +521,54 @@
<data name="labelControl11.ToolTip" xml:space="preserve">
<value>Programplatz für Einfügen und Festlegen</value>
</data>
<data name="txtSetSlot.Properties.AccessibleDescription" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="txtSetSlot.Properties.AccessibleName" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="txtSetSlot.Properties.AutoHeight" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="txtSetSlot.Properties.Mask.AutoComplete" type="DevExpress.XtraEditors.Mask.AutoCompleteType, DevExpress.XtraEditors.v12.2">
<value>Default</value>
</data>
<data name="txtSetSlot.Properties.Mask.BeepOnError" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="txtSetSlot.Properties.Mask.IgnoreMaskBlank" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="txtSetSlot.Properties.Mask.PlaceHolder" type="System.Char, mscorlib" xml:space="preserve">
<value>_</value>
</data>
<data name="txtSetSlot.Properties.Mask.SaveLiteral" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="txtSetSlot.Properties.Mask.ShowPlaceHolders" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="txtSetSlot.Properties.Mask.UseMaskAsDisplayFormat" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="txtSetSlot.Properties.NullValuePrompt" xml:space="preserve">
<value />
</data>
<data name="txtSetSlot.Properties.NullValuePromptShowForEmptyValue" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="$this.Text" xml:space="preserve">
<value>ChanSort {0} - Senderlisten-Editor für Samsung, LG und Toshiba TVs</value>
</data>
<data name="btnToggleLock.Text" xml:space="preserve">
<value>Kindersicherung</value>
</data>
<data name="btnClearLeftFilter.Appearance.GradientMode" type="System.Drawing.Drawing2D.LinearGradientMode, System.Drawing">
<value>Horizontal</value>
</data>
<data name="btnClearLeftFilter.Appearance.Image" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="btnClearLeftFilter.ToolTip" xml:space="preserve">
<value>Filter entfernen</value>
</data>
@@ -339,6 +584,45 @@
<data name="grpOutputList.Text" xml:space="preserve">
<value>Sortierte Sender (.csv)</value>
</data>
<data name="gridRight.EmbeddedNavigator.AccessibleDescription" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="gridRight.EmbeddedNavigator.AccessibleName" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="gridRight.EmbeddedNavigator.AllowHtmlTextInToolTip" type="DevExpress.Utils.DefaultBoolean, DevExpress.Data.v12.2">
<value>Default</value>
</data>
<data name="gridRight.EmbeddedNavigator.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Left</value>
</data>
<data name="gridRight.EmbeddedNavigator.BackgroundImage" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="gridRight.EmbeddedNavigator.BackgroundImageLayout" type="System.Windows.Forms.ImageLayout, System.Windows.Forms">
<value>Tile</value>
</data>
<data name="gridRight.EmbeddedNavigator.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>Inherit</value>
</data>
<data name="gridRight.EmbeddedNavigator.TextLocation" type="DevExpress.XtraEditors.NavigatorButtonsTextLocation, DevExpress.XtraEditors.v12.2">
<value>Center</value>
</data>
<data name="gridRight.EmbeddedNavigator.ToolTip" xml:space="preserve">
<value />
</data>
<data name="gridRight.EmbeddedNavigator.ToolTipIconType" type="DevExpress.Utils.ToolTipIconType, DevExpress.Utils.v12.2">
<value>None</value>
</data>
<data name="gridRight.EmbeddedNavigator.ToolTipTitle" xml:space="preserve">
<value />
</data>
<data name="gviewRight.Appearance.HeaderPanel.GradientMode" type="System.Drawing.Drawing2D.LinearGradientMode, System.Drawing">
<value>Horizontal</value>
</data>
<data name="gviewRight.Appearance.HeaderPanel.Image" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="colSlotOld.Caption" xml:space="preserve">
<value>Alte Pr#</value>
</data>
@@ -360,6 +644,27 @@
<data name="colFavorites.Caption" xml:space="preserve">
<value>Favoriten</value>
</data>
<data name="repositoryItemCheckedComboBoxEdit2.Mask.AutoComplete" type="DevExpress.XtraEditors.Mask.AutoCompleteType, DevExpress.XtraEditors.v12.2">
<value>Default</value>
</data>
<data name="repositoryItemCheckedComboBoxEdit2.Mask.BeepOnError" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="repositoryItemCheckedComboBoxEdit2.Mask.IgnoreMaskBlank" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="repositoryItemCheckedComboBoxEdit2.Mask.PlaceHolder" type="System.Char, mscorlib" xml:space="preserve">
<value>_</value>
</data>
<data name="repositoryItemCheckedComboBoxEdit2.Mask.SaveLiteral" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="repositoryItemCheckedComboBoxEdit2.Mask.ShowPlaceHolders" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="repositoryItemCheckedComboBoxEdit2.Mask.UseMaskAsDisplayFormat" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="colLock.Caption" xml:space="preserve">
<value>Ge- sperrt</value>
</data>
@@ -408,6 +713,12 @@
<data name="btnRemoveRight.ToolTip" xml:space="preserve">
<value>Sender aus sortierter Liste entfernen</value>
</data>
<data name="btnClearRightFilter.Appearance.GradientMode" type="System.Drawing.Drawing2D.LinearGradientMode, System.Drawing">
<value>Horizontal</value>
</data>
<data name="btnClearRightFilter.Appearance.Image" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="btnClearRightFilter.ToolTip" xml:space="preserve">
<value>Filter entfernen</value>
</data>

File diff suppressed because it is too large Load Diff

View File

@@ -262,5 +262,29 @@ namespace ChanSort.Ui.Properties {
this["LeftPanelWidth"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool ShowWarningsAfterLoading {
get {
return ((bool)(this["ShowWarningsAfterLoading"]));
}
set {
this["ShowWarningsAfterLoading"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("True")]
public bool EraseDuplicateChannels {
get {
return ((bool)(this["EraseDuplicateChannels"]));
}
set {
this["EraseDuplicateChannels"] = value;
}
}
}
}

View File

@@ -62,5 +62,11 @@
<Setting Name="LeftPanelWidth" Type="System.Int32" Scope="User">
<Value Profile="(Default)">0</Value>
</Setting>
<Setting Name="ShowWarningsAfterLoading" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="EraseDuplicateChannels" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
</Settings>
</SettingsFile>

View File

@@ -9,40 +9,46 @@
<startup><supportedRuntime version="v2.0.50727"/></startup><userSettings>
<ChanSort.Ui.Properties.Settings>
<setting name="InputTLL" serializeAs="String">
<value/>
<value />
</setting>
<setting name="InputListRowHandle" serializeAs="String">
<value>0</value>
</setting>
<setting name="OutputListRowHandle" serializeAs="String">
<value>0</value>
</setting>
<setting name="OutputListLayout" serializeAs="String">
<value/>
<value />
</setting>
<setting name="InputFilterName" serializeAs="String">
<value/>
<value />
</setting>
<setting name="InputFilterOldSlot" serializeAs="String">
<value/>
<value />
</setting>
<setting name="InputFilterCrypt" serializeAs="String">
<value/>
<value />
</setting>
<setting name="InputFilterNewSlot" serializeAs="String">
<value/>
<value />
</setting>
<setting name="InputFilterChannel" serializeAs="String">
<value/>
<value />
</setting>
<setting name="InputFilterUid" serializeAs="String">
<value/>
<value />
</setting>
<setting name="OutputFilterName" serializeAs="String">
<value/>
<value />
</setting>
<setting name="Language" serializeAs="String">
<value/>
<value />
</setting>
<setting name="OutputFilterNewSlot" serializeAs="String">
<value/>
<value />
</setting>
<setting name="Encoding" serializeAs="String">
<value/>
<value />
</setting>
<setting name="HideLeftList" serializeAs="String">
<value>False</value>
@@ -51,17 +57,23 @@
<value>0, 0</value>
</setting>
<setting name="InputGridLayoutAnalog" serializeAs="String">
<value/>
<value />
</setting>
<setting name="InputGridLayoutDvbCT" serializeAs="String">
<value/>
<value />
</setting>
<setting name="InputGridLayoutDvbS" serializeAs="String">
<value/>
<value />
</setting>
<setting name="LeftPanelWidth" serializeAs="String">
<value>0</value>
</setting>
<setting name="ShowWarningsAfterLoading" serializeAs="String">
<value>False</value>
</setting>
<setting name="EraseDuplicateChannels" serializeAs="String">
<value>True</value>
</setting>
</ChanSort.Ui.Properties.Settings>
<GUI.Properties.Settings>
<setting name="InputTLL" serializeAs="String">

View File

@@ -1,23 +1,12 @@
Version v2013-04-21 =======================================================
Version v2013-04-28 =======================================================
This is a maintenance release based on version v2013-04-05, which brought a
refurbished user interface and fixes for various usability issues.
- Fix: Encryption flag for Samsung analog and DVB-C/T lists now shown
correctly
- Added "Remove channels" function to right list. E.g. you can use this to
search and select encrypted channels in the right list and remove them
(from the sorted list).
- Text editor for channel number or name now only opens after holding the
left mouse button down for at least 0.5sec. This prevents it from opening
when you double-click a channel.
- Added "Edit channel name" function to menus (due to the editor no longer
opening automatically after a short click on the name)
- Warnings and information about TV file content are no longer shown when
opening the file. It can be viewed by using the
"File / Show file information" menu item.
- Added experimental loader for Panasonic TV files. Saving is not
supported yet!
Changes:
- Added support for LG's 2013 LA-series DVB-S channel lists.
Due to a lack of test files containing analog or DVB-C/T channels, these
lists are not supported yet. If you have a TLL file with such channels
please send it to horst@beham.biz.
- Improved clean-up of LG channel lists with duplicate channels
- Fixed: Sorting and column layout is now preserved when switching lists
The complete change log can be found at the end of this document
@@ -115,6 +104,9 @@ OTHER DEALINGS IN THE SOFTWARE.
Change log ================================================================
2013-04-27
- Added support for LG's 2013 LA-series (DVB-S only)
2013-04-21
- Fix: Encryption flag for Samsung analog and DVB-C/T lists now shown
correctly