1 #include "mainwindow.h" 2 #include <QApplication> 3 4 class SavvyCANApplication : public QApplication 5 { 6 public: 7 MainWindow *mainWindow; 8 SavvyCANApplication(int & argc,char ** argv)9 SavvyCANApplication(int &argc, char **argv) : QApplication(argc, argv) 10 { 11 } 12 event(QEvent * event)13 bool event(QEvent *event) override 14 { 15 if (event->type() == QEvent::FileOpen) 16 { 17 QFileOpenEvent *openEvent = static_cast<QFileOpenEvent *>(event); 18 mainWindow->handleDroppedFile(openEvent->file()); 19 } 20 21 return QApplication::event(event); 22 } 23 }; 24 main(int argc,char * argv[])25int main(int argc, char *argv[]) 26 { 27 SavvyCANApplication a(argc, argv); 28 29 //Add a local path for Qt extensions, to allow for per-application extensions. 30 a.addLibraryPath("plugins"); 31 32 //These things are used by QSettings to set up setting storage 33 a.setOrganizationName("EVTV"); 34 a.setApplicationName("SavvyCAN"); 35 a.setOrganizationDomain("evtv.me"); 36 QSettings::setDefaultFormat(QSettings::IniFormat); 37 38 a.mainWindow = new MainWindow(); 39 40 QSettings settings; 41 int fontSize = settings.value("Main/FontSize", 9).toUInt(); 42 QFont sysFont = QFont(); //get default font 43 sysFont.setPointSize(fontSize); 44 a.setFont(sysFont); 45 46 a.mainWindow->show(); 47 48 int retCode = a.exec(); 49 50 delete a.mainWindow; a.mainWindow = NULL; 51 52 return retCode; 53 } 54