#ifndef TRANSLATIONEDITOR_H #define TRANSLATIONEDITOR_H #include "lrreporttranslation.h" #include #include #include #include namespace LimeReport { namespace Ui { class TranslationEditor; } class TranslationEditor: public QWidget { Q_OBJECT public: explicit TranslationEditor(QWidget* parent = 0); void setReportEngine(ITranslationContainer* translationContainer); ~TranslationEditor(); void updateUi(); void activateLanguage(QLocale::Language language); void activatePage(PageTranslation* pageTranslation); void activateTranslation(const QString& itemName, const QString& propertyName); private slots: void on_tbStrings_itemSelectionChanged(); void on_teTranslation_textChanged(); void on_cbChecked_toggled(bool checked); void on_twPages_itemSelectionChanged(); void on_tbAddLanguage_clicked(); void on_tbDeleteLanguage_clicked(); void slotItemChecked(); void on_lvLanguages_itemSelectionChanged(); private: QLocale::Language getLanguageByName(const QString& languageName); private: Ui::TranslationEditor* ui; ITranslationContainer* m_translationContainer; QMap m_reportTranslations; QMap m_pageTranslations; ReportTranslation* m_currentReportTranslation; PageTranslation* m_currentPageTranslation; PropertyTranslation* m_currentPropertyTranslation; bool m_translationChanging; QShortcut* m_clrReturn; }; } // namespace LimeReport #endif // TRANSLATIONEDITOR_H