From c77b8fd8b820812c8e3b6e5a02d385e7d3a56aa2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Fauconnier?= Date: Tue, 2 Oct 2018 15:32:20 +0200 Subject: [PATCH] code cleaning + copyright update + i18n update --- OpenBoard.pro | 10 +- resources/forms/webPublishing.ui | 132 - resources/i18n/OpenBoard_ar.ts | 297 +- resources/i18n/OpenBoard_bg.ts | 282 +- resources/i18n/OpenBoard_ca.ts | 297 +- resources/i18n/OpenBoard_cs.ts | 293 +- resources/i18n/OpenBoard_da.ts | 299 +- resources/i18n/OpenBoard_de.ts | 278 +- resources/i18n/OpenBoard_el.ts | 306 +- resources/i18n/OpenBoard_en.ts | 853 +-- resources/i18n/OpenBoard_en_UK.ts | 765 ++- resources/i18n/OpenBoard_es.ts | 238 +- resources/i18n/OpenBoard_eu.ts | 5723 ++++++++--------- resources/i18n/OpenBoard_fr.ts | 233 +- resources/i18n/OpenBoard_fr_CH.ts | 234 +- resources/i18n/OpenBoard_gl.ts | 230 +- resources/i18n/OpenBoard_it.ts | 247 +- resources/i18n/OpenBoard_iw.ts | 303 +- resources/i18n/OpenBoard_ja.ts | 343 +- resources/i18n/OpenBoard_ko.ts | 292 +- resources/i18n/OpenBoard_mg.ts | 297 +- resources/i18n/OpenBoard_nb.ts | 290 +- resources/i18n/OpenBoard_nl.ts | 345 +- resources/i18n/OpenBoard_pl.ts | 292 +- resources/i18n/OpenBoard_pt.ts | 240 +- resources/i18n/OpenBoard_pt_BR.ts | 1142 ++-- resources/i18n/OpenBoard_ro.ts | 289 +- resources/i18n/OpenBoard_ru.ts | 297 +- resources/i18n/OpenBoard_sk.ts | 283 +- resources/i18n/OpenBoard_sv.ts | 289 +- resources/i18n/OpenBoard_tr.ts | 281 +- resources/i18n/OpenBoard_zh.ts | 273 +- resources/i18n/OpenBoard_zh_CN.ts | 273 +- resources/i18n/OpenBoard_zh_TW.ts | 278 +- src/adaptors/UBCFFSubsetAdaptor.h | 2 +- src/adaptors/UBExportCFF.cpp | 2 +- src/adaptors/UBExportCFF.h | 2 +- src/adaptors/UBExportDocumentSetAdaptor.cpp | 2 +- src/adaptors/UBExportDocumentSetAdaptor.h | 2 +- src/adaptors/UBImportCFF.cpp | 2 +- src/adaptors/UBImportCFF.h | 2 +- src/adaptors/UBImportDocumentSetAdaptor.cpp | 2 +- src/adaptors/UBImportDocumentSetAdaptor.h | 2 +- src/adaptors/UBWebPublisher.cpp | 81 - src/adaptors/UBWebPublisher.h | 57 - src/adaptors/adaptors.pri | 6 - ...Document_Web_Publication_Specification.doc | Bin 368128 -> 0 bytes .../publishing/UBDocumentPublisher.cpp | 840 --- src/adaptors/publishing/UBDocumentPublisher.h | 146 - .../publishing/UBSvgSubsetRasterizer.cpp | 99 - .../publishing/UBSvgSubsetRasterizer.h | 51 - src/board/UBBoardController.cpp | 2 +- src/core/UBApplication.cpp | 2 - src/core/UBDocumentManager.cpp | 5 +- src/core/UBForeignObjectsHandler.cpp | 2 +- src/core/UBForeignObjectsHandler.h | 2 +- src/core/UBPersistenceManager.cpp | 4 +- src/core/UBPersistenceManager.h | 2 +- src/customWidgets/UBActionableWidget.cpp | 2 +- src/customWidgets/UBActionableWidget.h | 2 +- src/customWidgets/UBGraphicsItemAction.cpp | 2 +- src/customWidgets/UBGraphicsItemAction.h | 2 +- src/customWidgets/UBMediaWidget.cpp | 2 +- src/customWidgets/UBMediaWidget.h | 2 +- src/document/UBDocumentController.cpp | 2 +- src/document/UBDocumentController.h | 2 +- src/gui/UBOpenSankoreImporterWidget.cpp | 2 +- 67 files changed, 10016 insertions(+), 7843 deletions(-) delete mode 100644 resources/forms/webPublishing.ui mode change 100755 => 100644 resources/i18n/OpenBoard_gl.ts delete mode 100644 src/adaptors/UBWebPublisher.cpp delete mode 100644 src/adaptors/UBWebPublisher.h delete mode 100644 src/adaptors/publishing/Sankore_Document_Web_Publication_Specification.doc delete mode 100644 src/adaptors/publishing/UBDocumentPublisher.cpp delete mode 100644 src/adaptors/publishing/UBDocumentPublisher.h delete mode 100644 src/adaptors/publishing/UBSvgSubsetRasterizer.cpp delete mode 100644 src/adaptors/publishing/UBSvgSubsetRasterizer.h diff --git a/OpenBoard.pro b/OpenBoard.pro index 15c58167..e3823824 100644 --- a/OpenBoard.pro +++ b/OpenBoard.pro @@ -87,8 +87,7 @@ FORMS += resources/forms/mainWindow.ui \ resources/forms/trapFlash.ui \ resources/forms/youTubePublishingDialog.ui \ resources/forms/capturePublishing.ui \ - resources/forms/intranetPodcastPublishingDialog.ui \ - resources/forms/webPublishing.ui + resources/forms/intranetPodcastPublishingDialog.ui UB_ETC.files = resources/etc UB_I18N.files = resources/i18n/*.qm @@ -384,6 +383,12 @@ macx { TRANSLATION_mg.path = "$$RESOURCES_DIR/mg.lproj" QMAKE_BUNDLE_DATA += TRANSLATION_mg } + exists(resources/i18n/OpenBoard_gl.qm) { + TRANSLATION_gl.files = resources/i18n/OpenBoard_gl.qm \ + resources/i18n/localizable.strings + TRANSLATION_gl.path = "$$RESOURCES_DIR/gl.lproj" + QMAKE_BUNDLE_DATA += TRANSLATION_gl + } QMAKE_BUNDLE_DATA += UB_ETC \ UB_LIBRARY \ @@ -453,6 +458,7 @@ TRANSLATIONS = resources/i18n/OpenBoard_en.ts \ resources/i18n/OpenBoard_el.ts \ resources/i18n/OpenBoard_tr.ts \ resources/i18n/OpenBoard_cs.ts \ + resources/i18n/OpenBoard_gl.ts \ resources/i18n/OpenBoard_mg.ts INSTALLS = UB_ETC \ diff --git a/resources/forms/webPublishing.ui b/resources/forms/webPublishing.ui deleted file mode 100644 index d71282e5..00000000 --- a/resources/forms/webPublishing.ui +++ /dev/null @@ -1,132 +0,0 @@ - - - documentPublishingDialog - - - Qt::WindowModal - - - - 0 - 0 - 607 - 405 - - - - Dialog - - - - - - QFormLayout::AllNonFixedFieldsGrow - - - - - Title - - - - - - - 60 - - - - - - - E-mail - - - - - - - - - - Author - - - - - - - - - - Description - - - - - - - - 0 - 0 - - - - - 0 - 168 - - - - - - - - Qt::Vertical - - - - 20 - 10 - - - - - - - - Attach Downloadable PDF Version - - - - - - - Attach Downloadable Uniboard File (UBZ) - - - - - - - Warning: This documents contains video, which will not be displayed properly on the Web - - - true - - - - - - - QDialogButtonBox::Cancel|QDialogButtonBox::Ok - - - - - - - - - - diff --git a/resources/i18n/OpenBoard_ar.ts b/resources/i18n/OpenBoard_ar.ts index 8210126e..bf2627f1 100644 --- a/resources/i18n/OpenBoard_ar.ts +++ b/resources/i18n/OpenBoard_ar.ts @@ -792,19 +792,19 @@ إزالة الخلفية - Open Tutorial + Ruled Light Background - Open the tutorial web page + Ruled Dark Background - Ruled Light Background + Open Tutorial - Ruled Dark Background + Open the tutorial web page @@ -854,11 +854,11 @@ QObject Element ID = - معرّف المكوّن = + معرّف المكوّن = Content is not supported in destination format. - المحتوى غير مدعوم في النسق الهدف. + المحتوى غير مدعوم في النسق الهدف. Remove Page @@ -1070,43 +1070,43 @@ Remove Page - ازالة الصفحة + ازالة الصفحة Remove Document - ازالة الوثيقة + ازالة الوثيقة Are you sure you want to remove the document '%1'? - هل تريدون حقا ازالة الوثيقة '1%'؟ + هل تريدون حقا ازالة الوثيقة '1%'؟ Empty Trash - إفراغ سلة المهملات + إفراغ سلة المهملات Are you sure you want to empty trash? - هل تريدون حقا إفراغ سلة المهملات؟ + هل تريدون حقا إفراغ سلة المهملات؟ Emptying trash - يجري افراغ سلة المهملات + يجري افراغ سلة المهملات Emptied trash - تمّ افراغ سلة المهملات + تمّ افراغ سلة المهملات Remove Folder - ازالة مجلد + ازالة مجلد Are you sure you want to remove the folder '%1' and all its content? - هل تريدون حقا ازالة المجلد '1%' وكل محتوياته؟ + هل تريدون حقا ازالة المجلد '1%' وكل محتوياته؟ No document selected! - لم يقع اختيار وثيقة! + لم يقع اختيار وثيقة! Open Supported File @@ -1154,7 +1154,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + هل تريدون حقّا إزالة %n صفحة من الوثيقة المختارة '%1' ؟ @@ -1171,16 +1171,32 @@ Untitled Documents وثائق غير معنونة + + duplicated %1 page + duplicated %1 pages + + + + + + + + + - The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + Remove Item - Are you sure you want to remove all selected documents? + Are you sure you want to remove the selected item(s) ? - Remove multiple documents + The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + + + + Title page @@ -1234,19 +1250,91 @@ صفحة %0 + + UBDocumentPublisher + + Export failed. + فشل التصدير. + + + + UBDocumentReplaceDialog + + Accept + موافقة + + + Cancel + إلغاء + + + Replace + + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + + + UBDocumentTreeModel + + Trash + سلة المهملات + + + %1 pages copied + + %1 صفحة منسوخة + + + + + + + + + My documents + + + + + UBDocumentTreeView + + %1 pages copied + + %1 صفحة منسوخة + + + + + + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + UBDocumentTreeWidget %1 (copy) - 1 % (نسخ) + 1 % (نسخ) Copying page %1/%2 - نسخ الصفحة 1% / 2% + نسخ الصفحة 1% / 2% %1 pages copied - + %1 صفحة منسوخة @@ -1291,6 +1379,10 @@ Exporting document... تصدير الوثيقة... + + Export successful. + تصدير ناجح. + Export failed @@ -1303,32 +1395,28 @@ Export failed: location not writable - - Export successful. - تصدير ناجح. - UBExportCFF Export to IWB - التصدير للـIWB + التصدير للـIWB Export as IWB File - التصدير كملف IWB + التصدير كملف IWB Exporting document... - تصدير الوثيقة... + تصدير الوثيقة... Export successful. - تصدير ناجح. + تصدير ناجح. Export failed. - فشل التصدير. + فشل التصدير. @@ -1358,6 +1446,33 @@ + + UBExportDocumentSetAdaptor + + Exporting document... + تصدير الوثيقة... + + + Export successful. + تصدير ناجح. + + + Export failed. + فشل التصدير. + + + Failed to export... + + + + Export as UBX File + + + + Export to OpenBoard UBX Format + + + UBExportFullPDF @@ -1646,23 +1761,23 @@ UBImportCFF Common File Format ( - شكل ملف مشترك ( + شكل ملف مشترك ( Importing file %1... - استيراد ملف 1%... + استيراد ملف 1%... Import of file %1 failed. - فشل تصدير الملف 1% + فشل تصدير الملف 1% Import successful. - استيراد ناجح + استيراد ناجح Import failed. - استيراد فاشل. + استيراد فاشل. @@ -1684,6 +1799,13 @@ + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + + UBImportImage @@ -1785,27 +1907,27 @@ Do you want to ignore these errors for this host? UBOpenSankoreImporterWidget - Open-Sankore Documents Detected - + Cancel + إلغاء - Show this panel next time + Open-Sankore Documents Detected - You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. + Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - Cancel - إلغاء + Show this panel next time + - Proceed + You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. - Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. + Proceed @@ -1820,11 +1942,7 @@ Do you want to ignore these errors for this host? خسارة سجل الوثيقة - has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - - - - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1929,34 +2047,34 @@ Do you want to ignore these errors for this host? UBProxyLoginDlg Proxy Login - دخول بروكسي + دخول بروكسي Username: - اسم المتخدم: + اسم المتخدم: Password: - كلمة السر: + كلمة السر: UBPublicationDlg Publish document on the web - نشر الوثيقة على الويب + نشر الوثيقة على الويب Title: - العنوان: + العنوان: Description: - الوصف: + الوصف: Publish - نشر + نشر @@ -2506,12 +2624,47 @@ p, li { white-space: pre-wrap; } الوصف + + documentPublishingDialog + + Dialog + حوار + + + E-mail + البريد الالكتروني + + + Author + الناشر + + + Description + الوصف + + documents OpenBoard Documents + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2652,39 +2805,39 @@ p, li { white-space: pre-wrap; } الشكر إلى - Open-Sankoré Importer - + On Dark Background + في خلفية داكنة - Check if Open-Sankoré data could be imported at launch - + Opacity + معدل الشفافية - Use system keyboard (recommended) - + On Light Background + في خلفية مضيئة - Built-in virtual keyboard button size: + Swap first and second view displays - Grid + Built-in virtual keyboard button size: - On Dark Background - في خلفية داكنة + Use system keyboard (recommended) + - Opacity - معدل الشفافية + Grid + - On Light Background - في خلفية مضيئة + Open-Sankoré Importer + - Swap first and second view displays + Check if Open-Sankoré data could be imported at launch diff --git a/resources/i18n/OpenBoard_bg.ts b/resources/i18n/OpenBoard_bg.ts index 8d9fe10b..11e07645 100644 --- a/resources/i18n/OpenBoard_bg.ts +++ b/resources/i18n/OpenBoard_bg.ts @@ -203,10 +203,6 @@ Library Библиотека - - Ctrl+L - - Show Desktop Покажи десктоп @@ -792,19 +788,23 @@ Премахни фона - Open Tutorial + Ctrl+L - Open the tutorial web page + Ruled Light Background - Ruled Light Background + Ruled Dark Background - Ruled Dark Background + Open Tutorial + + + + Open the tutorial web page @@ -854,11 +854,11 @@ QObject Element ID = - Номер на елемента = + Номер на елемента = Content is not supported in destination format. - Това съдържание не се поддържа вкрайния формат. + Това съдържание не се поддържа вкрайния формат. Remove Page @@ -1069,43 +1069,43 @@ Remove Page - Премахни страницата + Премахни страницата Remove Document - Премахни документа + Премахни документа Are you sure you want to remove the document '%1'? - Сигурни ли сте, че искате да премахнете документа '%1'? + Сигурни ли сте, че искате да премахнете документа '%1'? Empty Trash - Изпразни кошчето + Изпразни кошчето Are you sure you want to empty trash? - Сигурни ли сте, че искате да изпразните кошчето? + Сигурни ли сте, че искате да изпразните кошчето? Emptying trash - Изпразване на кошче + Изпразване на кошче Emptied trash - Кошчето е изпразнено + Кошчето е изпразнено Remove Folder - Премахни папка + Премахни папка Are you sure you want to remove the folder '%1' and all its content? - Сигурни ли сте, че искате да премахнете папка '%1' и всичко което съдържа? + Сигурни ли сте, че искате да премахнете папка '%1' и всичко което съдържа? No document selected! - Не е избран документ! + Не е избран документ! Open Supported File @@ -1154,7 +1154,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? We do not understand the warning marks here, please clarify what the problem is, to: a.angelov@cct.bg and iva.ninova@cct.bg Thanks! - + Сигурни ли сте, че искате на премахнете %n страница от избрания документ '%1'? Сигурни ли сте, че искате на премахнете %n страници от избрания документ '%1'? @@ -1167,16 +1167,28 @@ Untitled Documents Неозаглавени документи + + duplicated %1 page + duplicated %1 pages + + + + + - The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + Remove Item + + + + Are you sure you want to remove the selected item(s) ? - Are you sure you want to remove all selected documents? + The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? - Remove multiple documents + Title page @@ -1230,19 +1242,76 @@ Страница %0 + + UBDocumentReplaceDialog + + Accept + Приеми + + + Replace + + + + Cancel + + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + + + UBDocumentTreeModel + + Trash + Кошче + + + %1 pages copied + + %1 страница копирана + %1 страници копирани + + + + My documents + + + + + UBDocumentTreeView + + %1 pages copied + + %1 страница копирана + %1 страници копирани + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + UBDocumentTreeWidget %1 (copy) - %1 (копиране) + %1 (копиране) Copying page %1/%2 - Копиране на страница %1/%2 + Копиране на страница %1/%2 %1 pages copied - + %1 страница копирана %1 страници копирани @@ -1304,23 +1373,23 @@ UBExportCFF Export to IWB - Експортирай към интерактивната дъска + Експортирай към интерактивната дъска Export as IWB File - Експортирай като файл за интерактивна дъска + Експортирай като файл за интерактивна дъска Exporting document... - Експортиране на документ... + Експортиране на документ... Export successful. - Експортирането успешно. + Експортирането успешно. Export failed. - Експортирането се провали. + Експортирането се провали. @@ -1350,6 +1419,33 @@ + + UBExportDocumentSetAdaptor + + Failed to export... + + + + Export as UBX File + + + + Exporting document... + + + + Export successful. + + + + Export failed. + + + + Export to OpenBoard UBX Format + + + UBExportFullPDF @@ -1638,23 +1734,23 @@ UBImportCFF Common File Format ( - Общ формат на файла ( + Общ формат на файла ( Importing file %1... - Импортиране на файл %1... + Импортиране на файл %1... Import of file %1 failed. - Импортирането на файл %1 се провали. + Импортирането на файл %1 се провали. Import successful. - Импортирането успешно. + Импортирането успешно. Import failed. - Грешка при импортирането. + Грешка при импортирането. @@ -1676,6 +1772,13 @@ + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + + UBImportImage @@ -1786,6 +1889,10 @@ Do you want to ignore these errors for this host? Open-Sankore Documents Detected + + Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. + + Show this panel next time @@ -1802,10 +1909,6 @@ Do you want to ignore these errors for this host? Proceed - - Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - - UBPersistenceManager @@ -1818,11 +1921,7 @@ Do you want to ignore these errors for this host? Загубено е хранилището за документи - has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - - - - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1927,34 +2026,34 @@ Do you want to ignore these errors for this host? UBProxyLoginDlg Proxy Login - Прокси свързване + Прокси свързване Username: - Потребителско име: + Потребителско име: Password: - Парола: + Парола: UBPublicationDlg Publish document on the web - Публикувай документ в мрежата + Публикувай документ в мрежата Title: - Заглавие: + Заглавие: Description: - Описание: + Описание: Publish - Публикувай + Публикувай @@ -2426,14 +2525,14 @@ p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Lucida Grande'; font-size:10pt;">С натискането на бутона "Качи" вие удостоверявате, че притежавате всички права върху съдържанието или че законния собственик ви е разрешил да разпространите публично съдържанието в YouTube и че не е в разрез с условията на YouTube </span><a href="http://www.youtube.com/t/terms"><span style=" font-family:'Lucida Grande'; font-size:10pt; text-decoration: underline; color:#0000ff;">http://www.youtube.com/t/terms</span></a></p></body></html> - - Restore credentials on reboot - - OpenBoard Отворено-Санкоре + + Restore credentials on reboot + + brushProperties @@ -2501,12 +2600,51 @@ p, li { white-space: pre-wrap; } Описание + + documentPublishingDialog + + Dialog + Диалог + + + Title + Заглавие + + + E-mail + електронна поща + + + Author + Автор + + + Description + Описание + + documents OpenBoard Documents + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2647,39 +2785,39 @@ p, li { white-space: pre-wrap; } Изготвили - Open-Sankoré Importer - + On Dark Background + На тъмен фон - Check if Open-Sankoré data could be imported at launch - + Opacity + Непрозрачност - Use system keyboard (recommended) - + On Light Background + На светъл фон - Built-in virtual keyboard button size: + Swap first and second view displays - Grid + Built-in virtual keyboard button size: - On Dark Background - На тъмен фон + Use system keyboard (recommended) + - Opacity - Непрозрачност + Grid + - On Light Background - На светъл фон + Open-Sankoré Importer + - Swap first and second view displays + Check if Open-Sankoré data could be imported at launch diff --git a/resources/i18n/OpenBoard_ca.ts b/resources/i18n/OpenBoard_ca.ts index 844a5382..1012793d 100644 --- a/resources/i18n/OpenBoard_ca.ts +++ b/resources/i18n/OpenBoard_ca.ts @@ -792,19 +792,19 @@ Elimina el fons - Open Tutorial + Ruled Light Background - Open the tutorial web page + Ruled Dark Background - Ruled Light Background + Open Tutorial - Ruled Dark Background + Open the tutorial web page @@ -854,11 +854,11 @@ QObject Element ID = - ID de l'element = + ID de l'element = Content is not supported in destination format. - Aquest contingut no està suportat pel format escollit. + Aquest contingut no està suportat pel format escollit. Remove Page @@ -1069,43 +1069,43 @@ Remove Page - Suprimeix la pàgina + Suprimeix la pàgina Remove Document - Suprimeix el document + Suprimeix el document Are you sure you want to remove the document '%1'? - Esteu segur que voleu eliminar el document '%1'? + Esteu segur que voleu eliminar el document '%1'? Empty Trash - Buida la paperera + Buida la paperera Are you sure you want to empty trash? - Esteu segur que voleu buidar la paperera? + Esteu segur que voleu buidar la paperera? Emptying trash - S'està buidant la paperera + S'està buidant la paperera Emptied trash - S'ha buidat la paperera + S'ha buidat la paperera Remove Folder - Suprimeix la carpeta + Suprimeix la carpeta Are you sure you want to remove the folder '%1' and all its content? - Esteu segur que voleu suprimir la carpeta '%1' i tot el seu contingut? + Esteu segur que voleu suprimir la carpeta '%1' i tot el seu contingut? No document selected! - No hi ha cap document seleccionat! + No hi ha cap document seleccionat! Open Supported File @@ -1153,7 +1153,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + Esteu segur que voleu eliminar %n pàgina del document seleccionat '%1'? Esteu segur que voleu eliminar %n pàgines del document seleccionat '%1'? @@ -1166,16 +1166,28 @@ Untitled Documents Documents sense títol + + duplicated %1 page + duplicated %1 pages + + + + + - The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + Remove Item - Are you sure you want to remove all selected documents? + Are you sure you want to remove the selected item(s) ? - Remove multiple documents + The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + + + + Title page @@ -1229,19 +1241,83 @@ Pàgina %0 + + UBDocumentPublisher + + Export failed. + L'exportació ha fallat. + + + + UBDocumentReplaceDialog + + Accept + D'acord + + + Cancel + Cancel·la + + + Replace + + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + + + UBDocumentTreeModel + + Trash + Paperera + + + %1 pages copied + + %1 pàgina copiada + %1 pàgines copiades + + + + My documents + + + + + UBDocumentTreeView + + %1 pages copied + + %1 pàgina copiada + %1 pàgines copiades + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + UBDocumentTreeWidget %1 (copy) - %1 (còpia) + %1 (còpia) Copying page %1/%2 - S'està copiant la pàgina %1/%2 + S'està copiant la pàgina %1/%2 %1 pages copied - + %1 pàgina copiada %1 pàgines copiades @@ -1282,6 +1358,10 @@ Exporting document... S'està exportant el document... + + Export successful. + L'exportació ha estat correcta. + Export failed @@ -1294,32 +1374,28 @@ Export failed: location not writable - - Export successful. - L'exportació ha estat correcta. - UBExportCFF Export to IWB - Exporta a IWB + Exporta a IWB Export as IWB File - Exporta com a fitxer IWB + Exporta com a fitxer IWB Exporting document... - S'està exportant el document... + S'està exportant el document... Export successful. - L'exportació ha estat correcta. + L'exportació ha estat correcta. Export failed. - L'exportació ha fallat. + L'exportació ha fallat. @@ -1349,6 +1425,33 @@ + + UBExportDocumentSetAdaptor + + Exporting document... + S'està exportant el document... + + + Export successful. + L'exportació ha estat correcta. + + + Export failed. + L'exportació ha fallat. + + + Failed to export... + + + + Export as UBX File + + + + Export to OpenBoard UBX Format + + + UBExportFullPDF @@ -1637,23 +1740,23 @@ UBImportCFF Common File Format ( - Format de fitxer comú ( + Format de fitxer comú ( Importing file %1... - S'està important el fitxer %1... + S'està important el fitxer %1... Import of file %1 failed. - Ha fallat la importació del fitxer %1. + Ha fallat la importació del fitxer %1. Import successful. - La importació ha estat correcta. + La importació ha estat correcta. Import failed. - Ha fallat la importació. + Ha fallat la importació. @@ -1675,6 +1778,13 @@ + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + + UBImportImage @@ -1782,27 +1892,27 @@ Voleu ignorar aquests errors per a aquest amfitrió? UBOpenSankoreImporterWidget - Open-Sankore Documents Detected - + Cancel + Cancel·la - Show this panel next time + Open-Sankore Documents Detected - You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. + Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - Cancel - Cancel·la + Show this panel next time + - Proceed + You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. - Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. + Proceed @@ -1817,11 +1927,7 @@ Voleu ignorar aquests errors per a aquest amfitrió? Pèrdua del repositori de documents - has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - - - - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1926,34 +2032,34 @@ Voleu ignorar aquests errors per a aquest amfitrió? UBProxyLoginDlg Proxy Login - Inici de sessió al servidor intermediari + Inici de sessió al servidor intermediari Username: - Usuari: + Usuari: Password: - Contrasenya: + Contrasenya: UBPublicationDlg Publish document on the web - Publica el document a la web + Publica el document a la web Title: - Títol: + Títol: Description: - Descripció: + Descripció: Publish - Publica + Publica @@ -2419,14 +2525,14 @@ p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Lucida Grande'; font-size:10pt;">Clicant 'Carrega,' certifiqueu que teniu tots els drets sobre el contingut o que esteu autoritzats pel propietari dels drets a fer-lo públicament disponible al YouTube, així com que el contingut compleix amb els termes de servei del YouTube localitzats a </span><a href="http://www.youtube.com/t/terms"><span style=" font-family:'Lucida Grande'; font-size:10pt; text-decoration: underline; color:#0000ff;">http://www.youtube.com/t/terms</span></a></p></body></html> - - Restore credentials on reboot - - OpenBoard OpenBoard + + Restore credentials on reboot + + brushProperties @@ -2494,12 +2600,51 @@ p, li { white-space: pre-wrap; } Descripció + + documentPublishingDialog + + Dialog + Diàleg + + + Title + Títol + + + E-mail + Adreça de correu electrònic + + + Author + Autor/a + + + Description + Descripció + + documents OpenBoard Documents + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2640,39 +2785,39 @@ p, li { white-space: pre-wrap; } Crèdits - Open-Sankoré Importer - + On Dark Background + Sobre fons fosc - Check if Open-Sankoré data could be imported at launch - + Opacity + Opacitat - Use system keyboard (recommended) - + On Light Background + Sobre fons clar - Built-in virtual keyboard button size: + Swap first and second view displays - Grid + Built-in virtual keyboard button size: - On Dark Background - Sobre fons fosc + Use system keyboard (recommended) + - Opacity - Opacitat + Grid + - On Light Background - Sobre fons clar + Open-Sankoré Importer + - Swap first and second view displays + Check if Open-Sankoré data could be imported at launch diff --git a/resources/i18n/OpenBoard_cs.ts b/resources/i18n/OpenBoard_cs.ts index f2b53114..041aff36 100644 --- a/resources/i18n/OpenBoard_cs.ts +++ b/resources/i18n/OpenBoard_cs.ts @@ -793,19 +793,19 @@ Odstranit pozadí - Open Tutorial + Ruled Light Background - Open the tutorial web page + Ruled Dark Background - Ruled Light Background + Open Tutorial - Ruled Dark Background + Open the tutorial web page @@ -855,11 +855,11 @@ QObject Element ID = - ID objektu = + ID objektu = Content is not supported in destination format. - Obsah není podporován v cílovém formátu. + Obsah není podporován v cílovém formátu. Remove Page @@ -1050,11 +1050,11 @@ Are you sure you want to empty trash? - Určitě chcete vyprázdnit koš? + Určitě chcete vyprázdnit koš? Are you sure you want to remove the folder '%1' and all its content? - Určitě chcete odstranit složku "%1" a celý její obsah? + Určitě chcete odstranit složku "%1" a celý její obsah? Open Supported File @@ -1062,7 +1062,7 @@ Remove Document - Odstranit dokument + Odstranit dokument All Images (%1) @@ -1114,27 +1114,27 @@ Are you sure you want to remove the document '%1'? - Určitě chcete odstranit dokument "%1"? + Určitě chcete odstranit dokument "%1"? Emptied trash - Koš byl vyprázdněn + Koš byl vyprázdněn Empty Trash - Vyprázdnit koš + Vyprázdnit koš Remove Folder - Odstranit složku + Odstranit složku Remove Page - Odstranit stránku + Odstranit stránku No document selected! - Nevybrali jste žádný dokument! + Nevybrali jste žádný dokument! Import all Images from Folder @@ -1142,11 +1142,11 @@ Emptying trash - Vyprazdňuje se koš + Vyprazdňuje se koš Are you sure you want to remove %n page(s) from the selected document '%1'? - + Určitě chcete odstranit %n stránku z vybraného dokumentu %1? Určitě chcete odstranit %n stránky z vybraného dokumentu %1? Určitě chcete odstranit %n stránek z vybraného dokumentu %1? @@ -1168,16 +1168,29 @@ Untitled Documents Dokumenty bez názvu + + duplicated %1 page + duplicated %1 pages + + + + + + - The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + Remove Item - Are you sure you want to remove all selected documents? + Are you sure you want to remove the selected item(s) ? - Remove multiple documents + The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + + + + Title page @@ -1231,11 +1244,70 @@ Stránka %0 + + UBDocumentReplaceDialog + + Accept + Přijmout + + + Cancel + Zrušit + + + Replace + + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + + + UBDocumentTreeModel + + Trash + Koš + + + %1 pages copied + + %1 zkopírovaná stránka + %1 zkopírované stránky + %1 zkopírovaných stránek + + + + My documents + + + + + UBDocumentTreeView + + %1 pages copied + + %1 zkopírovaná stránka + %1 zkopírované stránky + %1 zkopírovaných stránek + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + UBDocumentTreeWidget %1 pages copied - + %1 zkopírovaná stránka %1 zkopírované stránky %1 zkopírovaných stránek @@ -1243,11 +1315,11 @@ %1 (copy) - %1 (kopie) + %1 (kopie) Copying page %1/%2 - Kopíruje se stránka %1/%2 + Kopíruje se stránka %1/%2 @@ -1285,6 +1357,10 @@ Exporting document... Exportuje se dokument... + + Export successful. + Export byl úspěšně dokončen. + Export failed @@ -1297,32 +1373,28 @@ Export failed: location not writable - - Export successful. - Export byl úspěšně dokončen. - UBExportCFF Export to IWB - Export do IWB + Export do IWB Export as IWB File - Exportovat jako IWB soubor + Exportovat jako IWB soubor Exporting document... - Exportuje se dokument... + Exportuje se dokument... Export successful. - Export byl úspěšně dokončen. + Export byl úspěšně dokončen. Export failed. - Export se nezdařil. + Export se nezdařil. @@ -1352,6 +1424,33 @@ + + UBExportDocumentSetAdaptor + + Exporting document... + Exportuje se dokument... + + + Export successful. + Export byl úspěšně dokončen. + + + Failed to export... + + + + Export as UBX File + + + + Export failed. + + + + Export to OpenBoard UBX Format + + + UBExportFullPDF @@ -1640,23 +1739,23 @@ UBImportCFF Importing file %1... - Importuje se soubor %1... + Importuje se soubor %1... Import failed. - Import se nezdařil. + Import se nezdařil. Import of file %1 failed. - Import souboru %1 se nezdařil. + Import souboru %1 se nezdařil. Common File Format ( - Univerzální IWB soubor ( + Univerzální IWB soubor ( Import successful. - Import byl úspěšně dokončen. + Import byl úspěšně dokončen. @@ -1678,6 +1777,13 @@ + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + + UBImportImage @@ -1785,27 +1891,27 @@ Chcete ignorovat tyto chyby na tomto serveru? UBOpenSankoreImporterWidget - Open-Sankore Documents Detected - + Cancel + Zrušit - Show this panel next time + Open-Sankore Documents Detected - You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. + Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - Cancel - Zrušit + Show this panel next time + - Proceed + You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. - Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. + Proceed @@ -1820,11 +1926,7 @@ Chcete ignorovat tyto chyby na tomto serveru? Ztráta repozitáře s dokumenty - has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - - - - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1929,34 +2031,34 @@ Chcete ignorovat tyto chyby na tomto serveru? UBProxyLoginDlg Password: - Heslo: + Heslo: Proxy Login - Přihlášení na proxy + Přihlášení na proxy Username: - Uživatelské jméno: + Uživatelské jméno: UBPublicationDlg Description: - Popis: + Popis: Title: - Název: + Název: Publish - Publikovat + Publikovat Publish document on the web - Publikovat dokument na webu + Publikovat dokument na webu @@ -2429,14 +2531,14 @@ p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Lucida Grande'; font-size:10pt;">Kliknutím na "Upload" (Nahrať) potvrdzujete, že máte všetky práva k materiálu alebo že máte písomný súhlas vlastníka týchto práv na zverejnenie materiálu na sieti YouTube a že materiál je v súlade s podmienkami využívania služieb siete YouTube, ktorých aktuálne znenie sa nachádza na adrese </span><a href="http://www.youtube.com/t/terms"><span style=" font-family:'Lucida Grande'; font-size:10pt; text-decoration: underline; color:#0000ff;">http://www.youtube.com/t/terms</span></a></p></body></html> - - Restore credentials on reboot - - OpenBoard OpenBoard + + Restore credentials on reboot + + brushProperties @@ -2504,12 +2606,51 @@ p, li { white-space: pre-wrap; } Popis + + documentPublishingDialog + + Dialog + Dialog + + + Title + Název + + + E-mail + E-mail + + + Author + Autor + + + Description + Popis + + documents OpenBoard Documents + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2650,39 +2791,39 @@ p, li { white-space: pre-wrap; } Zásluhy - Open-Sankoré Importer - + On Dark Background + Na tmavém pozadí - Check if Open-Sankoré data could be imported at launch - + Opacity + Průhlednost - Use system keyboard (recommended) - + On Light Background + Na světlém pozadí - Built-in virtual keyboard button size: + Swap first and second view displays - Grid + Built-in virtual keyboard button size: - On Dark Background - Na tmavém pozadí + Use system keyboard (recommended) + - Opacity - Průhlednost + Grid + - On Light Background - Na světlém pozadí + Open-Sankoré Importer + - Swap first and second view displays + Check if Open-Sankoré data could be imported at launch diff --git a/resources/i18n/OpenBoard_da.ts b/resources/i18n/OpenBoard_da.ts index 2812c226..2f1fd926 100644 --- a/resources/i18n/OpenBoard_da.ts +++ b/resources/i18n/OpenBoard_da.ts @@ -792,19 +792,19 @@ Fjern baggrunden - Open Tutorial + Ruled Light Background - Open the tutorial web page + Ruled Dark Background - Ruled Light Background + Open Tutorial - Ruled Dark Background + Open the tutorial web page @@ -854,11 +854,11 @@ QObject Element ID = - Element-ID = + Element-ID = Content is not supported in destination format. - Indholdet understøttes ikke i destinationsformatet. + Indholdet understøttes ikke i destinationsformatet. Remove Page @@ -1069,43 +1069,43 @@ Remove Page - Fjern side + Fjern side Remove Document - Fjern dokument + Fjern dokument Are you sure you want to remove the document '%1'? - Er du sikker på, at du ønsker at fjerne dokumentet '%1'? + Er du sikker på, at du ønsker at fjerne dokumentet '%1'? Empty Trash - Tøm papirkurv + Tøm papirkurv Are you sure you want to empty trash? - Er du sikker på, at du ønsker at tømme papirkurven? + Er du sikker på, at du ønsker at tømme papirkurven? Emptying trash - Tømmer papirkurv + Tømmer papirkurv Emptied trash - Tømt papirkurv + Tømt papirkurv Remove Folder - Fjern mappe + Fjern mappe Are you sure you want to remove the folder '%1' and all its content? - Er du sikker på, at du ønsker at fjerne mappen ' %1' og hele dens indhold? + Er du sikker på, at du ønsker at fjerne mappen ' %1' og hele dens indhold? No document selected! - Der er ikke valgt noget dokument! + Der er ikke valgt noget dokument! Open Supported File @@ -1153,7 +1153,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + Er du sikker på, at du vil fjerne %n side fra det valgte dokument '%1'? Er du sikker på, at du vil fjerne %n sider fra det valgte dokument '%1'? @@ -1166,16 +1166,28 @@ Untitled Documents Unavngivne dokumenter + + duplicated %1 page + duplicated %1 pages + + + + + - The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + Remove Item - Are you sure you want to remove all selected documents? + Are you sure you want to remove the selected item(s) ? - Remove multiple documents + The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + + + + Title page @@ -1229,19 +1241,83 @@ Side %0 + + UBDocumentPublisher + + Export failed. + Eksport mislykkedes. + + + + UBDocumentReplaceDialog + + Accept + Accepter + + + Cancel + Annuller + + + Replace + + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + + + UBDocumentTreeModel + + Trash + Papirkurv + + + %1 pages copied + + %1 side kopieret + %1 sider kopieret + + + + My documents + + + + + UBDocumentTreeView + + %1 pages copied + + %1 side kopieret + %1 sider kopieret + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + UBDocumentTreeWidget %1 (copy) - %1 (kopier) + %1 (kopier) Copying page %1/%2 - Kopierer side %1/%2 + Kopierer side %1/%2 %1 pages copied - + %1 side kopieret %1 sider kopieret @@ -1282,6 +1358,10 @@ Exporting document... Eksporterer dokument... + + Export successful. + Eksport gennemført. + Export failed @@ -1294,32 +1374,28 @@ Export failed: location not writable - - Export successful. - Eksport gennemført. - UBExportCFF Export to IWB - Eksporter til IWB + Eksporter til IWB Export as IWB File - Eksporter som IWB-fil + Eksporter som IWB-fil Exporting document... - Eksporterer dokument... + Eksporterer dokument... Export successful. - Eksport gennemført. + Eksport gennemført. Export failed. - Eksport mislykkedes. + Eksport mislykkedes. @@ -1349,6 +1425,33 @@ + + UBExportDocumentSetAdaptor + + Exporting document... + Eksporterer dokument... + + + Export successful. + Eksport gennemført. + + + Export failed. + Eksport mislykkedes. + + + Failed to export... + + + + Export as UBX File + + + + Export to OpenBoard UBX Format + + + UBExportFullPDF @@ -1637,23 +1740,23 @@ UBImportCFF Common File Format ( - Almindelig filformat ( + Almindelig filformat ( Importing file %1... - Importerer fil %1... + Importerer fil %1... Import of file %1 failed. - Import af fil %1 mislykkedes. + Import af fil %1 mislykkedes. Import successful. - Import gennemført. + Import gennemført. Import failed. - Import mislykkedes. + Import mislykkedes. @@ -1675,6 +1778,13 @@ + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + + UBImportImage @@ -1782,27 +1892,27 @@ Do you want to ignore these errors for this host? UBOpenSankoreImporterWidget - Open-Sankore Documents Detected - + Cancel + Annuller - Show this panel next time + Open-Sankore Documents Detected - You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. + Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - Cancel - Annuller + Show this panel next time + - Proceed + You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. - Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. + Proceed @@ -1817,11 +1927,7 @@ Do you want to ignore these errors for this host? Tab af dokumentdepot - has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - - - - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1926,34 +2032,34 @@ Do you want to ignore these errors for this host? UBProxyLoginDlg Proxy Login - Proxy Login + Proxy Login Username: - Brugernavn: + Brugernavn: Password: - Adgangskode: + Adgangskode: UBPublicationDlg Publish document on the web - Udgiv dokument på web + Udgiv dokument på web Title: - Titel: + Titel: Description: - Beskrivelse: + Beskrivelse: Publish - Udgiv + Udgiv @@ -2414,17 +2520,17 @@ Genstart venligst applikationen for at få adgang til de opdaterede dokumenter.< YouTube Password YouTube adgangskode + + OpenBoard + OpenBoard + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Lucida Grande'; font-size:10pt;">By clicking 'Upload,' you certify that you own all rights to the content or that you are authorized by the owner to make the content publicly available on YouTube, and that it otherwise complies with the YouTube Terms of Service located at </span><a href="http://www.youtube.com/t/terms"><span style=" font-family:'Lucida Grande'; font-size:10pt; text-decoration: underline; color:#0000ff;">http://www.youtube.com/t/terms</span></a></p></body></html> - - - - OpenBoard - OpenBoard + Restore credentials on reboot @@ -2497,12 +2603,51 @@ p, li { white-space: pre-wrap; } Beskrivelse + + documentPublishingDialog + + Dialog + Dialog + + + Title + Titel + + + E-mail + E-mail + + + Author + Forfatter + + + Description + Beskrivelse + + documents OpenBoard Documents + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2643,39 +2788,39 @@ p, li { white-space: pre-wrap; } Anerkendelse - Open-Sankoré Importer - + On Dark Background + På mørk baggrund - Check if Open-Sankoré data could be imported at launch - + Opacity + Gennemsigtighed - Use system keyboard (recommended) - + On Light Background + På lys baggrund - Built-in virtual keyboard button size: + Swap first and second view displays - Grid + Built-in virtual keyboard button size: - On Dark Background - På mørk baggrund + Use system keyboard (recommended) + - Opacity - Gennemsigtighed + Grid + - On Light Background - På lys baggrund + Open-Sankoré Importer + - Swap first and second view displays + Check if Open-Sankoré data could be imported at launch diff --git a/resources/i18n/OpenBoard_de.ts b/resources/i18n/OpenBoard_de.ts index 4954b482..39c3ced8 100644 --- a/resources/i18n/OpenBoard_de.ts +++ b/resources/i18n/OpenBoard_de.ts @@ -854,11 +854,11 @@ QObject Element ID = - Element ID = + Element ID = Content is not supported in destination format. - Inhalt wird im Zielformat nicht unterstützt. + Inhalt wird im Zielformat nicht unterstützt. Remove Page @@ -1073,43 +1073,43 @@ Remove Page - Seite entfernen + Seite entfernen Remove Document - Dokument entfernen + Dokument entfernen Are you sure you want to remove the document '%1'? - Möchten Sie das Dokument '%1' wirklich entfernen? + Möchten Sie das Dokument '%1' wirklich entfernen? Empty Trash - Papierkorb leeren + Papierkorb leeren Are you sure you want to empty trash? - Möchten Sie den Papierkorb wirklich leeren? + Möchten Sie den Papierkorb wirklich leeren? Emptying trash - Papierkorb wird geleert + Papierkorb wird geleert Emptied trash - Papierkorb wurde geleert + Papierkorb wurde geleert Remove Folder - Ordner entfernen + Ordner entfernen Are you sure you want to remove the folder '%1' and all its content? - Möchten Sie den Ordner '%1 und seinen gesamten Inhalt wirklich entfernen? + Möchten Sie den Ordner '%1 und seinen gesamten Inhalt wirklich entfernen? No document selected! - Kein Dokument ausgewählt! + Kein Dokument ausgewählt! Open Supported File @@ -1157,7 +1157,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + Wollen Sie wirklich %n Seite vom ausgewählten Dokument '%1' entfernen? Wollen Sie wirklich %n Seiten vom ausgewählten Dokument '%1' entfernen? @@ -1176,11 +1176,31 @@ Are you sure you want to remove all selected documents? - Möchten sie wirklich alle ausgewählten Dokumente entfernen? + Möchten sie wirklich alle ausgewählten Dokumente entfernen? Remove multiple documents - Mehrere Dokumente entfernen + Mehrere Dokumente entfernen + + + duplicated %1 page + duplicated %1 pages + + %1 Seite wurde kopiert + %1 Seiten wurden kopiert + + + + Remove Item + Objekte löschen + + + Are you sure you want to remove the selected item(s) ? + Möchten Sie die ausgewählten Elemente wirklich entfernen ? + + + Title page + Titelseite @@ -1233,19 +1253,83 @@ Seite %0 + + UBDocumentPublisher + + Export failed. + Export fehlgeschlagen. + + + + UBDocumentReplaceDialog + + Accept + Akzeptieren + + + Replace + Ersetzen + + + Cancel + Abbrechen + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + Der Name %1 wird bereits benutzt. Wenn Sie den Namen behalten möchten, wird das Dokument ersetzt. Wenn Sie einen neuen Namen wählen, wird ein neues Dokument erstellt. + + + + UBDocumentTreeModel + + My documents + Eigene Dokumente + + + Trash + Papierkorb + + + %1 pages copied + + %1 Seite wurde kopiert + %1 Seiten wurden kopiert + + + + + UBDocumentTreeView + + %1 pages copied + + %1 Seite wurde kopiert + %1 Seiten wurden kopiert + + + + Remove Item + Objekte löschen + + + Are you sure you want to remove the selected item(s) ? + Möchten Sie die ausgewählten Elemente wirklich entfernen ? + + UBDocumentTreeWidget %1 (copy) - %1 (Kopie) + %1 (Kopie) Copying page %1/%2 - Seite %1/%2 wird kopiert + Seite %1/%2 wird kopiert %1 pages copied - + %1 Seite wurde kopiert %1 Seiten wurden kopiert @@ -1266,7 +1350,7 @@ UBDraggableThumbnail Page %0 - Seite %0 + Seite %0 @@ -1296,7 +1380,7 @@ Export failed: location not writable - + Export fehlgeschlagen: Zielpfad nicht beschreibbar Export successful. @@ -1307,23 +1391,23 @@ UBExportCFF Export to IWB - Exportieren nach IWB + Exportieren nach IWB Export as IWB File - Exportieren als IWB-Datei + Exportieren als IWB-Datei Exporting document... - Dokument wird exportiert... + Dokument wird exportiert... Export successful. - Export erfolgreich. + Export erfolgreich. Export failed. - Export fehlgeschlagen. + Export fehlgeschlagen. @@ -1365,6 +1449,33 @@ Export im ausgewählten Zielpfad nicht möglich. Sie haben nicht die erforderliche Berechtigung um die Datei zu speichern. + + UBExportDocumentSetAdaptor + + Failed to export... + Export fehlgeschlagen... + + + Export as UBX File + Als UBX-Datei exportieren + + + Exporting document... + Dokument wird exportiert... + + + Export successful. + Export erfolgreich. + + + Export failed. + Export fehlgeschlagen. + + + Export to OpenBoard UBX Format + In das UBX OpenBoard Format exportieren + + UBExportFullPDF @@ -1508,65 +1619,65 @@ Audios - Audiodateien + Audiodateien Movies - Filme + Filme Pictures - Bilder + Bilder Animations - Animationen + Animationen Interactivities - Interaktivitäten + Interaktivitäten Applications - Anwendungen + Anwendungen Shapes - Formen + Formen Favorites - Favoriten + Favoriten Web search - Websuche + Websuche Trash - Papierkorb + Papierkorb UBFeaturesNewFolderDialog Accept - Akzeptieren + Akzeptieren Cancel - Abbrechen + Abbrechen Enter a new folder name - Geben Sie den Namen des Verzeichnisses ein + Geben Sie den Namen des Verzeichnisses ein UBFeaturesProgressInfo Loading - Laden + Laden @@ -1665,23 +1776,23 @@ UBImportCFF Common File Format ( - Standard-Dateiformat ( + Standard-Dateiformat ( Importing file %1... - Datei %1 wird importiert... + Datei %1 wird importiert... Import of file %1 failed. - Import der Datei %1 fehlgeschlagen. + Import der Datei %1 fehlgeschlagen. Import successful. - Import erfolgreich. + Import erfolgreich. Import failed. - Import fehlgeschlagen. + Import fehlgeschlagen. @@ -1703,6 +1814,13 @@ OpenBoard (*.ubz) + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + Openboard (Dokumentensammlung) (*.ubx) + + UBImportImage @@ -1846,7 +1964,7 @@ Möchten Sie diese Fehler für diesen Computer ignorieren? has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - Verbindung zum Dokumentenarchiv verloren. Um fehlerhafte Daten zu vermeiden muss die Anwendung leider geschlossen werden. Letzte Änderungen können auch verloren gehen. + Verbindung zum Dokumentenarchiv verloren. Um fehlerhafte Daten zu vermeiden muss die Anwendung leider geschlossen werden. Letzte Änderungen können auch verloren gehen. saving document thumbnail for the page %1 @@ -1858,7 +1976,11 @@ Möchten Sie diese Fehler für diesen Computer ignorieren? Moving page to trash folder... - Die Seite in den Papierkorb verschieben... + Die Seite in den Papierkorb verschieben... + + + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. + Openboard hat den Zugang zum Dokumentenarchiv '%1' verloren. Die Anwendung muss leider beendet werden, um Datenkorruption zu vermeiden. Der Verlust kürzlich vorgenommener Änderungen ist möglich. @@ -1962,34 +2084,34 @@ Möchten Sie diese Fehler für diesen Computer ignorieren? UBProxyLoginDlg Proxy Login - Proxy-Login + Proxy-Login Username: - Benutzername: + Benutzername: Password: - Passwort: + Passwort: UBPublicationDlg Publish document on the web - Dokument im Internet veröffentlichen + Dokument im Internet veröffentlichen Title: - Titel: + Titel: Description: - Beschreibung: + Beschreibung: Publish - Veröffentlichen + Veröffentlichen @@ -2542,12 +2664,51 @@ p, li { white-space: pre-wrap; } Beschreibung + + documentPublishingDialog + + Dialog + Dialog + + + Title + Titel + + + E-mail + E-Mail + + + Author + Autor + + + Description + Beschreibung + + documents OpenBoard Documents OpenBoard Dokumente + + Creation date + Erstellungsdatum + + + Update date + Änderungsdatum + + + Alphabetical order + Alphabetische Reihenfolge + + + Sort Order + Sortierreihenfolge + preferencesDialog @@ -2683,11 +2844,6 @@ p, li { white-space: pre-wrap; } Pass: Passwort: - - Credits - do not translate! - - Open-Sankoré Importer Open-Sankoré Importer @@ -2722,7 +2878,11 @@ p, li { white-space: pre-wrap; } Swap first and second view displays - + Kontroll- und Anzeige-Bildschirm vertauschen + + + Credits + diff --git a/resources/i18n/OpenBoard_el.ts b/resources/i18n/OpenBoard_el.ts index 5e0c1773..f385f2e8 100644 --- a/resources/i18n/OpenBoard_el.ts +++ b/resources/i18n/OpenBoard_el.ts @@ -583,10 +583,6 @@ Ctrl+M Ctrl+M - - Select And Modify Objects - - Ctrl+F Ctrl+F @@ -779,10 +775,6 @@ Play Αναπαραγωγή - - Interact with items - - Erase Background Σβήσιμο παρασκηνίου @@ -792,19 +784,27 @@ Αφαίρεση παρασκηνίου - Open Tutorial + Ruled Light Background - Open the tutorial web page + Ruled Dark Background - Ruled Light Background + Select And Modify Objects - Ruled Dark Background + Interact with items + + + + Open Tutorial + + + + Open the tutorial web page @@ -854,11 +854,11 @@ QObject Element ID = - Αναγνωριστικό στοιχείου= + Αναγνωριστικό στοιχείου= Content is not supported in destination format. - Η μορφή του περιεχομένου δεν υποστηριζεται στον προορισμό + Η μορφή του περιεχομένου δεν υποστηριζεται στον προορισμό Remove Page @@ -1069,43 +1069,43 @@ Remove Page - Αφαίρεση σελίδας + Αφαίρεση σελίδας Remove Document - Αφαίρεση εγγράφου + Αφαίρεση εγγράφου Are you sure you want to remove the document '%1'? - Είστε βέβαιος ότι θέλετε να αφαιρέσετε το έγγραφο '%1'; + Είστε βέβαιος ότι θέλετε να αφαιρέσετε το έγγραφο '%1'; Empty Trash - Άδειασμα Κάδου Ανακύκλωσης + Άδειασμα Κάδου Ανακύκλωσης Are you sure you want to empty trash? - Είστε βέβαιος ότι θέλετε να αδειάσετε τον Κάδο Ανακύκλωσης; + Είστε βέβαιος ότι θέλετε να αδειάσετε τον Κάδο Ανακύκλωσης; Emptying trash - Άδειασμα Κάδου Ανακύκλωσης + Άδειασμα Κάδου Ανακύκλωσης Emptied trash - Ολοκληρώθηκε το άδειασμα του Κάδου Ανακύκλωσης + Ολοκληρώθηκε το άδειασμα του Κάδου Ανακύκλωσης Remove Folder - Αφαίρεση φακέλου + Αφαίρεση φακέλου Are you sure you want to remove the folder '%1' and all its content? - Είστε βέβαιος ότι θέλετε να αφαιρέσετε τον φάκελο '%1' και όλα τα περιεχόμενά του; + Είστε βέβαιος ότι θέλετε να αφαιρέσετε τον φάκελο '%1' και όλα τα περιεχόμενά του; No document selected! - Δεν επιλέχθηκε κανένα έγγραφο! + Δεν επιλέχθηκε κανένα έγγραφο! Open Supported File @@ -1153,7 +1153,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + Είστε βέβαιος ότι θέλετε να αφαιρέσετε %n σελίδα από το επιλεγμένο έγγραφο '%1'; Είστε βέβαιος ότι θέλετε να αφαιρέσετε %n σελίδες από το επιλεγμένο έγγραφο '%1'; @@ -1166,16 +1166,28 @@ Untitled Documents Έγγραφα χωρίς τίτλο + + duplicated %1 page + duplicated %1 pages + + + + + - The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + Remove Item - Are you sure you want to remove all selected documents? + Are you sure you want to remove the selected item(s) ? - Remove multiple documents + The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + + + + Title page @@ -1229,19 +1241,76 @@ Σελίδα %0 + + UBDocumentReplaceDialog + + Accept + Αποδοχή + + + Cancel + Άκυρο + + + Replace + + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + + + UBDocumentTreeModel + + Trash + Κάδος ανακύκλωσης + + + %1 pages copied + + %1 σελίδα αντιγράφηκε + %1 σελίδες αντιγράφηκαν + + + + My documents + + + + + UBDocumentTreeView + + %1 pages copied + + %1 σελίδα αντιγράφηκε + %1 σελίδες αντιγράφηκαν + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + UBDocumentTreeWidget %1 (copy) - %1 (αντιγραφή) + %1 (αντιγραφή) Copying page %1/%2 - Αντιγραφή σελίδας %1/%2 + Αντιγραφή σελίδας %1/%2 %1 pages copied - + %1 σελίδα αντιγράφηκε %1 σελίδες αντιγράφηκαν @@ -1282,6 +1351,10 @@ Exporting document... Εξαγωγή εγγράφου... + + Export successful. + Επιτυχημένη εξαγωγή + Export failed @@ -1294,32 +1367,28 @@ Export failed: location not writable - - Export successful. - Επιτυχημένη εξαγωγή - UBExportCFF Export to IWB - Εξαγωγή σε IWB + Εξαγωγή σε IWB Export as IWB File - Εξαγωγή ως αρχείο IWB + Εξαγωγή ως αρχείο IWB Exporting document... - Εξαγωγή εγγράφου... + Εξαγωγή εγγράφου... Export successful. - Επιτυχημένη εξαγωγή + Επιτυχημένη εξαγωγή Export failed. - Αποτυχημένη εξαγωγή + Αποτυχημένη εξαγωγή @@ -1349,6 +1418,33 @@ + + UBExportDocumentSetAdaptor + + Exporting document... + Εξαγωγή εγγράφου... + + + Export successful. + Επιτυχημένη εξαγωγή + + + Failed to export... + + + + Export as UBX File + + + + Export failed. + + + + Export to OpenBoard UBX Format + + + UBExportFullPDF @@ -1637,23 +1733,23 @@ UBImportCFF Common File Format ( - Συνηθισμένη μορφή αρχείου ( + Συνηθισμένη μορφή αρχείου ( Importing file %1... - Εισαγωγή αρχείου %1... + Εισαγωγή αρχείου %1... Import of file %1 failed. - Η εισαγωγή του αρχείου %1 απέτυχε + Η εισαγωγή του αρχείου %1 απέτυχε Import successful. - Επιτυχημένη εισαγωγή + Επιτυχημένη εισαγωγή Import failed. - Αποτυχημένη εισαγωγή + Αποτυχημένη εισαγωγή @@ -1675,6 +1771,13 @@ + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + + UBImportImage @@ -1782,27 +1885,27 @@ Do you want to ignore these errors for this host? UBOpenSankoreImporterWidget - Open-Sankore Documents Detected - + Cancel + Άκυρο - Show this panel next time + Open-Sankore Documents Detected - You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. + Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - Cancel - Άκυρο + Show this panel next time + - Proceed + You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. - Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. + Proceed @@ -1817,11 +1920,7 @@ Do you want to ignore these errors for this host? Απώλεια αποθετηρίου του εγγράφου - has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - - - - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1926,34 +2025,34 @@ Do you want to ignore these errors for this host? UBProxyLoginDlg Proxy Login - Σύνδεση στον εξουσιοδοτημένο διακομιστή + Σύνδεση στον εξουσιοδοτημένο διακομιστή Username: - Όνομα χρήστη: + Όνομα χρήστη: Password: - Κωδικός πρόσβασης: + Κωδικός πρόσβασης: UBPublicationDlg Publish document on the web - Δημοσίευση εγγράφου στο Web + Δημοσίευση εγγράφου στο Web Title: - Τίτλος: + Τίτλος: Description: - Περιγραφή: + Περιγραφή: Publish - Δημοσίευση + Δημοσίευση @@ -2426,14 +2525,14 @@ p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Lucida Grande'; font-size:10pt;">Κάνοντας κλικ στο πλήκτρο 'Φόρτωση', βεβαιώνετε ότι είστε κάτοχος των δικαιωμάτων του περιεχομένου ή ότι έχετε εξουσιοδοτηθεί από τον ιδιοκτήτη του να το δημοσιεύσετε στο Youtube, ή διαφορετικά συμφωνείτε με τους Όρους Παροχής Υπηρεσιών του Youtube που βρίσκονται στη διεύθυνση </span><a href="http://www.youtube.com/t/terms"><span style=" font-family:'Lucida Grande'; font-size:10pt; text-decoration: underline; color:#0000ff;">http://www.youtube.com/t/terms</span></a></p></body></html> - - Restore credentials on reboot - - OpenBoard OpenBoard + + Restore credentials on reboot + + brushProperties @@ -2501,12 +2600,51 @@ p, li { white-space: pre-wrap; } Περιγραφή + + documentPublishingDialog + + Dialog + Διάλογος + + + Title + Τίτλος + + + E-mail + E-mail + + + Author + Δημιουργός + + + Description + Περιγραφή + + documents OpenBoard Documents + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2647,39 +2785,39 @@ p, li { white-space: pre-wrap; } Εύσημα - Open-Sankoré Importer - + On Dark Background + Σε σκοτεινό παρασκήνιο - Check if Open-Sankoré data could be imported at launch - + Opacity + Διαφάνεια - Use system keyboard (recommended) - + On Light Background + Σε φωτεινό παρασκήνιο - Built-in virtual keyboard button size: + Swap first and second view displays - Grid + Built-in virtual keyboard button size: - On Dark Background - Σε σκοτεινό παρασκήνιο + Use system keyboard (recommended) + - Opacity - Διαφάνεια + Grid + - On Light Background - Σε φωτεινό παρασκήνιο + Open-Sankoré Importer + - Swap first and second view displays + Check if Open-Sankoré data could be imported at launch diff --git a/resources/i18n/OpenBoard_en.ts b/resources/i18n/OpenBoard_en.ts index d4a2305f..ee7cf603 100644 --- a/resources/i18n/OpenBoard_en.ts +++ b/resources/i18n/OpenBoard_en.ts @@ -67,6 +67,10 @@ MainWindow + + OpenBoard + + Board @@ -92,41 +96,13 @@ - Text - - - - Capture - - - - Add To Current Page - - - - Add To New Page - - - - Add To Library - - - - Pages - - - - New Page + Change Background Undo - - Change Background - - Ctrl+Z @@ -179,6 +155,10 @@ Ctrl+W + + Line + + Small Line @@ -191,6 +171,18 @@ Large Line + + Quit + + + + Quit OpenBoard + + + + Eraser + + Smalle Eraser @@ -204,399 +196,407 @@ - Reload Current Page + Color - Load Home Page + Back - Show Bookmarks + Left - Add Bookmark + Forward - Display Board + Right - Erase Content + Reload - Display Preferences + Reload Current Page - Show Library + Home - Show Computer Desktop + Load Home Page - Ctrl+Shift+H + Bookmarks - Create a New Folder + Show Bookmarks - Create a New Document + Bookmark - Import a Document + Add Bookmark - Export a Document + Display Board - Open Page in Board + Ctrl+B - Duplicate Selected Content + Erase - Delete Selected Content + Erase Content - Add Content to Document + Preferences - Rename Content + Display Preferences - Display Tools + Library - Use Document Wide Size (16/9) + Show Library - Use Document Regular Size (4/3) + Ctrl+L - Use Custom Document Size + Show Desktop - Stop Loading Web Page + Show Computer Desktop - Put Presentation to Sleep + Ctrl+Shift+H - Display Virtual Keyboard + Bigger - Record Presentation to Video + Zoom In - Erase Items + Ctrl++ - Erase All Items + Smaller - Erase Annotations + Zoom Out - Erase All Annotations + Ctrl+- - Clear All Elements + New Folder - Pen + Create a New Folder - Annotate Document + New Document - Ctrl+I + Create a New Document - Erase Annotation + Import - Ctrl+E + Import a Document - Marker + Export - Highlight + Export a Document - Ctrl+M + Open in Board - Selector + Open Page in Board - Select And Modify Objects + Ctrl+O - Ctrl+F + Duplicate - Hand + Duplicate Selected Content - Capture Part of the Screen + Delete - Custom Capture + Delete Selected Content - Capture a Window + Del - Embed Web Content + Add to Working Document - Capture Embeddable Web Content + Add Selected Content to Open Document - Show Main Screen on Display Screen + Add - Erase all Annotations + Add Content to Document - eduMedia + Rename - Import eduMedia simulation + Rename Content - Check Update + Tools - Ctrl+H + Display Tools - Zoom In + Multi Screen - Zoom Out + Wide Size (16/9) - Line + Use Document Wide Size (16/9) - Quit + Regular Size (4/3) - Eraser + Use Document Regular Size (4/3) - Color + Custom Size - Back + Use Custom Document Size - Left + Stop Loading - Forward + Stop Loading Web Page - Right + Cut - Reload + Copy - Home + Paste - Bookmarks + Sleep - Bookmark + Put Presentation to Sleep - Ctrl+B + Virtual Keyboard - Clear Page + Display Virtual Keyboard - Preferences + Plain Light Background - Erase + Light - Library + Grid Light Background - Ctrl+L + Ruled Light Background - Show Desktop + Plain Dark Background - Bigger + Dark - Ctrl++ + Grid Dark Background - Smaller + Ruled Dark Background - Ctrl+- + Podcast - New Folder + Record Presentation to Video - New Document + Record - Import + Start Screen Recording - Export + Erase Items - Open in Board + Erase All Items - Ctrl+O + Erase Annotations - Duplicate + Erase All Annotations - Delete + Clear Page - Del + Clear All Elements - Add to Working Document + Pen - Add Selected Content to Open Document + Annotate Document - Add + Ctrl+I - Rename + Erase Annotation - Cut + Ctrl+E - Copy + Marker - Paste + Highlight - Grid Light Background + Ctrl+M - Grid Dark Background + Selector - Start Screen Recording + Select And Modify Objects + + + + Ctrl+F + + + + Hand @@ -623,6 +623,10 @@ Ctrl+J + + Text + + Write Text @@ -632,139 +636,139 @@ - Add Item To Current Page + Capture - Add Item To New Page + Capture Part of the Screen - Add Item To Library + Add To Current Page - Create a New Page + Add Item To Current Page - Duplicate Page + Add To New Page - Duplicate the Current Page + Add Item To New Page - Import Page + Add To Library - Import an External Page + Add Item To Library - Pause + Pages - Pause Podcast Recording + Create a New Page - Podcast Config + New Page - Configure Podcast Recording + Duplicate Page - Flash Trap + Duplicate the Current Page - Trap Flash Content + Import Page - Web Trap + Import an External Page - Trap Web Content + Pause - Window Capture + Pause Podcast Recording - Show on Display + Podcast Config - Sleep + Configure Podcast Recording - Virtual Keyboard + Flash Trap - Plain Light Background + Trap Flash Content - Light + Web Trap - Plain Dark Background + Trap Web Content - Dark + Custom Capture - Podcast + Window Capture - Record + Capture a Window - Tools + Embed Web Content - Multi Screen + Capture Embeddable Web Content - Wide Size (16/9) + Show on Display - Regular Size (4/3) + Show Main Screen on Display Screen - Custom Size + Erase all Annotations - Stop Loading + eduMedia - OpenBoard + Import eduMedia simulation - Quit OpenBoard + Check Update @@ -775,6 +779,10 @@ Hide OpenBoard Application + + Ctrl+H + + Play @@ -799,14 +807,6 @@ Open the tutorial web page - - Ruled Light Background - - - - Ruled Dark Background - - Reset grid size @@ -852,6 +852,14 @@ QObject + + Element ID = + + + + Content is not supported in destination format. + + Remove Page @@ -879,19 +887,19 @@ - New update available, would you go to the web page ? + Update available - No update available + New update available, would you go to the web page ? - Update available + Update - Update + No update available @@ -905,66 +913,66 @@ UBBoardController - Downloading content %1 failed + Group - Download finished + Ungroup - Unknown tool type %1 + Saving document... - Add Item + Document has just been saved... - All Supported (%1) + Deleting page %1 - Unknown content type %1 + Page %1 deleted - Page %1 deleted + Downloading content %1 failed - Add file operation failed: file copying error + Download finished - Group + Add file operation failed: file copying error - Ungroup + Unknown tool type %1 - Saving document... + Unknown content type %1 - Document has just been saved... + Add Item - Deleting page %1 + All Supported (%1) UBBoardPaletteManager - Error Adding Image to Library + CapturedImage - CapturedImage + Error Adding Image to Library @@ -1000,6 +1008,10 @@ UBDesktopPalette + + Show OpenBoard + + Capture Part of the Screen @@ -1020,19 +1032,19 @@ Show Desktop on Secondary Screen - - Show OpenBoard - - UBDocumentController - New Folder + Trash - Page %1 + Untitled Documents + + + + New Folder @@ -1047,6 +1059,13 @@ Add Pages from File + + duplicated %1 page + duplicated %1 pages + + + + Duplicating Document %1 @@ -1056,43 +1075,11 @@ - Remove Page - - - - Remove Document - - - - Are you sure you want to remove the document '%1'? + Remove Item - Empty Trash - - - - Are you sure you want to empty trash? - - - - Emptying trash - - - - Emptied trash - - - - Remove Folder - - - - Are you sure you want to remove the folder '%1' and all its content? - - - - No document selected! + Are you sure you want to remove the selected item(s) ? @@ -1112,19 +1099,15 @@ - Delete - - - - Empty + Folder does not contain any image files - Trash + Open Document - Open Document + The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? @@ -1139,30 +1122,20 @@ Selection does not contain any image files! - - Are you sure you want to remove %n page(s) from the selected document '%1'? - - - - - - Folder does not contain any image files - - - Untitled Documents + Delete - The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + Empty - Are you sure you want to remove all selected documents? + Page %1 - Remove multiple documents + Title page @@ -1189,15 +1162,15 @@ - File %1 saved + Inserting page %1 of %2 - Inserting page %1 of %2 + Import successful. - Import successful. + Importing file %1 @@ -1205,7 +1178,7 @@ - Importing file %1 + File %1 saved @@ -1217,13 +1190,34 @@ - UBDocumentTreeWidget + UBDocumentReplaceDialog + + Accept + + + + Replace + + + + Cancel + + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + + + UBDocumentTreeModel - %1 (copy) + My documents - Copying page %1/%2 + Trash @@ -1233,6 +1227,23 @@ + + UBDocumentTreeView + + %1 pages copied + + + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + UBDownloadWidget @@ -1260,47 +1271,97 @@ UBExportAdaptor + + Exporting document... + + + + Export failed + + + + Unable to export to the selected location. You do not have the permissions necessary to save the file. + + + + Export failed: location not writable + + + + Export successful. + + Warnings during export was appeared + + + UBExportCFF + + Export to IWB + + + + Export as IWB File + + + + Exporting document... + + + + Export successful. + + + + Export failed. + + + + + UBExportDocument + + Page + + - Exporting document... + Export as UBZ File - Export failed + Exporting %1 %2 of %3 - Unable to export to the selected location. You do not have the permissions necessary to save the file. + Export to OpenBoard Format + + + UBExportDocumentSetAdaptor - Export failed: location not writable + Failed to export... - Export successful. + Export as UBX File - - - UBExportDocument - Page + Exporting document... - Export as UBZ File + Export successful. - Exporting %1 %2 of %3 + Export failed. - Export to OpenBoard Format + Export to OpenBoard UBX Format @@ -1386,6 +1447,10 @@ Search + + Rescan file system + + Delete @@ -1402,17 +1467,9 @@ Create new folder - - Rescan file system - - UBFeaturesController - - ImportedImage - - Audios @@ -1453,6 +1510,10 @@ Trash + + ImportedImage + + UBFeaturesNewFolderDialog @@ -1498,11 +1559,11 @@ - Go to Content Source + Set as background - Set as background + Go to Content Source @@ -1569,23 +1630,53 @@ - UBImportDocument + UBImportCFF + + Common File Format ( + + Importing file %1... + + Import of file %1 failed. + + Import successful. - Import of file %1 failed. + Import failed. + + + UBImportDocument OpenBoard (*.ubz) + + Importing file %1... + + + + Import of file %1 failed. + + + + Import successful. + + + + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + UBImportImage @@ -1691,6 +1782,10 @@ Do you want to ignore these errors for this host? Open-Sankore Documents Detected + + Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. + + Show this panel next time @@ -1707,10 +1802,6 @@ Do you want to ignore these errors for this host? Proceed - - Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - - UBPersistenceManager @@ -1723,11 +1814,7 @@ Do you want to ignore these errors for this host? - has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - - - - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1756,6 +1843,10 @@ Do you want to ignore these errors for this host? UBPodcastController + + OpenBoard Cast + + Failed to start encoder ... @@ -1812,10 +1903,6 @@ Do you want to ignore these errors for this host? Publish to Youtube - - OpenBoard Cast - - UBPreferencesController @@ -1828,40 +1915,6 @@ Do you want to ignore these errors for this host? - - UBProxyLoginDlg - - Proxy Login - - - - Username: - - - - Password: - - - - - UBPublicationDlg - - Publish document on the web - - - - Title: - - - - Description: - - - - Publish - - - UBSettings @@ -1904,7 +1957,7 @@ Do you want to ignore these errors for this host? UBToolsManager - Compass + Mask @@ -1912,11 +1965,11 @@ Do you want to ignore these errors for this host? - Protractor + Compass - Mask + Protractor @@ -1966,32 +2019,32 @@ Do you want to ignore these errors for this host? - Select a backup folder + Remind me later - Files update successful! -Please reboot the application to access the updated documents. + Select a backup folder - An error occured during the update. The files have not been affected. + Please wait the import process will start soon... - Files update results + Files update successful! +Please reboot the application to access the updated documents. - Updating file + An error occured during the update. The files have not been affected. - Please wait the import process will start soon... + Files update results - Remind me later + Updating file @@ -2164,12 +2217,12 @@ Please reboot the application to access the updated documents. WBDownloadManager - %1 Downloads - always >= 2 + 1 Download - 1 Download + %1 Downloads + always >= 2 @@ -2261,6 +2314,10 @@ Please reboot the application to access the updated documents. WBWebPage + + Download PDF Document: would you prefer to download the PDF file or add it to the current OpenBoard document? + + Download @@ -2277,10 +2334,6 @@ Please reboot the application to access the updated documents. Error loading page: %1 - - Download PDF Document: would you prefer to download the PDF file or add it to the current OpenBoard document? - - WBWebView @@ -2307,6 +2360,10 @@ Please reboot the application to access the updated documents. Keywords + + OpenBoard + + Category @@ -2331,13 +2388,13 @@ p, li { white-space: pre-wrap; } Restore credentials on reboot - - OpenBoard - - brushProperties + + Pen is Pressure Sensitive + + Opacity @@ -2366,10 +2423,6 @@ p, li { white-space: pre-wrap; } Fine - - Pen is Pressure Sensitive - - Show preview circle from @@ -2408,6 +2461,22 @@ p, li { white-space: pre-wrap; } OpenBoard Documents + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2428,155 +2497,155 @@ p, li { white-space: pre-wrap; } - Show Page with External Browser + Multi display - Virtual Keyboard + Swap control display and view display - Positioned at the Top (recommended for tablets) + Show internal web page content on secondary screen or projector - Positioned at the Bottom (recommended for white boards) + Swap first and second view displays - Display Text Under Button + Toolbar - Stylus Palette + Positioned at the Top (recommended for tablets) - Horizontal + Positioned at the Bottom (recommended for white boards) - Vertical + Display Text Under Button - About + Stylus Palette - Software Update + Horizontal - Check software update at launch + Vertical - Internet + Mode - Home Page: + Mode to start in: - Toolbar + Board - Pen + Desktop - Marker + Virtual Keyboard - version : … + Built-in virtual keyboard button size: - Licences + Use system keyboard (recommended) - Network + Grid - Show internal web page content on secondary screen or projector + On Light Background - Multi display + Opacity - Swap control display and view display + On Dark Background - Mode + Pen - Mode to start in: + Marker - Board + Network - Desktop + Internet - Proxy User: + Show Page with External Browser - Pass: + Home Page: - Credits + Proxy User: - Open-Sankoré Importer + Pass: - Check if Open-Sankoré data could be imported at launch + Licences - Use system keyboard (recommended) + Credits - Built-in virtual keyboard button size: + About - Grid + Software Update - On Dark Background + Check software update at launch - Opacity + Open-Sankoré Importer - On Light Background + Check if Open-Sankoré data could be imported at launch - Swap first and second view displays + version : … diff --git a/resources/i18n/OpenBoard_en_UK.ts b/resources/i18n/OpenBoard_en_UK.ts index 2fd25082..ee7cf603 100644 --- a/resources/i18n/OpenBoard_en_UK.ts +++ b/resources/i18n/OpenBoard_en_UK.ts @@ -67,6 +67,10 @@ MainWindow + + OpenBoard + + Board @@ -152,411 +156,403 @@ - Quit - - - - Back - - - - Left + Line - Forward + Small Line - Right + Medium Line - Reload + Large Line - Home + Quit - Bookmarks + Quit OpenBoard - Bookmark + Eraser - Ctrl+B + Smalle Eraser - Erase + Medium Eraser - Preferences + Large Eraser - Library + Color - Ctrl+L + Back - Show Desktop + Left - Bigger + Forward - Ctrl++ + Right - Smaller + Reload - Ctrl+- + Reload Current Page - New Folder + Home - New Document + Load Home Page - Import + Bookmarks - Export + Show Bookmarks - Open in Board + Bookmark - Ctrl+O + Add Bookmark - Duplicate + Display Board - Delete + Ctrl+B - Del + Erase - Add to Working Document + Erase Content - Add Selected Content to Open Document + Preferences - Add + Display Preferences - Rename + Library - Tools + Show Library - Multi Screen + Ctrl+L - Wide Size (16/9) + Show Desktop - Regular Size (4/3) + Show Computer Desktop - Custom Size + Ctrl+Shift+H - Stop Loading + Bigger - Cut + Zoom In - Copy + Ctrl++ - Paste + Smaller - Sleep + Zoom Out - Virtual Keyboard + Ctrl+- - Plain Light Background + New Folder - Light + Create a New Folder - Grid Light Background + New Document - Plain Dark Background + Create a New Document - Dark + Import - Grid Dark Background + Import a Document - Podcast + Export - Record + Export a Document - Start Screen Recording + Open in Board - Erase Items + Open Page in Board - Erase Annotations + Ctrl+O - Clear Page + Duplicate - Pen + Duplicate Selected Content - Check Update + Delete - Ctrl+H + Delete Selected Content - Eraser + Del - Marker + Add to Working Document - Selector + Add Selected Content to Open Document - Hand + Add - Zoom In + Add Content to Document - Zoom Out + Rename - Line + Rename Content - Small Line + Tools - Medium Line + Display Tools - Large Line + Multi Screen - Smalle Eraser + Wide Size (16/9) - Medium Eraser + Use Document Wide Size (16/9) - Large Eraser + Regular Size (4/3) - Color + Use Document Regular Size (4/3) - Reload Current Page + Custom Size - Load Home Page + Use Custom Document Size - Show Bookmarks + Stop Loading - Add Bookmark + Stop Loading Web Page - Display Board + Cut - Erase Content + Copy - Display Preferences + Paste - Show Library + Sleep - Show Computer Desktop + Put Presentation to Sleep - Ctrl+Shift+H + Virtual Keyboard - Create a New Folder + Display Virtual Keyboard - Create a New Document + Plain Light Background - Import a Document + Light - Export a Document + Grid Light Background - Open Page in Board + Ruled Light Background - Duplicate Selected Content + Plain Dark Background - Delete Selected Content + Dark - Add Content to Document + Grid Dark Background - Rename Content + Ruled Dark Background - Display Tools + Podcast - Use Document Wide Size (16/9) + Record Presentation to Video - Use Document Regular Size (4/3) + Record - Use Custom Document Size + Start Screen Recording - Stop Loading Web Page + Erase Items - Put Presentation to Sleep + Erase All Items - Display Virtual Keyboard + Erase Annotations - Record Presentation to Video + Erase All Annotations - Erase All Items + Clear Page - Erase All Annotations + Clear All Elements - Clear All Elements + Pen @@ -575,6 +571,10 @@ Ctrl+E + + Marker + + Highlight @@ -583,6 +583,10 @@ Ctrl+M + + Selector + + Select And Modify Objects @@ -591,6 +595,10 @@ Ctrl+F + + Hand + + Scroll Page @@ -631,6 +639,10 @@ Capture + + Capture Part of the Screen + + Add To Current Page @@ -716,11 +728,11 @@ - Capture Part of the Screen + Custom Capture - Custom Capture + Window Capture @@ -735,6 +747,10 @@ Capture Embeddable Web Content + + Show on Display + + Show Main Screen on Display Screen @@ -752,27 +768,19 @@ - Window Capture - - - - Show on Display - - - - OpenBoard + Check Update - Quit OpenBoard + Hide OpenBoard - Hide OpenBoard + Hide OpenBoard Application - Hide OpenBoard Application + Ctrl+H @@ -799,14 +807,6 @@ Open the tutorial web page - - Ruled Light Background - - - - Ruled Dark Background - - Reset grid size @@ -852,6 +852,14 @@ QObject + + Element ID = + + + + Content is not supported in destination format. + + Remove Page @@ -879,19 +887,19 @@ - New update available, would you go to the web page ? + Update available - No update available + New update available, would you go to the web page ? - Update available + Update - Update + No update available @@ -905,66 +913,66 @@ UBBoardController - Downloading content %1 failed + Group - Download finished + Ungroup - Unknown tool type %1 + Saving document... - Unknown content type %1 + Document has just been saved... - Add Item + Deleting page %1 - All Supported (%1) + Page %1 deleted - Page %1 deleted + Downloading content %1 failed - Add file operation failed: file copying error + Download finished - Group + Add file operation failed: file copying error - Ungroup + Unknown tool type %1 - Saving document... + Unknown content type %1 - Document has just been saved... + Add Item - Deleting page %1 + All Supported (%1) UBBoardPaletteManager - Error Adding Image to Library + CapturedImage - CapturedImage + Error Adding Image to Library @@ -1000,6 +1008,10 @@ UBDesktopPalette + + Show OpenBoard + + Capture Part of the Screen @@ -1020,19 +1032,19 @@ Show Desktop on Secondary Screen - - Show OpenBoard - - UBDocumentController - New Folder + Trash - Page %1 + Untitled Documents + + + + New Folder @@ -1047,6 +1059,13 @@ Add Pages from File + + duplicated %1 page + duplicated %1 pages + + + + Duplicating Document %1 @@ -1056,251 +1075,293 @@ - Remove Page + Remove Item - Remove Document + Are you sure you want to remove the selected item(s) ? - Are you sure you want to remove the document '%1'? + Open Supported File - Empty Trash + Importing file %1... - Are you sure you want to empty trash? + Failed to import file ... - Emptying trash + Import all Images from Folder - Emptied trash + Folder does not contain any image files - Remove Folder + Open Document - Are you sure you want to remove the folder '%1' and all its content? + The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? - No document selected! + Add all Images to Document - Open Supported File + All Images (%1) - Importing file %1... + Selection does not contain any image files! - Failed to import file ... + Delete - Import all Images from Folder + Empty - Delete + Page %1 - Empty + Title page + + + UBDocumentManager - Trash + images - Open Document + videos - Add all Images to Document + objects - All Images (%1) + widgets - Selection does not contain any image files! + All supported files (*.%1) - - Are you sure you want to remove %n page(s) from the selected document '%1'? - - - + + Inserting page %1 of %2 + - Folder does not contain any image files + Import successful. - Untitled Documents + Importing file %1 - The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + Import of file %1 successful. - Are you sure you want to remove all selected documents? + File %1 saved + + + UBDocumentNavigator - Remove multiple documents + Page %0 - UBDocumentManager + UBDocumentReplaceDialog - images + Accept - videos + Replace - objects + Cancel - widgets + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + UBDocumentTreeModel - All supported files (*.%1) + My documents - File %1 saved + Trash + + %1 pages copied + + + + + + + UBDocumentTreeView + + %1 pages copied + + + + - Inserting page %1 of %2 + Remove Item - Import successful. + Are you sure you want to remove the selected item(s) ? + + + UBDownloadWidget - Import of file %1 successful. + Downloading files - Importing file %1 + Cancel - UBDocumentNavigator + UBDraggableThumbnail Page %0 - UBDocumentTreeWidget + UBDraggableThumbnailView - %1 (copy) + Page %0 + + + UBExportAdaptor - Copying page %1/%2 + Exporting document... - - %1 pages copied - - - + + Export failed + - - - UBDownloadWidget - Downloading files + Unable to export to the selected location. You do not have the permissions necessary to save the file. - Cancel + Export failed: location not writable + + + + Export successful. + + + + Warnings during export was appeared - UBDraggableThumbnail + UBExportCFF + + Export to IWB + + + + Export as IWB File + + + + Exporting document... + + - Page %0 + Export successful. - - - UBDraggableThumbnailView - Page %0 + Export failed. - UBExportAdaptor + UBExportDocument - Warnings during export was appeared + Page - Exporting document... + Export as UBZ File - Export failed + Exporting %1 %2 of %3 - Unable to export to the selected location. You do not have the permissions necessary to save the file. + Export to OpenBoard Format + + + UBExportDocumentSetAdaptor - Export failed: location not writable + Failed to export... - Export successful. + Export as UBX File - - - UBExportDocument - Page + Exporting document... - Export as UBZ File + Export successful. - Exporting %1 %2 of %3 + Export failed. - Export to OpenBoard Format + Export to OpenBoard UBX Format @@ -1386,6 +1447,10 @@ Search + + Rescan file system + + Delete @@ -1402,17 +1467,9 @@ Create new folder - - Rescan file system - - UBFeaturesController - - ImportedImage - - Audios @@ -1453,6 +1510,10 @@ Trash + + ImportedImage + + UBFeaturesNewFolderDialog @@ -1498,11 +1559,11 @@ - Go to Content Source + Set as background - Set as background + Go to Content Source @@ -1569,23 +1630,53 @@ - UBImportDocument + UBImportCFF + + Common File Format ( + + Importing file %1... + + Import of file %1 failed. + + Import successful. - Import of file %1 failed. + Import failed. + + + UBImportDocument OpenBoard (*.ubz) + + Importing file %1... + + + + Import of file %1 failed. + + + + Import successful. + + + + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + UBImportImage @@ -1691,6 +1782,10 @@ Do you want to ignore these errors for this host? Open-Sankore Documents Detected + + Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. + + Show this panel next time @@ -1707,10 +1802,6 @@ Do you want to ignore these errors for this host? Proceed - - Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - - UBPersistenceManager @@ -1723,11 +1814,7 @@ Do you want to ignore these errors for this host? - has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - - - - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1756,6 +1843,10 @@ Do you want to ignore these errors for this host? UBPodcastController + + OpenBoard Cast + + Failed to start encoder ... @@ -1812,10 +1903,6 @@ Do you want to ignore these errors for this host? Publish to Youtube - - OpenBoard Cast - - UBPreferencesController @@ -1828,40 +1915,6 @@ Do you want to ignore these errors for this host? - - UBProxyLoginDlg - - Proxy Login - - - - Username: - - - - Password: - - - - - UBPublicationDlg - - Publish document on the web - - - - Title: - - - - Description: - - - - Publish - - - UBSettings @@ -1966,32 +2019,32 @@ Do you want to ignore these errors for this host? - Select a backup folder + Remind me later - Files update successful! -Please reboot the application to access the updated documents. + Select a backup folder - An error occured during the update. The files have not been affected. + Please wait the import process will start soon... - Files update results + Files update successful! +Please reboot the application to access the updated documents. - Updating file + An error occured during the update. The files have not been affected. - Please wait the import process will start soon... + Files update results - Remind me later + Updating file @@ -2261,6 +2314,10 @@ Please reboot the application to access the updated documents. WBWebPage + + Download PDF Document: would you prefer to download the PDF file or add it to the current OpenBoard document? + + Download @@ -2277,10 +2334,6 @@ Please reboot the application to access the updated documents. Error loading page: %1 - - Download PDF Document: would you prefer to download the PDF file or add it to the current OpenBoard document? - - WBWebView @@ -2307,6 +2360,10 @@ Please reboot the application to access the updated documents. Keywords + + OpenBoard + + Category @@ -2331,13 +2388,13 @@ p, li { white-space: pre-wrap; } Restore credentials on reboot - - OpenBoard - - brushProperties + + Pen is Pressure Sensitive + + Opacity @@ -2366,10 +2423,6 @@ p, li { white-space: pre-wrap; } Fine - - Pen is Pressure Sensitive - - Show preview circle from @@ -2408,6 +2461,22 @@ p, li { white-space: pre-wrap; } OpenBoard Documents + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2428,155 +2497,155 @@ p, li { white-space: pre-wrap; } - Show Page with External Browser + Multi display - Virtual Keyboard + Swap control display and view display - Positioned at the Top (recommended for tablets) + Show internal web page content on secondary screen or projector - Positioned at the Bottom (recommended for white boards) + Swap first and second view displays - Display Text Under Button + Toolbar - Stylus Palette + Positioned at the Top (recommended for tablets) - Horizontal + Positioned at the Bottom (recommended for white boards) - Vertical + Display Text Under Button - About + Stylus Palette - Software Update + Horizontal - Check software update at launch + Vertical - Internet + Mode - Home Page: + Mode to start in: - Toolbar + Board - Pen + Desktop - Marker + Virtual Keyboard - version : … + Built-in virtual keyboard button size: - Licences + Use system keyboard (recommended) - Network + Grid - Show internal web page content on secondary screen or projector + On Light Background - Multi display + Opacity - Swap control display and view display + On Dark Background - Mode + Pen - Mode to start in: + Marker - Board + Network - Desktop + Internet - Proxy User: + Show Page with External Browser - Pass: + Home Page: - Credits + Proxy User: - Open-Sankoré Importer + Pass: - Check if Open-Sankoré data could be imported at launch + Licences - Use system keyboard (recommended) + Credits - Built-in virtual keyboard button size: + About - Grid + Software Update - On Dark Background + Check software update at launch - Opacity + Open-Sankoré Importer - On Light Background + Check if Open-Sankoré data could be imported at launch - Swap first and second view displays + version : … diff --git a/resources/i18n/OpenBoard_es.ts b/resources/i18n/OpenBoard_es.ts index c46314db..d0111377 100644 --- a/resources/i18n/OpenBoard_es.ts +++ b/resources/i18n/OpenBoard_es.ts @@ -5,7 +5,7 @@ BlackoutWidget Click to Return to Application - Haga clic para regresar a la aplicación + Haga clic para regresar a la aplicación @@ -854,11 +854,11 @@ QObject Element ID = - Elemento ID = + Elemento ID = Content is not supported in destination format. - El formato de destino no permite este contenido + El formato de destino no permite este contenido Remove Page @@ -1073,43 +1073,43 @@ Remove Page - Eliminar página + Eliminar página Remove Document - Eliminar documento + Eliminar documento Are you sure you want to remove the document '%1'? - ¿Está seguro de que desea eliminar el documento '%1'? + ¿Está seguro de que desea eliminar el documento '%1'? Empty Trash - Vaciar papelera + Vaciar papelera Are you sure you want to empty trash? - ¿Está seguro de que desea vaciar la papelera? + ¿Está seguro de que desea vaciar la papelera? Emptying trash - Vaciando papelera + Vaciando papelera Emptied trash - Papelera vaciada + Papelera vaciada Remove Folder - Eliminar carpeta + Eliminar carpeta Are you sure you want to remove the folder '%1' and all its content? - ¿Está seturo de que desea eliminar la carpeta '%1' y todo su contenido? + ¿Está seturo de que desea eliminar la carpeta '%1' y todo su contenido? No document selected! - ¡Ningún documento seleccionado! + ¡Ningún documento seleccionado! Open Supported File @@ -1157,7 +1157,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + ¿Está seguro de que desea eliminar %n página(s) del documento seleccionado '%1'? @@ -1176,11 +1176,31 @@ Are you sure you want to remove all selected documents? - Está seguro de querer eliminar todos los documentos seleccionados? + Está seguro de querer eliminar todos los documentos seleccionados? Remove multiple documents - Eliminar varios documentos + Eliminar varios documentos + + + duplicated %1 page + duplicated %1 pages + + %1 página copiada + %1 páginas copiadas + + + + Remove Item + Borrar elementos + + + Are you sure you want to remove the selected item(s) ? + ¿Está seguro de que desea eliminar el/los elemento(s) seleccionado(s)? + + + Title page + Página de título @@ -1233,19 +1253,76 @@ Página %0 + + UBDocumentReplaceDialog + + Accept + Aceptar + + + Replace + Reemplazar + + + Cancel + Cancelar + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + El nombre %1 ya está en uso. Mantener este nombre reemplazará el documento. Proporcionar un nuevo nombre creará un nuevo documento. + + + + UBDocumentTreeModel + + My documents + Mis documentos + + + Trash + Papelera + + + %1 pages copied + + %1 páginas copiadas + + + + + + UBDocumentTreeView + + %1 pages copied + + %1 páginas copiadas + + + + + Remove Item + Borrar elementos + + + Are you sure you want to remove the selected item(s) ? + ¿Está seguro de que desea eliminar el/los elemento(s) seleccionado(s)? + + UBDocumentTreeWidget %1 (copy) - %1 (copia) + %1 (copia) Copying page %1/%2 - Copiando página %1/%2 + Copiando página %1/%2 %1 pages copied - + %1 páginas copiadas @@ -1266,7 +1343,7 @@ UBDraggableThumbnail Page %0 - Página %0 + Página %0 @@ -1292,7 +1369,7 @@ Unable to export to the selected location. You do not have the permissions necessary to save the file. - No fue posible exportar al lugar seleccionado. No tiene los permisos necesarios para guardar el fichero + No fue posible exportar al lugar seleccionado. No tiene los permisos necesarios para guardar el fichero. Export failed: location not writable @@ -1307,23 +1384,23 @@ UBExportCFF Export to IWB - Exportar a IWB + Exportar a IWB Export as IWB File - Exportar como fichero IWB + Exportar como fichero IWB Exporting document... - Exportando documento... + Exportando documento... Export successful. - Exportación satisfactoria. + Exportación satisfactoria. Export failed. - Fallo en la exportación + Fallo en la exportación @@ -1353,6 +1430,33 @@ Exportar al formato OpenBoard + + UBExportDocumentSetAdaptor + + Failed to export... + Fallo en la exportación... + + + Export as UBX File + Exportar como archivo UBX + + + Exporting document... + Exportando documento... + + + Export successful. + Exportación satisfactoria. + + + Export failed. + Fallo de la exportación. + + + Export to OpenBoard UBX Format + Exportar al formato OpenBoard UBX + + UBExportFullPDF @@ -1591,7 +1695,7 @@ Media error: - Error multimedia + Error multimedia: @@ -1641,23 +1745,23 @@ UBImportCFF Common File Format ( - Formato de archivo común ( + Formato de archivo común ( Importing file %1... - Importando archivo %1... + Importando archivo %1... Import of file %1 failed. - Fallo en la importanción del archivo %1. + Fallo en la importanción del archivo %1. Import successful. - Importación satisfactoria. + Importación satisfactoria. Import failed. - Fallo de la importación. + Fallo de la importación. @@ -1679,6 +1783,13 @@ OpenBoard (*.ubz) + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + Openboard (set de documentos) (*.ubx) + + UBImportImage @@ -1816,11 +1927,15 @@ Do you want to ignore these errors for this host? has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - perdió el acceso al repositorio de documentos '%1'. Desafortunadamente, la aplicación debe cerrarse para evitar la corrrupción de datos. También se pueden perder los últimos cambios. + perdió el acceso al repositorio de documentos '%1'. Desafortunadamente, la aplicación debe cerrarse para evitar la corrrupción de datos. También se pueden perder los últimos cambios. Moving page to trash folder... - Mover la página a la papelera + Mover la página a la papelera + + + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. + OpenBoard perdió el acceso al repositorio de documentos '%1'. Desafortunadamente, la aplicación debe cerrarse para evitar la corrrupción de datos. También se pueden perder los últimos cambios. @@ -1924,34 +2039,34 @@ Do you want to ignore these errors for this host? UBProxyLoginDlg Proxy Login - Inicio de sesión en proxy + Inicio de sesión en proxy Username: - Nombre de usuario: + Nombre de usuario: Password: - Contraseña: + Contraseña: UBPublicationDlg Publish document on the web - Publicar documento en la web + Publicar documento en la web Title: - Título: + Título: Description: - Descripción: + Descripción: Publish - Publicar + Publicar @@ -2503,12 +2618,51 @@ p, li { white-space: pre-wrap; } Descripción + + documentPublishingDialog + + Dialog + Diálogo + + + Title + Título + + + E-mail + Correo electrónico + + + Author + Autor + + + Description + Descripción + + documents OpenBoard Documents Documentos OpenBoard + + Creation date + Fecha de creación + + + Update date + Fecha de actualización + + + Alphabetical order + Orden alfabético + + + Sort Order + Orden de clasificación + preferencesDialog @@ -2682,7 +2836,7 @@ p, li { white-space: pre-wrap; } Swap first and second view displays - + Intercambiar control de pantalla y vista de pantalla diff --git a/resources/i18n/OpenBoard_eu.ts b/resources/i18n/OpenBoard_eu.ts index 2d3247cb..06368f74 100644 --- a/resources/i18n/OpenBoard_eu.ts +++ b/resources/i18n/OpenBoard_eu.ts @@ -1,3187 +1,2536 @@ - - - - - BlackoutWidget - - - Click to Return to Application - Egin klik aplikaziora bueltatzeko - - - - DownloadDialog - - - Downloads - Deskargak - - - - Clean Up - Garbitu - - - - 0 Items - 0 item - - - - DownloadItem - - - Form - Formularioa - - - - Filename - Fitxategi izena - - - - Try Again - Saiatu berriro - - - - Stop - Gelditu - - - - Open - Ireki - - - - IntranetPodcastPublishingDialog - - - Publish Podcast to YouTube - Publikatu podcasta YouTuben - - - - Title - Izenburua - - - - Description - Deskribapena - - - - Author - Egilea - - - - MainWindow - - - - - OpenBoard - OpenBoard - - - - - Board - Arbela - - - - - Web - Web - - - - - Documents - Dokumentuak - - - - - Stylus - Arkatza - - - - Ctrl+T - Ktrl+T - - - - Backgrounds - Atzeko planoak - - - - Change Background - Aldatu atzeko planoa - - - - Undo - Desegin - - - - Ctrl+Z - Ktrl+Z - - - - Redo - Berregin - - - - Ctrl+Y - Ktrl+Y - - - - Previous - Aurrekoa - - - - - Previous Page - Aurreko orria - - - - PgUp - OrriaGora - - - - Next - Hurrengoa - - - - - Next Page - Hurrengo orria - - - - PgDown - OrriaBehera - - - - Manage Documents - Dokumentuak kudeatu - - - - Ctrl+D - Ktrl+D - - - - Web Browsing - Sare arakatzea - - - - Ctrl+W - Ktrl+W - - - - - - - Line - Lerroa - - - - Small Line - Lerro txikia - - - - Medium Line - Lerro ertaina - - - - Large Line - Lerro handia - - - - Quit - Itxi - - - - Quit OpenBoard - Itxi OpenBoard - - - - - - - Eraser - Borragoma - - - - Smalle Eraser - Borragoma txikia - - - - Medium Eraser - Borragoma ertaina - - - - Large Eraser - Borragoma handia - - - - - - - - - Color - Kolorea - - - - Back - Atzera - - - - Left - Ezkerrera - - - - Forward - Aurrera - - - - Right - Eskuinera - - - - Reload - Birkargatu - - - - Reload Current Page - Birkargatu uneko orria - - - - Home - Hasiera-orria - - - - Load Home Page - Kargatu hasierako orria - - - - Bookmarks - Laster-markak - - - - Show Bookmarks - Erakutsi lastermarkak - - - - Bookmark - Laster-marka - - - - Add Bookmark - Gehitu laster-marka - - - - Display Board - Erakutsi arbela - - - - Ctrl+B - Ktrl+B - - - - Erase - Ezabatu - - - - Erase Content - Ezabatu edukia - - - - Preferences - Ezarpenak - - - - Display Preferences - Erakutsi ezarpenak - - - - Library - Liburutegia - - - - Show Library - Erakutsi liburutegia - - - - Ctrl+L - Ktrl+L - - - - Show Desktop - Erakutsi mahaigaina - - - - Show Computer Desktop - Erakutsi ordenagailuaren mahaigaina - - - - Ctrl+Shift+H - Ktrl+Shift+H - - - - Bigger - Handiagoa - - - - - Zoom In - Zoom egin - - - - Ctrl++ - Ktrl++ - - - - Smaller - Txikiagoa - - - - - Zoom Out - Zooma kendu - - - - Ctrl+- - Ktrl+- - - - - New Folder - Karpeta berria - - - - Create a New Folder - Sortu karpeta berria - - - - New Document - Dokumentu berria - - - - Create a New Document - Sortu dokumentu berria - - - - Import - Inportatu - - - - Import a Document - Inportatu dokumentua - - - - Export - Esportatu - - - - Export a Document - Esportatu dokumentua - - - - Open in Board - Ireki arbelean - - - - Open Page in Board - Ireki orria arbelean - - - - Ctrl+O - Ktrl+O - - - - Duplicate - Bikoiztu - - - - Duplicate Selected Content - Bikoiztu hautatutako edukia - - - - Delete - Ezabatu - - - - Delete Selected Content - Ezabatu hautatutako edukia - - - - Del - Ezab - - - - Add to Working Document - Gehitu laneko dokumentura - - - - Add Selected Content to Open Document - Gehitu hautatuko edukia irekitako dokumentura - - - - - Add - Gehitu - - - - Add Content to Document - Gehitu edukia dokumentura - - - - Rename - Berrizendatu - - - - Rename Content - Berrizendatu edukia - - - - - Tools - Tresnak - - - - - Display Tools - Erakutsi tresnak - - - - Multi Screen - Pantaila anitzak - - - - - Wide Size (16/9) - Tamaina panoramikoa (16/9) - - - - Use Document Wide Size (16/9) - Erabili tamaina zabaleko dokumentua (16/9) - - - - - Regular Size (4/3) - Ohiko tamaina (4/3) - - - - Use Document Regular Size (4/3) - Erabili dokumentu tamaina arrunta (4/3) - - - - - Custom Size - Tamaina pertsonalizatua - - - - Use Custom Document Size - Erabili dokumentu tamaina pertsonalizatua - - - - Stop Loading - Utzi kargatzeari - - - - Stop Loading Web Page - Utzi web orria kargatzeari - - - - Cut - Moztu - - - - Copy - Kopiatu - - - - Paste - Itsatsi - - - - Sleep - Lo - - - - Put Presentation to Sleep - Eraman aurkezpena lotara - - - - Virtual Keyboard - Teklatu birtuala - - - - Display Virtual Keyboard - Erakutsi teklatu birtuala - - - - - Plain Light Background - Atzeko plano argia - - - - - - Light - Argia - - - - - Grid Light Background - Atzeko plano sareta argia - - - - - Ruled Light Background - Atzeko plano marradun argia - - - - - Plain Dark Background - Atzeko plano iluna - - - - - - Dark - Iluna - - - - - Grid Dark Background - Atzeko plano sareta iluna - - - - - Ruled Dark Background - Atzeko plano marradun iluna - - - - Podcast - Podcast-a - - - - Record Presentation to Video - Grabatu aurkezpena bideora - - - - Record - Grabatu - - - - Start Screen Recording - Hasi pantaila grabatzen - - - - Erase Items - Ezabatu itemak - - - - Erase All Items - Ezabatu item guztiak - - - - - Erase Annotations - Ezabatu oharrak - - - - Erase All Annotations - Ezabatu ohar guztiak - - - - Clear Page - Garbitu orria - - - - Clear All Elements - Garbitu elementu guztiak - - - - Pen - Bolaluma - - - - Annotate Document - Gehit oharrak dokumentuan - - - - Ctrl+I - Ktrl+I - - - - Erase Annotation - Ezabatu oharra - - - - Ctrl+E - Ktrl+E - - - - Marker - Errotulagailua - - - - Highlight - Azpimarratu - - - - Ctrl+M - Ktrl+M - - - - Selector - Aukeratzailea - - - - Select And Modify Objects - Aukeratu eta eraldatu objektuak - - - - Ctrl+F - Ktrl+F - - - - Hand - Eskua - - - - Scroll Page - Jeitsi orria - - - - Laser Pointer - Laser puntua - - - - Virtual Laser Pointer - Laser puntu birtuala - - - - Ctrl+G - Ktrl+G - - - - Draw Lines - Marraztu lerroak - - - - Ctrl+J - Ktrl+J - - - - Text - Testua - - - - Write Text - Idatzi testua - - - - Ctrl+K - Ktrl+K - - - - Capture - Kapturatu - - - - - Capture Part of the Screen - Kapturatu pantailaren zati bat - - - - - Add To Current Page - Gehitu uneko orrira - - - - Add Item To Current Page - Gehitu itema uneko orrira - - - - Add To New Page - Gehitu orri berrira - - - - Add Item To New Page - Gehitu itema orri berrira - - - - Add To Library - Gehitu liburutegira - - - - Add Item To Library - Gehitu itema liburutegira - - - - Pages - Orriak - - - - - Create a New Page - Sortu orri berria - - - - New Page - Orri berria - - - - Duplicate Page - Bikoiztu orria - - - - Duplicate the Current Page - Bikoiztu uneko orria - - - - Import Page - Inportatu orria - - - - Import an External Page - Inportatu kanpoko orria - - - - Pause - Gelditu - - - - Pause Podcast Recording - Gelditu Podcast-aren grabaketa - - - - Podcast Config - Podcast konfiguratu - - - - Configure Podcast Recording - Konfiguratu podcast-aren grabaketa - - - - Flash Trap - - - - - Trap Flash Content - - - - - Web Trap - - - - - Trap Web Content - - - - - Custom Capture - Pertsonalizatutako kaptura - - - - Window Capture - Leiho kaptura - - - - Capture a Window - Leiho bat kapturatu - - - - Embed Web Content - Kabiatutako web edukia - - - - Capture Embeddable Web Content - Kapturatu kabiatutako web edukia - - - - Show on Display - Erakutsi pantailan - - - - Show Main Screen on Display Screen - Erakutsi pantaila nagusia erakusteko pantailan - - - - Erase all Annotations - Ezabatu ohar guztiak - - - - eduMedia - eduMedia - - - - Import eduMedia simulation - Inportatu eduMedia simulazioa - - - - Check Update - Egiaztatu eguneraketa - - - - Hide OpenBoard - Ezkutatu OpenBoard - - - - Hide OpenBoard Application - Ezkutatu OpenBoard aplikazioa - - - - Ctrl+H - Ktrl+H - - - - Play - Erreproduzitu - - - - Interact with items - Itemekin elkar ekin - - - - Erase Background - Ezabatu atzeko planoa - - - - Remove the backgound - Kendu atzeko planoa - - - - Open Tutorial - Ireki tutoriala - - - - Open the tutorial web page - Ireki tutorialaren web orria - - - - PasswordDialog - - - Authentication Required - Autentikazioa beharrezkoa - - - - Username: - Erabiltzailea: - - - - Password: - Pasahitza: - - - - ProxyDialog - - - Proxy Authentication - Proxy autentikazioa - - - - Connect to Proxy - Konektatu proxyra - - - - Username: - Erabiltzailea: - - - - Password: - Pasahitza: - - - - Save username and password for future use - Gorde erabltzailea eta pasahitza etorkizuneko erabiletarako - - - - QObject - - - Remove Page - Ezabatu orrialdea - - - - Are you sure you want to remove 1 page from the selected document '%0'? - Ziur zaude orri bat ezabatu nahi duzulua '%0' dokumentutik? - - - - UBApplication - - - Page Size - Orri tamaina - - - - Podcast - Podcast-a - - - - UBApplicationController - - - Web - Web-a - - - - Update available - Eguneratzea eskuragarri - - - - New update available, would you go to the web page ? - Eguneraketa berria eskuragarri, nahi duzu web orrira joan? - - - - Update - Eguneraketa - - - - No update available - Ez dago eguneraketarik eskuragarri - - - - UBBackgroundPalette - - - Grid size - Sareta tamaina - - - - UBBoardController - - - Group - Taldekatu - - - - Ungroup - Taldekatzea kendu - - - - Saving document... - Dokumentua gordetzen... - - - - Document has just been saved... - Dokumentua oraintxe izan da gordea... - - - - Delete page %1 from document - Ezabatu %1 orria dokumentutik - - - - Page %1 deleted - %1 orria ezabatua - - - - Downloading content %1 failed - %1 edukiaren deskargak huts egin du - - - - Download finished - Deskarga amaitua - - - - - - - Add file operation failed: file copying error - Fitxategia gehitzearen prozesuak huts egin du: fitxategi kopiaren errorea - - - - Unknown tool type %1 - %1 tresna mota ezezaguna - - - - Unknown content type %1 - %1 eduki mota ezezaguna - - - - Add Item - Gehitu itema - - - - All Supported (%1) - Denak onartuak (%1) - - - - UBBoardPaletteManager - - - CapturedImage - KapturatutakoIrudia - - - - Error Adding Image to Library - Errorea Irudai liburutegira gehitzean - - - - UBCachePropertiesWidget - - - Cache Properties - Katxearen propietateak - - - - Color: - Kolorea: - - - - Shape: - Forma: - - - - Size: - Tamaina: - - - - Close - Itxi - - - - UBDesktopPalette - - - Show OpenBoard - Erakutsi OpenBoard - - - - Capture Part of the Screen - Kapturatu pantailaren zati bat - - - - Capture the Screen - Kapturatu pantaila - - - - Show the stylus palette - Erakutsi stylus paleta - - - - Show Board on Secondary Screen - Erakutsi arbela bigarren pantailan - - - - Show Desktop on Secondary Screen - Erakutsi mahaigaina bigarren pantailan - - - - UBDocumentController - - - - Trash - Zakarrontzia - - - - Untitled Documents - Izengabeko dokumentuak - - - - - New Folder - Karpeta berria - - - - Add Folder of Images - Gehitu irudien karpeta - - - - Add Images - Gehitu irudiak - - - - Add Pages from File - Gehitu orriak fitxategitik - - - - Duplicating Document %1 - Bikoiztu %1 dokumentua - - - - Document %1 copied - %1 dokumentua kopiatua - - - - Empty Trash - Hustu zakarrontzia - - - - Are you sure you want to empty trash? - Ziur zaude zakarrontzia hustu nahi duzula? - - - - Emptying trash - Zakarrontzia husten - - - - Emptied trash - Zakarrontzia hutsa - - - - Remove Document - Ezabatu dokumentua - - - - Are you sure you want to remove the document '%1'? - Ziur zaude '%1' dokumentua ezabatu nahi duzula? - - - - Remove Folder - Ezabatu karpeta - - - - Are you sure you want to remove the folder '%1' and all its content? - Ziur zaude '%1' karpeta eta bere eduki guztia borratu nahi dituzula? - - - - Remove multiple documents - Ezabatu dokumentu anitzak - - - - Are you sure you want to remove all selected documents? - Ziur zaude aukeratutako dokumentuak ezabatu nahi dituzula? - - - - No document selected! - Ez da dokumenturik aukeratu! - - - - - Open Supported File - Ireki onartutako fitxategia - - - - - Importing file %1... - %1 fitxategia inportatzen... - - - - - Failed to import file ... - Fitxategiaren inportazioak huts egin du... - - - - Import all Images from Folder - Inportatu karpetako fitxategi guztiak - - - - Folder does not contain any image files - Karpetak ez dauka irudi fitxategirik - - - - Delete - Ezabatu - - - - Empty - Hustu - - - - Open Document - Ireki dokumentua - - - - The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? - '%1' dokumentua OpenBoarden bertsio berriago batekin (%2) sortua da. Irekitzean baliteke informazioa galtzea. Jarraitu nahi duzu? - - - - Add all Images to Document - Gehitu irudi guztiak dokumentura - - - - All Images (%1) - Irudi guztiak (%1) - - - - Selection does not contain any image files! - Aukeraketak ez du inongo irudi fitxategirik! - - - - Remove Page - Ezabatu orria - - - - Are you sure you want to remove %n page(s) from the selected document '%1'? - - Ziur zaude orri %n ezabatu nahi duzula '%1' dokumentutik? - Ziur zaude %n orri ezabatu nahi dituzula '%1' dokumentutik? - - - - - Page %1 - %1 orria - - - - UBDocumentManager - - - images - irudiak - - - - videos - bideoak - - - - objects - objektuak - - - - widgets - widgetak - - - - All supported files (*.%1) - Onartutako fitxategi guztiak (*.%1) - - - - - Inserting page %1 of %2 - %1 orria txertatzen %2tik - - - - Import successful. - Inportazio arrakastatsua. - - - - Importing file %1 - %1 inportatzen - - - - Import of file %1 successful. - %1 fitxategiaren inportazio arrakastatsua. - - - - File %1 saved - %1 fitxategia gordea - - - - UBDocumentNavigator - - - Page %0 - %0 orria - - - - UBDocumentTreeWidget - - - %1 (copy) - %1 (kopia) - - - - Copying page %1/%2 - %1/%2 orria kopiatzen - - - - %1 pages copied - - orri %1 kopiatua - %1 orri kopiatua - - - - - UBDownloadWidget - - - Downloading files - Fitxategiak jeisten - - - - Cancel - Ezeztatu - - - - UBExportAdaptor - - - Exporting document... - Dokumentua esportatzen... - - - - Export failed - Esportazioak huts egin du - - - - Unable to export to the selected location. You do not have the permissions necessary to save the file. - Ezin da aukeratutako tokira esportatu. Ez daukazu nahikoa baimenik fitxategia gordetzeko. - - - - Export failed: location not writable - Esportazioak huts egin du: helburuan ezin da idatzi - - - - Export successful. - Esportazio arrakastatsua. - - - - Warnings during export was appeared - Esportazioan zehar arazoak egon dira - - - - UBExportDocument - - - Page - Orria - - - - Export as UBZ File - UBZ fitxategi moduan esportatu - - - - Exporting %1 %2 of %3 - Esportatu %1 %2 %3tik - - - - Export to OpenBoard Format - Esportatu OpenBoard formatura - - - - UBExportFullPDF - - - Export as PDF File - Esportatu PDF fitxategira - - - - Export to PDF - Esportatu PDFra - - - - UBExportPDF - - - Export as PDF File - Esportatu PDF fitxategira - - - - Exporting page %1 of %2 - %1 orria %2tik esportatzen - - - - Export to PDF - Esportatu PDFra - - - - UBExportWeb - - - Page - Orria - - - - Export as Web data - Esportatu Web datu mduan - - - - Exporting document... - Dokumentua esportatzen... - - - - Export successful. - Esportazio arraskatatsua. - - - - Export failed. - Esportazioak huts egin du. - - - - Export to Web Browser - Esportatu web arakatzailera - - - - UBFeatureProperties - - - Add to page - Gehitu orrira - - - - Set as background - Ezarri atzeko plano moduan - - - - Add to library - Gehitu liburutegira - - - - Object informations - Objektuaren informazioa - - - - UBFeaturesActionBar - - - Add to favorites - Gehitu gogokoenetara - - - - Share - Elkarbanatu - - - - Search - Bilatu - - - - Rescan file system - Berreskaneatu fitxategi sistema - - - - Delete - Ezabatu - - - - Back to folder - Atzera karpetara - - - - Remove from favorites - Ezabatu gogokoenetatik - - - - Create new folder - Sortu karpeta berria - - - - UBFeaturesController - - - Audios - Audioak - - - - Movies - Filmak - - - - Pictures - Irudiak - - - - Animations - Animazioak - - - - Interactivities - Interjarduerak - - - - Applications - Aplikazioak - - - - Shapes - Formak - - - - Favorites - Gogokoenak - - - - Web search - Web bilaketak - - - - Trash - Zakarrontzia - - - - - ImportedImage - InportatutakoIrudia - - - - UBFeaturesNewFolderDialog - - - Accept - Onartu - - - - Cancel - Ezeztatu - - - - Enter a new folder name - Sartu karpeta izen berria - - - - UBFeaturesProgressInfo - - - Loading - Kargatzen - - - - UBGraphicsGroupContainerItemDelegate - - - Locked - Blokeatua - - - - Visible on Extended Screen - Hedatutako pantailan ikusgarri - - - - UBGraphicsItemDelegate - - - Locked - Blokeatua - - - - Visible on Extended Screen - Hedatutako pantailan ikusgarri - - - - Go to Content Source - Joan edukiaren jatorrira - - - - UBGraphicsMediaItem - - - Media resource couldn't be resolved - Multimedia baliabidea ezin izan da ebatzi - - - - Unsupported media format - Multimedia formatua ez da onargarria - - - - Media playback service not found - Multimedia erreproduzitze zerbitzua ez da aurkitu - - - - Media error: - Multimedia errorea: - - - - UBGraphicsTextItem - - - <Type Text Here> - <Idatzi Testua hemen> - - - - UBGraphicsTextItemDelegate - - - Text Color - TestuKolorea - - - - Editable - Editagarria - - - - UBGraphicsW3CWidgetItem - - - Web - Weba - - - - UBGraphicsWidgetItem - - - Loading ... - Kargatzen... - - - - UBGraphicsWidgetItemDelegate - - - Frozen - Izoztua - - - - Transform as Tool - Eraldatu tresna moduan - - - - UBImportDocument - - - OpenBoard (*.ubz) - OPenBoard (*.ubz) - - - - - Importing file %1... - %1 fitxategia inportatzen... - - - - - - Import of file %1 failed. - %1 fitxategiaren inportazioak huts egin du. - - - - - Import successful. - Inportazio arrakastatsua. - - - - UBImportImage - - - Image Format ( - Irudi formatua ( - - - - UBImportPDF - - - Portable Document Format (*.pdf) - Dokumentu formatu eramangarria (*.pdf) - - - - PDF import failed. - PDF inportazioak huts egin du. - - - - Importing page %1 of %2 - %1 orria %2tik inportatzen - - - - UBIntranetPodcastPublisher - - - Error while publishing video to intranet (%1) - Errorea bideoa intranetera esportatzen zen bitartean (%1) - - - - Publishing to Intranet in progress %1 % - Intranetera publikatzea abian %1 % - - - - UBIntranetPodcastPublishingDialog - - - Publish - Publikatu - - - - UBKeyboardPalette - - - - Enter - Sartu - - - - UBMainWindow - - - Yes - Bai - - - - No - Ez - - - - Ok - Ok - - - - UBMessagesDialog - - - Close - Itxi - - - - UBNetworkAccessManager - - - <qt>Enter username and password for "%1" at %2</qt> - <qt>Sartu erabiltzailea eta pasahitza "%1" %2n</qt> - - - - Failed to log to Proxy - Proxyra sartzean errorea - - - - SSL Errors: - -%1 - -%2 - -Do you want to ignore these errors for this host? - SSL Erroreak: - -%1 - -%2 - -Ostalari onentzako errore hauek ez-ikusi nahi dituzu? - - - - Yes - Bai - - - - No - Ez - - - - UBOpenSankoreImporterWidget - - - Open-Sankore Documents Detected - Open-Sankore dokumentuak antzemanda - - - - Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - Open-Sankoré dokumentuak daude zure ordenagailuan. OpenBoardera inportatu daitezke inportazio-aplikazioa irekitzeko "Jarraitu" botoia sakatuz. - - - - Show this panel next time - Erakutsi panel hau hurrengoan - - - - You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. - Beti ere OPenBoard dokumentuak inportatzailea atzi dezakezu Ezarpenen paneleko Honi buruz fitxan. Kontuz, jada Open-Sankore datuak inportatu badituzu oraingo OpenBoard dokumentuak gal ditzakezu. - - - - Cancel - Ezeztu - - - - Proceed - Jarraitu - - - - UBPersistenceManager - - - (copy) - (kopiatu) - - - - Document Repository Loss - Dokumentuen repositorioaren galera - - - - has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - %1 dokumentu errepositorira sarbidea galdu da. Tamalez aplikazioa itxi egingo da datuen galera sahiesteko. Azken aldaketak galdu daitezke ere. - - - - UBPlatformUtils - - - - English - Ingelesa - - - - - Russian - Errusiera - - - - - German - Alemaniera - - - - - French - Frantsesa - - - - - Swiss French - Suitzar frantsesa - - - - UBPodcastController - - - OpenBoard Cast - - - - - Failed to start encoder ... - Kodegailuaren hasierak huts egin du... - - - - No Podcast encoder available ... - Ez dago Podcast kodegailurik erabilgarri... - - - - Part %1 - %1 Zatia - - - - on your desktop ... - zure mahaigainean... - - - - in folder %1 - %1 karpetan - - - - Podcast created %1 - %1 Podcasta sortua - - - - Podcast recording error (%1) - Errorea Podcasta grabatzean (%1) - - - - Default Audio Input - Lehenetsitako audio sarrera - - - - No Audio Recording - Audio grabaziorik ez - - - - Small - Txikia - - - - Medium - Ertaina - - - - Full - Osoa - - - - Publish to Intranet - Publikatu intraneten - - - - Publish to Youtube - Publikatu Youtuben - - - - UBPreferencesController - - - version: - bertsioa: - - - - Marker is pressure sensitive - Markadorea presioarekiko sentibera da - - - - UBProxyLoginDlg - - - Proxy Login - Proxy sarrera - - - - Username: - Erabiltzailea: - - - - Password: - Pasahitza: - - - - UBPublicationDlg - - - Publish document on the web - Publikatu dokumentua webean - - - - Title: - Izenburua: - - - - Description: - Deskribapena: - - - - Publish - Publikatu - - - - UBSettings - - - My Movies - Nire filmak - - - - UBStartupHintsPalette - - - Visible next time - Ikusgarri hurrengoan - - - - UBThumbnailAdaptor - - - Generating preview thumbnails ... - Aurreikuste irudiak sortzen... - - - - %1 thumbnails generated ... - %1 aurreikuspen sortuak... - - - - UBToolsManager - - - Mask - Maskara - - - - Ruler - Erregela - - - - Compass - Konpasa - - - - Protractor - Angelu-garraiagailu - - - - Triangle - Triangelua - - - - Magnifier - Handitzailea - - - - Cache - Katxea - - - - UBTrapFlashController - - - Whole page - Orri osoa - - - - Web - Weba - - - - UBUpdateDlg - - - Document updater - Dokumentu eguneratzailea - - - - files require an update. - fitxategiek eguneraketa behar dute. - - - - Backup path: - Babeskopia helbidea: - - - - Browse - Arakatu - - - - Update - Eguneratu - - - - Remind me later - Gogoratu beranduago - - - - Select a backup folder - Aukeratu babeskopia karpeta - - - - Please wait the import process will start soon... - Mesedez itxaron, inportatze prozesua laster hasiko da... - - - - Files update successful! -Please reboot the application to access the updated documents. - Fitxategien eguneraketa ondo egin da! -Mesedez berrabiarazi aplikazioa eguneratutako dokumentuak irekitzeko. - - - - An error occured during the update. The files have not been affected. - Errorea gertatu da eguneraketan zehar. Fitxategiak ez dira kaltetuak izan. - - - - Files update results - Fitxategien eguneraketa emaitzak - - - - Updating file - FItxategia eguneratzen - - - - UBWebPluginWidget - - - Loading... - Kargatzen... - - - - UBWidgetUniboardAPI - - - %0 called (method=%1, status=%2) - %0 deitua (metodoa=%1, egoera=%2) - - - - UBYouTubePublisher - - - YouTube authentication failed. - Youtuberen autentikazioak huts egin du. - - - - Error while uploading video to YouTube (%1) - Errorea Youtubeko bideoa igotzean (%1) - - - - Upload to YouTube in progress %1 % - Youtubera igotzen % %1 - - - - UBYouTubePublishingDialog - - - Upload - Igo - - - - Autos & Vehicles - Autoak eta ibilgailuak - - - - Music - Musika - - - - Pets & Animals - Maskotak eta animaliak - - - - Sports - Kirolak - - - - Travel & Events - Bidaiak eta gertaerak - - - - Gaming - Jokoak - - - - Comedy - Komedia - - - - People & Blogs - Jendea eta Blogak - - - - News & Politics - Berriak eta Politikak - - - - Entertainment - Denbora-pasa - - - - Education - Hezkuntza - - - - Howto & Style - Estiloa - - - - Nonprofits & Activism - Aktibismoa - - - - Science & Technology - Zientzia eta teknologia - - - - UBZoomPalette - - - %1 x - %1 x - - - - WBClearButton - - - Clear - Garbitu - - - - WBDownloadItem - - - Save File - Gorde fitxategia - - - - Download canceled: %1 - Deskarga bertan behera; %1 - - - - Error opening saved file: %1 - Errorea gordetako fitxategia irekitzea: %1 - - - - Error saving: %1 - Errorea gordetzean: %1 - - - - Network Error: %1 - Sare errorea: %1 - - - - seconds - Segundo - - - - minutes - minutu - - - - - %4 %5 remaining - - %4 %5 falta dira - - - - %1 of %2 (%3/sec) %4 - %1 %2tik (%3/seg) %4 - - - - ? - unknown file size - ? - - - - %1 of %2 - Stopped - %1 %2tik - Geldituta - - - - bytes - byte - - - - KB - KB - - - - MB - MB - - - - WBDownloadManager - - - 1 Download - Deskarga bat - - - - %1 Downloads - always >= 2 - %1 Deskarga - - - - WBHistoryModel - - - Title - Izenburua - - - - Address - Helbidea - - - - WBHistoryTreeModel - - - Earlier Today - Lehenago gaur - - - - %1 items - %1 item - - - - WBSearchLineEdit - - - Search - Bilatu - - - - WBTabBar - - - New &Tab - &Fitxa berria - - - - Clone Tab - Klonatu fitxa - - - - &Close Tab - &Fitxa itxi - - - - Close &Other Tabs - Itxi &beste fitxak - - - - Reload Tab - Birkargatu fitxa - - - - Reload All Tabs - Birkargatu fitxa guztiak - - - - WBTabWidget - - - Recently Closed Tabs - DUela gutxi itxitako fitxak - - - - - (Untitled) - (Izengabea) - - - - WBToolbarSearch - - - Search - Bilatu - - - - No Recent Searches - Ez dago duela gutxiko bilaketarik - - - - Recent Searches - Duela gutxiko bilaketak - - - - Clear Recent Searches - Garbitu duela gutxiko bilaketak - - - - WBWebPage - - - Download PDF Document: would you prefer to download the PDF file or add it to the current OpenBoard document? - Jeitsi PDF dokumentua: nahiago duzu PDfdokumentua jeistea edo uneko OpenBoard dokumentuan txertatzea? - - - - Download - Jeitsi - - - - Add to Current Document - Gehitu uneko dokumentura - - - - PDF - PDF - - - - Error loading page: %1 - Errorea orria kargatzean: %1 - - - - WBWebView - - - Open in New Tab - Ireki fitxa berrian - - - - YouTubePublishingDialog - - - Publish Podcast to YouTube - Publikatu Podcasta Youtuben - - - - Title - Izenburua - - - - Description - Deskribapena - - - - Keywords - HItz klabeak - - - - OpenBoard - Open Board - - - - Category - Kategoria - - - - YouTube Username - Youtubeko erabiltzailea - - - - YouTube Password - Youtubeko pasahitza - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Lucida Grande'; font-size:10pt;">By clicking 'Upload,' you certify that you own all rights to the content or that you are authorized by the owner to make the content publicly available on YouTube, and that it otherwise complies with the YouTube Terms of Service located at </span><a href="http://www.youtube.com/t/terms"><span style=" font-family:'Lucida Grande'; font-size:10pt; text-decoration: underline; color:#0000ff;">http://www.youtube.com/t/terms</span></a></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Lucida Grande'; font-size:10pt;">'Igo' klikatuz zertifikatzen duzu edukiaren eskubideak dituzula edo jabearen baimena duzula modu publikoan Youtuben publikatzeko eta bestela Youtuberen erabilera terminoak puskatzen direla: </span><a href="http://www.youtube.com/t/terms"><span style=" font-family:'Lucida Grande'; font-size:10pt; text-decoration: underline; color:#0000ff;">http://www.youtube.com/t/terms</span></a></p></body></html> - - - - Restore credentials on reboot - Berrezarri kredentzialak berrabiaraztean - - - - brushProperties - - - On Light Background - Atzeko-plano argian - - - - On Dark Background - Atzeko plano ilunean - - - - Opacity - Opakotasuna - - - - Line Width - Lerroaren lodiera - - - - Medium - Ertaina - - - - Strong - Indartsua - - - - Fine - FIna - - - - Pen is Pressure Sensitive - Bolaluma presioarekiko sentibera da - - - - Smooth strokes (experimental) - Lerroak lausotu (esperimentala) - - - - Simplify strokes after drawing (experimental) - Sinplifikatu trazuak marraztu eta gero (esperimentala) - - - - capturePublishingDialog - - - Dialog - Elkarrizketa - - - - Title - Izenburua - - - - E-mail - E-posta - - - - Author - Egilea - - - - Description - Deskribapena - - - - documents - - - OpenBoard Documents - OpenBoard dokumentuak - - - - preferencesDialog - - - Preferences - Ezarpenak - - - - version : … - bertsioa: ... - - - - Display - Pantailaratu - - - - Multi display - Pantailaratze anitza - - - - Show internal web page content on secondary screen or projector - Erakutsi barruko web orriaren edukia bigarren pantailan edo proiektorean - - - - Swap control display and view display - Aldatu kontrol pantaila eta ikuste pantaila - - - - Toolbar - Tresna barra - - - - Positioned at the Top (recommended for tablets) - Goikaldean kokatu (tabletentzako gomendatua) - - - - Positioned at the Bottom (recommended for white boards) - Behekaldean kokatu (Arbel zurientzako gomendatua) - - - - Display Text Under Button - Erakutsi testua botoiaren azpian - - - - Stylus Palette - Luma paleta - - - - Horizontal - Horizontala - - - - Vertical - Bertikala - - - - Mode - Modua - - - - Mode to start in: - Hasteko modua: - - - - Board - Arbela - - - - Desktop - Mahaigaina - - - - Virtual Keyboard - Teklatu birtuala - - - - Built-in virtual keyboard button size: - Teklatu birutalaren botoi tamaina: - - - - Use system keyboard (recommended) - Erabili sistemaren teklatua (gomendatua) - - - - Pen - Bolaluma - - - - Marker - Markadorea - - - - Network - Sarea - - - - Internet - Internet - - - - Show Page with External Browser - Erakutsi orria kanpoko arakatzailearekin - - - - Home Page: - Hasiera orria: - - - - Proxy User: - Proxy erabiltzailea: - - - - Pass: - Pasahitza: - - - - Licences - Lizentziak - - - - Credits - Kredituak - - - - About - Honi buruz - - - - Software Update - SOftware eguneraketa - - - - Check software update at launch - Egiaztatu software eguneraketa hasieran - - - - Open-Sankoré Importer - Open-Sankoré inportatzailea - - - - Check if Open-Sankoré data could be imported at launch - Egiaztatu hasieran Open-Sankoré datuak inportatu daitezkeen - - - - Default Settings - Ezarpen lehenetsiak - - - - Close - Itxi - - - - trapFlashDialog - - - Trap flash - Flasha harrapatu - - - - Select a flash to trap - Aukeratu harrapatzeko Flasha - - - - about:blank - about:blank - - - - Application name - Aplikazio izena - - - - Create Application - Sortu aplikazioa - - - + + + + + BlackoutWidget + + Click to Return to Application + Egin klik aplikaziora bueltatzeko + + + + DownloadDialog + + Downloads + Deskargak + + + Clean Up + Garbitu + + + 0 Items + 0 item + + + + DownloadItem + + Form + Formularioa + + + Filename + Fitxategi izena + + + Try Again + Saiatu berriro + + + Stop + Gelditu + + + Open + Ireki + + + + IntranetPodcastPublishingDialog + + Publish Podcast to YouTube + Publikatu podcasta YouTuben + + + Title + Izenburua + + + Description + Deskribapena + + + Author + Egilea + + + + MainWindow + + OpenBoard + OpenBoard + + + Board + Arbela + + + Web + Web + + + Documents + Dokumentuak + + + Stylus + Arkatza + + + Ctrl+T + Ktrl+T + + + Backgrounds + Atzeko planoak + + + Change Background + Aldatu atzeko planoa + + + Undo + Desegin + + + Ctrl+Z + Ktrl+Z + + + Redo + Berregin + + + Ctrl+Y + Ktrl+Y + + + Previous + Aurrekoa + + + Previous Page + Aurreko orria + + + PgUp + OrriaGora + + + Next + Hurrengoa + + + Next Page + Hurrengo orria + + + PgDown + OrriaBehera + + + Manage Documents + Dokumentuak kudeatu + + + Ctrl+D + Ktrl+D + + + Web Browsing + Sare arakatzea + + + Ctrl+W + Ktrl+W + + + Line + Lerroa + + + Small Line + Lerro txikia + + + Medium Line + Lerro ertaina + + + Large Line + Lerro handia + + + Quit + Itxi + + + Quit OpenBoard + Itxi OpenBoard + + + Eraser + Borragoma + + + Smalle Eraser + Borragoma txikia + + + Medium Eraser + Borragoma ertaina + + + Large Eraser + Borragoma handia + + + Color + Kolorea + + + Back + Atzera + + + Left + Ezkerrera + + + Forward + Aurrera + + + Right + Eskuinera + + + Reload + Birkargatu + + + Reload Current Page + Birkargatu uneko orria + + + Home + Hasiera-orria + + + Load Home Page + Kargatu hasierako orria + + + Bookmarks + Laster-markak + + + Show Bookmarks + Erakutsi lastermarkak + + + Bookmark + Laster-marka + + + Add Bookmark + Gehitu laster-marka + + + Display Board + Erakutsi arbela + + + Ctrl+B + Ktrl+B + + + Erase + Ezabatu + + + Erase Content + Ezabatu edukia + + + Preferences + Ezarpenak + + + Display Preferences + Erakutsi ezarpenak + + + Library + Liburutegia + + + Show Library + Erakutsi liburutegia + + + Ctrl+L + Ktrl+L + + + Show Desktop + Erakutsi mahaigaina + + + Show Computer Desktop + Erakutsi ordenagailuaren mahaigaina + + + Ctrl+Shift+H + Ktrl+Shift+H + + + Bigger + Handiagoa + + + Zoom In + Zoom egin + + + Ctrl++ + Ktrl++ + + + Smaller + Txikiagoa + + + Zoom Out + Zooma kendu + + + Ctrl+- + Ktrl+- + + + New Folder + Karpeta berria + + + Create a New Folder + Sortu karpeta berria + + + New Document + Dokumentu berria + + + Create a New Document + Sortu dokumentu berria + + + Import + Inportatu + + + Import a Document + Inportatu dokumentua + + + Export + Esportatu + + + Export a Document + Esportatu dokumentua + + + Open in Board + Ireki arbelean + + + Open Page in Board + Ireki orria arbelean + + + Ctrl+O + Ktrl+O + + + Duplicate + Bikoiztu + + + Duplicate Selected Content + Bikoiztu hautatutako edukia + + + Delete + Ezabatu + + + Delete Selected Content + Ezabatu hautatutako edukia + + + Del + Ezab + + + Add to Working Document + Gehitu laneko dokumentura + + + Add Selected Content to Open Document + Gehitu hautatuko edukia irekitako dokumentura + + + Add + Gehitu + + + Add Content to Document + Gehitu edukia dokumentura + + + Rename + Berrizendatu + + + Rename Content + Berrizendatu edukia + + + Tools + Tresnak + + + Display Tools + Erakutsi tresnak + + + Multi Screen + Pantaila anitzak + + + Wide Size (16/9) + Tamaina panoramikoa (16/9) + + + Use Document Wide Size (16/9) + Erabili tamaina zabaleko dokumentua (16/9) + + + Regular Size (4/3) + Ohiko tamaina (4/3) + + + Use Document Regular Size (4/3) + Erabili dokumentu tamaina arrunta (4/3) + + + Custom Size + Tamaina pertsonalizatua + + + Use Custom Document Size + Erabili dokumentu tamaina pertsonalizatua + + + Stop Loading + Utzi kargatzeari + + + Stop Loading Web Page + Utzi web orria kargatzeari + + + Cut + Moztu + + + Copy + Kopiatu + + + Paste + Itsatsi + + + Sleep + Lo + + + Put Presentation to Sleep + Eraman aurkezpena lotara + + + Virtual Keyboard + Teklatu birtuala + + + Display Virtual Keyboard + Erakutsi teklatu birtuala + + + Plain Light Background + Atzeko plano argia + + + Light + Argia + + + Grid Light Background + Atzeko plano sareta argia + + + Ruled Light Background + Atzeko plano marradun argia + + + Plain Dark Background + Atzeko plano iluna + + + Dark + Iluna + + + Grid Dark Background + Atzeko plano sareta iluna + + + Ruled Dark Background + Atzeko plano marradun iluna + + + Podcast + Podcast-a + + + Record Presentation to Video + Grabatu aurkezpena bideora + + + Record + Grabatu + + + Start Screen Recording + Hasi pantaila grabatzen + + + Erase Items + Ezabatu itemak + + + Erase All Items + Ezabatu item guztiak + + + Erase Annotations + Ezabatu oharrak + + + Erase All Annotations + Ezabatu ohar guztiak + + + Clear Page + Garbitu orria + + + Clear All Elements + Garbitu elementu guztiak + + + Pen + Bolaluma + + + Annotate Document + Gehit oharrak dokumentuan + + + Ctrl+I + Ktrl+I + + + Erase Annotation + Ezabatu oharra + + + Ctrl+E + Ktrl+E + + + Marker + Errotulagailua + + + Highlight + Azpimarratu + + + Ctrl+M + Ktrl+M + + + Selector + Aukeratzailea + + + Select And Modify Objects + Aukeratu eta eraldatu objektuak + + + Ctrl+F + Ktrl+F + + + Hand + Eskua + + + Scroll Page + Jeitsi orria + + + Laser Pointer + Laser puntua + + + Virtual Laser Pointer + Laser puntu birtuala + + + Ctrl+G + Ktrl+G + + + Draw Lines + Marraztu lerroak + + + Ctrl+J + Ktrl+J + + + Text + Testua + + + Write Text + Idatzi testua + + + Ctrl+K + Ktrl+K + + + Capture + Kapturatu + + + Capture Part of the Screen + Kapturatu pantailaren zati bat + + + Add To Current Page + Gehitu uneko orrira + + + Add Item To Current Page + Gehitu itema uneko orrira + + + Add To New Page + Gehitu orri berrira + + + Add Item To New Page + Gehitu itema orri berrira + + + Add To Library + Gehitu liburutegira + + + Add Item To Library + Gehitu itema liburutegira + + + Pages + Orriak + + + Create a New Page + Sortu orri berria + + + New Page + Orri berria + + + Duplicate Page + Bikoiztu orria + + + Duplicate the Current Page + Bikoiztu uneko orria + + + Import Page + Inportatu orria + + + Import an External Page + Inportatu kanpoko orria + + + Pause + Gelditu + + + Pause Podcast Recording + Gelditu Podcast-aren grabaketa + + + Podcast Config + Podcast konfiguratu + + + Configure Podcast Recording + Konfiguratu podcast-aren grabaketa + + + Custom Capture + Pertsonalizatutako kaptura + + + Window Capture + Leiho kaptura + + + Capture a Window + Leiho bat kapturatu + + + Embed Web Content + Kabiatutako web edukia + + + Capture Embeddable Web Content + Kapturatu kabiatutako web edukia + + + Show on Display + Erakutsi pantailan + + + Show Main Screen on Display Screen + Erakutsi pantaila nagusia erakusteko pantailan + + + Erase all Annotations + Ezabatu ohar guztiak + + + eduMedia + eduMedia + + + Import eduMedia simulation + Inportatu eduMedia simulazioa + + + Check Update + Egiaztatu eguneraketa + + + Hide OpenBoard + Ezkutatu OpenBoard + + + Hide OpenBoard Application + Ezkutatu OpenBoard aplikazioa + + + Ctrl+H + Ktrl+H + + + Play + Erreproduzitu + + + Interact with items + Itemekin elkar ekin + + + Erase Background + Ezabatu atzeko planoa + + + Remove the backgound + Kendu atzeko planoa + + + Open Tutorial + Ireki tutoriala + + + Open the tutorial web page + Ireki tutorialaren web orria + + + + PasswordDialog + + Authentication Required + Autentikazioa beharrezkoa + + + Username: + Erabiltzailea: + + + Password: + Pasahitza: + + + + ProxyDialog + + Proxy Authentication + Proxy autentikazioa + + + Connect to Proxy + Konektatu proxyra + + + Username: + Erabiltzailea: + + + Password: + Pasahitza: + + + Save username and password for future use + Gorde erabltzailea eta pasahitza etorkizuneko erabiletarako + + + + QObject + + Remove Page + Ezabatu orrialdea + + + Are you sure you want to remove 1 page from the selected document '%0'? + Ziur zaude orri bat ezabatu nahi duzulua '%0' dokumentutik? + + + + UBApplication + + Page Size + Orri tamaina + + + Podcast + Podcast-a + + + + UBApplicationController + + Web + Web-a + + + Update available + Eguneratzea eskuragarri + + + New update available, would you go to the web page ? + Eguneraketa berria eskuragarri, nahi duzu web orrira joan? + + + Update + Eguneraketa + + + No update available + Ez dago eguneraketarik eskuragarri + + + + UBBackgroundPalette + + Grid size + Sareta tamaina + + + + UBBoardController + + Group + Taldekatu + + + Ungroup + Taldekatzea kendu + + + Saving document... + Dokumentua gordetzen... + + + Document has just been saved... + Dokumentua oraintxe izan da gordea... + + + Delete page %1 from document + Ezabatu %1 orria dokumentutik + + + Page %1 deleted + %1 orria ezabatua + + + Downloading content %1 failed + %1 edukiaren deskargak huts egin du + + + Download finished + Deskarga amaitua + + + Add file operation failed: file copying error + Fitxategia gehitzearen prozesuak huts egin du: fitxategi kopiaren errorea + + + Unknown tool type %1 + %1 tresna mota ezezaguna + + + Unknown content type %1 + %1 eduki mota ezezaguna + + + Add Item + Gehitu itema + + + All Supported (%1) + Denak onartuak (%1) + + + + UBBoardPaletteManager + + CapturedImage + KapturatutakoIrudia + + + Error Adding Image to Library + Errorea Irudai liburutegira gehitzean + + + + UBCachePropertiesWidget + + Cache Properties + Katxearen propietateak + + + Color: + Kolorea: + + + Shape: + Forma: + + + Size: + Tamaina: + + + Close + Itxi + + + + UBDesktopPalette + + Show OpenBoard + Erakutsi OpenBoard + + + Capture Part of the Screen + Kapturatu pantailaren zati bat + + + Capture the Screen + Kapturatu pantaila + + + Show the stylus palette + Erakutsi stylus paleta + + + Show Board on Secondary Screen + Erakutsi arbela bigarren pantailan + + + Show Desktop on Secondary Screen + Erakutsi mahaigaina bigarren pantailan + + + + UBDocumentController + + Trash + Zakarrontzia + + + Untitled Documents + Izengabeko dokumentuak + + + New Folder + Karpeta berria + + + Add Folder of Images + Gehitu irudien karpeta + + + Add Images + Gehitu irudiak + + + Add Pages from File + Gehitu orriak fitxategitik + + + Duplicating Document %1 + Bikoiztu %1 dokumentua + + + Document %1 copied + %1 dokumentua kopiatua + + + Empty Trash + Hustu zakarrontzia + + + Are you sure you want to empty trash? + Ziur zaude zakarrontzia hustu nahi duzula? + + + Emptying trash + Zakarrontzia husten + + + Emptied trash + Zakarrontzia hutsa + + + Remove Document + Ezabatu dokumentua + + + Are you sure you want to remove the document '%1'? + Ziur zaude '%1' dokumentua ezabatu nahi duzula? + + + Remove Folder + Ezabatu karpeta + + + Are you sure you want to remove the folder '%1' and all its content? + Ziur zaude '%1' karpeta eta bere eduki guztia borratu nahi dituzula? + + + Remove multiple documents + Ezabatu dokumentu anitzak + + + Are you sure you want to remove all selected documents? + Ziur zaude aukeratutako dokumentuak ezabatu nahi dituzula? + + + No document selected! + Ez da dokumenturik aukeratu! + + + Open Supported File + Ireki onartutako fitxategia + + + Importing file %1... + %1 fitxategia inportatzen... + + + Failed to import file ... + Fitxategiaren inportazioak huts egin du... + + + Import all Images from Folder + Inportatu karpetako fitxategi guztiak + + + Folder does not contain any image files + Karpetak ez dauka irudi fitxategirik + + + Delete + Ezabatu + + + Empty + Hustu + + + Open Document + Ireki dokumentua + + + The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + '%1' dokumentua OpenBoarden bertsio berriago batekin (%2) sortua da. Irekitzean baliteke informazioa galtzea. Jarraitu nahi duzu? + + + Add all Images to Document + Gehitu irudi guztiak dokumentura + + + All Images (%1) + Irudi guztiak (%1) + + + Selection does not contain any image files! + Aukeraketak ez du inongo irudi fitxategirik! + + + Remove Page + Ezabatu orria + + + Are you sure you want to remove %n page(s) from the selected document '%1'? + + Ziur zaude orri %n ezabatu nahi duzula '%1' dokumentutik? + Ziur zaude %n orri ezabatu nahi dituzula '%1' dokumentutik? + + + + Page %1 + %1 orria + + + + UBDocumentManager + + images + irudiak + + + videos + bideoak + + + objects + objektuak + + + widgets + widgetak + + + All supported files (*.%1) + Onartutako fitxategi guztiak (*.%1) + + + Inserting page %1 of %2 + %1 orria txertatzen %2tik + + + Import successful. + Inportazio arrakastatsua. + + + Importing file %1 + %1 inportatzen + + + Import of file %1 successful. + %1 fitxategiaren inportazio arrakastatsua. + + + File %1 saved + %1 fitxategia gordea + + + + UBDocumentNavigator + + Page %0 + %0 orria + + + + UBDocumentTreeWidget + + %1 (copy) + %1 (kopia) + + + Copying page %1/%2 + %1/%2 orria kopiatzen + + + %1 pages copied + + orri %1 kopiatua + %1 orri kopiatua + + + + + UBDownloadWidget + + Downloading files + Fitxategiak jeisten + + + Cancel + Ezeztatu + + + + UBExportAdaptor + + Exporting document... + Dokumentua esportatzen... + + + Export failed + Esportazioak huts egin du + + + Unable to export to the selected location. You do not have the permissions necessary to save the file. + Ezin da aukeratutako tokira esportatu. Ez daukazu nahikoa baimenik fitxategia gordetzeko. + + + Export failed: location not writable + Esportazioak huts egin du: helburuan ezin da idatzi + + + Export successful. + Esportazio arrakastatsua. + + + Warnings during export was appeared + Esportazioan zehar arazoak egon dira + + + + UBExportDocument + + Page + Orria + + + Export as UBZ File + UBZ fitxategi moduan esportatu + + + Exporting %1 %2 of %3 + Esportatu %1 %2 %3tik + + + Export to OpenBoard Format + Esportatu OpenBoard formatura + + + + UBExportFullPDF + + Export as PDF File + Esportatu PDF fitxategira + + + Export to PDF + Esportatu PDFra + + + + UBExportPDF + + Export as PDF File + Esportatu PDF fitxategira + + + Exporting page %1 of %2 + %1 orria %2tik esportatzen + + + Export to PDF + Esportatu PDFra + + + + UBExportWeb + + Page + Orria + + + Export as Web data + Esportatu Web datu mduan + + + Exporting document... + Dokumentua esportatzen... + + + Export successful. + Esportazio arraskatatsua. + + + Export failed. + Esportazioak huts egin du. + + + Export to Web Browser + Esportatu web arakatzailera + + + + UBFeatureProperties + + Add to page + Gehitu orrira + + + Set as background + Ezarri atzeko plano moduan + + + Add to library + Gehitu liburutegira + + + Object informations + Objektuaren informazioa + + + + UBFeaturesActionBar + + Add to favorites + Gehitu gogokoenetara + + + Share + Elkarbanatu + + + Search + Bilatu + + + Rescan file system + Berreskaneatu fitxategi sistema + + + Delete + Ezabatu + + + Back to folder + Atzera karpetara + + + Remove from favorites + Ezabatu gogokoenetatik + + + Create new folder + Sortu karpeta berria + + + + UBFeaturesController + + Audios + Audioak + + + Movies + Filmak + + + Pictures + Irudiak + + + Animations + Animazioak + + + Interactivities + Interjarduerak + + + Applications + Aplikazioak + + + Shapes + Formak + + + Favorites + Gogokoenak + + + Web search + Web bilaketak + + + Trash + Zakarrontzia + + + ImportedImage + InportatutakoIrudia + + + + UBFeaturesNewFolderDialog + + Accept + Onartu + + + Cancel + Ezeztatu + + + Enter a new folder name + Sartu karpeta izen berria + + + + UBFeaturesProgressInfo + + Loading + Kargatzen + + + + UBGraphicsGroupContainerItemDelegate + + Locked + Blokeatua + + + Visible on Extended Screen + Hedatutako pantailan ikusgarri + + + + UBGraphicsItemDelegate + + Locked + Blokeatua + + + Visible on Extended Screen + Hedatutako pantailan ikusgarri + + + Go to Content Source + Joan edukiaren jatorrira + + + + UBGraphicsMediaItem + + Media resource couldn't be resolved + Multimedia baliabidea ezin izan da ebatzi + + + Unsupported media format + Multimedia formatua ez da onargarria + + + Media playback service not found + Multimedia erreproduzitze zerbitzua ez da aurkitu + + + Media error: + Multimedia errorea: + + + + UBGraphicsTextItem + + <Type Text Here> + <Idatzi Testua hemen> + + + + UBGraphicsTextItemDelegate + + Text Color + TestuKolorea + + + Editable + Editagarria + + + + UBGraphicsW3CWidgetItem + + Web + Weba + + + + UBGraphicsWidgetItem + + Loading ... + Kargatzen... + + + + UBGraphicsWidgetItemDelegate + + Frozen + Izoztua + + + Transform as Tool + Eraldatu tresna moduan + + + + UBImportDocument + + OpenBoard (*.ubz) + OPenBoard (*.ubz) + + + Importing file %1... + %1 fitxategia inportatzen... + + + Import of file %1 failed. + %1 fitxategiaren inportazioak huts egin du. + + + Import successful. + Inportazio arrakastatsua. + + + + UBImportImage + + Image Format ( + Irudi formatua ( + + + + UBImportPDF + + Portable Document Format (*.pdf) + Dokumentu formatu eramangarria (*.pdf) + + + PDF import failed. + PDF inportazioak huts egin du. + + + Importing page %1 of %2 + %1 orria %2tik inportatzen + + + + UBIntranetPodcastPublisher + + Error while publishing video to intranet (%1) + Errorea bideoa intranetera esportatzen zen bitartean (%1) + + + Publishing to Intranet in progress %1 % + Intranetera publikatzea abian %1 % + + + + UBIntranetPodcastPublishingDialog + + Publish + Publikatu + + + + UBKeyboardPalette + + Enter + Sartu + + + + UBMainWindow + + Yes + Bai + + + No + Ez + + + Ok + Ok + + + + UBMessagesDialog + + Close + Itxi + + + + UBNetworkAccessManager + + <qt>Enter username and password for "%1" at %2</qt> + <qt>Sartu erabiltzailea eta pasahitza "%1" %2n</qt> + + + Failed to log to Proxy + Proxyra sartzean errorea + + + SSL Errors: + +%1 + +%2 + +Do you want to ignore these errors for this host? + SSL Erroreak: + +%1 + +%2 + +Ostalari onentzako errore hauek ez-ikusi nahi dituzu? + + + Yes + Bai + + + No + Ez + + + + UBOpenSankoreImporterWidget + + Open-Sankore Documents Detected + Open-Sankore dokumentuak antzemanda + + + Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. + Open-Sankoré dokumentuak daude zure ordenagailuan. OpenBoardera inportatu daitezke inportazio-aplikazioa irekitzeko "Jarraitu" botoia sakatuz. + + + Show this panel next time + Erakutsi panel hau hurrengoan + + + You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. + Beti ere OPenBoard dokumentuak inportatzailea atzi dezakezu Ezarpenen paneleko Honi buruz fitxan. Kontuz, jada Open-Sankore datuak inportatu badituzu oraingo OpenBoard dokumentuak gal ditzakezu. + + + Cancel + Ezeztu + + + Proceed + Jarraitu + + + + UBPersistenceManager + + (copy) + (kopiatu) + + + Document Repository Loss + Dokumentuen repositorioaren galera + + + has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. + %1 dokumentu errepositorira sarbidea galdu da. Tamalez aplikazioa itxi egingo da datuen galera sahiesteko. Azken aldaketak galdu daitezke ere. + + + + UBPlatformUtils + + English + Ingelesa + + + Russian + Errusiera + + + German + Alemaniera + + + French + Frantsesa + + + Swiss French + Suitzar frantsesa + + + + UBPodcastController + + Failed to start encoder ... + Kodegailuaren hasierak huts egin du... + + + No Podcast encoder available ... + Ez dago Podcast kodegailurik erabilgarri... + + + Part %1 + %1 Zatia + + + on your desktop ... + zure mahaigainean... + + + in folder %1 + %1 karpetan + + + Podcast created %1 + %1 Podcasta sortua + + + Podcast recording error (%1) + Errorea Podcasta grabatzean (%1) + + + Default Audio Input + Lehenetsitako audio sarrera + + + No Audio Recording + Audio grabaziorik ez + + + Small + Txikia + + + Medium + Ertaina + + + Full + Osoa + + + Publish to Intranet + Publikatu intraneten + + + Publish to Youtube + Publikatu Youtuben + + + + UBPreferencesController + + version: + bertsioa: + + + Marker is pressure sensitive + Markadorea presioarekiko sentibera da + + + + UBProxyLoginDlg + + Proxy Login + Proxy sarrera + + + Username: + Erabiltzailea: + + + Password: + Pasahitza: + + + + UBPublicationDlg + + Publish document on the web + Publikatu dokumentua webean + + + Title: + Izenburua: + + + Description: + Deskribapena: + + + Publish + Publikatu + + + + UBSettings + + My Movies + Nire filmak + + + + UBStartupHintsPalette + + Visible next time + Ikusgarri hurrengoan + + + + UBThumbnailAdaptor + + Generating preview thumbnails ... + Aurreikuste irudiak sortzen... + + + %1 thumbnails generated ... + %1 aurreikuspen sortuak... + + + + UBToolsManager + + Mask + Maskara + + + Ruler + Erregela + + + Compass + Konpasa + + + Protractor + Angelu-garraiagailu + + + Triangle + Triangelua + + + Magnifier + Handitzailea + + + Cache + Katxea + + + + UBTrapFlashController + + Whole page + Orri osoa + + + Web + Weba + + + + UBUpdateDlg + + Document updater + Dokumentu eguneratzailea + + + files require an update. + fitxategiek eguneraketa behar dute. + + + Backup path: + Babeskopia helbidea: + + + Browse + Arakatu + + + Update + Eguneratu + + + Remind me later + Gogoratu beranduago + + + Select a backup folder + Aukeratu babeskopia karpeta + + + Please wait the import process will start soon... + Mesedez itxaron, inportatze prozesua laster hasiko da... + + + Files update successful! +Please reboot the application to access the updated documents. + Fitxategien eguneraketa ondo egin da! +Mesedez berrabiarazi aplikazioa eguneratutako dokumentuak irekitzeko. + + + An error occured during the update. The files have not been affected. + Errorea gertatu da eguneraketan zehar. Fitxategiak ez dira kaltetuak izan. + + + Files update results + Fitxategien eguneraketa emaitzak + + + Updating file + FItxategia eguneratzen + + + + UBWebPluginWidget + + Loading... + Kargatzen... + + + + UBWidgetUniboardAPI + + %0 called (method=%1, status=%2) + %0 deitua (metodoa=%1, egoera=%2) + + + + UBYouTubePublisher + + YouTube authentication failed. + Youtuberen autentikazioak huts egin du. + + + Error while uploading video to YouTube (%1) + Errorea Youtubeko bideoa igotzean (%1) + + + Upload to YouTube in progress %1 % + Youtubera igotzen % %1 + + + + UBYouTubePublishingDialog + + Upload + Igo + + + Autos & Vehicles + Autoak eta ibilgailuak + + + Music + Musika + + + Pets & Animals + Maskotak eta animaliak + + + Sports + Kirolak + + + Travel & Events + Bidaiak eta gertaerak + + + Gaming + Jokoak + + + Comedy + Komedia + + + People & Blogs + Jendea eta Blogak + + + News & Politics + Berriak eta Politikak + + + Entertainment + Denbora-pasa + + + Education + Hezkuntza + + + Howto & Style + Estiloa + + + Nonprofits & Activism + Aktibismoa + + + Science & Technology + Zientzia eta teknologia + + + + UBZoomPalette + + %1 x + %1 x + + + + WBClearButton + + Clear + Garbitu + + + + WBDownloadItem + + Save File + Gorde fitxategia + + + Download canceled: %1 + Deskarga bertan behera; %1 + + + Error opening saved file: %1 + Errorea gordetako fitxategia irekitzea: %1 + + + Error saving: %1 + Errorea gordetzean: %1 + + + Network Error: %1 + Sare errorea: %1 + + + seconds + Segundo + + + minutes + minutu + + + - %4 %5 remaining + - %4 %5 falta dira + + + %1 of %2 (%3/sec) %4 + %1 %2tik (%3/seg) %4 + + + ? + unknown file size + ? + + + %1 of %2 - Stopped + %1 %2tik - Geldituta + + + bytes + byte + + + KB + KB + + + MB + MB + + + + WBDownloadManager + + 1 Download + Deskarga bat + + + %1 Downloads + always >= 2 + %1 Deskarga + + + + WBHistoryModel + + Title + Izenburua + + + Address + Helbidea + + + + WBHistoryTreeModel + + Earlier Today + Lehenago gaur + + + %1 items + %1 item + + + + WBSearchLineEdit + + Search + Bilatu + + + + WBTabBar + + New &Tab + &Fitxa berria + + + Clone Tab + Klonatu fitxa + + + &Close Tab + &Fitxa itxi + + + Close &Other Tabs + Itxi &beste fitxak + + + Reload Tab + Birkargatu fitxa + + + Reload All Tabs + Birkargatu fitxa guztiak + + + + WBTabWidget + + Recently Closed Tabs + DUela gutxi itxitako fitxak + + + (Untitled) + (Izengabea) + + + + WBToolbarSearch + + Search + Bilatu + + + No Recent Searches + Ez dago duela gutxiko bilaketarik + + + Recent Searches + Duela gutxiko bilaketak + + + Clear Recent Searches + Garbitu duela gutxiko bilaketak + + + + WBWebPage + + Download PDF Document: would you prefer to download the PDF file or add it to the current OpenBoard document? + Jeitsi PDF dokumentua: nahiago duzu PDfdokumentua jeistea edo uneko OpenBoard dokumentuan txertatzea? + + + Download + Jeitsi + + + Add to Current Document + Gehitu uneko dokumentura + + + PDF + PDF + + + Error loading page: %1 + Errorea orria kargatzean: %1 + + + + WBWebView + + Open in New Tab + Ireki fitxa berrian + + + + YouTubePublishingDialog + + Publish Podcast to YouTube + Publikatu Podcasta Youtuben + + + Title + Izenburua + + + Description + Deskribapena + + + Keywords + HItz klabeak + + + OpenBoard + Open Board + + + Category + Kategoria + + + YouTube Username + Youtubeko erabiltzailea + + + YouTube Password + Youtubeko pasahitza + + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Lucida Grande'; font-size:10pt;">By clicking 'Upload,' you certify that you own all rights to the content or that you are authorized by the owner to make the content publicly available on YouTube, and that it otherwise complies with the YouTube Terms of Service located at </span><a href="http://www.youtube.com/t/terms"><span style=" font-family:'Lucida Grande'; font-size:10pt; text-decoration: underline; color:#0000ff;">http://www.youtube.com/t/terms</span></a></p></body></html> + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Lucida Grande'; font-size:10pt;">'Igo' klikatuz zertifikatzen duzu edukiaren eskubideak dituzula edo jabearen baimena duzula modu publikoan Youtuben publikatzeko eta bestela Youtuberen erabilera terminoak puskatzen direla: </span><a href="http://www.youtube.com/t/terms"><span style=" font-family:'Lucida Grande'; font-size:10pt; text-decoration: underline; color:#0000ff;">http://www.youtube.com/t/terms</span></a></p></body></html> + + + Restore credentials on reboot + Berrezarri kredentzialak berrabiaraztean + + + + brushProperties + + On Light Background + Atzeko-plano argian + + + On Dark Background + Atzeko plano ilunean + + + Opacity + Opakotasuna + + + Line Width + Lerroaren lodiera + + + Medium + Ertaina + + + Strong + Indartsua + + + Fine + FIna + + + Pen is Pressure Sensitive + Bolaluma presioarekiko sentibera da + + + Smooth strokes (experimental) + Lerroak lausotu (esperimentala) + + + Simplify strokes after drawing (experimental) + Sinplifikatu trazuak marraztu eta gero (esperimentala) + + + + capturePublishingDialog + + Dialog + Elkarrizketa + + + Title + Izenburua + + + E-mail + E-posta + + + Author + Egilea + + + Description + Deskribapena + + + + documents + + OpenBoard Documents + OpenBoard dokumentuak + + + + preferencesDialog + + Preferences + Ezarpenak + + + version : … + bertsioa: ... + + + Display + Pantailaratu + + + Multi display + Pantailaratze anitza + + + Show internal web page content on secondary screen or projector + Erakutsi barruko web orriaren edukia bigarren pantailan edo proiektorean + + + Swap control display and view display + Aldatu kontrol pantaila eta ikuste pantaila + + + Toolbar + Tresna barra + + + Positioned at the Top (recommended for tablets) + Goikaldean kokatu (tabletentzako gomendatua) + + + Positioned at the Bottom (recommended for white boards) + Behekaldean kokatu (Arbel zurientzako gomendatua) + + + Display Text Under Button + Erakutsi testua botoiaren azpian + + + Stylus Palette + Luma paleta + + + Horizontal + Horizontala + + + Vertical + Bertikala + + + Mode + Modua + + + Mode to start in: + Hasteko modua: + + + Board + Arbela + + + Desktop + Mahaigaina + + + Virtual Keyboard + Teklatu birtuala + + + Built-in virtual keyboard button size: + Teklatu birutalaren botoi tamaina: + + + Use system keyboard (recommended) + Erabili sistemaren teklatua (gomendatua) + + + Pen + Bolaluma + + + Marker + Markadorea + + + Network + Sarea + + + Internet + Internet + + + Show Page with External Browser + Erakutsi orria kanpoko arakatzailearekin + + + Home Page: + Hasiera orria: + + + Proxy User: + Proxy erabiltzailea: + + + Pass: + Pasahitza: + + + Licences + Lizentziak + + + Credits + Kredituak + + + About + Honi buruz + + + Software Update + SOftware eguneraketa + + + Check software update at launch + Egiaztatu software eguneraketa hasieran + + + Open-Sankoré Importer + Open-Sankoré inportatzailea + + + Check if Open-Sankoré data could be imported at launch + Egiaztatu hasieran Open-Sankoré datuak inportatu daitezkeen + + + Default Settings + Ezarpen lehenetsiak + + + Close + Itxi + + + + trapFlashDialog + + Trap flash + Flasha harrapatu + + + Select a flash to trap + Aukeratu harrapatzeko Flasha + + + about:blank + about:blank + + + Application name + Aplikazio izena + + + Create Application + Sortu aplikazioa + + + diff --git a/resources/i18n/OpenBoard_fr.ts b/resources/i18n/OpenBoard_fr.ts index 87d4fd6f..df3ec140 100644 --- a/resources/i18n/OpenBoard_fr.ts +++ b/resources/i18n/OpenBoard_fr.ts @@ -855,11 +855,11 @@ QObject Element ID = - ID de l'élément = + ID de l'élément = Content is not supported in destination format. - Contenu non supporté dans le format souhaité. + Contenu non supporté dans le format souhaité. Remove Page @@ -1050,7 +1050,7 @@ UBDocumentController No document selected! - Aucun document sélectionné ! + Aucun document sélectionné ! Open Supported File @@ -1082,35 +1082,35 @@ Remove Page - Supprimer la page + Supprimer la page Remove Document - Supprimer le document + Supprimer le document Empty Trash - Vider la corbeille + Vider la corbeille Are you sure you want to empty trash? - Voulez-vous vraiment vider la corbeille ? + Voulez-vous vraiment vider la corbeille ? Emptying trash - Supression du contenu de la corbeille + Supression du contenu de la corbeille Emptied trash - Corbeille vidée + Corbeille vidée Remove Folder - Supprimer le dossier + Supprimer le dossier Are you sure you want to remove the folder '%1' and all its content? - Voulez-vous vraiment supprimer le dossier '%1' et tout son contenu ? + Voulez-vous vraiment supprimer le dossier '%1' et tout son contenu ? Importing file %1... @@ -1154,7 +1154,7 @@ Are you sure you want to remove the document '%1'? - Voulez-vous vraiment supprimer le document '%1'? + Voulez-vous vraiment supprimer le document '%1'? Page %1 @@ -1162,7 +1162,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + Voulez-vous vraiment effacer %n page de ce document '%1'? Voulez-vous vraiment effacer %n pages de ce document '%1'? @@ -1185,11 +1185,31 @@ Are you sure you want to remove all selected documents? - Voulez-vous vraiment supprimer tous les documents sélectionnés? + Voulez-vous vraiment supprimer tous les documents sélectionnés? Remove multiple documents - Supprimer plusieurs documents + Supprimer plusieurs documents + + + duplicated %1 page + duplicated %1 pages + + %1 page dupliquée + %1 pages dupliquées + + + + Remove Item + Effacer les éléments + + + Are you sure you want to remove the selected item(s) ? + Voulez-vous vraiment supprimer le(s) élément(s) sélectionné(s) ? + + + Title page + page Titre @@ -1243,19 +1263,85 @@ Page %0 + + UBDocumentPublisher + + Export failed. + Echec de l'export. + + + + UBDocumentReplaceDialog + + Accept + Accepter + + + Replace + Remplacer + + + Cancel + Annuler + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + Le nom %1 est déjà utilisé. +ATTENTION : En gardant ce nom, l'ancien document sera écrasé par le nouveau. +Un nouveau nom vous permettra de conserver l'ancien document. + + + + UBDocumentTreeModel + + My documents + Mes documents + + + Trash + Corbeille + + + %1 pages copied + + %1 page copiée + %1 pages copiées + + + + + UBDocumentTreeView + + %1 pages copied + + %1 page copiée + %1 pages copiées + + + + Remove Item + Effacer les éléments + + + Are you sure you want to remove the selected item(s) ? + Voulez-vous vraiment supprimer le(s) élément(s) sélectionné(s) ? + + UBDocumentTreeWidget %1 (copy) - %1 (copie) + %1 (copie) Copying page %1/%2 - Copie de la page %1/%2 en cours + Copie de la page %1/%2 en cours %1 pages copied - + %1 page copiée %1 pages copiées @@ -1317,23 +1403,23 @@ UBExportCFF Export to IWB - Exporter au format CFF (*.iwb) + Exporter au format CFF (*.iwb) Export as IWB File - Exporter au format CFF (*.iwb) + Exporter au format CFF (*.iwb) Exporting document... - Exportation du document... + Exportation du document... Export successful. - Export réussi. + Export réussi. Export failed. - Echec de l'export. + Echec de l'export. @@ -1375,6 +1461,33 @@ Impossible d'exporter dans le dossier sélectionné. Vous n'avez pas les permissions nécessaires pour sauvegarder le fichier. + + UBExportDocumentSetAdaptor + + Failed to export... + Echec de l'export... + + + Export as UBX File + Exporter au format UBX (*.ubx) + + + Exporting document... + Export du document... + + + Export successful. + Export réussi. + + + Export failed. + Echec de l'export. + + + Export to OpenBoard UBX Format + Exporter au format OpenBoard UBX + + UBExportFullPDF @@ -1678,23 +1791,23 @@ UBImportCFF Common File Format ( - Format de fichier CFF ( + Format de fichier CFF ( Importing file %1... - Importation du fichier %1... + Importation du fichier %1... Import of file %1 failed. - Echec de l'import du fichier %1. + Echec de l'import du fichier %1. Import successful. - Import terminée. + Import terminée. Import failed. - Echec de l'import. + Echec de l'import. @@ -1716,6 +1829,13 @@ OpenBoard (*.ubz) + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + Openboard (set of documents) (*.ubx) + + UBImportImage @@ -1859,7 +1979,7 @@ Voulez-vous ignorer les erreurs pour ce serveur ? has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - a perdu l'accès au répertoire des documents '%1'. Malheureusement, l'application sera fermée afin d'éviter la corruption des données. Les dernières modifications pourraient être également perdues. + a perdu l'accès au répertoire des documents '%1'. Malheureusement, l'application sera fermée afin d'éviter la corruption des données. Les dernières modifications pourraient être également perdues. saving document thumbnail for the page %1 @@ -1871,7 +1991,11 @@ Voulez-vous ignorer les erreurs pour ce serveur ? Moving page to trash folder... - Déplacement de la page dans la corbeille... + Déplacement de la page dans la corbeille... + + + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. + OpenBoard a perdu l'accès au répertoire des documents '%1'. Malheureusement, l'application sera fermée afin d'éviter la corruption des données. Les dernières modifications pourraient être également perdues. @@ -1975,34 +2099,34 @@ Voulez-vous ignorer les erreurs pour ce serveur ? UBProxyLoginDlg Proxy Login - Identification sur le Proxy + Identification sur le Proxy Username: - Nom d'utilisateur : + Nom d'utilisateur : Password: - Mot de passe : + Mot de passe : UBPublicationDlg Publish document on the web - Publier un fichier OpenBoard sur Planète-Sankoré + Publier un fichier OpenBoard sur Planète-Sankoré Title: - Titre : + Titre : Description: - Description : + Description : Publish - Publier + Publier @@ -2563,12 +2687,47 @@ p, li { white-space: pre-wrap; } Description + + documentPublishingDialog + + Dialog + Dialogue + + + E-mail + Courriel + + + Author + Auteur + + + Description + Description + + documents OpenBoard Documents Documents OpenBoard + + Creation date + Date de création + + + Update date + Date de modification + + + Alphabetical order + Ordre alphabétique + + + Sort Order + Ordre de tri + preferencesDialog diff --git a/resources/i18n/OpenBoard_fr_CH.ts b/resources/i18n/OpenBoard_fr_CH.ts index d739ec91..82cf2950 100644 --- a/resources/i18n/OpenBoard_fr_CH.ts +++ b/resources/i18n/OpenBoard_fr_CH.ts @@ -855,11 +855,11 @@ QObject Element ID = - ID de l'élément = + ID de l'élément = Content is not supported in destination format. - Contenu non supporté dans le format souhaité. + Contenu non supporté dans le format souhaité. Remove Page @@ -1050,7 +1050,7 @@ UBDocumentController No document selected! - Aucun document sélectionné ! + Aucun document sélectionné ! Open Supported File @@ -1082,35 +1082,35 @@ Remove Page - Supprimer la page + Supprimer la page Remove Document - Supprimer le document + Supprimer le document Empty Trash - Vider la corbeille + Vider la corbeille Are you sure you want to empty trash? - Voulez-vous vraiment vider la corbeille ? + Voulez-vous vraiment vider la corbeille ? Emptying trash - Supression du contenu de la corbeille + Supression du contenu de la corbeille Emptied trash - Corbeille vidée + Corbeille vidée Remove Folder - Supprimer le dossier + Supprimer le dossier Are you sure you want to remove the folder '%1' and all its content? - Voulez-vous vraiment supprimer le dossier '%1' et tout son contenu ? + Voulez-vous vraiment supprimer le dossier '%1' et tout son contenu ? Importing file %1... @@ -1154,7 +1154,7 @@ Are you sure you want to remove the document '%1'? - Voulez-vous vraiment supprimer le document '%1'? + Voulez-vous vraiment supprimer le document '%1'? Page %1 @@ -1162,7 +1162,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + Voulez-vous vraiment effacer %n page de ce document '%1'? Voulez-vous vraiment effacer %n pages de ce document '%1'? @@ -1185,11 +1185,31 @@ Are you sure you want to remove all selected documents? - Voulez-vous vraiment supprimer tous les documents sélectionnés? + Voulez-vous vraiment supprimer tous les documents sélectionnés? Remove multiple documents - Supprimer plusieurs documents + Supprimer plusieurs documents + + + duplicated %1 page + duplicated %1 pages + + %1 page dupliquée + %1 pages dupliquées + + + + Remove Item + Effacer les éléments + + + Are you sure you want to remove the selected item(s) ? + Voulez-vous vraiment supprimer le(s) élément(s) sélectionné(s) ? + + + Title page + page Titre @@ -1243,19 +1263,86 @@ Page %0 + + UBDocumentPublisher + + Export failed. + Echec de l'export. + + + + UBDocumentReplaceDialog + + Accept + Accepter + + + Replace + Remplacer + + + Cancel + Annuler + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + Le nom %1 est déjà utilisé. +ATTENTION : En gardant ce nom, l'ancien document sera écrasé par le nouveau. +Un nouveau nom vous permettra de conserver l'ancien document. + + + + + UBDocumentTreeModel + + My documents + Mes documents + + + Trash + Corbeille + + + %1 pages copied + + %1 page copiée + %1 pages copiées + + + + + UBDocumentTreeView + + %1 pages copied + + %1 page copiée + %1 pages copiées + + + + Remove Item + Effacer les éléments + + + Are you sure you want to remove the selected item(s) ? + Voulez-vous vraiment supprimer le(s) élément(s) sélectionné(s) ? + + UBDocumentTreeWidget %1 (copy) - %1 (copie) + %1 (copie) Copying page %1/%2 - Copie de la page %1/%2 en cours + Copie de la page %1/%2 en cours %1 pages copied - + %1 page copiée %1 pages copiées @@ -1317,23 +1404,23 @@ UBExportCFF Export to IWB - Exporter au format CFF (*.iwb) + Exporter au format CFF (*.iwb) Export as IWB File - Exporter au format CFF (*.iwb) + Exporter au format CFF (*.iwb) Exporting document... - Exportation du document... + Exportation du document... Export successful. - Export réussi. + Export réussi. Export failed. - Echec de l'export. + Echec de l'export. @@ -1375,6 +1462,33 @@ Impossible d'exporter dans le dossier sélectionné. Vous n'avez pas les permissions nécessaires pour sauvegarder le fichier. + + UBExportDocumentSetAdaptor + + Failed to export... + Echec de l'export... + + + Export as UBX File + Exporter au format UBX (*.ubx) + + + Exporting document... + Export du document... + + + Export successful. + Export réussi. + + + Export failed. + Echec de l'export. + + + Export to OpenBoard UBX Format + Exporter au format OpenBoard UBX + + UBExportFullPDF @@ -1678,23 +1792,23 @@ UBImportCFF Common File Format ( - Format de fichier CFF ( + Format de fichier CFF ( Importing file %1... - Importation du fichier %1... + Importation du fichier %1... Import of file %1 failed. - Echec de l'import du fichier %1. + Echec de l'import du fichier %1. Import successful. - Import terminée. + Import terminée. Import failed. - Echec de l'import. + Echec de l'import. @@ -1716,6 +1830,13 @@ OpenBoard (*.ubz) + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + Openboard (set of documents) (*.ubx) + + UBImportImage @@ -1859,7 +1980,7 @@ Voulez-vous ignorer les erreurs pour ce serveur ? has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - a perdu l'accès au répertoire des documents '%1'. Malheureusement, l'application sera fermée afin d'éviter la corruption des données. Les dernières modifications pourraient être également perdues. + a perdu l'accès au répertoire des documents '%1'. Malheureusement, l'application sera fermée afin d'éviter la corruption des données. Les dernières modifications pourraient être également perdues. saving document thumbnail for the page %1 @@ -1871,7 +1992,11 @@ Voulez-vous ignorer les erreurs pour ce serveur ? Moving page to trash folder... - Déplacement de la page dans la corbeille... + Déplacement de la page dans la corbeille... + + + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. + OpenBoard a perdu l'accès au répertoire des documents '%1'. Malheureusement, l'application sera fermée afin d'éviter la corruption des données. Les dernières modifications pourraient être également perdues. @@ -1975,34 +2100,34 @@ Voulez-vous ignorer les erreurs pour ce serveur ? UBProxyLoginDlg Proxy Login - Identification sur le Proxy + Identification sur le Proxy Username: - Nom d'utilisateur : + Nom d'utilisateur : Password: - Mot de passe : + Mot de passe : UBPublicationDlg Publish document on the web - Publier un fichier OpenBoard sur Planète-Sankoré + Publier un fichier OpenBoard sur Planète-Sankoré Title: - Titre : + Titre : Description: - Description : + Description : Publish - Publier + Publier @@ -2563,12 +2688,47 @@ p, li { white-space: pre-wrap; } Description + + documentPublishingDialog + + Dialog + Dialogue + + + E-mail + Courriel + + + Author + Auteur + + + Description + Description + + documents OpenBoard Documents Documents OpenBoard + + Creation date + Date de création + + + Update date + Date de modification + + + Alphabetical order + Ordre alphabétique + + + Sort Order + Ordre de tri + preferencesDialog diff --git a/resources/i18n/OpenBoard_gl.ts b/resources/i18n/OpenBoard_gl.ts old mode 100755 new mode 100644 index 3639d0ee..3726676b --- a/resources/i18n/OpenBoard_gl.ts +++ b/resources/i18n/OpenBoard_gl.ts @@ -5,7 +5,7 @@ BlackoutWidget Click to Return to Application - Faga clic para voltar á aplicación + Faga clic para voltar á aplicación @@ -854,11 +854,11 @@ QObject Element ID = - Elemento ID = + Elemento ID = Content is not supported in destination format. - O formato de destino non permite este contido + O formato de destino non permite este contido Remove Page @@ -904,7 +904,7 @@ Board drawing... - Debuxo de encerado.. + Debuxo de encerado.. @@ -1073,43 +1073,43 @@ Remove Page - Eliminar páxina + Eliminar páxina Remove Document - Eliminar documento + Eliminar documento Are you sure you want to remove the document '%1'? - ¿Está seguro de que desexa eliminar o documento '%1'? + ¿Está seguro de que desexa eliminar o documento '%1'? Empty Trash - Baleirar papeleira + Baleirar papeleira Are you sure you want to empty trash? - ¿Está seguro de que desexa baleirar a papeleira? + ¿Está seguro de que desexa baleirar a papeleira? Emptying trash - Baleirando papeleira + Baleirando papeleira Emptied trash - Papelera baleirada + Papelera baleirada Remove Folder - Eliminar cartafol + Eliminar cartafol Are you sure you want to remove the folder '%1' and all its content? - ¿Está seturo de que desexa eliminar o cartafol '%1' e todo o seu contido? + ¿Está seturo de que desexa eliminar o cartafol '%1' e todo o seu contido? No document selected! - ¡Ningún documento seleccionado! + ¡Ningún documento seleccionado! Open Supported File @@ -1157,7 +1157,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + ¿Está seguro de que desexa eliminar %n páxina(s) do documento seleccionado '%1'? @@ -1176,11 +1176,31 @@ Are you sure you want to remove all selected documents? - Está seguro de querer eliminar tódolos documentos seleccionados? + Está seguro de querer eliminar tódolos documentos seleccionados? Remove multiple documents - Eliminar varios documentos + Eliminar varios documentos + + + duplicated %1 page + duplicated %1 pages + + %1 páxina copiada + %1 páxinas copiadas + + + + Remove Item + borrar o elemento + + + Are you sure you want to remove the selected item(s) ? + ¿Está seguro de que desexa eliminar els elements seleccionats? + + + Title page + Páxina de título @@ -1230,22 +1250,79 @@ UBDocumentNavigator Page %0 - Páxina %0 + Páxina %0 + + + + UBDocumentReplaceDialog + + Accept + Aceptar + + + Replace + substituír + + + Cancel + Cancelar + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + O nome %1 xa está en uso. Manter este nome sustituirá o documento. Proporcionar un novo nome creará un novo documento. + + + + UBDocumentTreeModel + + My documents + Os meus documentos + + + Trash + Papeleira + + + %1 pages copied + + %1 páxina copiada + %1 páxinas copiadas + + + + + UBDocumentTreeView + + %1 pages copied + + %1 páxina copiada + %1 páxinas copiadas + + + + Remove Item + borrar o elemento + + + Are you sure you want to remove the selected item(s) ? + ¿Está seguro de que desexa eliminar els elements seleccionats? UBDocumentTreeWidget %1 (copy) - %1 (copia) + %1 (copia) Copying page %1/%2 - Copiando páxina %1/%2 + Copiando páxina %1/%2 %1 pages copied - + %1 páxinas copiadas @@ -1262,6 +1339,13 @@ Cancelar + + UBDraggableThumbnail + + Page %0 + Páxina %0 + + UBDraggableThumbnailView @@ -1300,23 +1384,23 @@ UBExportCFF Export to IWB - Exportar a IWB + Exportar a IWB Export as IWB File - Exportar como ficheiro IWB + Exportar como ficheiro IWB Exporting document... - Exportando documento... + Exportando documento... Export successful. - Exportación satisfactoria. + Exportación satisfactoria. Export failed. - Fallo na exportación + Fallo na exportación @@ -1346,6 +1430,33 @@ Exportar ao formato OpenBoard + + UBExportDocumentSetAdaptor + + Failed to export... + Fallo na exportación... + + + Export as UBX File + Exportar como arquivo UBX + + + Exporting document... + Exportando documento... + + + Export successful. + Exportación satisfactoria. + + + Export failed. + Fallo na exportación + + + Export to OpenBoard UBX Format + Exportar ao formato OpenBoard UBX + + UBExportFullPDF @@ -1576,15 +1687,15 @@ Unsupported media format - Formato multimedia non soportado + Formato multimedia non soportado Media playback service not found - Servizo de reprodución multimedia non atopado + Servizo de reprodución multimedia non atopado Media error: - Erro multimedia + Erro multimedia: @@ -1634,23 +1745,23 @@ UBImportCFF Common File Format ( - Formato de arquivo común ( + Formato de arquivo común ( Importing file %1... - Importando arquivo %1... + Importando arquivo %1... Import of file %1 failed. - Fallo na importanción do arquivo %1. + Fallo na importanción do arquivo %1. Import successful. - Importación satisfactoria. + Importación satisfactoria. Import failed. - Fallo da importación. + Fallo da importación. @@ -1672,6 +1783,13 @@ OpenBoard (*.ubz) + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + Openboard (conxunto de documentos) (*.ubx) + + UBImportImage @@ -1809,11 +1927,15 @@ Do you want to ignore these errors for this host? has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - perdeu o acceso ao repositorio de documentos '%1'. Desafortunadamente, a aplicación debe pecharse para evitar a corrrupción de datos. Tamén se poden perder os últimos cambios. + perdeu o acceso ao repositorio de documentos '%1'. Desafortunadamente, a aplicación debe pecharse para evitar a corrrupción de datos. Tamén se poden perder os últimos cambios. Moving page to trash folder... - Mover a páxina ao lixo + Mover a páxina ao lixo + + + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. + OpenBoard perdeu o acceso ao repositorio de documentos '%1'. Desafortunadamente, a aplicación debe pecharse para evitar a corrrupción de datos. Tamén se poden perder os últimos cambios. @@ -1917,34 +2039,34 @@ Do you want to ignore these errors for this host? UBProxyLoginDlg Proxy Login - Inicio de sesión en proxy + Inicio de sesión en proxy Username: - Nome de usuario: + Nome de usuario: Password: - Contrasinal: + Contrasinal: UBPublicationDlg Publish document on the web - Publicar documento na web + Publicar documento na web Title: - Título: + Título: Description: - Descripción: + Descripción: Publish - Publicar + Publicar @@ -1980,7 +2102,7 @@ Do you want to ignore these errors for this host? loading thumbnail of page %1 - cargando miniaturas da páxina %1 + cargando miniaturas da páxina %1 @@ -2502,6 +2624,22 @@ p, li { white-space: pre-wrap; } OpenBoard Documents Documentos OpenBoard + + Creation date + Data de creación + + + Update date + Data de actualización + + + Alphabetical order + Orde alfabética + + + Sort Order + Orde de ordenación + preferencesDialog @@ -2673,6 +2811,10 @@ p, li { white-space: pre-wrap; } On Light Background Sobre fondo claro + + Swap first and second view displays + Intercambiar control de pantalla e vista de pantalla + trapFlashDialog diff --git a/resources/i18n/OpenBoard_it.ts b/resources/i18n/OpenBoard_it.ts index cae80427..6c29c7ad 100644 --- a/resources/i18n/OpenBoard_it.ts +++ b/resources/i18n/OpenBoard_it.ts @@ -854,11 +854,11 @@ QObject Element ID = - Elemento ID = + Elemento ID = Content is not supported in destination format. - Il contenuto non è supportato nel formato di destinazione. + Il contenuto non è supportato nel formato di destinazione. Remove Page @@ -1073,43 +1073,43 @@ Remove Page - Elimina pagina + Elimina pagina Remove Document - Elimina documento + Elimina documento Are you sure you want to remove the document '%1'? - Sei sicuro di voler eliminare il documento '%1'? + Sei sicuro di voler eliminare il documento '%1'? Empty Trash - Svuota il cestino + Svuota il cestino Are you sure you want to empty trash? - Sei sicuro di voler svuotare il cestino? + Sei sicuro di voler svuotare il cestino? Emptying trash - Sto svuotanto il cestino + Sto svuotanto il cestino Emptied trash - Cestino svuotato + Cestino svuotato Remove Folder - Elimina cartella + Elimina cartella Are you sure you want to remove the folder '%1' and all its content? - Sei sicuro di voler eliminare la cartella '%1' e tutto il suo contenuto? + Sei sicuro di voler eliminare la cartella '%1' e tutto il suo contenuto? No document selected! - Nessun documento selezionato! + Nessun documento selezionato! Open Supported File @@ -1157,7 +1157,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + Sei sicuro di voler rimuovere %n pagina dal documento '%1' selezionato? Sei sicuro di voler rimuovere %n pagine dal documento '%1' selezionato? @@ -1176,11 +1176,31 @@ Are you sure you want to remove all selected documents? - Sicuri di voler rimuovere tutti i documenti selezionati? + Sicuri di voler rimuovere tutti i documenti selezionati? Remove multiple documents - Rimuovi documenti multipli + Rimuovi documenti multipli + + + duplicated %1 page + duplicated %1 pages + + %1 pagina copiata + %1 pagine copiate + + + + Remove Item + Cancella oggetti + + + Are you sure you want to remove the selected item(s) ? + Sei sicuro di voler cancellare l'(gli) item selezionato(i)? + + + Title page + Frontespizio @@ -1233,19 +1253,85 @@ Pagina %0 + + UBDocumentPublisher + + Export failed. + Esportazione fallita. + + + + UBDocumentReplaceDialog + + Accept + Accetta + + + Replace + Sostituisci + + + Cancel + Annulla + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + Il nome %1 è già usato. +Mantenendo questo nome sarà sovrascritto il documento esistente. +Fornendo un nome nuovo sarà creato un nuovo documento. + + + + UBDocumentTreeModel + + My documents + I miei documenti + + + Trash + Cestino + + + %1 pages copied + + %1 pagina copiata + %1 pagine copiate + + + + + UBDocumentTreeView + + %1 pages copied + + %1 pagina copiata + %1 pagine copiate + + + + Remove Item + Cancella oggetti + + + Are you sure you want to remove the selected item(s) ? + Sei sicuro di voler cancellare l'(gli) item selezionato(i)? + + UBDocumentTreeWidget %1 (copy) - %1 (copia) + %1 (copia) Copying page %1/%2 - Sto copiando pagina %1/%2 + Sto copiando pagina %1/%2 %1 pages copied - + %1 pagina copiata %1 pagine copiate @@ -1266,7 +1352,7 @@ UBDraggableThumbnail Page %0 - Pagina %0 + Pagina %0 @@ -1292,38 +1378,38 @@ Unable to export to the selected location. You do not have the permissions necessary to save the file. - + Impossibile esportare nella posizione selezionata. Non possiedi i permessi necessari a salvare il file. Export failed: location not writable - + Esportazione fallita: posizione non scrivibile Export successful. - + Esportazione riuscita. UBExportCFF Export to IWB - Esporta in IWB + Esporta in IWB Export as IWB File - Esporta come file IWB + Esporta come file IWB Exporting document... - Esportazione documento in corso... + Esportazione documento in corso... Export successful. - Esportazione conclusa con successo. + Esportazione conclusa con successo. Export failed. - Esportazione fallita. + Esportazione fallita. @@ -1365,6 +1451,33 @@ Impossibile esportare nella posizione selezionata. Non possiedi i permessi necessari a salvare il file. + + UBExportDocumentSetAdaptor + + Failed to export... + Esportazione fallita... + + + Export as UBX File + Esporta come file UBX + + + Exporting document... + Esportazione documento in corso... + + + Export successful. + Esportazione riuscita. + + + Export failed. + Esportazione fallita. + + + Export to OpenBoard UBX Format + Esporta nel formato OpenBoard UBX + + UBExportFullPDF @@ -1665,23 +1778,23 @@ UBImportCFF Common File Format ( - Common File Format ( + Common File Format ( Importing file %1... - Importazione del file %1 in corso... + Importazione del file %1 in corso... Import of file %1 failed. - L'importazione del file %1 è fallita. + L'importazione del file %1 è fallita. Import successful. - Importazione completata con successo. + Importazione completata con successo. Import failed. - Importazione fallita. + Importazione fallita. @@ -1703,6 +1816,13 @@ OpenBoard (*.ubz) + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + Openboard (insieme di documenti) (*.ubx) + + UBImportImage @@ -1846,7 +1966,7 @@ Vuoi ignorare gli errori per questo host? has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - ha perso l'accesso al repository documenti "%1". Sfortunatamente l'applicazione deve essere chiusa per evitare di rivinare i dati. Gli ultimi cambiamenti potrebbero andare persi. + ha perso l'accesso al repository documenti "%1". Sfortunatamente l'applicazione deve essere chiusa per evitare di rivinare i dati. Gli ultimi cambiamenti potrebbero andare persi. Saving thumbnail of page %1 @@ -1854,7 +1974,11 @@ Vuoi ignorare gli errori per questo host? Moving page to trash folder... - Spostamento della pagina nella cartella del cestino... + Spostamento della pagina nella cartella del cestino... + + + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. + OpenBoard ha perso l'accesso al repository documenti "%1". Sfortunatamente l'applicazione deve essere chiusa per evitare di rivinare i dati. Gli ultimi cambiamenti potrebbero andare persi. @@ -1958,34 +2082,34 @@ Vuoi ignorare gli errori per questo host? UBProxyLoginDlg Proxy Login - Login Proxy + Login Proxy Username: - Nome utente: + Nome utente: Password: - Password: + Password: UBPublicationDlg Publish document on the web - Pubblica documento sul web + Pubblica documento sul web Title: - Titolo: + Titolo: Description: - Descrizione: + Descrizione: Publish - Pubblica + Pubblica @@ -2537,12 +2661,51 @@ p, li { white-space: pre-wrap; } Descrizione + + documentPublishingDialog + + Dialog + Dialogo + + + Title + Titolo + + + E-mail + E-mail + + + Author + Autore + + + Description + Descrizione + + documents OpenBoard Documents Documenti OpenBoard + + Creation date + Data di creazione + + + Update date + Data di modifica + + + Alphabetical order + Ordine alfabetico + + + Sort Order + Ordinamento + preferencesDialog @@ -2716,7 +2879,7 @@ p, li { white-space: pre-wrap; } Swap first and second view displays - + Scambia lo schermo di controllo con quello di visualizzazione diff --git a/resources/i18n/OpenBoard_iw.ts b/resources/i18n/OpenBoard_iw.ts index 7e67814f..c67d9310 100644 --- a/resources/i18n/OpenBoard_iw.ts +++ b/resources/i18n/OpenBoard_iw.ts @@ -793,19 +793,19 @@ הסר רקע - Open Tutorial + Ruled Light Background - Open the tutorial web page + Ruled Dark Background - Ruled Light Background + Open Tutorial - Ruled Dark Background + Open the tutorial web page @@ -855,11 +855,11 @@ QObject Element ID = - זהות הרכיב: + זהות הרכיב: Content is not supported in destination format. - התוכן אינו נתמך בפורמט היעד + התוכן אינו נתמך בפורמט היעד Remove Page @@ -1070,43 +1070,43 @@ Remove Page - הסר את הדף + הסר את הדף Remove Document - הסר את המסמך + הסר את המסמך Are you sure you want to remove the document '%1'? - אתה בטוח שברצונך להסיר את %1'המסמך? + אתה בטוח שברצונך להסיר את %1'המסמך? Empty Trash - רוקן את הסל + רוקן את הסל Are you sure you want to empty trash? - אתה בטוח שברצונך לרוקן את הסל? + אתה בטוח שברצונך לרוקן את הסל? Emptying trash - מרוקן סל + מרוקן סל Emptied trash - הסל הורק + הסל הורק Remove Folder - הסר תיקיה + הסר תיקיה Are you sure you want to remove the folder '%1' and all its content? - אתה בטוח שברצונך להסיר את התיקיה %1 ואת כל תכנה? + אתה בטוח שברצונך להסיר את התיקיה %1 ואת כל תכנה? No document selected! - לא נבחר כל מסמך! + לא נבחר כל מסמך! Open Supported File @@ -1154,7 +1154,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + האם אתה בטוח שברצונך להסיר %n עמוד(ים) מהמסמך שנבחר %1'? @@ -1167,16 +1167,28 @@ Untitled Documents מסמכים ללא שם + + duplicated %1 page + duplicated %1 pages + + + + + - The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + Remove Item - Are you sure you want to remove all selected documents? + Are you sure you want to remove the selected item(s) ? - Remove multiple documents + The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + + + + Title page @@ -1230,19 +1242,76 @@ עמוד %0 + + UBDocumentReplaceDialog + + Accept + קבל + + + Cancel + בטל + + + Replace + + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + + + UBDocumentTreeModel + + Trash + סל + + + %1 pages copied + + %1 דפים הועתקו + + + + + My documents + + + + + UBDocumentTreeView + + %1 pages copied + + %1 דפים הועתקו + + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + UBDocumentTreeWidget %1 (copy) - %1 (העתק) + %1 (העתק) Copying page %1/%2 - מעתיק עמוד %1/%2 + מעתיק עמוד %1/%2 %1 pages copied - + %1 דפים הועתקו @@ -1275,15 +1344,14 @@ UBExportAdaptor - - Warnings during export was appeared - I don't understand this sentence - - Exporting document... מייצא מסמך... + + Export successful. + הייצוא בוצע בהצלחה. + Export failed @@ -1297,31 +1365,31 @@ - Export successful. - הייצוא בוצע בהצלחה. + Warnings during export was appeared + UBExportCFF Export to IWB - ייצא ל-IWB + ייצא ל-IWB Export as IWB File - ייצא כקובץ IWB + ייצא כקובץ IWB Exporting document... - מייצא מסמך... + מייצא מסמך... Export successful. - הייצוא בוצע בהצלחה. + הייצוא בוצע בהצלחה. Export failed. - פעולת הייצוא נכשלה + פעולת הייצוא נכשלה @@ -1351,6 +1419,33 @@ + + UBExportDocumentSetAdaptor + + Exporting document... + מייצא מסמך... + + + Export successful. + הייצוא בוצע בהצלחה. + + + Failed to export... + + + + Export as UBX File + + + + Export failed. + + + + Export to OpenBoard UBX Format + + + UBExportFullPDF @@ -1639,23 +1734,23 @@ UBImportCFF Common File Format ( - פורמט קובץ רגיל ) + פורמט קובץ רגיל ) Importing file %1... - מייבא קובץ %1... + מייבא קובץ %1... Import of file %1 failed. - ייבוא קובץ %1 נכשל. + ייבוא קובץ %1 נכשל. Import successful. - הייבוא בוצע בהצלחה. + הייבוא בוצע בהצלחה. Import failed. - הייבוא נכשל. + הייבוא נכשל. @@ -1677,6 +1772,13 @@ + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + + UBImportImage @@ -1779,27 +1881,27 @@ Do you want to ignore these errors for this host? UBOpenSankoreImporterWidget - Open-Sankore Documents Detected - + Cancel + בטל - Show this panel next time + Open-Sankore Documents Detected - You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. + Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - Cancel - בטל + Show this panel next time + - Proceed + You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. - Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. + Proceed @@ -1814,11 +1916,7 @@ Do you want to ignore these errors for this host? אבד מקום האכסון של המסמך - has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - - - - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1923,34 +2021,34 @@ Do you want to ignore these errors for this host? UBProxyLoginDlg Proxy Login - כניסה לפרוקסי + כניסה לפרוקסי Username: - שם משתמש: + שם משתמש: Password: - סיסמא: + סיסמא: UBPublicationDlg Publish document on the web - פרסם מסמך באינטרנט + פרסם מסמך באינטרנט Title: - שם: + שם: Description: - תיאור: + תיאור: Publish - פרסם + פרסם @@ -2411,17 +2509,17 @@ Please reboot the application to access the updated documents. YouTube Password הסיסמא ליוטיוב + + OpenBoard + הגרסה הפתוחה של Sankoré + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Lucida Grande'; font-size:10pt;">By clicking 'Upload,' you certify that you own all rights to the content or that you are authorized by the owner to make the content publicly available on YouTube, and that it otherwise complies with the YouTube Terms of Service located at </span><a href="http://www.youtube.com/t/terms"><span style=" font-family:'Lucida Grande'; font-size:10pt; text-decoration: underline; color:#0000ff;">http://www.youtube.com/t/terms</span></a></p></body></html> - - - - OpenBoard - הגרסה הפתוחה של Sankoré + Restore credentials on reboot @@ -2494,12 +2592,51 @@ p, li { white-space: pre-wrap; } תיאור + + documentPublishingDialog + + Dialog + דיאלוג + + + Title + שם + + + E-mail + דואל + + + Author + מחבר + + + Description + תיאור + + documents OpenBoard Documents + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2551,10 +2688,6 @@ p, li { white-space: pre-wrap; } Positioned at the Top (recommended for tablets) ממוקם בראש הדף )מומלץ למחשבי לוח( - - Positioned at the Bottom (recommended for white boards) - - Display Text Under Button הצג טקסט מתחת לכפתור @@ -2640,39 +2773,43 @@ p, li { white-space: pre-wrap; } אשראי - Open-Sankoré Importer - + On Dark Background + על רקע כהה - Check if Open-Sankoré data could be imported at launch - + Opacity + אטימות - Use system keyboard (recommended) + On Light Background + על רקע בהיר + + + Swap first and second view displays - Built-in virtual keyboard button size: + Positioned at the Bottom (recommended for white boards) - Grid + Built-in virtual keyboard button size: - On Dark Background - על רקע כהה + Use system keyboard (recommended) + - Opacity - אטימות + Grid + - On Light Background - על רקע בהיר + Open-Sankoré Importer + - Swap first and second view displays + Check if Open-Sankoré data could be imported at launch diff --git a/resources/i18n/OpenBoard_ja.ts b/resources/i18n/OpenBoard_ja.ts index 0b364292..5ce01bfc 100644 --- a/resources/i18n/OpenBoard_ja.ts +++ b/resources/i18n/OpenBoard_ja.ts @@ -792,19 +792,19 @@ 背景を削除する - Open Tutorial + Ruled Light Background - Open the tutorial web page + Ruled Dark Background - Ruled Light Background + Open Tutorial - Ruled Dark Background + Open the tutorial web page @@ -856,6 +856,14 @@ Remove Page ページ削除 + + Element ID = + + + + Content is not supported in destination format. + + Are you sure you want to remove 1 page from the selected document '%0'? @@ -937,23 +945,23 @@ - Page %1 deleted + Saving document... - Add file operation failed: file copying error + Document has just been saved... - Saving document... + Deleting page %1 - Document has just been saved... + Page %1 deleted - Deleting page %1 + Add file operation failed: file copying error @@ -1057,43 +1065,43 @@ Remove Page - ページ削除 + ページ削除 Remove Document - ドキュメント削除 + ドキュメント削除 Are you sure you want to remove the document '%1'? - 本当にドキュメント%1を削除しますか? + 本当にドキュメント%1を削除しますか? Empty Trash - ゴミ箱を空にする + ゴミ箱を空にする Are you sure you want to empty trash? - 本当にこのゴミ箱を空にしますか? + 本当にこのゴミ箱を空にしますか? Emptying trash - ゴミ箱を空にしています + ゴミ箱を空にしています Emptied trash - ゴミ箱を空にしました + ゴミ箱を空にしました Remove Folder - フォルダーを削除 + フォルダーを削除 Are you sure you want to remove the folder '%1' and all its content? - 本当にフォルダー%1とそのコンテンツを削除しますか? + 本当にフォルダー%1とそのコンテンツを削除しますか? No document selected! - ドキュメントが選択されていません! + ドキュメントが選択されていません! Open Supported File @@ -1141,7 +1149,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + 選抜した資料から%nページを除けたいですか? @@ -1149,20 +1157,31 @@ Untitled Documents タイトルなしドキュメント + + duplicated %1 page + duplicated %1 pages + + + + - Folder does not contain any image files + Remove Item - The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + Are you sure you want to remove the selected item(s) ? + + + + Folder does not contain any image files - Are you sure you want to remove all selected documents? + The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? - Remove multiple documents + Title page @@ -1192,14 +1211,14 @@ File %1 saved ファイル%1保存済み - - Inserting page %1 of %2 - - Import successful. インポートに成功。 + + Inserting page %1 of %2 + + Importing file %1 @@ -1216,19 +1235,74 @@ %0ページ + + UBDocumentReplaceDialog + + Cancel + キャンセル + + + Accept + + + + Replace + + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + + + UBDocumentTreeModel + + Trash + ゴミ箱 + + + %1 pages copied + + ページを%1枚をコピーしました + + + + My documents + + + + + UBDocumentTreeView + + %1 pages copied + + ページを%1枚をコピーしました + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + UBDocumentTreeWidget %1 (copy) - %1 (コピー) + %1 (コピー) Copying page %1/%2 - %1/%2 ページ コピー中 + %1/%2 ページ コピー中 %1 pages copied - + ページを%1枚をコピーしました @@ -1260,10 +1334,6 @@ UBExportAdaptor - - Warnings during export was appeared - - Exporting document... ドキュメントのエクスポート中... @@ -1284,28 +1354,32 @@ Export successful. + + Warnings during export was appeared + + UBExportCFF Export to IWB - IWBへエクスポート + IWBへエクスポート Export as IWB File - IWB ファイルとしてエクスポート + IWB ファイルとしてエクスポート Exporting document... - ドキュメントのエクスポート中... + ドキュメントのエクスポート中... Export successful. - エクスポートに成功 + エクスポートに成功 Export failed. - エクスポートに失敗 + エクスポートに失敗 @@ -1335,6 +1409,33 @@ + + UBExportDocumentSetAdaptor + + Exporting document... + ドキュメントのエクスポート中... + + + Failed to export... + + + + Export as UBX File + + + + Export successful. + + + + Export failed. + + + + Export to OpenBoard UBX Format + + + UBExportFullPDF @@ -1492,6 +1593,10 @@ Shapes 形状 + + Trash + ゴミ箱 + Favorites @@ -1500,21 +1605,17 @@ Web search - - Trash - ゴミ箱 - UBFeaturesNewFolderDialog - - Accept - - Cancel キャンセル + + Accept + + Enter a new folder name @@ -1623,23 +1724,23 @@ UBImportCFF Common File Format ( - 共通ファイルフォーマット ( + 共通ファイルフォーマット ( Importing file %1... - ファイル%1のインポート中... + ファイル%1のインポート中... Import of file %1 failed. - ファイル%1のインポート失敗。 + ファイル%1のインポート失敗。 Import successful. - インポートに成功。 + インポートに成功。 Import failed. - インポート失敗。 + インポート失敗。 @@ -1661,6 +1762,13 @@ + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + + UBImportImage @@ -1769,27 +1877,27 @@ Do you want to ignore these errors for this host? UBOpenSankoreImporterWidget - Open-Sankore Documents Detected - + Cancel + キャンセル - Show this panel next time + Open-Sankore Documents Detected - You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. + Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - Cancel - キャンセル + Show this panel next time + - Proceed + You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. - Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. + Proceed @@ -1804,11 +1912,7 @@ Do you want to ignore these errors for this host? ドキュメント・リポジトリ・ロス - has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - - - - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1822,10 +1926,6 @@ Do you want to ignore these errors for this host? Russian ロシア語 - - German - - French フランス語 @@ -1834,6 +1934,10 @@ Do you want to ignore these errors for this host? Swiss French スイスのフランス語 + + German + + UBPodcastController @@ -1913,34 +2017,34 @@ Do you want to ignore these errors for this host? UBProxyLoginDlg Proxy Login - プロキシログイン + プロキシログイン Username: - ユーザー名: + ユーザー名: Password: - パスワード: + パスワード: UBPublicationDlg Publish document on the web - ドキュメントをウェブに公開 + ドキュメントをウェブに公開 Title: - タイトル: + タイトル: Description: - 説明: + 説明: Publish - 公開 + 公開 @@ -2401,22 +2505,22 @@ Please reboot the application to access the updated documents. YouTube Password YouTubeパスワード + + OpenBoard + OpenBoard + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Lucida Grande'; font-size:10pt;">By clicking 'Upload,' you certify that you own all rights to the content or that you are authorized by the owner to make the content publicly available on YouTube, and that it otherwise complies with the YouTube Terms of Service located at </span><a href="http://www.youtube.com/t/terms"><span style=" font-family:'Lucida Grande'; font-size:10pt; text-decoration: underline; color:#0000ff;">http://www.youtube.com/t/terms</span></a></p></body></html> - + Restore credentials on reboot - - OpenBoard - OpenBoard - brushProperties @@ -2484,12 +2588,51 @@ p, li { white-space: pre-wrap; } 説明 + + documentPublishingDialog + + Dialog + ダイアログ + + + Title + タイトル + + + E-mail + Eメール + + + Author + 作成者 + + + Description + 説明 + + documents OpenBoard Documents + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2565,10 +2708,6 @@ p, li { white-space: pre-wrap; } Pen ペン - - Marker - - About 情報 @@ -2626,43 +2765,47 @@ p, li { white-space: pre-wrap; } パスワード: - Credits - + On Dark Background + 暗い背景で - Open-Sankoré Importer - + Opacity + 不透明性 - Check if Open-Sankoré data could be imported at launch - + On Light Background + 明るい背景で - Use system keyboard (recommended) + Swap first and second view displays Built-in virtual keyboard button size: + + Use system keyboard (recommended) + + Grid - On Dark Background - 暗い背景で + Marker + マーカー - Opacity - 不透明性 + Credits + - On Light Background - 明るい背景で + Open-Sankoré Importer + - Swap first and second view displays + Check if Open-Sankoré data could be imported at launch diff --git a/resources/i18n/OpenBoard_ko.ts b/resources/i18n/OpenBoard_ko.ts index c55aedec..91c6d47a 100644 --- a/resources/i18n/OpenBoard_ko.ts +++ b/resources/i18n/OpenBoard_ko.ts @@ -792,19 +792,19 @@ 배경 제거 - Open Tutorial + Ruled Light Background - Open the tutorial web page + Ruled Dark Background - Ruled Light Background + Open Tutorial - Ruled Dark Background + Open the tutorial web page @@ -854,11 +854,11 @@ QObject Element ID = - 요소 ID = + 요소 ID = Content is not supported in destination format. - 대상 형식으로 지원되지 않는 콘텐츠입니다. + 대상 형식으로 지원되지 않는 콘텐츠입니다. Remove Page @@ -1069,43 +1069,43 @@ Remove Page - 페이지 제거 + 페이지 제거 Remove Document - 문서 제거 + 문서 제거 Are you sure you want to remove the document '%1'? - 정말로 '%1' 문서를 제거하시겠습니까? + 정말로 '%1' 문서를 제거하시겠습니까? Empty Trash - 휴지통 비우기 + 휴지통 비우기 Are you sure you want to empty trash? - 정말로 휴지통을 비우시겠습니까? + 정말로 휴지통을 비우시겠습니까? Emptying trash - 휴지통 비우는 중 + 휴지통 비우는 중 Emptied trash - 휴지통 비우기 완료 + 휴지통 비우기 완료 Remove Folder - 폴더 제거 + 폴더 제거 Are you sure you want to remove the folder '%1' and all its content? - 정말로 '%1' 폴더와 해당 내용을 모두 제거하시겠습니까? + 정말로 '%1' 폴더와 해당 내용을 모두 제거하시겠습니까? No document selected! - 선택된 문서가 없습니다! + 선택된 문서가 없습니다! Open Supported File @@ -1153,7 +1153,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + 선택한 문서 '%1'에서 %n페이지를 제거하시겠습니까? @@ -1165,16 +1165,27 @@ Untitled Documents 무제 문서 + + duplicated %1 page + duplicated %1 pages + + + + - The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + Remove Item + + + + Are you sure you want to remove the selected item(s) ? - Are you sure you want to remove all selected documents? + The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? - Remove multiple documents + Title page @@ -1228,19 +1239,87 @@ %0 페이지 + + UBDocumentPublisher + + Export failed. + 내보내기 실패. + + + + UBDocumentReplaceDialog + + Accept + 적용 + + + Cancel + 취소 + + + Replace + + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + + + UBDocumentTreeModel + + Trash + 휴지통 + + + %1 pages copied + + + %1 페이지 복사됨 + + + + + + My documents + + + + + UBDocumentTreeView + + %1 pages copied + + + %1 페이지 복사됨 + + + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + UBDocumentTreeWidget %1 (copy) - %1 (사본) + %1 (사본) Copying page %1/%2 - %1/%2 페이지 복사 중 + %1/%2 페이지 복사 중 %1 pages copied - + %1 페이지 복사됨 @@ -1283,6 +1362,10 @@ Exporting document... 문서를 내보내는 중... + + Export successful. + 내보내기 완료. + Export failed @@ -1295,32 +1378,28 @@ Export failed: location not writable - - Export successful. - 내보내기 완료. - UBExportCFF Export to IWB - IWB로 내보내기 + IWB로 내보내기 Export as IWB File - IWB 파일로 내보내기 + IWB 파일로 내보내기 Exporting document... - 문서를 내보내는 중... + 문서를 내보내는 중... Export successful. - 내보내기 완료. + 내보내기 완료. Export failed. - 내보내기 실패. + 내보내기 실패. @@ -1350,6 +1429,33 @@ + + UBExportDocumentSetAdaptor + + Exporting document... + 문서를 내보내는 중... + + + Export successful. + 내보내기 완료. + + + Export failed. + 내보내기 실패. + + + Failed to export... + + + + Export as UBX File + + + + Export to OpenBoard UBX Format + + + UBExportFullPDF @@ -1638,23 +1744,23 @@ UBImportCFF Common File Format ( - 일반 파일 형식 ( + 일반 파일 형식 ( Importing file %1... - %1 파일 가져오는 중... + %1 파일 가져오는 중... Import of file %1 failed. - %1 파일 가져오기 실패. + %1 파일 가져오기 실패. Import successful. - 가져오기 완료. + 가져오기 완료. Import failed. - 가져오기 실패. + 가져오기 실패. @@ -1676,6 +1782,13 @@ + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + + UBImportImage @@ -1783,27 +1896,27 @@ Do you want to ignore these errors for this host? UBOpenSankoreImporterWidget - Open-Sankore Documents Detected - + Cancel + 취소 - Show this panel next time + Open-Sankore Documents Detected - You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. + Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - Cancel - 취소 + Show this panel next time + - Proceed + You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. - Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. + Proceed @@ -1818,11 +1931,7 @@ Do you want to ignore these errors for this host? 문서 저장소 손실 - has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - - - - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1927,34 +2036,34 @@ Do you want to ignore these errors for this host? UBProxyLoginDlg Proxy Login - 프록시 로그인 + 프록시 로그인 Username: - 사용자명: + 사용자명: Password: - 암호: + 암호: UBPublicationDlg Publish document on the web - 웹에 문서 게시 + 웹에 문서 게시 Title: - 제목: + 제목: Description: - 설명: + 설명: Publish - 게시 + 게시 @@ -2502,12 +2611,51 @@ p, li { white-space: pre-wrap; } 설명 + + documentPublishingDialog + + Dialog + 대화 + + + Title + 제목 + + + E-mail + 이메일 + + + Author + 저자 + + + Description + 설명 + + documents OpenBoard Documents + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2648,39 +2796,39 @@ p, li { white-space: pre-wrap; } Credits - Open-Sankoré Importer - + On Dark Background + 어두운 배경 - Check if Open-Sankoré data could be imported at launch - + Opacity + 불투명도 - Use system keyboard (recommended) - + On Light Background + 밝은 배경 - Built-in virtual keyboard button size: + Swap first and second view displays - Grid + Built-in virtual keyboard button size: - On Dark Background - 어두운 배경 + Use system keyboard (recommended) + - Opacity - 불투명도 + Grid + - On Light Background - 밝은 배경 + Open-Sankoré Importer + - Swap first and second view displays + Check if Open-Sankoré data could be imported at launch diff --git a/resources/i18n/OpenBoard_mg.ts b/resources/i18n/OpenBoard_mg.ts index c851135d..17f87633 100644 --- a/resources/i18n/OpenBoard_mg.ts +++ b/resources/i18n/OpenBoard_mg.ts @@ -792,19 +792,19 @@ Esorina ny ao ambadika - Open Tutorial + Ruled Light Background - Open the tutorial web page + Ruled Dark Background - Ruled Light Background + Open Tutorial - Ruled Dark Background + Open the tutorial web page @@ -854,11 +854,11 @@ QObject Element ID = - Isa famantaranaan'ilay zavatra = + Isa famantaranaan'ilay zavatra = Content is not supported in destination format. - Tsy zakan'ny andrefy tanjona ilay mpiatiny. + Tsy zakan'ny andrefy tanjona ilay mpiatiny. Remove Page @@ -1069,43 +1069,43 @@ Remove Page - Fafao ny pejy + Fafao ny pejy Remove Document - Fafao ny rakitra + Fafao ny rakitra Are you sure you want to remove the document '%1'? - Tena te hamafa an'ilay rakitra '%1' ve ianao ? + Tena te hamafa an'ilay rakitra '%1' ve ianao ? Empty Trash - Daba foana + Daba foana Are you sure you want to empty trash? - Tena te hanafoana an'ilay daba ve ianao ? + Tena te hanafoana an'ilay daba ve ianao ? Emptying trash - Manafoana daba + Manafoana daba Emptied trash - Daba voafoana + Daba voafoana Remove Folder - Mamafa fitoeran-drakitra + Mamafa fitoeran-drakitra Are you sure you want to remove the folder '%1' and all its content? - Tena te hamafa an'ilay fitoeran-drakitra '%1' ve ianao sy ny mpiatiny rehetra ? + Tena te hamafa an'ilay fitoeran-drakitra '%1' ve ianao sy ny mpiatiny rehetra ? No document selected! - Tsisy fitoeran-drakitra voafidy! + Tsisy fitoeran-drakitra voafidy! Open Supported File @@ -1153,7 +1153,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + Tena te hamafa pejy %n avy amin'ilay rakitra '%1' voafidy ve ianao ? @@ -1166,16 +1166,28 @@ Untitled Documents Rakitra tsy misy lohateny + + duplicated %1 page + duplicated %1 pages + + + + + - The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + Remove Item + + + + Are you sure you want to remove the selected item(s) ? - Are you sure you want to remove all selected documents? + The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? - Remove multiple documents + Title page @@ -1229,19 +1241,83 @@ Pejy %0 + + UBDocumentPublisher + + Export failed. + Fandefasana tsy nety. + + + + UBDocumentReplaceDialog + + Accept + Ekena + + + Cancel + Ajanony + + + Replace + + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + + + UBDocumentTreeModel + + Trash + Daba + + + %1 pages copied + + %1 pejy voadika + + + + + My documents + + + + + UBDocumentTreeView + + %1 pages copied + + %1 pejy voadika + + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + UBDocumentTreeWidget %1 (copy) - %1 (fandikana) + %1 (fandikana) Copying page %1/%2 - Mandika pejy %1/%2 + Mandika pejy %1/%2 %1 pages copied - + %1 pejy voadika @@ -1278,6 +1354,10 @@ Warnings during export was appeared Nisy fitandremana niseho tamin'ny fandefasana ny rakitra + + Export successful. + Fandefasana nety. + Exporting document... @@ -1294,32 +1374,28 @@ Export failed: location not writable - - Export successful. - Fandefasana nety. - UBExportCFF Export to IWB - Alefa ho IWB + Alefa ho IWB Export as IWB File - Alefa ho rakitra IWB + Alefa ho rakitra IWB Exporting document... - Mandefa ny rakitra ... + Mandefa ny rakitra ... Export successful. - Fandefasana nety. + Fandefasana nety. Export failed. - Fandefasana tsy nety. + Fandefasana tsy nety. @@ -1349,6 +1425,33 @@ + + UBExportDocumentSetAdaptor + + Export successful. + Fandefasana nety. + + + Export failed. + Fandefasana tsy nety. + + + Failed to export... + + + + Export as UBX File + + + + Exporting document... + + + + Export to OpenBoard UBX Format + + + UBExportFullPDF @@ -1637,23 +1740,23 @@ UBImportCFF Common File Format ( - Andrefin'ny rakitra mahazatra ( + Andrefin'ny rakitra mahazatra ( Importing file %1... - Manafatra rakitra %1 ... + Manafatra rakitra %1 ... Import of file %1 failed. - Fanafarana ny rakitra %1 tsy nety. + Fanafarana ny rakitra %1 tsy nety. Import successful. - Fanafarana nety. + Fanafarana nety. Import failed. - Fanafarana tsy nety. + Fanafarana tsy nety. @@ -1675,6 +1778,13 @@ + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + + UBImportImage @@ -1782,27 +1892,27 @@ Tena tsy te hiraharaha an'ireo tsy mety ho an'ilay milina ve ianao? UBOpenSankoreImporterWidget - Open-Sankore Documents Detected - + Cancel + Ajanony - Show this panel next time + Open-Sankore Documents Detected - You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. + Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - Cancel - Ajanony + Show this panel next time + - Proceed + You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. - Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. + Proceed @@ -1817,11 +1927,7 @@ Tena tsy te hiraharaha an'ireo tsy mety ho an'ilay milina ve ianao?Haverezana ny fitehirizana ny rakitra - has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - - - - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1926,34 +2032,34 @@ Tena tsy te hiraharaha an'ireo tsy mety ho an'ilay milina ve ianao?UBProxyLoginDlg Proxy Login - Fidirana Proxy + Fidirana Proxy Username: - Anaran'ny mpampiasa: + Anaran'ny mpampiasa: Password: - Teny fanalahidy: + Teny fanalahidy: UBPublicationDlg Publish document on the web - Apetraka amin'ny tranon-kala ny rakitra + Apetraka amin'ny tranon-kala ny rakitra Title: - Lohateny: + Lohateny: Description: - Fanazavana: + Fanazavana: Publish - Alefa + Alefa @@ -2426,14 +2532,14 @@ p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Lucida Grande'; font-size:10pt;">Rehefa tsindrinao ny "Alefa" dia manamarina ianao fa manana ny alalana rehetra ami'ny mpiatiny na nomen'ny mpamorona alalana ianao andefa an'ilay rakitra amin'ny YouTube.</span><a href="http://www.youtube.com/t/terms"><span style=" font-family:'Lucida Grande'; font-size:10pt; text-decoration: underline; color:#0000ff;">http://www.youtube.com/t/terms</span></a></p></body></html> - - Restore credentials on reboot - - OpenBoard OpenBoard + + Restore credentials on reboot + + brushProperties @@ -2501,12 +2607,51 @@ p, li { white-space: pre-wrap; } Fanazavana + + documentPublishingDialog + + Dialog + Fifakalozan-kevitra + + + Title + Lohateny + + + E-mail + Mailaka + + + Author + Mpamorona + + + Description + Fanazavana + + documents OpenBoard Documents + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2647,39 +2792,39 @@ p, li { white-space: pre-wrap; } Voaka - Open-Sankoré Importer - + On Dark Background + Amin'ny ambadika maizina - Check if Open-Sankoré data could be imported at launch - + Opacity + Hateviny - Use system keyboard (recommended) - + On Light Background + Amin'ny ambadika mazava - Built-in virtual keyboard button size: + Swap first and second view displays - Grid + Built-in virtual keyboard button size: - On Dark Background - Amin'ny ambadika maizina + Use system keyboard (recommended) + - Opacity - Hateviny + Grid + - On Light Background - Amin'ny ambadika mazava + Open-Sankoré Importer + - Swap first and second view displays + Check if Open-Sankoré data could be imported at launch diff --git a/resources/i18n/OpenBoard_nb.ts b/resources/i18n/OpenBoard_nb.ts index 3966638b..5abc72cd 100644 --- a/resources/i18n/OpenBoard_nb.ts +++ b/resources/i18n/OpenBoard_nb.ts @@ -792,19 +792,19 @@ Fjern bakgrunn - Open Tutorial + Ruled Light Background - Open the tutorial web page + Ruled Dark Background - Ruled Light Background + Open Tutorial - Ruled Dark Background + Open the tutorial web page @@ -854,11 +854,11 @@ QObject Element ID = - Element-ID = + Element-ID = Content is not supported in destination format. - Innhold er ikke støttet i mottaksformat. + Innhold er ikke støttet i mottaksformat. Remove Page @@ -1070,43 +1070,43 @@ Remove Page - Fjern side + Fjern side Remove Document - Fjern dokument + Fjern dokument Are you sure you want to remove the document '%1'? - Er du sikker på at du vil fjerne dokumentet "%1"? + Er du sikker på at du vil fjerne dokumentet "%1"? Empty Trash - Tøm søppel + Tøm søppel Are you sure you want to empty trash? - Er du sikker på at du vil tømme søppelet? + Er du sikker på at du vil tømme søppelet? Emptying trash - Tømmer søppel + Tømmer søppel Emptied trash - Søppel tømt + Søppel tømt Remove Folder - Fjern mappe + Fjern mappe Are you sure you want to remove the folder '%1' and all its content? - Er du sikker på at du vil fjerne mappen "%1" med alt innhold? + Er du sikker på at du vil fjerne mappen "%1" med alt innhold? No document selected! - Intet dokument valgt! + Intet dokument valgt! Open Supported File @@ -1154,7 +1154,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + Er du sikker på at du vil fjerne %n siden(e) fra det valgte dokumentet '%1'? @@ -1167,16 +1167,28 @@ Untitled Documents Dokumenter uten tittel + + duplicated %1 page + duplicated %1 pages + + + + + - The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + Remove Item + + + + Are you sure you want to remove the selected item(s) ? - Are you sure you want to remove all selected documents? + The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? - Remove multiple documents + Title page @@ -1230,19 +1242,76 @@ Side %0 + + UBDocumentReplaceDialog + + Accept + Godta + + + Cancel + Avbryt + + + Replace + + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + + + UBDocumentTreeModel + + Trash + Søppel + + + %1 pages copied + + %1 sider kopiert + + + + + My documents + + + + + UBDocumentTreeView + + %1 pages copied + + %1 sider kopiert + + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + UBDocumentTreeWidget %1 (copy) - %1 (kopier) + %1 (kopier) Copying page %1/%2 - Kopierer side %1/%2 + Kopierer side %1/%2 %1 pages copied - + %1 sider kopiert @@ -1283,6 +1352,10 @@ Exporting document... Eksporterer dokument ... + + Export successful. + Eksport gjennomført. + Export failed @@ -1295,32 +1368,28 @@ Export failed: location not writable - - Export successful. - Eksport gjennomført. - UBExportCFF Export to IWB - Eksporter til IWB + Eksporter til IWB Export as IWB File - Eksporter som IWB-fil + Eksporter som IWB-fil Exporting document... - Eksporterer dokument ... + Eksporterer dokument ... Export successful. - Eksport gjennomført. + Eksport gjennomført. Export failed. - Eksport mislyktes. + Eksport mislyktes. @@ -1350,6 +1419,33 @@ + + UBExportDocumentSetAdaptor + + Exporting document... + Eksporterer dokument ... + + + Export successful. + Eksport gjennomført. + + + Failed to export... + + + + Export as UBX File + + + + Export failed. + + + + Export to OpenBoard UBX Format + + + UBExportFullPDF @@ -1638,23 +1734,23 @@ UBImportCFF Common File Format ( - Vanlig filformat ( + Vanlig filformat ( Importing file %1... - Importerer fil %1... + Importerer fil %1... Import of file %1 failed. - Importering av fil %1 mislyktes. + Importering av fil %1 mislyktes. Import successful. - Importering gjennomført. + Importering gjennomført. Import failed. - Importering mislyktes. + Importering mislyktes. @@ -1676,6 +1772,13 @@ + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + + UBImportImage @@ -1778,27 +1881,27 @@ Do you want to ignore these errors for this host? UBOpenSankoreImporterWidget - Open-Sankore Documents Detected - + Cancel + Avbryt - Show this panel next time + Open-Sankore Documents Detected - You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. + Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - Cancel - Avbryt + Show this panel next time + - Proceed + You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. - Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. + Proceed @@ -1813,11 +1916,7 @@ Do you want to ignore these errors for this host? Tap av dokumentdatabase - has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - - - - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1922,34 +2021,34 @@ Do you want to ignore these errors for this host? UBProxyLoginDlg Proxy Login - Innlogging proxy + Innlogging proxy Username: - Brukernavn: + Brukernavn: Password: - Passord: + Passord: UBPublicationDlg Publish document on the web - Publiser dokument på webben + Publiser dokument på webben Title: - Tittel: + Tittel: Description: - Beskrivelse: + Beskrivelse: Publish - Publiser + Publiser @@ -2332,10 +2431,6 @@ Please reboot the application to access the updated documents. WBToolbarSearch - - Search - - No Recent Searches Ingen nylige søk @@ -2348,6 +2443,10 @@ Please reboot the application to access the updated documents. Clear Recent Searches Slett nylige søk + + Search + Søk + WBWebPage @@ -2496,12 +2595,51 @@ p, li { white-space: pre-wrap; } Beskrivelse + + documentPublishingDialog + + Dialog + Dialog + + + Title + Tittel + + + E-mail + E-post + + + Author + Forfatter + + + Description + Beskrivelse + + documents OpenBoard Documents + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2644,39 +2782,39 @@ p, li { white-space: pre-wrap; } Takk til - Open-Sankoré Importer - + On Dark Background + Med mørk bakgrunn - Check if Open-Sankoré data could be imported at launch - + Opacity + Ugjennomsiktig - Use system keyboard (recommended) - + On Light Background + Med lys bakgrunn - Built-in virtual keyboard button size: + Swap first and second view displays - Grid + Built-in virtual keyboard button size: - On Dark Background - Med mørk bakgrunn + Use system keyboard (recommended) + - Opacity - Ugjennomsiktig + Grid + - On Light Background - Med lys bakgrunn + Open-Sankoré Importer + - Swap first and second view displays + Check if Open-Sankoré data could be imported at launch diff --git a/resources/i18n/OpenBoard_nl.ts b/resources/i18n/OpenBoard_nl.ts index 2a2bbb9e..499fe8ae 100644 --- a/resources/i18n/OpenBoard_nl.ts +++ b/resources/i18n/OpenBoard_nl.ts @@ -792,19 +792,19 @@ Achtyergrond verwijderen - Open Tutorial + Ruled Light Background - Open the tutorial web page + Ruled Dark Background - Ruled Light Background + Open Tutorial - Ruled Dark Background + Open the tutorial web page @@ -856,6 +856,14 @@ Remove Page Pagina verwijderen + + Element ID = + + + + Content is not supported in destination format. + + Are you sure you want to remove 1 page from the selected document '%0'? @@ -929,31 +937,31 @@ Alle ondersteunden (%1) - Page %1 deleted + Group - Add file operation failed: file copying error + Ungroup - Group + Saving document... - Ungroup + Document has just been saved... - Saving document... + Deleting page %1 - Document has just been saved... + Page %1 deleted - Deleting page %1 + Add file operation failed: file copying error @@ -1057,43 +1065,43 @@ Remove Page - Pagina verwijderen + Pagina verwijderen Remove Document - Document verwijderen + Document verwijderen Are you sure you want to remove the document '%1'? - Weet u zeker dat u document "%1" wilt verwijderen? + Weet u zeker dat u document "%1" wilt verwijderen? Empty Trash - Prullenbak legen + Prullenbak legen Are you sure you want to empty trash? - Weet u zeker dat u de prullenbak wilt legen? + Weet u zeker dat u de prullenbak wilt legen? Emptying trash - Prullenbak wordt geleegd + Prullenbak wordt geleegd Emptied trash - Prullenbak is leeg + Prullenbak is leeg Remove Folder - Map verwijderen + Map verwijderen Are you sure you want to remove the folder '%1' and all its content? - Weet u zeker dat u de map "%1" met inhoud wilt verwijderen? + Weet u zeker dat u de map "%1" met inhoud wilt verwijderen? No document selected! - Geen document geselecteerd! + Geen document geselecteerd! Open Supported File @@ -1141,29 +1149,41 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + Ben je zeker dat je %n pagina van geselecteerde document '%1' wilt verwijderen? Ben je zeker dat je %n pagina(s) van geselecteerde document '%1' wilt verwijderen? - Folder does not contain any image files + Untitled Documents + Onbenoemde Documenten + + + duplicated %1 page + duplicated %1 pages + + + + + + + Remove Item - Untitled Documents - Onbenoemde Documenten + Are you sure you want to remove the selected item(s) ? + - The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + Folder does not contain any image files - Are you sure you want to remove all selected documents? + The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? - Remove multiple documents + Title page @@ -1193,22 +1213,22 @@ File %1 saved Bestand %1 opgeslagen - - Inserting page %1 of %2 - - Import successful. Import gelukt. - Import of file %1 successful. + Inserting page %1 of %2 Importing file %1 + + Import of file %1 successful. + + UBDocumentNavigator @@ -1217,19 +1237,83 @@ Pagina %0 + + UBDocumentPublisher + + Export failed. + Export mislukt. + + + + UBDocumentReplaceDialog + + Cancel + Annuleren + + + Accept + + + + Replace + + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + + + UBDocumentTreeModel + + Trash + Prullenbak + + + %1 pages copied + + %1 pagina gekopieerd + %1 pagina's gekopieerd + + + + My documents + + + + + UBDocumentTreeView + + %1 pages copied + + %1 pagina gekopieerd + %1 pagina's gekopieerd + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + UBDocumentTreeWidget %1 (copy) - %1 (kopie) + %1 (kopie) Copying page %1/%2 - Kopie van pagina %1/%2 + Kopie van pagina %1/%2 %1 pages copied - + %1 pagina gekopieerd %1 pagina's gekopieerd @@ -1262,14 +1346,14 @@ UBExportAdaptor - - Warnings during export was appeared - - Exporting document... Document wordt geëxporteerd... + + Export successful. + Export gelukt. + Export failed @@ -1283,31 +1367,31 @@ - Export successful. - Export gelukt. + Warnings during export was appeared + UBExportCFF Export to IWB - Exporteer naar IWB + Exporteer naar IWB Export as IWB File - Exporteer als IWB bestand + Exporteer als IWB bestand Exporting document... - Document wordt geëxporteerd... + Document wordt geëxporteerd... Export successful. - Export gelukt. + Export gelukt. Export failed. - Export mislukt. + Export mislukt. @@ -1337,6 +1421,33 @@ + + UBExportDocumentSetAdaptor + + Exporting document... + Document wordt geëxporteerd... + + + Export successful. + Export gelukt. + + + Export failed. + Export mislukt. + + + Failed to export... + + + + Export as UBX File + + + + Export to OpenBoard UBX Format + + + UBExportFullPDF @@ -1494,6 +1605,10 @@ Shapes Vormen + + Trash + Prullenbak + Favorites @@ -1502,21 +1617,17 @@ Web search - - Trash - Prullenbak - UBFeaturesNewFolderDialog - - Accept - - Cancel Annuleren + + Accept + + Enter a new folder name @@ -1625,23 +1736,23 @@ UBImportCFF Common File Format ( - Standaard bestandformaat ( + Standaard bestandformaat ( Importing file %1... - Importering van bestand %1... + Importering van bestand %1... Import of file %1 failed. - Importering van bestand %1 is mislukt. + Importering van bestand %1 is mislukt. Import successful. - Import gelukt. + Import gelukt. Import failed. - Import mislukt. + Import mislukt. @@ -1663,6 +1774,13 @@ + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + + UBImportImage @@ -1764,27 +1882,27 @@ Do you want to ignore these errors for this host? UBOpenSankoreImporterWidget - Open-Sankore Documents Detected - + Cancel + Annuleren - Show this panel next time + Open-Sankore Documents Detected - You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. + Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - Cancel - Annuleren + Show this panel next time + - Proceed + You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. - Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. + Proceed @@ -1799,11 +1917,7 @@ Do you want to ignore these errors for this host? Documentopslag verloren - has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - - - - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1908,34 +2022,34 @@ Do you want to ignore these errors for this host? UBProxyLoginDlg Proxy Login - Proxy Login + Proxy Login Username: - Gebruikersnaam: + Gebruikersnaam: Password: - Wachtwoord: + Wachtwoord: UBPublicationDlg Publish document on the web - Document op internet publiceren + Document op internet publiceren Title: - Titel: + Titel: Description: - Beschrijving: + Beschrijving: Publish - Publiceren + Publiceren @@ -2068,7 +2182,7 @@ Please reboot the application to access the updated documents. Remind me later - + @@ -2482,12 +2596,51 @@ p, li { white-space: pre-wrap; } Beschrijving + + documentPublishingDialog + + Dialog + Dialoog + + + Title + Titel + + + E-mail + E-mail + + + Author + Auteur + + + Description + Beschrijving + + documents OpenBoard Documents + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2628,39 +2781,39 @@ p, li { white-space: pre-wrap; } Credits - Open-Sankoré Importer - + On Dark Background + Op een Donkere Achtergrond - Check if Open-Sankoré data could be imported at launch - + Opacity + lichtondoorlatendheid - Use system keyboard (recommended) - + On Light Background + Op een Lichte Achtergrond - Built-in virtual keyboard button size: + Swap first and second view displays - Grid + Built-in virtual keyboard button size: - On Dark Background - Op een Donkere Achtergrond + Use system keyboard (recommended) + - Opacity - lichtondoorlatendheid + Grid + - On Light Background - Op een Lichte Achtergrond + Open-Sankoré Importer + - Swap first and second view displays + Check if Open-Sankoré data could be imported at launch diff --git a/resources/i18n/OpenBoard_pl.ts b/resources/i18n/OpenBoard_pl.ts index 9f28f0e1..642218e0 100644 --- a/resources/i18n/OpenBoard_pl.ts +++ b/resources/i18n/OpenBoard_pl.ts @@ -796,19 +796,19 @@ Usuń tło - Open Tutorial + Ruled Light Background - Open the tutorial web page + Ruled Dark Background - Ruled Light Background + Open Tutorial - Ruled Dark Background + Open the tutorial web page @@ -858,11 +858,11 @@ QObject Element ID = - ID elementu = + ID elementu = Content is not supported in destination format. - Zawartość nie jest obsługiwana w formacie docelowym. + Zawartość nie jest obsługiwana w formacie docelowym. Remove Page @@ -1073,43 +1073,43 @@ Remove Page - Usuń stronę + Usuń stronę Remove Document - Usuń dokument + Usuń dokument Are you sure you want to remove the document '%1'? - Czy na pewno chcesz usunąć dokument „%1”? + Czy na pewno chcesz usunąć dokument „%1”? Empty Trash - Opróżnij kosz + Opróżnij kosz Are you sure you want to empty trash? - Czy na pewno chcesz opróżnić kosz? + Czy na pewno chcesz opróżnić kosz? Emptying trash - Opróżnianie kosza + Opróżnianie kosza Emptied trash - Opróżniono kosz + Opróżniono kosz Remove Folder - Usuń folder + Usuń folder Are you sure you want to remove the folder '%1' and all its content? - Czy na pewno chcesz usunąć folder „%1” wraz z zawartością? + Czy na pewno chcesz usunąć folder „%1” wraz z zawartością? No document selected! - Nie wybrano żadnego dokumentu! + Nie wybrano żadnego dokumentu! Open Supported File @@ -1157,7 +1157,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + Czy na pewno chcesz usunąć %n stronę z wybranego dokumentu „%1”? Czy na pewno chcesz usunąć %n strony z wybranego dokumentu „%1”? Czy na pewno chcesz usunąć %n stron z wybranego dokumentu „%1”? @@ -1171,16 +1171,29 @@ Untitled Documents Dokumenty niezatytułowane + + duplicated %1 page + duplicated %1 pages + + + + + + - The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + Remove Item + + + + Are you sure you want to remove the selected item(s) ? - Are you sure you want to remove all selected documents? + The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? - Remove multiple documents + Title page @@ -1234,20 +1247,86 @@ Strona %0 + + UBDocumentPublisher + + Export failed. + Eksportowanie zakończone niepowodzeniem. + + + + UBDocumentReplaceDialog + + Accept + Akceptuj + + + Cancel + Anuluj + + + Replace + + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + + + UBDocumentTreeModel + + Trash + Kosz + + + %1 pages copied + + Skopiowano %1 stronę + Skopiowano %1 strony + Skopiowano %1 stron + + + + My documents + + + + + UBDocumentTreeView + + %1 pages copied + + Skopiowano %1 stronę + Skopiowano %1 strony + Skopiowano %1 stron + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + UBDocumentTreeWidget %1 (copy) - %1 (kopia) + %1 (kopia) Copying page %1/%2 - Kopiowanie strony %1/%2 + Kopiowanie strony %1/%2 %1 pages copied The first translation is the singular form - + Skopiowano %1 stronę Skopiowano %1 strony Skopiowano %1 stron @@ -1289,6 +1368,10 @@ Exporting document... Eksportowanie dokumentu... + + Export successful. + Eksportowanie zakończone powodzeniem. + Export failed @@ -1301,32 +1384,28 @@ Export failed: location not writable - - Export successful. - Eksportowanie zakończone powodzeniem. - UBExportCFF Export to IWB - Eksportowanie do IWB + Eksportowanie do IWB Export as IWB File - Eksportuj jako plik IWB + Eksportuj jako plik IWB Exporting document... - Eksportowanie dokumentu... + Eksportowanie dokumentu... Export successful. - Eksportowanie zakończone powodzeniem. + Eksportowanie zakończone powodzeniem. Export failed. - Eksportowanie zakończone niepowodzeniem. + Eksportowanie zakończone niepowodzeniem. @@ -1356,6 +1435,33 @@ + + UBExportDocumentSetAdaptor + + Exporting document... + Eksportowanie dokumentu... + + + Export successful. + Eksportowanie zakończone powodzeniem. + + + Export failed. + Eksportowanie zakończone niepowodzeniem. + + + Failed to export... + + + + Export as UBX File + + + + Export to OpenBoard UBX Format + + + UBExportFullPDF @@ -1644,23 +1750,23 @@ UBImportCFF Common File Format ( - Wspólny format plików ( + Wspólny format plików ( Importing file %1... - Importowanie pliku %1... + Importowanie pliku %1... Import of file %1 failed. - Importowanie pliku %1 zakończone niepowodzeniem. + Importowanie pliku %1 zakończone niepowodzeniem. Import successful. - Importowanie zakończone powodzeniem. + Importowanie zakończone powodzeniem. Import failed. - Importowanie zakończone niepowodzeniem. + Importowanie zakończone niepowodzeniem. @@ -1682,6 +1788,13 @@ + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + + UBImportImage @@ -1789,27 +1902,27 @@ Czy chcesz ignorować te błędy dla tego hosta? UBOpenSankoreImporterWidget - Open-Sankore Documents Detected - + Cancel + Anuluj - Show this panel next time + Open-Sankore Documents Detected - You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. + Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - Cancel - Anuluj + Show this panel next time + - Proceed + You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. - Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. + Proceed @@ -1824,11 +1937,7 @@ Czy chcesz ignorować te błędy dla tego hosta? Utrata repozytorium dokumentów - has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - - - - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1933,34 +2042,34 @@ Czy chcesz ignorować te błędy dla tego hosta? UBProxyLoginDlg Proxy Login - Login serwera proxy + Login serwera proxy Username: - Nazwa użytkownika: + Nazwa użytkownika: Password: - Hasło: + Hasło: UBPublicationDlg Publish document on the web - Publikuj dokument w sieci Web + Publikuj dokument w sieci Web Title: - Tytuł: + Tytuł: Description: - Opis: + Opis: Publish - Publikuj + Publikuj @@ -2512,12 +2621,51 @@ p, li { white-space: pre-wrap; } Opis + + documentPublishingDialog + + Dialog + Dialog + + + Title + Tytuł + + + E-mail + E-mail + + + Author + Autor + + + Description + Opis + + documents OpenBoard Documents + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2658,39 +2806,39 @@ p, li { white-space: pre-wrap; } Podziękowania - Open-Sankoré Importer - + On Dark Background + Na ciemnym tle - Check if Open-Sankoré data could be imported at launch - + Opacity + Nieprzezroczystość - Use system keyboard (recommended) - + On Light Background + Na jasnym tle - Built-in virtual keyboard button size: + Swap first and second view displays - Grid + Built-in virtual keyboard button size: - On Dark Background - Na ciemnym tle + Use system keyboard (recommended) + - Opacity - Nieprzezroczystość + Grid + - On Light Background - Na jasnym tle + Open-Sankoré Importer + - Swap first and second view displays + Check if Open-Sankoré data could be imported at launch diff --git a/resources/i18n/OpenBoard_pt.ts b/resources/i18n/OpenBoard_pt.ts index e53f8688..bd86da5e 100644 --- a/resources/i18n/OpenBoard_pt.ts +++ b/resources/i18n/OpenBoard_pt.ts @@ -856,11 +856,11 @@ QObject Element ID = - ID do Elemento + ID do Elemento Content is not supported in destination format. - O conteúdo não é suportado no formato de destino. + O conteúdo não é suportado no formato de destino. Remove Page @@ -1071,43 +1071,43 @@ Remove Page - Remover Página + Remover Página Remove Document - Remover Documento + Remover Documento Are you sure you want to remove the document '%1'? - Tem a certeza que quer remover o documento '%1'? + Tem a certeza que quer remover o documento '%1'? Empty Trash - Vazar Lixo + Vazar Lixo Are you sure you want to empty trash? - Tem a certeza que quer vazar a pasta Lixo? + Tem a certeza que quer vazar a pasta Lixo? Emptying trash - A vazar Lixo + A vazar Lixo Emptied trash - Pasta Lixo limpa + Pasta Lixo limpa Remove Folder - Apagar Pasta + Apagar Pasta Are you sure you want to remove the folder '%1' and all its content? - Tem a certeza que quer apagar a pasta '%1' e todo o seu conteúdo? + Tem a certeza que quer apagar a pasta '%1' e todo o seu conteúdo? No document selected! - Não há documentos selecionados! + Não há documentos selecionados! Open Supported File @@ -1155,7 +1155,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + Tem certeza que quer apagar %n página do documento selecionado '%1'? Tem certeza que quer apagar %n páginas do documento selecionado '%1'? @@ -1174,11 +1174,31 @@ Are you sure you want to remove all selected documents? - Você tem certeza que deseja remover todos os documentos selecionados? + Você tem certeza que deseja remover todos os documentos selecionados? Remove multiple documents - Remover múltiplos documentos + Remover múltiplos documentos + + + duplicated %1 page + duplicated %1 pages + + + + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + + Title page + @@ -1231,19 +1251,76 @@ Página %0 + + UBDocumentReplaceDialog + + Accept + Aceitar + + + Cancel + Cancelar + + + Replace + + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + + + UBDocumentTreeModel + + Trash + Lixo + + + %1 pages copied + + %1 página copiada + %1 páginas copiadas + + + + My documents + + + + + UBDocumentTreeView + + %1 pages copied + + %1 página copiada + %1 páginas copiadas + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + UBDocumentTreeWidget %1 (copy) - %1 (cópia) + %1 (cópia) Copying page %1/%2 - A copiar página %1/%2 + A copiar página %1/%2 %1 pages copied - + %1 página copiada %1 páginas copiadas @@ -1288,10 +1365,6 @@ Export failed Exportação falhou - - Unable to export to the selected location. You do not have the permissions necessary to save the file. - - Export failed: location not writable Exportação falhou: localização não gravável @@ -1300,28 +1373,32 @@ Export successful. Exportação bem sucedida. + + Unable to export to the selected location. You do not have the permissions necessary to save the file. + + UBExportCFF Export to IWB - Exportar para IWB + Exportar para IWB Export as IWB File - Exportar como ficheiro IWB + Exportar como ficheiro IWB Exporting document... - A exportar documento... + A exportar documento... Export successful. - Exportação bem sucedida. + Exportação bem sucedida. Export failed. - Falha na Exportação. + Falha na Exportação. @@ -1363,6 +1440,33 @@ Impossível exportar para a localização selcionada. Você não possui as permissões necessárias para gravar o arquivo. + + UBExportDocumentSetAdaptor + + Exporting document... + A exportar documento... + + + Export successful. + Exportação bem sucedida. + + + Failed to export... + + + + Export as UBX File + + + + Export failed. + + + + Export to OpenBoard UBX Format + + + UBExportFullPDF @@ -1664,23 +1768,23 @@ UBImportCFF Common File Format ( - Formato de Ficheiro Frequente ( + Formato de Ficheiro Frequente ( Importing file %1... - A importar ficheiro %1... + A importar ficheiro %1... Import of file %1 failed. - Falha a importar ficheiro %1. + Falha a importar ficheiro %1. Import successful. - Importação bem sucedida. + Importação bem sucedida. Import failed. - Falha na importação. + Falha na importação. @@ -1702,6 +1806,13 @@ OpenBoard (*.ubz) + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + + UBImportImage @@ -1845,10 +1956,10 @@ Quer ignorar estes erros, deste servidor? has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - Acesso ao repositório '%1' foi perdido. Infelizmente a aplicação deverá desligar para avitar a corrupção de dados. As últimas alterações também serão perdidas. + Acesso ao repositório '%1' foi perdido. Infelizmente a aplicação deverá desligar para avitar a corrupção de dados. As últimas alterações também serão perdidas. - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1953,34 +2064,34 @@ Quer ignorar estes erros, deste servidor? UBProxyLoginDlg Proxy Login - Iniciar sessão no Proxy + Iniciar sessão no Proxy Username: - Nome de Utilizador: + Nome de Utilizador: Password: - Senha: + Senha: UBPublicationDlg Publish document on the web - Publicar documentos na web + Publicar documentos na web Title: - Título: + Título: Description: - Descrição: + Descrição: Publish - Publicar + Publicar @@ -2523,12 +2634,51 @@ p, li { white-space: pre-wrap; } Descrição + + documentPublishingDialog + + Dialog + Caixa de Diálogo + + + Title + Título + + + E-mail + E-mail + + + Author + Autor + + + Description + Descrição + + documents OpenBoard Documents Documentos OpenBoard + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2686,10 +2836,6 @@ p, li { white-space: pre-wrap; } Built-in virtual keyboard button size: Tamanho da tecla do teclado virtual embarcado: - - Grid - - On Dark Background Num fundo preto @@ -2706,6 +2852,10 @@ p, li { white-space: pre-wrap; } Swap first and second view displays + + Grid + + trapFlashDialog diff --git a/resources/i18n/OpenBoard_pt_BR.ts b/resources/i18n/OpenBoard_pt_BR.ts index cd9995ac..b5240dd5 100644 --- a/resources/i18n/OpenBoard_pt_BR.ts +++ b/resources/i18n/OpenBoard_pt_BR.ts @@ -5,838 +5,838 @@ BlackoutWidget Click to Return to Application - Clicar para voltar para a Aplicação + Clicar para voltar para a Aplicação DownloadDialog Downloads - Transferências + Transferências Clean Up - Limpar + Limpar 0 Items - 0 Itens + 0 Itens DownloadItem Form - Formulário + Formulário Filename - Nome do arquivo + Nome do arquivo Try Again - Tentar novamente + Tentar novamente Stop - Parar + Parar Open - Abrir + Abrir IntranetPodcastPublishingDialog Publish Podcast to YouTube - Publicar Podcast no YouTube + Publicar Podcast no YouTube Title - Título + Título Description - Descrição + Descrição Author - Autor + Autor MainWindow Board - Quadro + Quadro Web - Web + Web Documents - Documentos + Documentos Stylus - Paleta + Paleta Ctrl+T - Ctrl+T + Ctrl+T Backgrounds - Fundo + Fundo Change Background - Mudar Fundo + Mudar Fundo Undo - Desfazer + Desfazer Ctrl+Z - Ctrl+Z + Ctrl+Z Redo - Refazer + Refazer Ctrl+Y - Ctrl+Y + Ctrl+Y Previous - Anterior + Anterior Previous Page - Página anterior + Página anterior PgUp - Subir na página + Subir na página Next - Próximo + Próximo Next Page - Próxima Página + Próxima Página PgDown - Descer na página + Descer na página Manage Documents - Gerir Documentos + Gerir Documentos Ctrl+D - Ctrl+D + Ctrl+D Web Browsing - Navegar na Web + Navegar na Web Ctrl+W - Ctrl+W + Ctrl+W Line - Linha + Linha Small Line - Traço Fino + Traço Fino Medium Line - Traço Médio + Traço Médio Large Line - Traço Grosso + Traço Grosso Quit - Sair + Sair Eraser - Borracha + Borracha Smalle Eraser - Borracha Pequena + Borracha Pequena Medium Eraser - Borracha Média + Borracha Média Large Eraser - Borracha Grande + Borracha Grande Color - Cores + Cores Back - Recuar + Recuar Left - Esquerda + Esquerda Forward - Avançar + Avançar Right - Direita + Direita Reload - Recarregar + Recarregar Reload Current Page - Recarregar a página atual + Recarregar a página atual Home - Página Inicial + Página Inicial Load Home Page - Carregar a Página Inicial + Carregar a Página Inicial Bookmarks - Favoritos + Favoritos Show Bookmarks - Mostrar os Favoritos + Mostrar os Favoritos Bookmark - Favorito + Favorito Add Bookmark - Adicionar aos Favoritos + Adicionar aos Favoritos Display Board - Mostrar o Quadro + Mostrar o Quadro Ctrl+B - Ctrl+B + Ctrl+B Erase - Apagar + Apagar Erase Content - Apagar Conteúdo + Apagar Conteúdo Preferences - Preferências + Preferências Display Preferences - Mostrar Preferências + Mostrar Preferências Library - Biblioteca + Biblioteca Show Library - Mostrar Biblioteca + Mostrar Biblioteca Ctrl+L - Ctrl+L + Ctrl+L Show Desktop - Ver desktop + Ver desktop Show Computer Desktop - Mostrar o ambiente de trabalho do Computador + Mostrar o ambiente de trabalho do Computador Ctrl+Shift+H - Ctrl+Shift+H + Ctrl+Shift+H Bigger - Ampliar + Ampliar Zoom In - Aproximar + Aproximar Ctrl++ - Ctrl++ + Ctrl++ Smaller - Reduzir + Reduzir Zoom Out - Afastar + Afastar Ctrl+- - Ctrl+- + Ctrl+- New Folder - Nova Pasta + Nova Pasta Create a New Folder - Criar uma Nova Pasta + Criar uma Nova Pasta New Document - Novo Documento + Novo Documento Create a New Document - Criar um Novo Documento + Criar um Novo Documento Import - Importar + Importar Import a Document - Importar um Documento + Importar um Documento Export - Exportar + Exportar Export a Document - Exportar um Documento + Exportar um Documento Open in Board - Abrir no Quadro + Abrir no Quadro Open Page in Board - Abrir Página no Quadro + Abrir Página no Quadro Ctrl+O - Ctrl+O + Ctrl+O Duplicate - Duplicar + Duplicar Duplicate Selected Content - Duplicar o Conteúdo Selecionado + Duplicar o Conteúdo Selecionado Delete - Apagar + Apagar Delete Selected Content - Apagar o Conteúdo Selecionado + Apagar o Conteúdo Selecionado Del - Del + Del Add to Working Document - Adicionar ao Documento de Trabalho + Adicionar ao Documento de Trabalho Add Selected Content to Open Document - Adicionar o Conteúdo Selecionado ao Documento Aberto + Adicionar o Conteúdo Selecionado ao Documento Aberto Add - Adicionar + Adicionar Add Content to Document - Adicionar Conteúdo ao Documento + Adicionar Conteúdo ao Documento Rename - Mudar o Nome + Mudar o Nome Rename Content - Mudar o Nome do Conteúdo + Mudar o Nome do Conteúdo Tools - Ferramentas + Ferramentas Display Tools - Mostrar Ferramentas + Mostrar Ferramentas Multi Screen - Múltiplos Monitores + Múltiplos Monitores Wide Size (16/9) - Formato Panorâmico (16/9) + Formato Panorâmico (16/9) Use Document Wide Size (16/9) - Usar documento no Formato Panorâmico (16/9) + Usar documento no Formato Panorâmico (16/9) Regular Size (4/3) - Formato Tradicional (4/3) + Formato Tradicional (4/3) Use Document Regular Size (4/3) - Usar documento no Formato Tradicional (4/3) + Usar documento no Formato Tradicional (4/3) Custom Size - Tamanho Personalizado + Tamanho Personalizado Use Custom Document Size - Usar documento no Tamanho Personalizado + Usar documento no Tamanho Personalizado Stop Loading - Parar de Carregar + Parar de Carregar Stop Loading Web Page - Parar de Carregar a Página Web + Parar de Carregar a Página Web Cut - Cortar + Cortar Copy - Copiar + Copiar Paste - Colar + Colar Sleep - Modo "Espera" + Modo "Espera" Put Presentation to Sleep - Colocar a Apresentaçãao em modo "Espera" + Colocar a Apresentaçãao em modo "Espera" Virtual Keyboard - Teclado Virtual + Teclado Virtual Display Virtual Keyboard - Mostrar o Teclado Virtual + Mostrar o Teclado Virtual Plain Light Background - Fundo Branco e Liso + Fundo Branco e Liso Light - Claro + Claro Grid Light Background - Fundo Branco e Quadriculado + Fundo Branco e Quadriculado Plain Dark Background - Fundo Preto e Liso + Fundo Preto e Liso Dark - Escuro + Escuro Grid Dark Background - Fundo Preto e Quadriculado + Fundo Preto e Quadriculado Podcast - Podcast + Podcast Record Presentation to Video - Gravar a Apresentação em Vídeo + Gravar a Apresentação em Vídeo Record - Gravar + Gravar Start Screen Recording - Iniciar a Gravação do Vídeo + Iniciar a Gravação do Vídeo Erase Items - Apagar Itens + Apagar Itens Erase All Items - Apagar Todos os Itens + Apagar Todos os Itens Erase Annotations - Apagar Anotações + Apagar Anotações Erase All Annotations - Apagar Todas as Anotações + Apagar Todas as Anotações Clear Page - Limpar a Página + Limpar a Página Clear All Elements - Limpar Todos os Elementos + Limpar Todos os Elementos Pen - Caneta + Caneta Annotate Document - Escrever + Escrever Ctrl+I - Ctrl+I + Ctrl+I Erase Annotation - Apagar + Apagar Ctrl+E - Ctrl+E + Ctrl+E Marker - Marcador + Marcador Highlight - Marcador + Marcador Ctrl+M - Ctrl+M + Ctrl+M Selector - Seletor + Seletor Select And Modify Objects - Selecionar e Modificar Objetos + Selecionar e Modificar Objetos Ctrl+F - Ctrl+F + Ctrl+F Hand - Mão + Mão Scroll Page - Desloca-se na página + Desloca-se na página Laser Pointer - Apontador Laser + Apontador Laser Virtual Laser Pointer - Apontador Laser Virtual + Apontador Laser Virtual Ctrl+G - Ctrl+G + Ctrl+G Draw Lines - Desenhar Linhas + Desenhar Linhas Ctrl+J - Ctrl+J + Ctrl+J Text - Texto + Texto Write Text - Escrever Texto + Escrever Texto Ctrl+K - Ctrl+K + Ctrl+K Capture - Capturar + Capturar Capture Part of the Screen - Capturar uma Parte da Tela + Capturar uma Parte da Tela Add To Current Page - Adicionar à Página Atual + Adicionar à Página Atual Add Item To Current Page - Adicionar Item à Página Atual + Adicionar Item à Página Atual Add To New Page - Adicionar a uma Página Nova + Adicionar a uma Página Nova Add Item To New Page - Adicionar Item a uma Página Nova + Adicionar Item a uma Página Nova Add To Library - Adicionar à Biblioteca + Adicionar à Biblioteca Add Item To Library - Adicionar Item à Biblioteca + Adicionar Item à Biblioteca Pages - Páginas + Páginas Create a New Page - Criar uma Nova Página + Criar uma Nova Página New Page - Nova Página + Nova Página Duplicate Page - Duplicar Página + Duplicar Página Duplicate the Current Page - Duplicar a Página Atual + Duplicar a Página Atual Import Page - Importar Página + Importar Página Import an External Page - Importar uma Página Externa + Importar uma Página Externa Pause - Pausa + Pausa Pause Podcast Recording - Pausar a Gravação do Podcast + Pausar a Gravação do Podcast Podcast Config - Configuração do Podcast + Configuração do Podcast Configure Podcast Recording - Configuração da Gravação de Podcast + Configuração da Gravação de Podcast Flash Trap - Captura de Flash + Captura de Flash Trap Flash Content - Captura de Conteúdo Flash + Captura de Conteúdo Flash Web Trap - Captura de Web + Captura de Web Trap Web Content - Captura de Conteúdo Web + Captura de Conteúdo Web Custom Capture - Captura Personalizada + Captura Personalizada Window Capture - Captura da Janela + Captura da Janela Capture a Window - Capturar uma Janela + Capturar uma Janela Embed Web Content - Conteúdo Web Embutido + Conteúdo Web Embutido Capture Embeddable Web Content - Capturar Conteúdo Web Embutido + Capturar Conteúdo Web Embutido Show on Display - Mostrar no Vídeo + Mostrar no Vídeo Show Main Screen on Display Screen - Mostrar a Tela Principal no Vídeo + Mostrar a Tela Principal no Vídeo Erase all Annotations - Apagar todas as notas + Apagar todas as notas eduMedia - eduMedia + eduMedia Import eduMedia simulation - Importar uma simulação eduMedia + Importar uma simulação eduMedia Check Update - Verificar Atualização + Verificar Atualização Ctrl+H - Ctrl+H + Ctrl+H OpenBoard - OpenBoard + OpenBoard Quit OpenBoard - Sair do OpenBoard + Sair do OpenBoard Hide OpenBoard - Ocultar o OpenBoard + Ocultar o OpenBoard Hide OpenBoard Application - Ocultar a Aplicação OpenBoard + Ocultar a Aplicação OpenBoard Play Começar(?) - Iniciar + Iniciar Interact with items - Interagir com itens + Interagir com itens Erase Background - Apagar o fundo + Apagar o fundo Remove the backgound - Remover o fundo + Remover o fundo Open Tutorial - Abrir Tutorial + Abrir Tutorial Open the tutorial web page - Abrir a página web de tutorial + Abrir a página web de tutorial PasswordDialog Authentication Required - Autenticação Necessária + Autenticação Necessária Username: - Usuário: + Usuário: Password: - Senha: + Senha: ProxyDialog Proxy Authentication - Autenticação do Proxy + Autenticação do Proxy Connect to Proxy - Conetar ao Proxy + Conetar ao Proxy Username: - Nome de Utilizador: + Nome de Utilizador: Password: - Senha: + Senha: Save username and password for future use - Gravar "Nome de Usuário" e "Senha" para futuras utilizações + Gravar "Nome de Usuário" e "Senha" para futuras utilizações @@ -851,368 +851,368 @@ Remove Page - Remover Página + Remover Página Are you sure you want to remove 1 page from the selected document '%0'? - Tem a certeza que quer remover 1 página do documento selecionado '%0'? + Tem a certeza que quer remover 1 página do documento selecionado '%0'? UBApplication Page Size - Tamanho da Página + Tamanho da Página Podcast - Podcast + Podcast UBApplicationController Web - Web + Web Update available - Atualização disponível + Atualização disponível New update available, would you go to the web page ? - Nova atualização disponível. Ir para a página web? + Nova atualização disponível. Ir para a página web? No update available - Nenhuma atualização disponível + Nenhuma atualização disponível Update - Atualizar + Atualizar UBBoardController Downloading content %1 failed - A transferência de conteúdos falhou %1 + A transferência de conteúdos falhou %1 Download finished - Transferência Completa + Transferência Completa Unknown tool type %1 - Tipo de ferramenta desconhecido %1 + Tipo de ferramenta desconhecido %1 Unknown content type %1 - Tipo de conteúdo desconhecido %1 + Tipo de conteúdo desconhecido %1 Add Item - Adicionar Item + Adicionar Item All Supported (%1) - Tudo Suportado (%1) + Tudo Suportado (%1) Delete page %1 from document - Apagar a página %1 do documento + Apagar a página %1 do documento Page %1 deleted - Página %1 apagada + Página %1 apagada Add file operation failed: file copying error - Falha na operação de adição de arquivo: erro na cópia do arquivo + Falha na operação de adição de arquivo: erro na cópia do arquivo Group - Agrupar + Agrupar Ungroup - Desagrupar + Desagrupar Saving document... - Gravando documento... + Gravando documento... Document has just been saved... - Documento acaba de ser gravado... + Documento acaba de ser gravado... UBBoardPaletteManager Error Adding Image to Library - Erro ao Adicionar Imagem à Biblioteca + Erro ao Adicionar Imagem à Biblioteca CapturedImage - Imagem capturada + Imagem capturada UBCachePropertiesWidget Cache Properties - Propriedades da Cache + Propriedades da Cache Color: - Cor: + Cor: Shape: - Forma: + Forma: Size: - Tamanho: + Tamanho: Close - Fechar + Fechar UBDesktopPalette Capture Part of the Screen - Capturar Parte da Tela + Capturar Parte da Tela Capture the Screen - Capturar Tela + Capturar Tela Show the stylus palette - Mostrar Paleta + Mostrar Paleta Show Board on Secondary Screen - Mostrar o Quadro num Vídeo Secundário + Mostrar o Quadro num Vídeo Secundário Show Desktop on Secondary Screen - Mostrar Ambiente de Trabalho num Vídeo Secundário + Mostrar Ambiente de Trabalho num Vídeo Secundário Show OpenBoard - Mostrar OpenBoard + Mostrar OpenBoard UBDocumentController New Folder - Nova Pasta + Nova Pasta Page %1 - Página %1 + Página %1 Add Folder of Images - Adicionar Pasta de Imagens + Adicionar Pasta de Imagens Add Images - Adicionar Imagens + Adicionar Imagens Add Pages from File - Adicionar Páginas de um Arquivo + Adicionar Páginas de um Arquivo Duplicating Document %1 - A Duplicar Documento %1 + A Duplicar Documento %1 Document %1 copied - Documento %1 Copiado + Documento %1 Copiado Remove Page - Remover Página + Remover Página Remove Document - Remover Documento + Remover Documento Are you sure you want to remove the document '%1'? - Tem a certeza que quer remover o documento '%1'? + Tem a certeza que quer remover o documento '%1'? Empty Trash - Vazar Lixo + Vazar Lixo Are you sure you want to empty trash? - Tem a certeza que quer vazar a pasta Lixo? + Tem a certeza que quer vazar a pasta Lixo? Emptying trash - A vazar Lixo + A vazar Lixo Emptied trash - Pasta Lixo limpa + Pasta Lixo limpa Remove Folder - Apagar Pasta + Apagar Pasta Are you sure you want to remove the folder '%1' and all its content? - Tem a certeza que quer apagar a pasta '%1' e todo o seu conteúdo? + Tem a certeza que quer apagar a pasta '%1' e todo o seu conteúdo? No document selected! - Não há documentos selecionados! + Não há documentos selecionados! Open Supported File - Abrir Arquivo Suportado + Abrir Arquivo Suportado Importing file %1... - Importando arquivo %1... + Importando arquivo %1... Failed to import file ... - Falha ao importar arquivo ... + Falha ao importar arquivo ... Import all Images from Folder - Importar todas as Imagens de uma Pasta + Importar todas as Imagens de uma Pasta Delete - Apagar + Apagar Empty - Vazio + Vazio Trash - Lixo + Lixo Open Document - Abrir Documento + Abrir Documento Add all Images to Document - Adicionar todas as imagens ao Documento + Adicionar todas as imagens ao Documento All Images (%1) - Todas as Imagens (%1) + Todas as Imagens (%1) Selection does not contain any image files! - A seleção não contém arquivos de Imagem! + A seleção não contém arquivos de Imagem! Are you sure you want to remove %n page(s) from the selected document '%1'? - + Tem certeza que quer apagar %n página do documento selecionado '%1'? Tem certeza que quer apagar %n páginas do documento selecionado '%1'? Folder does not contain any image files - O diretório não contém imagens + O diretório não contém imagens Untitled Documents - Documentos sem nome + Documentos sem nome The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? - O documento '%1' foi produzido com uma versão mais nova do OpenBoard (%2). Ao abri-lo, você poderá perder alguma informação. Gostaria de continuar? + O documento '%1' foi produzido com uma versão mais nova do OpenBoard (%2). Ao abri-lo, você poderá perder alguma informação. Gostaria de continuar? Are you sure you want to remove all selected documents? - Você tem certeza que deseja remover todos os documentos selecionados? + Você tem certeza que deseja remover todos os documentos selecionados? Remove multiple documents - Remover múltiplos documentos + Remover múltiplos documentos UBDocumentManager images - imagens + imagens videos - vídeos + vídeos objects - objetos + objetos widgets - widgets + widgets All supported files (*.%1) - Todos os arquivos suportados (*.%1) + Todos os arquivos suportados (*.%1) File %1 saved - Arquivo %1 gravado + Arquivo %1 gravado Inserting page %1 of %2 - A inserir página %1 de %2 + A inserir página %1 de %2 Import successful. - Importação bem sucedida. + Importação bem sucedida. Import of file %1 successful. - Importação do arquivo %1 bem sucedida. + Importação do arquivo %1 bem sucedida. Importing file %1 - Importando o arquivo %1 + Importando o arquivo %1 UBDocumentNavigator Page %0 - Página %0 + Página %0 UBDocumentTreeWidget %1 (copy) - %1 (cópia) + %1 (cópia) Copying page %1/%2 - Copiando página %1/%2 + Copiando página %1/%2 %1 pages copied - + %1 página copiada %1 páginas copiadas @@ -1222,18 +1222,18 @@ UBDownloadWidget Downloading files - Baixando arquivos + Baixando arquivos Cancel - Cancelar + Cancelar UBExportAdaptor Warnings during export was appeared - Surgiram alertas durante a exportação + Surgiram alertas durante a exportação @@ -1263,332 +1263,332 @@ UBExportDocument Page - Página + Página Export as UBZ File - Exportar como Arquivo UBZ + Exportar como Arquivo UBZ Exporting document... - A exportar documento... + A exportar documento... Export successful. - Exportação bem sucedida. + Exportação bem sucedida. Exporting %1 %2 of %3 - A exportar %1 %2 de %3 + A exportar %1 %2 de %3 Export to OpenBoard Format - Exportar para o formato OpenBoard + Exportar para o formato OpenBoard Export failed: location not writable - Exportação falhou: localização não gravável + Exportação falhou: localização não gravável Export failed - Exportação falhou + Exportação falhou Unable to export to the selected location. You do not have the permissions necessary to save the file. - Impossível exportar para a localização selcionada. Você não possui as permissões necessárias para gravar o arquivo. + Impossível exportar para a localização selcionada. Você não possui as permissões necessárias para gravar o arquivo. UBExportFullPDF Export as PDF File - Exportar como Arquivo PDF + Exportar como Arquivo PDF Exporting document... - A exportar documento... + A exportar documento... Export successful. - Exportação bem sucedida. + Exportação bem sucedida. Export to PDF - Exportar para PDF + Exportar para PDF Export failed: location not writable - Exportação falhou: localização não gravável + Exportação falhou: localização não gravável Export failed - Exportação falhou + Exportação falhou Unable to export to the selected location. You do not have the permissions necessary to save the file. - Impossível exportar para a localização selecionada. Você não possui as permissões necessárias para gravar o arquivo. + Impossível exportar para a localização selecionada. Você não possui as permissões necessárias para gravar o arquivo. UBExportPDF Export as PDF File - Exportar como Arquivo PDF + Exportar como Arquivo PDF Exporting document... - Exportando documento... + Exportando documento... Export successful. - Exportação bem sucedida. + Exportação bem sucedida. Exporting page %1 of %2 - Exportando página %1 de %2 + Exportando página %1 de %2 Export to PDF - Exportar para PDF + Exportar para PDF UBExportWeb Page - Página + Página Export as Web data - Exportar para formato de Web + Exportar para formato de Web Exporting document... - Exportando documento... + Exportando documento... Export successful. - Exportação bem sucedida. + Exportação bem sucedida. Export failed. - Falha na exportação. + Falha na exportação. Export to Web Browser - Exportar para Explorador Web + Exportar para Explorador Web UBFeatureProperties Add to page - Adicionar à página + Adicionar à página Set as background - Definir como fundo + Definir como fundo Add to library - Adicionar à biblioteca + Adicionar à biblioteca Object informations - Informações do Objecto + Informações do Objecto UBFeaturesActionBar Add to favorites - Adicionar aos favoritos + Adicionar aos favoritos Share - Partilhar + Partilhar Search - Procurar + Procurar Delete - Apagar + Apagar Back to folder - Voltar à pasta + Voltar à pasta Remove from favorites - Remover dos favoritos + Remover dos favoritos Create new folder - Criar uma nova pasta + Criar uma nova pasta Rescan file system "Procurar arquivo de Sistema"(?) - Voltar a procurar arquivo de Sistema + Voltar a procurar arquivo de Sistema UBFeaturesController ImportedImage - Imagem Importada + Imagem Importada Audios - Áudios + Áudios Movies - Vídeos + Vídeos Pictures - Imagens + Imagens Animations - Animações + Animações Interactivities - Atividades Interativas + Atividades Interativas Applications - Aplicações + Aplicações Shapes - Formas + Formas Favorites - Favoritos + Favoritos Web search - Busca na web + Busca na web Trash - Lixo + Lixo UBFeaturesNewFolderDialog Accept - Aceitar + Aceitar Cancel - Cancelar + Cancelar Enter a new folder name - Escrever um novo nome para o diretório + Escrever um novo nome para o diretório UBFeaturesProgressInfo Loading - A carregar + A carregar UBGraphicsGroupContainerItemDelegate Locked - Bloqueado + Bloqueado Visible on Extended Screen - Visível em Vídeo Expandido + Visível em Vídeo Expandido UBGraphicsItemDelegate Locked - Bloqueado + Bloqueado Visible on Extended Screen - Visível em Vídeo Expandido + Visível em Vídeo Expandido Go to Content Source - Ir para a Fonte do Conteúdo + Ir para a Fonte do Conteúdo UBGraphicsMediaItem Media resource couldn't be resolved - Recurso de mídia não pode ser resolvido + Recurso de mídia não pode ser resolvido Unsupported media format - Formato de mídia não suportado + Formato de mídia não suportado Media playback service not found - Serviço de reprodução de mídia não encontrado + Serviço de reprodução de mídia não encontrado Media error: - Erro de mídia: + Erro de mídia: UBGraphicsTextItem <Type Text Here> - <Introduzir o Texto Aqui> + <Introduzir o Texto Aqui> UBGraphicsTextItemDelegate Text Color - Cor do Texto + Cor do Texto Editable - Editável + Editável UBGraphicsW3CWidgetItem Web - Web + Web UBGraphicsWidgetItem Loading ... - Carregando ... + Carregando ... UBGraphicsWidgetItemDelegate Frozen - Congelado + Congelado Transform as Tool - Transformar em Ferramenta + Transformar em Ferramenta @@ -1618,99 +1618,99 @@ UBImportDocument Importing file %1... - Importando arquivo %1... + Importando arquivo %1... Import of file %1 failed. - Falha a importar arquivo %1. + Falha a importar arquivo %1. Import successful. - Importação bem sucedida. + Importação bem sucedida. OpenBoard (*.ubz) - OpenBoard (*.ubz) + OpenBoard (*.ubz) UBImportImage Image Format ( - Formato da Imagem ( + Formato da Imagem ( UBImportPDF Portable Document Format (*.pdf) - Portable Document Format (*.pdf) + Portable Document Format (*.pdf) PDF import failed. - Falha na importação de PDF. + Falha na importação de PDF. Importing page %1 of %2 - Importando página %1 de %2 + Importando página %1 de %2 UBIntranetPodcastPublisher Error while publishing video to intranet (%1) - Erro durante a publicação do vídeo na intranet (%1) + Erro durante a publicação do vídeo na intranet (%1) Publishing to Intranet in progress %1 % - Publicação na Intranet em progresso %1 % + Publicação na Intranet em progresso %1 % UBIntranetPodcastPublishingDialog Publish - Publicar + Publicar UBKeyboardPalette Enter - Enter + Enter UBMainWindow Yes - Sim + Sim No - Não + Não Ok - Ok + Ok UBMessagesDialog Close - Fechar + Fechar UBNetworkAccessManager <qt>Enter username and password for "%1" at %2</qt> - <qt>Introduzir o Nome de Usuário e Senha "%1" em %2</qt> + <qt>Introduzir o Nome de Usuário e Senha "%1" em %2</qt> Failed to log to Proxy - Falha ao entrar no Proxy + Falha ao entrar no Proxy SSL Errors: @@ -1720,7 +1720,7 @@ %2 Do you want to ignore these errors for this host? - Erros SSL: + Erros SSL: %1 @@ -1730,631 +1730,631 @@ Quer ignorar estes erros, deste servidor? Yes - Sim + Sim No - Não + Não UBOpenSankoreImporterWidget Open-Sankore Documents Detected - Documentos do Open-Sankore Detectado + Documentos do Open-Sankore Detectado Show this panel next time - Mostrar este painel da próxima vez + Mostrar este painel da próxima vez You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. - Você sempre poderá acessar o Importador de Documentos OpenBoard através do painel de Preferências na aba Sobre. Aviso, se você já importou seus dados do Open-Sankoré, você poderá perder seus atuais documentos do OpenBoard. + Você sempre poderá acessar o Importador de Documentos OpenBoard através do painel de Preferências na aba Sobre. Aviso, se você já importou seus dados do Open-Sankoré, você poderá perder seus atuais documentos do OpenBoard. Cancel - Cancelar + Cancelar Proceed - Prosseguir + Prosseguir Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - Documentos do Open-Sankoré estão presentes em seu computador. É possível importá-los para o OpenBoard pressionando o botão "Prosseguir" para lançar a aplicação de importação. + Documentos do Open-Sankoré estão presentes em seu computador. É possível importá-los para o OpenBoard pressionando o botão "Prosseguir" para lançar a aplicação de importação. UBPersistenceManager (copy) - (cópia) + (cópia) Document Repository Loss - Repositório de Documentos perdido + Repositório de Documentos perdido has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - Acesso ao repositório '%1' foi perdido. Infelizmente a aplicação deverá desligar para avitar a corrupção de dados. As últimas alterações também serão perdidas. + Acesso ao repositório '%1' foi perdido. Infelizmente a aplicação deverá desligar para avitar a corrupção de dados. As últimas alterações também serão perdidas. UBPlatformUtils English - Inglês + Inglês Russian - Russo + Russo German - Alemão + Alemão French - Francês + Francês Swiss French - Francês (Suiço) + Francês (Suiço) UBPodcastController Failed to start encoder ... - Falha ao iniciar o codificador ... + Falha ao iniciar o codificador ... No Podcast encoder available ... - Nenhum codificador de Podcast disponível ... + Nenhum codificador de Podcast disponível ... Part %1 - Parte %1 + Parte %1 on your desktop ... - no seu ambiente de trabalho ... + no seu ambiente de trabalho ... in folder %1 - na pasta %1 + na pasta %1 Podcast created %1 - Podcast criado %1 + Podcast criado %1 Podcast recording error (%1) - Erro de gravação do Podcast (%1) + Erro de gravação do Podcast (%1) Default Audio Input - Entrada de áudio padrão + Entrada de áudio padrão No Audio Recording - Sem gravação de áudio + Sem gravação de áudio Small - Pequeno + Pequeno Medium - Médio + Médio Full - Completo + Completo Publish to Intranet - Publicar na Intranet + Publicar na Intranet Publish to Youtube - Publicar no Youtube + Publicar no Youtube OpenBoard Cast - OpenBoard Cast + OpenBoard Cast UBPreferencesController version: - versão: + versão: Marker is pressure sensitive - O marcador é sensível à pressão + O marcador é sensível à pressão UBProxyLoginDlg Proxy Login - Iniciar sessão no Proxy + Iniciar sessão no Proxy Username: - Nome de Utilizador: + Nome de Utilizador: Password: - Senha: + Senha: UBPublicationDlg Publish document on the web - Publicar documentos na web + Publicar documentos na web Title: - Título: + Título: Description: - Descrição: + Descrição: Publish - Publicar + Publicar UBSettings My Movies - Os meus filmes + Os meus filmes UBStartupHintsPalette Visible next time - Visível na próxima vez + Visível na próxima vez UBThumbnailAdaptor Generating preview thumbnails ... - A gerar pré-visualização de miniaturas ... + A gerar pré-visualização de miniaturas ... %1 thumbnails generated ... - %1 de miniaturas geradas ... + %1 de miniaturas geradas ... UBToolsManager Mask - Cortina + Cortina Ruler - Régua + Régua Compass - Compasso + Compasso Protractor - Transferidor + Transferidor Triangle - Esquadro + Esquadro Magnifier - Lupa + Lupa Cache - Cache + Cache UBTrapFlashController Whole page - Página completa + Página completa Web - Web + Web UBUpdateDlg Document updater - Atualizador de documento + Atualizador de documento files require an update. - arquivos requerem uma atualização. + arquivos requerem uma atualização. Backup path: - Localização da Cópia de Segurança: + Localização da Cópia de Segurança: Browse - Procurar + Procurar Update - Atualizar + Atualizar Select a backup folder - Selecione uma pasta para a Cópia de Segurança + Selecione uma pasta para a Cópia de Segurança Please wait the import process will start soon... - Aguarde. O processo de importação vai começar em breve... + Aguarde. O processo de importação vai começar em breve... Files update successful! Please reboot the application to access the updated documents. - Atualização de arquivos bem sucedida! + Atualização de arquivos bem sucedida! Por favor, reinicie o aplicativo para ir aos documentos atualizados. An error occured during the update. The files have not been affected. - Ocorreu um erro durante a atualização. Os arquivos não foram afetados. + Ocorreu um erro durante a atualização. Os arquivos não foram afetados. Files update results - Resultados da atualização de arquivos + Resultados da atualização de arquivos Updating file - Atualizando o arquivo + Atualizando o arquivo Remind me later - Lembrar-me depois + Lembrar-me depois UBWebPluginWidget Loading... - Carregando... + Carregando... UBWidgetUniboardAPI %0 called (method=%1, status=%2) - %0 pedido (método=%1, estado=%2) + %0 pedido (método=%1, estado=%2) UBYouTubePublisher YouTube authentication failed. - Erro de autenticação no YouTube. + Erro de autenticação no YouTube. Error while uploading video to YouTube (%1) - Erro no envio do vídeo para o YouTube (%1) + Erro no envio do vídeo para o YouTube (%1) Upload to YouTube in progress %1 % - Envio para o YouTube em curso %1 % + Envio para o YouTube em curso %1 % UBYouTubePublishingDialog Upload - Enviar + Enviar Autos & Vehicles - Automóveis + Automóveis Music - Música + Música Pets & Animals - Animais + Animais Sports - Esportes + Esportes Travel & Events - Viagens e Eventos + Viagens e Eventos Gaming - Jogos + Jogos Comedy - Humor + Humor People & Blogs - Pessoas e Blogues + Pessoas e Blogues News & Politics - Notícias e Política + Notícias e Política Entertainment - Entretenimento + Entretenimento Education - Educação + Educação Howto & Style - Guias e Estilo + Guias e Estilo Nonprofits & Activism - Sem fins lucrativos e Ativismo + Sem fins lucrativos e Ativismo Science & Technology - Ciência e Tecnologia + Ciência e Tecnologia UBZoomPalette %1 x - %1 x + %1 x WBClearButton Clear - Limpar + Limpar WBDownloadItem Save File - Gravar arquivo + Gravar arquivo Download canceled: %1 - Download cancelado: %1 + Download cancelado: %1 Error opening saved file: %1 - Erro a abrir o arquivo gravado: %1 + Erro a abrir o arquivo gravado: %1 Error saving: %1 - Erro ao gravar: %1 + Erro ao gravar: %1 Network Error: %1 - Erro na Ligação: %1 + Erro na Ligação: %1 seconds - Segundos + Segundos minutes - Minutos + Minutos - %4 %5 remaining - - %4 %5 de tempo restante + - %4 %5 de tempo restante %1 of %2 (%3/sec) %4 - %1 de %2 (%3/seg) %4 + %1 de %2 (%3/seg) %4 ? unknown file size Tamanho do arquivo desconhecido - ? + ? %1 of %2 - Stopped - %1 de %2 - Parado + %1 de %2 - Parado bytes - bytes + bytes KB - KB + KB MB - MB + MB WBDownloadManager 1 Download - 1 arquivo baixado + 1 arquivo baixado %1 Downloads always >= 2 Sempre >= 2 - %1 arquivos baixados + %1 arquivos baixados WBHistoryModel Title - Título + Título Address - Endereço + Endereço WBHistoryTreeModel Earlier Today - Hoje + Hoje %1 items - %1 item(s) + %1 item(s) WBSearchLineEdit Search - Pesquisar + Pesquisar WBTabBar New &Tab - Novo &Separador + Novo &Separador Clone Tab - Duplicar Separador + Duplicar Separador &Close Tab - &Fechar Separador + &Fechar Separador Close &Other Tabs - Fechar os &Outros Separadores + Fechar os &Outros Separadores Reload Tab - Atualizar Separador + Atualizar Separador Reload All Tabs - Atualizar todos os Separadores + Atualizar todos os Separadores WBTabWidget Recently Closed Tabs - Separadores recentemente fechados + Separadores recentemente fechados (Untitled) - (Sem Título) + (Sem Título) WBToolbarSearch Search - Pesquisar + Pesquisar No Recent Searches - Sem pesquisas recentes + Sem pesquisas recentes Recent Searches - Pesquisas recentes + Pesquisas recentes Clear Recent Searches - Limpar as pesquisas recentes + Limpar as pesquisas recentes WBWebPage Download - Baixar + Baixar Add to Current Document - Adicionar ao documento atual + Adicionar ao documento atual PDF - PDF + PDF Error loading page: %1 - Erro ao carregar a página: %1 + Erro ao carregar a página: %1 Download PDF Document: would you prefer to download the PDF file or add it to the current OpenBoard document? - Download de Documento PDF: você prefere baixar o arquivo PDF ou adicioná-lo ao atual documento OpenBoard? + Download de Documento PDF: você prefere baixar o arquivo PDF ou adicioná-lo ao atual documento OpenBoard? WBWebView Open in New Tab - Abrir num Novo Separador + Abrir num Novo Separador YouTubePublishingDialog Publish Podcast to YouTube - Publicar Podcast no Youtube + Publicar Podcast no Youtube Title - Título + Título Description - Descrição + Descrição Keywords - Palavras chave + Palavras chave Category - Categoria + Categoria YouTube Username - Nome de utilizador do Youtube + Nome de utilizador do Youtube YouTube Password - Senha do Youtube + Senha do Youtube <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -2362,7 +2362,7 @@ Por favor, reinicie o aplicativo para ir aos documentos atualizados. - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> @@ -2370,115 +2370,115 @@ p, li { white-space: pre-wrap; } Restore credentials on reboot - Reestabelecer credenciais ao reiniciar + Reestabelecer credenciais ao reiniciar OpenBoard - OpenBoard + OpenBoard brushProperties On Light Background - Num fundo branco + Num fundo branco On Dark Background - Num fundo preto + Num fundo preto Opacity - Opacidade + Opacidade Line Width - Largura da linha + Largura da linha Medium - Médio + Médio Strong - Largo + Largo Fine - Fino + Fino Pen is Pressure Sensitive - Caneta sensível à pressão + Caneta sensível à pressão capturePublishingDialog Dialog - Caixa de Diálogo + Caixa de Diálogo Title - Título + Título E-mail - E-mail + E-mail Author - Autor + Autor Description - Descrição + Descrição documents OpenBoard Documents - Documentos OpenBoard + Documentos OpenBoard preferencesDialog Preferences - Preferências + Preferências version : … - versão : ... + versão : ... Default Settings - Configuração por defeito + Configuração por defeito Close - Fechar + Fechar Display - Exibir + Exibir Internet - Internet + Internet Show Page with External Browser - Mostrar a página num Browser externo + Mostrar a página num Browser externo Home Page: - Página de entrada: + Página de entrada: Virtual Keyboard - Teclado virtual + Teclado virtual Keyboard button size: @@ -2486,140 +2486,140 @@ p, li { white-space: pre-wrap; } Toolbar - Barra de ferramentas + Barra de ferramentas Positioned at the Top (recommended for tablets) - Posicionado no topo (recomendado para tablets) + Posicionado no topo (recomendado para tablets) Positioned at the Bottom (recommended for white boards) - Posicionado em baixo (recomendado para quadros brancos) + Posicionado em baixo (recomendado para quadros brancos) Display Text Under Button - Mostrar o texto por debaixo dos botões + Mostrar o texto por debaixo dos botões Stylus Palette - Paleta + Paleta Horizontal - Horizontal + Horizontal Vertical - Vertical + Vertical Pen - Caneta + Caneta Marker - Marcador + Marcador Licences - Licenças + Licenças About - Sobre + Sobre Software Update - Atualização de Software + Atualização de Software Check software update at launch - Verificar atualizações de software no arranque + Verificar atualizações de software no arranque Network - Rede + Rede Multi display - Múltiplos Monitores + Múltiplos Monitores Show internal web page content on secondary screen or projector - Mostrar o conteúdo interno da página web num monitor ou projetor secundário + Mostrar o conteúdo interno da página web num monitor ou projetor secundário Swap control display and view display Trocar entre o monitor de controle e apresentação? - Trocar entre o monitor de controle e visualização + Trocar entre o monitor de controle e visualização Mode - Modo + Modo Mode to start in: "Mode to start in:" - Modo iniciar: + Modo iniciar: Board - Quadro + Quadro Desktop - Área de Trabalho + Área de Trabalho Proxy User: - Proxy User: + Proxy User: Pass: - Senha: + Senha: Credits - Créditos + Créditos Open-Sankoré Importer - Importador Open-Sankoré + Importador Open-Sankoré Check if Open-Sankoré data could be imported at launch - Verifique se os dados do Open-Sankoré poderão ser importados na inicialização + Verifique se os dados do Open-Sankoré poderão ser importados na inicialização Use system keyboard (recommended) - Usar teclado do sistema (recomendado) + Usar teclado do sistema (recomendado) Built-in virtual keyboard button size: - Tamanho da tecla do teclado virtual embarcado: + Tamanho da tecla do teclado virtual embarcado: trapFlashDialog Trap flash - Capturar flash + Capturar flash Select a flash to trap - Selecionar o flash a capturar + Selecionar o flash a capturar about:blank - Acerca:em branco + Acerca:em branco Application name - Nome da Aplicação + Nome da Aplicação Create Application - Criar Aplicação + Criar Aplicação diff --git a/resources/i18n/OpenBoard_ro.ts b/resources/i18n/OpenBoard_ro.ts index 543ba522..461b3300 100644 --- a/resources/i18n/OpenBoard_ro.ts +++ b/resources/i18n/OpenBoard_ro.ts @@ -792,19 +792,19 @@ Eliminare fundal - Open Tutorial + Ruled Light Background - Open the tutorial web page + Ruled Dark Background - Ruled Light Background + Open Tutorial - Ruled Dark Background + Open the tutorial web page @@ -854,11 +854,11 @@ QObject Element ID = - ID element = + ID element = Content is not supported in destination format. - Conținutul nu este suportat în formatul de destinație. + Conținutul nu este suportat în formatul de destinație. Remove Page @@ -1069,43 +1069,43 @@ Remove Page - Eliminare pagină + Eliminare pagină Remove Document - Eliminare document + Eliminare document Are you sure you want to remove the document '%1'? - Sunteţi siguri că doriţi să eliminaţi documentul %1? + Sunteţi siguri că doriţi să eliminaţi documentul %1? Empty Trash - Golire coş de gunoi + Golire coş de gunoi Are you sure you want to empty trash? - Sunteţi siguri că doriţi să goliţi coşul de gunoi? + Sunteţi siguri că doriţi să goliţi coşul de gunoi? Emptying trash - Golire coş de gunoi + Golire coş de gunoi Emptied trash - Coş de gunoi golit + Coş de gunoi golit Remove Folder - Eliminare folder + Eliminare folder Are you sure you want to remove the folder '%1' and all its content? - Sunteţi siguri că doriţi să eliminaţi folderul '%1' şi toate conţinuturile sale? + Sunteţi siguri că doriţi să eliminaţi folderul '%1' şi toate conţinuturile sale? No document selected! - Nu s-a selectat niciun document! + Nu s-a selectat niciun document! Open Supported File @@ -1153,7 +1153,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + Sunteţi sigur că doriţi să eliminaţi %n pagină din documentul selectat '%1'? Sunteţi sigur că doriţi să eliminaţi %n pagini din documentul selectat '%1'? @@ -1166,16 +1166,28 @@ Untitled Documents Documente fără titlu + + duplicated %1 page + duplicated %1 pages + + + + + - The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + Remove Item + + + + Are you sure you want to remove the selected item(s) ? - Are you sure you want to remove all selected documents? + The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? - Remove multiple documents + Title page @@ -1229,19 +1241,83 @@ Pagina %0 + + UBDocumentPublisher + + Export failed. + Exportare nereuşită. + + + + UBDocumentReplaceDialog + + Accept + Acceptare + + + Cancel + Anulare + + + Replace + + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + + + UBDocumentTreeModel + + Trash + Coş de gunoi + + + %1 pages copied + + %1 pagini copiate + + + + + My documents + + + + + UBDocumentTreeView + + %1 pages copied + + %1 pagini copiate + + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + UBDocumentTreeWidget %1 (copy) - %1 (copie) + %1 (copie) Copying page %1/%2 - Copiere pagina %1/%2 + Copiere pagina %1/%2 %1 pages copied - + %1 pagini copiate @@ -1278,6 +1354,10 @@ Warnings during export was appeared Au apărut atenționări în timpul exportului + + Export successful. + Exportare reuşită. + Exporting document... @@ -1294,32 +1374,28 @@ Export failed: location not writable - - Export successful. - Exportare reuşită. - UBExportCFF Export to IWB - Exportare în IWB + Exportare în IWB Export as IWB File - Exportare ca fișier IWB + Exportare ca fișier IWB Exporting document... - Exportare document... + Exportare document... Export successful. - Exportare reuşită. + Exportare reuşită. Export failed. - Exportare nereuşită. + Exportare nereuşită. @@ -1349,6 +1425,33 @@ + + UBExportDocumentSetAdaptor + + Export successful. + Exportare reuşită. + + + Export failed. + Exportare nereuşită. + + + Failed to export... + + + + Export as UBX File + + + + Exporting document... + + + + Export to OpenBoard UBX Format + + + UBExportFullPDF @@ -1637,23 +1740,23 @@ UBImportCFF Common File Format ( - Format de fişier comun ( + Format de fişier comun ( Importing file %1... - Importare fişier %1... + Importare fişier %1... Import of file %1 failed. - Importare fişier %1 nereuşită. + Importare fişier %1 nereuşită. Import successful. - Importare reuşită. + Importare reuşită. Import failed. - Importare nereuşită. + Importare nereuşită. @@ -1675,6 +1778,13 @@ + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + + UBImportImage @@ -1782,27 +1892,27 @@ Doriţi să ignoraţi aceste erori pentru acest host? UBOpenSankoreImporterWidget - Open-Sankore Documents Detected - + Cancel + Anulare - Show this panel next time + Open-Sankore Documents Detected - You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. + Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - Cancel - Anulare + Show this panel next time + - Proceed + You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. - Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. + Proceed @@ -1817,11 +1927,7 @@ Doriţi să ignoraţi aceste erori pentru acest host? Pierdere depozit de documente - has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - - - - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1926,34 +2032,34 @@ Doriţi să ignoraţi aceste erori pentru acest host? UBProxyLoginDlg Proxy Login - Conectare Proxy + Conectare Proxy Username: - Nume de utilizator: + Nume de utilizator: Password: - Parolă: + Parolă: UBPublicationDlg Publish document on the web - Publicare document pe web + Publicare document pe web Title: - Titlu: + Titlu: Description: - Descriere: + Descriere: Publish - Publicare + Publicare @@ -2501,12 +2607,51 @@ p, li { white-space: pre-wrap; } Descriere + + documentPublishingDialog + + Dialog + Dialog + + + Title + Titlu + + + E-mail + E-mail + + + Author + Autor + + + Description + Descriere + + documents OpenBoard Documents + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2647,39 +2792,39 @@ p, li { white-space: pre-wrap; } Credite - Open-Sankoré Importer - + On Dark Background + Pe fundal închis - Check if Open-Sankoré data could be imported at launch - + Opacity + Opacitate - Use system keyboard (recommended) - + On Light Background + Pe fundal deschis - Built-in virtual keyboard button size: + Swap first and second view displays - Grid + Built-in virtual keyboard button size: - On Dark Background - Pe fundal închis + Use system keyboard (recommended) + - Opacity - Opacitate + Grid + - On Light Background - Pe fundal deschis + Open-Sankoré Importer + - Swap first and second view displays + Check if Open-Sankoré data could be imported at launch diff --git a/resources/i18n/OpenBoard_ru.ts b/resources/i18n/OpenBoard_ru.ts index 3e781fb1..d005e048 100644 --- a/resources/i18n/OpenBoard_ru.ts +++ b/resources/i18n/OpenBoard_ru.ts @@ -792,19 +792,19 @@ Удалить фон - Open Tutorial + Ruled Light Background - Open the tutorial web page + Ruled Dark Background - Ruled Light Background + Open Tutorial - Ruled Dark Background + Open the tutorial web page @@ -854,11 +854,11 @@ QObject Element ID = - ID элемента = + ID элемента = Content is not supported in destination format. - Не поддерживается в текущем формате. + Не поддерживается в текущем формате. Remove Page @@ -1069,43 +1069,43 @@ Remove Page - Удалить страницу + Удалить страницу Remove Document - Удалить документ + Удалить документ Are you sure you want to remove the document '%1'? - Вы уверены, что хотите удалить документ '%1'? + Вы уверены, что хотите удалить документ '%1'? Empty Trash - Очистить корзину + Очистить корзину Are you sure you want to empty trash? - Вы уверены, что хотите очистить корзину? + Вы уверены, что хотите очистить корзину? Emptying trash - Очистка корзины + Очистка корзины Emptied trash - Корзина пуста + Корзина пуста Remove Folder - Удалить папку + Удалить папку Are you sure you want to remove the folder '%1' and all its content? - Вы уверены, что хотите удалить папку '%1 и все ее содержимое? + Вы уверены, что хотите удалить папку '%1 и все ее содержимое? No document selected! - Ничего не выбрано! + Ничего не выбрано! Open Supported File @@ -1153,7 +1153,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + Вы уверены, что хотите удалить %n страницу из выбранного документа '%1'? Вы уверены, что хотите удалить %n страниц из выбранного документа '%1'? @@ -1166,16 +1166,28 @@ Untitled Documents Документы без Названия + + duplicated %1 page + duplicated %1 pages + + + + + - The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + Remove Item - Are you sure you want to remove all selected documents? + Are you sure you want to remove the selected item(s) ? - Remove multiple documents + The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + + + + Title page @@ -1229,19 +1241,83 @@ Страница %0 + + UBDocumentPublisher + + Export failed. + Ошибка экспорта. + + + + UBDocumentReplaceDialog + + Accept + Принять + + + Cancel + Отмена + + + Replace + + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + + + UBDocumentTreeModel + + Trash + Корзина + + + %1 pages copied + + %1 страницы скопировано + %1 страниц скопировано + + + + My documents + + + + + UBDocumentTreeView + + %1 pages copied + + %1 страницы скопировано + %1 страниц скопировано + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + UBDocumentTreeWidget %1 (copy) - %1 (копирование) + %1 (копирование) Copying page %1/%2 - Копирование страницы %1/%2 + Копирование страницы %1/%2 %1 pages copied - + %1 страницы скопировано %1 страниц скопировано @@ -1282,6 +1358,10 @@ Exporting document... Экспорт документа... + + Export successful. + Экспорт успешно завершен. + Export failed @@ -1294,32 +1374,28 @@ Export failed: location not writable - - Export successful. - Экспорт успешно завершен. - UBExportCFF Export to IWB - Экспорт в IWB + Экспорт в IWB Export as IWB File - Экспортировать как IWB файл + Экспортировать как IWB файл Exporting document... - Экспорт документа... + Экспорт документа... Export successful. - Экспорт успешно завершен. + Экспорт успешно завершен. Export failed. - Ошибка экспорта. + Ошибка экспорта. @@ -1349,6 +1425,33 @@ + + UBExportDocumentSetAdaptor + + Exporting document... + Экспорт документа... + + + Export successful. + Экспорт успешно завершен. + + + Export failed. + Ошибка экспорта. + + + Failed to export... + + + + Export as UBX File + + + + Export to OpenBoard UBX Format + + + UBExportFullPDF @@ -1637,23 +1740,23 @@ UBImportCFF Common File Format ( - Стандартный формат файла ( + Стандартный формат файла ( Importing file %1... - Импорт файла %1... + Импорт файла %1... Import of file %1 failed. - Ошибка импорта файла %1. + Ошибка импорта файла %1. Import successful. - Импорт успешно завершен. + Импорт успешно завершен. Import failed. - Ошибка импорта. + Ошибка импорта. @@ -1675,6 +1778,13 @@ + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + + UBImportImage @@ -1782,27 +1892,27 @@ Do you want to ignore these errors for this host? UBOpenSankoreImporterWidget - Open-Sankore Documents Detected - + Cancel + Отмена - Show this panel next time + Open-Sankore Documents Detected - You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. + Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - Cancel - Отмена + Show this panel next time + - Proceed + You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. - Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. + Proceed @@ -1817,11 +1927,7 @@ Do you want to ignore these errors for this host? Потеря соединения с репозиторием документов - has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - - - - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1926,34 +2032,34 @@ Do you want to ignore these errors for this host? UBProxyLoginDlg Proxy Login - Вход на прокси-сервер + Вход на прокси-сервер Username: - Имя пользователя: + Имя пользователя: Password: - Пароль: + Пароль: UBPublicationDlg Publish document on the web - Опубликовать документ в вебе + Опубликовать документ в вебе Title: - Название: + Название: Description: - Описание: + Описание: Publish - Опубликовать + Опубликовать @@ -2426,14 +2532,14 @@ p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Lucida Grande'; font-size:10pt;">Нажав "Загрузить", вы подтверждаете, что обладаете всеми правами на данное содержимое, или что вы были уполномочены владельцем на публикацию данного содержимого на YouTube, или что иным образом удовлетворяете требованиям Условий предоставления услуг YouTube, размещенных по адресу </span><a href="http://www.youtube.com/t/terms"><span style=" font-family:'Lucida Grande'; font-size:10pt; text-decoration: underline; color:#0000ff;">http://www.youtube.com/t/terms</span></a></p></body></html> - - Restore credentials on reboot - - OpenBoard OpenBoard + + Restore credentials on reboot + + brushProperties @@ -2501,12 +2607,51 @@ p, li { white-space: pre-wrap; } Описание + + documentPublishingDialog + + Dialog + Диалог + + + Title + Название + + + E-mail + Электронная почта + + + Author + Автор + + + Description + Описание + + documents OpenBoard Documents + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2647,39 +2792,39 @@ p, li { white-space: pre-wrap; } Содержание - Open-Sankoré Importer - + On Dark Background + На темном фоне - Check if Open-Sankoré data could be imported at launch - + Opacity + Непрозрачность - Use system keyboard (recommended) - + On Light Background + На светлом фоне - Built-in virtual keyboard button size: + Swap first and second view displays - Grid + Built-in virtual keyboard button size: - On Dark Background - На темном фоне + Use system keyboard (recommended) + - Opacity - Непрозрачность + Grid + - On Light Background - На светлом фоне + Open-Sankoré Importer + - Swap first and second view displays + Check if Open-Sankoré data could be imported at launch diff --git a/resources/i18n/OpenBoard_sk.ts b/resources/i18n/OpenBoard_sk.ts index 5379431d..254d7331 100644 --- a/resources/i18n/OpenBoard_sk.ts +++ b/resources/i18n/OpenBoard_sk.ts @@ -305,38 +305,14 @@ Ctrl+E Ctrl+E - - Ctrl+F - - - - Ctrl+G - - - - Ctrl+H - - Ctrl+I Ctrl+I - - Ctrl+J - - - - Ctrl+K - - Ctrl+L Ctrl+L - - Ctrl+M - - Ctrl+O Ctrl+O @@ -811,6 +787,30 @@ Ruled Dark Background + + Ctrl+M + + + + Ctrl+F + + + + Ctrl+G + + + + Ctrl+J + + + + Ctrl+K + + + + Ctrl+H + + Reset grid size @@ -858,11 +858,11 @@ QObject Element ID = - ID prvku = + ID prvku = Content is not supported in destination format. - Obsah nie je podporovaný v cieľovom formáte. + Obsah nie je podporovaný v cieľovom formáte. Remove Page @@ -1053,11 +1053,11 @@ Are you sure you want to empty trash? - Určite chcete vyprázdniť kôš? + Určite chcete vyprázdniť kôš? Are you sure you want to remove the folder '%1' and all its content? - Určite chcete odstrániť priečinok "%1" a celý jeho obsah? + Určite chcete odstrániť priečinok "%1" a celý jeho obsah? Open Supported File @@ -1065,7 +1065,7 @@ Remove Document - Odstrániť dokument + Odstrániť dokument All Images (%1) @@ -1117,27 +1117,27 @@ Are you sure you want to remove the document '%1'? - Určite chcete odstrániť dokument "%1"? + Určite chcete odstrániť dokument "%1"? Emptied trash - Kôš bol vyprázdnený + Kôš bol vyprázdnený Empty Trash - Vyprázdniť kôš + Vyprázdniť kôš Remove Folder - Odstrániť priečinok + Odstrániť priečinok Remove Page - Odstrániť stránku + Odstrániť stránku No document selected! - Nevybrali ste žiaden dokument! + Nevybrali ste žiaden dokument! Import all Images from Folder @@ -1145,11 +1145,11 @@ Emptying trash - Vyprázdňuje sa kôš + Vyprázdňuje sa kôš Are you sure you want to remove %n page(s) from the selected document '%1'? - + Určite chcete odstrániť %n stránku z vybraného dokumentu %1? Určite chcete odstrániť %n stránky z vybraného dokumentu %1? Určite chcete odstrániť %n stránok z vybraného dokumentu %1? @@ -1177,11 +1177,32 @@ Are you sure you want to remove all selected documents? - Určite chcete odstrániť všetky vybrané dokumenty? + Určite chcete odstrániť všetky vybrané dokumenty? Remove multiple documents - Odstránenie viacerých dokumentov + Odstránenie viacerých dokumentov + + + duplicated %1 page + duplicated %1 pages + + + + + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + + Title page + @@ -1234,11 +1255,70 @@ Stránka %0 + + UBDocumentReplaceDialog + + Accept + Prijať + + + Cancel + Zrušiť + + + Replace + + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + + + UBDocumentTreeModel + + Trash + Kôš + + + %1 pages copied + + %1 skopírovaná stránka + %1 skopírované stránky + %1 skopírovaných stránok + + + + My documents + + + + + UBDocumentTreeView + + %1 pages copied + + %1 skopírovaná stránka + %1 skopírované stránky + %1 skopírovaných stránok + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + UBDocumentTreeWidget %1 pages copied - + %1 skopírovaná stránka %1 skopírované stránky %1 skopírovaných stránok @@ -1246,11 +1326,11 @@ %1 (copy) - %1 (kópia) + %1 (kópia) Copying page %1/%2 - Kopíruje sa stránka %1/%2 + Kopíruje sa stránka %1/%2 @@ -1309,23 +1389,23 @@ UBExportCFF Export to IWB - Exportovať do IWB + Exportovať do IWB Export as IWB File - Exportovať ako súbor IWB + Exportovať ako súbor IWB Exporting document... - Exportuje sa dokument... + Exportuje sa dokument... Export successful. - Export bol úspešný. + Export bol úspešný. Export failed. - Export sa nepodaril. + Export sa nepodaril. @@ -1367,6 +1447,33 @@ Do vybraného umiestnenia sa nedá exportovať. Na uloženie súboru nemáte dostatočné oprávnenia. + + UBExportDocumentSetAdaptor + + Exporting document... + Exportuje sa dokument... + + + Export successful. + Export bol úspešný. + + + Failed to export... + + + + Export as UBX File + + + + Export failed. + + + + Export to OpenBoard UBX Format + + + UBExportFullPDF @@ -1667,23 +1774,23 @@ UBImportCFF Importing file %1... - Nahráva sa súbor %1... + Nahráva sa súbor %1... Import failed. - Nahrávanie zlyhalo. + Nahrávanie zlyhalo. Import of file %1 failed. - Nepodarilo sa nahrať súbor %1. + Nepodarilo sa nahrať súbor %1. Common File Format ( - Bežný formát súboru ( + Bežný formát súboru ( Import successful. - Nahrávanie bolo úspešné. + Nahrávanie bolo úspešné. @@ -1705,6 +1812,13 @@ OpenBoard (*.ubz) + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + + UBImportImage @@ -1848,10 +1962,10 @@ Chcete ignorovať tieto chyby na tomto serveri? has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - stratil prístup k úložisku dokumentov '%1'. Aplikácia sa musí zatvoriť, aby sa predišlo poškodeniu dát. Možno nebudú uložené ani najnovšie zmeny. + stratil prístup k úložisku dokumentov '%1'. Aplikácia sa musí zatvoriť, aby sa predišlo poškodeniu dát. Možno nebudú uložené ani najnovšie zmeny. - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1958,34 +2072,34 @@ Chcete ignorovať tieto chyby na tomto serveri? UBProxyLoginDlg Password: - Heslo: + Heslo: Proxy Login - Prihlásenie na proxy + Prihlásenie na proxy Username: - Používateľské meno: + Používateľské meno: UBPublicationDlg Description: - Popis: + Popis: Title: - Názov: + Názov: Publish - Publikovať + Publikovať Publish document on the web - Publikovať dokument na internet + Publikovať dokument na internet @@ -2534,12 +2648,51 @@ p, li { white-space: pre-wrap; } Popis + + documentPublishingDialog + + Dialog + Dialóg + + + Title + Názov + + + E-mail + E-mail + + + Author + Autor + + + Description + Popis + + documents OpenBoard Documents Dokumenty OpenBoardu + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2695,10 +2848,6 @@ p, li { white-space: pre-wrap; } Built-in virtual keyboard button size: Veľkosť tlačidla zabudovanej virtuálnej klávesnice: - - Grid - - On Dark Background Na tmavom pozadí @@ -2715,6 +2864,10 @@ p, li { white-space: pre-wrap; } Swap first and second view displays + + Grid + + trapFlashDialog diff --git a/resources/i18n/OpenBoard_sv.ts b/resources/i18n/OpenBoard_sv.ts index 05398a8b..a6d7d338 100644 --- a/resources/i18n/OpenBoard_sv.ts +++ b/resources/i18n/OpenBoard_sv.ts @@ -792,19 +792,19 @@ Ta bort bakgrund - Open Tutorial + Ruled Light Background - Open the tutorial web page + Ruled Dark Background - Ruled Light Background + Open Tutorial - Ruled Dark Background + Open the tutorial web page @@ -854,11 +854,11 @@ QObject Element ID = - Element ID= + Element ID= Content is not supported in destination format. - Innehållet stöds inte i destinationsformatet + Innehållet stöds inte i destinationsformatet Remove Page @@ -1070,43 +1070,43 @@ Remove Page - Ta bort sida + Ta bort sida Remove Document - Ta bort dokument + Ta bort dokument Are you sure you want to remove the document '%1'? - Är du säker på att du vill ta bort dokument '%1'? + Är du säker på att du vill ta bort dokument '%1'? Empty Trash - Töm papperskorgen + Töm papperskorgen Are you sure you want to empty trash? - Är du säker på att du vill tömma papperskorgen? + Är du säker på att du vill tömma papperskorgen? Emptying trash - Tömmer papperskorgen + Tömmer papperskorgen Emptied trash - Papperskorgen tömd + Papperskorgen tömd Remove Folder - Tabort mapp + Tabort mapp Are you sure you want to remove the folder '%1' and all its content? - Är du säker på att du vill ta bort mapp '%1' och all dess innehåll? + Är du säker på att du vill ta bort mapp '%1' och all dess innehåll? No document selected! - Inget dokument markerat! + Inget dokument markerat! Open Supported File @@ -1154,7 +1154,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + Är du säker på att du vill ta bort mapp %n sida/sidor från det makrerade dokumentet '%1'? @@ -1167,16 +1167,28 @@ Untitled Documents Namnlösa dokument + + duplicated %1 page + duplicated %1 pages + + + + + - The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + Remove Item + + + + Are you sure you want to remove the selected item(s) ? - Are you sure you want to remove all selected documents? + The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? - Remove multiple documents + Title page @@ -1230,19 +1242,83 @@ Sida %0 + + UBDocumentPublisher + + Export failed. + Export misslyckades. + + + + UBDocumentReplaceDialog + + Accept + Acceptera + + + Cancel + Avsluta + + + Replace + + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + + + UBDocumentTreeModel + + Trash + Papperskorg + + + %1 pages copied + + %1 sidor kopierade + + + + + My documents + + + + + UBDocumentTreeView + + %1 pages copied + + %1 sidor kopierade + + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + UBDocumentTreeWidget %1 (copy) - %1 (kopiera) + %1 (kopiera) Copying page %1/%2 - Kopierar sida %1/%2 + Kopierar sida %1/%2 %1 pages copied - + %1 sidor kopierade @@ -1283,6 +1359,10 @@ Exporting document... Exporterar dokument... + + Export successful. + Export lyckades. + Export failed @@ -1295,32 +1375,28 @@ Export failed: location not writable - - Export successful. - Export lyckades. - UBExportCFF Export to IWB - Exporter till IWB + Exporter till IWB Export as IWB File - Exportera som IWB-fil + Exportera som IWB-fil Exporting document... - Exporterar dokument... + Exporterar dokument... Export successful. - Export lyckades. + Export lyckades. Export failed. - Export misslyckades. + Export misslyckades. @@ -1350,6 +1426,33 @@ + + UBExportDocumentSetAdaptor + + Exporting document... + Exporterar dokument... + + + Export successful. + Export lyckades. + + + Export failed. + Export misslyckades. + + + Failed to export... + + + + Export as UBX File + + + + Export to OpenBoard UBX Format + + + UBExportFullPDF @@ -1638,23 +1741,23 @@ UBImportCFF Common File Format ( - Gemensamt filformat + Gemensamt filformat Importing file %1... - Importerar fil %1... + Importerar fil %1... Import of file %1 failed. - Import av fil %1 misslyckades. + Import av fil %1 misslyckades. Import successful. - Import lyckades. + Import lyckades. Import failed. - Import msslyckades. + Import msslyckades. @@ -1676,6 +1779,13 @@ + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + + UBImportImage @@ -1783,27 +1893,27 @@ Vill du ignorera felen för den här värden? UBOpenSankoreImporterWidget - Open-Sankore Documents Detected - + Cancel + Avsluta - Show this panel next time + Open-Sankore Documents Detected - You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. + Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - Cancel - Avsluta + Show this panel next time + - Proceed + You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. - Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. + Proceed @@ -1818,11 +1928,7 @@ Vill du ignorera felen för den här värden? Dokumentarkiv förlust - has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - - - - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1927,34 +2033,34 @@ Vill du ignorera felen för den här värden? UBProxyLoginDlg Proxy Login - Proxy inloggning + Proxy inloggning Username: - Användarnamn: + Användarnamn: Password: - Lösenord: + Lösenord: UBPublicationDlg Publish document on the web - Publicera dokumentet på nätet + Publicera dokumentet på nätet Title: - Titel: + Titel: Description: - Beskrivning: + Beskrivning: Publish - Publicera + Publicera @@ -2502,12 +2608,51 @@ p, li { white-space: pre-wrap; } Beskrivning + + documentPublishingDialog + + Dialog + Dialog + + + Title + Titel + + + E-mail + E-post + + + Author + Författare + + + Description + Beskrivning + + documents OpenBoard Documents + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2648,39 +2793,39 @@ p, li { white-space: pre-wrap; } Poäng - Open-Sankoré Importer - + On Dark Background + På mörk bakgrund - Check if Open-Sankoré data could be imported at launch - + Opacity + Genomskinlighet - Use system keyboard (recommended) - + On Light Background + På ljus bakgrund - Built-in virtual keyboard button size: + Swap first and second view displays - Grid + Built-in virtual keyboard button size: - On Dark Background - På mörk bakgrund + Use system keyboard (recommended) + - Opacity - Genomskinlighet + Grid + - On Light Background - På ljus bakgrund + Open-Sankoré Importer + - Swap first and second view displays + Check if Open-Sankoré data could be imported at launch diff --git a/resources/i18n/OpenBoard_tr.ts b/resources/i18n/OpenBoard_tr.ts index 477e73e0..280b2810 100644 --- a/resources/i18n/OpenBoard_tr.ts +++ b/resources/i18n/OpenBoard_tr.ts @@ -792,19 +792,19 @@ Arkaplanı Kaldır - Open Tutorial + Ruled Light Background - Open the tutorial web page + Ruled Dark Background - Ruled Light Background + Open Tutorial - Ruled Dark Background + Open the tutorial web page @@ -854,11 +854,11 @@ QObject Element ID = - Element ID = + Element ID = Content is not supported in destination format. - İçerik hedef içerik için uygun geğil. + İçerik hedef içerik için uygun geğil. Remove Page @@ -1069,43 +1069,43 @@ Remove Page - Sayfayı Kaldır + Sayfayı Kaldır Remove Document - Dökümanı Kaldır + Dökümanı Kaldır Are you sure you want to remove the document '%1'? - %1 adlı dökümanı kaldırmak istediğinizden eminmisiniz? + %1 adlı dökümanı kaldırmak istediğinizden eminmisiniz? Empty Trash - Çöpü Boşalt + Çöpü Boşalt Are you sure you want to empty trash? - Çöp kutusunu boşaltmak istediğinizden eminmisiniz? + Çöp kutusunu boşaltmak istediğinizden eminmisiniz? Emptying trash - Çöp Kutusu boşaltılıyor + Çöp Kutusu boşaltılıyor Emptied trash - Çöp kutusu boşaltıldı + Çöp kutusu boşaltıldı Remove Folder - Klasörü Kaldır + Klasörü Kaldır Are you sure you want to remove the folder '%1' and all its content? - '%1' adlı klasörü ve içindeki tüm dosyaları kaldırmak istediğinizden eminmisiniz? + '%1' adlı klasörü ve içindeki tüm dosyaları kaldırmak istediğinizden eminmisiniz? No document selected! - Seçili döküman yok! + Seçili döküman yok! Open Supported File @@ -1153,7 +1153,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + Seçili '%1' adlı dökümandan %n sayfayı kaldırmak istediğinizden eminmisiniz? @@ -1165,16 +1165,27 @@ Untitled Documents Başlıksız Döküman + + duplicated %1 page + duplicated %1 pages + + + + - The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + Remove Item + + + + Are you sure you want to remove the selected item(s) ? - Are you sure you want to remove all selected documents? + The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? - Remove multiple documents + Title page @@ -1228,20 +1239,75 @@ Sayfa %0 + + UBDocumentReplaceDialog + + Accept + Kabul Et + + + Cancel + İptal + + + Replace + + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + + + UBDocumentTreeModel + + Trash + Çöp + + + %1 pages copied + + %1 sayfa kopyalandı + + + + My documents + + + + + UBDocumentTreeView + + %1 pages copied + + %1 sayfa kopyalandı + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + UBDocumentTreeWidget %1 (copy) - %1 (kopyala) + %1 (kopyala) Copying page %1/%2 - Kopyalanan sayfa %1/%2 + Kopyalanan sayfa %1/%2 %1 pages copied The translation is correct but it is giving error message. - + %1 sayfa kopyalandı @@ -1302,23 +1368,23 @@ UBExportCFF Export to IWB - IWB'e Aktar + IWB'e Aktar Export as IWB File - IWB Dosyası Olarak Aktar + IWB Dosyası Olarak Aktar Exporting document... - Döküman dışa aktarılıyor... + Döküman dışa aktarılıyor... Export successful. - Dışa aktarma tamamlandı. + Dışa aktarma tamamlandı. Export failed. - Dışa aktarma başarısız oldu. + Dışa aktarma başarısız oldu. @@ -1348,6 +1414,33 @@ + + UBExportDocumentSetAdaptor + + Exporting document... + Döküman dışa aktarılıyor... + + + Failed to export... + + + + Export as UBX File + + + + Export successful. + + + + Export failed. + + + + Export to OpenBoard UBX Format + + + UBExportFullPDF @@ -1593,7 +1686,7 @@ UBGraphicsTextItem <Type Text Here> - + @@ -1636,23 +1729,23 @@ UBImportCFF Common File Format ( - Genel Dosya Biçimi ( + Genel Dosya Biçimi ( Importing file %1... - İçe aktarılan dosya: %1... + İçe aktarılan dosya: %1... Import of file %1 failed. - %1 adlı dosya içe aktarılamadı. + %1 adlı dosya içe aktarılamadı. Import successful. - İçe aktarım tamamlandı. + İçe aktarım tamamlandı. Import failed. - İçe aktarım tamamlanmadı. + İçe aktarım tamamlanmadı. @@ -1674,6 +1767,13 @@ + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + + UBImportImage @@ -1780,27 +1880,27 @@ Bu host için yukarıdaki hatalar yok sayılsın mı? UBOpenSankoreImporterWidget - Open-Sankore Documents Detected - + Cancel + İptal - Show this panel next time + Open-Sankore Documents Detected - You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. + Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - Cancel - İptal + Show this panel next time + - Proceed + You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. - Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. + Proceed @@ -1815,11 +1915,7 @@ Bu host için yukarıdaki hatalar yok sayılsın mı? Döküman Deposu Kaybedildi - has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - - - - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1924,34 +2020,34 @@ Bu host için yukarıdaki hatalar yok sayılsın mı? UBProxyLoginDlg Proxy Login - Proxy Girişi + Proxy Girişi Username: - Kullanıcı Adı: + Kullanıcı Adı: Password: - Şifre: + Şifre: UBPublicationDlg Publish document on the web - Dökümanı web üzerinde yayınla + Dökümanı web üzerinde yayınla Title: - Başlık: + Başlık: Description: - Açıklama: + Açıklama: Publish - Yayınla + Yayınla @@ -2424,14 +2520,14 @@ p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Lucida Grande'; font-size:10pt;">By clicking 'Upload,' you certify that you own all rights to the content or that you are authorized by the owner to make the content publicly available on YouTube, and that it otherwise complies with the YouTube Terms of Service located at </span><a href="http://www.youtube.com/t/terms"><span style=" font-family:'Lucida Grande'; font-size:10pt; text-decoration: underline; color:#0000ff;">http://www.youtube.com/t/terms</span></a></p></body></html> - - Restore credentials on reboot - - OpenBoard OpenBoard + + Restore credentials on reboot + + brushProperties @@ -2499,12 +2595,51 @@ p, li { white-space: pre-wrap; } Açıklama + + documentPublishingDialog + + Dialog + Diyalog + + + Title + Başlık + + + E-mail + E-mail + + + Author + Yazar + + + Description + Açıklama + + documents OpenBoard Documents + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2645,39 +2780,39 @@ p, li { white-space: pre-wrap; } Künye - Open-Sankoré Importer - + On Dark Background + Kapalı Arkaplan Üzerine - Check if Open-Sankoré data could be imported at launch - + Opacity + Saydamlık - Use system keyboard (recommended) - + On Light Background + Açık Arkaplan Üzerine - Built-in virtual keyboard button size: + Swap first and second view displays - Grid + Built-in virtual keyboard button size: - On Dark Background - Kapalı Arkaplan Üzerine + Use system keyboard (recommended) + - Opacity - Saydamlık + Grid + - On Light Background - Açık Arkaplan Üzerine + Open-Sankoré Importer + - Swap first and second view displays + Check if Open-Sankoré data could be imported at launch diff --git a/resources/i18n/OpenBoard_zh.ts b/resources/i18n/OpenBoard_zh.ts index ce2d422e..deec0c19 100644 --- a/resources/i18n/OpenBoard_zh.ts +++ b/resources/i18n/OpenBoard_zh.ts @@ -792,19 +792,19 @@ 移除背景 - Open Tutorial + Ruled Light Background - Open the tutorial web page + Ruled Dark Background - Ruled Light Background + Open Tutorial - Ruled Dark Background + Open the tutorial web page @@ -854,11 +854,11 @@ QObject Element ID = - Element ID = + Element ID = Content is not supported in destination format. - 目标格式不支持该内容。 + 目标格式不支持该内容。 Remove Page @@ -1069,43 +1069,43 @@ Remove Page - 删除页面 + 删除页面 Remove Document - 删除文档 + 删除文档 Are you sure you want to remove the document '%1'? - 确定要删除文档“%1”? + 确定要删除文档“%1”? Empty Trash - 清空回收站 + 清空回收站 Are you sure you want to empty trash? - 确定要清空回收站? + 确定要清空回收站? Emptying trash - 正在清空回收站 + 正在清空回收站 Emptied trash - 已清空回收站 + 已清空回收站 Remove Folder - 删除文件夹 + 删除文件夹 Are you sure you want to remove the folder '%1' and all its content? - 确定要删除文件夹“%1”及其所有内容? + 确定要删除文件夹“%1”及其所有内容? No document selected! - 未选中任何文档! + 未选中任何文档! Open Supported File @@ -1153,7 +1153,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + 确定要删除选中文件“%1”中的%n页? @@ -1165,16 +1165,27 @@ Untitled Documents 未命名文档 + + duplicated %1 page + duplicated %1 pages + + + + - The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + Remove Item + + + + Are you sure you want to remove the selected item(s) ? - Are you sure you want to remove all selected documents? + The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? - Remove multiple documents + Title page @@ -1228,19 +1239,74 @@ 页面 %0 + + UBDocumentReplaceDialog + + Accept + 接受 + + + Cancel + 取消 + + + Replace + + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + + + UBDocumentTreeModel + + Trash + 回收站 + + + %1 pages copied + + 已复制页面%1 + + + + My documents + + + + + UBDocumentTreeView + + %1 pages copied + + 已复制页面%1 + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + UBDocumentTreeWidget %1 (copy) - %1 (复制) + %1 (复制) Copying page %1/%2 - 正在复制页面 %1/%2 + 正在复制页面 %1/%2 %1 pages copied - + 已复制页面%1 @@ -1301,23 +1367,23 @@ UBExportCFF Export to IWB - 导出至IWB + 导出至IWB Export as IWB File - 以 IWB文件格式导出 + 以 IWB文件格式导出 Exporting document... - 文档导出中…… + 文档导出中…… Export successful. - 导出成功。 + 导出成功。 Export failed. - 导出失败。 + 导出失败。 @@ -1347,6 +1413,33 @@ + + UBExportDocumentSetAdaptor + + Exporting document... + 文档导出中…… + + + Failed to export... + + + + Export as UBX File + + + + Export successful. + + + + Export failed. + + + + Export to OpenBoard UBX Format + + + UBExportFullPDF @@ -1529,7 +1622,7 @@ Enter a new folder name - + @@ -1635,23 +1728,23 @@ UBImportCFF Common File Format ( - 常见文件格式 ( + 常见文件格式 ( Importing file %1... - 正在导入文件 %1…… + 正在导入文件 %1…… Import of file %1 failed. - 文件%1导入失败 + 文件%1导入失败 Import successful. - 导入成功 + 导入成功 Import failed. - 导入失败 + 导入失败 @@ -1673,6 +1766,13 @@ + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + + UBImportImage @@ -1780,27 +1880,27 @@ Do you want to ignore these errors for this host? UBOpenSankoreImporterWidget - Open-Sankore Documents Detected - + Cancel + 取消 - Show this panel next time + Open-Sankore Documents Detected - You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. + Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - Cancel - 取消 + Show this panel next time + - Proceed + You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. - Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. + Proceed @@ -1815,11 +1915,7 @@ Do you want to ignore these errors for this host? 文档库丢失 - has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - - - - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1924,34 +2020,34 @@ Do you want to ignore these errors for this host? UBProxyLoginDlg Proxy Login - 登录代理服务器 + 登录代理服务器 Username: - 用户名: + 用户名: Password: - 密码: + 密码: UBPublicationDlg Publish document on the web - 发布文档至网上 + 发布文档至网上 Title: - 标题: + 标题: Description: - 描述: + 描述: Publish - 发布 + 发布 @@ -2499,12 +2595,51 @@ p, li { white-space: pre-wrap; } 描述 + + documentPublishingDialog + + Dialog + 对话 + + + Title + 标题 + + + E-mail + 电子邮箱 + + + Author + 作者 + + + Description + 描述 + + documents OpenBoard Documents + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2645,39 +2780,39 @@ p, li { white-space: pre-wrap; } 版权 - Open-Sankoré Importer - + On Dark Background + 黑色背景 - Check if Open-Sankoré data could be imported at launch - + Opacity + 透明度 - Use system keyboard (recommended) - + On Light Background + 白色背景 - Built-in virtual keyboard button size: + Swap first and second view displays - Grid + Built-in virtual keyboard button size: - On Dark Background - 黑色背景 + Use system keyboard (recommended) + - Opacity - 透明度 + Grid + - On Light Background - 白色背景 + Open-Sankoré Importer + - Swap first and second view displays + Check if Open-Sankoré data could be imported at launch diff --git a/resources/i18n/OpenBoard_zh_CN.ts b/resources/i18n/OpenBoard_zh_CN.ts index ce2d422e..deec0c19 100644 --- a/resources/i18n/OpenBoard_zh_CN.ts +++ b/resources/i18n/OpenBoard_zh_CN.ts @@ -792,19 +792,19 @@ 移除背景 - Open Tutorial + Ruled Light Background - Open the tutorial web page + Ruled Dark Background - Ruled Light Background + Open Tutorial - Ruled Dark Background + Open the tutorial web page @@ -854,11 +854,11 @@ QObject Element ID = - Element ID = + Element ID = Content is not supported in destination format. - 目标格式不支持该内容。 + 目标格式不支持该内容。 Remove Page @@ -1069,43 +1069,43 @@ Remove Page - 删除页面 + 删除页面 Remove Document - 删除文档 + 删除文档 Are you sure you want to remove the document '%1'? - 确定要删除文档“%1”? + 确定要删除文档“%1”? Empty Trash - 清空回收站 + 清空回收站 Are you sure you want to empty trash? - 确定要清空回收站? + 确定要清空回收站? Emptying trash - 正在清空回收站 + 正在清空回收站 Emptied trash - 已清空回收站 + 已清空回收站 Remove Folder - 删除文件夹 + 删除文件夹 Are you sure you want to remove the folder '%1' and all its content? - 确定要删除文件夹“%1”及其所有内容? + 确定要删除文件夹“%1”及其所有内容? No document selected! - 未选中任何文档! + 未选中任何文档! Open Supported File @@ -1153,7 +1153,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + 确定要删除选中文件“%1”中的%n页? @@ -1165,16 +1165,27 @@ Untitled Documents 未命名文档 + + duplicated %1 page + duplicated %1 pages + + + + - The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + Remove Item + + + + Are you sure you want to remove the selected item(s) ? - Are you sure you want to remove all selected documents? + The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? - Remove multiple documents + Title page @@ -1228,19 +1239,74 @@ 页面 %0 + + UBDocumentReplaceDialog + + Accept + 接受 + + + Cancel + 取消 + + + Replace + + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + + + UBDocumentTreeModel + + Trash + 回收站 + + + %1 pages copied + + 已复制页面%1 + + + + My documents + + + + + UBDocumentTreeView + + %1 pages copied + + 已复制页面%1 + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + UBDocumentTreeWidget %1 (copy) - %1 (复制) + %1 (复制) Copying page %1/%2 - 正在复制页面 %1/%2 + 正在复制页面 %1/%2 %1 pages copied - + 已复制页面%1 @@ -1301,23 +1367,23 @@ UBExportCFF Export to IWB - 导出至IWB + 导出至IWB Export as IWB File - 以 IWB文件格式导出 + 以 IWB文件格式导出 Exporting document... - 文档导出中…… + 文档导出中…… Export successful. - 导出成功。 + 导出成功。 Export failed. - 导出失败。 + 导出失败。 @@ -1347,6 +1413,33 @@ + + UBExportDocumentSetAdaptor + + Exporting document... + 文档导出中…… + + + Failed to export... + + + + Export as UBX File + + + + Export successful. + + + + Export failed. + + + + Export to OpenBoard UBX Format + + + UBExportFullPDF @@ -1529,7 +1622,7 @@ Enter a new folder name - + @@ -1635,23 +1728,23 @@ UBImportCFF Common File Format ( - 常见文件格式 ( + 常见文件格式 ( Importing file %1... - 正在导入文件 %1…… + 正在导入文件 %1…… Import of file %1 failed. - 文件%1导入失败 + 文件%1导入失败 Import successful. - 导入成功 + 导入成功 Import failed. - 导入失败 + 导入失败 @@ -1673,6 +1766,13 @@ + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + + UBImportImage @@ -1780,27 +1880,27 @@ Do you want to ignore these errors for this host? UBOpenSankoreImporterWidget - Open-Sankore Documents Detected - + Cancel + 取消 - Show this panel next time + Open-Sankore Documents Detected - You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. + Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - Cancel - 取消 + Show this panel next time + - Proceed + You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. - Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. + Proceed @@ -1815,11 +1915,7 @@ Do you want to ignore these errors for this host? 文档库丢失 - has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - - - - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1924,34 +2020,34 @@ Do you want to ignore these errors for this host? UBProxyLoginDlg Proxy Login - 登录代理服务器 + 登录代理服务器 Username: - 用户名: + 用户名: Password: - 密码: + 密码: UBPublicationDlg Publish document on the web - 发布文档至网上 + 发布文档至网上 Title: - 标题: + 标题: Description: - 描述: + 描述: Publish - 发布 + 发布 @@ -2499,12 +2595,51 @@ p, li { white-space: pre-wrap; } 描述 + + documentPublishingDialog + + Dialog + 对话 + + + Title + 标题 + + + E-mail + 电子邮箱 + + + Author + 作者 + + + Description + 描述 + + documents OpenBoard Documents + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2645,39 +2780,39 @@ p, li { white-space: pre-wrap; } 版权 - Open-Sankoré Importer - + On Dark Background + 黑色背景 - Check if Open-Sankoré data could be imported at launch - + Opacity + 透明度 - Use system keyboard (recommended) - + On Light Background + 白色背景 - Built-in virtual keyboard button size: + Swap first and second view displays - Grid + Built-in virtual keyboard button size: - On Dark Background - 黑色背景 + Use system keyboard (recommended) + - Opacity - 透明度 + Grid + - On Light Background - 白色背景 + Open-Sankoré Importer + - Swap first and second view displays + Check if Open-Sankoré data could be imported at launch diff --git a/resources/i18n/OpenBoard_zh_TW.ts b/resources/i18n/OpenBoard_zh_TW.ts index 50aafe6c..efd36da2 100644 --- a/resources/i18n/OpenBoard_zh_TW.ts +++ b/resources/i18n/OpenBoard_zh_TW.ts @@ -792,19 +792,19 @@ 移除背景 - Open Tutorial + Ruled Light Background - Open the tutorial web page + Ruled Dark Background - Ruled Light Background + Open Tutorial - Ruled Dark Background + Open the tutorial web page @@ -854,11 +854,11 @@ QObject Element ID = - 元件ID = + 元件ID = Content is not supported in destination format. - 內容格式不支援。 + 內容格式不支援。 Remove Page @@ -1069,43 +1069,43 @@ Remove Page - 移除頁面 + 移除頁面 Remove Document - 移除文件 + 移除文件 Are you sure you want to remove the document '%1'? - 確定要移除文件 '%1'? + 確定要移除文件 '%1'? Empty Trash - 清空回收桶 + 清空回收桶 Are you sure you want to empty trash? - 確定要清空回收桶? + 確定要清空回收桶? Emptying trash - 回收桶清空中 + 回收桶清空中 Emptied trash - 回收桶已清空 + 回收桶已清空 Remove Folder - 移除檔案夾 + 移除檔案夾 Are you sure you want to remove the folder '%1' and all its content? - 確定要移除檔案夾 '%1' 及其所有內容? + 確定要移除檔案夾 '%1' 及其所有內容? No document selected! - 未選擇任何文件! + 未選擇任何文件! Open Supported File @@ -1153,7 +1153,7 @@ Are you sure you want to remove %n page(s) from the selected document '%1'? - + 確定要從所選文件 '%1' 移除 %n 個頁面? @@ -1165,16 +1165,27 @@ Untitled Documents 未命名文件 + + duplicated %1 page + duplicated %1 pages + + + + - The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + Remove Item - Are you sure you want to remove all selected documents? + Are you sure you want to remove the selected item(s) ? - Remove multiple documents + The document '%1' has been generated with a newer version of OpenBoard (%2). By opening it, you may lose some information. Do you want to proceed? + + + + Title page @@ -1228,19 +1239,81 @@ 第 %0 頁 + + UBDocumentPublisher + + Export failed. + 匯出失敗。 + + + + UBDocumentReplaceDialog + + Accept + 接受 + + + Cancel + 取消 + + + Replace + + + + The name %1 is allready used. +Keeping this name will replace the document. +Providing a new name will create a new document. + + + + + UBDocumentTreeModel + + Trash + 回收桶 + + + %1 pages copied + + 已複製 %1 個頁面 + + + + My documents + + + + + UBDocumentTreeView + + %1 pages copied + + 已複製 %1 個頁面 + + + + Remove Item + + + + Are you sure you want to remove the selected item(s) ? + + + UBDocumentTreeWidget %1 (copy) - %1 (copy) + %1 (copy) Copying page %1/%2 - 頁面 %1/%2 複製中 + 頁面 %1/%2 複製中 %1 pages copied - + 已複製 %1 個頁面 @@ -1301,23 +1374,23 @@ UBExportCFF Export to IWB - 匯出至IWB + 匯出至IWB Export as IWB File - 以IWB格式匯出 + 以IWB格式匯出 Exporting document... - 匯出文件... + 匯出文件... Export successful. - 成功匯出。 + 成功匯出。 Export failed. - 匯出失敗。 + 匯出失敗。 @@ -1347,6 +1420,33 @@ + + UBExportDocumentSetAdaptor + + Export failed. + 匯出失敗。 + + + Failed to export... + + + + Export as UBX File + + + + Exporting document... + + + + Export successful. + + + + Export to OpenBoard UBX Format + + + UBExportFullPDF @@ -1635,23 +1735,23 @@ UBImportCFF Common File Format ( - 常見檔案格式 ( + 常見檔案格式 ( Importing file %1... - 檔案 %1 匯入中... + 檔案 %1 匯入中... Import of file %1 failed. - 檔案 %1 匯入失敗。 + 檔案 %1 匯入失敗。 Import successful. - 匯入成功。 + 匯入成功。 Import failed. - 匯入失敗。 + 匯入失敗。 @@ -1673,6 +1773,13 @@ + + UBImportDocumentSetAdaptor + + Openboard (set of documents) (*.ubx) + + + UBImportImage @@ -1774,27 +1881,27 @@ Do you want to ignore these errors for this host? UBOpenSankoreImporterWidget - Open-Sankore Documents Detected - + Cancel + 取消 - Show this panel next time + Open-Sankore Documents Detected - You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. + Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. - Cancel - 取消 + Show this panel next time + - Proceed + You can always access the OpenBoard Document Importer through the Preferences panel in the About tab. Warning, if you have already imported your Open-Sankore datas, you might loose your current OpenBoard documents. - Open-Sankoré documents are present on your computer. It is possible to import them to OpenBoard by pressing the “Proceed” button to launch the importer application. + Proceed @@ -1809,11 +1916,7 @@ Do you want to ignore these errors for this host? 文件資料庫遺失 - has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. - - - - Moving page to trash folder... + OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well. @@ -1918,34 +2021,34 @@ Do you want to ignore these errors for this host? UBProxyLoginDlg Proxy Login - Proxy登入 + Proxy登入 Username: - 帳號: + 帳號: Password: - 密碼: + 密碼: UBPublicationDlg Publish document on the web - 發佈文件至網路 + 發佈文件至網路 Title: - 標題: + 標題: Description: - 描述: + 描述: Publish - 發佈 + 發佈 @@ -2486,12 +2589,51 @@ p, li { white-space: pre-wrap; } 描述 + + documentPublishingDialog + + Dialog + 對話 + + + Title + 標題 + + + E-mail + E-mail + + + Author + 作者 + + + Description + 描述 + + documents OpenBoard Documents + + Creation date + + + + Update date + + + + Alphabetical order + + + + Sort Order + + preferencesDialog @@ -2632,39 +2774,39 @@ p, li { white-space: pre-wrap; } 貢獻 - Open-Sankoré Importer - + On Dark Background + 深色背景 - Check if Open-Sankoré data could be imported at launch - + Opacity + 透明度 - Use system keyboard (recommended) - + On Light Background + 淡色背景 - Built-in virtual keyboard button size: + Swap first and second view displays - Grid + Built-in virtual keyboard button size: - On Dark Background - 深色背景 + Use system keyboard (recommended) + - Opacity - 透明度 + Grid + - On Light Background - 淡色背景 + Open-Sankoré Importer + - Swap first and second view displays + Check if Open-Sankoré data could be imported at launch diff --git a/src/adaptors/UBCFFSubsetAdaptor.h b/src/adaptors/UBCFFSubsetAdaptor.h index c087caf5..5cad4327 100644 --- a/src/adaptors/UBCFFSubsetAdaptor.h +++ b/src/adaptors/UBCFFSubsetAdaptor.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation * diff --git a/src/adaptors/UBExportCFF.cpp b/src/adaptors/UBExportCFF.cpp index 2447b466..80546007 100644 --- a/src/adaptors/UBExportCFF.cpp +++ b/src/adaptors/UBExportCFF.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation * diff --git a/src/adaptors/UBExportCFF.h b/src/adaptors/UBExportCFF.h index 74721905..7f39132f 100644 --- a/src/adaptors/UBExportCFF.h +++ b/src/adaptors/UBExportCFF.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation * diff --git a/src/adaptors/UBExportDocumentSetAdaptor.cpp b/src/adaptors/UBExportDocumentSetAdaptor.cpp index fae1f189..b3a72d54 100644 --- a/src/adaptors/UBExportDocumentSetAdaptor.cpp +++ b/src/adaptors/UBExportDocumentSetAdaptor.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation * diff --git a/src/adaptors/UBExportDocumentSetAdaptor.h b/src/adaptors/UBExportDocumentSetAdaptor.h index fdd37dd7..144ff8f2 100644 --- a/src/adaptors/UBExportDocumentSetAdaptor.h +++ b/src/adaptors/UBExportDocumentSetAdaptor.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation * diff --git a/src/adaptors/UBImportCFF.cpp b/src/adaptors/UBImportCFF.cpp index c8238ab4..83497abd 100644 --- a/src/adaptors/UBImportCFF.cpp +++ b/src/adaptors/UBImportCFF.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation * diff --git a/src/adaptors/UBImportCFF.h b/src/adaptors/UBImportCFF.h index f2559a2a..7ee0903c 100644 --- a/src/adaptors/UBImportCFF.h +++ b/src/adaptors/UBImportCFF.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation * diff --git a/src/adaptors/UBImportDocumentSetAdaptor.cpp b/src/adaptors/UBImportDocumentSetAdaptor.cpp index 73b302bb..a2397b21 100644 --- a/src/adaptors/UBImportDocumentSetAdaptor.cpp +++ b/src/adaptors/UBImportDocumentSetAdaptor.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation * diff --git a/src/adaptors/UBImportDocumentSetAdaptor.h b/src/adaptors/UBImportDocumentSetAdaptor.h index 03ab1bb7..13c97bbd 100644 --- a/src/adaptors/UBImportDocumentSetAdaptor.h +++ b/src/adaptors/UBImportDocumentSetAdaptor.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation * diff --git a/src/adaptors/UBWebPublisher.cpp b/src/adaptors/UBWebPublisher.cpp deleted file mode 100644 index e65f9e50..00000000 --- a/src/adaptors/UBWebPublisher.cpp +++ /dev/null @@ -1,81 +0,0 @@ -/* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) - * - * Copyright (C) 2013 Open Education Foundation - * - * Copyright (C) 2010-2013 Groupement d'Intérêt Public pour - * l'Education Numérique en Afrique (GIP ENA) - * - * This file is part of OpenBoard. - * - * OpenBoard is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 of the License, - * with a specific linking exception for the OpenSSL project's - * "OpenSSL" library (or with modified versions of it that use the - * same license as the "OpenSSL" library). - * - * OpenBoard is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with OpenBoard. If not, see . - */ - - - -#include "UBWebPublisher.h" - -#include "document/UBDocumentProxy.h" -#include "document/UBDocumentController.h" - -#include "adaptors/publishing/UBDocumentPublisher.h" - -#include "core/memcheck.h" - -UBWebPublisher::UBWebPublisher(QObject *parent) - : UBExportAdaptor(parent) -{ - // NOOP -} - - -UBWebPublisher::~UBWebPublisher() -{ - // NOOP -} - - -QString UBWebPublisher::exportName() -{ - return tr("Publish Document on Sankore Web"); -} - - -void UBWebPublisher::persist(UBDocumentProxy* pDocumentProxy) -{ - if (!pDocumentProxy) - return; - - //UniboardSankoreTransition document; - QString documentPath(pDocumentProxy->persistencePath()); - //document.checkDocumentDirectory(documentPath); - - UBDocumentPublisher* publisher = new UBDocumentPublisher(pDocumentProxy, this); // the publisher will self delete when publication finishes - publisher->publish(); - -} - -bool UBWebPublisher::associatedActionactionAvailableFor(const QModelIndex &selectedIndex) -{ - const UBDocumentTreeModel *docModel = qobject_cast(selectedIndex.model()); - if (!selectedIndex.isValid() || docModel->isCatalog(selectedIndex)) { - return false; - } - - return true; -} - - diff --git a/src/adaptors/UBWebPublisher.h b/src/adaptors/UBWebPublisher.h deleted file mode 100644 index c7de6fb0..00000000 --- a/src/adaptors/UBWebPublisher.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) - * - * Copyright (C) 2013 Open Education Foundation - * - * Copyright (C) 2010-2013 Groupement d'Intérêt Public pour - * l'Education Numérique en Afrique (GIP ENA) - * - * This file is part of OpenBoard. - * - * OpenBoard is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 of the License, - * with a specific linking exception for the OpenSSL project's - * "OpenSSL" library (or with modified versions of it that use the - * same license as the "OpenSSL" library). - * - * OpenBoard is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with OpenBoard. If not, see . - */ - - -#ifndef UBWEBPUBLISHER_H_ -#define UBWEBPUBLISHER_H_ - -#include - -#include "UBExportAdaptor.h" - -#include "frameworks/UBFileSystemUtils.h" -#include "ui_webPublishing.h" - -class UBDocumentProxy; -class UBServerXMLHttpRequest; - -class UBWebPublisher : public UBExportAdaptor -{ - Q_OBJECT - - public: - UBWebPublisher(QObject *parent = 0); - virtual ~UBWebPublisher(); - - virtual QString exportName(); - - virtual void persist(UBDocumentProxy* pDocument); - - virtual bool associatedActionactionAvailableFor(const QModelIndex &selectedIndex); -}; - - -#endif /* UBWEBPUBLISHER_H_ */ diff --git a/src/adaptors/adaptors.pri b/src/adaptors/adaptors.pri index ed1d0c60..bad9eab1 100644 --- a/src/adaptors/adaptors.pri +++ b/src/adaptors/adaptors.pri @@ -11,13 +11,10 @@ HEADERS += src/adaptors/UBExportAdaptor.h\ src/adaptors/UBImportPDF.h \ src/adaptors/UBImportImage.h \ src/adaptors/UBExportWeb.h \ - src/adaptors/publishing/UBDocumentPublisher.h \ - src/adaptors/publishing/UBSvgSubsetRasterizer.h \ $$PWD/UBExportDocumentSetAdaptor.h \ $$PWD/UBImportDocumentSetAdaptor.h \ $$PWD/UBExportCFF.h \ $$PWD/UBImportCFF.h \ - $$PWD/UBWebPublisher.h \ $$PWD/UBCFFSubsetAdaptor.h @@ -33,11 +30,8 @@ SOURCES += src/adaptors/UBExportAdaptor.cpp\ src/adaptors/UBImportPDF.cpp \ src/adaptors/UBImportImage.cpp \ src/adaptors/UBExportWeb.cpp \ - src/adaptors/publishing/UBDocumentPublisher.cpp\ - src/adaptors/publishing/UBSvgSubsetRasterizer.cpp \ $$PWD/UBExportDocumentSetAdaptor.cpp \ $$PWD/UBImportDocumentSetAdaptor.cpp \ $$PWD/UBExportCFF.cpp \ $$PWD/UBImportCFF.cpp \ - $$PWD/UBWebPublisher.cpp \ $$PWD/UBCFFSubsetAdaptor.cpp diff --git a/src/adaptors/publishing/Sankore_Document_Web_Publication_Specification.doc b/src/adaptors/publishing/Sankore_Document_Web_Publication_Specification.doc deleted file mode 100644 index 0526b243bfdf0c784191abb864458b4f5f1dd2a1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 368128 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%0A&_Y+0P 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. - */ - - -#include - -#include "UBDocumentPublisher.h" - -#include "frameworks/UBPlatformUtils.h" -#include "frameworks/UBFileSystemUtils.h" -#include "frameworks/UBStringUtils.h" - -#include "network/UBNetworkAccessManager.h" -#include "network/UBServerXMLHttpRequest.h" - -#include "core/UBDocumentManager.h" -#include "core/UBApplication.h" -#include "core/UBPersistenceManager.h" -#include "core/UBApplicationController.h" - -#include "board/UBBoardController.h" - -#include "gui/UBMainWindow.h" - -#include "document/UBDocumentProxy.h" -#include "document/UBDocumentContainer.h" - -#include "domain/UBGraphicsWidgetItem.h" - -#include "globals/UBGlobals.h" - -THIRD_PARTY_WARNINGS_DISABLE -#include "quazip.h" -#include "quazipfile.h" -THIRD_PARTY_WARNINGS_ENABLE - -#include "adaptors/UBExportFullPDF.h" -#include "adaptors/UBExportDocument.h" -#include "adaptors/UBSvgSubsetAdaptor.h" - -#include "UBSvgSubsetRasterizer.h" - -#include "../../core/UBApplication.h" - -#include "core/memcheck.h" - - -UBDocumentPublisher::UBDocumentPublisher(UBDocumentProxy* pDocument, QObject *parent) - : QObject(parent) - , mSourceDocument(pDocument) - , mUsername("") - , mPassword("") - , bLoginCookieSet(false) -{ - init(); -} - - -UBDocumentPublisher::~UBDocumentPublisher() -{ -} - - -void UBDocumentPublisher::publish() -{ - //check that the username and password are stored on preferences - UBSettings* settings = UBSettings::settings(); - - if(settings->communityUsername().isEmpty() || settings->communityPassword().isEmpty()){ - UBApplication::showMessage(tr("Credentials has to not been filled out yet.")); - qDebug() << "trying to connect to community without the required credentials"; - return; - } - - mUsername = settings->communityUsername(); - mPassword = settings->communityPassword(); - - UBPublicationDlg dlg; - if(QDialog::Accepted == dlg.exec()) - { - mDocInfos.title = dlg.title(); - mDocInfos.description = dlg.description(); - - buildUbwFile(); - - UBApplication::showMessage(tr("Uploading Sankore File on Web.")); - - sendUbw(mUsername, mPassword); - } -} - -void UBDocumentPublisher::buildUbwFile() -{ - QDir d; - d.mkpath(UBFileSystemUtils::defaultTempDirPath()); - - QString tmpDir = UBFileSystemUtils::createTempDir(); - - if (UBFileSystemUtils::copyDir(mSourceDocument->persistencePath(), tmpDir)) - { - QString documentName = mSourceDocument->name(); - //remove all the directory separators from the document name. - //we do not want to interperete them as directory separator - documentName = documentName.replace("/",".").replace("\\","."); - documentName = documentName.replace(":","-"); - mPublishingPath = tmpDir; - mPublishingSize = mSourceDocument->pageCount(); - - rasterizeScenes(); - - upgradeDocumentForPublishing(); - - UBExportFullPDF pdfExporter; - pdfExporter.setVerbose(false); - pdfExporter.persistsDocument(mSourceDocument, mPublishingPath + "/" + documentName + ".pdf"); - - UBExportDocument ubzExporter; - ubzExporter.setVerbose(false); - ubzExporter.persistsDocument(mSourceDocument, mPublishingPath + "/" + documentName + ".ubz"); - - // remove all useless files - - for (int pageIndex = 0; pageIndex < mPublishingSize; pageIndex++) { - QString filename = mPublishingPath + UBFileSystemUtils::digitFileFormat("/page%1.svg",pageIndex); - - QFile::remove(filename); - } - - UBFileSystemUtils::deleteDir(mPublishingPath + "/" + UBPersistenceManager::imageDirectory); - UBFileSystemUtils::deleteDir(mPublishingPath + "/" + UBPersistenceManager::objectDirectory); - UBFileSystemUtils::deleteDir(mPublishingPath + "/" + UBPersistenceManager::videoDirectory); - UBFileSystemUtils::deleteDir(mPublishingPath + "/" + UBPersistenceManager::audioDirectory); - - mTmpZipFile = UBFileSystemUtils::defaultTempDirPath() + "/" + UBStringUtils::toCanonicalUuid(QUuid::createUuid()) + ".ubw"; - - QuaZip zip(mTmpZipFile); - zip.setFileNameCodec("UTF-8"); - if (!zip.open(QuaZip::mdCreate)) - { - qWarning() << "Export failed. Cause: zip.open(): " << zip.getZipError() << "," << mTmpZipFile; - QApplication::restoreOverrideCursor(); - return; - } - - QuaZipFile outFile(&zip); - - if (!UBFileSystemUtils::compressDirInZip(mPublishingPath, "", &outFile, true)) - { - qWarning("Export failed. compressDirInZip failed ..."); - zip.close(); - UBApplication::showMessage(tr("Export failed.")); - QApplication::restoreOverrideCursor(); - return; - } - - if (zip.getZipError() != 0) - { - qWarning("Export failed. Cause: zip.close(): %d", zip.getZipError()); - zip.close(); - UBApplication::showMessage(tr("Export failed.")); - QApplication::restoreOverrideCursor(); - return; - } - - zip.close(); - - } - else - { - UBApplication::showMessage(tr("Export canceled ...")); - QApplication::restoreOverrideCursor(); - } -} - -void UBDocumentPublisher::rasterizeScenes() -{ - - for (int pageIndex = 0; pageIndex < mPublishingSize; pageIndex++) - { - UBApplication::showMessage(tr("Converting page %1/%2 ...").arg(UBDocumentContainer::pageFromSceneIndex(pageIndex)).arg(mPublishingSize), true); - - UBDocumentProxy publishingDocument(mPublishingPath); - UBSvgSubsetRasterizer rasterizer(&publishingDocument, pageIndex); - - QString filename = mPublishingPath + UBFileSystemUtils::digitFileFormat("/page%1.jpg",pageIndex); - - rasterizer.rasterizeToFile(filename); - - } -} - - -void UBDocumentPublisher::updateGoogleMapApiKey() -{ - /* - QDir widgestDir(mPublishingPath + "/" + UBPersistenceManager::widgetDirectory); - - QString uniboardWebGoogleMapApiKey = UBSettings::settings()->uniboardWebGoogleMapApiKey->get().toString(); - - foreach(QFileInfo dirInfo, widgestDir.entryInfoList(QDir::Dirs | QDir::NoDotAndDotDot)) - { - QString config = UBFileSystemUtils::readTextFile(dirInfo.absoluteFilePath() + "/config.xml").toLower(); - - if (config.contains("google") && config.contains("map")) - { - QDir widgetDir(dirInfo.absoluteFilePath()); - - foreach(QFileInfo fileInfo, widgetDir.entryInfoList(QDir::Files | QDir::NoDotAndDotDot)) - { - QFile file(fileInfo.absoluteFilePath()); - - if (file.open(QIODevice::ReadWrite)) - { - QTextStream stream(&file); - QString content = stream.readAll(); - - if (content.contains("ABQIAAAA6vtVqAUu8kZ_eTz7c8kwSBT9UCAhw_xm0LNFHsWmQxTJAdp5lxSY_5r-lZriY_7sACaMnl80JcX6Og")) - { - content.replace("ABQIAAAA6vtVqAUu8kZ_eTz7c8kwSBT9UCAhw_xm0LNFHsWmQxTJAdp5lxSY_5r-lZriY_7sACaMnl80JcX6Og", - uniboardWebGoogleMapApiKey); - - file.resize(0); - file.write(content.toUtf8()); - } - file.close(); - } - } - } - } - */ -} - - -void UBDocumentPublisher::upgradeDocumentForPublishing() -{ - for (int pageIndex = 0; pageIndex < mPublishingSize; pageIndex++) - { - UBDocumentProxy publishingDocument(mPublishingPath); - UBGraphicsScene *scene = UBSvgSubsetAdaptor::loadScene(&publishingDocument, pageIndex); - - QList widgets; - - foreach(QGraphicsItem* item, scene->items()){ - UBGraphicsW3CWidgetItem *widgetItem = dynamic_cast(item); - - if(widgetItem){ - generateWidgetPropertyScript(widgetItem, UBDocumentContainer::pageFromSceneIndex(pageIndex)); - widgets << widgetItem; - } - } - - QString filename = mPublishingPath + UBFileSystemUtils::digitFileFormat("/page%1.json",pageIndex); - - QFile jsonFile(filename); - if (jsonFile.open(QIODevice::WriteOnly | QIODevice::Truncate)) - { - jsonFile.write("{\n"); - jsonFile.write(QString(" \"scene\": {\n").toUtf8()); - jsonFile.write(QString(" \"x\": %1,\n").arg(scene->normalizedSceneRect().x()).toUtf8()); - jsonFile.write(QString(" \"y\": %1,\n").arg(scene->normalizedSceneRect().y()).toUtf8()); - jsonFile.write(QString(" \"width\": %1,\n").arg(scene->normalizedSceneRect().width()).toUtf8()); - jsonFile.write(QString(" \"height\": %1\n").arg(scene->normalizedSceneRect().height()).toUtf8()); - jsonFile.write(QString(" },\n").toUtf8()); - - jsonFile.write(QString(" \"widgets\": [\n").toUtf8()); - - bool first = true; - - foreach(UBGraphicsW3CWidgetItem* widget, widgets) - { - if (!first) - jsonFile.write(QString(" ,\n").toUtf8()); - - jsonFile.write(QString(" {\n").toUtf8()); - jsonFile.write(QString(" \"uuid\": \"%1\",\n").arg(UBStringUtils::toCanonicalUuid(widget->uuid())).toUtf8()); - jsonFile.write(QString(" \"id\": \"%1\",\n").arg(widget->metadatas().id).toUtf8()); - - jsonFile.write(QString(" \"name\": \"%1\",\n").arg(widget->metadatas().name).toUtf8()); - jsonFile.write(QString(" \"description\": \"%1\",\n").arg(widget->metadatas().description).toUtf8()); - jsonFile.write(QString(" \"author\": \"%1\",\n").arg(widget->metadatas().author).toUtf8()); - jsonFile.write(QString(" \"authorEmail\": \"%1\",\n").arg(widget->metadatas().authorEmail).toUtf8()); - jsonFile.write(QString(" \"authorHref\": \"%1\",\n").arg(widget->metadatas().authorHref).toUtf8()); - jsonFile.write(QString(" \"version\": \"%1\",\n").arg(widget->metadatas().authorHref).toUtf8()); - - jsonFile.write(QString(" \"x\": %1,\n").arg(widget->sceneBoundingRect().x()).toUtf8()); - jsonFile.write(QString(" \"y\": %1,\n").arg(widget->sceneBoundingRect().y()).toUtf8()); - jsonFile.write(QString(" \"width\": %1,\n").arg(widget->sceneBoundingRect().width()).toUtf8()); - jsonFile.write(QString(" \"height\": %1,\n").arg(widget->sceneBoundingRect().height()).toUtf8()); - - jsonFile.write(QString(" \"nominalWidth\": %1,\n").arg(widget->boundingRect().width()).toUtf8()); - jsonFile.write(QString(" \"nominalHeight\": %1,\n").arg(widget->boundingRect().height()).toUtf8()); - - QString url = UBPersistenceManager::widgetDirectory + "/" + widget->uuid().toString() + ".wgt"; - jsonFile.write(QString(" \"src\": \"%1\",\n").arg(url).toUtf8()); - QString startFile = widget->mainHtmlFileName(); - jsonFile.write(QString(" \"startFile\": \"%1\",\n").arg(startFile).toUtf8()); - - QMap preferences = widget->UBGraphicsWidgetItem::preferences(); - - jsonFile.write(QString(" \"preferences\": {\n").toUtf8()); - - foreach(QString key, preferences.keys()) - { - QString sep = ","; - if (key == preferences.keys().last()) - sep = ""; - - jsonFile.write(QString(" \"%1\": \"%2\"%3\n") - .arg(key) - .arg(preferences.value(key)) - .arg(sep) - .toUtf8()); - } - jsonFile.write(QString(" },\n").toUtf8()); - - jsonFile.write(QString(" \"datastore\": {\n").toUtf8()); - - QMap datastoreEntries = widget->datastoreEntries(); - - foreach(QString entry, datastoreEntries.keys()) - { - QString sep = ","; - if (entry == datastoreEntries.keys().last()) - sep = ""; - - jsonFile.write(QString(" \"%1\": \"%2\"%3\n") - .arg(entry) - .arg(datastoreEntries.value(entry)) - .arg(sep) - .toUtf8()); - } - jsonFile.write(QString(" }\n").toUtf8()); - - jsonFile.write(QString(" }\n").toUtf8()); - - first = false; - } - - jsonFile.write(" ]\n"); - jsonFile.write("}\n"); - } - else - { - qWarning() << "Cannot open file" << filename << "for saving page state"; - } - - delete scene; - } - - updateGoogleMapApiKey(); -} - - -void UBDocumentPublisher::generateWidgetPropertyScript(UBGraphicsW3CWidgetItem *widgetItem, int pageNumber) -{ - - QMap preferences = widgetItem->UBGraphicsWidgetItem::preferences(); - QMap datastoreEntries = widgetItem->datastoreEntries(); - - QString startFileName = widgetItem->mainHtmlFileName(); - - if (!startFileName.startsWith("http://")) - { - QString startFilePath = mPublishingPath + "/" + UBPersistenceManager::widgetDirectory + "/" + widgetItem->uuid().toString() + ".wgt/" + startFileName; - - QFile startFile(startFilePath); - - if (startFile.exists()) - { - if (startFile.open(QIODevice::ReadWrite)) - { - QTextStream stream(&startFile); - QStringList lines; - - bool addedJs = false; - - QString line; - do - { - line = stream.readLine(); - if (!line.isNull()) - { - lines << line; - - if (!addedJs && line.contains("") ) // TODO UB 4.6, this is naive ... the HEAD tag may be on several lines - { - lines << ""; - lines << " "; - lines << ""; - - addedJs = true; - } - } - } - while (!line.isNull()); - - startFile.resize(0); - startFile.write(lines.join("\n").toUtf8()); // TODO UB 4.x detect real html encoding - - startFile.close(); - } - } - } - else{ - qWarning() << "Remote Widget start file, cannot inject widget preferences and datastore entries"; - } -} - -void UBDocumentPublisher::init() -{ - mCrlf=0x0d; - mCrlf+=0x0a; - mDocInfos.title = ""; - mDocInfos.description = ""; - - mpCookieJar = new QNetworkCookieJar(); - mpNetworkMgr = new QNetworkAccessManager(this); - - connect(mpNetworkMgr, SIGNAL(finished(QNetworkReply*)), this, SLOT(onFinished(QNetworkReply*))); -} - -void UBDocumentPublisher::onFinished(QNetworkReply *reply) -{ - QVariant cookieHeader = reply->rawHeader("Set-Cookie"); - // First we concatenate all the Set-Cookie values (the packet can contains many of them) - QStringList qslCookie = cookieHeader.toString().split("\n"); - QString qsCookieValue = qslCookie.at(0); - for (int i = 1; i < qslCookie.size(); i++) { - qsCookieValue += "; " +qslCookie.at(i); - } - - // Now we isolate every cookie value - QStringList qslCookieVals = qsCookieValue.split("; "); - - bool bTransferOk = false; - - for(int j = 0; j < qslCookieVals.size(); j++) - { - qDebug() << j << qslCookieVals.at(j); - if(qslCookieVals.at(j).startsWith("assetStatus")) - { - QStringList qslAsset = qslCookieVals.at(j).split("="); - if(qslAsset.at(1) == "UPLOADED") - { - bTransferOk = true; - break; - } - } - } - - if(bTransferOk) - { - UBApplication::showMessage(tr("Document uploaded correctly on the web.")); - } - else - { - UBApplication::showMessage(tr("Failed to upload document on the web.")); - } - - reply->deleteLater(); -} - -void UBDocumentPublisher::sendUbw(QString username, QString password) -{ - if (QFile::exists(mTmpZipFile)) - { - QFile f(mTmpZipFile); - if (f.open(QIODevice::ReadOnly)) - { - QFileInfo fi(f); - QByteArray ba = f.readAll(); - QString boundary,data, multipartHeader; - QByteArray datatoSend; - - boundary = "---WebKitFormBoundaryDKBTgA53MiyWrzLY"; - multipartHeader = "multipart/form-data; boundary="+boundary; - - data="--"+boundary+mCrlf; - data+="Content-Disposition: form-data; name=\"title\"" + mCrlf + mCrlf + mDocInfos.title + mCrlf; - data+="--"+boundary+mCrlf; - data+="Content-Disposition: form-data; name=\"description\"" + mCrlf + mCrlf + mDocInfos.description.remove("\n") + mCrlf; - data+="--"+boundary+mCrlf; - data+="Content-Disposition: form-data; name=\"file\"; filename=\""+ fi.fileName() +"\""+mCrlf; - data+="Content-Type: application/octet-stream"+mCrlf+mCrlf; - datatoSend=data.toLatin1(); // convert data string to byte array for request - datatoSend += ba; - datatoSend += mCrlf; - datatoSend += QString("--%0--%1").arg(boundary).arg(mCrlf); - - QNetworkRequest request(QUrl(QString(DOCPUBLICATION_URL).toLatin1().constData())); - - request.setHeader(QNetworkRequest::ContentTypeHeader, multipartHeader); - request.setHeader(QNetworkRequest::ContentLengthHeader,datatoSend.size()); - QString b64Auth = getBase64Of(QString("%0:%1").arg(username).arg(password)); - request.setRawHeader("Authorization", QString("Basic %0").arg(b64Auth).toLatin1().constData()); - request.setRawHeader("Host", "planete.sankore.org"); - request.setRawHeader("Accept", "*/*"); - request.setRawHeader("Accept-Language", "en-US,*"); - - mpCookieJar->setCookiesFromUrl(mCookies, QUrl(DOCPUBLICATION_URL)); - mpNetworkMgr->setCookieJar(mpCookieJar); - - // Send the file - mpNetworkMgr->post(request,datatoSend); - } - } -} - -QString UBDocumentPublisher::getBase64Of(QString stringToEncode) -{ - return stringToEncode.toLatin1().toBase64(); -} - -// --------------------------------------------------------- -UBProxyLoginDlg::UBProxyLoginDlg(QWidget *parent, const char *name):QDialog(parent) - , mpLayout(NULL) - , mpUserLayout(NULL) - , mpPasswordLayout(NULL) - , mpButtons(NULL) - , mpUserLabel(NULL) - , mpPasswordLabel(NULL) - , mpUsername(NULL) - , mpPassword(NULL) -{ - setObjectName(name); - setFixedSize(400, 150); - setWindowTitle(tr("Proxy Login")); - - mpLayout = new QVBoxLayout(); - setLayout(mpLayout); - mpUserLayout = new QHBoxLayout(); - mpLayout->addLayout(mpUserLayout); - mpPasswordLayout = new QHBoxLayout(); - mpLayout->addLayout(mpPasswordLayout); - - mpUserLabel = new QLabel(tr("Username:"), this); - mpUsername = new QLineEdit(this); - mpUserLayout->addWidget(mpUserLabel, 0); - mpUserLayout->addWidget(mpUsername, 1); - - mpPasswordLabel = new QLabel(tr("Password:"), this); - mpPassword = new QLineEdit(this); - mpPasswordLayout->addWidget(mpPasswordLabel, 0); - mpPasswordLayout->addWidget(mpPassword, 1); - - mpButtons = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel, Qt::Horizontal, this); - mpLayout->addWidget(mpButtons); - - connect(mpButtons, SIGNAL(accepted()), this, SLOT(accept())); - connect(mpButtons, SIGNAL(rejected()), this, SLOT(reject())); - -} - -UBProxyLoginDlg::~UBProxyLoginDlg() -{ - if(NULL != mpLayout) - { - delete mpLayout; - mpLayout = NULL; - } - if(NULL != mpButtons) - { - delete mpButtons; - mpButtons = NULL; - } - if(NULL != mpUserLabel) - { - delete mpUserLabel; - mpUserLabel = NULL; - } - if(NULL != mpPasswordLabel) - { - delete mpPasswordLabel; - mpPasswordLabel = NULL; - } - if(NULL != mpUsername) - { - delete mpUsername; - mpUsername = NULL; - } - if(NULL != mpPassword) - { - delete mpPassword; - mpPassword = NULL; - } -} - -// --------------------------------------------------------- -UBPublicationDlg::UBPublicationDlg(QWidget *parent, const char *name):QDialog(parent) - , mpLayout(NULL) - , mpTitleLayout(NULL) - , mpTitleLabel(NULL) - , mpTitle(NULL) - , mpDescLabel(NULL) - , mpDescription(NULL) - , mpButtons(NULL) -{ - setObjectName(name); - setWindowTitle(tr("Publish document on the web")); - - resize(500, 300); - - mpLayout = new QVBoxLayout(); - setLayout(mpLayout); - - mpTitleLabel = new QLabel(tr("Title:"), this); - mpTitle = new QLineEdit(this); - mpTitleLayout = new QHBoxLayout(); - mpTitleLayout->addWidget(mpTitleLabel, 0); - mpTitleLayout->addWidget(mpTitle, 1); - mpLayout->addLayout(mpTitleLayout, 0); - - mpDescLabel = new QLabel(tr("Description:"), this); - mpLayout->addWidget(mpDescLabel, 0); - - mpDescription = new QTextEdit(this); - mpLayout->addWidget(mpDescription, 1); - - mpButtons = new QDialogButtonBox(QDialogButtonBox::Cancel | QDialogButtonBox::Ok, Qt::Horizontal, this); - mpButtons->button(QDialogButtonBox::Ok)->setText(tr("Publish")); - mpLayout->addWidget(mpButtons); - - mpButtons->button(QDialogButtonBox::Ok)->setEnabled(false); - - connect(mpButtons, SIGNAL(accepted()), this, SLOT(accept())); - connect(mpButtons, SIGNAL(rejected()), this, SLOT(reject())); - connect(mpTitle, SIGNAL(textChanged(QString)), this, SLOT(onTextChanged())); - connect(mpDescription, SIGNAL(textChanged()), this, SLOT(onTextChanged())); -} - -UBPublicationDlg::~UBPublicationDlg() -{ - if(NULL != mpTitleLabel) - { - delete mpTitleLabel; - mpTitleLabel = NULL; - } - if(NULL != mpTitle) - { - delete mpTitle; - mpTitle = NULL; - } - if(NULL != mpDescLabel) - { - delete mpDescLabel; - mpDescLabel = NULL; - } - if(NULL != mpDescription) - { - delete mpDescription; - mpDescription = NULL; - } - if(NULL != mpButtons) - { - delete mpButtons; - mpButtons = NULL; - } - if(NULL != mpTitleLayout) - { - delete mpTitleLayout; - mpTitleLayout = NULL; - } - if(NULL != mpLayout) - { - delete mpLayout; - mpLayout = NULL; - } -} - -void UBPublicationDlg::onTextChanged() -{ - bool bPublishButtonState = false; - if(mpTitle->text() != "" && mpDescription->document()->toPlainText() != "") - { - bPublishButtonState = true; - } - else - { - bPublishButtonState = false; - } - - mpButtons->button(QDialogButtonBox::Ok)->setEnabled(bPublishButtonState); -} diff --git a/src/adaptors/publishing/UBDocumentPublisher.h b/src/adaptors/publishing/UBDocumentPublisher.h deleted file mode 100644 index 35001766..00000000 --- a/src/adaptors/publishing/UBDocumentPublisher.h +++ /dev/null @@ -1,146 +0,0 @@ -/* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) - * - * Copyright (C) 2013 Open Education Foundation - * - * Copyright (C) 2010-2013 Groupement d'Intérêt Public pour - * l'Education Numérique en Afrique (GIP ENA) - * - * This file is part of OpenBoard. - * - * OpenBoard is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 of the License, - * with a specific linking exception for the OpenSSL project's - * "OpenSSL" library (or with modified versions of it that use the - * same license as the "OpenSSL" library). - * - * OpenBoard is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with OpenBoard. If not, see . - */ - - -#ifndef UBDOCUMENTPUBLISHER_H -#define UBDOCUMENTPUBLISHER_H - -#include -#include - -#include "ui_webPublishing.h" - -#define DOCPUBLICATION_URL "http://planete.sankore.org/xwiki/bin/view/CreateResources/UniboardUpload?xpage=plain&outputSyntax=plain" - -typedef struct -{ - QString title; - QString description; -} sDocumentInfos; - -class UBDocumentProxy; -class UBServerXMLHttpRequest; -class UBGraphicsW3CWidgetItem; -class QWebView; - -class UBProxyLoginDlg : public QDialog -{ - Q_OBJECT -public: - UBProxyLoginDlg(QWidget* parent=0, const char* name="ProxyLoginDlg"); - ~UBProxyLoginDlg(); - - QString username(){return mpUsername->text();} - QString password(){return mpPassword->text();} - -private: - QVBoxLayout* mpLayout; - QHBoxLayout* mpUserLayout; - QHBoxLayout* mpPasswordLayout; - QDialogButtonBox* mpButtons; - QLabel* mpUserLabel; - QLabel* mpPasswordLabel; - QLineEdit* mpUsername; - QLineEdit* mpPassword; -}; - -class UBPublicationDlg : public QDialog -{ - Q_OBJECT -public: - UBPublicationDlg(QWidget* parent=0, const char* name="UBPublicationDlg"); - ~UBPublicationDlg(); - - QString title(){return mpTitle->text();} - QString description(){return mpDescription->document()->toPlainText();} - -private slots: - void onTextChanged(); - -private: - QVBoxLayout* mpLayout; - QHBoxLayout* mpTitleLayout; - QLabel* mpTitleLabel; - QLineEdit* mpTitle; - QLabel* mpDescLabel; - QTextEdit* mpDescription; - QDialogButtonBox* mpButtons; -}; - - -class UBDocumentPublisher : public QObject -{ - Q_OBJECT; - -public: - explicit UBDocumentPublisher(UBDocumentProxy* sourceDocument, QObject *parent = 0); - virtual ~UBDocumentPublisher(); - - void publish(); - -signals: - - void loginDone(); - -protected: - - virtual void updateGoogleMapApiKey(); - virtual void rasterizeScenes(); - virtual void upgradeDocumentForPublishing(); - virtual void generateWidgetPropertyScript(UBGraphicsW3CWidgetItem *widgetItem, int pageNumber); - -private slots: - - void onFinished(QNetworkReply* reply); - -private: - - UBDocumentProxy *mSourceDocument; - - //UBDocumentProxy *mPublishingDocument; - QString mPublishingPath; - int mPublishingSize; - - - void init(); - void sendUbw(QString username, QString password); - QString getBase64Of(QString stringToEncode); - - QHBoxLayout* mpLayout; - QNetworkAccessManager* mpNetworkMgr; - QNetworkCookieJar* mpCookieJar; - QString mUsername; - QString mPassword; - QString mCrlf; - bool bLoginCookieSet; - - void buildUbwFile(); - QString mTmpZipFile; - QList mCookies; - sDocumentInfos mDocInfos; - -}; -#endif // UBDOCUMENTPUBLISHER_H diff --git a/src/adaptors/publishing/UBSvgSubsetRasterizer.cpp b/src/adaptors/publishing/UBSvgSubsetRasterizer.cpp deleted file mode 100644 index c9d612bc..00000000 --- a/src/adaptors/publishing/UBSvgSubsetRasterizer.cpp +++ /dev/null @@ -1,99 +0,0 @@ -/* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) - * - * Copyright (C) 2013 Open Education Foundation - * - * Copyright (C) 2010-2013 Groupement d'Intérêt Public pour - * l'Education Numérique en Afrique (GIP ENA) - * - * This file is part of OpenBoard. - * - * OpenBoard is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 of the License, - * with a specific linking exception for the OpenSSL project's - * "OpenSSL" library (or with modified versions of it that use the - * same license as the "OpenSSL" library). - * - * OpenBoard is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with OpenBoard. If not, see . - */ - - - -#include "UBSvgSubsetRasterizer.h" - -#include "domain/UBGraphicsScene.h" -#include "adaptors/UBSvgSubsetAdaptor.h" - -#include "core/memcheck.h" - -UBSvgSubsetRasterizer::UBSvgSubsetRasterizer(UBDocumentProxy* document, int pageIndex, QObject* parent) - : QObject(parent) - , mDocument(document) - , mPageIndex(pageIndex) -{ - // NOOP -} - - -UBSvgSubsetRasterizer::~UBSvgSubsetRasterizer() -{ - // NOOP -} - - -bool UBSvgSubsetRasterizer::rasterizeToFile(const QString& filename) -{ - if (QFile::exists(filename)) - { - if (!QFile::remove(filename)) - return false; - } - - UBGraphicsScene* scene = UBSvgSubsetAdaptor::loadScene(mDocument, mPageIndex); - - if (!scene) - return false; - - QRectF sceneRect = scene->normalizedSceneRect(); - - qreal width = sceneRect.width(); - qreal height = sceneRect.height(); - - QImage image(width, height, QImage::Format_ARGB32); - QRectF imageRect(0, 0, width, height); - - QPainter painter(&image); - - painter.setRenderHint(QPainter::Antialiasing, true); - painter.setRenderHint(QPainter::SmoothPixmapTransform, true); - - if (scene->isDarkBackground()) - { - painter.fillRect(imageRect, Qt::black); - } - else - { - painter.fillRect(imageRect, Qt::white); - } - - scene->setRenderingQuality(UBItem::RenderingQualityHigh); - scene->setRenderingContext(UBGraphicsScene::NonScreen); - - scene->render(&painter, imageRect, sceneRect, Qt::KeepAspectRatio); - - scene->setRenderingQuality(UBItem::RenderingQualityNormal); - scene->setRenderingContext(UBGraphicsScene::Screen); - - bool success = image.save(filename, "JPG", 100); - - delete scene; - - return success; -} diff --git a/src/adaptors/publishing/UBSvgSubsetRasterizer.h b/src/adaptors/publishing/UBSvgSubsetRasterizer.h deleted file mode 100644 index c05becac..00000000 --- a/src/adaptors/publishing/UBSvgSubsetRasterizer.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) - * - * Copyright (C) 2013 Open Education Foundation - * - * Copyright (C) 2010-2013 Groupement d'Intérêt Public pour - * l'Education Numérique en Afrique (GIP ENA) - * - * This file is part of OpenBoard. - * - * OpenBoard is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 of the License, - * with a specific linking exception for the OpenSSL project's - * "OpenSSL" library (or with modified versions of it that use the - * same license as the "OpenSSL" library). - * - * OpenBoard is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with OpenBoard. If not, see . - */ - - -#ifndef UBSVGSUBSETRASTERIZER_H_ -#define UBSVGSUBSETRASTERIZER_H_ - -#include - -class UBDocumentProxy; - -class UBSvgSubsetRasterizer : QObject -{ - Q_OBJECT; - - public: - UBSvgSubsetRasterizer(UBDocumentProxy* document, int pageIndex, QObject* parent = 0); - virtual ~UBSvgSubsetRasterizer(); - - bool rasterizeToFile(const QString& filename); - - private: - UBDocumentProxy* mDocument; - int mPageIndex; - -}; - -#endif /* UBSVGSUBSETRASTERIZER_H_ */ diff --git a/src/board/UBBoardController.cpp b/src/board/UBBoardController.cpp index c9020f4d..492170e8 100644 --- a/src/board/UBBoardController.cpp +++ b/src/board/UBBoardController.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation * diff --git a/src/core/UBApplication.cpp b/src/core/UBApplication.cpp index 29395cdd..5b7fac51 100644 --- a/src/core/UBApplication.cpp +++ b/src/core/UBApplication.cpp @@ -60,8 +60,6 @@ #include "gui/UBResources.h" #include "gui/UBThumbnailWidget.h" -#include "adaptors/publishing/UBSvgSubsetRasterizer.h" - #include "ui_mainWindow.h" #include "frameworks/UBCryptoUtils.h" diff --git a/src/core/UBDocumentManager.cpp b/src/core/UBDocumentManager.cpp index e9e70c26..ac331d94 100644 --- a/src/core/UBDocumentManager.cpp +++ b/src/core/UBDocumentManager.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation * @@ -34,7 +34,6 @@ #include "adaptors/UBExportWeb.h" #include "adaptors/UBExportCFF.h" #include "adaptors/UBExportDocumentSetAdaptor.h" -#include "adaptors/UBWebPublisher.h" #include "adaptors/UBImportDocument.h" #include "adaptors/UBImportPDF.h" #include "adaptors/UBImportImage.h" @@ -81,7 +80,7 @@ UBDocumentManager::UBDocumentManager(QObject *parent) //UBExportCFF* cffExporter = new UBExportCFF(this); UBExportFullPDF* exportFullPdf = new UBExportFullPDF(this); UBExportDocument* exportDocument = new UBExportDocument(this); - //UBWebPublisher* webPublished = new UBWebPublisher(this); + UBExportDocumentSetAdaptor *exportDocumentSet = new UBExportDocumentSetAdaptor(this); mExportAdaptors.append(exportDocument); mExportAdaptors.append(exportDocumentSet); diff --git a/src/core/UBForeignObjectsHandler.cpp b/src/core/UBForeignObjectsHandler.cpp index 404e82ec..1a439582 100644 --- a/src/core/UBForeignObjectsHandler.cpp +++ b/src/core/UBForeignObjectsHandler.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation * diff --git a/src/core/UBForeignObjectsHandler.h b/src/core/UBForeignObjectsHandler.h index 897278bf..fb03d2e3 100644 --- a/src/core/UBForeignObjectsHandler.h +++ b/src/core/UBForeignObjectsHandler.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation * diff --git a/src/core/UBPersistenceManager.cpp b/src/core/UBPersistenceManager.cpp index c5eb0dfc..4ad92a11 100644 --- a/src/core/UBPersistenceManager.cpp +++ b/src/core/UBPersistenceManager.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation * @@ -1150,7 +1150,7 @@ void UBPersistenceManager::checkIfDocumentRepositoryExists() QString humanPath = QDir::cleanPath(mDocumentRepositoryPath); humanPath = QDir::toNativeSeparators(humanPath); - UBApplication::mainWindow->warning(tr("Document Repository Loss"),tr("Sankore has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well.").arg(humanPath)); + UBApplication::mainWindow->warning(tr("Document Repository Loss"),tr("OpenBoard has lost access to the document repository '%1'. Unfortunately the application must shut down to avoid data corruption. Latest changes may be lost as well.").arg(humanPath)); UBApplication::quit(); } diff --git a/src/core/UBPersistenceManager.h b/src/core/UBPersistenceManager.h index bfb8dd7c..2f5356f3 100644 --- a/src/core/UBPersistenceManager.h +++ b/src/core/UBPersistenceManager.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation * diff --git a/src/customWidgets/UBActionableWidget.cpp b/src/customWidgets/UBActionableWidget.cpp index b7861173..18ff0f36 100644 --- a/src/customWidgets/UBActionableWidget.cpp +++ b/src/customWidgets/UBActionableWidget.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation * diff --git a/src/customWidgets/UBActionableWidget.h b/src/customWidgets/UBActionableWidget.h index 0fd24519..8f3b50c2 100644 --- a/src/customWidgets/UBActionableWidget.h +++ b/src/customWidgets/UBActionableWidget.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation * diff --git a/src/customWidgets/UBGraphicsItemAction.cpp b/src/customWidgets/UBGraphicsItemAction.cpp index 3f7fbb8e..8c2e4aac 100644 --- a/src/customWidgets/UBGraphicsItemAction.cpp +++ b/src/customWidgets/UBGraphicsItemAction.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation * diff --git a/src/customWidgets/UBGraphicsItemAction.h b/src/customWidgets/UBGraphicsItemAction.h index 22f9cf2f..479ecfe4 100644 --- a/src/customWidgets/UBGraphicsItemAction.h +++ b/src/customWidgets/UBGraphicsItemAction.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation * diff --git a/src/customWidgets/UBMediaWidget.cpp b/src/customWidgets/UBMediaWidget.cpp index 67140280..ef9f78b2 100644 --- a/src/customWidgets/UBMediaWidget.cpp +++ b/src/customWidgets/UBMediaWidget.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation * diff --git a/src/customWidgets/UBMediaWidget.h b/src/customWidgets/UBMediaWidget.h index 81e965b0..2609471e 100644 --- a/src/customWidgets/UBMediaWidget.h +++ b/src/customWidgets/UBMediaWidget.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation * diff --git a/src/document/UBDocumentController.cpp b/src/document/UBDocumentController.cpp index c93f0f13..f1e9cbfa 100644 --- a/src/document/UBDocumentController.cpp +++ b/src/document/UBDocumentController.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation * diff --git a/src/document/UBDocumentController.h b/src/document/UBDocumentController.h index 7f14f895..7770a81b 100644 --- a/src/document/UBDocumentController.h +++ b/src/document/UBDocumentController.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation * diff --git a/src/gui/UBOpenSankoreImporterWidget.cpp b/src/gui/UBOpenSankoreImporterWidget.cpp index fcb1f395..f066e81b 100644 --- a/src/gui/UBOpenSankoreImporterWidget.cpp +++ b/src/gui/UBOpenSankoreImporterWidget.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015-2016 Département de l'Instruction Publique (DIP-SEM) + * Copyright (C) 2015-2018 Département de l'Instruction Publique (DIP-SEM) * * Copyright (C) 2013 Open Education Foundation *