- improved per-monitor DPI scaling (i.e. moving the window from a Full-HD to a 4K display with 100% and 200% scale)

- improved "column auto width" (right clicking a column header) by forcing line breaks in the column captions
- Philips: improved and re-enabled favorite list editing for FLASH\_\*/\*.db lists
- Panasonic: fixed display of symbol ra
This commit is contained in:
Horst Beham
2021-09-23 14:58:42 +02:00
parent 063ed165d2
commit 4df90ca7bf
21 changed files with 3325 additions and 4382 deletions

View File

@@ -40,9 +40,10 @@ namespace ChanSort.Loader.Panasonic
this.SignalSource |= SignalSource.SatIP;
byte[] buffer = new byte[1000];
int len = 0;
if (!r.IsDBNull(field["delivery"]))
{
var len = r.GetBytes(field["delivery"], 0, buffer, 0, 1000);
len = (int)r.GetBytes(field["delivery"], 0, buffer, 0, 1000);
this.AddDebug(buffer, 0, (int) len);
}
@@ -55,7 +56,7 @@ namespace ChanSort.Loader.Panasonic
if (ntype == 10 || ntype == 14)
this.ReadAnalogData(r, field);
else
this.ReadDvbData(r, field, dataRoot, buffer);
this.ReadDvbData(r, field, dataRoot, buffer, len);
}
#endregion
@@ -84,7 +85,7 @@ namespace ChanSort.Loader.Panasonic
#endregion
#region ReadDvbData()
protected void ReadDvbData(IDataReader r, IDictionary<string, int> field, DataRoot dataRoot, byte[] delivery)
protected void ReadDvbData(IDataReader r, IDictionary<string, int> field, DataRoot dataRoot, byte[] delivery, int deliveryLength)
{
int stype = r.GetInt32(field["stype"]);
this.SignalSource |= LookupData.Instance.IsRadioTvOrData(stype);
@@ -96,18 +97,37 @@ namespace ChanSort.Loader.Panasonic
// ReSharper disable PossibleLossOfFraction
this.FreqInMhz = freq/10;
// ReSharper restore PossibleLossOfFraction
int satId = r.GetInt32(field["physical_ch"]) >> 12;
var sat = dataRoot.Satellites.TryGet(satId);
if (sat != null)
if (deliveryLength == 17) // files of this version also include an additional "cicam_identifier" column
{
this.Satellite = sat.Name;
this.SatPosition = sat.OrbitalPosition;
// 50 94 14 01 90 99 21 00 22 31 92 01 00 00 00 00 00
this.SymbolRate = (delivery[6] >> 4) * 10000 + (delivery[6] & 0x0F) * 1000 +
(delivery[5] >> 4) * 100 + (delivery[5] & 0x0F) * 10;
this.SatPosition = ((decimal)((delivery[11] >> 4) * 1000 + (delivery[11] & 0x0F) * 100 +
(delivery[10] >> 4) * 10 + (delivery[10] & 0x0F)) / 10).ToString("n1"); // 92 01 => 19.2
this.Satellite = this.SatPosition;
}
if (delivery.Length >= 7)
else if (deliveryLength == 15)
{
this.SymbolRate = (delivery[5] >> 4)*10000 + (delivery[5] & 0x0F)*1000 +
(delivery[6] >> 4)*100 + (delivery[6] & 0x0F)*10;
// 01 14 92 99 00 21 99 90 02 31 01 92 00 00 00
this.SymbolRate = (delivery[5] >> 4) * 10000 + (delivery[5] & 0x0F) * 1000 +
(delivery[6] >> 4) * 100 + (delivery[6] & 0x0F) * 10;
this.SatPosition = ((decimal)((delivery[10] >> 4) * 1000 + (delivery[10] & 0x0F) * 100 + (delivery[11] >> 4) * 10 +
(delivery[11] & 0x0F)) / 10).ToString("n1"); // 01 92 => 19.2
this.Satellite = this.SatPosition;
}
else
{
int satId = r.GetInt32(field["physical_ch"]) >> 12;
var sat = dataRoot.Satellites.TryGet(satId);
if (sat != null)
{
this.Satellite = sat.Name;
this.SatPosition = sat.OrbitalPosition;
}
}
this.Source = "DVB-S";
}
else
{
@@ -116,7 +136,7 @@ namespace ChanSort.Loader.Panasonic
this.ChannelOrTransponder = (this.SignalSource & SignalSource.Antenna) != 0 ?
LookupData.Instance.GetDvbtTransponder(freq).ToString() :
LookupData.Instance.GetDvbcTransponder(freq).ToString();
this.Satellite = (this.SignalSource & SignalSource.Antenna) != 0 ? "DVB-T" : "DVB-C";
this.Source = (this.SignalSource & SignalSource.Antenna) != 0 ? "DVB-T" : "DVB-C";
}
this.OriginalNetworkId = r.GetInt32(field["onid"]);

View File

@@ -61,11 +61,15 @@ channelBlockSize=0x3C
[mgr.db_entry:472]
offProgNr=0
offFav=16
offFav=16,436
offName=20
lenName=200
offProvider=224
lenProvider=200
offFavFlags1=428
maskFavFlags1=0x01
offFavFlags2=430
maskFavFlags2=0x08
offFreq=440
offOldProgNr=448
offRecordIndex=456
@@ -76,9 +80,13 @@ offOnid=466
[mgr.db_entry:476]
offProgNr=0
offFav=16
offFav=16,436
offName=20
lenName=200
offFavFlags1=428
maskFavFlags1=0x01
offFavFlags2=430
maskFavFlags2=0x08
offFreq=444,468
offSymbolRate=450
offOldProgNr=452
@@ -89,9 +97,13 @@ offOnid=466
[mgr.db_entry:480]
offProgNr=0
offFav=16
offFav=16,436
offName=20
lenName=200
offFavFlags1=428
maskFavFlags1=0x01
offFavFlags2=430
maskFavFlags2=0x08
offFreq=444,468
offSymbolRate=450
offOldProgNr=452

View File

@@ -50,8 +50,8 @@ namespace ChanSort.Loader.Philips
#region ctor()
public DbSerializer(string inputFile) : base(inputFile)
{
this.Features.MaxFavoriteLists = 0; //1;
this.Features.FavoritesMode = FavoritesMode.None; // FavoritesMode.OrderedPerSource; // doesn't work yet, must be hidden somewhere inside the FLASH files too
this.Features.MaxFavoriteLists = 1;
this.Features.FavoritesMode = FavoritesMode.OrderedPerSource; // doesn't work yet, must be hidden somewhere inside the FLASH files too
this.Features.DeleteMode = DeleteMode.NotSupported;
this.Features.CanHaveGaps = true; // the mgr_chan_s_pkg can have gaps
@@ -237,6 +237,10 @@ namespace ChanSort.Loader.Philips
ch.TransportStreamId = mapping.GetWord("offTsid");
ch.OriginalNetworkId = mapping.GetWord("offOnid");
ch.ServiceId = mapping.GetWord("offSid");
ch.AddDebug(mapping.GetByte("offFavFlags1"));
ch.AddDebug(mapping.GetByte("offFavFlags2"));
this.DataRoot.AddChannel(list, ch);
}
@@ -406,6 +410,7 @@ namespace ChanSort.Loader.Philips
var ch = (Channel)channelList.Channels[idMapping.ChannelIndex];
ch.FlashFileOffset = mapping.BaseOffset;
ch.AddDebug($"{ch.FlashFileOffset:x5}:{block}.{i:d3}");
var hasDiff = false;
var sid = mapping.GetWord("sid");
var progNr = (mapping.GetWord("progNr") & 0x3FFF);
@@ -513,11 +518,14 @@ namespace ChanSort.Loader.Philips
continue;
var newOff = lenHeader + newIndex * lenEntry;
Array.Copy(oldData, lenHeader + (int)ch.RecordIndex * lenEntry, newData, newOff, lenEntry);
var favPos = Math.Max(0, ch.GetPosition(1));
mapping.SetDataPtr(newData, newOff);
mapping.SetWord("offProgNr", ch.NewProgramNr);
mapping.SetWord("offFav", Math.Max(0, ch.GetPosition(1)));
mapping.SetWord("offFav", favPos);
mapping.SetWord("offOldProgNr", ch.NewProgramNr);
mapping.SetWord("offRecordIndex", newIndex);
mapping.SetFlag("FavFlags1", favPos > 0);
mapping.SetFlag("FavFlags2", favPos > 0);
//ch.RecordIndex = newIndex; // will be updated when saving the FLASH file
++newIndex;
}

