#include <QApplication> #include <LimeReport> #include <QTranslator> #include <QDebug> #include "designersettingmanager.h" int main(int argc, char *argv[]) { QApplication a(argc, argv); DesignerSettingManager manager; QTranslator limeReportTranslator; QTranslator qtBaseTranslator; QTranslator qtDesignerTranslator; QTranslator qtLinguistTranslator; QString translationPath = QApplication::applicationDirPath(); translationPath.append("/translations"); Qt::LayoutDirection layoutDirection = QLocale::system().textDirection(); QString designerTranslation = QLocale(manager.getCurrentDefaultLanguage()).name(); if (limeReportTranslator.load("limereport_"+designerTranslation, translationPath)){ qtBaseTranslator.load("qtbase_" + designerTranslation, translationPath); qtDesignerTranslator.load("designer_"+designerTranslation,translationPath); a.installTranslator(&qtBaseTranslator); a.installTranslator(&qtDesignerTranslator); a.installTranslator(&limeReportTranslator); Qt::LayoutDirection layoutDirection = QLocale(manager.getCurrentDefaultLanguage()).textDirection(); a.setLayoutDirection(layoutDirection); } LimeReport::ReportEngine report; report.setPreviewLayoutDirection(layoutDirection); if (a.arguments().count()>1){ report.loadFromFile(a.arguments().at(1)); } QObject::connect(&report, SIGNAL(getAvailableDesignerLanguages(QList<QLocale::Language>*)), &manager, SLOT(getAvailableLanguages(QList<QLocale::Language>*))); QObject::connect(&report, SIGNAL(getCurrentDefaultDesignerLanguage()), &manager, SLOT(getCurrentDefaultLanguage())); QObject::connect(&report, SIGNAL(currentDefaultDesignerLanguageChanged(QLocale::Language)), &manager, SLOT(currentDefaultLanguageChanged(QLocale::Language))); report.designReport(); return a.exec(); }