Commit Graph

18 Commits

Author SHA1 Message Date
Gavin MacGregor 8751783cb2 Port from std::vector to QList 2025-03-18 19:03:45 +00:00
Gavin MacGregor 4a15d9a206 Port from QVector to QList 2025-03-18 16:24:12 +00:00
Gavin MacGregor 0493f0e270 Allow header row editing 2025-03-18 14:48:03 +00:00
Gavin MacGregor 1d462f4355 Merge branch 'refactor/packets' 2025-03-09 11:57:25 +00:00
Gavin MacGregor 564243822e Add RE command to TTI file handling 2025-03-02 23:01:33 +00:00
Gavin MacGregor 0901803186 Simplify storage of NOS control bits 2025-02-19 15:22:28 +00:00
Gavin MacGregor 923c5563d5 Store text in packets instead of array
This removes the character array from the LevelOnePage class and stores the
characters in packets 0 to 24 natively, adding a packet when a character is
first added to a row and removing a packet when a row becomes space
characters.
2025-02-13 22:55:11 +00:00
Gavin MacGregor 9427760631 Put back unhandled packet storage 2025-02-13 16:41:08 +00:00
Gavin MacGregor 0cc49e7ea5 Move from dynamically allocating arrays to fixed arrays
This should allow the page bass class to be copy constructed.
2025-02-12 21:49:56 +00:00
Gavin MacGregor 8bb05ed250 Use proper superclass 2025-02-11 21:29:58 +00:00
Gavin MacGregor 0a1c018a02 Remove unused and incorrect subclass copy constructor 2025-02-11 20:48:05 +00:00
Gavin MacGregor 4024efaf01 Rename packet variables
"y": packet number
"d": designation code
"t": triplet number

"packet" renamed to "pkt" in method parameters to avoid ambiguity with
the "packet" method.
2025-02-11 18:46:01 +00:00
Gavin MacGregor b937102139 Fix crash when copy constructing unhandled packets
Actually this is a workaround: it does not attempt to copy construct
unhandled packets, to avoid a bug in the base class where pointers were
copy constructed without copying the contents.

A proper fix will need refactoring of the packet storage code.
2025-02-11 09:43:36 +00:00
Gavin MacGregor df1122f621 Fix clang compile warnings 2025-01-19 19:22:09 +00:00
Gavin MacGregor e2f794c658 Update copyright notices to 2025 2024-12-31 10:51:06 +00:00
Gavin MacGregor f96b973ff3 Warn when Active Position differs between Levels 2024-12-01 21:51:32 +00:00
Gavin MacGregor 48a2b48964 Add monochrome rendering modes
These modes can be used to see the inner workings of colourful artworks that
frequently use "foreground colour, new background, foreground colour",
particularly to show exactly which colours are represented by set or clear
sixels.

One mode renders all characters in white on a black background and the other
mode renders black characters on a white background. The latter could be used
to save ink if the resulting image is printed.

Flash is suppressed in these mono modes, this may or may not change.
2024-12-01 17:44:58 +00:00
G.K.MacGregor 40fc1e38d8 Port to CMake from qmake, and split decoder into subdirectory
Qt 5 has had to be dropped as CMakeLists.txt uses qt_* specific commands
which are implemented in Qt 6 onwards.

cmake --install is only working on Linux at the moment; it installs the
executable and the bundled example tti files into /usr/local/share/doc

The teletext decoder with its document storage has been moved to a
subdirectory with the intention of making it possible to use in other
projects, but some further separation of editing stuff will be needed.
2024-08-11 15:35:49 +01:00