mirror of
https://github.com/PredatH0r/ChanSort.git
synced 2026-02-20 05:16:45 +01:00
- rewrote LG data file cleanup. Now it complete rewrites the DVB-S channel information
- fixed opening editor when typing on keyboard - persisting more user settings
This commit is contained in:
@@ -9,6 +9,7 @@ namespace ChanSort.Api
|
||||
public bool EraseChannelData { get; set; }
|
||||
public bool ChannelNameEdit { get; set; }
|
||||
public bool FileInformation { get; set; }
|
||||
public bool CleanUpChannelData { get; set; }
|
||||
|
||||
public bool DeviceSettings { get; set; }
|
||||
}
|
||||
@@ -43,5 +44,7 @@ namespace ChanSort.Api
|
||||
public virtual string GetFileInformation() { return ""; }
|
||||
|
||||
public virtual void ShowDeviceSettingsForm(object parentWindow) { }
|
||||
|
||||
public virtual string CleanUpChannelData() { return ""; }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -127,5 +127,21 @@ namespace ChanSort.Api
|
||||
return this.channels.Where(c => c.NewProgramNr == newProgNr).ToList();
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region RemoveChannel()
|
||||
public void RemoveChannel(ChannelInfo channel)
|
||||
{
|
||||
this.channels.Remove(channel);
|
||||
var list = this.channelByUid.TryGet(channel.Uid);
|
||||
if (list != null && list.Contains(channel))
|
||||
list.Remove(channel);
|
||||
list = this.channelByName.TryGet(channel.Name);
|
||||
if (list != null && list.Contains(channel))
|
||||
list.Remove(channel);
|
||||
var chan = this.channelByProgNr.TryGet(channel.OldProgramNr);
|
||||
if (ReferenceEquals(chan, channel))
|
||||
this.channelByProgNr.Remove(channel.OldProgramNr);
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
public Satellite Satellite { get; set; }
|
||||
public decimal FrequencyInMhz { get; set; }
|
||||
public int Number { get; set; }
|
||||
public int SymbolRate { get; set; }
|
||||
public virtual int SymbolRate { get; set; }
|
||||
public char Polarity { get; set; }
|
||||
public int OriginalNetworkId { get; set; }
|
||||
public int TransportStreamId { get; set; }
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace ChanSort.Api
|
||||
{
|
||||
@@ -38,5 +37,17 @@ namespace ChanSort.Api
|
||||
data[offset + 2] = (byte)(value >> 16);
|
||||
data[offset + 3] = (byte)(value >> 24);
|
||||
}
|
||||
|
||||
public static void MemCopy(byte[] source, int sourceIndex, byte[] dest, int destIndex, int count)
|
||||
{
|
||||
for (int i = 0; i < count; i++)
|
||||
dest[destIndex + i] = source[sourceIndex + i];
|
||||
}
|
||||
|
||||
public static void MemSet(byte[] data, int offset, byte value, int count)
|
||||
{
|
||||
for (int i = 0; i < count; i++)
|
||||
data[offset++] = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -208,6 +208,9 @@
|
||||
lnbLength = 52
|
||||
|
||||
[TransponderDataMapping:40]
|
||||
offFirstChannelIndex = 0
|
||||
offLastChannelIndex = 2
|
||||
offChannelCount = 4
|
||||
offTransponderIndex = 10
|
||||
offFrequency = 12
|
||||
offOriginalNetworkId = 18
|
||||
@@ -217,6 +220,9 @@
|
||||
symbolRateFactor = 1
|
||||
|
||||
[TransponderDataMapping:56]
|
||||
offFirstChannelIndex = 0
|
||||
offLastChannelIndex = 2
|
||||
offChannelCount = 4
|
||||
offTransponderIndex = 10
|
||||
offFrequency = 12
|
||||
offOriginalNetworkId = 22
|
||||
|
||||
@@ -42,6 +42,14 @@
|
||||
this.dvbsBlockTotalLength += len + 4;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// relative to start of DVBS-Block (including the intial 4 length bytes)
|
||||
/// </summary>
|
||||
public int TransponderTableOffset
|
||||
{
|
||||
get { return 4 + 4 + dvbsSubblockLength[0] + 4 + dvbsSubblockLength[1] + sizeOfTransponderBlockHeader; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// relative to start of DVBS-Block (including the intial 4 length bytes)
|
||||
/// </summary>
|
||||
@@ -68,5 +76,6 @@
|
||||
get { return SequenceTableOffset + dvbsMaxChannelCount*sizeOfChannelLinkedListEntry; }
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -22,6 +22,7 @@ namespace ChanSort.Loader.LG
|
||||
Transponder transponder = dataRoot.Transponder.TryGet(transponderIndex);
|
||||
Satellite sat = transponder.Satellite;
|
||||
|
||||
this.Transponder = transponder;
|
||||
this.Satellite = sat.Name;
|
||||
this.SatPosition = sat.OrbitalPosition;
|
||||
this.RecordOrder = order;
|
||||
|
||||
@@ -1,10 +1,15 @@
|
||||
using System.Globalization;
|
||||
#define SYMBOL_RATE_ROUNDING
|
||||
|
||||
using System.Globalization;
|
||||
using ChanSort.Api;
|
||||
|
||||
namespace ChanSort.Loader.LG
|
||||
{
|
||||
internal class SatTransponder
|
||||
internal class SatTransponder : Transponder
|
||||
{
|
||||
private const string _FirstChannelIndex = "offFirstChannelIndex";
|
||||
private const string _LastChannelIndex = "offLastChannelIndex";
|
||||
private const string _ChannelCount = "offChannelCount";
|
||||
private const string _Frequency = "offFrequency";
|
||||
private const string _OriginalNetworkId = "offOriginalNetworkId";
|
||||
private const string _TransportStreamId = "offTransportStreamId";
|
||||
@@ -15,30 +20,70 @@ namespace ChanSort.Loader.LG
|
||||
private readonly byte[] data;
|
||||
private readonly int offset;
|
||||
private int symbolRate;
|
||||
private int firstChannelIndex;
|
||||
private int lastChannelIndex;
|
||||
|
||||
public SatTransponder(DataMapping mapping)
|
||||
public SatTransponder(int index, DataMapping mapping, DataRoot dataRoot) : base(index)
|
||||
{
|
||||
this.mapping = mapping;
|
||||
this.data = mapping.Data;
|
||||
this.offset = mapping.BaseOffset;
|
||||
|
||||
this.Frequency = mapping.GetWord(_Frequency);
|
||||
this.firstChannelIndex = mapping.GetWord(_FirstChannelIndex);
|
||||
this.lastChannelIndex = mapping.GetWord(_LastChannelIndex);
|
||||
|
||||
this.FrequencyInMhz = mapping.GetWord(_Frequency);
|
||||
this.OriginalNetworkId = mapping.GetWord(_OriginalNetworkId);
|
||||
this.TransportStreamId = mapping.GetWord(_TransportStreamId);
|
||||
this.symbolRate = mapping.GetWord(_SymbolRate);
|
||||
this.symbolRate = mapping.GetWord(_SymbolRate) & 0x7FFF;
|
||||
|
||||
#if SYMBOL_RATE_ROUNDING
|
||||
if (this.symbolRate%100 >= 95)
|
||||
{
|
||||
this.symbolRate = (this.symbolRate/100 + 1)*100;
|
||||
mapping.SetWord(_SymbolRate, (mapping.GetWord(_SymbolRate) & 0x8000) + this.symbolRate);
|
||||
}
|
||||
#endif
|
||||
|
||||
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);
|
||||
this.Satellite = dataRoot.Satellites.TryGet(mapping.GetByte(_SatIndex)/2);
|
||||
}
|
||||
|
||||
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 FirstChannelIndex
|
||||
{
|
||||
get { return this.firstChannelIndex; }
|
||||
set
|
||||
{
|
||||
mapping.SetDataPtr(this.data, this.offset);
|
||||
mapping.SetWord(_FirstChannelIndex, value);
|
||||
this.firstChannelIndex = value;
|
||||
}
|
||||
}
|
||||
|
||||
public int SymbolRate
|
||||
public int LastChannelIndex
|
||||
{
|
||||
get { return lastChannelIndex; }
|
||||
set
|
||||
{
|
||||
mapping.SetDataPtr(this.data, this.offset);
|
||||
mapping.SetWord(_LastChannelIndex, value);
|
||||
this.lastChannelIndex = value;
|
||||
}
|
||||
}
|
||||
|
||||
public int ChannelCount
|
||||
{
|
||||
set
|
||||
{
|
||||
mapping.SetDataPtr(this.data, this.offset);
|
||||
mapping.SetWord(_ChannelCount, value);
|
||||
}
|
||||
}
|
||||
|
||||
public override int SymbolRate
|
||||
{
|
||||
get { return symbolRate; }
|
||||
set
|
||||
|
||||
@@ -30,7 +30,7 @@ namespace ChanSort.Loader.LG
|
||||
|
||||
protected readonly DataMapping mapping;
|
||||
protected readonly byte[] rawData;
|
||||
internal readonly int baseOffset;
|
||||
internal int baseOffset;
|
||||
|
||||
protected TllChannelBase(DataMapping data)
|
||||
{
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#define SYMBOL_RATE_ROUNDING
|
||||
//#define SYMBOL_RATE_ROUNDING
|
||||
//#define STORE_DVBS_CHANNELS_IN_DATABASE
|
||||
//#define TESTING_LM640T_HACK
|
||||
|
||||
@@ -73,6 +73,7 @@ namespace ChanSort.Loader.LG
|
||||
this.Features.EraseChannelData = true;
|
||||
this.Features.FileInformation = true;
|
||||
this.Features.DeviceSettings = true;
|
||||
this.Features.CleanUpChannelData = true;
|
||||
this.SupportedTvCountryCodes = new List<string>
|
||||
{
|
||||
"___ (None)", "AUT (Austria)", "BEL (Belgium)", "CHE (Switzerland)",
|
||||
@@ -138,6 +139,9 @@ namespace ChanSort.Loader.LG
|
||||
this.ReadDvbSBlock(ref off);
|
||||
this.ReadSettingsBlock(ref off);
|
||||
|
||||
if (this.EraseDuplicateChannels)
|
||||
this.CleanUpChannelData();
|
||||
|
||||
#if STORE_DVBS_CHANNELS_IN_DATABASE
|
||||
this.StoreToDatabase();
|
||||
#endif
|
||||
@@ -331,7 +335,7 @@ namespace ChanSort.Loader.LG
|
||||
this.dvbsChannelCount = header.ChannelCount;
|
||||
off += header.Size;
|
||||
off += satConfig.dvbsMaxChannelCount/8; // skip allocation bitmap
|
||||
this.ReadDvbsChannelLinkedList(ref off);
|
||||
this.ReadDvbsChannelLinkedList(header, ref off);
|
||||
|
||||
this.ReadDvbsChannels(ref off, header.LinkedListStartIndex);
|
||||
|
||||
@@ -379,24 +383,13 @@ namespace ChanSort.Loader.LG
|
||||
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)
|
||||
SatTransponder transponder = new SatTransponder(i, mapping, this.DataRoot);
|
||||
if (transponder.Satellite == null)
|
||||
continue;
|
||||
#if SYMBOL_RATE_ROUNDING
|
||||
ushort sr = (ushort)(data.SymbolRate & 0x7FFF);
|
||||
if (sr % 100 >= 95)
|
||||
data.SymbolRate = (ushort)((data.SymbolRate & 0x8000) | ((sr / 100 + 1) * 100));
|
||||
#endif
|
||||
|
||||
Transponder transponder = new Transponder(i);
|
||||
transponder.FrequencyInMhz = data.Frequency;
|
||||
transponder.OriginalNetworkId = data.OriginalNetworkId;
|
||||
transponder.TransportStreamId = data.TransportStreamId;
|
||||
transponder.SymbolRate = data.SymbolRate & 0x7FFF;
|
||||
if (data.SymbolRate == 11000)
|
||||
if (transponder.SymbolRate == 11000)
|
||||
this.isDvbsSymbolRateDiv2 = true;
|
||||
|
||||
var sat = this.DataRoot.Satellites.TryGet(data.SatIndex/2);
|
||||
var sat = transponder.Satellite;
|
||||
this.DataRoot.AddTransponder(sat, transponder);
|
||||
}
|
||||
|
||||
@@ -411,16 +404,16 @@ namespace ChanSort.Loader.LG
|
||||
#endregion
|
||||
|
||||
#region ReadDvbsChannelLinkedList()
|
||||
private void ReadDvbsChannelLinkedList(ref int off)
|
||||
private void ReadDvbsChannelLinkedList(SatChannelListHeader header, ref int off)
|
||||
{
|
||||
this.nextChannelIndex = new Dictionary<int, int>();
|
||||
for (int i = 0; i < satConfig.dvbsMaxChannelCount; i++)
|
||||
int index = header.LinkedListStartIndex;
|
||||
while (index != 0xFFFF)
|
||||
{
|
||||
int offEntry = off + i*satConfig.sizeOfChannelLinkedListEntry;
|
||||
int cur = BitConverter.ToUInt16(fileContent, offEntry + 4);
|
||||
if (cur != i)
|
||||
break;
|
||||
this.nextChannelIndex.Add(cur, BitConverter.ToUInt16(fileContent, offEntry + 2));
|
||||
int offEntry = off + index*satConfig.sizeOfChannelLinkedListEntry;
|
||||
int nextIndex = BitConverter.ToUInt16(fileContent, offEntry + 2);
|
||||
this.nextChannelIndex.Add(index, nextIndex);
|
||||
index = nextIndex;
|
||||
}
|
||||
off += satConfig.dvbsMaxChannelCount*satConfig.sizeOfChannelLinkedListEntry;
|
||||
}
|
||||
@@ -438,28 +431,29 @@ namespace ChanSort.Loader.LG
|
||||
SatChannel ci = new SatChannel(i, index, mapping, this.DataRoot);
|
||||
if (!ci.InUse)
|
||||
++this.deletedChannelsHard;
|
||||
else if (ci.IsDeleted)
|
||||
++this.deletedChannelsSoft;
|
||||
else
|
||||
{
|
||||
if (ci.IsDeleted)
|
||||
{
|
||||
ci.OldProgramNr = -1;
|
||||
ci.NewProgramNr = -1;
|
||||
++this.deletedChannelsSoft;
|
||||
}
|
||||
|
||||
var list = this.DataRoot.GetChannelList(ci.SignalSource);
|
||||
var dupes = list.GetChannelByUid(ci.Uid);
|
||||
if (dupes.Count == 0)
|
||||
{
|
||||
if (ci.OldProgramNr == 0)
|
||||
if (ci.OldProgramNr == 0 && !ci.IsDeleted)
|
||||
++this.dvbsChannelsAtPr0;
|
||||
this.DataRoot.AddChannel(list, ci);
|
||||
}
|
||||
else
|
||||
{
|
||||
// duplicate channels (ONID,TSID,SSID) cause the TV to randomly reorder channels and show wrong ones in the
|
||||
// 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();
|
||||
if (this.EraseDuplicateChannels)
|
||||
this.EraseDuplicateDvbsChannel(index, recordOffset, satConfig);
|
||||
++this.duplicateChannels;
|
||||
}
|
||||
this.DataRoot.AddChannel(list, ci);
|
||||
}
|
||||
|
||||
if (!this.nextChannelIndex.TryGetValue(index, out index) || index == -1)
|
||||
@@ -469,39 +463,6 @@ namespace ChanSort.Loader.LG
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region EraseDuplicateDvbsChannel()
|
||||
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
|
||||
|
||||
#region GetSatLocation()
|
||||
private string GetSatLocation(byte degree, byte fractionAndOrientation)
|
||||
{
|
||||
@@ -509,6 +470,7 @@ namespace ChanSort.Loader.LG
|
||||
}
|
||||
#endregion
|
||||
|
||||
// Test code for fixing broken DVB-S block of xxLM640T ==========
|
||||
|
||||
#region EraseDvbsBlock()
|
||||
|
||||
@@ -593,6 +555,163 @@ namespace ChanSort.Loader.LG
|
||||
}
|
||||
#endregion
|
||||
|
||||
// Sat channel list cleanup ==================
|
||||
|
||||
#region CleanUpChannelData()
|
||||
public override string CleanUpChannelData()
|
||||
{
|
||||
this.ResetChannelInformationInTransponderData();
|
||||
|
||||
byte[] sortedChannels = new byte[this.satConfig.dvbsMaxChannelCount*this.satConfig.dvbsChannelLength];
|
||||
|
||||
var channelsByTransponder =
|
||||
this.satTvChannels.Channels.Union(this.satRadioChannels.Channels).OrderBy(PhysicalChannelOrder).ToList();
|
||||
int prevChannelOrderId = -1;
|
||||
int prevTransponderIndex = -1;
|
||||
int channelCounter = 0;
|
||||
int removedCounter = 0;
|
||||
SatTransponder currentTransponder = null;
|
||||
foreach (var channel in channelsByTransponder)
|
||||
{
|
||||
SatChannel satChannel = channel as SatChannel;
|
||||
if (satChannel == null) // ignore proxy channels created by a reference list
|
||||
continue;
|
||||
RelocateChannelData(satChannel, ref prevChannelOrderId, sortedChannels, ref removedCounter,
|
||||
ref prevTransponderIndex, ref channelCounter, ref currentTransponder);
|
||||
}
|
||||
if (currentTransponder != null)
|
||||
{
|
||||
currentTransponder.LastChannelIndex = channelCounter - 1;
|
||||
currentTransponder.ChannelCount = channelCounter - currentTransponder.FirstChannelIndex;
|
||||
}
|
||||
|
||||
// copy temp data back to fileContent and clear remainder
|
||||
Tools.MemCopy(sortedChannels, 0,
|
||||
this.fileContent, this.dvbsBlockOffset + satConfig.ChannelListOffset,
|
||||
channelCounter*satConfig.dvbsChannelLength);
|
||||
Tools.MemSet(this.fileContent,
|
||||
this.dvbsBlockOffset + satConfig.ChannelListOffset + channelCounter*satConfig.dvbsChannelLength, 0xFF,
|
||||
(satConfig.dvbsMaxChannelCount - channelCounter)*satConfig.dvbsChannelLength);
|
||||
|
||||
UpdateChannelAllocationBitmap(channelCounter);
|
||||
UpdateChannelLinkedList(channelCounter);
|
||||
|
||||
return string.Format("{0} duplicate channels were detected and removed", removedCounter);
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region ResetChannelInformationInTransponderData()
|
||||
private void ResetChannelInformationInTransponderData()
|
||||
{
|
||||
foreach (SatTransponder transponder in this.DataRoot.Transponder.Values)
|
||||
{
|
||||
transponder.FirstChannelIndex = 0xFFFF;
|
||||
transponder.LastChannelIndex = 0xFFFF;
|
||||
transponder.ChannelCount = 0;
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region PhysicalChannelOrder()
|
||||
private int PhysicalChannelOrder(ChannelInfo channel)
|
||||
{
|
||||
return (channel.Transponder.Id << 16) + channel.ServiceId;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region RelocateChannelData()
|
||||
private void RelocateChannelData(SatChannel channel, ref int prevChannelOrderId,
|
||||
byte[] sortedChannels, ref int removed, ref int prevTransponderIndex, ref int counter,
|
||||
ref SatTransponder currentTransponder)
|
||||
{
|
||||
if (RemoveChannelIfDupe(channel, ref prevChannelOrderId, ref removed))
|
||||
return;
|
||||
|
||||
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);
|
||||
|
||||
channel.RecordIndex = counter++;
|
||||
channel.baseOffset = this.dvbsBlockOffset + satConfig.ChannelListOffset + channel.RecordIndex*satConfig.dvbsChannelLength;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region RemoveChannelIfDupe()
|
||||
private bool RemoveChannelIfDupe(SatChannel channel, ref int prevOrder, ref int removed)
|
||||
{
|
||||
int order = this.PhysicalChannelOrder(channel);
|
||||
if (order == prevOrder)
|
||||
{
|
||||
var list = this.DataRoot.GetChannelList(channel.SignalSource);
|
||||
list.RemoveChannel(channel);
|
||||
++removed;
|
||||
channel.NewProgramNr = -1;
|
||||
channel.OldProgramNr = -1;
|
||||
return true;
|
||||
}
|
||||
prevOrder = order;
|
||||
return false;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region UpdateChannelIndexInTransponderData()
|
||||
private void UpdateChannelIndexInTransponderData(SatChannel channel, ref int prevTransponderIndex, int counter,
|
||||
ref SatTransponder transponder)
|
||||
{
|
||||
if (channel.Transponder.Id == prevTransponderIndex)
|
||||
return;
|
||||
|
||||
if (transponder != null)
|
||||
{
|
||||
transponder.LastChannelIndex = counter - 1;
|
||||
transponder.ChannelCount = counter - transponder.FirstChannelIndex;
|
||||
}
|
||||
|
||||
transponder = (SatTransponder)channel.Transponder;
|
||||
transponder.FirstChannelIndex = counter;
|
||||
prevTransponderIndex = channel.Transponder.Id;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region UpdateChannelAllocationBitmap()
|
||||
private void UpdateChannelAllocationBitmap(int counter)
|
||||
{
|
||||
Tools.MemSet(fileContent, this.dvbsBlockOffset + satConfig.AllocationBitmapOffset, 0, satConfig.dvbsMaxChannelCount / 8);
|
||||
Tools.MemSet(fileContent, this.dvbsBlockOffset + satConfig.AllocationBitmapOffset, 0xFF, counter / 8);
|
||||
if (counter % 8 != 0)
|
||||
fileContent[this.dvbsBlockOffset + satConfig.AllocationBitmapOffset + counter / 8] = (byte)(0xFF >> (8 - counter % 8));
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region UpdateChannelLinkedList()
|
||||
private void UpdateChannelLinkedList(int counter)
|
||||
{
|
||||
var header = new SatChannelListHeader(this.fileContent, this.dvbsBlockOffset + satConfig.ChannelListHeaderOffset);
|
||||
header.LinkedListStartIndex = 0;
|
||||
header.LinkedListEndIndex1 = counter - 1;
|
||||
header.LinkedListEndIndex2 = counter - 1;
|
||||
header.ChannelCount = counter;
|
||||
|
||||
// update linked list
|
||||
var off = this.dvbsBlockOffset + satConfig.SequenceTableOffset;
|
||||
for (int i = 0; i < counter; i++)
|
||||
{
|
||||
Tools.SetInt16(this.fileContent, off + 0, i - 1);
|
||||
Tools.SetInt16(this.fileContent, off + 2, i + 1);
|
||||
Tools.SetInt16(this.fileContent, off + 4, i);
|
||||
off += satConfig.sizeOfChannelLinkedListEntry;
|
||||
}
|
||||
Tools.SetInt16(this.fileContent, off - satConfig.sizeOfChannelLinkedListEntry + 2, 0xFFFF);
|
||||
Tools.MemSet(fileContent, off, 0, (satConfig.dvbsMaxChannelCount - counter) * satConfig.sizeOfChannelLinkedListEntry);
|
||||
}
|
||||
#endregion
|
||||
|
||||
|
||||
// Saving ====================================
|
||||
|
||||
#region Save()
|
||||
public override void Save(string tvOutputFile)
|
||||
|
||||
208
ChanSort/MainForm.Designer.cs
generated
208
ChanSort/MainForm.Designer.cs
generated
@@ -132,8 +132,9 @@
|
||||
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.miAutoLoadRefList = new DevExpress.XtraBars.BarCheckItem();
|
||||
this.miEraseDuplicateChannels = new DevExpress.XtraBars.BarCheckItem();
|
||||
this.mnuHelp = new DevExpress.XtraBars.BarSubItem();
|
||||
this.miWiki = new DevExpress.XtraBars.BarButtonItem();
|
||||
this.miOpenWebsite = new DevExpress.XtraBars.BarButtonItem();
|
||||
@@ -144,6 +145,7 @@
|
||||
this.barDockControlRight = new DevExpress.XtraBars.BarDockControl();
|
||||
this.miMoveUp = new DevExpress.XtraBars.BarButtonItem();
|
||||
this.miMoveDown = new DevExpress.XtraBars.BarButtonItem();
|
||||
this.miCleanupChannels = new DevExpress.XtraBars.BarButtonItem();
|
||||
this.labelControl2 = new DevExpress.XtraEditors.LabelControl();
|
||||
this.txtSetSlot = new DevExpress.XtraEditors.ButtonEdit();
|
||||
this.labelControl11 = new DevExpress.XtraEditors.LabelControl();
|
||||
@@ -196,36 +198,25 @@
|
||||
//
|
||||
resources.ApplyResources(this.splitContainerControl1, "splitContainerControl1");
|
||||
this.splitContainerControl1.Name = "splitContainerControl1";
|
||||
resources.ApplyResources(this.splitContainerControl1.Panel1, "splitContainerControl1.Panel1");
|
||||
this.splitContainerControl1.Panel1.Controls.Add(this.grpOutputList);
|
||||
resources.ApplyResources(this.splitContainerControl1.Panel2, "splitContainerControl1.Panel2");
|
||||
resources.ApplyResources(this.splitContainerControl1.Panel1, "splitContainerControl1.Panel1");
|
||||
this.splitContainerControl1.Panel2.Controls.Add(this.grpInputList);
|
||||
resources.ApplyResources(this.splitContainerControl1.Panel2, "splitContainerControl1.Panel2");
|
||||
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
|
||||
//
|
||||
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");
|
||||
resources.ApplyResources(this.gridLeft, "gridLeft");
|
||||
this.gridLeft.MainView = this.gviewLeft;
|
||||
this.gridLeft.Name = "gridLeft";
|
||||
this.gridLeft.RepositoryItems.AddRange(new DevExpress.XtraEditors.Repository.RepositoryItem[] {
|
||||
@@ -240,11 +231,8 @@
|
||||
//
|
||||
// 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,
|
||||
@@ -322,15 +310,8 @@
|
||||
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;
|
||||
@@ -358,7 +339,6 @@
|
||||
//
|
||||
// pnlEditControls
|
||||
//
|
||||
resources.ApplyResources(this.pnlEditControls, "pnlEditControls");
|
||||
this.pnlEditControls.Controls.Add(this.btnToggleLock);
|
||||
this.pnlEditControls.Controls.Add(this.btnToggleFavE);
|
||||
this.pnlEditControls.Controls.Add(this.btnToggleFavD);
|
||||
@@ -370,120 +350,108 @@
|
||||
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
|
||||
//
|
||||
resources.ApplyResources(this.btnToggleFavE, "btnToggleFavE");
|
||||
this.btnToggleFavE.ImageList = this.globalImageCollection1;
|
||||
resources.ApplyResources(this.btnToggleFavE, "btnToggleFavE");
|
||||
this.btnToggleFavE.Name = "btnToggleFavE";
|
||||
this.btnToggleFavE.Tag = "";
|
||||
this.btnToggleFavE.Click += new System.EventHandler(this.btnToggleFav_Click);
|
||||
//
|
||||
// btnToggleFavD
|
||||
//
|
||||
resources.ApplyResources(this.btnToggleFavD, "btnToggleFavD");
|
||||
this.btnToggleFavD.ImageList = this.globalImageCollection1;
|
||||
resources.ApplyResources(this.btnToggleFavD, "btnToggleFavD");
|
||||
this.btnToggleFavD.Name = "btnToggleFavD";
|
||||
this.btnToggleFavD.Click += new System.EventHandler(this.btnToggleFav_Click);
|
||||
//
|
||||
// btnToggleFavC
|
||||
//
|
||||
resources.ApplyResources(this.btnToggleFavC, "btnToggleFavC");
|
||||
this.btnToggleFavC.ImageList = this.globalImageCollection1;
|
||||
resources.ApplyResources(this.btnToggleFavC, "btnToggleFavC");
|
||||
this.btnToggleFavC.Name = "btnToggleFavC";
|
||||
this.btnToggleFavC.Click += new System.EventHandler(this.btnToggleFav_Click);
|
||||
//
|
||||
// btnToggleFavB
|
||||
//
|
||||
resources.ApplyResources(this.btnToggleFavB, "btnToggleFavB");
|
||||
this.btnToggleFavB.ImageList = this.globalImageCollection1;
|
||||
resources.ApplyResources(this.btnToggleFavB, "btnToggleFavB");
|
||||
this.btnToggleFavB.Name = "btnToggleFavB";
|
||||
this.btnToggleFavB.Click += new System.EventHandler(this.btnToggleFav_Click);
|
||||
//
|
||||
// btnToggleFavA
|
||||
//
|
||||
resources.ApplyResources(this.btnToggleFavA, "btnToggleFavA");
|
||||
this.btnToggleFavA.ImageList = this.globalImageCollection1;
|
||||
resources.ApplyResources(this.btnToggleFavA, "btnToggleFavA");
|
||||
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
|
||||
//
|
||||
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");
|
||||
resources.ApplyResources(this.gridRight, "gridRight");
|
||||
this.gridRight.MainView = this.gviewRight;
|
||||
this.gridRight.Name = "gridRight";
|
||||
this.gridRight.RepositoryItems.AddRange(new DevExpress.XtraEditors.Repository.RepositoryItem[] {
|
||||
@@ -494,11 +462,8 @@
|
||||
//
|
||||
// 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,
|
||||
@@ -603,15 +568,8 @@
|
||||
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;
|
||||
@@ -690,10 +648,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
|
||||
//
|
||||
@@ -753,7 +711,6 @@
|
||||
//
|
||||
// colDebug
|
||||
//
|
||||
resources.ApplyResources(this.colDebug, "colDebug");
|
||||
this.colDebug.FieldName = "Debug";
|
||||
this.colDebug.Name = "colDebug";
|
||||
this.colDebug.OptionsColumn.AllowEdit = false;
|
||||
@@ -780,18 +737,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);
|
||||
//
|
||||
@@ -803,21 +760,19 @@
|
||||
//
|
||||
// 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);
|
||||
//
|
||||
@@ -879,8 +834,10 @@
|
||||
this.miOpenWebsite,
|
||||
this.miWiki,
|
||||
this.miEraseDuplicateChannels,
|
||||
this.miShowWarningsAfterLoad});
|
||||
this.barManager1.MaxItemId = 55;
|
||||
this.miShowWarningsAfterLoad,
|
||||
this.miAutoLoadRefList,
|
||||
this.miCleanupChannels});
|
||||
this.barManager1.MaxItemId = 57;
|
||||
//
|
||||
// bar1
|
||||
//
|
||||
@@ -1210,8 +1167,9 @@
|
||||
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(this.miEraseDuplicateChannels),
|
||||
new DevExpress.XtraBars.LinkPersistInfo(this.miShowWarningsAfterLoad)});
|
||||
new DevExpress.XtraBars.LinkPersistInfo(this.miShowWarningsAfterLoad),
|
||||
new DevExpress.XtraBars.LinkPersistInfo(this.miAutoLoadRefList),
|
||||
new DevExpress.XtraBars.LinkPersistInfo(this.miEraseDuplicateChannels)});
|
||||
this.mnuOptions.Name = "mnuOptions";
|
||||
//
|
||||
// barSubItem1
|
||||
@@ -1228,8 +1186,8 @@
|
||||
//
|
||||
// miEnglish
|
||||
//
|
||||
resources.ApplyResources(this.miEnglish, "miEnglish");
|
||||
this.miEnglish.ButtonStyle = DevExpress.XtraBars.BarButtonStyle.Check;
|
||||
resources.ApplyResources(this.miEnglish, "miEnglish");
|
||||
this.miEnglish.CategoryGuid = new System.Guid("870e935c-f3d9-4202-9c58-87966069155d");
|
||||
this.miEnglish.Id = 2;
|
||||
this.miEnglish.ImageIndex = 0;
|
||||
@@ -1239,8 +1197,8 @@
|
||||
//
|
||||
// miGerman
|
||||
//
|
||||
resources.ApplyResources(this.miGerman, "miGerman");
|
||||
this.miGerman.ButtonStyle = DevExpress.XtraBars.BarButtonStyle.Check;
|
||||
resources.ApplyResources(this.miGerman, "miGerman");
|
||||
this.miGerman.CategoryGuid = new System.Guid("870e935c-f3d9-4202-9c58-87966069155d");
|
||||
this.miGerman.Id = 1;
|
||||
this.miGerman.ImageIndex = 1;
|
||||
@@ -1278,6 +1236,19 @@
|
||||
this.miIsoCharSets.ShowNumbers = true;
|
||||
this.miIsoCharSets.ListItemClick += new DevExpress.XtraBars.ListItemClickEventHandler(this.miIsoCharSets_ListItemClick);
|
||||
//
|
||||
// miShowWarningsAfterLoad
|
||||
//
|
||||
resources.ApplyResources(this.miShowWarningsAfterLoad, "miShowWarningsAfterLoad");
|
||||
this.miShowWarningsAfterLoad.Id = 54;
|
||||
this.miShowWarningsAfterLoad.Name = "miShowWarningsAfterLoad";
|
||||
//
|
||||
// miAutoLoadRefList
|
||||
//
|
||||
resources.ApplyResources(this.miAutoLoadRefList, "miAutoLoadRefList");
|
||||
this.miAutoLoadRefList.Checked = true;
|
||||
this.miAutoLoadRefList.Id = 55;
|
||||
this.miAutoLoadRefList.Name = "miAutoLoadRefList";
|
||||
//
|
||||
// miEraseDuplicateChannels
|
||||
//
|
||||
resources.ApplyResources(this.miEraseDuplicateChannels, "miEraseDuplicateChannels");
|
||||
@@ -1285,12 +1256,6 @@
|
||||
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");
|
||||
@@ -1327,31 +1292,23 @@
|
||||
//
|
||||
// barDockControlTop
|
||||
//
|
||||
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;
|
||||
resources.ApplyResources(this.barDockControlTop, "barDockControlTop");
|
||||
//
|
||||
// barDockControlBottom
|
||||
//
|
||||
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;
|
||||
resources.ApplyResources(this.barDockControlBottom, "barDockControlBottom");
|
||||
//
|
||||
// barDockControlLeft
|
||||
//
|
||||
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;
|
||||
resources.ApplyResources(this.barDockControlLeft, "barDockControlLeft");
|
||||
//
|
||||
// barDockControlRight
|
||||
//
|
||||
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;
|
||||
resources.ApplyResources(this.barDockControlRight, "barDockControlRight");
|
||||
//
|
||||
// miMoveUp
|
||||
//
|
||||
@@ -1371,6 +1328,13 @@
|
||||
this.miMoveDown.Name = "miMoveDown";
|
||||
this.miMoveDown.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.miMoveDown_ItemClick);
|
||||
//
|
||||
// miCleanupChannels
|
||||
//
|
||||
resources.ApplyResources(this.miCleanupChannels, "miCleanupChannels");
|
||||
this.miCleanupChannels.Id = 56;
|
||||
this.miCleanupChannels.Name = "miCleanupChannels";
|
||||
this.miCleanupChannels.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.miCleanupChannels_ItemClick);
|
||||
//
|
||||
// labelControl2
|
||||
//
|
||||
resources.ApplyResources(this.labelControl2, "labelControl2");
|
||||
@@ -1380,22 +1344,10 @@
|
||||
//
|
||||
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);
|
||||
@@ -1411,11 +1363,7 @@
|
||||
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;
|
||||
@@ -1427,7 +1375,6 @@
|
||||
//
|
||||
// grpTopPanel
|
||||
//
|
||||
resources.ApplyResources(this.grpTopPanel, "grpTopPanel");
|
||||
this.grpTopPanel.Controls.Add(this.rbInsertSwap);
|
||||
this.grpTopPanel.Controls.Add(this.rbInsertAfter);
|
||||
this.grpTopPanel.Controls.Add(this.rbInsertBefore);
|
||||
@@ -1438,6 +1385,7 @@
|
||||
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;
|
||||
//
|
||||
@@ -1446,18 +1394,10 @@
|
||||
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;
|
||||
@@ -1468,14 +1408,8 @@
|
||||
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);
|
||||
//
|
||||
@@ -1484,14 +1418,8 @@
|
||||
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);
|
||||
@@ -1501,26 +1429,14 @@
|
||||
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
|
||||
//
|
||||
@@ -1533,8 +1449,8 @@
|
||||
//
|
||||
// pageEmpty
|
||||
//
|
||||
resources.ApplyResources(this.pageEmpty, "pageEmpty");
|
||||
this.pageEmpty.Name = "pageEmpty";
|
||||
resources.ApplyResources(this.pageEmpty, "pageEmpty");
|
||||
//
|
||||
// mnuContext
|
||||
//
|
||||
@@ -1744,6 +1660,8 @@
|
||||
private DevExpress.XtraBars.BarButtonItem miRenameChannel;
|
||||
private DevExpress.XtraBars.BarCheckItem miEraseDuplicateChannels;
|
||||
private DevExpress.XtraBars.BarCheckItem miShowWarningsAfterLoad;
|
||||
private DevExpress.XtraBars.BarCheckItem miAutoLoadRefList;
|
||||
private DevExpress.XtraBars.BarButtonItem miCleanupChannels;
|
||||
private DevExpress.XtraSplashScreen.SplashScreenManager splashScreenManager1;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,7 +23,7 @@ namespace ChanSort.Ui
|
||||
{
|
||||
public partial class MainForm : XtraForm
|
||||
{
|
||||
public const string AppVersion = "v2013-04-28a";
|
||||
public const string AppVersion = "v2013-04-29";
|
||||
|
||||
#region enum EditMode
|
||||
private enum EditMode
|
||||
@@ -208,7 +208,7 @@ namespace ChanSort.Ui
|
||||
this.currentTvSerializer.DefaultEncoding = this.defaultEncoding;
|
||||
this.miEraseChannelData.Enabled = newSerializer.Features.EraseChannelData;
|
||||
if (!this.LoadTvDataFile())
|
||||
return;
|
||||
return;
|
||||
this.LoadCsvFile();
|
||||
|
||||
this.editor = new Editor();
|
||||
@@ -357,7 +357,7 @@ namespace ChanSort.Ui
|
||||
#region LoadCsvFile()
|
||||
private void LoadCsvFile()
|
||||
{
|
||||
if (File.Exists(this.currentCsvFile))
|
||||
if (File.Exists(this.currentCsvFile) && this.miAutoLoadRefList.Checked)
|
||||
{
|
||||
var csvSerializer = new CsvFileSerializer(this.currentCsvFile, this.dataRoot);
|
||||
csvSerializer.Load();
|
||||
@@ -747,7 +747,9 @@ namespace ChanSort.Ui
|
||||
|
||||
this.miEraseDuplicateChannels.Checked = Settings.Default.EraseDuplicateChannels;
|
||||
this.miShowWarningsAfterLoad.Checked = Settings.Default.ShowWarningsAfterLoading;
|
||||
|
||||
this.miAutoLoadRefList.Checked = Settings.Default.AutoLoadRefList;
|
||||
this.cbAppendUnsortedChannels.Checked = Settings.Default.AutoAppendUnsortedChannels;
|
||||
this.cbCloseGap.Checked = Settings.Default.CloseGaps;
|
||||
this.ClearLeftFilter();
|
||||
}
|
||||
#endregion
|
||||
@@ -812,7 +814,9 @@ namespace ChanSort.Ui
|
||||
SaveInputGridLayout(this.currentChannelList.SignalSource);
|
||||
Settings.Default.EraseDuplicateChannels = this.miEraseDuplicateChannels.Checked;
|
||||
Settings.Default.ShowWarningsAfterLoading = this.miShowWarningsAfterLoad.Checked;
|
||||
|
||||
Settings.Default.AutoLoadRefList = this.miAutoLoadRefList.Checked;
|
||||
Settings.Default.AutoAppendUnsortedChannels = this.cbAppendUnsortedChannels.Checked;
|
||||
Settings.Default.CloseGaps = this.cbCloseGap.Checked;
|
||||
Settings.Default.Save();
|
||||
}
|
||||
|
||||
@@ -1051,6 +1055,8 @@ namespace ChanSort.Ui
|
||||
this.miMoveUp.Enabled = channel != null && channel.NewProgramNr > 1;
|
||||
|
||||
this.miTvSettings.Enabled = this.currentTvSerializer != null;
|
||||
this.miCleanupChannels.Visibility = this.currentTvSerializer != null &&
|
||||
this.currentTvSerializer.Features.CleanUpChannelData ? BarItemVisibility.Always : BarItemVisibility.Never;
|
||||
}
|
||||
#endregion
|
||||
|
||||
@@ -1173,6 +1179,19 @@ namespace ChanSort.Ui
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region CleanupChannelData()
|
||||
private void CleanupChannelData()
|
||||
{
|
||||
if (this.currentTvSerializer != null && this.currentTvSerializer.Features.CleanUpChannelData)
|
||||
{
|
||||
var msg = this.currentTvSerializer.CleanUpChannelData();
|
||||
this.FillChannelListCombo();
|
||||
InfoBox.Show(this, msg, this.miCleanupChannels.Caption);
|
||||
this.RefreshGrid(gviewLeft, gviewRight);
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
// UI events
|
||||
|
||||
#region MainForm_Load
|
||||
@@ -1363,6 +1382,11 @@ namespace ChanSort.Ui
|
||||
});
|
||||
}
|
||||
|
||||
private void miCleanupChannels_ItemClick(object sender, ItemClickEventArgs e)
|
||||
{
|
||||
this.TryExecute(this.CleanupChannelData);
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region Character set menu
|
||||
@@ -1454,6 +1478,7 @@ namespace ChanSort.Ui
|
||||
private void gview_MouseUp(object sender, MouseEventArgs e)
|
||||
{
|
||||
this.timerEditDelay.Stop();
|
||||
this.BeginInvoke((Action) (() => { this.dontOpenEditor = false; }));
|
||||
}
|
||||
|
||||
private void timerEditDelay_Tick(object sender, EventArgs e)
|
||||
|
||||
@@ -117,50 +117,6 @@
|
||||
<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>
|
||||
@@ -173,34 +129,13 @@
|
||||
<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>
|
||||
@@ -294,11 +229,20 @@
|
||||
<data name="mnuCharset.Caption" xml:space="preserve">
|
||||
<value>&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>
|
||||
<value>Warnungen beim Laden anzeigen</value>
|
||||
</data>
|
||||
<data name="miShowWarningsAfterLoad.Hint" xml:space="preserve">
|
||||
<value>Eventuelle Warnungen nach dem Laden einer TV-Datei automatisch anzeigen</value>
|
||||
</data>
|
||||
<data name="miAutoLoadRefList.Caption" xml:space="preserve">
|
||||
<value>Referenzliste automatisch laden</value>
|
||||
</data>
|
||||
<data name="miEraseDuplicateChannels.Caption" xml:space="preserve">
|
||||
<value>TV-Datei automatisch bereinigen</value>
|
||||
</data>
|
||||
<data name="miEraseDuplicateChannels.Hint" xml:space="preserve">
|
||||
<value>Nicht verwendete Senderdaten beim Laden der Datei automatisch entfernen</value>
|
||||
</data>
|
||||
<data name="mnuHelp.Caption" xml:space="preserve">
|
||||
<value>&Hilfe</value>
|
||||
@@ -350,168 +294,36 @@
|
||||
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>
|
||||
@@ -521,54 +333,12 @@
|
||||
<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>
|
||||
@@ -584,45 +354,6 @@
|
||||
<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>
|
||||
@@ -644,27 +375,6 @@
|
||||
<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>
|
||||
@@ -713,12 +423,6 @@
|
||||
<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
36
ChanSort/Properties/Settings.Designer.cs
generated
36
ChanSort/Properties/Settings.Designer.cs
generated
@@ -286,5 +286,41 @@ namespace ChanSort.Ui.Properties {
|
||||
this["EraseDuplicateChannels"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("True")]
|
||||
public bool AutoLoadRefList {
|
||||
get {
|
||||
return ((bool)(this["AutoLoadRefList"]));
|
||||
}
|
||||
set {
|
||||
this["AutoLoadRefList"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("True")]
|
||||
public bool AutoAppendUnsortedChannels {
|
||||
get {
|
||||
return ((bool)(this["AutoAppendUnsortedChannels"]));
|
||||
}
|
||||
set {
|
||||
this["AutoAppendUnsortedChannels"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("True")]
|
||||
public bool CloseGaps {
|
||||
get {
|
||||
return ((bool)(this["CloseGaps"]));
|
||||
}
|
||||
set {
|
||||
this["CloseGaps"] = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -68,5 +68,14 @@
|
||||
<Setting Name="EraseDuplicateChannels" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">True</Value>
|
||||
</Setting>
|
||||
<Setting Name="AutoLoadRefList" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">True</Value>
|
||||
</Setting>
|
||||
<Setting Name="AutoAppendUnsortedChannels" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">True</Value>
|
||||
</Setting>
|
||||
<Setting Name="CloseGaps" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">True</Value>
|
||||
</Setting>
|
||||
</Settings>
|
||||
</SettingsFile>
|
||||
@@ -74,6 +74,15 @@
|
||||
<setting name="EraseDuplicateChannels" serializeAs="String">
|
||||
<value>True</value>
|
||||
</setting>
|
||||
<setting name="AutoLoadRefList" serializeAs="String">
|
||||
<value>True</value>
|
||||
</setting>
|
||||
<setting name="AutoAppendUnsortedChannels" serializeAs="String">
|
||||
<value>True</value>
|
||||
</setting>
|
||||
<setting name="CloseGaps" serializeAs="String">
|
||||
<value>True</value>
|
||||
</setting>
|
||||
</ChanSort.Ui.Properties.Settings>
|
||||
<GUI.Properties.Settings>
|
||||
<setting name="InputTLL" serializeAs="String">
|
||||
|
||||
19
readme.txt
19
readme.txt
@@ -1,11 +1,14 @@
|
||||
Version v2013-04-28 =======================================================
|
||||
Version v2013-04-29a ======================================================
|
||||
|
||||
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
|
||||
- Improved clean-up of LG channel lists. This should solve problems with
|
||||
program numbers changing randomly or inability to change them at all.
|
||||
- Fixed: Program number and channel name can be edited again by directly
|
||||
typing the number or name on the keyboard.
|
||||
- Fixed: Sorting and column layout is now preserved when switching lists
|
||||
|
||||
The complete change log can be found at the end of this document
|
||||
@@ -104,8 +107,16 @@ OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
Change log ================================================================
|
||||
|
||||
2013-04-27
|
||||
- Added support for LG's 2013 LA-series (DVB-S only)
|
||||
2013-04-29a (inofficial alpha)
|
||||
- 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. This should solve problems with
|
||||
program numbers changing randomly or inability to change them at all.
|
||||
- Fixed: Program number and channel name can be edited again by directly
|
||||
typing the number or name on the keyboard.
|
||||
- Fixed: Sorting and column layout is now preserved when switching lists
|
||||
|
||||
2013-04-21
|
||||
- Fix: Encryption flag for Samsung analog and DVB-C/T lists now shown
|
||||
|
||||
Reference in New Issue
Block a user