1 #include <QApplication>
2 #include <LimeReport>
3 #include <QTranslator>
4 #include <QDebug>
5 #include "designersettingmanager.h"
6
main(int argc,char * argv[])7 int main(int argc, char *argv[])
8 {
9 QApplication a(argc, argv);
10 DesignerSettingManager manager;
11
12 QTranslator limeReportTranslator;
13 QTranslator qtBaseTranslator;
14 QTranslator qtDesignerTranslator;
15 QTranslator qtLinguistTranslator;
16
17 QString translationPath = QApplication::applicationDirPath();
18 translationPath.append("/translations");
19 Qt::LayoutDirection layoutDirection = QLocale::system().textDirection();
20
21 QString designerTranslation = QLocale(manager.getCurrentDefaultLanguage()).name();
22
23 if (limeReportTranslator.load("limereport_"+designerTranslation, translationPath)){
24 qtBaseTranslator.load("qtbase_" + designerTranslation, translationPath);
25 qtDesignerTranslator.load("designer_"+designerTranslation,translationPath);
26
27 a.installTranslator(&qtBaseTranslator);
28 a.installTranslator(&qtDesignerTranslator);
29 a.installTranslator(&limeReportTranslator);
30
31 Qt::LayoutDirection layoutDirection = QLocale(manager.getCurrentDefaultLanguage()).textDirection();
32 a.setLayoutDirection(layoutDirection);
33 }
34
35 LimeReport::ReportEngine report;
36 report.setPreviewLayoutDirection(layoutDirection);
37
38 if (a.arguments().count()>1){
39 report.loadFromFile(a.arguments().at(1));
40 }
41 QObject::connect(&report, SIGNAL(getAvailableDesignerLanguages(QList<QLocale::Language>*)),
42 &manager, SLOT(getAvailableLanguages(QList<QLocale::Language>*)));
43
44 QObject::connect(&report, SIGNAL(getCurrentDefaultDesignerLanguage()),
45 &manager, SLOT(getCurrentDefaultLanguage()));
46
47 QObject::connect(&report, SIGNAL(currentDefaultDesignerLanguageChanged(QLocale::Language)),
48 &manager, SLOT(currentDefaultLanguageChanged(QLocale::Language)));
49
50 report.setShowDesignerModal(false);
51 report.designReport();
52 return a.exec();
53 }
54
55