View File

@@ -49,16 +49,17 @@ namespace ChanSort.Ui
private void AddAction(string text, object result, Image image = null, bool isDefault = false)
{
int width = this.ClientSize.Width-20;
int scaled20 = this.ScaleHelper.ScaleHorizontal(20);
int width = this.ClientSize.Width - scaled20;
var button = new SimpleButton();
button.Text = text;
button.Appearance.TextOptions.HAlignment = HorzAlignment.Near;
button.Image = image;
button.Width = width;
button.Left = 10;
button.Height = ButtonHeight;
button.Left = scaled20 / 2;
button.Height = this.ScaleHelper.ScaleVertical(ButtonHeight);
button.Anchor = AnchorStyles.Left | AnchorStyles.Top | AnchorStyles.Right;
button.Padding = new Padding(20,button.Padding.Top, 20, button.Padding.Bottom);
button.Padding = new Padding(scaled20, button.Padding.Top, scaled20, button.Padding.Bottom);
button.Tag = result;
button.Click += button_Click;
@@ -93,17 +94,18 @@ namespace ChanSort.Ui
protected override void OnCreateControl()
{
base.OnCreateControl();
int top = this.lblMessage.Bottom + 20;
int top = this.lblMessage.Bottom + this.ScaleHelper.ScaleVertical(20);
var spacing = this.ScaleHelper.ScaleVertical(ButtonSpacing);
foreach (Control c in this.Controls)
{
var button = c as SimpleButton;
if (button != null)
{
button.Top = top;
top += button.Height + ButtonSpacing;
top += button.Height + spacing;
}
}
this.ClientSize = new Size(this.ClientSize.Width, top + 10);
this.ClientSize = new Size(this.ClientSize.Width, top + this.ScaleHelper.ScaleVertical(10));
this.ActiveControl = this.lblMessage;
}
#endregion

File diff suppressed because it is too large Load Diff

View File

@@ -56,6 +56,7 @@ namespace ChanSort.Ui
private SizeF absScaleFactor = new (1,1);
private bool splitView = true;
private int ignoreEvents;
private bool adjustWindowLocationOnScale = true;
#region ctor()
@@ -118,8 +119,13 @@ namespace ChanSort.Ui
{
if (col.Visible)
defaultColumns.Add(col.FieldName);
col.Caption = col.Caption.Replace("\\n", "\n");
}
ChannelList.DefaultVisibleColumns = defaultColumns;
foreach (GridColumn col in this.gviewLeft.Columns)
col.Caption = col.Caption.Replace("\\n", "\n");
this.UpdateMenu(true); // disable menu items that depend on an open file
}
#endregion
@@ -1434,6 +1440,7 @@ namespace ChanSort.Ui
this.miAutoHideColumns.Down = Config.Default.AutoHideColumns;
this.miSplitView.Down = Config.Default.SplitView;
this.miLoadListAfterStart.Down = Config.Default.LoadLastListAfterStart;
this.adjustWindowLocationOnScale = false;
}
#endregion
@@ -2143,11 +2150,15 @@ namespace ChanSort.Ui
protected override void ScaleControl(SizeF factor, BoundsSpecified specified)
{
var oldSize = this.ClientSize;
this.absScaleFactor = absScaleFactor.Scale(factor);
this.SuspendRedraw();
base.ScaleControl(factor, specified);
this.bar1.Visible = false;
GlobalImageCollection.Scale(absScaleFactor.Height, false);
var newSize = this.ClientSize;
if (this.adjustWindowLocationOnScale) // adjust WindowStartPosition "CenterScreen" to new window size
this.Location = new Point(this.Left - (newSize.Width - oldSize.Width) / 2, this.Top - (newSize.Height - oldSize.Height) / 2);
this.bar1.Visible = true;
this.ResumeRedraw();
}
@@ -3736,6 +3747,5 @@ namespace ChanSort.Ui
}
#endregion
}
}

View File

@@ -234,11 +234,8 @@
<data name="cbCloseGap.ToolTip" xml:space="preserve">
<value>Po aktivaci budou všechny kanály za aktuálním kanálem automaticky přečíslovány</value>
</data>
<data name="colAudioPid.Caption" xml:space="preserve">
<value>Audio PID</value>
</data>
<data name="colChannelOrTransponder.Caption" xml:space="preserve">
<value>Chan/ Transp</value>
<value>Chan/\nTransp</value>
</data>
<data name="colChannelOrTransponder.ToolTip" xml:space="preserve">
<value>Číslo kanálu nebo transpondéru</value>
@@ -253,7 +250,7 @@
<value>Oblíbené</value>
</data>
<data name="colFreqInMhz.Caption" xml:space="preserve">
<value>Frekvence (MHz)</value>
<value>Frekvence\n(MHz)</value>
</data>
<data name="colHidden.Caption" xml:space="preserve">
<value>Skrýt</value>
@@ -274,13 +271,13 @@
<value>Název kanálu</value>
</data>
<data name="colNetworkId.Caption" xml:space="preserve">
<value>Síť (ONID)</value>
<value>Síť \n(ONID)</value>
</data>
<data name="colNetworkName.Caption" xml:space="preserve">
<value>Název sítě</value>
<value>Název\nsítě</value>
</data>
<data name="colNetworkOperator.Caption" xml:space="preserve">
<value>Provozovatel sítě</value>
<value>Provozovatel\nsítě</value>
</data>
<data name="colOutFav.Caption" xml:space="preserve">
<value>Oblíbené</value>
@@ -292,19 +289,19 @@
<value>Uzamknout</value>
</data>
<data name="colOutLock.ToolTip" xml:space="preserve">
<value>Rodičovský zámek</value>
<value>Rodičovský\nzámek</value>
</data>
<data name="colOutName.Caption" xml:space="preserve">
<value>Název kanálu</value>
</data>
<data name="colOutServiceType.Caption" xml:space="preserve">
<value>Typ služby</value>
<value>Typ\nslužby</value>
</data>
<data name="colOutSkip.Caption" xml:space="preserve">
<value>Přeskočit</value>
</data>
<data name="colOutSlot.Caption" xml:space="preserve">
<value>Nové č. pr.</value>
<value>Nové\nč. pr.</value>
</data>
<data name="colOutSlot.ToolTip" xml:space="preserve">
<value>Nové číslo programu</value>
@@ -319,37 +316,37 @@
<value>Satelit</value>
</data>
<data name="colServiceId.Caption" xml:space="preserve">
<value>ID služby</value>
<value>ID\nslužby</value>
</data>
<data name="colServiceType.Caption" xml:space="preserve">
<value>ID typu služby</value>
<value>ID typu\nslužby</value>
</data>
<data name="colServiceTypeName.Caption" xml:space="preserve">
<value>Typ služby</value>
<value>Typ\nslužby</value>
</data>
<data name="colShortName.Caption" xml:space="preserve">
<value>Zkrácený název</value>
<value>Zkrácený\nnázev</value>
</data>
<data name="colSignalSource.Caption" xml:space="preserve">
<value>Zdroj signálu</value>
<value>Zdroj\nsignálu</value>
</data>
<data name="colSkip.Caption" xml:space="preserve">
<value>Přeskočit</value>
</data>
<data name="colSlotNew.Caption" xml:space="preserve">
<value>Nové č. pr.</value>
<value>Nové\nč. pr.</value>
</data>
<data name="colSlotNew.ToolTip" xml:space="preserve">
<value>Nové číslo programu</value>
</data>
<data name="colSlotOld.Caption" xml:space="preserve">
<value>Staré č. pr.</value>
<value>Staré\nč. pr.</value>
</data>
<data name="colSlotOld.ToolTip" xml:space="preserve">
<value>Staré číslo programu</value>
</data>
<data name="colSymbolRate.Caption" xml:space="preserve">
<value>Modulační rychlost</value>
<value>Modulační\nrychlost</value>
</data>
<data name="colTransportStreamId.Caption" xml:space="preserve">
<value>TS ID</value>
@@ -364,7 +361,7 @@
<value>UID</value>
</data>
<data name="colVideoPid.Caption" xml:space="preserve">
<value>Video PID</value>
<value>Video\nPID</value>
</data>
<data name="grpInputList.Text" xml:space="preserve">
<value>Původní kanály</value>
@@ -609,4 +606,7 @@
<data name="miTheme.Caption" xml:space="preserve">
<value>Barevné schéma...</value>
</data>
<data name="colAudioPid.Caption" xml:space="preserve">
<value>Audio\nPID</value>
</data>
</root>

