65 Commits

Author SHA1 Message Date
Horst Beham
b097d20de8 - updated build.md with steps to compile and debug ChanSort yourself (without DevExpress license)
- updated .csproj files to include proper configurations for "NoDevExpress_Debug"
2025-06-12 16:27:25 +02:00
Horst Beham
636b9c4151 - fixed Nuget hell: (auto) binding redirects to prevent compiler warning flood and ensure unit tests to be runnable
- put file name in Sqlite connect string in quotes
- improvements to Mediatek Philips 120+125/Sony serializer (physically reorder XML nodes, use flags stored in Java serialized blob)
- selecting a RefList changed the current working directory, which prevented .ini files to be found by loaders
2025-06-05 18:35:10 +02:00
Horst Beham
10a53f367f - Panasonic Fire-OS Channels.sdx lists: removed trailing underscore and space characters from channel names
- downgraded SQLite libraries to avoid a memory access violation crash in the SQLitePCL.raw 2.1.10 (causing at least Panasonic lists to crash on load)
- added support for \*.dbm files with size 782536 (e.g. Vantage VT-80 HD)
- moved "Save as..." and "Export reference list" to a sub menu as they caused frequent confusion with the regular "Save".
2025-03-08 18:19:10 +01:00
Horst Beham
0d9cdfefbb - added support for Philips PFL9715K/02 (Repair\s2channellib\*.dat channel list format version 0.1)
- added support for Grundig dtv_cmdb_3.bin channel lists with size of 1270 KB
- fixed saving of Grundig dtv_cmdb_3.bin channel lists with size of 1293 KB
- updated tivusat reference list
- fixed issue when saving *cmdb_*.bin channel lists after applying a reference list which contains missing channels
- HB_DATABASE_mm_dd.DBM for Strong SRT 7007: added option "reorderPhysically" in ChanSort.Loader.DBM.ini
  for this particular format to not only change the number but also change the order or data records in the file
- removed app.config files containing assembly redirects from projects and included them in the central Solution.props instead
- upgraded various NuGet packages
2025-01-28 21:26:53 +01:00
Horst Beham
d33f349626 - updated NuGet packages
- added support for dtv_cmdb_3.bin file with file size 1323920
- fixed error when opening reference list dialog with Italian translation
- "Tornado" TV lists which are a slight variation of old Philips lists using a file name __chtb_do_not_delete_.xml
2024-08-18 17:41:46 +02:00
Horst Beham
c609b9b40c - fixed support for Dijitsu channel lists with missing atv\_cmdb\_2.bin file
- experimental support for Metz channel\_list.xml lists
2024-02-25 17:59:34 +01:00
Horst Beham
77af8ea8d0 - experimental support for Xoro HB_DATABASE_C.DBM with file size of 109720 (in case there is no checksum validation)
- LG webOS 4 GlobalClone TLL now allows to set Fav H
- Panasonic svl.bin/svl.db now also uses the ONID as 3rd criteria for joining SVL and TSL tables (caused tuplicates when there are multiple ONIDs on the same transponder)
- Fav list names can no longer be edited for file formats that don't explicitly allow it
- workaround for regression that ReferenceListForm constructur throws an error when deserializing a SuperToolTip
2023-12-18 17:03:05 +01:00
Horst Beham
b89f5fc22a - fixed loading of tv.db / idtvChannels.bin lists containing DVB-T2 channels (error about mismatching symbol rate) 2023-12-18 09:45:20 +01:00
Horst Beham
ecac26b2bc - Philips format 120 uses lowercase hex digits for DVB*.xml files (TV shows wrong chars when using uppercase)
- upgrade to DX 23.1.6 (with a hotfix)
2023-12-12 19:07:57 +01:00
Horst Beham
6134eb3eb5 - improved tv.db/idtvChannel.bin support (e.g. Panasonic LSW500, LXW700)
- fixed error when changing "Auto hide/unhide columns" option while no list is loaded
- added "Feature" to serializers so they can enforce that all TV channels must come before Radio and Data (but share a common number sequence)
2023-10-28 21:28:02 +02:00
Horst Beham
5476e1f40e - Panasonic LS500/LX700 idtvChannel.bin loader now uses .ini file based mapping instead of hardcoded structure to support different binary file layouts 2023-10-28 16:51:42 +02:00
Horst Beham
8ac45d5729 - fixed loading .txt reference lists
- added support for HB\_DATABASE\_\*.DBM channel lists with file size 74303  (e.g. Renkforce 1510 C HD, Telestar digiHD TC 7)
- added support for dtv_cmdb_2.bin files with file size 2731173  (e.g. Dijitsu Android TV with LD-M538 board)
- improved experimental support for amdb\*.db Android STB channel lists  (now grouped by TV and radio for each satellite)
- combined HHD Hex Editor Neo structure definition files for HB_DATABASE.DBM file formats
2023-10-22 21:43:46 +02:00
Horst Beham
3139f3d9f4 Various changes and refactorings to integrate the suggested changes from pull-request https://github.com/PredatH0r/ChanSort/pull/358 to handle the distinction between IP-antenna, IP-cable, IP-sat and DVB-T, DVB-C, DVB-S for Panasonic TVs.
- SignalSource.IP is now treated as a broadcast system (distinguishing Analog/Dvb/Ip) and no longer a broadcast medium (like antenna/cable/sat).
- SignalSource.Digital was renamed to DVB
2023-06-03 10:38:11 +02:00
Horst Beham
68d3fc4963 - Panasonic LS 500 / LX 700 series: support for new firmware which doesn't export a hotel.bin file.
- Loewe servicelist.xml (and maybe some other .xml files) larger than 2 000 000 bytes were
  not loaded.
