Restore translations dir (required by release configure)

NGL_ADD_SUBDIR_GUARDED gates on MIGRATE_MODULE, not directory
existence: with MIGRATE_MODULE empty (the release build path) the
unconditional add_subdirectory(translations) fails when the directory
is missing. It is a configure requirement like tests/ and doxygen/
(no .qm output reaches the DEB packages).
This commit is contained in:
berrux-dev committed 2026-10-13 18:38:58 +02:00
1 parent 8b3306732d
commit eb4d067365
8 files changed
+165160

No files matched your search

@@ -0,0 +1,107 @@
#
# Erzeugung / Update der ts & qm-Dateien
# Qt6 Migration: Qt6::lupdate → Qt6::lupdate, PythonInterp → Python3
#
SET(_pri_dir "${CMAKE_BINARY_DIR}/translations/")
IF(BUILD_TS_FILES)
GET_PROPERTY(_targets GLOBAL PROPERTY NGL_TS_TARGETS)
# MESSAGE(STATUS "translation targets: ${_targets}")
# make sure to not have old .pri files ...
FILE(GLOB _pri_files_to_remove LIST_DIRECTORIES false "${_pri_dir}*.pri")
IF (_pri_files_to_remove)
FILE(REMOVE ${_pri_files_to_remove})
ENDIF()
FOREACH(_target ${_targets})
GET_TARGET_PROPERTY(_no_translation ${_target} NO_TRANSLATION)
IF(_no_translation)
CONTINUE()
ENDIF()
GET_TARGET_PROPERTY(_src_dir ${_target} SOURCE_DIR)
GET_TARGET_PROPERTY(_bin_dir ${_target} BINARY_DIR)
# build up sources
GET_TARGET_PROPERTY(_all_sources ${_target} SOURCES)
SET(_ts_sources "")
FOREACH(_source ${_all_sources})
GET_FILENAME_COMPONENT(_ext ${_source} EXT)
IF(_ext STREQUAL ".cpp" OR
_ext STREQUAL ".hpp" OR
_ext STREQUAL ".c" OR
_ext STREQUAL ".h" OR
_ext STREQUAL ".ui")
GET_FILENAME_COMPONENT(_name ${_source} NAME_WE)
IF(NOT _name MATCHES "^moc_.*$" AND
NOT _name MATCHES "^ui_.*h$")
IF(IS_ABSOLUTE ${_source})
LIST(APPEND _ts_sources ${_source})
ELSE()
GET_FILENAME_COMPONENT(_abs_FILE ${_src_dir}/${_source} ABSOLUTE)
IF(EXISTS ${_abs_FILE})
LIST(APPEND _ts_sources ${_abs_FILE})
ELSE()
GET_FILENAME_COMPONENT(_abs_FILE ${_bin_dir}/${_source} ABSOLUTE)
IF(EXISTS ${_abs_FILE})
LIST(APPEND _ts_sources ${_abs_FILE})
ELSE()
MESSAGE(STATUS "Can not find absolute location of source file '${_source}")
ENDIF()
ENDIF()
ENDIF()
ENDIF()
ENDIF()
ENDFOREACH()
LIST(LENGTH _ts_sources _len)
IF(${_len} GREATER 0)
SET(_ts_pri ${_pri_dir}${_target}_lupdate.pri)
STRING(REPLACE ";" " " _pro_srcs "${_ts_sources}")
FILE(WRITE "${_ts_pri}" "SOURCES += ${_pro_srcs}")
ENDIF()
ENDFOREACH()
MACRO(TDS_GENERATE_TS_FILES _language)
FIND_PACKAGE(Python3 REQUIRED)
SET(_pro_file ${CMAKE_CURRENT_BINARY_DIR}/tds_${_language}.pro)
SET(_ts_file ${CMAKE_CURRENT_SOURCE_DIR}/tds_${_language}.ts)
FILE(GLOB _pri_files ${CMAKE_CURRENT_BINARY_DIR} "*.pri")
ADD_CUSTOM_COMMAND(OUTPUT ${_pro_file}
COMMAND Python3::Interpreter
ARGS ${CMAKE_CURRENT_SOURCE_DIR}/create_ts_pro.py ${CMAKE_CURRENT_BINARY_DIR} ${_pro_file} ${_targets_to_ignore}
DEPENDS ${_pri_files} create_ts_pro.py
)
#SET(_lupdate_options -target-language ${_language} -locations absolute -tr-function-alias QT_TRANSLATE_NOOP+=tr_lts -no-obsolete)
SET(_lupdate_options -target-language ${_language} -locations absolute -tr-function-alias QT_TRANSLATE_NOOP+=tr_lts)
ADD_CUSTOM_TARGET(update_ts_${_language}
COMMAND Qt6::lupdate ${_lupdate_options} ${_pro_file} -ts ${_ts_file}
DEPENDS ${_pro_file}
)
ENDMACRO(TDS_GENERATE_TS_FILES)
TDS_GENERATE_TS_FILES(en_US)
TDS_GENERATE_TS_FILES(en_GB)
TDS_GENERATE_TS_FILES(de_DE)
ENDIF()
MACRO(TDS_INSTALL_TRANSLATION _language _project)
SET(_ts_file ${CMAKE_CURRENT_SOURCE_DIR}/${_project}_${_language}.ts)
SET(_qm_files)
NGL_ADD_TRANSLATION(${_pri_dir}${_language} ${_project} ${_ts_file} _qm_files)
NGL_INSTALL(ALL FILES ${_qm_files} DESTINATION translations/${_language})
ADD_CUSTOM_TARGET(${_project}-translation-${_language} ALL DEPENDS ${_qm_files})
ENDMACRO()
# TDS_INSTALL_TRANSLATION Aufrufe暂时 kommentiert - NGL_INSTALL Signaturen müssen angepasst werden
# TDS_INSTALL_TRANSLATION(en_US tds)
# TDS_INSTALL_TRANSLATION(en_GB tds)
# TDS_INSTALL_TRANSLATION(de_DE tds)
# TDS_INSTALL_TRANSLATION(en_US kdreports)
# TDS_INSTALL_TRANSLATION(en_GB kdreports)
# TDS_INSTALL_TRANSLATION(de_DE kdreports)
@@ -0,0 +1,47 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
#
# $Revision$
# $Date$
# $Id$
import os
import sys
import datetime
def main():
if len(sys.argv) < 3:
print >> sys.stderr, "Usage: %s <directory with pri-files> <pro-file> <ignored targets>" % sys.argv[0]
sys.exit(1)
path = sys.argv[1]
out = sys.argv[2]
# print "args: %s" % sys.argv[4:]
if not os.path.isdir(path):
print >> sys.stderr, "%s is not a directory" % path
sys.exit(2)
ignored_tgts = []
for ignored in sys.argv[4:]:
ignored_tgts.append(ignored)
tsfiles = []
dirList = os.listdir(path)
for fname in dirList:
if not fname.endswith(".pri"):
continue
if fname in ignored_tgts:
continue
tsfiles.append(fname)
with open(out, "w") as outfile:
now = datetime.datetime.now()
print >> outfile, '#'
print >> outfile, '# generated by %s at %s' % ( sys.argv[0], now.strftime("%Y-%m-%d %H:%M:%S") )
print >> outfile, '#'
for tsfile in sorted(tsfiles):
print >> outfile, 'include("%s")' % tsfile
if __name__ == "__main__":
main()
@@ -0,0 +1,449 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="de_DE">
<context>
<name>KDReports::PreviewDialog</name>
<message>
<location filename="../src/KDReports/KDReportsPreviewDialog.cpp" line="78"/>
<source>&amp;Print...</source>
<translation>&amp;Drucken...</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewDialog.cpp" line="85"/>
<source>&amp;Save...</source>
<translation>&amp;Speichern...</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewDialog.cpp" line="89"/>
<source>Cancel</source>
<translation>Beenden</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewDialog.cpp" line="108"/>
<source>Print &amp;with %1</source>
<translation>Drucken &amp;mit %1</translation>
</message>
</context>
<context>
<name>KDReports::PreviewDialogPrivate</name>
<message>
<location filename="../src/KDReports/KDReportsPreviewDialog.cpp" line="161"/>
<location filename="../src/KDReports/KDReportsPreviewDialog.cpp" line="166"/>
<source>Save Report as PDF</source>
<translation>Speichern als PDF</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewDialog.cpp" line="161"/>
<source>PDF Files (*.pdf)</source>
<translation>PDF Dateien (*.pdf)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewDialog.cpp" line="165"/>
<source>Saving as PDF in %1
Enter the file name:</source>
<translation>Als PDF speichern %1
Dateiname eingeben:</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewDialog.cpp" line="175"/>
<source>%1 already exists. Do you want to replace it?</source>
<translation>%1 existiert bereits. Möchten Sie die Datei überschreiben?</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewDialog.cpp" line="176"/>
<source>Overwrite?</source>
<translation>Überschreiben?</translation>
</message>
</context>
<context>
<name>KDReports::PreviewWidgetPrivate</name>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="276"/>
<source>A0 (841 x 1189 mm)</source>
<translation>A0 (841 x 1189 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="277"/>
<source>A1 (594 x 841 mm)</source>
<translation>A1 (594 x 841 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="278"/>
<source>A2 (420 x 594 mm)</source>
<translation>A2 (420 x 594 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="279"/>
<source>A3 (297 x 420 mm)</source>
<translation>A3 (297 x 420 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="280"/>
<source>A4 (210 x 297 mm)</source>
<translation>A4 (210 x 297 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="281"/>
<source>A5 (148 x 210 mm)</source>
<translation>A4 (210 x 297 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="282"/>
<source>A6 (105 x 148 mm)</source>
<translation>A4 (210 x 297 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="283"/>
<source>A7 (74 x 105 mm)</source>
<translation>A4 (210 x 297 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="284"/>
<source>A8 (52 x 74 mm)</source>
<translation>A4 (210 x 297 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="286"/>
<source>B0 (1000 x 1414 mm)</source>
<translation>B0 (1000 x 1414 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="287"/>
<source>B1 (707 x 1000 mm)</source>
<translation>B0 (1000 x 1414 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="288"/>
<source>B2 (500 x 707 mm)</source>
<translation>B0 (1000 x 1414 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="289"/>
<source>B3 (353 x 500 mm)</source>
<translation>B0 (1000 x 1414 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="290"/>
<source>B4 (250 x 353 mm)</source>
<translation>B4 (250 x 353 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="291"/>
<source>B5 (176 x 250 mm)</source>
<translation>B5 (176 x 250 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="292"/>
<source>B6 (125 x 176 mm)</source>
<translation>B5 (176 x 250 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="293"/>
<source>B7 (88 x 125 mm)</source>
<translation>B7 (88 x 125 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="294"/>
<source>B8 (62 x 88 mm)</source>
<translation>B8 (62 x 88 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="297"/>
<source>C5E (163 x 229 mm)</source>
<translation>C5E (163 x 229 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="298"/>
<source>DLE (110 x 220 mm)</source>
<translation>DLE (110 x 220 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="299"/>
<source>Executive (7.5 x 10 inches)</source>
<translation>Executive (7.5 x 10 inches)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="300"/>
<source>Folio (210 x 330 mm)</source>
<translation>Folio (210 x 330 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="301"/>
<source>Ledger (432 x 279 mm)</source>
<translation>Ledger (432 x 279 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="302"/>
<source>Legal (8.5 x 14 inches)</source>
<translation>Legal (8.5 x 14 inches)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="303"/>
<source>Letter (8.5 x 11 inches)</source>
<translation>Brief (8.5 x 11 inches)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="304"/>
<source>Tabloid (279 x 432 mm)</source>
<translation>Tabloid (279 x 432 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="305"/>
<source>US #10 Envelope (105 x 241 mm)</source>
<translation>US #10 Briefumschlag (105 x 241 mm)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="306"/>
<source>Endless printer (%1 mm wide)</source>
<translation>Endlos Drucker (%1 mm breit)</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="308"/>
<source>Portrait</source>
<translation>Hochformat</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="309"/>
<source>Landscape</source>
<translation>Querformat</translation>
</message>
</context>
<context>
<name>PreviewWidgetBase</name>
<message>
<location filename="../src/KDReports/previewdialogbase.ui" line="14"/>
<source>Print Preview</source>
<translation>Druckvorschau</translation>
</message>
<message>
<location filename="../src/KDReports/previewdialogbase.ui" line="35"/>
<source>First Page</source>
<translation>Erste Seite</translation>
</message>
<message>
<location filename="../src/KDReports/previewdialogbase.ui" line="38"/>
<source>Goes to the first page</source>
<translation>Gehe zur ersten Seite</translation>
</message>
<message>
<location filename="../src/KDReports/previewdialogbase.ui" line="41"/>
<location filename="../src/KDReports/previewdialogbase.ui" line="67"/>
<location filename="../src/KDReports/previewdialogbase.ui" line="113"/>
<location filename="../src/KDReports/previewdialogbase.ui" line="139"/>
<location filename="../src/KDReports/previewdialogbase.ui" line="172"/>
<location filename="../src/KDReports/previewdialogbase.ui" line="195"/>
<source>...</source>
<translation>...</translation>
</message>
<message>
<location filename="../src/KDReports/previewdialogbase.ui" line="61"/>
<source>Previous Page</source>
<translation>Vorherige Seite</translation>
</message>
<message>
<location filename="../src/KDReports/previewdialogbase.ui" line="64"/>
<source>Goes to the previous page</source>
<translation>Gehe zur vorherigen Seite</translation>
</message>
<message>
<location filename="../src/KDReports/previewdialogbase.ui" line="87"/>
<source>1</source>
<translation>1</translation>
</message>
<message>
<location filename="../src/KDReports/previewdialogbase.ui" line="100"/>
<source>/ 10</source>
<translation>/ 10</translation>
</message>
<message>
<location filename="../src/KDReports/previewdialogbase.ui" line="107"/>
<source>Next Page</source>
<translation>Nächste Seite</translation>
</message>
<message>
<location filename="../src/KDReports/previewdialogbase.ui" line="110"/>
<source>Goes to the next page</source>
<translation>Gehe zur nächsten Seite</translation>
</message>
<message>
<location filename="../src/KDReports/previewdialogbase.ui" line="133"/>
<source>Last Page</source>
<translation>Letzte Seite</translation>
</message>
<message>
<location filename="../src/KDReports/previewdialogbase.ui" line="136"/>
<source>Goes to the last page</source>
<translation>Gehe zur letzten Seite</translation>
</message>
<message>
<location filename="../src/KDReports/previewdialogbase.ui" line="228"/>
<source>&amp;Paper Size:</source>
<translation>&amp;Papiergröße:</translation>
</message>
<message>
<location filename="../src/KDReports/previewdialogbase.ui" line="248"/>
<source>&amp;Orientation:</source>
<translation>&amp;Ausrichtung:</translation>
</message>
<message>
<location filename="../src/KDReports/previewdialogbase.ui" line="281"/>
<source>Table Settings / Font Scaling...</source>
<translation>Tabellen Einstellungen / Schriftart skalieren...</translation>
</message>
</context>
<context>
<name>QObject</name>
<message>
<location filename="../src/KDReports/KDReportsErrorDetails.cpp" line="45"/>
<source>Error on line %1, column %2: %3</source>
<translation>Fehler in Zeile: %1, Spalte: %2: %3</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="245"/>
<location filename="../src/KDReports/KDReportsReport.cpp" line="403"/>
<source>Printing</source>
<translation>Drucken</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsPreviewWidget.cpp" line="245"/>
<location filename="../src/KDReports/KDReportsReport.cpp" line="403"/>
<source>Cancel</source>
<translation>Beenden</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsXmlParser.cpp" line="163"/>
<source>Expected &quot;&lt;report&gt;&quot; as the topmost element, but found &quot;&lt;%1&gt;&quot;</source>
<translation>Erwarte &quot;&lt;report&gt;&quot; als oberste ebene Element, aber &quot;&lt;%1&gt;&quot; gefunden</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsXmlParser.cpp" line="226"/>
<source>&lt;%1&gt; is only supported in WordProcessing mode</source>
<translation>&lt;%1&gt; erlaubt nur in WordProcessing Mode</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsXmlParser.cpp" line="310"/>
<source>&lt;text&gt; is only supported in WordProcessing mode</source>
<translation>&lt;text&gt; erlaubt nur in WordProcessing Mode</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsXmlParser.cpp" line="352"/>
<source>&lt;tabs&gt; is only supported in WordProcessing mode</source>
<translation>&lt;tabs&gt; erlaubt nur in WordProcessing Mode</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsXmlParser.cpp" line="360"/>
<source>&lt;paragraph-margins&gt; is only supported in WordProcessing mode</source>
<translation>&lt;paragraph-margins&gt; erlaubt nur in WordProcessing Mode</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsXmlParser.cpp" line="380"/>
<source>&lt;vspace&gt; is only supported in WordProcessing mode</source>
<translation>&lt;vspace&gt; erlaubt nur in WordProcessing Mode</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsXmlParser.cpp" line="383"/>
<source>&lt;vspace&gt; not allowed in headers, footers, or table cells</source>
<translation>&lt;vspace&gt; nich erlaubt in Kopfzeilen, Fußzeilen oder Tabellenzellen</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsXmlParser.cpp" line="396"/>
<source>&lt;table&gt; without a model is only supported in WordProcessing mode</source>
<translation>&lt;table&gt; ohne Model erlaubt nur in WordProcessing Mode</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsXmlParser.cpp" line="522"/>
<source>&lt;variable&gt; tags only allowed in headers and footers</source>
<translation>&lt;variable&gt; tags nur in Kopfzeilen und Fußzeilen erlaubt</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsXmlParser.cpp" line="526"/>
<source>&lt;variable&gt; tags must have a &apos;type&apos; attribute</source>
<translation>&lt;variable&gt; tags muss ein &apos;type&apos; Attribut haben</translation>
</message>
<message>
<location filename="../src/KDReports/KDReportsXmlParser.cpp" line="583"/>
<source>KDReports::Report::loadFromXML(): Unknown element %1</source>
<translation>KDReports::Report::loadFromXML(): Unbekanntes Element %1</translation>
</message>
</context>
<context>
<name>TableBreakingSettingsDialog</name>
<message>
<location filename="../src/KDReports/tablebreakingdialogbase.ui" line="13"/>
<source>Table Breaking / Font Scaling</source>
<translation>Tabellenumbruch / Schriftart skalieren</translation>
</message>
<message>
<location filename="../src/KDReports/tablebreakingdialogbase.ui" line="19"/>
<source>&amp;Break tables over multiple pages in the horizontal direction</source>
<translation>&amp;Tabellenumbruch über mehrere Seiten an horizontale Ausrichtung</translation>
</message>
<message>
<location filename="../src/KDReports/tablebreakingdialogbase.ui" line="26"/>
<source>Font scaling</source>
<translation>Schriftart skalieren</translation>
</message>
<message>
<location filename="../src/KDReports/tablebreakingdialogbase.ui" line="32"/>
<source>Scale &amp;fonts by</source>
<translation>&amp;Schriftart skalieren um</translation>
</message>
<message>
<location filename="../src/KDReports/tablebreakingdialogbase.ui" line="39"/>
<source>%</source>
<translation>%</translation>
</message>
<message>
<location filename="../src/KDReports/tablebreakingdialogbase.ui" line="55"/>
<source>&amp;Scale to fit</source>
<translation>&amp;Anpassen</translation>
</message>
<message>
<location filename="../src/KDReports/tablebreakingdialogbase.ui" line="72"/>
<source>page(s) wide</source>
<translation>Seitenbreite</translation>
</message>
<message>
<location filename="../src/KDReports/tablebreakingdialogbase.ui" line="89"/>
<source>page(s) high</source>
<translation>Seitenhöhe</translation>
</message>
<message>
<location filename="../src/KDReports/tablebreakingdialogbase.ui" line="99"/>
<source>Page order for table breaking</source>
<translation>Seitenreihenfolge für Tabellenumbruch</translation>
</message>
<message>
<location filename="../src/KDReports/tablebreakingdialogbase.ui" line="105"/>
<source>Page &amp;down, then to right</source>
<translation>Seite &amp;unten, dann nach rechts</translation>
</message>
<message>
<location filename="../src/KDReports/tablebreakingdialogbase.ui" line="112"/>
<source>Page to &amp;right, then down</source>
<translation>Seite nach &amp;rechts, dann unten</translation>
</message>
<message>
<location filename="../src/KDReports/tablebreakingdialogbase.ui" line="122"/>
<source>Table settings</source>
<translation>Tabelle Einstellungen</translation>
</message>
<message>
<location filename="../src/KDReports/tablebreakingdialogbase.ui" line="128"/>
<source>Show &amp;horizontal header</source>
<translation>&amp;Horizontal Kopfzeile anzeigen</translation>
</message>
<message>
<location filename="../src/KDReports/tablebreakingdialogbase.ui" line="135"/>
<source>Show &amp;vertical header</source>
<translation>&amp;Vertikal Kopfzeile anzeigen</translation>
</message>
<message>
<location filename="../src/KDReports/tablebreakingdialogbase.ui" line="142"/>
<source>Show &amp;grid</source>
<translation>&amp;Raster anzeigen</translation>
</message>
</context>
</TS>
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="en_GB">
<context>
</context>
</TS>
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="en_US">
<context>
</context>
</TS>
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff