* all .ui files go from <interface> to <interface domain="MODULE"> e.g. vcl
* all .src files go away and the english source strings folded into the .hrc as NC_("context", "source string")
* ResMgr is dropped in favour of std::locale imbued by boost::locale::generator pointed at matching
MODULE .mo files
* UIConfig translations are folded into the module .mo, so e.g. UIConfig_cui
goes from l10n target to normal one, so the res/lang.zips of UI files go away
* translation via Translation::get(hrc-define-key, imbued-std::locale)
* python can now be translated with its inbuilt gettext support (we keep the name strings.hrc there
to keep finding the .hrc file uniform) so magic numbers can go away there
* java and starbasic components can be translated via the pre-existing css.resource.StringResourceWithLocation
mechanism
* en-US res files go away, their strings are now the .hrc keys in the source code
* remaining .res files are replaced by .mo files
* in .res/.ui-lang-zip files, the old scheme missing translations of strings
results in inserting the english original so something can be found, now the
standard fallback of using the english original from the source key is used, so
partial translations shrink dramatically in size
* extract .hrc strings with hrcex which backs onto
xgettext -C --add-comments --keyword=NC_:1c,2 --from-code=UTF-8 --no-wrap
* extract .ui strings with uiex which backs onto
xgettext --add-comments --no-wrap
* qtz for gettext translations is generated at runtime as ascii-ified crc32 of
content + "|" + msgid
* [API CHANGE] remove deprecated binary .res resouce loader related uno apis
com::sun:⭐:resource::OfficeResourceLoader
com::sun:⭐:resource::XResourceBundleLoader
com::sun:⭐:resource::XResourceBundle
when translating strings via uno apis
com.sun.star.resource.StringResourceWithLocation
can continue to be used
Change-Id: Ia2594a2672b7301d9c3421fdf31b6cfe7f3f8d0a
std::unary_function is deprecated since C++11 and removed in C++17
90% done with regexp magic.
removed obsolete <functional> includes.
The std::unary_function base class was used in 3 places:
* chart2/source/tools/DataSeriesHelper.cxx: lcl_MatchesRole
is used in a std::not1 function helper who uses the members
return_type and argument_type.
- replace deprecated std::not1 with a lambda
* chart2/source/tools/ModifyListenerHelper.cxx:
lcl_weakReferenceToSame used the argument_type member in the
operator() parameter.
- inline the parameter type.
* xmloff/source/chart/SchXMLExport.cxx: lcl_SequenceToMapElement
used result_type and argument_type in operator().
- inline the types
Also fix compile error with gcc about finding std::for_each.
Change-Id: I073673beb01410c3108e7d0346d9e7d6b9ad2e2f
Reviewed-on: https://gerrit.libreoffice.org/39358
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Tested-by: Stephan Bergmann <sbergman@redhat.com>
Instead, use FormulaTokenArrrayPlainIterator everywhere, especially in
the FormulaCompiler.
This is the final step of a long chain of commits. (Split up into many
"uncontroversial" bits, and then this, to make potential bisecting
easier.)
Also added a logging operator<< for FormulaTokenArray, for SAL_DEBUG,
SAL_INFO etc goodness.
Change-Id: I02fe29f3f1e0dc33e5cba69e594223b4178a12bc
Reviewed-on: https://gerrit.libreoffice.org/38851
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tor Lillqvist <tml@collabora.com>
which are exactly the same as the regular SCROW/etc typedefs, and have
been this way since
commit 43a21999a9
Author: Oliver Bolte <obo@openoffice.org>
Date: Fri Jun 4 09:00:39 2004 +0000
INTEGRATION: CWS rowlimit (1.1.2); FILE ADDED
Change-Id: Ia7f75d71227ca3167b5fd56019bb9bdf0697d1b0
Reviewed-on: https://gerrit.libreoffice.org/37911
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Eike Rathke <erack@redhat.com>
Otherwise mxSymbols is null, which is rather unexpected as the past has shown,
see commit 63843a9726
Change-Id: Id4c13a5f50e711513a71a7d6cd6f87b4112b1f1d
... instead of twice the same name. Even if not handled yet in Calc, external
3D references may get imported and have to be written again.
Copy&Paste error since 2f373570c5
Change-Id: I6cb982793e1072d619053c02860a8046e78bc99e
Excel expects '[1]Sheet Name' instead of [1]'Sheet Name' and complains if it
encounters the latter.
Fortunately Calc handles both.
Change-Id: If1129e58725b522ca4755c05e313c03fca065f28
For instance, column / row label tokens don't work correctly in
grouped cells with the current implementation.
Change-Id: Idf86312ef15fbfd4382aa90ee6d131c671a80683
... when handling name token. This can happen when importing BIFF .xls and the
original range is not present in the document. The document is broken, but such
formula can continue to work if the range expression was not actually executed,
for example IF(TRUE(),then_good,else_bad_range) where else_bad_range is #NAME?
error.
Change-Id: I823ac89115418cf5069b2baf5c5de2c814319ae7
Speedup of this particular function and callees by factor 33 ...
1000 calls for =12345.6789 and =123.456 alternating:
Before:
Ir Irpc Callee
9859177 9859 ScCompiler::IsValue
6246858 6246 SvNumberFormatter::IsNumberFormat
3496261 3496 SvNumberFormatter::GetStandardIndex
After:
298000 298 ScCompiler::IsValue
248000 248 rtl_math_uStringToDouble
Change-Id: I36eac8c5fe1b1cbf34dfb480c9e7ca6607769364
...which makes it more flexible, can now also be used on non-const arguments.
The drawback of the argument no longer being a compile-time constant is remedied
by making the ctor constexpr.
Change-Id: Ia4903a2cc86791fece92eac0cb8406b6659dd19d
This silences the SAL_WARN_IF like
warn:formula.core:6944:1:formula/source/core/api/FormulaCompiler.cxx:625:
OpCodeMap::putOpCode: reusing OpCode 161,
replacing '_xlfn.ORG.OPENOFFICE.ERRORTYPE' with 'ERRORTYPE'
in English map 0x1018000
that occurred during the first load of OOXML .xlsx documents since the
old bad entries were added with commit
89c4a69103
In fact the direction opcode -> string was replaced, which it should had
not. That specific mapping is only used though when loading msoxl
namespace formulas from ODF.
Also, the replacement of parameter separator and array column and row
separator worked merely by chance, depending on in which order the
entries where inserted to the hash map. Fixed along as it popped up with
the new handling.
Change-Id: I88017a8b38ccc30874c3dca7d78f0fa47a77a36f
MULTIRANGE, GOALSEEK, EASTERSUNDAY, CURRENT and STYLE are LibreOffice /
OpenOffice.org only and need a _xlfn.ORG.OPENOFFICE. prefix and namespace when
saved to OOXML.
Change-Id: Ie5d4eb14b1ec958f9ebec5f149d0d1d7b4dd644e
Was wrongly saved as ERRORTYPE without _xlfn. prefix and namespace.
Be able to still read ERRORTYPE.
Change-Id: Ia028fe06d930f60b4260adf589ee3190b90ea099
... and let the interpreter decide about validity. Only if at least two
parameters are given, empty/omitted or not.
Change-Id: I2d7070e56f616b1940ff577c43e257eabb81b412