Skip to content

Commit

Permalink
Another attempt at image caching for faster loading
Browse files Browse the repository at this point in the history
  • Loading branch information
vedderb committed Jan 2, 2023
1 parent 6178287 commit 6dc1c41
Show file tree
Hide file tree
Showing 67 changed files with 550 additions and 1,011 deletions.
2 changes: 2 additions & 0 deletions main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
#include <QSettings>
#include <QDesktopWidget>
#include <QFontDatabase>
#include <QPixmapCache>

#include "tcphub.h"

Expand Down Expand Up @@ -126,6 +127,7 @@ int main(int argc, char *argv[])
QSettings set;
bool isDark = set.value("darkMode", true).toBool();
Utility::setDarkMode(isDark);
QPixmapCache::setCacheLimit(256000);

if (isDark) {
qputenv("QT_QUICK_CONTROLS_CONF", ":/qtquickcontrols2_dark.conf");
Expand Down
164 changes: 79 additions & 85 deletions mainwindow.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -119,89 +119,88 @@ MainWindow::MainWindow(QWidget *parent) :

this->setWindowIcon(QIcon(":/res/icon.svg"));

QString theme = Utility::getThemePath();
ui->actionParameterEditorMcconf->setIcon(QPixmap(theme + "icons/Horizontal Settings Mixer-96.png"));
ui->actionParameterEditorAppconf->setIcon(QPixmap(theme + "icons/Horizontal Settings Mixer-96.png"));
ui->actionParameterEditorFW->setIcon(QPixmap(theme + "icons/Horizontal Settings Mixer-96.png"));
ui->actionParameterEditorCustomConf0->setIcon(QPixmap(theme + "icons/Horizontal Settings Mixer-96.png"));
ui->actionSaveAppconfXml->setIcon(QPixmap(theme + "icons/Save as-96.png"));
ui->actionPreferences->setIcon(QPixmap(theme + "icons/Settings-96.png"));
ui->actionLoadAppconfXml->setIcon(QPixmap(theme + "icons/Open Folder-96.png"));
ui->actionSaveMotorConfXml->setIcon(QPixmap(theme + "icons/Save as-96.png"));
ui->actionLoadMotorConfXml->setIcon(QPixmap(theme + "icons/Open Folder-96.png"));
ui->actionSaveAppConfigurationHeader->setIcon(QPixmap(theme + "icons/Save as-96.png"));
ui->actionSaveAppConfigurationHeaderWrap->setIcon(QPixmap(theme + "icons/Save as-96.png"));
ui->actionSaveMotorConfigurationHeader->setIcon(QPixmap(theme + "icons/Save as-96.png"));
ui->actionSaveMotorConfigurationHeaderWrap->setIcon(QPixmap(theme + "icons/Save as-96.png"));
ui->actionExportConfigurationParser->setIcon(QPixmap(theme + "icons/Save as-96.png"));
ui->actionTerminalPrintFaults->setIcon(QPixmap(theme + "icons/Console-96.png"));
ui->actionTerminalShowHelp->setIcon(QPixmap(theme + "icons/Help-96.png"));
ui->actionTerminalClear->setIcon(QPixmap(theme + "icons/Delete-96.png"));
ui->actionTerminalPrintThreads->setIcon(QPixmap(theme + "icons/Electronics-96.png"));
ui->actionTerminalDRVResetLatchedFaults->setIcon(QPixmap(theme + "icons/Bug-96.png"));
ui->actionLibrariesUsed->setIcon(QPixmap(theme + "icons/About-96.png"));
ui->actionMotorSetupWizard->setIcon(QPixmap(theme + "icons/Wizard-96.png"));
ui->actionAppSetupWizard->setIcon(QPixmap(theme + "icons/Wizard-96.png"));
ui->actionAutoSetupFOC->setIcon(QPixmap(theme + "icons/Wizard-96.png"));
ui->actionSetupMotorsFOCQuick->setIcon(QPixmap(theme + "icons/Wizard-96.png"));
ui->actionAboutQt->setIcon(QPixmap(theme + "icons/About-96.png"));
ui->actionParameterEditorInfo->setIcon(QPixmap(theme + "icons/Horizontal Settings Mixer-96.png"));
ui->actionSafetyInformation->setIcon(QPixmap(theme + "icons/About-96.png"));
ui->actionVESCToolChangelog->setIcon(QPixmap(theme + "icons/About-96.png"));
ui->actionFirmwareChangelog->setIcon(QPixmap(theme + "icons/About-96.png"));
ui->actionWarrantyStatement->setIcon(QPixmap(theme + "icons/About-96.png"));
ui->actionLicense->setIcon(QPixmap(theme + "icons/About-96.png"));
ui->actionVESCProjectForums->setIcon(QPixmap(theme + "icons/User Group Man Man-96.png"));
ui->actionLoadFirmwareConfigs->setIcon(QPixmap(theme + "icons/Electronics-96.png"));
ui->actionBackupConfiguration->setIcon(QPixmap(theme + "icons/Save-96.png"));
ui->actionBackupConfigurationsCAN->setIcon(QPixmap(theme + "icons/Save-96.png"));
ui->actionRestoreConfiguration->setIcon(QPixmap(theme + "icons/Open Folder-96.png"));
ui->actionRestoreConfigurationsCAN->setIcon(QPixmap(theme + "icons/Open Folder-96.png"));
ui->actionClearConfigurationBackups->setIcon(QPixmap(theme + "icons/Delete-96.png"));
ui->actionBackupConfiguration->setIcon(QPixmap(theme + "icons/Save as-96.png"));
ui->actionReboot->setIcon(QPixmap(theme + "icons/Refresh-96.png"));
ui->actionExit->setIcon(QPixmap(theme + "icons/Shutdown-96.png"));
ui->pageLabel->setPixmap(QPixmap(theme + "logo.png"));
ui->actionReconnect->setIcon(QIcon(theme + "icons/Connected-96.png"));
ui->actionDisconnect->setIcon(QIcon(theme + "icons/Disconnected-96.png"));
ui->actionReadMcconf->setIcon(QIcon(theme + "icons/motor_up.png"));
ui->actionReadMcconfDefault->setIcon(QIcon(theme + "icons/motor_default.png"));
ui->actionWriteMcconf->setIcon(QIcon(theme + "icons/motor_down.png"));
ui->actionReadAppconf->setIcon(QIcon(theme + "icons/app_up.png"));
ui->actionReadAppconfDefault->setIcon(QIcon(theme + "icons/app_default.png"));
ui->actionWriteAppconf->setIcon(QIcon(theme + "icons/app_down.png"));

QIcon mycon = QIcon(theme + "icons/keys_off.png");
mycon.addPixmap(QPixmap(theme + "icons/keys_on.png"), QIcon::Normal, QIcon::On);
ui->actionParameterEditorMcconf->setIcon(Utility::getIcon("icons/Horizontal Settings Mixer-96.png"));
ui->actionParameterEditorAppconf->setIcon(Utility::getIcon("icons/Horizontal Settings Mixer-96.png"));
ui->actionParameterEditorFW->setIcon(Utility::getIcon("icons/Horizontal Settings Mixer-96.png"));
ui->actionParameterEditorCustomConf0->setIcon(Utility::getIcon("icons/Horizontal Settings Mixer-96.png"));
ui->actionSaveAppconfXml->setIcon(Utility::getIcon("icons/Save as-96.png"));
ui->actionPreferences->setIcon(Utility::getIcon("icons/Settings-96.png"));
ui->actionLoadAppconfXml->setIcon(Utility::getIcon("icons/Open Folder-96.png"));
ui->actionSaveMotorConfXml->setIcon(Utility::getIcon("icons/Save as-96.png"));
ui->actionLoadMotorConfXml->setIcon(Utility::getIcon("icons/Open Folder-96.png"));
ui->actionSaveAppConfigurationHeader->setIcon(Utility::getIcon("icons/Save as-96.png"));
ui->actionSaveAppConfigurationHeaderWrap->setIcon(Utility::getIcon("icons/Save as-96.png"));
ui->actionSaveMotorConfigurationHeader->setIcon(Utility::getIcon("icons/Save as-96.png"));
ui->actionSaveMotorConfigurationHeaderWrap->setIcon(Utility::getIcon("icons/Save as-96.png"));
ui->actionExportConfigurationParser->setIcon(Utility::getIcon("icons/Save as-96.png"));
ui->actionTerminalPrintFaults->setIcon(Utility::getIcon("icons/Console-96.png"));
ui->actionTerminalShowHelp->setIcon(Utility::getIcon("icons/Help-96.png"));
ui->actionTerminalClear->setIcon(Utility::getIcon("icons/Delete-96.png"));
ui->actionTerminalPrintThreads->setIcon(Utility::getIcon("icons/Electronics-96.png"));
ui->actionTerminalDRVResetLatchedFaults->setIcon(Utility::getIcon("icons/Bug-96.png"));
ui->actionLibrariesUsed->setIcon(Utility::getIcon("icons/About-96.png"));
ui->actionMotorSetupWizard->setIcon(Utility::getIcon("icons/Wizard-96.png"));
ui->actionAppSetupWizard->setIcon(Utility::getIcon("icons/Wizard-96.png"));
ui->actionAutoSetupFOC->setIcon(Utility::getIcon("icons/Wizard-96.png"));
ui->actionSetupMotorsFOCQuick->setIcon(Utility::getIcon("icons/Wizard-96.png"));
ui->actionAboutQt->setIcon(Utility::getIcon("icons/About-96.png"));
ui->actionParameterEditorInfo->setIcon(Utility::getIcon("icons/Horizontal Settings Mixer-96.png"));
ui->actionSafetyInformation->setIcon(Utility::getIcon("icons/About-96.png"));
ui->actionVESCToolChangelog->setIcon(Utility::getIcon("icons/About-96.png"));
ui->actionFirmwareChangelog->setIcon(Utility::getIcon("icons/About-96.png"));
ui->actionWarrantyStatement->setIcon(Utility::getIcon("icons/About-96.png"));
ui->actionLicense->setIcon(Utility::getIcon("icons/About-96.png"));
ui->actionVESCProjectForums->setIcon(Utility::getIcon("icons/User Group Man Man-96.png"));
ui->actionLoadFirmwareConfigs->setIcon(Utility::getIcon("icons/Electronics-96.png"));
ui->actionBackupConfiguration->setIcon(Utility::getIcon("icons/Save-96.png"));
ui->actionBackupConfigurationsCAN->setIcon(Utility::getIcon("icons/Save-96.png"));
ui->actionRestoreConfiguration->setIcon(Utility::getIcon("icons/Open Folder-96.png"));
ui->actionRestoreConfigurationsCAN->setIcon(Utility::getIcon("icons/Open Folder-96.png"));
ui->actionClearConfigurationBackups->setIcon(Utility::getIcon("icons/Delete-96.png"));
ui->actionBackupConfiguration->setIcon(Utility::getIcon("icons/Save as-96.png"));
ui->actionReboot->setIcon(Utility::getIcon("icons/Refresh-96.png"));
ui->actionExit->setIcon(Utility::getIcon("icons/Shutdown-96.png"));
ui->pageLabel->setPixmap(Utility::getIcon("logo.png"));
ui->actionReconnect->setIcon(Utility::getIcon("icons/Connected-96.png"));
ui->actionDisconnect->setIcon(Utility::getIcon("icons/Disconnected-96.png"));
ui->actionReadMcconf->setIcon(Utility::getIcon("icons/motor_up.png"));
ui->actionReadMcconfDefault->setIcon(Utility::getIcon("icons/motor_default.png"));
ui->actionWriteMcconf->setIcon(Utility::getIcon("icons/motor_down.png"));
ui->actionReadAppconf->setIcon(Utility::getIcon("icons/app_up.png"));
ui->actionReadAppconfDefault->setIcon(Utility::getIcon("icons/app_default.png"));
ui->actionWriteAppconf->setIcon(Utility::getIcon("icons/app_down.png"));

QIcon mycon = QIcon(Utility::getIcon("icons/keys_off.png"));
mycon.addPixmap(Utility::getIcon("icons/keys_on.png"), QIcon::Normal, QIcon::On);
ui->actionKeyboardControl->setIcon(mycon);
ui->actionGamepadControl->setIcon(QIcon(theme + "icons/Controller-96.png"));
mycon = QIcon(theme + "icons/rt_off.png");
mycon.addPixmap(QPixmap(theme + "icons/rt_on.png"), QIcon::Normal, QIcon::On);
ui->actionGamepadControl->setIcon(Utility::getIcon("icons/Controller-96.png"));
mycon = QIcon(Utility::getIcon("icons/rt_off.png"));
mycon.addPixmap(Utility::getIcon("icons/rt_on.png"), QIcon::Normal, QIcon::On);
ui->actionRtData->setIcon(mycon);
mycon = QIcon(theme + "icons/rt_app_off.png");
mycon.addPixmap(QPixmap(theme + "icons/rt_app_on.png"), QIcon::Normal, QIcon::On);
mycon = QIcon(Utility::getIcon("icons/rt_app_off.png"));
mycon.addPixmap(Utility::getIcon("icons/rt_app_on.png"), QIcon::Normal, QIcon::On);
ui->actionRtDataApp->setIcon(mycon);
mycon = QIcon(theme + "icons/imu_off.png");
mycon.addPixmap(QPixmap(theme + "icons/imu_on.png"), QIcon::Normal, QIcon::On);
mycon = QIcon(Utility::getIcon("icons/imu_off.png"));
mycon.addPixmap(Utility::getIcon("icons/imu_on.png"), QIcon::Normal, QIcon::On);
ui->actionIMU->setIcon(mycon);
mycon = QIcon(theme + "icons/bms_off.png");
mycon.addPixmap(QPixmap(theme + "icons/bms_on.png"), QIcon::Normal, QIcon::On);
mycon = QIcon(Utility::getIcon("icons/bms_off.png"));
mycon.addPixmap(Utility::getIcon("icons/bms_on.png"), QIcon::Normal, QIcon::On);
ui->actionrtDataBms->setIcon(mycon);
mycon = QIcon(theme + "icons/alive_off.png");
mycon.addPixmap(QPixmap(theme + "icons/alive_on.png"), QIcon::Normal, QIcon::On);
mycon = QIcon(Utility::getIcon("icons/alive_off.png"));
mycon.addPixmap(Utility::getIcon("icons/alive_on.png"), QIcon::Normal, QIcon::On);
ui->actionSendAlive->setIcon(mycon);
mycon = QIcon(theme + "icons/can_off.png");
mycon.addPixmap(QPixmap(theme + "icons/can_on.png"), QIcon::Normal, QIcon::On);
mycon = QIcon(Utility::getIcon("icons/can_off.png"));
mycon.addPixmap(Utility::getIcon("icons/can_on.png"), QIcon::Normal, QIcon::On);
ui->actionCanFwd->setIcon(mycon);
ui->scanCanButton->setIcon(QIcon(theme + "icons/Refresh-96.png"));
ui->scanCanButton->setIcon(Utility::getIcon("icons/Refresh-96.png"));

ui->dutyButton->setIcon(QIcon(theme + "icons/Circled Play-96.png"));
ui->currentButton->setIcon(QIcon(theme + "icons/Circled Play-96.png"));
ui->speedButton->setIcon(QIcon(theme + "icons/Circled Play-96.png"));
ui->posButton->setIcon(QIcon(theme + "icons/Circled Play-96.png"));
ui->brakeCurrentButton->setIcon(QIcon(theme + "icons/Brake Warning-96.png"));
ui->handbrakeButton->setIcon(QIcon(theme + "icons/Brake Warning-96.png"));
ui->fullBrakeButton->setIcon(QIcon(theme + "icons/Anchor-96.png"));
ui->dutyButton->setIcon(Utility::getIcon( "icons/Circled Play-96.png"));
ui->currentButton->setIcon(Utility::getIcon("icons/Circled Play-96.png"));
ui->speedButton->setIcon(Utility::getIcon("icons/Circled Play-96.png"));
ui->posButton->setIcon(Utility::getIcon("icons/Circled Play-96.png"));
ui->brakeCurrentButton->setIcon(Utility::getIcon("icons/Brake Warning-96.png"));
ui->handbrakeButton->setIcon(Utility::getIcon("icons/Brake Warning-96.png"));
ui->fullBrakeButton->setIcon(Utility::getIcon("icons/Anchor-96.png"));

qRegisterMetaType<QtMsgType>("QtMsgType");

Expand Down Expand Up @@ -252,7 +251,7 @@ MainWindow::MainWindow(QWidget *parent) :

QMenu *fwMenu = new QMenu(this);
fwMenu->setTitle("Load Firmware Configs");
fwMenu->setIcon(QIcon( theme + "icons/Electronics-96.png"));
fwMenu->setIcon(Utility::getIcon("icons/Electronics-96.png"));
for (auto fw: Utility::configSupportedFws()) {
QAction *action = new QAction(fwMenu);
action->setText(QString("%1.%2").arg(fw.first).arg(fw.second, 2, 10, QChar('0')));
Expand All @@ -268,11 +267,10 @@ MainWindow::MainWindow(QWidget *parent) :
auto reloadBackupMenu = [this, backupMenu]() {
backupMenu->clear();
backupMenu->setTitle("Load Configuration Backups for UUID");
QString theme = Utility::getThemePath();
backupMenu->setIcon(QIcon( theme + "icons/Open Folder-96.png"));
backupMenu->setIcon(Utility::getIcon("icons/Open Folder-96.png"));
for (auto uuid: mVesc->confListBackups()) {
QAction *action = new QAction(backupMenu);
action->setIcon(QIcon( theme + "icons/Electronics-96.png"));
action->setIcon(Utility::getIcon("icons/Electronics-96.png"));
QString txt = uuid;
QString name = mVesc->confBackupName(uuid);
if (!name.isEmpty()) {
Expand Down Expand Up @@ -516,12 +514,10 @@ MainWindow::MainWindow(QWidget *parent) :

mPortTimer.start(1000);
connect(&mPortTimer, &QTimer::timeout, [this]() {
QString theme = Utility::getThemePath();

if (!mVesc->isPortConnected() && mVesc->lastPortAvailable()) {
ui->actionReconnect->setIcon(QIcon(theme + "icons/Connected-hl-96.png"));
ui->actionReconnect->setIcon(Utility::getIcon("icons/Connected-hl-96.png"));
} else {
ui->actionReconnect->setIcon(QIcon(theme + "icons/Connected-96.png"));
ui->actionReconnect->setIcon(Utility::getIcon("icons/Connected-96.png"));
}

ui->actionReconnect->setEnabled(!mVesc->isPortConnected());
Expand Down Expand Up @@ -1315,8 +1311,6 @@ void MainWindow::reloadPages()
connect(ui->actionSetupMotorsFOCQuick, SIGNAL(triggered(bool)),
mPageWelcome, SLOT(startSetupWizardFocSimple()));



mPageConnection = new PageConnection(this);
mPageConnection->setVesc(mVesc);
ui->pageWidget->addWidget(mPageConnection);
Expand Down
3 changes: 1 addition & 2 deletions pages/pageappsettings.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,7 @@ PageAppSettings::PageAppSettings(QWidget *parent) :
ui(new Ui::PageAppSettings)
{
ui->setupUi(this);
QString theme = Utility::getThemePath();
ui->appWizardButton->setIcon(QPixmap(theme + "icons/Wizard-96.png"));
ui->appWizardButton->setIcon(Utility::getIcon("icons/Wizard-96.png"));
layout()->setContentsMargins(0, 0, 0, 0);
mVesc = nullptr;
}
Expand Down
15 changes: 7 additions & 8 deletions pages/pagebms.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -28,14 +28,13 @@ PageBms::PageBms(QWidget *parent) :
ui->setupUi(this);
mVesc = nullptr;

QString theme = Utility::getThemePath();
ui->balOnButton->setIcon(QPixmap(theme + "/icons/Circled Play-96.png"));
ui->chgEnButton->setIcon(QPixmap(theme + "/icons/Circled Play-96.png"));
ui->balOffButton->setIcon(QPixmap(theme + "/icons/Stop-96.png"));
ui->chgDisButton->setIcon(QPixmap(theme + "/icons/Stop-96.png"));
ui->resetAhButton->setIcon(QPixmap(theme + "/icons/Restart-96.png"));
ui->resetWhButton->setIcon(QPixmap(theme + "/icons/Restart-96.png"));
ui->zeroCurrentButton->setIcon(QPixmap(theme + "/icons/Refresh-96.png"));
ui->balOnButton->setIcon(Utility::getIcon("/icons/Circled Play-96.png"));
ui->chgEnButton->setIcon(Utility::getIcon("/icons/Circled Play-96.png"));
ui->balOffButton->setIcon(Utility::getIcon("/icons/Stop-96.png"));
ui->chgDisButton->setIcon(Utility::getIcon("/icons/Stop-96.png"));
ui->resetAhButton->setIcon(Utility::getIcon("/icons/Restart-96.png"));
ui->resetWhButton->setIcon(Utility::getIcon("/icons/Restart-96.png"));
ui->zeroCurrentButton->setIcon(Utility::getIcon("/icons/Refresh-96.png"));

ui->valTable->setColumnWidth(0, 200);
ui->splitter->setSizes(QList<int>({1000, 500}));
Expand Down
6 changes: 2 additions & 4 deletions pages/pagecananalyzer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -27,10 +27,8 @@ PageCanAnalyzer::PageCanAnalyzer(QWidget *parent) :
{
ui->setupUi(this);


QString theme = Utility::getThemePath();
ui->clearRxButton->setIcon(QPixmap(theme + "icons/Delete-96.png"));
ui->sendButton->setIcon(QPixmap(theme + "icons/Send File-96.png"));
ui->clearRxButton->setIcon(Utility::getIcon("icons/Delete-96.png"));
ui->sendButton->setIcon(Utility::getIcon("icons/Send File-96.png"));

layout()->setContentsMargins(0, 0, 0, 0);
ui->msgTable->setColumnWidth(1, 120);
Expand Down
Loading

0 comments on commit 6dc1c41

Please sign in to comment.