View File

@@ -162,7 +162,7 @@
<value>Pr. Index</value>
</data>
<data name="colOutSlot.Caption" xml:space="preserve">
<value>Neue Pos</value>
<value>Neue\nPos</value>
</data>
<data name="colOutSlot.ToolTip" xml:space="preserve">
<value>Neue Position</value>
@@ -174,22 +174,22 @@
<value>Favoriten</value>
</data>
<data name="colOutLock.Caption" xml:space="preserve">
<value>Ge- sperrt</value>
<value>Ge-\nsperrt</value>
</data>
<data name="colOutLock.ToolTip" xml:space="preserve">
<value>Kindersicherung</value>
<value>Kinder-\nsicherung</value>
</data>
<data name="colOutSkip.Caption" xml:space="preserve">
<value>Über- springen</value>
<value>Über-\nspringen</value>
</data>
<data name="colOutHide.Caption" xml:space="preserve">
<value>Ver- steckt</value>
<value>Ver-\nsteckt</value>
</data>
<data name="colOutDeleted.Caption" xml:space="preserve">
<value>Gelöscht</value>
</data>
<data name="colOutServiceType.Caption" xml:space="preserve">
<value>Service Typ</value>
<value>Service\nTyp</value>
</data>
<data name="colOutSource.Caption" xml:space="preserve">
<value>Eingang</value>
@@ -1303,13 +1303,13 @@
<value>Pr. Index</value>
</data>
<data name="colSlotOld.Caption" xml:space="preserve">
<value>Alte Pos</value>
<value>Alte\nPos</value>
</data>
<data name="colSlotOld.ToolTip" xml:space="preserve">
<value>Alte Position</value>
</data>
<data name="colSlotNew.Caption" xml:space="preserve">
<value>Neue Pos</value>
<value>Neue\nPos</value>
</data>
<data name="colSlotNew.ToolTip" xml:space="preserve">
<value>Neue Position</value>
@@ -1327,37 +1327,37 @@
<value>Favoriten</value>
</data>
<data name="colLock.Caption" xml:space="preserve">
<value>Ge- sperrt</value>
<value>Ge-\nsperrt</value>
</data>
<data name="colSkip.Caption" xml:space="preserve">
<value>Über- springen</value>
<value>Über-\nspringen</value>
</data>
<data name="colHidden.Caption" xml:space="preserve">
<value>Ver- steckt</value>
<value>Ver-\nsteckt</value>
</data>
<data name="colDeleted.Caption" xml:space="preserve">
<value>Gelöscht</value>
</data>
<data name="colEncrypted.Caption" xml:space="preserve">
<value>Ver- schlüss</value>
<value>Ver-\nschlüss</value>
</data>
<data name="colEncrypted.ToolTip" xml:space="preserve">
<value>Verschlüsselt</value>
</data>
<data name="colServiceType.Caption" xml:space="preserve">
<value>Service Typ ID</value>
<value>Service\nTyp ID</value>
</data>
<data name="colServiceTypeName.Caption" xml:space="preserve">
<value>Service Typ</value>
<value>Service\nTyp</value>
</data>
<data name="colFreqInMhz.Caption" xml:space="preserve">
<value>Frequenz (MHz)</value>
<value>Frequenz\n(MHz)</value>
</data>
<data name="colPolarity.Caption" xml:space="preserve">
<value>Polarität</value>
</data>
<data name="colChannelOrTransponder.Caption" xml:space="preserve">
<value>Kanal/ Transp.</value>
<value>Kanal/\nTransp</value>
</data>
<data name="colChannelOrTransponder.ToolTip" xml:space="preserve">
<value>Kanal- bzw. Transpondernummer</value>
@@ -1366,25 +1366,25 @@
<value>Satellit</value>
</data>
<data name="colNetworkId.Caption" xml:space="preserve">
<value>Netzwerk (ONID)</value>
<value>Netzwerk\n(ONID)</value>
</data>
<data name="colSymbolRate.Caption" xml:space="preserve">
<value>Symbol- rate</value>
<value>Symbol-\nrate</value>
</data>
<data name="colNetworkName.Caption" xml:space="preserve">
<value>Netzwerk Name</value>
<value>Netzwerk\nName</value>
</data>
<data name="colNetworkOperator.Caption" xml:space="preserve">
<value>Netzwerk Betreiber</value>
<value>Netzwerk\nBetreiber</value>
</data>
<data name="colProvider.Caption" xml:space="preserve">
<value>Anbieter</value>
</data>
<data name="colLogicalIndex.Caption" xml:space="preserve">
<value>Reihenfolge</value>
<value>Reihen-\nfolge</value>
</data>
<data name="colSignalSource.Caption" xml:space="preserve">
<value>Signal- quelle</value>
<value>Signal-\nquelle</value>
</data>
<data name="btnSearch.AccessibleDescription" xml:space="preserve">
<value>Nach Sender über Name suchen</value>
@@ -1434,4 +1434,7 @@ speziellen Anbieter, Satelliten oder Länderlisten aus.</value>
<data name="grpInputList.Text" xml:space="preserve">
<value>Alle Sender</value>
</data>
<data name="colAudioPid.Caption" xml:space="preserve">
<value>Audio\nPID</value>
</data>
</root>

View File

