Date: prev next · Thread: first prev next last


Hello Andrew,

I am sorry, I was travelling the past week but now took a quick look into
the last Simple API by checking out 0.9.0

*git checkout v0.9.0*

I have found the Simple API functionality here:
https://github.com/tdf/odftoolkit/tree/0.9/simple/src/main/java/org/odftoolkit/simple/common/field

I took one field, like
https://github.com/tdf/odftoolkit/blob/0.9/simple/src/main/java/org/odftoolkit/simple/common/field/TimeField.java
searched for the ODF XML in the ODFDOM and grepped for further dependencies
Found the ODF XML
https://tdf.github.io/odftoolkit/odf1.3/OpenDocument-v1.3-reference.html#element_text:time_1

In ODFDOM I have found three places where former colleagues from
Open-XChange added some Field functionality:
I wonder how it fits in there and how to bring it together:

   1.
   
https://github.com/tdf/odftoolkit/blob/master/odfdom/src/main/java/org/odftoolkit/odfdom/changes/FieldMap.java
   2.
   
https://github.com/tdf/odftoolkit/blob/master/odfdom/src/main/java/org/odftoolkit/odfdom/changes/TextFieldSelection.java
   The selection is something similar to a span.
   3.
   
https://github.com/tdf/odftoolkit/blob/master/odfdom/src/main/java/org/odftoolkit/odfdom/changes/JsonOperationConsumer.java
   The JSON Consumer is the reader of JSON changes

I do not think we have this functionality in ODFDOM and it makes sense
to copy functionality from Simple API to ODFDOM.
So most of it works on its own and we might copy the whole package to the
ODF Toolkit - perhaps adding a field package beyond
https://github.com/tdf/odftoolkit/tree/master/odfdom/src/main/java/org/odftoolkit/odfdom/doc

Looking at the imports of
https://github.com/tdf/odftoolkit/blob/0.9/simple/src/main/java/org/odftoolkit/simple/common/field/TimeField.java
there are close to no dependencies to Simple API.
But there is
https://github.com/tdf/odftoolkit/blob/0.9/simple/src/main/java/org/odftoolkit/simple/common/field/TimeField.java#L36
import org.odftoolkit.simple.Component;
This is likely the mapping between XML syntax and semantic puzzle pieces -
if so how do we basically want to solve this in the ODFDOM - we had
resolved earlier for table in our ODFDOM
https://github.com/tdf/odftoolkit/pull/197/files
If we need a mapping from XML objects to high level semantic objects we
might as well place such a map at the each document (but I am open and
curious for any pro/con here).
Discussed this already briefly with Michael (on CC).

Does this answer your question, Andrew?

Otherwise, let's enhance the answer in this thread.

Best regards,
Svante


Am Di., 16. Mai 2023 um 20:12 Uhr schrieb Andrew Willerding <
awillerding@callistacti.com>:

Hi,

I'm trying to migrate off of the deprecated SimpleAPI and I've been able
to convert most of my code over however I can't find a way to manipulate
Fields and Variable Fields like the examples below

https://odftoolkit.org/simple/demo/demo7.html

or

https://tdf.github.io/odftoolkit/simple/document/cookbook/Fields.html


Mr. Google is not revealing anything that is not based on the SimpleAPI.

Does anyone have any code examples or can point me in the direction I
can get and set Fields? It's probably obvious which is why I'm missing
it. ;-)

Thanks!

Andrew


--
To unsubscribe e-mail to: dev+unsubscribe@odftoolkit.org
Problems?
https://www.libreoffice.org/get-help/mailing-lists/how-to-unsubscribe/
Posting guidelines + more: https://wiki.documentfoundation.org/Netiquette
List archive: https://listarchives.odftoolkit.org/dev/
Privacy Policy: https://www.documentfoundation.org/privacy


-- 
To unsubscribe e-mail to: dev+unsubscribe@odftoolkit.org
Problems? https://www.libreoffice.org/get-help/mailing-lists/how-to-unsubscribe/
Posting guidelines + more: https://wiki.documentfoundation.org/Netiquette
List archive: https://listarchives.odftoolkit.org/dev/
Privacy Policy: https://www.documentfoundation.org/privacy

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.