- Enigma/Linux lists can now also be opened by selecting a .tv or .radio file (not just lamedb)
2023-06-01 11:11:33 +02:00
Horst Beham
61a25ae913 cleaning up dependencies 2023-01-03 20:43:15 +01:00
Horst Beham
e40a12bb31 cleaning up dependencies 2023-01-03 20:05:07 +01:00
Horst Beham
80fc264bd0 - converted from VisualStudio build system to MSBuild 2023-01-03 11:19:07 +01:00
Horst Beham
d361d51b8b - removed superfluous parameter from SerializerBase.Save()
- added "Pooling=False" parameter to all Sqlite connection strings to prevent open file locks after closing the connection and to avoid extreme delays when using CloseAllPools()
- C# code refactoring "using var" instead of "using ( ) { }" where possible
2022-11-29 22:00:16 +01:00
Horst Beham
6f3df7044e - updated nuget packages
- fixed issues where SQLite database files didn't get unlocked after saving
- fixed quirks with missing e_sqlite3.dll when running unit tests with Resharper
2022-11-29 18:21:52 +01:00
Horst Beham
a39d8f7d18 - added function to mark a channel for swapping + swap with current channel
- replaced misuse of "FileLoadException" with a custom LoaderException to handle file loading issues with better continue/fail logic
- removed "Save As" and replaced it with "Convert list" menu item that shows information on how to use a reference list instead of direct conversion
2022-11-29 14:58:00 +01:00
Horst Beham
4a1a39b1e7 - added function to mark a channel for swapping + swap with current channel
- replaced misuse of "FileLoadException" with a custom LoaderException to handle file loading issues with better continue/fail logic
- removed "Save As" and replaced it with "Convert list" menu item that shows information on how to use a reference list instead of direct conversion
2022-11-29 14:56:23 +01:00
Horst Beham
954b44ed7a - fixed "Export to Excel" (copies the list as tab-separated text into clipboard)
- included latest translation to Polish (thanks to J.D.)
- reorganized File menu and tool bar
- allow renaming channels in SatcoDX channel lists (\*.sdx)
- improved support for Panasonic LS 500 / LX 700 series
2022-11-22 21:36:01 +01:00
Horst Beham
25486ce5a0 - some text updates 2022-10-06 17:53:28 +02:00
Horst Beham
074a4c38bb - Panasonic LS/LX seems to mess up the "skip" Flag when running a new scan, so no longer throw an error when the flag differs between the two data files 2022-10-06 17:34:16 +02:00
Horst Beham
e582cb95b7 - function to remove backup files (so that a new backup will be generated)
- remember last directory in FileOpenDialog, even when opening the file failed
- HDD Hex Editor Neo file structure definition
- improvements for Panasonic LS/LX serializer
2022-10-05 18:03:12 +02:00
Horst Beham
391a9f3872 - physically reordering Panasonic idtvChannels (required for proper order in the TV's menu) 2022-10-03 17:27:02 +02:00
Horst Beham
3b996f94e5 - improved experimental support for Panasonic LS 500 / LX 700 file format 2022-10-03 10:28:41 +02:00
Horst Beham
17460c1039 - ref list dialog uses TabControl to fit on tiny screen with scaled up fonts
- incomplete loader for Panasonic LS 500, LX 700 Android devices (/mnt/vendor/.../tv.db and idtvChannel.bin files)
2022-10-03 10:28:41 +02:00
Horst Beham
76d88c63cc - added support for Orsay .zip files which contain a Clone/map-AirD and other files similar to Samsung .scm
- Reference list dialog is now resizable
- Grundig dvb\*_config.xml lists are now separated into TV and Radio lists with individual ordering
- ability to load Grundig dvb\*\_config.xml files containing invalid XML characters (e.g. 0x10)
2022-04-19 10:36:52 +02:00
Horst Beham
1b90ebcc78 - LG webOS 5/6: setting userEditChNumber and userSelCHNo (just like the TV does) to prevent DVB-C lists (and maybe others too) for changing channel numbers after import
- m3u: support for extended header and a couple more columns
- fixed exception when the Favorites column is added manually for lists that don't support favorites
2021-10-24 22:35:32 +02:00
Horst Beham
c035c8539e - Panasonic: improved symbol rate and satellite position detection
- startup window location and size are adjusted to fit on screen
2021-09-23 20:25:30 +02:00
Horst Beham
bdd255a940 Panasonic: fixed byte-order detection for symbol rate and satellite orbital position 2021-09-23 15:24:21 +02:00
Horst Beham
4df90ca7bf - 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
2021-09-23 14:58:42 +02:00
Horst Beham
063ed165d2 - 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
- Philips: enabled write mode for Repair\\FLASH\_\*/\*.db file format (one variant was confirmed to work)
  Favorite lists for this format are disabled for now (TV ignored them).
- Panasonic: importing a modified svl.bin file caused the TV to use case-sensitive sorting when using the
  function to list the names sorted alphabetically. This is now fixed.
2021-09-22 23:46:03 +02:00
Horst Beham
d9f9b490e5 - Panasonic: added exerimental support for channel\_list.xml lists (Panasonic Android TVs, 2019 and later)
Unfortunately the only information included in this format is the channel number and a truncated channel name.
2021-09-19 23:32:38 +02:00
Horst Beham
9c2a7b9195 - Philips: fixes for ChannelMap_100, 105 and 110 formats
- Philips: support for FLASH/*.bin DVB-T/C and preset DVB-S lists (mgr_chan_s_pkg.db)
- Toshiba: lists with chmgt_type001\\chmgt.bin can now be opened without zipping them
- Toshiba: selecting the hotelopt_type001.bin will now also load the list (if the type is supported)
- Alden: added support for "Alden" Android SmartTV channel list format (dvr_rtk_tv.db)
2021-09-06 20:42:45 +02:00
Horst Beham
5a6e8d9082 - using AnyCPU to support x64 and ARM based CPUs (e.g. running on Win10-arm on a Mac Pro with M1 CPU)
- upgraded to latest Sqlite libraries to support ARM
- finished implementation for Hisense Vidaa U5.2 file format (using servicelist.db with renamed tables and columns)
2021-07-18 12:24:51 +02:00
Horst Beham
cc1cebcacd - switched to AnyCPU build
- updated to latest nuget packages (stable)
2021-07-12 14:36:18 +02:00
Horst Beham
35111daeda 2021-05-01
- added "Settings / Reset to defaults and restart" function to delete the stored customized settings in case something
  went wrong (like massively oversized column widths)
- Philips ChannelMap\_30: fixed error when trying to save this type of list
- Upgraded to DevExpress WinForms 20.2.7 user interface library
2021-05-01 11:41:33 +02:00
Horst Beham
5a07d36f56 removed DependencyChecker code that was used to ensure VC2010 Redist x86 is installed 2021-04-25 18:41:53 +02:00
Horst Beham
8b956ed364 - replaced System.Data.SQLite with Microsoft.Data.Sqlite because MS removed the required VC2010 Redist x86 from their website
- updated bunch of other Nuget packages
2021-04-25 18:31:05 +02:00
Horst Beham
5705a435b4 - added unit tests for Enigma2 and Grundig loaders
- added round-trip unit test for all loaders to check reordering channels and favorites, saving and reloading
- internal code clean-up regarding different favorite list modes (none vs. flags vs. ordered per source vs. mixed source)
2021-03-14 22:13:22 +01:00
Horst Beham
f5010439cb - W.I.P: Enigma2 lamedb / bouquets support for Linux based Set-Top-Boxes (Dreambox, VU+, Octagon, ...)
- Toshiba settingsDB.db: support for lists without analog tuner data (missing TADTunerDataTable)
- Grunding: failed to load lists where the <Digital> element did not contain a <channels> child element
- W.I.P: reworking the reference list system so that a simple list of channels can be applied to the main channel numbers or a particular favorite list.
  (The "Automatically reorder all lists" options currently does not work)
2021-03-13 18:11:30 +01:00
Horst Beham
f85ff02a92 - Panasonic: fixed error reading lists with channels that refer to non-existing transponders
- Philips ChannelMap_45: incrementing fav list version number when saving and setting the last_watched_channel_id to
  the first channel in the fav list (ensuring that the channel is actually present in the list)
2021-02-17 09:41:06 +01:00
Horst Beham
086d4683fd - merged projects so that there is one loader for each manufacturer 2021-01-23 14:22:18 +01:00
Horst Beham
eaa09181cf - Panasonic: channel name editing is now supported when all channels implicitly use valid utf-8 encoding 2020-12-26 18:16:01 +01:00
Horst Beham
e7bb88c554 2020-12-26
- LG WebOS 5: added warning that support is only experimental.
- Panasonic: Channel name editing is now supported for svl.bin files (unless there is no indicator what encoding to use)
- Hungarian translation: added missing files to .zip
2020-12-26 16:51:33 +01:00
Horst Beham
dc810b0a12 - added Turkish translation (thanks to Ali Haykir)
- Philips: combined DVB-C and DVB-T into a single list with a common number domain
- added exprimental support for Samsung "iptv" list
- added Suiss reference lists with Astra 19.2E + Hotbird 13.0E channels
- fixed "System.ArgumentOutOfRangeException..." when opening a file which supports mixed-source favorite lists
  (Sony, Philips, Hisense, ...)
- System requirements changed: .NET Framework 4.8
- added high-DPI support
- added Accessibility menu options to change the UI font size
2020-05-02 19:04:43 +02:00
hbeham
9ba8a357ed - LG GlobalClone: Favorites were not loaded correctly into ChanSort
- LG GlobalClone: some changes that might fix problems where the TV didn't work properly
  with an importet list (ChanSort now modifies less data in the file)
- Menu items for hide/unhide, skip/unskip, lock/unlock are now disabled when these features are not supported by the
  channel list file format
- Applying a .txt reference list (which doesn't contain information about skip/lock/hide) will no longer clear these
  flags in the current channel list
2019-11-24 20:00:48 +01:00
hbeham
5cdf9d0995 - Sony Android (E-Format) now supports independent favorite list ordering
- fixed issue when saving Sony Android list with high program numbers (causing negative int32 values due to bit shift)
- for unknown DVB service types the UI now shows the number instead of an empty string
- loaders are now setting the OldFavIndex (to be consistent with the use OldProgramNr)
- Form shows full file path in title bar
- no longer defaulting to "swap" mode when opening a file and using "current order"
- show "Source" column in the left list when editing a mixed source favorite list
2019-11-10 20:09:27 +01:00