Vinaya Mandke wrote:
I am a trainee and have been assigned a project to debug and correct one bug of LiBo.
Hi Vinaya, this is cool - great to have you looking into that!
As of now I have identified this much:- - Comments folder with comment1.xml , CommentAuthors are getting created in the PPTx So this is an FileOpen issue - I have also identified that pptx opens and is handled from ../oox/source/ppt/presentationfragmenthandler.cxx (finalizeimport) - There are handlers for Notes, Layouts etc but none for Annotations.
Yeah, that sounds about right.
- Furthermore I have also identified that Annotations are considered as smarttags and are not exactly treated as part of the Presentation and hence have no data structures in the SlidePersistPtr
I think this is rather missing than intended -
As of now I can identify whether a slide has a comment in it or not using following in presentationfragmenthandler.cxx (finalizeimport) :- OUString aCommentFragmentPath = xSlideFragmentHandler->getFragmentPathFromFirstType( CREATE_OFFICEDOC_RELATION_TYPE( "comment" ) ); if ( !aCommentFragmentPath.isEmpty() ) { ... //comment present }
Yeps.
Furthermore:- - ../sd/source/core/annotations have a few incomplete implementations for the Annotations (Annotations.cxx AnnotationAccess.cxx etc) - In presentationfragmenthandler there needs to another handler for comments but I am stuck on how this can be implemented.
I think the implementation in sd is complete enough to have export working - at least the ODF export seems to use it, check xmloff/source/draw/sdxmlexp.cxx's SdXMLExport::exportAnnotations().
So can you please guide how should I go about solving this issue ?
I did not look too deep just yet, but maybe the above ptr could get you started? Indeed you'd need to implement your own fragment handler, best start with a smaller blueprint like LayoutFragmentHandler and add all needed tokens that you'll want to consume. HTH, -- Thorsten
Attachment:
signature.asc
Description: Digital signature