@@ -121,10 +121,10 @@
<value>Pr. index</value>
</data>
<data name="colOutServiceType.Caption" xml:space="preserve">
<value>Tipo de servicio</value>
<value>Tipo de\nservicio</value>
</data>
<data name="colOutSlot.Caption" xml:space="preserve">
<value>Nueva posición</value>
<value>Nueva\nposición</value>
</data>
<data name="colOutSlot.ToolTip" xml:space="preserve">
<value>Nueva posición del canal</value>
@@ -139,7 +139,7 @@
<value>Bloquear</value>
</data>
<data name="colOutLock.ToolTip" xml:space="preserve">
<value>Bloqueo parental</value>
<value>Bloqueo\nparental</value>
</data>
<data name="colOutSkip.Caption" xml:space="preserve">
<value>Saltar</value>
@@ -475,13 +475,13 @@
<value>Pr. Index</value>
</data>
<data name="colSlotOld.Caption" xml:space="preserve">
<value>Pos Ant</value>
<value>Pos\nAnt</value>
</data>
<data name="colSlotOld.ToolTip" xml:space="preserve">
<value>Posición anterior</value>
</data>
<data name="colSlotNew.Caption" xml:space="preserve">
<value>Pos Act</value>
<value>Pos\nAct</value>
</data>
<data name="colSlotNew.ToolTip" xml:space="preserve">
<value>Posición actual</value>
@@ -496,7 +496,7 @@
<value>Nombre de canal</value>
</data>
<data name="colShortName.Caption" xml:space="preserve">
<value>Nombre corto</value>
<value>Nombre\ncorto</value>
</data>
<data name="colFavorites.Caption" xml:space="preserve">
<value>Favoritos</value>
@@ -520,16 +520,16 @@
<value>Encriptado</value>
</data>
<data name="colServiceType.Caption" xml:space="preserve">
<value>ID tipo servicio</value>
<value>ID tipo\nservicio</value>
</data>
<data name="colServiceTypeName.Caption" xml:space="preserve">
<value>Tipo servicio</value>
<value>Tipo\nservicio</value>
</data>
<data name="colFreqInMhz.Caption" xml:space="preserve">
<value>Frecuencia (MHz)</value>
<value>Frecuencia\n(MHz)</value>
</data>
<data name="colChannelOrTransponder.Caption" xml:space="preserve">
<value>Canal/Transp</value>
<value>Canal/\nTransp</value>
</data>
<data name="colChannelOrTransponder.ToolTip" xml:space="preserve">
<value>Número de canal o transpondedor</value>
@@ -538,7 +538,7 @@
<value>Satélite</value>
</data>
<data name="colNetworkId.Caption" xml:space="preserve">
<value>RED (ONID)</value>
<value>RED\n(ONID)</value>
</data>
<data name="colTransportStreamId.Caption" xml:space="preserve">
<value>ID TS</value>
@@ -547,31 +547,28 @@
<value>ID del flujo de transporte TS</value>
</data>
<data name="colServiceId.Caption" xml:space="preserve">
<value>ID servicio</value>
</data>
<data name="colPcrPid.Caption" xml:space="preserve">
<value>PCR PID</value>
<value>ID\nservicio</value>
</data>
<data name="colPcrPid.ToolTip" xml:space="preserve">
<value>Program Clock Reference Packet-ID</value>
</data>
<data name="colVideoPid.Caption" xml:space="preserve">
<value>PID vídeo</value>
<value>PID\nvídeo</value>
</data>
<data name="colAudioPid.Caption" xml:space="preserve">
<value>PID audio</value>
<value>PID\naudio</value>
</data>
<data name="colSymbolRate.Caption" xml:space="preserve">
<value>Symbol rate</value>
<value>Symbol\nrate</value>
</data>
<data name="colPolarity.Caption" xml:space="preserve">
<value>Polaridad</value>
</data>
<data name="colNetworkName.Caption" xml:space="preserve">
<value>Nombre red</value>
<value>Nombre\nred</value>
</data>
<data name="colNetworkOperator.Caption" xml:space="preserve">
<value>Operador red</value>
<value>Operador\nred</value>
</data>
<data name="colProvider.Caption" xml:space="preserve">
<value>Proveedor</value>
@@ -583,7 +580,7 @@
<value>Orden</value>
</data>
<data name="colSignalSource.Caption" xml:space="preserve">
<value>Origen señal</value>
<value>Origen\nseñal</value>
</data>
<data name="lblHotkeyRight.Text" xml:space="preserve">
<value>F5: Filtro | F6: Lista | Enter: añadir</value>

View File

@@ -121,7 +121,7 @@
<value>Pr. index</value>
</data>
<data name="colOutSlot.Caption" xml:space="preserve">
<value>Új poz.</value>
<value>Új\npoz.</value>
</data>
<data name="colOutSlot.ToolTip" xml:space="preserve">
<value>Új programszám</value>
@@ -136,7 +136,7 @@
<value>Zár</value>
</data>
<data name="colOutLock.ToolTip" xml:space="preserve">
<value>Szülői zár</value>
<value>Szülői\nzár</value>
</data>
<data name="colOutSkip.Caption" xml:space="preserve">
<value>Kihagy</value>
@@ -148,7 +148,7 @@
<value>Törölt</value>
</data>
<data name="colOutServiceType.Caption" xml:space="preserve">
<value>Szolgáltatás típus</value>
<value>Szolgáltatás\ntípus</value>
</data>
<data name="colOutSource.Caption" xml:space="preserve">
<value>Forrás</value>
@@ -499,13 +499,13 @@
<value>Pr. index</value>
</data>
<data name="colSlotOld.Caption" xml:space="preserve">
<value>Régi poz.</value>
<value>Régi\npoz.</value>
</data>
<data name="colSlotOld.ToolTip" xml:space="preserve">
<value>Régi pozíció</value>
</data>
<data name="colSlotNew.Caption" xml:space="preserve">
<value>Új poz.</value>
<value>Új\npoz.</value>
</data>
<data name="colSlotNew.ToolTip" xml:space="preserve">
<value>Új pozíció</value>
@@ -520,7 +520,7 @@
<value>Csatorna név</value>
</data>
<data name="colShortName.Caption" xml:space="preserve">
<value>Rövid név</value>
<value>Rövid\nnév</value>
</data>
<data name="colFavorites.Caption" xml:space="preserve">
<value>Kedvencek</value>
@@ -544,19 +544,19 @@
<value>Kódolt</value>
</data>
<data name="colServiceType.Caption" xml:space="preserve">
<value>Szolgáltatás típus azonosító</value>
<value>Szolgáltatás\ntípus azonosító</value>
</data>
<data name="colServiceTypeName.Caption" xml:space="preserve">
<value>Szolgáltatás típus</value>
<value>Szolgáltatás\ntípus</value>
</data>
<data name="colFreqInMhz.Caption" xml:space="preserve">
<value>Frekvencia (MHz)</value>
<value>Frekvencia\n(MHz)</value>
</data>
<data name="colPolarity.Caption" xml:space="preserve">
<value>Polaritás</value>
</data>
<data name="colChannelOrTransponder.Caption" xml:space="preserve">
<value>Csat/Transzp</value>
<value>Csat/\nTranszp</value>
</data>
<data name="colChannelOrTransponder.ToolTip" xml:space="preserve">
<value>Csatorna vagy transzponder száma</value>
@@ -565,7 +565,7 @@
<value>Műhold</value>
</data>
<data name="colNetworkId.Caption" xml:space="preserve">
<value>Hálózat (ONID)</value>
<value>Hálózat\n(ONID)</value>
</data>
<data name="colTransportStreamId.Caption" xml:space="preserve">
<value>TS ID</value>
@@ -574,28 +574,22 @@
<value>Transport Stream ID</value>
</data>
<data name="colServiceId.Caption" xml:space="preserve">
<value>Service ID</value>
</data>
<data name="colPcrPid.Caption" xml:space="preserve">
<value>PCR PID</value>
<value>Service\nID</value>
</data>
<data name="colPcrPid.ToolTip" xml:space="preserve">
<value>Program Clock Reference Packet-ID</value>
</data>
<data name="colVideoPid.Caption" xml:space="preserve">
<value>Video PID</value>
</data>
<data name="colAudioPid.Caption" xml:space="preserve">
<value>Audio PID</value>
<value>Video\nPID</value>
</data>
<data name="colSymbolRate.Caption" xml:space="preserve">
<value>Symbol rate</value>
<value>Symbol\nrate</value>
</data>
<data name="colNetworkName.Caption" xml:space="preserve">
<value>Hálózat név</value>
<value>Hálózat\nnév</value>
</data>
<data name="colNetworkOperator.Caption" xml:space="preserve">
<value>Hálózat operátor</value>
<value>Hálózat\noperátor</value>
</data>
<data name="colProvider.Caption" xml:space="preserve">
<value>Szolgáltató</value>
@@ -681,4 +675,7 @@
<data name="btnSearch.ToolTip" xml:space="preserve">
<value>Csatorna keresése név alapján</value>
</data>
<data name="colAudioPid.Caption" xml:space="preserve">
<value>Audio\nPID</value>
</data>
</root>

View File

