// Dokonuje post-przetwarzania pliku z napisami (na podstawie konfiguracji) void QNapiAbstractEngine::pp() { // Usuwanie linii z plikow z napisami if(GlobalConfig().ppRemoveLines()) { ppRemoveLinesContainingWords(GlobalConfig().ppRemoveWords()); } // Zmiana kodowania pobranych napisow switch (GlobalConfig().ppEncodingMethod()) { case CEM_REPLACE_DIACRITICS: ppReplaceDiacriticsWithASCII(); break; case CEM_CHANGE: // Jesli automatycznie nie uda mu sie wykryc kodowania, to jako kodowania // zrodlowego uzywa kodowania wybranego przez uzytkownika if (!GlobalConfig().ppAutoDetectEncoding() || !ppChangeSubtitlesEncoding(GlobalConfig().ppEncodingTo())) { ppChangeSubtitlesEncoding(GlobalConfig().ppEncodingFrom(), GlobalConfig().ppEncodingTo()); } break; case CEM_ORIGINAL: // Nie ruszaj pobranych napisów! break; } if(!GlobalConfig().ppSubFormat().isEmpty()) { SubtitleConverter sc; QString targetFormat = GlobalConfig().ppSubFormat(); sc.convertSubtitles(subtitlesTmp, targetFormat, subtitlesTmp, movie); } }
// Dokonuje post-przetwarzania pliku z napisami (na podstawie konfiguracji) void QNapiAbstractEngine::pp() { // Usuwanie linii z plikow z napisami if(GlobalConfig().ppRemoveLines()) { ppRemoveLinesContainingWords(GlobalConfig().ppRemoveWords()); } // Zmiana kodowania pobranych napisow if(GlobalConfig().ppChangeEncoding()) { // Jesli automatycznie nie uda mu sie wykryc kodowania, to jako kodowania // zrodlowego uzywa kodowania wybranego przez uzytkownika if (!GlobalConfig().ppAutoDetectEncoding() || !ppChangeSubtitlesEncoding(GlobalConfig().ppEncodingTo())) { ppChangeSubtitlesEncoding(GlobalConfig().ppEncodingFrom(), GlobalConfig().ppEncodingTo()); } } #ifndef Q_WS_WIN // Zmiana uprawnien do pliku if(GlobalConfig().ppChangePermissions()) { bool validPermissions; int permInt = GlobalConfig().ppPermissions().toInt(&validPermissions, 8); if(validPermissions) { int perm = 0; perm |= (permInt & 0700) << 2; perm |= (permInt & 0070) << 1; perm |= (permInt & 0007); ppChangeSubtitlesPermissions(QFile::Permissions(perm)); } } #endif }