RLE for greyscale lcd (gives more firmware space!) (#1142)

* use RLE encodes bitmaps on 212x64 pixel radios

* fix model image display
fix icon display

* implement RLE bitmaps in companion for splash image on 212x64 radios
reserve 3kB for RLE bitmaps in firmware

* fix size check

* use defines instead of magic numbers

* fix display of splash screens on 212x64 radios

* add warning message if compressed image is larger than the reserved space
This commit is contained in:
Malte Langermann
2021-12-04 15:06:23 +11:00
committed by GitHub
parent 995e41469e
commit ec01fa8df9
12 changed files with 317 additions and 33 deletions
+9 -3
View File
@@ -28,10 +28,14 @@
//*** Side Class ***
Side::Side(){
Side::Side(QDialog* parent):
parent(parent)
{
imageLabel = 0;
fileNameEdit = 0;
saveButton = 0;
invertButton = 0;
libraryButton = 0;
loadFwButton=0;
loadPictButton = 0;
loadProfileButton = 0;
@@ -62,7 +66,7 @@ bool Side::displayImage(QString fileName, Source pictSource)
// Determine which picture format to use
if (pictSource == FW) {
FirmwareInterface firmware(fileName);
FirmwareInterface firmware(fileName, parent);
if (!firmware.hasSplash())
return false;
else
@@ -120,7 +124,7 @@ bool Side::saveImage()
{
if (*source == FW )
{
FirmwareInterface firmware(*saveToFileName);
FirmwareInterface firmware(*saveToFileName, parent);
if (!firmware.hasSplash()) {
return false;
}
@@ -152,6 +156,8 @@ bool Side::saveImage()
CustomizeSplashDialog::CustomizeSplashDialog(QWidget *parent) :
QDialog(parent),
left(this),
right(this),
ui(new Ui::CustomizeSplashDialog)
{
ui->setupUi(this);