@@ -121,7 +121,7 @@
<value>Pr. indeks</value>
</data>
<data name="colOutSlot.Caption" xml:space="preserve">
<value>Nowa pozycja</value>
<value>Nowa\npozycja</value>
</data>
<data name="colOutSlot.ToolTip" xml:space="preserve">
<value>Nowy numer programu</value>
@@ -136,7 +136,7 @@
<value>Zablokowane</value>
</data>
<data name="colOutLock.ToolTip" xml:space="preserve">
<value>Blokada rodzicielska</value>
<value>Blokada\nrodzicielska</value>
</data>
<data name="colOutSkip.Caption" xml:space="preserve">
<value>Pominięte</value>
@@ -148,7 +148,7 @@
<value>Usunięte</value>
</data>
<data name="colOutServiceType.Caption" xml:space="preserve">
<value>Rodzaj usługi</value>
<value>Rodzaj\nusługi</value>
</data>
<data name="colOutSource.Caption" xml:space="preserve">
<value>Źródło</value>
@@ -505,7 +505,7 @@
<value>Stary numer programu</value>
</data>
<data name="colSlotNew.Caption" xml:space="preserve">
<value>Nowa pozycja</value>
<value>Nowa\npozycja</value>
</data>
<data name="colSlotNew.ToolTip" xml:space="preserve">
<value>Nowa pozycja</value>
@@ -520,7 +520,7 @@
<value>Nazwa kanału</value>
</data>
<data name="colShortName.Caption" xml:space="preserve">
<value>Krótka nazwa</value>
<value>Krótka\nnazwa</value>
</data>
<data name="colFavorites.Caption" xml:space="preserve">
<value>Ulubione</value>
@@ -544,19 +544,19 @@
<value>Zaszyfrowane</value>
</data>
<data name="colServiceType.Caption" xml:space="preserve">
<value>Identyfikator typu usługi</value>
<value>Identyfikator\ntypu usługi</value>
</data>
<data name="colServiceTypeName.Caption" xml:space="preserve">
<value>Rodzaj usługi</value>
<value>Rodzaj\nusługi</value>
</data>
<data name="colFreqInMhz.Caption" xml:space="preserve">
<value>Częstotliwość (MHz)</value>
<value>Częstotliwość\n(MHz)</value>
</data>
<data name="colPolarity.Caption" xml:space="preserve">
<value>Polaryzacja</value>
</data>
<data name="colChannelOrTransponder.Caption" xml:space="preserve">
<value>Kanał/ Transponder</value>
<value>Kanał/\nTransp</value>
</data>
<data name="colChannelOrTransponder.ToolTip" xml:space="preserve">
<value>Numer kanału lub transpondera</value>
@@ -565,7 +565,7 @@
<value>Satelita</value>
</data>
<data name="colNetworkId.Caption" xml:space="preserve">
<value>Sieć (ONID)</value>
<value>Sieć\n(ONID)</value>
</data>
<data name="colTransportStreamId.Caption" xml:space="preserve">
<value>TS ID</value>
@@ -574,28 +574,22 @@
<value>Identyfikator strumienia transportowego</value>
</data>
<data name="colServiceId.Caption" xml:space="preserve">
<value>ID usługi</value>
</data>
<data name="colPcrPid.Caption" xml:space="preserve">
<value>PCR PID</value>
<value>ID\nusługi</value>
</data>
<data name="colPcrPid.ToolTip" xml:space="preserve">
<value>Numer referencyjny pakietu programu</value>
</data>
<data name="colVideoPid.Caption" xml:space="preserve">
<value>Wideo PID</value>
</data>
<data name="colAudioPid.Caption" xml:space="preserve">
<value>Audio PID</value>
<value>Wideo\nPID</value>
</data>
<data name="colSymbolRate.Caption" xml:space="preserve">
<value>Szybkość transferu</value>
<value>Szybkość\ntransferu</value>
</data>
<data name="colNetworkName.Caption" xml:space="preserve">
<value>Nazwa sieci</value>
<value>Nazwa\nsieci</value>
</data>
<data name="colNetworkOperator.Caption" xml:space="preserve">
<value>Operator sieci</value>
<value>Operator\nsieci</value>
</data>
<data name="colProvider.Caption" xml:space="preserve">
<value>Dostawca</value>
@@ -607,7 +601,7 @@
<value>Zamówione</value>
</data>
<data name="colSignalSource.Caption" xml:space="preserve">
<value>Źródło sygnału</value>
<value>Źródło\nsygnału</value>
</data>
<data name="lblHotkeyRight.Text" xml:space="preserve">
<value>F5: Filtr | F6: lista | Wpisz: dodaj</value>
@@ -687,4 +681,7 @@
<data name="miLoadListAfterStart.Caption" xml:space="preserve">
<value>Załaduj ostatnio używaną listę po uruchomieniu</value>
</data>
<data name="colAudioPid.Caption" xml:space="preserve">
<value>Audio\nPID</value>
</data>
</root>

View File

@@ -66,7 +66,7 @@
<assembly alias="DevExpress.XtraEditors.v21.1" name="DevExpress.XtraEditors.v21.1, Version=21.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<assembly alias="DevExpress.Utils.v21.1" name="DevExpress.Utils.v21.1, Version=21.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<data name="colOutSlot.Caption" xml:space="preserve">
<value>Novo Pos</value>
<value>Novo\nPos</value>
</data>
<data name="colOutSlot.ToolTip" xml:space="preserve">
<value>Posição de canal novo</value>
@@ -78,13 +78,10 @@
<value>Favoritos</value>
</data>
<data name="colOutLock.Caption" xml:space="preserve">
<value>Blo- queado</value>
</data>
<data name="colOutLock.ToolTip" xml:space="preserve">
<value>Parental lock</value>
<value>Blo-\nqueado</value>
</data>
<data name="colOutSkip.Caption" xml:space="preserve">
<value>Sal- tar</value>
<value>Sal-\ntar</value>
</data>
<data name="miRenameChannel.Caption" xml:space="preserve">
<value>Rebatizar canal</value>
@@ -132,49 +129,49 @@
<value>Operador</value>
</data>
<data name="colNetworkName.Caption" xml:space="preserve">
<value>Nome da rede</value>
<value>Nome\nda rede</value>
</data>
<data name="colPolarity.Caption" xml:space="preserve">
<value>Polaridade</value>
</data>
<data name="colSymbolRate.Caption" xml:space="preserve">
<value>Taxa de- símbolo</value>
<value>Taxa de-\nsímbolo</value>
</data>
<data name="colSatellite.Caption" xml:space="preserve">
<value>Sátelite</value>
</data>
<data name="colServiceTypeName.Caption" xml:space="preserve">
<value>Tipo serviço</value>
<value>Tipo\nserviço</value>
</data>
<data name="colServiceType.Caption" xml:space="preserve">
<value>Tipo serviço ID</value>
<value>Tipo\nserviço ID</value>
</data>
<data name="colServiceId.Caption" xml:space="preserve">
<value>Sserviço ID</value>
<value>Serviço\nID</value>
</data>
<data name="colFreqInMhz.Caption" xml:space="preserve">
<value>Frequência (MHz)</value>
<value>Frequência\n(MHz)</value>
</data>
<data name="colChannelOrTransponder.ToolTip" xml:space="preserve">
<value>Número de canal ou transponder</value>
</data>
<data name="colChannelOrTransponder.Caption" xml:space="preserve">
<value>Canal/ Transp.</value>
<value>Canal/\nTransp</value>
</data>
<data name="colEncrypted.ToolTip" xml:space="preserve">
<value>Codificado</value>
</data>
<data name="colEncrypted.Caption" xml:space="preserve">
<value>Cod- ificado</value>
<value>Cod-\nificado</value>
</data>
<data name="colHidden.Caption" xml:space="preserve">
<value>Esc- onder</value>
<value>Esc-\nonder</value>
</data>
<data name="colSkip.Caption" xml:space="preserve">
<value>Sal- tar</value>
<value>Sal-\ntar</value>
</data>
<data name="colLock.Caption" xml:space="preserve">
<value>Blo- queado</value>
<value>Blo-\nqueado</value>
</data>
<data name="colFavorites.Caption" xml:space="preserve">
<value>Favoritos</value>
@@ -189,13 +186,13 @@
<value>Posição de canal novo</value>
</data>
<data name="colSlotNew.Caption" xml:space="preserve">
<value>Novo Pos</value>
<value>Novo\nPos</value>
</data>
<data name="colSlotOld.ToolTip" xml:space="preserve">
<value>Posição de canal anterior Programmplatz</value>
</data>
<data name="colSlotOld.Caption" xml:space="preserve">
<value>Valor Pr# anterior</value>
<value>Valor Pr#\nanterior</value>
</data>
<data name="grpOutputList.Text" xml:space="preserve">
<value>Canais ordenados</value>
@@ -315,7 +312,7 @@
<value>F3: Filtro | F4: Lista | -: para cima | +: para baixo | DEL: remover</value>
</data>
<data name="colOutHide.Caption" xml:space="preserve">
<value>Esc- onder</value>
<value>Esc-\nonder</value>
</data>
<data name="mnuHelp.Caption" xml:space="preserve">
<value>&amp;Ajuda</value>
@@ -327,7 +324,7 @@
<value>Para cima</value>
</data>
<data name="colOutServiceType.Caption" xml:space="preserve">
<value>Tipo serviço</value>
<value>Tipo\nserviço</value>
</data>
<assembly alias="DevExpress.XtraBars.v21.1" name="DevExpress.XtraBars.v21.1, Version=21.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<data name="barManager1.Categories" type="DevExpress.XtraBars.BarManagerCategory, DevExpress.XtraBars.v21.1" mimetype="application/x-microsoft.net.object.bytearray.base64">
@@ -373,4 +370,7 @@
<data name="miTheme.Caption" xml:space="preserve">
<value>Esquema de cores...</value>
</data>
<data name="colAudioPid.Caption" xml:space="preserve">
<value>Audio\nPID</value>
</data>
</root>

