diff --git a/source/ChanSort.Api/Controller/Editor.cs b/source/ChanSort.Api/Controller/Editor.cs index bd40620..d007cd2 100644 --- a/source/ChanSort.Api/Controller/Editor.cs +++ b/source/ChanSort.Api/Controller/Editor.cs @@ -1,7 +1,6 @@ using System; using System.Collections.Generic; using System.Linq; -using System.Runtime.CompilerServices; using System.Text; namespace ChanSort.Api @@ -96,15 +95,28 @@ namespace ChanSort.Api { if (channels.Count == 0) return; + if (up && channels[0].GetPosition(this.SubListIndex) <= this.ChannelList.FirstProgramNumber) return; + if (channels.Any(ch => ch.NewProgramNr < 0)) + return; + int maxNr = this.ChannelList.Channels.Count == 0 ? 0 : this.ChannelList.Channels.Max(c => c.GetPosition(this.SubListIndex)); int delta = (up ? -1 : +1); foreach (var channel in (up ? channels : channels.Reverse())) { int newProgramNr = channel.GetPosition(this.SubListIndex) + delta; - ChannelInfo channelAtNewPos = - this.ChannelList.Channels.FirstOrDefault(ch => ch.GetPosition(this.SubListIndex) == newProgramNr); + if (newProgramNr < 0) // can't move a channel up when it's not in the list + continue; + if (newProgramNr == 0) // "+" should work like "add at the end" when the channel is not in the list yet + { + newProgramNr = ++maxNr; + channel.SetPosition(this.SubListIndex, newProgramNr); + continue; + } + + maxNr = Math.Max(maxNr, newProgramNr); + ChannelInfo channelAtNewPos = this.ChannelList.Channels.FirstOrDefault(ch => ch.GetPosition(this.SubListIndex) == newProgramNr); if (channelAtNewPos != null) channelAtNewPos.ChangePosition(this.SubListIndex, -delta); channel.ChangePosition(this.SubListIndex, delta); diff --git a/source/ChanSort.Loader.LG.UI/TvSettingsForm.pt.resx b/source/ChanSort.Loader.LG.UI/TvSettingsForm.pt.resx index d58980a..679ca77 100644 --- a/source/ChanSort.Loader.LG.UI/TvSettingsForm.pt.resx +++ b/source/ChanSort.Loader.LG.UI/TvSettingsForm.pt.resx @@ -1,4 +1,4 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Storno + + + Ok + + + Barevné schéma + + \ No newline at end of file diff --git a/source/ChanSort/SkinPickerForm.de.resx b/source/ChanSort/SkinPickerForm.de.resx new file mode 100644 index 0000000..2a78e46 --- /dev/null +++ b/source/ChanSort/SkinPickerForm.de.resx @@ -0,0 +1,129 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Abbrechen + + + Farbschema + + + Ok + + \ No newline at end of file diff --git a/source/ChanSort/SkinPickerForm.es.resx b/source/ChanSort/SkinPickerForm.es.resx new file mode 100644 index 0000000..6b1078e --- /dev/null +++ b/source/ChanSort/SkinPickerForm.es.resx @@ -0,0 +1,129 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Cancelar + + + Ok + + + Esquema de colores + + \ No newline at end of file diff --git a/source/ChanSort/SkinPickerForm.hu.resx b/source/ChanSort/SkinPickerForm.hu.resx new file mode 100644 index 0000000..87162f5 --- /dev/null +++ b/source/ChanSort/SkinPickerForm.hu.resx @@ -0,0 +1,129 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Mégse + + + Ok + + + Színösszeállítás + + \ No newline at end of file diff --git a/source/ChanSort/SkinPickerForm.pl.resx b/source/ChanSort/SkinPickerForm.pl.resx new file mode 100644 index 0000000..ff3ac66 --- /dev/null +++ b/source/ChanSort/SkinPickerForm.pl.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Dobrze + + + Schemat kolorów + + \ No newline at end of file diff --git a/source/ChanSort/SkinPickerForm.pt.resx b/source/ChanSort/SkinPickerForm.pt.resx new file mode 100644 index 0000000..e8e9a67 --- /dev/null +++ b/source/ChanSort/SkinPickerForm.pt.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Abortar + + + Esquema de cores + + \ No newline at end of file diff --git a/source/ChanSort/SkinPickerForm.resx b/source/ChanSort/SkinPickerForm.resx new file mode 100644 index 0000000..1942f56 --- /dev/null +++ b/source/ChanSort/SkinPickerForm.resx @@ -0,0 +1,291 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + 0 + + + gallery + + + 0 + + + DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v21.1, Version=21.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + btnOk + + + panelControl1 + + + 0 + + + galleryControlClient1 + + + DevExpress.XtraBars.Ribbon.GalleryControl, DevExpress.XtraBars.v21.1, Version=21.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + DevExpress.XtraBars.Ribbon.GalleryControlClient, DevExpress.XtraBars.v21.1, Version=21.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + + 0, 527 + + + 0 + + + DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v21.1, Version=21.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + 984, 562 + + + 84, 23 + + + + Top, Right + + + 84, 23 + + + 2 + + + DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v21.1, Version=21.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + 984, 527 + + + 788, 7 + + + 12, 7 + + + 2, 2 + + + 888, 7 + + + CenterScreen + + + DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v21.1, Version=21.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + 1 + + + 0 + + + 1 + + + 0 + + + 1 + + + DevExpress.XtraEditors.PanelControl, DevExpress.Utils.v21.1, Version=21.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + SkinPickerForm + + + $this + + + Top, Right + + + panelControl1 + + + panelControl1 + + + Use default theme + + + Cancel + + + 980, 523 + + + gallery + + + 2 + + + 158, 23 + + + 6, 13 + + + $this + + + 984, 35 + + + btnReset + + + btnCancel + + + 0, 0 + + + Ok + + + galleryControl1 + + + Fill + + + Theme + + + panelControl1 + + + Bottom + + + True + + \ No newline at end of file diff --git a/source/ChanSort/SkinPickerForm.ro.resx b/source/ChanSort/SkinPickerForm.ro.resx new file mode 100644 index 0000000..10d50cf --- /dev/null +++ b/source/ChanSort/SkinPickerForm.ro.resx @@ -0,0 +1,129 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Anulare + + + Ok + + + Schema de culori + + \ No newline at end of file diff --git a/source/ChanSort/SkinPickerForm.ru.resx b/source/ChanSort/SkinPickerForm.ru.resx new file mode 100644 index 0000000..c7f95a0 --- /dev/null +++ b/source/ChanSort/SkinPickerForm.ru.resx @@ -0,0 +1,129 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Отменить + + + Ok + + + Цветовая схема + + \ No newline at end of file diff --git a/source/ChanSort/SkinPickerForm.tr.resx b/source/ChanSort/SkinPickerForm.tr.resx new file mode 100644 index 0000000..639bcc2 --- /dev/null +++ b/source/ChanSort/SkinPickerForm.tr.resx @@ -0,0 +1,129 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Vazgeç + + + TAMAM + + + Renk uyumu + + \ No newline at end of file diff --git a/source/ChanSort/app.config b/source/ChanSort/app.config index b3cbd5f..dd40c9c 100644 --- a/source/ChanSort/app.config +++ b/source/ChanSort/app.config @@ -8,7 +8,7 @@ - + Skin/Office 2019 Colorful @@ -65,7 +65,6 @@ - \ No newline at end of file diff --git a/source/Images/donate/btn_donateCC_LG.png b/source/Images/donate/btn_donateCC_LG.png new file mode 100644 index 0000000..32302a9 Binary files /dev/null and b/source/Images/donate/btn_donateCC_LG.png differ diff --git a/source/Images/donate/btn_donateCC_LG_de.png b/source/Images/donate/btn_donateCC_LG_de.png new file mode 100644 index 0000000..4948da3 Binary files /dev/null and b/source/Images/donate/btn_donateCC_LG_de.png differ diff --git a/source/Images/imagelist/0000.png b/source/Images/imagelist/0000.png index d1854f6..7f06cce 100644 Binary files a/source/Images/imagelist/0000.png and b/source/Images/imagelist/0000.png differ diff --git a/source/Images/imagelist/0001.png b/source/Images/imagelist/0001.png index 2e38047..cc0e539 100644 Binary files a/source/Images/imagelist/0001.png and b/source/Images/imagelist/0001.png differ diff --git a/source/Images/imagelist/0002.png b/source/Images/imagelist/0002.png index bd3847a..5195f57 100644 Binary files a/source/Images/imagelist/0002.png and b/source/Images/imagelist/0002.png differ diff --git a/source/Images/imagelist/0003.png b/source/Images/imagelist/0003.png index 4e4302a..d2c2ebc 100644 Binary files a/source/Images/imagelist/0003.png and b/source/Images/imagelist/0003.png differ diff --git a/source/Images/imagelist/0006.png b/source/Images/imagelist/0006.png index 2ac8481..1e4ccb8 100644 Binary files a/source/Images/imagelist/0006.png and b/source/Images/imagelist/0006.png differ diff --git a/source/Images/imagelist/0022.png b/source/Images/imagelist/0022.png index 772e426..cf7e482 100644 Binary files a/source/Images/imagelist/0022.png and b/source/Images/imagelist/0022.png differ diff --git a/source/Images/imagelist/0023.png b/source/Images/imagelist/0023.png index ecbf9ca..eecfb4a 100644 Binary files a/source/Images/imagelist/0023.png and b/source/Images/imagelist/0023.png differ diff --git a/source/Images/imagelist/0024.png b/source/Images/imagelist/0024.png index f872c2b..87fb3a4 100644 Binary files a/source/Images/imagelist/0024.png and b/source/Images/imagelist/0024.png differ diff --git a/source/Images/imagelist/0025.png b/source/Images/imagelist/0025.png index 19f9769..6394299 100644 Binary files a/source/Images/imagelist/0025.png and b/source/Images/imagelist/0025.png differ diff --git a/source/Images/imagelist/0027.png b/source/Images/imagelist/0027.png index 4ce631c..4a25135 100644 Binary files a/source/Images/imagelist/0027.png and b/source/Images/imagelist/0027.png differ diff --git a/source/Images/imagelist/0034.png b/source/Images/imagelist/0034.png index 83c5eb5..7b9216e 100644 Binary files a/source/Images/imagelist/0034.png and b/source/Images/imagelist/0034.png differ diff --git a/source/Images/imagelist/0035.png b/source/Images/imagelist/0035.png index 5c85383..354ee50 100644 Binary files a/source/Images/imagelist/0035.png and b/source/Images/imagelist/0035.png differ diff --git a/source/Images/imagelist/0041.png b/source/Images/imagelist/0041.png index 31acde9..44e87f8 100644 Binary files a/source/Images/imagelist/0041.png and b/source/Images/imagelist/0041.png differ diff --git a/source/Images/imagelist/0042.png b/source/Images/imagelist/0042.png index 18b4791..0cf67f3 100644 Binary files a/source/Images/imagelist/0042.png and b/source/Images/imagelist/0042.png differ diff --git a/source/Images/imagelist/0043.png b/source/Images/imagelist/0043.png index 4f79806..5747acb 100644 Binary files a/source/Images/imagelist/0043.png and b/source/Images/imagelist/0043.png differ diff --git a/source/Images/imagelist/0047.png b/source/Images/imagelist/0047.png index 0ccb697..a0a03e8 100644 Binary files a/source/Images/imagelist/0047.png and b/source/Images/imagelist/0047.png differ diff --git a/source/Images/imagelist/0048.png b/source/Images/imagelist/0048.png new file mode 100644 index 0000000..1b259ad Binary files /dev/null and b/source/Images/imagelist/0048.png differ diff --git a/source/Translation.xlsx b/source/Translation.xlsx index 815f2ad..220efa2 100644 Binary files a/source/Translation.xlsx and b/source/Translation.xlsx differ diff --git a/source/changelog.md b/source/changelog.md index 02f7f83..ff04b4f 100644 --- a/source/changelog.md +++ b/source/changelog.md @@ -1,6 +1,16 @@ ChanSort Change Log =================== +2021-07-26 +- user interface can now be toggled between + - **split view**: classic ChanSort UI with new/ordered and old/full list side-by-side + - **single-table**: simplified and more intuitive UI, but not quite as powerful + When you choose to "Modify current list", the single-table view is used by default, + otherwise the split view. But you can always toggle between them. +- added option to select a color theme. The UI now uses the "Office 2019 Colorful" theme by default, + the old theme was "Office 2016 Blue". +- improved many keyboard shortcuts (open the drop-down menus to see the shortcuts) + 2021-07-25 - DVBS_Program.csv, DVBS_CHANNEL_TABLE.csv, MSxxxx_DVBS_CHANNEL_TABLE.csv: Various versions of these files are used by Blaupunkt, Dyon, Hisense, Sharp and many others