File diff suppressed because it is too large Load Diff

View File

@@ -121,10 +121,10 @@
<value>Pr. index</value>
</data>
<data name="colOutServiceType.Caption" xml:space="preserve">
<value>Tip de serviciu</value>
<value>Tip de\nserviciu</value>
</data>
<data name="colOutSlot.Caption" xml:space="preserve">
<value>New Pos</value>
<value>New\nPos</value>
</data>
<data name="colOutSlot.ToolTip" xml:space="preserve">
<value>Numărul nou de program</value>
@@ -142,7 +142,7 @@
<value>Blocare</value>
</data>
<data name="colOutLock.ToolTip" xml:space="preserve">
<value>Blocare parentală</value>
<value>Blocare\nparentală</value>
</data>
<data name="colOutSkip.Caption" xml:space="preserve">
<value>Sări</value>
@@ -466,13 +466,13 @@
<value>Pr. index</value>
</data>
<data name="colSlotOld.Caption" xml:space="preserve">
<value>Postul vechi</value>
<value>Postul\nvechi</value>
</data>
<data name="colSlotOld.ToolTip" xml:space="preserve">
<value>Nr. vechi</value>
</data>
<data name="colSlotNew.Caption" xml:space="preserve">
<value>Postul nou</value>
<value>Postul\nnou</value>
</data>
<data name="colSlotNew.ToolTip" xml:space="preserve">
<value>Nr. nou</value>
@@ -484,7 +484,7 @@
<value>Numele canalului</value>
</data>
<data name="colShortName.Caption" xml:space="preserve">
<value>Nume scurt</value>
<value>Nume\nscurt</value>
</data>
<data name="colFavorites.Caption" xml:space="preserve">
<value>Favorite</value>
@@ -505,16 +505,16 @@
<value>Codificat</value>
</data>
<data name="colServiceType.Caption" xml:space="preserve">
<value>ID Tip serviciu</value>
<value>ID Tip\nserviciu</value>
</data>
<data name="colServiceTypeName.Caption" xml:space="preserve">
<value>Tip de serviciu</value>
<value>Tip de\nserviciu</value>
</data>
<data name="colFreqInMhz.Caption" xml:space="preserve">
<value>Frecvența (MHz)</value>
<value>Frecvența\n(MHz)</value>
</data>
<data name="colChannelOrTransponder.Caption" xml:space="preserve">
<value>Canal/ Transp</value>
<value>Canal/\nTransp</value>
</data>
<data name="colChannelOrTransponder.ToolTip" xml:space="preserve">
<value>Numărul canalului sau al transponderului</value>
@@ -523,7 +523,7 @@
<value>Satelit</value>
</data>
<data name="colNetworkId.Caption" xml:space="preserve">
<value>Rețea (ONID)</value>
<value>Rețea\n(ONID)</value>
</data>
<data name="colTransportStreamId.Caption" xml:space="preserve">
<value>ID TS</value>
@@ -532,25 +532,22 @@
<value>ID Flux de transport</value>
</data>
<data name="colServiceId.Caption" xml:space="preserve">
<value>ID Serviciu</value>
<value>ID\nServiciu</value>
</data>
<data name="colVideoPid.Caption" xml:space="preserve">
<value>Video PID</value>
</data>
<data name="colAudioPid.Caption" xml:space="preserve">
<value>Audio PID</value>
<value>Video\nPID</value>
</data>
<data name="colSymbolRate.Caption" xml:space="preserve">
<value>Rată simbol</value>
<value>Rată\nsimbol</value>
</data>
<data name="colPolarity.Caption" xml:space="preserve">
<value>Polaritate</value>
</data>
<data name="colNetworkName.Caption" xml:space="preserve">
<value>Numele retelei</value>
<value>Numele\nretelei</value>
</data>
<data name="colNetworkOperator.Caption" xml:space="preserve">
<value>Operatorul rețelei</value>
<value>Operatorul\nrețelei</value>
</data>
<data name="colProvider.Caption" xml:space="preserve">
<value>Furnizor de</value>
@@ -562,7 +559,7 @@
<value>Order</value>
</data>
<data name="colSignalSource.Caption" xml:space="preserve">
<value>Sursă de semnal</value>
<value>Sursă de\nsemnal</value>
</data>
<data name="lblHotkeyRight.Text" xml:space="preserve">
<value>F5: Filtru | F6: Listă | Enter: adăugați</value>
@@ -627,4 +624,7 @@ furnizor specific, satelit sau liste de țări.</value>
<data name="miTheme.Caption" xml:space="preserve">
<value>Schema de culori...</value>
</data>
<data name="colAudioPid.Caption" xml:space="preserve">
<value>Audio\nPID</value>
</data>
</root>

View File

@@ -133,7 +133,7 @@
<value>Заблокировать</value>
</data>
<data name="colOutLock.ToolTip" xml:space="preserve">
<value>Родительский контроль</value>
<value>Родительский\nконтроль</value>
</data>
<data name="colOutSkip.Caption" xml:space="preserve">
<value>Пропускать</value>
@@ -199,55 +199,55 @@
<value>F5: Фильтр | F6: Список | Enter: Добавить</value>
</data>
<data name="colSignalSource.Caption" xml:space="preserve">
<value>Источник сигнала</value>
<value>Источник\nсигнала</value>
</data>
<data name="colLogicalIndex.Caption" xml:space="preserve">
<value>Order</value>
</data>
<data name="colNetworkOperator.Caption" xml:space="preserve">
<value>Оператор сети</value>
<value>Оператор\nсети</value>
</data>
<data name="colNetworkName.Caption" xml:space="preserve">
<value>Сетевое имя</value>
<value>Сетевое\nимя</value>
</data>
<data name="colPolarity.Caption" xml:space="preserve">
<value>Полярность</value>
</data>
<data name="colSymbolRate.Caption" xml:space="preserve">
<value>Скорость передачи</value>
<value>Скорость\nпередачи</value>
</data>
<data name="colTransportStreamId.ToolTip" xml:space="preserve">
<value>ID транспортного потока</value>
</data>
<data name="colNetworkId.Caption" xml:space="preserve">
<value>Сеть (ONID)</value>
<value>Сеть\n(ONID)</value>
</data>
<data name="colSatellite.Caption" xml:space="preserve">
<value>Спутник</value>
</data>
<data name="colServiceTypeName.Caption" xml:space="preserve">
<value>Тип сервиса</value>
<value>Тип\nсервиса</value>
</data>
<data name="colServiceType.Caption" xml:space="preserve">
<value>ID Тип сервиса</value>
<value>ID Тип\nсервиса</value>
</data>
<data name="colAudioPid.Caption" xml:space="preserve">
<value>Аудио PID</value>
<value>Аудио\nPID</value>
</data>
<data name="colVideoPid.Caption" xml:space="preserve">
<value>Видео PID</value>
<value>Видео\nPID</value>
</data>
<data name="colServiceId.Caption" xml:space="preserve">
<value>ID сервиса</value>
<value>ID\nсервиса</value>
</data>
<data name="colFreqInMhz.Caption" xml:space="preserve">
<value>Частота (MHz)</value>
<value>Частота\n(MHz)</value>
</data>
<data name="colChannelOrTransponder.ToolTip" xml:space="preserve">
<value>Номер канала или транспондер</value>
</data>
<data name="colChannelOrTransponder.Caption" xml:space="preserve">
<value>Канал/Транспондер</value>
<value>Канал/\nТранспондер</value>
</data>
<data name="colEncrypted.ToolTip" xml:space="preserve">
<value>Зашифрованный</value>
@@ -268,7 +268,7 @@
<value>Избранное</value>
</data>
<data name="colShortName.Caption" xml:space="preserve">
<value>Краткое имя</value>
<value>Краткое\nимя</value>
</data>
<data name="colName.Caption" xml:space="preserve">
<value>Название канала</value>
@@ -463,7 +463,7 @@
<value>Переместить вверх</value>
</data>
<data name="colOutServiceType.Caption" xml:space="preserve">
<value>Тип сервиса</value>
<value>Тип\nсервиса</value>
</data>
<data name="colIndex1.Caption" xml:space="preserve">
<value>Индекс пр.</value>

View File

@@ -121,7 +121,7 @@
<value>Pr. dizin</value>
</data>
<data name="colOutSlot.Caption" xml:space="preserve">
<value>Yeni Konum</value>
<value>Yeni\nKonum</value>
</data>
<data name="colOutSlot.ToolTip" xml:space="preserve">
<value>Yeni program numarası</value>
@@ -136,7 +136,7 @@
<value>Kilit</value>
</data>
<data name="colOutLock.ToolTip" xml:space="preserve">
<value>Ebeveyn kilidi</value>
<value>Ebeveyn\nkilidi</value>
</data>
<data name="colOutSkip.Caption" xml:space="preserve">
<value>Atla</value>
@@ -148,7 +148,7 @@
<value>Silindi</value>
</data>
<data name="colOutServiceType.Caption" xml:space="preserve">
<value>Servis Tipi</value>
<value>Servis\nTipi</value>
</data>
<data name="colOutSource.Caption" xml:space="preserve">
<value>Kaynak</value>
@@ -499,13 +499,13 @@
<value>Pr. dizin</value>
</data>
<data name="colSlotOld.Caption" xml:space="preserve">
<value>Eski Konum</value>
<value>Eski\nKonum</value>
</data>
<data name="colSlotOld.ToolTip" xml:space="preserve">
<value>Eski pozisyon</value>
</data>
<data name="colSlotNew.Caption" xml:space="preserve">
<value>Yeni Konum</value>
<value>Yeni\nKonum</value>
</data>
<data name="colSlotNew.ToolTip" xml:space="preserve">
<value>Yeni pozisyon</value>
@@ -520,7 +520,7 @@
<value>Kanal adı</value>
</data>
<data name="colShortName.Caption" xml:space="preserve">
<value>Kısa adı</value>
<value>Kısa\nadı</value>
</data>
<data name="colFavorites.Caption" xml:space="preserve">
<value>Favoriler</value>
@@ -544,19 +544,19 @@
<value>Şifreli</value>
</data>
<data name="colServiceType.Caption" xml:space="preserve">
<value>Servis Türü Kimliği</value>
<value>Servis Türü\nKimliği</value>
</data>
<data name="colServiceTypeName.Caption" xml:space="preserve">
<value>Servis Türü</value>
<value>Servis\nTürü</value>
</data>
<data name="colFreqInMhz.Caption" xml:space="preserve">
<value>Frekans (MHz)</value>
<value>Frekans\n(MHz)</value>
</data>
<data name="colPolarity.Caption" xml:space="preserve">
<value>Polarite</value>
</data>
<data name="colChannelOrTransponder.Caption" xml:space="preserve">
<value>Değiştir / Aktar</value>
<value>Değiştir/\nAktar</value>
</data>
<data name="colChannelOrTransponder.ToolTip" xml:space="preserve">
<value>Kanal veya transponder numarası</value>
@@ -565,37 +565,34 @@
<value>Uydu</value>
</data>
<data name="colNetworkId.Caption" xml:space="preserve">
<value>Ağ (ONID)</value>
<value>Ağ\n(ONID)</value>
</data>
<data name="colTransportStreamId.Caption" xml:space="preserve">
<value>TS Kimliği</value>
<value>TS\nKimliği</value>
</data>
<data name="colTransportStreamId.ToolTip" xml:space="preserve">
<value>Aktarım Akışı Kimliği</value>
</data>
<data name="colServiceId.Caption" xml:space="preserve">
<value>Servis Kimliği</value>
</data>
<data name="colPcrPid.Caption" xml:space="preserve">
<value>PCR PID</value>
<value>Servis\nKimliği</value>
</data>
<data name="colPcrPid.ToolTip" xml:space="preserve">
<value>Program Saati Referans Paket - Kimliği</value>
</data>
<data name="colVideoPid.Caption" xml:space="preserve">
<value>Görüntü PID</value>
<value>Görüntü\nPID</value>
</data>
<data name="colAudioPid.Caption" xml:space="preserve">
<value>Ses PID</value>
<value>Ses\nPID</value>
</data>
<data name="colSymbolRate.Caption" xml:space="preserve">
<value>Sembol oranı</value>
<value>Sembol\noranı</value>
</data>
<data name="colNetworkName.Caption" xml:space="preserve">
<value>Ağ Adı</value>
<value>Ağ\nAdı</value>
</data>
<data name="colNetworkOperator.Caption" xml:space="preserve">
<value>Ağ Operatörü</value>
<value>Ağ\nOperatörü</value>
</data>
<data name="colProvider.Caption" xml:space="preserve">
<value>Sağlayıcı</value>
@@ -607,7 +604,7 @@
<value>Düzen</value>
</data>
<data name="colSignalSource.Caption" xml:space="preserve">
<value>Sinyal kaynağı</value>
<value>Sinyal\nkaynağı</value>
</data>
<data name="lblHotkeyRight.Text" xml:space="preserve">
<value>F5: Filtre | F6: Liste | Enter: ekle</value>

View File

@@ -1,5 +1,7 @@
#include <stddefs.h>
#pragma byte_order(LittleEndian)
struct Header
{
uint32 blockId;
@@ -20,23 +22,36 @@ struct Channel
uint8 u2[8];
uint32 favNr;
char name[200];
uint16 u3;
uint16 u3b;
uint16 u3[2];
char provider[200];
uint8 u4[16];
// < unsure > offset not 100% sure
uint8 u4[4];
struct
{
uint8 isFav : 1;
} flags1;
uint8 u5;
struct
{
uint8 u1 : 3;
uint8 isFav : 1;
} flags2;
uint8 u6[5];
uint32 favNr2;
// </ unsure >
uint32 freqInHz;
uint16 u6;
uint16 u7;
uint16 not_symRate;
uint32 oldProgNr;
uint8 u7[4];
uint8 u8[4];
uint32 channelIndex;
uint16 tsid;
uint16 symRate_maybe;
uint16 sid;
uint16 onid;
//uint16 freqInMhz2;
//uint16 u9;
uint32 u10;
uint32 u9;
};
struct Footer
@@ -47,7 +62,7 @@ struct Footer
uint16 u_zero;
};
public struct Philips_mgr_chan_s_fta
public struct Philips_mgr_chan
{
char filename[32];
Header header;

View File

@@ -1,6 +1,8 @@
#include <stddefs.h>
struct SHeader
#pragma byte_order(LittleEndian)
struct Header
{
uint32 blockId;
uint32 blockSize;
@@ -13,32 +15,41 @@ struct SHeader
uint32 channelBlockSize;
};
struct SChannel_fta
struct Channel
{
uint32 curProgNr;
uint32 u1;
uint8 u2[8];
uint32 favNr;
char chName1[200];
uint16 u3;
uint8 u3b[208];
uint8 u3c[2];
uint16 u3d;
uint8 u4[10];
char name[200];
uint8 u3[208];
struct
{
uint8 isFav : 1;
} flags1;
uint8 u4;
struct
{
uint8 u1 : 3;
uint8 isFav : 1;
} flags2;
uint8 u5[5];
uint32 favNr2;
uint8 u6[4];
uint32 freqInMhz1;
uint16 u6;
uint16 u7;
uint16 symRate;
uint32 oldProgNr;
uint32 channelIndex;
uint16 tsid;
uint16 u7;
uint16 u8;
uint16 sid;
uint16 onid;
uint16 freqInMhz2;
uint8 padding[6];
};
struct SFooter
struct Footer
{
uint32 numDataBlocks;
uint32 numDataBlockBytes;
@@ -46,52 +57,15 @@ struct SFooter
uint16 u_zero;
};
public struct Philips_mgr_chan_s_fta
public struct Philips_mgr_chan
{
char filename[32];
SHeader header;
var recordCount = header.channelBlockSize / sizeof(SChannel_fta);
SChannel_fta channels[recordCount];
SFooter footer;
Header header;
var recordCount = header.channelBlockSize / sizeof(Channel);
Channel channels[recordCount];
Footer footer;
};
//#########################################################
struct SChannel_pkg
{
uint32 curProgNr;
uint32 u1;
uint8 u2[8];
uint32 favNr;
char chName1[200];
uint16 u3;
uint8 u3b[208];
uint8 u3c[2];
uint16 u3d;
uint8 u4[10];
uint32 freqInMhz1;
uint16 u6;
uint16 symRate;
uint32 oldProgNr;
uint32 channelIndex;
uint16 tsid;
uint16 u7;
uint16 sid;
uint16 onid;
uint16 freqInMhz2;
uint8 padding[6];
};
public struct Philips_mgr_chan_s_pkg
{
char filename[32];
SHeader header;
var recordCount = header.channelBlockSize / sizeof(SChannel_pkg);
SChannel_pkg channels[recordCount];
SFooter footer;
};
//*****************************************************************************************
// FLASH files
//*****************************************************************************************
@@ -249,4 +223,6 @@ public struct Philips_FLASH_SDTSECTS_S_PKG
Channel chans[16];
BYTE filler[0x44C - current_offset];
} transponder[*];
};
};
#pragma byte_order(LittleEndian)

View File

@@ -1,6 +1,8 @@
#include <stddefs.h>
struct SHeader
#pragma byte_order(LittleEndian)
struct Header
{
uint32 blockId;
uint32 blockSize;
@@ -13,32 +15,41 @@ struct SHeader
uint32 channelBlockSize;
};
struct SChannel_fta
struct Channel
{
uint32 curProgNr;
uint32 u1;
uint8 u2[8];
uint32 favNr;
char chName1[200];
uint16 u3;
uint8 u3b[208];
uint8 u3c[2];
uint16 u3d;
uint8 u4[10];
char name[200];
uint8 u3[208];
struct
{
uint8 isFav : 1;
} flags1;
uint8 u4;
struct
{
uint8 u1 : 3;
uint8 isFav : 1;
} flags2;
uint8 u5[5];
uint32 favNr2;
uint8 u6[4];
uint32 freqInMhz1;
uint16 u6;
uint16 u7;
uint16 symRate;
uint32 oldProgNr;
uint32 channelIndex;
uint16 tsid;
uint16 u7;
uint16 u8;
uint16 sid;
uint16 onid;
uint16 freqInMhz2;
uint8 padding[6];
uint8 padding[10];
};
struct SFooter
struct Footer
{
uint32 numDataBlocks;
uint32 numDataBlockBytes;
@@ -46,109 +57,15 @@ struct SFooter
uint16 u_zero;
};
public struct Philips_mgr_chan_s_fta
public struct Philips_mgr_chan
{
char filename[32];
SHeader header;
var recordCount = header.channelBlockSize / sizeof(SChannel_fta);
SChannel_fta channels[recordCount];
SFooter footer;
Header header;
var recordCount = header.channelBlockSize / sizeof(Channel);
Channel channels[recordCount];
Footer footer;
};
//#########################################################
struct SChannel_pkg
{
uint32 curProgNr;
uint32 u1;
uint8 u2[8];
uint32 favNr;
char chName1[200];
uint16 u3;
uint8 u3b[208];
uint8 u3c[2];
uint16 u3d;
uint8 u4[10];
uint32 freqInMhz1;
uint16 u6;
uint16 symRate;
uint32 oldProgNr;
uint32 channelIndex;
uint16 tsid;
uint16 u7;
uint16 sid;
uint16 onid;
uint16 freqInMhz2;
uint8 padding[6];
// some files have this additional size of 4 bytes
uint8 padding2[4];
};
public struct Philips_mgr_chan_s_pkg
{
char filename[32];
SHeader header;
var recordCount = header.channelBlockSize / sizeof(SChannel_pkg);
SChannel_pkg channels[recordCount];
SFooter footer;
};
//#########################################################
struct CChannel
{
uint32 curProgNr;
uint32 u1;
uint8 u2[8];
uint32 favNr;
union
{
char chName1[200];
#pragma byte_order (BigEndian)
big_endian wchar_t chName2[100];
#pragma byte_order ()
struct
{
uint8 zero;
wchar_t chName3[99];
uint8 zero2;
} chName4;
} chName;
uint16 u3;
uint16 u3b;
char provider[200];
uint8 u4[16];
uint32 freqInHz;
uint16 u6;
uint16 not_symRate;
uint32 oldProgNr;
uint8 u7[4];
uint32 channelIndex;
uint16 tsid;
uint16 symRate_maybe;
uint16 sid;
uint16 onid;
//uint16 freqInMhz2;
//uint16 u9;
uint32 u10;
};
public struct Philips_mgr_chan_dvbt
{
var docSize = GetDocumentSize();
char filename[32];
SHeader header;
var recordCount = header.channelBlockSize / sizeof(CChannel);
CChannel channels[recordCount];
SFooter footer;
};
//*****************************************************************************************
// FLASH files
//*****************************************************************************************

Binary file not shown.

View File

@@ -1,6 +1,12 @@
ChanSort Change Log
===================
2021-09-23
- improved per-monitor DPI scaling (i.e. moving the window from a Full-HD to a 4K display with 100% and 200% scale)
- improved "column auto width" (right clicking a column header) by forcing line breaks in the column captions
- Philips: improved and re-enabled favorite list editing for FLASH\_\*/\*.db lists
- Panasonic: fixed display of symbol rate and satellite
2021-09-22
- Philips: added support for CM\_*.xml variant that uses a <ECSM> root element around the <ChannelMap>
- Philips: ability to read/write broken CM\_*.xml files that contain channel names with an unescaped & character