You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@royale.apache.org by Yishay Weiss <yi...@hotmail.com> on 2021/02/17 10:30:27 UTC
TLF APIs Effort Estimate
Hi All,
The app I am porting makes extensive use of some TLF APIs. Re-implementing everything differently will be difficult so I am trying to estimate the work involved in actually making the below APIs work. If anyone (prbly Harbs and Alex) has time to have a quick glance and help me asses the work involved, I would be grateful.
Thanks,
Yishay
flashx.textLayout.container.ContainerController,3
flashx.textLayout.container.ContainerController:compositionHeight,3
flashx.textLayout.container.ContainerController:getContentBounds,1
flashx.textLayout.container.ContainerController:setCompositionSize,1
flashx.textLayout.container.ContainerController:verticalScrollPosition,4
flashx.textLayout.conversion.ConversionType,7
flashx.textLayout.conversion.ConversionType:STRING_TYPE,2
flashx.textLayout.conversion.ConversionType:XML_TYPE,5
flashx.textLayout.conversion.TextConverter,18
flashx.textLayout.conversion.TextConverter:TEXT_LAYOUT_FORMAT,9
flashx.textLayout.conversion.TextConverter:export,7
flashx.textLayout.conversion.TextConverter:importToFlow,2
flashx.textLayout.edit.EditManager,3
flashx.textLayout.edit.EditManager:applyFormat,2
flashx.textLayout.edit.EditManager:applyFormatToElement,2
flashx.textLayout.edit.EditManager:applyLink,2
flashx.textLayout.edit.EditManager:applyParagraphFormat,2
flashx.textLayout.edit.EditManager:insertInlineGraphic,1
flashx.textLayout.edit.EditManager:keyDownHandler,1
flashx.textLayout.edit.EditManager:keyUpHandler,1
flashx.textLayout.edit.EditManager:textFlow,1
flashx.textLayout.edit.EditManager:undoManager,1
flashx.textLayout.edit.ElementRange,4
flashx.textLayout.edit.ElementRange:createElementRange,1
flashx.textLayout.edit.ElementRange:textFlow,1
flashx.textLayout.edit.IEditManager,12
flashx.textLayout.edit.SelectionManager:activePosition,2
flashx.textLayout.edit.SelectionManager:anchorPosition,1
flashx.textLayout.edit.SelectionManager:getCommonCharacterFormat,1
flashx.textLayout.edit.SelectionManager:getSelectionState,12
flashx.textLayout.edit.SelectionState,12
flashx.textLayout.edit.SelectionState:absoluteEnd,3
flashx.textLayout.edit.SelectionState:absoluteStart,3
flashx.textLayout.edit.TextFlowEdit,2
flashx.textLayout.edit.TextFlowEdit:makeLink,1
flashx.textLayout.edit.TextFlowEdit:removeLink,1
flashx.textLayout.edit.TextScrap:textFlow,1
flashx.textLayout.elements.DivElement,93
flashx.textLayout.elements.DivElement:addChild,11
flashx.textLayout.elements.DivElement:addChildAt,2
flashx.textLayout.elements.DivElement:getChildAt,6
flashx.textLayout.elements.DivElement:getChildIndex,3
flashx.textLayout.elements.DivElement:getElementRelativeStart,1
flashx.textLayout.elements.DivElement:getFirstLeaf,5
flashx.textLayout.elements.DivElement:getLastLeaf,3
flashx.textLayout.elements.DivElement:getNextSibling,6
flashx.textLayout.elements.DivElement:getPreviousSibling,3
flashx.textLayout.elements.DivElement:numChildren,2
flashx.textLayout.elements.DivElement:removeChild,4
flashx.textLayout.elements.DivElement:removeChildAt,1
flashx.textLayout.elements.DivElement:setStyle,5
flashx.textLayout.elements.DivElement:splitAtIndex,1
flashx.textLayout.elements.FlowElement,30
flashx.textLayout.elements.FlowElement:deepCopy,1
flashx.textLayout.elements.FlowElement:fontStyle,1
flashx.textLayout.elements.FlowElement:fontWeight,1
flashx.textLayout.elements.FlowElement:getAbsoluteStart,2
flashx.textLayout.elements.FlowElement:getNextSibling,3
flashx.textLayout.elements.FlowElement:getParagraph,13
flashx.textLayout.elements.FlowElement:getParentByType,4
flashx.textLayout.elements.FlowElement:getStyle,4
flashx.textLayout.elements.FlowElement:getText,2
flashx.textLayout.elements.FlowElement:parent,5
flashx.textLayout.elements.FlowElement:setStyle,1
flashx.textLayout.elements.FlowElement:textDecoration,1
flashx.textLayout.elements.FlowElement:userStyles,2
flashx.textLayout.elements.FlowGroupElement,11
flashx.textLayout.elements.FlowGroupElement:addChild,6
flashx.textLayout.elements.FlowGroupElement:findLeaf,2
flashx.textLayout.elements.FlowGroupElement:getChildAt,2
flashx.textLayout.elements.FlowGroupElement:getFirstLeaf,5
flashx.textLayout.elements.FlowGroupElement:getStyle,13
flashx.textLayout.elements.FlowGroupElement:removeChild,2
flashx.textLayout.elements.FlowLeafElement,11
flashx.textLayout.elements.FlowLeafElement:getNextLeaf,1
flashx.textLayout.elements.FlowLeafElement:getParagraph,2
flashx.textLayout.elements.FlowLeafElement:getParentByType,2
flashx.textLayout.elements.FlowLeafElement:parent,5
flashx.textLayout.elements.FlowLeafElement:text,2
flashx.textLayout.elements.InlineGraphicElement,20
flashx.textLayout.elements.InlineGraphicElement:getNextSibling,1
flashx.textLayout.elements.InlineGraphicElement:graphic,4
flashx.textLayout.elements.InlineGraphicElement:height,4
flashx.textLayout.elements.InlineGraphicElement:lineHeight,3
flashx.textLayout.elements.InlineGraphicElement:source,4
flashx.textLayout.elements.InlineGraphicElement:width,5
flashx.textLayout.elements.LinkElement,20
flashx.textLayout.elements.LinkElement:getStyle,3
flashx.textLayout.elements.LinkElement:href,7
flashx.textLayout.elements.LinkElement:setStyle,5
flashx.textLayout.elements.LinkElement:target,6
flashx.textLayout.elements.ParagraphElement,87
flashx.textLayout.elements.ParagraphElement:addChild,15
flashx.textLayout.elements.ParagraphElement:computedFormat,1
flashx.textLayout.elements.ParagraphElement:deepCopy,1
flashx.textLayout.elements.ParagraphElement:fontFamily,2
flashx.textLayout.elements.ParagraphElement:fontSize,4
flashx.textLayout.elements.ParagraphElement:fontWeight,2
flashx.textLayout.elements.ParagraphElement:format,1
flashx.textLayout.elements.ParagraphElement:getAbsoluteStart,1
flashx.textLayout.elements.ParagraphElement:getChildAt,1
flashx.textLayout.elements.ParagraphElement:getFirstLeaf,4
flashx.textLayout.elements.ParagraphElement:getLastLeaf,1
flashx.textLayout.elements.ParagraphElement:getNextParagraph,2
flashx.textLayout.elements.ParagraphElement:getNextSibling,5
flashx.textLayout.elements.ParagraphElement:getParentByType,2
flashx.textLayout.elements.ParagraphElement:getPreviousSibling,1
flashx.textLayout.elements.ParagraphElement:getStyle,13
flashx.textLayout.elements.ParagraphElement:getText,2
flashx.textLayout.elements.ParagraphElement:parent,19
flashx.textLayout.elements.ParagraphElement:setStyle,38
flashx.textLayout.elements.ParagraphElement:textAlign,3
flashx.textLayout.elements.ParagraphElement:userStyles,1
flashx.textLayout.elements.SpanElement,40
flashx.textLayout.elements.SpanElement:getAbsoluteStart,1
flashx.textLayout.elements.SpanElement:getElementRelativeStart,2
flashx.textLayout.elements.SpanElement:getParagraph,1
flashx.textLayout.elements.SpanElement:setStyle,1
flashx.textLayout.elements.SpanElement:text,19
flashx.textLayout.elements.SpanElement:textDecoration,1
flashx.textLayout.elements.TextFlow,48
flashx.textLayout.elements.TextFlow:addChild,5
flashx.textLayout.elements.TextFlow:addChildAt,3
flashx.textLayout.elements.TextFlow:addEventListener,14
flashx.textLayout.elements.TextFlow:dispatchEvent,19
flashx.textLayout.elements.TextFlow:findLeaf,7
flashx.textLayout.elements.TextFlow:flowComposer,29
flashx.textLayout.elements.TextFlow:getChildAt,1
flashx.textLayout.elements.TextFlow:getChildIndex,3
flashx.textLayout.elements.TextFlow:getFirstLeaf,7
flashx.textLayout.elements.TextFlow:getLastLeaf,1
flashx.textLayout.elements.TextFlow:interactionManager,55
flashx.textLayout.elements.TextFlow:removeChild,2
flashx.textLayout.elements.TextFlow:removeEventListener,6
flashx.textLayout.elements.TextFlow:textLength,1
flashx.textLayout.elements.TextFlow:whiteSpaceCollapse,1
flashx.textLayout.elements.TextRange:absoluteEnd,4
flashx.textLayout.elements.TextRange:absoluteStart,5
flashx.textLayout.elements.TextRange:activePosition,4
flashx.textLayout.elements.TextRange:anchorPosition,1
flashx.textLayout.events.CompositionCompleteEvent,2
flashx.textLayout.events.CompositionCompleteEvent:COMPOSITION_COMPLETE,1
flashx.textLayout.events.FlowOperationEvent,23
flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_BEGIN,5
flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_COMPLETE,1
flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_END,1
flashx.textLayout.events.FlowOperationEvent:operation,17
flashx.textLayout.events.FlowOperationEvent:preventDefault,1
flashx.textLayout.events.FlowOperationEvent:stopImmediatePropagation,1
flashx.textLayout.events.FlowOperationEvent:stopPropagation,1
flashx.textLayout.events.SelectionEvent,8
flashx.textLayout.events.SelectionEvent:SELECTION_CHANGE,4
flashx.textLayout.events.TextLayoutEvent,2
flashx.textLayout.events.TextLayoutEvent:SCROLL,1
flashx.textLayout.formats.ITextLayoutFormat,7
flashx.textLayout.formats.TextAlign,17
flashx.textLayout.formats.TextAlign:CENTER,7
flashx.textLayout.formats.TextAlign:JUSTIFY,2
flashx.textLayout.formats.TextAlign:LEFT,4
flashx.textLayout.formats.TextAlign:RIGHT,4
flashx.textLayout.formats.TextDecoration,8
flashx.textLayout.formats.TextDecoration:NONE,3
flashx.textLayout.formats.TextDecoration:UNDERLINE,5
flashx.textLayout.formats.TextLayoutFormat,43
flashx.textLayout.formats.TextLayoutFormat:backgroundColor,4
flashx.textLayout.formats.TextLayoutFormat:color,7
flashx.textLayout.formats.TextLayoutFormat:fontFamily,2
flashx.textLayout.formats.TextLayoutFormat:fontSize,5
flashx.textLayout.formats.TextLayoutFormat:fontStyle,7
flashx.textLayout.formats.TextLayoutFormat:fontWeight,7
flashx.textLayout.formats.TextLayoutFormat:lineThrough,2
flashx.textLayout.formats.TextLayoutFormat:textAlign,6
flashx.textLayout.formats.TextLayoutFormat:textDecoration,4
flashx.textLayout.formats.WhiteSpaceCollapse,1
flashx.textLayout.formats.WhiteSpaceCollapse:PRESERVE,1
flashx.textLayout.operations.DeleteTextOperation,4
flashx.textLayout.operations.DeleteTextOperation:deleteSelectionState,2
flashx.textLayout.operations.InsertInlineGraphicOperation,1
flashx.textLayout.operations.InsertTextOperation,5
flashx.textLayout.operations.InsertTextOperation:_text,1
flashx.textLayout.operations.MoveChildrenOperation,1
flashx.textLayout.operations.PasteOperation,3
flashx.textLayout.operations.PasteOperation:textScrap,1
flashx.textLayout.operations.SplitParagraphOperation,3
flashx.textLayout.operations.UndoOperation,1
flashx.textLayout.tlf_internal,2
flashx.undo.IUndoManager,1
flashx.undo.UndoManager,5
flashx.undo.UndoManager:undoAndRedoItemLimit,1
Re: TLF APIs Effort Estimate
Posted by Yishay Weiss <yi...@hotmail.com>.
Got it. Thank you.
________________________________
From: Hugo Ferreira <hf...@gmail.com>
Sent: Wednesday, February 17, 2021 12:54 PM
To: Apache Royale Development <de...@royale.apache.org>
Subject: Re: TLF APIs Effort Estimate
Hi Yishay Weiss,
What I meant to say is that I have fixes and new features on the TLF Flex
version.
If we get a similar (paired) version on Royale, perhaps I can apply
does fixes and new features also on Royale.
Yishay Weiss <yi...@hotmail.com> escreveu no dia quarta, 17/02/2021
à(s) 12:30:
> Hi Hugo,
>
> >My TLF use has a lot of fixes and new features that they don't exists on
> >Flex and I would be glad to contribute to the Royale version and make it
> >standard.
>
> Do I understand correctly that you already have some fixes for Royale
> implemented in your private repo?
>
> Thanks
> ________________________________
> From: Hugo Ferreira <hf...@gmail.com>
> Sent: Wednesday, February 17, 2021 12:19 PM
> To: Apache Royale Development <de...@royale.apache.org>
> Subject: Re: TLF APIs Effort Estimate
>
> Hi Yishay Weiss,
>
> In the last few months I have been absent from my own porting from Flex to
> Royale (I hope the things call down in April and get time to continue my
> porting where I stopped).
> I also have extensive use of some TLF APIs.
> I have an alternative strategy passing by creating a Word Add-In but having
> TLF on Royale would give an option.
>
> My TLF use has a lot of fixes and new features that they don't exists on
> Flex and I would be glad to contribute to the Royale version and make it
> standard.
>
> Yishay Weiss <yi...@hotmail.com> escreveu no dia quarta, 17/02/2021
> à(s) 10:30:
>
> > Hi All,
> >
> > The app I am porting makes extensive use of some TLF APIs.
> Re-implementing
> > everything differently will be difficult so I am trying to estimate the
> > work involved in actually making the below APIs work. If anyone (prbly
> > Harbs and Alex) has time to have a quick glance and help me asses the
> work
> > involved, I would be grateful.
> >
> > Thanks,
> > Yishay
> >
> > flashx.textLayout.container.ContainerController,3
> > flashx.textLayout.container.ContainerController:compositionHeight,3
> > flashx.textLayout.container.ContainerController:getContentBounds,1
> > flashx.textLayout.container.ContainerController:setCompositionSize,1
> > flashx.textLayout.container.ContainerController:verticalScrollPosition,4
> > flashx.textLayout.conversion.ConversionType,7
> > flashx.textLayout.conversion.ConversionType:STRING_TYPE,2
> > flashx.textLayout.conversion.ConversionType:XML_TYPE,5
> > flashx.textLayout.conversion.TextConverter,18
> > flashx.textLayout.conversion.TextConverter:TEXT_LAYOUT_FORMAT,9
> > flashx.textLayout.conversion.TextConverter:export,7
> > flashx.textLayout.conversion.TextConverter:importToFlow,2
> > flashx.textLayout.edit.EditManager,3
> > flashx.textLayout.edit.EditManager:applyFormat,2
> > flashx.textLayout.edit.EditManager:applyFormatToElement,2
> > flashx.textLayout.edit.EditManager:applyLink,2
> > flashx.textLayout.edit.EditManager:applyParagraphFormat,2
> > flashx.textLayout.edit.EditManager:insertInlineGraphic,1
> > flashx.textLayout.edit.EditManager:keyDownHandler,1
> > flashx.textLayout.edit.EditManager:keyUpHandler,1
> > flashx.textLayout.edit.EditManager:textFlow,1
> > flashx.textLayout.edit.EditManager:undoManager,1
> > flashx.textLayout.edit.ElementRange,4
> > flashx.textLayout.edit.ElementRange:createElementRange,1
> > flashx.textLayout.edit.ElementRange:textFlow,1
> > flashx.textLayout.edit.IEditManager,12
> > flashx.textLayout.edit.SelectionManager:activePosition,2
> > flashx.textLayout.edit.SelectionManager:anchorPosition,1
> > flashx.textLayout.edit.SelectionManager:getCommonCharacterFormat,1
> > flashx.textLayout.edit.SelectionManager:getSelectionState,12
> > flashx.textLayout.edit.SelectionState,12
> > flashx.textLayout.edit.SelectionState:absoluteEnd,3
> > flashx.textLayout.edit.SelectionState:absoluteStart,3
> > flashx.textLayout.edit.TextFlowEdit,2
> > flashx.textLayout.edit.TextFlowEdit:makeLink,1
> > flashx.textLayout.edit.TextFlowEdit:removeLink,1
> > flashx.textLayout.edit.TextScrap:textFlow,1
> > flashx.textLayout.elements.DivElement,93
> > flashx.textLayout.elements.DivElement:addChild,11
> > flashx.textLayout.elements.DivElement:addChildAt,2
> > flashx.textLayout.elements.DivElement:getChildAt,6
> > flashx.textLayout.elements.DivElement:getChildIndex,3
> > flashx.textLayout.elements.DivElement:getElementRelativeStart,1
> > flashx.textLayout.elements.DivElement:getFirstLeaf,5
> > flashx.textLayout.elements.DivElement:getLastLeaf,3
> > flashx.textLayout.elements.DivElement:getNextSibling,6
> > flashx.textLayout.elements.DivElement:getPreviousSibling,3
> > flashx.textLayout.elements.DivElement:numChildren,2
> > flashx.textLayout.elements.DivElement:removeChild,4
> > flashx.textLayout.elements.DivElement:removeChildAt,1
> > flashx.textLayout.elements.DivElement:setStyle,5
> > flashx.textLayout.elements.DivElement:splitAtIndex,1
> > flashx.textLayout.elements.FlowElement,30
> > flashx.textLayout.elements.FlowElement:deepCopy,1
> > flashx.textLayout.elements.FlowElement:fontStyle,1
> > flashx.textLayout.elements.FlowElement:fontWeight,1
> > flashx.textLayout.elements.FlowElement:getAbsoluteStart,2
> > flashx.textLayout.elements.FlowElement:getNextSibling,3
> > flashx.textLayout.elements.FlowElement:getParagraph,13
> > flashx.textLayout.elements.FlowElement:getParentByType,4
> > flashx.textLayout.elements.FlowElement:getStyle,4
> > flashx.textLayout.elements.FlowElement:getText,2
> > flashx.textLayout.elements.FlowElement:parent,5
> > flashx.textLayout.elements.FlowElement:setStyle,1
> > flashx.textLayout.elements.FlowElement:textDecoration,1
> > flashx.textLayout.elements.FlowElement:userStyles,2
> > flashx.textLayout.elements.FlowGroupElement,11
> > flashx.textLayout.elements.FlowGroupElement:addChild,6
> > flashx.textLayout.elements.FlowGroupElement:findLeaf,2
> > flashx.textLayout.elements.FlowGroupElement:getChildAt,2
> > flashx.textLayout.elements.FlowGroupElement:getFirstLeaf,5
> > flashx.textLayout.elements.FlowGroupElement:getStyle,13
> > flashx.textLayout.elements.FlowGroupElement:removeChild,2
> > flashx.textLayout.elements.FlowLeafElement,11
> > flashx.textLayout.elements.FlowLeafElement:getNextLeaf,1
> > flashx.textLayout.elements.FlowLeafElement:getParagraph,2
> > flashx.textLayout.elements.FlowLeafElement:getParentByType,2
> > flashx.textLayout.elements.FlowLeafElement:parent,5
> > flashx.textLayout.elements.FlowLeafElement:text,2
> > flashx.textLayout.elements.InlineGraphicElement,20
> > flashx.textLayout.elements.InlineGraphicElement:getNextSibling,1
> > flashx.textLayout.elements.InlineGraphicElement:graphic,4
> > flashx.textLayout.elements.InlineGraphicElement:height,4
> > flashx.textLayout.elements.InlineGraphicElement:lineHeight,3
> > flashx.textLayout.elements.InlineGraphicElement:source,4
> > flashx.textLayout.elements.InlineGraphicElement:width,5
> > flashx.textLayout.elements.LinkElement,20
> > flashx.textLayout.elements.LinkElement:getStyle,3
> > flashx.textLayout.elements.LinkElement:href,7
> > flashx.textLayout.elements.LinkElement:setStyle,5
> > flashx.textLayout.elements.LinkElement:target,6
> > flashx.textLayout.elements.ParagraphElement,87
> > flashx.textLayout.elements.ParagraphElement:addChild,15
> > flashx.textLayout.elements.ParagraphElement:computedFormat,1
> > flashx.textLayout.elements.ParagraphElement:deepCopy,1
> > flashx.textLayout.elements.ParagraphElement:fontFamily,2
> > flashx.textLayout.elements.ParagraphElement:fontSize,4
> > flashx.textLayout.elements.ParagraphElement:fontWeight,2
> > flashx.textLayout.elements.ParagraphElement:format,1
> > flashx.textLayout.elements.ParagraphElement:getAbsoluteStart,1
> > flashx.textLayout.elements.ParagraphElement:getChildAt,1
> > flashx.textLayout.elements.ParagraphElement:getFirstLeaf,4
> > flashx.textLayout.elements.ParagraphElement:getLastLeaf,1
> > flashx.textLayout.elements.ParagraphElement:getNextParagraph,2
> > flashx.textLayout.elements.ParagraphElement:getNextSibling,5
> > flashx.textLayout.elements.ParagraphElement:getParentByType,2
> > flashx.textLayout.elements.ParagraphElement:getPreviousSibling,1
> > flashx.textLayout.elements.ParagraphElement:getStyle,13
> > flashx.textLayout.elements.ParagraphElement:getText,2
> > flashx.textLayout.elements.ParagraphElement:parent,19
> > flashx.textLayout.elements.ParagraphElement:setStyle,38
> > flashx.textLayout.elements.ParagraphElement:textAlign,3
> > flashx.textLayout.elements.ParagraphElement:userStyles,1
> > flashx.textLayout.elements.SpanElement,40
> > flashx.textLayout.elements.SpanElement:getAbsoluteStart,1
> > flashx.textLayout.elements.SpanElement:getElementRelativeStart,2
> > flashx.textLayout.elements.SpanElement:getParagraph,1
> > flashx.textLayout.elements.SpanElement:setStyle,1
> > flashx.textLayout.elements.SpanElement:text,19
> > flashx.textLayout.elements.SpanElement:textDecoration,1
> > flashx.textLayout.elements.TextFlow,48
> > flashx.textLayout.elements.TextFlow:addChild,5
> > flashx.textLayout.elements.TextFlow:addChildAt,3
> > flashx.textLayout.elements.TextFlow:addEventListener,14
> > flashx.textLayout.elements.TextFlow:dispatchEvent,19
> > flashx.textLayout.elements.TextFlow:findLeaf,7
> > flashx.textLayout.elements.TextFlow:flowComposer,29
> > flashx.textLayout.elements.TextFlow:getChildAt,1
> > flashx.textLayout.elements.TextFlow:getChildIndex,3
> > flashx.textLayout.elements.TextFlow:getFirstLeaf,7
> > flashx.textLayout.elements.TextFlow:getLastLeaf,1
> > flashx.textLayout.elements.TextFlow:interactionManager,55
> > flashx.textLayout.elements.TextFlow:removeChild,2
> > flashx.textLayout.elements.TextFlow:removeEventListener,6
> > flashx.textLayout.elements.TextFlow:textLength,1
> > flashx.textLayout.elements.TextFlow:whiteSpaceCollapse,1
> > flashx.textLayout.elements.TextRange:absoluteEnd,4
> > flashx.textLayout.elements.TextRange:absoluteStart,5
> > flashx.textLayout.elements.TextRange:activePosition,4
> > flashx.textLayout.elements.TextRange:anchorPosition,1
> > flashx.textLayout.events.CompositionCompleteEvent,2
> > flashx.textLayout.events.CompositionCompleteEvent:COMPOSITION_COMPLETE,1
> > flashx.textLayout.events.FlowOperationEvent,23
> > flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_BEGIN,5
> > flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_COMPLETE,1
> > flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_END,1
> > flashx.textLayout.events.FlowOperationEvent:operation,17
> > flashx.textLayout.events.FlowOperationEvent:preventDefault,1
> > flashx.textLayout.events.FlowOperationEvent:stopImmediatePropagation,1
> > flashx.textLayout.events.FlowOperationEvent:stopPropagation,1
> > flashx.textLayout.events.SelectionEvent,8
> > flashx.textLayout.events.SelectionEvent:SELECTION_CHANGE,4
> > flashx.textLayout.events.TextLayoutEvent,2
> > flashx.textLayout.events.TextLayoutEvent:SCROLL,1
> > flashx.textLayout.formats.ITextLayoutFormat,7
> > flashx.textLayout.formats.TextAlign,17
> > flashx.textLayout.formats.TextAlign:CENTER,7
> > flashx.textLayout.formats.TextAlign:JUSTIFY,2
> > flashx.textLayout.formats.TextAlign:LEFT,4
> > flashx.textLayout.formats.TextAlign:RIGHT,4
> > flashx.textLayout.formats.TextDecoration,8
> > flashx.textLayout.formats.TextDecoration:NONE,3
> > flashx.textLayout.formats.TextDecoration:UNDERLINE,5
> > flashx.textLayout.formats.TextLayoutFormat,43
> > flashx.textLayout.formats.TextLayoutFormat:backgroundColor,4
> > flashx.textLayout.formats.TextLayoutFormat:color,7
> > flashx.textLayout.formats.TextLayoutFormat:fontFamily,2
> > flashx.textLayout.formats.TextLayoutFormat:fontSize,5
> > flashx.textLayout.formats.TextLayoutFormat:fontStyle,7
> > flashx.textLayout.formats.TextLayoutFormat:fontWeight,7
> > flashx.textLayout.formats.TextLayoutFormat:lineThrough,2
> > flashx.textLayout.formats.TextLayoutFormat:textAlign,6
> > flashx.textLayout.formats.TextLayoutFormat:textDecoration,4
> > flashx.textLayout.formats.WhiteSpaceCollapse,1
> > flashx.textLayout.formats.WhiteSpaceCollapse:PRESERVE,1
> > flashx.textLayout.operations.DeleteTextOperation,4
> > flashx.textLayout.operations.DeleteTextOperation:deleteSelectionState,2
> > flashx.textLayout.operations.InsertInlineGraphicOperation,1
> > flashx.textLayout.operations.InsertTextOperation,5
> > flashx.textLayout.operations.InsertTextOperation:_text,1
> > flashx.textLayout.operations.MoveChildrenOperation,1
> > flashx.textLayout.operations.PasteOperation,3
> > flashx.textLayout.operations.PasteOperation:textScrap,1
> > flashx.textLayout.operations.SplitParagraphOperation,3
> > flashx.textLayout.operations.UndoOperation,1
> > flashx.textLayout.tlf_internal,2
> > flashx.undo.IUndoManager,1
> > flashx.undo.UndoManager,5
> > flashx.undo.UndoManager:undoAndRedoItemLimit,1
> >
> >
>
Re: TLF APIs Effort Estimate
Posted by Hugo Ferreira <hf...@gmail.com>.
Hi Yishay Weiss,
What I meant to say is that I have fixes and new features on the TLF Flex
version.
If we get a similar (paired) version on Royale, perhaps I can apply
does fixes and new features also on Royale.
Yishay Weiss <yi...@hotmail.com> escreveu no dia quarta, 17/02/2021
à(s) 12:30:
> Hi Hugo,
>
> >My TLF use has a lot of fixes and new features that they don't exists on
> >Flex and I would be glad to contribute to the Royale version and make it
> >standard.
>
> Do I understand correctly that you already have some fixes for Royale
> implemented in your private repo?
>
> Thanks
> ________________________________
> From: Hugo Ferreira <hf...@gmail.com>
> Sent: Wednesday, February 17, 2021 12:19 PM
> To: Apache Royale Development <de...@royale.apache.org>
> Subject: Re: TLF APIs Effort Estimate
>
> Hi Yishay Weiss,
>
> In the last few months I have been absent from my own porting from Flex to
> Royale (I hope the things call down in April and get time to continue my
> porting where I stopped).
> I also have extensive use of some TLF APIs.
> I have an alternative strategy passing by creating a Word Add-In but having
> TLF on Royale would give an option.
>
> My TLF use has a lot of fixes and new features that they don't exists on
> Flex and I would be glad to contribute to the Royale version and make it
> standard.
>
> Yishay Weiss <yi...@hotmail.com> escreveu no dia quarta, 17/02/2021
> à(s) 10:30:
>
> > Hi All,
> >
> > The app I am porting makes extensive use of some TLF APIs.
> Re-implementing
> > everything differently will be difficult so I am trying to estimate the
> > work involved in actually making the below APIs work. If anyone (prbly
> > Harbs and Alex) has time to have a quick glance and help me asses the
> work
> > involved, I would be grateful.
> >
> > Thanks,
> > Yishay
> >
> > flashx.textLayout.container.ContainerController,3
> > flashx.textLayout.container.ContainerController:compositionHeight,3
> > flashx.textLayout.container.ContainerController:getContentBounds,1
> > flashx.textLayout.container.ContainerController:setCompositionSize,1
> > flashx.textLayout.container.ContainerController:verticalScrollPosition,4
> > flashx.textLayout.conversion.ConversionType,7
> > flashx.textLayout.conversion.ConversionType:STRING_TYPE,2
> > flashx.textLayout.conversion.ConversionType:XML_TYPE,5
> > flashx.textLayout.conversion.TextConverter,18
> > flashx.textLayout.conversion.TextConverter:TEXT_LAYOUT_FORMAT,9
> > flashx.textLayout.conversion.TextConverter:export,7
> > flashx.textLayout.conversion.TextConverter:importToFlow,2
> > flashx.textLayout.edit.EditManager,3
> > flashx.textLayout.edit.EditManager:applyFormat,2
> > flashx.textLayout.edit.EditManager:applyFormatToElement,2
> > flashx.textLayout.edit.EditManager:applyLink,2
> > flashx.textLayout.edit.EditManager:applyParagraphFormat,2
> > flashx.textLayout.edit.EditManager:insertInlineGraphic,1
> > flashx.textLayout.edit.EditManager:keyDownHandler,1
> > flashx.textLayout.edit.EditManager:keyUpHandler,1
> > flashx.textLayout.edit.EditManager:textFlow,1
> > flashx.textLayout.edit.EditManager:undoManager,1
> > flashx.textLayout.edit.ElementRange,4
> > flashx.textLayout.edit.ElementRange:createElementRange,1
> > flashx.textLayout.edit.ElementRange:textFlow,1
> > flashx.textLayout.edit.IEditManager,12
> > flashx.textLayout.edit.SelectionManager:activePosition,2
> > flashx.textLayout.edit.SelectionManager:anchorPosition,1
> > flashx.textLayout.edit.SelectionManager:getCommonCharacterFormat,1
> > flashx.textLayout.edit.SelectionManager:getSelectionState,12
> > flashx.textLayout.edit.SelectionState,12
> > flashx.textLayout.edit.SelectionState:absoluteEnd,3
> > flashx.textLayout.edit.SelectionState:absoluteStart,3
> > flashx.textLayout.edit.TextFlowEdit,2
> > flashx.textLayout.edit.TextFlowEdit:makeLink,1
> > flashx.textLayout.edit.TextFlowEdit:removeLink,1
> > flashx.textLayout.edit.TextScrap:textFlow,1
> > flashx.textLayout.elements.DivElement,93
> > flashx.textLayout.elements.DivElement:addChild,11
> > flashx.textLayout.elements.DivElement:addChildAt,2
> > flashx.textLayout.elements.DivElement:getChildAt,6
> > flashx.textLayout.elements.DivElement:getChildIndex,3
> > flashx.textLayout.elements.DivElement:getElementRelativeStart,1
> > flashx.textLayout.elements.DivElement:getFirstLeaf,5
> > flashx.textLayout.elements.DivElement:getLastLeaf,3
> > flashx.textLayout.elements.DivElement:getNextSibling,6
> > flashx.textLayout.elements.DivElement:getPreviousSibling,3
> > flashx.textLayout.elements.DivElement:numChildren,2
> > flashx.textLayout.elements.DivElement:removeChild,4
> > flashx.textLayout.elements.DivElement:removeChildAt,1
> > flashx.textLayout.elements.DivElement:setStyle,5
> > flashx.textLayout.elements.DivElement:splitAtIndex,1
> > flashx.textLayout.elements.FlowElement,30
> > flashx.textLayout.elements.FlowElement:deepCopy,1
> > flashx.textLayout.elements.FlowElement:fontStyle,1
> > flashx.textLayout.elements.FlowElement:fontWeight,1
> > flashx.textLayout.elements.FlowElement:getAbsoluteStart,2
> > flashx.textLayout.elements.FlowElement:getNextSibling,3
> > flashx.textLayout.elements.FlowElement:getParagraph,13
> > flashx.textLayout.elements.FlowElement:getParentByType,4
> > flashx.textLayout.elements.FlowElement:getStyle,4
> > flashx.textLayout.elements.FlowElement:getText,2
> > flashx.textLayout.elements.FlowElement:parent,5
> > flashx.textLayout.elements.FlowElement:setStyle,1
> > flashx.textLayout.elements.FlowElement:textDecoration,1
> > flashx.textLayout.elements.FlowElement:userStyles,2
> > flashx.textLayout.elements.FlowGroupElement,11
> > flashx.textLayout.elements.FlowGroupElement:addChild,6
> > flashx.textLayout.elements.FlowGroupElement:findLeaf,2
> > flashx.textLayout.elements.FlowGroupElement:getChildAt,2
> > flashx.textLayout.elements.FlowGroupElement:getFirstLeaf,5
> > flashx.textLayout.elements.FlowGroupElement:getStyle,13
> > flashx.textLayout.elements.FlowGroupElement:removeChild,2
> > flashx.textLayout.elements.FlowLeafElement,11
> > flashx.textLayout.elements.FlowLeafElement:getNextLeaf,1
> > flashx.textLayout.elements.FlowLeafElement:getParagraph,2
> > flashx.textLayout.elements.FlowLeafElement:getParentByType,2
> > flashx.textLayout.elements.FlowLeafElement:parent,5
> > flashx.textLayout.elements.FlowLeafElement:text,2
> > flashx.textLayout.elements.InlineGraphicElement,20
> > flashx.textLayout.elements.InlineGraphicElement:getNextSibling,1
> > flashx.textLayout.elements.InlineGraphicElement:graphic,4
> > flashx.textLayout.elements.InlineGraphicElement:height,4
> > flashx.textLayout.elements.InlineGraphicElement:lineHeight,3
> > flashx.textLayout.elements.InlineGraphicElement:source,4
> > flashx.textLayout.elements.InlineGraphicElement:width,5
> > flashx.textLayout.elements.LinkElement,20
> > flashx.textLayout.elements.LinkElement:getStyle,3
> > flashx.textLayout.elements.LinkElement:href,7
> > flashx.textLayout.elements.LinkElement:setStyle,5
> > flashx.textLayout.elements.LinkElement:target,6
> > flashx.textLayout.elements.ParagraphElement,87
> > flashx.textLayout.elements.ParagraphElement:addChild,15
> > flashx.textLayout.elements.ParagraphElement:computedFormat,1
> > flashx.textLayout.elements.ParagraphElement:deepCopy,1
> > flashx.textLayout.elements.ParagraphElement:fontFamily,2
> > flashx.textLayout.elements.ParagraphElement:fontSize,4
> > flashx.textLayout.elements.ParagraphElement:fontWeight,2
> > flashx.textLayout.elements.ParagraphElement:format,1
> > flashx.textLayout.elements.ParagraphElement:getAbsoluteStart,1
> > flashx.textLayout.elements.ParagraphElement:getChildAt,1
> > flashx.textLayout.elements.ParagraphElement:getFirstLeaf,4
> > flashx.textLayout.elements.ParagraphElement:getLastLeaf,1
> > flashx.textLayout.elements.ParagraphElement:getNextParagraph,2
> > flashx.textLayout.elements.ParagraphElement:getNextSibling,5
> > flashx.textLayout.elements.ParagraphElement:getParentByType,2
> > flashx.textLayout.elements.ParagraphElement:getPreviousSibling,1
> > flashx.textLayout.elements.ParagraphElement:getStyle,13
> > flashx.textLayout.elements.ParagraphElement:getText,2
> > flashx.textLayout.elements.ParagraphElement:parent,19
> > flashx.textLayout.elements.ParagraphElement:setStyle,38
> > flashx.textLayout.elements.ParagraphElement:textAlign,3
> > flashx.textLayout.elements.ParagraphElement:userStyles,1
> > flashx.textLayout.elements.SpanElement,40
> > flashx.textLayout.elements.SpanElement:getAbsoluteStart,1
> > flashx.textLayout.elements.SpanElement:getElementRelativeStart,2
> > flashx.textLayout.elements.SpanElement:getParagraph,1
> > flashx.textLayout.elements.SpanElement:setStyle,1
> > flashx.textLayout.elements.SpanElement:text,19
> > flashx.textLayout.elements.SpanElement:textDecoration,1
> > flashx.textLayout.elements.TextFlow,48
> > flashx.textLayout.elements.TextFlow:addChild,5
> > flashx.textLayout.elements.TextFlow:addChildAt,3
> > flashx.textLayout.elements.TextFlow:addEventListener,14
> > flashx.textLayout.elements.TextFlow:dispatchEvent,19
> > flashx.textLayout.elements.TextFlow:findLeaf,7
> > flashx.textLayout.elements.TextFlow:flowComposer,29
> > flashx.textLayout.elements.TextFlow:getChildAt,1
> > flashx.textLayout.elements.TextFlow:getChildIndex,3
> > flashx.textLayout.elements.TextFlow:getFirstLeaf,7
> > flashx.textLayout.elements.TextFlow:getLastLeaf,1
> > flashx.textLayout.elements.TextFlow:interactionManager,55
> > flashx.textLayout.elements.TextFlow:removeChild,2
> > flashx.textLayout.elements.TextFlow:removeEventListener,6
> > flashx.textLayout.elements.TextFlow:textLength,1
> > flashx.textLayout.elements.TextFlow:whiteSpaceCollapse,1
> > flashx.textLayout.elements.TextRange:absoluteEnd,4
> > flashx.textLayout.elements.TextRange:absoluteStart,5
> > flashx.textLayout.elements.TextRange:activePosition,4
> > flashx.textLayout.elements.TextRange:anchorPosition,1
> > flashx.textLayout.events.CompositionCompleteEvent,2
> > flashx.textLayout.events.CompositionCompleteEvent:COMPOSITION_COMPLETE,1
> > flashx.textLayout.events.FlowOperationEvent,23
> > flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_BEGIN,5
> > flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_COMPLETE,1
> > flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_END,1
> > flashx.textLayout.events.FlowOperationEvent:operation,17
> > flashx.textLayout.events.FlowOperationEvent:preventDefault,1
> > flashx.textLayout.events.FlowOperationEvent:stopImmediatePropagation,1
> > flashx.textLayout.events.FlowOperationEvent:stopPropagation,1
> > flashx.textLayout.events.SelectionEvent,8
> > flashx.textLayout.events.SelectionEvent:SELECTION_CHANGE,4
> > flashx.textLayout.events.TextLayoutEvent,2
> > flashx.textLayout.events.TextLayoutEvent:SCROLL,1
> > flashx.textLayout.formats.ITextLayoutFormat,7
> > flashx.textLayout.formats.TextAlign,17
> > flashx.textLayout.formats.TextAlign:CENTER,7
> > flashx.textLayout.formats.TextAlign:JUSTIFY,2
> > flashx.textLayout.formats.TextAlign:LEFT,4
> > flashx.textLayout.formats.TextAlign:RIGHT,4
> > flashx.textLayout.formats.TextDecoration,8
> > flashx.textLayout.formats.TextDecoration:NONE,3
> > flashx.textLayout.formats.TextDecoration:UNDERLINE,5
> > flashx.textLayout.formats.TextLayoutFormat,43
> > flashx.textLayout.formats.TextLayoutFormat:backgroundColor,4
> > flashx.textLayout.formats.TextLayoutFormat:color,7
> > flashx.textLayout.formats.TextLayoutFormat:fontFamily,2
> > flashx.textLayout.formats.TextLayoutFormat:fontSize,5
> > flashx.textLayout.formats.TextLayoutFormat:fontStyle,7
> > flashx.textLayout.formats.TextLayoutFormat:fontWeight,7
> > flashx.textLayout.formats.TextLayoutFormat:lineThrough,2
> > flashx.textLayout.formats.TextLayoutFormat:textAlign,6
> > flashx.textLayout.formats.TextLayoutFormat:textDecoration,4
> > flashx.textLayout.formats.WhiteSpaceCollapse,1
> > flashx.textLayout.formats.WhiteSpaceCollapse:PRESERVE,1
> > flashx.textLayout.operations.DeleteTextOperation,4
> > flashx.textLayout.operations.DeleteTextOperation:deleteSelectionState,2
> > flashx.textLayout.operations.InsertInlineGraphicOperation,1
> > flashx.textLayout.operations.InsertTextOperation,5
> > flashx.textLayout.operations.InsertTextOperation:_text,1
> > flashx.textLayout.operations.MoveChildrenOperation,1
> > flashx.textLayout.operations.PasteOperation,3
> > flashx.textLayout.operations.PasteOperation:textScrap,1
> > flashx.textLayout.operations.SplitParagraphOperation,3
> > flashx.textLayout.operations.UndoOperation,1
> > flashx.textLayout.tlf_internal,2
> > flashx.undo.IUndoManager,1
> > flashx.undo.UndoManager,5
> > flashx.undo.UndoManager:undoAndRedoItemLimit,1
> >
> >
>
Re: TLF APIs Effort Estimate
Posted by Yishay Weiss <yi...@hotmail.com>.
Hi Hugo,
>My TLF use has a lot of fixes and new features that they don't exists on
>Flex and I would be glad to contribute to the Royale version and make it
>standard.
Do I understand correctly that you already have some fixes for Royale implemented in your private repo?
Thanks
________________________________
From: Hugo Ferreira <hf...@gmail.com>
Sent: Wednesday, February 17, 2021 12:19 PM
To: Apache Royale Development <de...@royale.apache.org>
Subject: Re: TLF APIs Effort Estimate
Hi Yishay Weiss,
In the last few months I have been absent from my own porting from Flex to
Royale (I hope the things call down in April and get time to continue my
porting where I stopped).
I also have extensive use of some TLF APIs.
I have an alternative strategy passing by creating a Word Add-In but having
TLF on Royale would give an option.
My TLF use has a lot of fixes and new features that they don't exists on
Flex and I would be glad to contribute to the Royale version and make it
standard.
Yishay Weiss <yi...@hotmail.com> escreveu no dia quarta, 17/02/2021
à(s) 10:30:
> Hi All,
>
> The app I am porting makes extensive use of some TLF APIs. Re-implementing
> everything differently will be difficult so I am trying to estimate the
> work involved in actually making the below APIs work. If anyone (prbly
> Harbs and Alex) has time to have a quick glance and help me asses the work
> involved, I would be grateful.
>
> Thanks,
> Yishay
>
> flashx.textLayout.container.ContainerController,3
> flashx.textLayout.container.ContainerController:compositionHeight,3
> flashx.textLayout.container.ContainerController:getContentBounds,1
> flashx.textLayout.container.ContainerController:setCompositionSize,1
> flashx.textLayout.container.ContainerController:verticalScrollPosition,4
> flashx.textLayout.conversion.ConversionType,7
> flashx.textLayout.conversion.ConversionType:STRING_TYPE,2
> flashx.textLayout.conversion.ConversionType:XML_TYPE,5
> flashx.textLayout.conversion.TextConverter,18
> flashx.textLayout.conversion.TextConverter:TEXT_LAYOUT_FORMAT,9
> flashx.textLayout.conversion.TextConverter:export,7
> flashx.textLayout.conversion.TextConverter:importToFlow,2
> flashx.textLayout.edit.EditManager,3
> flashx.textLayout.edit.EditManager:applyFormat,2
> flashx.textLayout.edit.EditManager:applyFormatToElement,2
> flashx.textLayout.edit.EditManager:applyLink,2
> flashx.textLayout.edit.EditManager:applyParagraphFormat,2
> flashx.textLayout.edit.EditManager:insertInlineGraphic,1
> flashx.textLayout.edit.EditManager:keyDownHandler,1
> flashx.textLayout.edit.EditManager:keyUpHandler,1
> flashx.textLayout.edit.EditManager:textFlow,1
> flashx.textLayout.edit.EditManager:undoManager,1
> flashx.textLayout.edit.ElementRange,4
> flashx.textLayout.edit.ElementRange:createElementRange,1
> flashx.textLayout.edit.ElementRange:textFlow,1
> flashx.textLayout.edit.IEditManager,12
> flashx.textLayout.edit.SelectionManager:activePosition,2
> flashx.textLayout.edit.SelectionManager:anchorPosition,1
> flashx.textLayout.edit.SelectionManager:getCommonCharacterFormat,1
> flashx.textLayout.edit.SelectionManager:getSelectionState,12
> flashx.textLayout.edit.SelectionState,12
> flashx.textLayout.edit.SelectionState:absoluteEnd,3
> flashx.textLayout.edit.SelectionState:absoluteStart,3
> flashx.textLayout.edit.TextFlowEdit,2
> flashx.textLayout.edit.TextFlowEdit:makeLink,1
> flashx.textLayout.edit.TextFlowEdit:removeLink,1
> flashx.textLayout.edit.TextScrap:textFlow,1
> flashx.textLayout.elements.DivElement,93
> flashx.textLayout.elements.DivElement:addChild,11
> flashx.textLayout.elements.DivElement:addChildAt,2
> flashx.textLayout.elements.DivElement:getChildAt,6
> flashx.textLayout.elements.DivElement:getChildIndex,3
> flashx.textLayout.elements.DivElement:getElementRelativeStart,1
> flashx.textLayout.elements.DivElement:getFirstLeaf,5
> flashx.textLayout.elements.DivElement:getLastLeaf,3
> flashx.textLayout.elements.DivElement:getNextSibling,6
> flashx.textLayout.elements.DivElement:getPreviousSibling,3
> flashx.textLayout.elements.DivElement:numChildren,2
> flashx.textLayout.elements.DivElement:removeChild,4
> flashx.textLayout.elements.DivElement:removeChildAt,1
> flashx.textLayout.elements.DivElement:setStyle,5
> flashx.textLayout.elements.DivElement:splitAtIndex,1
> flashx.textLayout.elements.FlowElement,30
> flashx.textLayout.elements.FlowElement:deepCopy,1
> flashx.textLayout.elements.FlowElement:fontStyle,1
> flashx.textLayout.elements.FlowElement:fontWeight,1
> flashx.textLayout.elements.FlowElement:getAbsoluteStart,2
> flashx.textLayout.elements.FlowElement:getNextSibling,3
> flashx.textLayout.elements.FlowElement:getParagraph,13
> flashx.textLayout.elements.FlowElement:getParentByType,4
> flashx.textLayout.elements.FlowElement:getStyle,4
> flashx.textLayout.elements.FlowElement:getText,2
> flashx.textLayout.elements.FlowElement:parent,5
> flashx.textLayout.elements.FlowElement:setStyle,1
> flashx.textLayout.elements.FlowElement:textDecoration,1
> flashx.textLayout.elements.FlowElement:userStyles,2
> flashx.textLayout.elements.FlowGroupElement,11
> flashx.textLayout.elements.FlowGroupElement:addChild,6
> flashx.textLayout.elements.FlowGroupElement:findLeaf,2
> flashx.textLayout.elements.FlowGroupElement:getChildAt,2
> flashx.textLayout.elements.FlowGroupElement:getFirstLeaf,5
> flashx.textLayout.elements.FlowGroupElement:getStyle,13
> flashx.textLayout.elements.FlowGroupElement:removeChild,2
> flashx.textLayout.elements.FlowLeafElement,11
> flashx.textLayout.elements.FlowLeafElement:getNextLeaf,1
> flashx.textLayout.elements.FlowLeafElement:getParagraph,2
> flashx.textLayout.elements.FlowLeafElement:getParentByType,2
> flashx.textLayout.elements.FlowLeafElement:parent,5
> flashx.textLayout.elements.FlowLeafElement:text,2
> flashx.textLayout.elements.InlineGraphicElement,20
> flashx.textLayout.elements.InlineGraphicElement:getNextSibling,1
> flashx.textLayout.elements.InlineGraphicElement:graphic,4
> flashx.textLayout.elements.InlineGraphicElement:height,4
> flashx.textLayout.elements.InlineGraphicElement:lineHeight,3
> flashx.textLayout.elements.InlineGraphicElement:source,4
> flashx.textLayout.elements.InlineGraphicElement:width,5
> flashx.textLayout.elements.LinkElement,20
> flashx.textLayout.elements.LinkElement:getStyle,3
> flashx.textLayout.elements.LinkElement:href,7
> flashx.textLayout.elements.LinkElement:setStyle,5
> flashx.textLayout.elements.LinkElement:target,6
> flashx.textLayout.elements.ParagraphElement,87
> flashx.textLayout.elements.ParagraphElement:addChild,15
> flashx.textLayout.elements.ParagraphElement:computedFormat,1
> flashx.textLayout.elements.ParagraphElement:deepCopy,1
> flashx.textLayout.elements.ParagraphElement:fontFamily,2
> flashx.textLayout.elements.ParagraphElement:fontSize,4
> flashx.textLayout.elements.ParagraphElement:fontWeight,2
> flashx.textLayout.elements.ParagraphElement:format,1
> flashx.textLayout.elements.ParagraphElement:getAbsoluteStart,1
> flashx.textLayout.elements.ParagraphElement:getChildAt,1
> flashx.textLayout.elements.ParagraphElement:getFirstLeaf,4
> flashx.textLayout.elements.ParagraphElement:getLastLeaf,1
> flashx.textLayout.elements.ParagraphElement:getNextParagraph,2
> flashx.textLayout.elements.ParagraphElement:getNextSibling,5
> flashx.textLayout.elements.ParagraphElement:getParentByType,2
> flashx.textLayout.elements.ParagraphElement:getPreviousSibling,1
> flashx.textLayout.elements.ParagraphElement:getStyle,13
> flashx.textLayout.elements.ParagraphElement:getText,2
> flashx.textLayout.elements.ParagraphElement:parent,19
> flashx.textLayout.elements.ParagraphElement:setStyle,38
> flashx.textLayout.elements.ParagraphElement:textAlign,3
> flashx.textLayout.elements.ParagraphElement:userStyles,1
> flashx.textLayout.elements.SpanElement,40
> flashx.textLayout.elements.SpanElement:getAbsoluteStart,1
> flashx.textLayout.elements.SpanElement:getElementRelativeStart,2
> flashx.textLayout.elements.SpanElement:getParagraph,1
> flashx.textLayout.elements.SpanElement:setStyle,1
> flashx.textLayout.elements.SpanElement:text,19
> flashx.textLayout.elements.SpanElement:textDecoration,1
> flashx.textLayout.elements.TextFlow,48
> flashx.textLayout.elements.TextFlow:addChild,5
> flashx.textLayout.elements.TextFlow:addChildAt,3
> flashx.textLayout.elements.TextFlow:addEventListener,14
> flashx.textLayout.elements.TextFlow:dispatchEvent,19
> flashx.textLayout.elements.TextFlow:findLeaf,7
> flashx.textLayout.elements.TextFlow:flowComposer,29
> flashx.textLayout.elements.TextFlow:getChildAt,1
> flashx.textLayout.elements.TextFlow:getChildIndex,3
> flashx.textLayout.elements.TextFlow:getFirstLeaf,7
> flashx.textLayout.elements.TextFlow:getLastLeaf,1
> flashx.textLayout.elements.TextFlow:interactionManager,55
> flashx.textLayout.elements.TextFlow:removeChild,2
> flashx.textLayout.elements.TextFlow:removeEventListener,6
> flashx.textLayout.elements.TextFlow:textLength,1
> flashx.textLayout.elements.TextFlow:whiteSpaceCollapse,1
> flashx.textLayout.elements.TextRange:absoluteEnd,4
> flashx.textLayout.elements.TextRange:absoluteStart,5
> flashx.textLayout.elements.TextRange:activePosition,4
> flashx.textLayout.elements.TextRange:anchorPosition,1
> flashx.textLayout.events.CompositionCompleteEvent,2
> flashx.textLayout.events.CompositionCompleteEvent:COMPOSITION_COMPLETE,1
> flashx.textLayout.events.FlowOperationEvent,23
> flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_BEGIN,5
> flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_COMPLETE,1
> flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_END,1
> flashx.textLayout.events.FlowOperationEvent:operation,17
> flashx.textLayout.events.FlowOperationEvent:preventDefault,1
> flashx.textLayout.events.FlowOperationEvent:stopImmediatePropagation,1
> flashx.textLayout.events.FlowOperationEvent:stopPropagation,1
> flashx.textLayout.events.SelectionEvent,8
> flashx.textLayout.events.SelectionEvent:SELECTION_CHANGE,4
> flashx.textLayout.events.TextLayoutEvent,2
> flashx.textLayout.events.TextLayoutEvent:SCROLL,1
> flashx.textLayout.formats.ITextLayoutFormat,7
> flashx.textLayout.formats.TextAlign,17
> flashx.textLayout.formats.TextAlign:CENTER,7
> flashx.textLayout.formats.TextAlign:JUSTIFY,2
> flashx.textLayout.formats.TextAlign:LEFT,4
> flashx.textLayout.formats.TextAlign:RIGHT,4
> flashx.textLayout.formats.TextDecoration,8
> flashx.textLayout.formats.TextDecoration:NONE,3
> flashx.textLayout.formats.TextDecoration:UNDERLINE,5
> flashx.textLayout.formats.TextLayoutFormat,43
> flashx.textLayout.formats.TextLayoutFormat:backgroundColor,4
> flashx.textLayout.formats.TextLayoutFormat:color,7
> flashx.textLayout.formats.TextLayoutFormat:fontFamily,2
> flashx.textLayout.formats.TextLayoutFormat:fontSize,5
> flashx.textLayout.formats.TextLayoutFormat:fontStyle,7
> flashx.textLayout.formats.TextLayoutFormat:fontWeight,7
> flashx.textLayout.formats.TextLayoutFormat:lineThrough,2
> flashx.textLayout.formats.TextLayoutFormat:textAlign,6
> flashx.textLayout.formats.TextLayoutFormat:textDecoration,4
> flashx.textLayout.formats.WhiteSpaceCollapse,1
> flashx.textLayout.formats.WhiteSpaceCollapse:PRESERVE,1
> flashx.textLayout.operations.DeleteTextOperation,4
> flashx.textLayout.operations.DeleteTextOperation:deleteSelectionState,2
> flashx.textLayout.operations.InsertInlineGraphicOperation,1
> flashx.textLayout.operations.InsertTextOperation,5
> flashx.textLayout.operations.InsertTextOperation:_text,1
> flashx.textLayout.operations.MoveChildrenOperation,1
> flashx.textLayout.operations.PasteOperation,3
> flashx.textLayout.operations.PasteOperation:textScrap,1
> flashx.textLayout.operations.SplitParagraphOperation,3
> flashx.textLayout.operations.UndoOperation,1
> flashx.textLayout.tlf_internal,2
> flashx.undo.IUndoManager,1
> flashx.undo.UndoManager,5
> flashx.undo.UndoManager:undoAndRedoItemLimit,1
>
>
Re: TLF APIs Effort Estimate
Posted by Hugo Ferreira <hf...@gmail.com>.
Hi Yishay Weiss,
In the last few months I have been absent from my own porting from Flex to
Royale (I hope the things call down in April and get time to continue my
porting where I stopped).
I also have extensive use of some TLF APIs.
I have an alternative strategy passing by creating a Word Add-In but having
TLF on Royale would give an option.
My TLF use has a lot of fixes and new features that they don't exists on
Flex and I would be glad to contribute to the Royale version and make it
standard.
Yishay Weiss <yi...@hotmail.com> escreveu no dia quarta, 17/02/2021
à(s) 10:30:
> Hi All,
>
> The app I am porting makes extensive use of some TLF APIs. Re-implementing
> everything differently will be difficult so I am trying to estimate the
> work involved in actually making the below APIs work. If anyone (prbly
> Harbs and Alex) has time to have a quick glance and help me asses the work
> involved, I would be grateful.
>
> Thanks,
> Yishay
>
> flashx.textLayout.container.ContainerController,3
> flashx.textLayout.container.ContainerController:compositionHeight,3
> flashx.textLayout.container.ContainerController:getContentBounds,1
> flashx.textLayout.container.ContainerController:setCompositionSize,1
> flashx.textLayout.container.ContainerController:verticalScrollPosition,4
> flashx.textLayout.conversion.ConversionType,7
> flashx.textLayout.conversion.ConversionType:STRING_TYPE,2
> flashx.textLayout.conversion.ConversionType:XML_TYPE,5
> flashx.textLayout.conversion.TextConverter,18
> flashx.textLayout.conversion.TextConverter:TEXT_LAYOUT_FORMAT,9
> flashx.textLayout.conversion.TextConverter:export,7
> flashx.textLayout.conversion.TextConverter:importToFlow,2
> flashx.textLayout.edit.EditManager,3
> flashx.textLayout.edit.EditManager:applyFormat,2
> flashx.textLayout.edit.EditManager:applyFormatToElement,2
> flashx.textLayout.edit.EditManager:applyLink,2
> flashx.textLayout.edit.EditManager:applyParagraphFormat,2
> flashx.textLayout.edit.EditManager:insertInlineGraphic,1
> flashx.textLayout.edit.EditManager:keyDownHandler,1
> flashx.textLayout.edit.EditManager:keyUpHandler,1
> flashx.textLayout.edit.EditManager:textFlow,1
> flashx.textLayout.edit.EditManager:undoManager,1
> flashx.textLayout.edit.ElementRange,4
> flashx.textLayout.edit.ElementRange:createElementRange,1
> flashx.textLayout.edit.ElementRange:textFlow,1
> flashx.textLayout.edit.IEditManager,12
> flashx.textLayout.edit.SelectionManager:activePosition,2
> flashx.textLayout.edit.SelectionManager:anchorPosition,1
> flashx.textLayout.edit.SelectionManager:getCommonCharacterFormat,1
> flashx.textLayout.edit.SelectionManager:getSelectionState,12
> flashx.textLayout.edit.SelectionState,12
> flashx.textLayout.edit.SelectionState:absoluteEnd,3
> flashx.textLayout.edit.SelectionState:absoluteStart,3
> flashx.textLayout.edit.TextFlowEdit,2
> flashx.textLayout.edit.TextFlowEdit:makeLink,1
> flashx.textLayout.edit.TextFlowEdit:removeLink,1
> flashx.textLayout.edit.TextScrap:textFlow,1
> flashx.textLayout.elements.DivElement,93
> flashx.textLayout.elements.DivElement:addChild,11
> flashx.textLayout.elements.DivElement:addChildAt,2
> flashx.textLayout.elements.DivElement:getChildAt,6
> flashx.textLayout.elements.DivElement:getChildIndex,3
> flashx.textLayout.elements.DivElement:getElementRelativeStart,1
> flashx.textLayout.elements.DivElement:getFirstLeaf,5
> flashx.textLayout.elements.DivElement:getLastLeaf,3
> flashx.textLayout.elements.DivElement:getNextSibling,6
> flashx.textLayout.elements.DivElement:getPreviousSibling,3
> flashx.textLayout.elements.DivElement:numChildren,2
> flashx.textLayout.elements.DivElement:removeChild,4
> flashx.textLayout.elements.DivElement:removeChildAt,1
> flashx.textLayout.elements.DivElement:setStyle,5
> flashx.textLayout.elements.DivElement:splitAtIndex,1
> flashx.textLayout.elements.FlowElement,30
> flashx.textLayout.elements.FlowElement:deepCopy,1
> flashx.textLayout.elements.FlowElement:fontStyle,1
> flashx.textLayout.elements.FlowElement:fontWeight,1
> flashx.textLayout.elements.FlowElement:getAbsoluteStart,2
> flashx.textLayout.elements.FlowElement:getNextSibling,3
> flashx.textLayout.elements.FlowElement:getParagraph,13
> flashx.textLayout.elements.FlowElement:getParentByType,4
> flashx.textLayout.elements.FlowElement:getStyle,4
> flashx.textLayout.elements.FlowElement:getText,2
> flashx.textLayout.elements.FlowElement:parent,5
> flashx.textLayout.elements.FlowElement:setStyle,1
> flashx.textLayout.elements.FlowElement:textDecoration,1
> flashx.textLayout.elements.FlowElement:userStyles,2
> flashx.textLayout.elements.FlowGroupElement,11
> flashx.textLayout.elements.FlowGroupElement:addChild,6
> flashx.textLayout.elements.FlowGroupElement:findLeaf,2
> flashx.textLayout.elements.FlowGroupElement:getChildAt,2
> flashx.textLayout.elements.FlowGroupElement:getFirstLeaf,5
> flashx.textLayout.elements.FlowGroupElement:getStyle,13
> flashx.textLayout.elements.FlowGroupElement:removeChild,2
> flashx.textLayout.elements.FlowLeafElement,11
> flashx.textLayout.elements.FlowLeafElement:getNextLeaf,1
> flashx.textLayout.elements.FlowLeafElement:getParagraph,2
> flashx.textLayout.elements.FlowLeafElement:getParentByType,2
> flashx.textLayout.elements.FlowLeafElement:parent,5
> flashx.textLayout.elements.FlowLeafElement:text,2
> flashx.textLayout.elements.InlineGraphicElement,20
> flashx.textLayout.elements.InlineGraphicElement:getNextSibling,1
> flashx.textLayout.elements.InlineGraphicElement:graphic,4
> flashx.textLayout.elements.InlineGraphicElement:height,4
> flashx.textLayout.elements.InlineGraphicElement:lineHeight,3
> flashx.textLayout.elements.InlineGraphicElement:source,4
> flashx.textLayout.elements.InlineGraphicElement:width,5
> flashx.textLayout.elements.LinkElement,20
> flashx.textLayout.elements.LinkElement:getStyle,3
> flashx.textLayout.elements.LinkElement:href,7
> flashx.textLayout.elements.LinkElement:setStyle,5
> flashx.textLayout.elements.LinkElement:target,6
> flashx.textLayout.elements.ParagraphElement,87
> flashx.textLayout.elements.ParagraphElement:addChild,15
> flashx.textLayout.elements.ParagraphElement:computedFormat,1
> flashx.textLayout.elements.ParagraphElement:deepCopy,1
> flashx.textLayout.elements.ParagraphElement:fontFamily,2
> flashx.textLayout.elements.ParagraphElement:fontSize,4
> flashx.textLayout.elements.ParagraphElement:fontWeight,2
> flashx.textLayout.elements.ParagraphElement:format,1
> flashx.textLayout.elements.ParagraphElement:getAbsoluteStart,1
> flashx.textLayout.elements.ParagraphElement:getChildAt,1
> flashx.textLayout.elements.ParagraphElement:getFirstLeaf,4
> flashx.textLayout.elements.ParagraphElement:getLastLeaf,1
> flashx.textLayout.elements.ParagraphElement:getNextParagraph,2
> flashx.textLayout.elements.ParagraphElement:getNextSibling,5
> flashx.textLayout.elements.ParagraphElement:getParentByType,2
> flashx.textLayout.elements.ParagraphElement:getPreviousSibling,1
> flashx.textLayout.elements.ParagraphElement:getStyle,13
> flashx.textLayout.elements.ParagraphElement:getText,2
> flashx.textLayout.elements.ParagraphElement:parent,19
> flashx.textLayout.elements.ParagraphElement:setStyle,38
> flashx.textLayout.elements.ParagraphElement:textAlign,3
> flashx.textLayout.elements.ParagraphElement:userStyles,1
> flashx.textLayout.elements.SpanElement,40
> flashx.textLayout.elements.SpanElement:getAbsoluteStart,1
> flashx.textLayout.elements.SpanElement:getElementRelativeStart,2
> flashx.textLayout.elements.SpanElement:getParagraph,1
> flashx.textLayout.elements.SpanElement:setStyle,1
> flashx.textLayout.elements.SpanElement:text,19
> flashx.textLayout.elements.SpanElement:textDecoration,1
> flashx.textLayout.elements.TextFlow,48
> flashx.textLayout.elements.TextFlow:addChild,5
> flashx.textLayout.elements.TextFlow:addChildAt,3
> flashx.textLayout.elements.TextFlow:addEventListener,14
> flashx.textLayout.elements.TextFlow:dispatchEvent,19
> flashx.textLayout.elements.TextFlow:findLeaf,7
> flashx.textLayout.elements.TextFlow:flowComposer,29
> flashx.textLayout.elements.TextFlow:getChildAt,1
> flashx.textLayout.elements.TextFlow:getChildIndex,3
> flashx.textLayout.elements.TextFlow:getFirstLeaf,7
> flashx.textLayout.elements.TextFlow:getLastLeaf,1
> flashx.textLayout.elements.TextFlow:interactionManager,55
> flashx.textLayout.elements.TextFlow:removeChild,2
> flashx.textLayout.elements.TextFlow:removeEventListener,6
> flashx.textLayout.elements.TextFlow:textLength,1
> flashx.textLayout.elements.TextFlow:whiteSpaceCollapse,1
> flashx.textLayout.elements.TextRange:absoluteEnd,4
> flashx.textLayout.elements.TextRange:absoluteStart,5
> flashx.textLayout.elements.TextRange:activePosition,4
> flashx.textLayout.elements.TextRange:anchorPosition,1
> flashx.textLayout.events.CompositionCompleteEvent,2
> flashx.textLayout.events.CompositionCompleteEvent:COMPOSITION_COMPLETE,1
> flashx.textLayout.events.FlowOperationEvent,23
> flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_BEGIN,5
> flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_COMPLETE,1
> flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_END,1
> flashx.textLayout.events.FlowOperationEvent:operation,17
> flashx.textLayout.events.FlowOperationEvent:preventDefault,1
> flashx.textLayout.events.FlowOperationEvent:stopImmediatePropagation,1
> flashx.textLayout.events.FlowOperationEvent:stopPropagation,1
> flashx.textLayout.events.SelectionEvent,8
> flashx.textLayout.events.SelectionEvent:SELECTION_CHANGE,4
> flashx.textLayout.events.TextLayoutEvent,2
> flashx.textLayout.events.TextLayoutEvent:SCROLL,1
> flashx.textLayout.formats.ITextLayoutFormat,7
> flashx.textLayout.formats.TextAlign,17
> flashx.textLayout.formats.TextAlign:CENTER,7
> flashx.textLayout.formats.TextAlign:JUSTIFY,2
> flashx.textLayout.formats.TextAlign:LEFT,4
> flashx.textLayout.formats.TextAlign:RIGHT,4
> flashx.textLayout.formats.TextDecoration,8
> flashx.textLayout.formats.TextDecoration:NONE,3
> flashx.textLayout.formats.TextDecoration:UNDERLINE,5
> flashx.textLayout.formats.TextLayoutFormat,43
> flashx.textLayout.formats.TextLayoutFormat:backgroundColor,4
> flashx.textLayout.formats.TextLayoutFormat:color,7
> flashx.textLayout.formats.TextLayoutFormat:fontFamily,2
> flashx.textLayout.formats.TextLayoutFormat:fontSize,5
> flashx.textLayout.formats.TextLayoutFormat:fontStyle,7
> flashx.textLayout.formats.TextLayoutFormat:fontWeight,7
> flashx.textLayout.formats.TextLayoutFormat:lineThrough,2
> flashx.textLayout.formats.TextLayoutFormat:textAlign,6
> flashx.textLayout.formats.TextLayoutFormat:textDecoration,4
> flashx.textLayout.formats.WhiteSpaceCollapse,1
> flashx.textLayout.formats.WhiteSpaceCollapse:PRESERVE,1
> flashx.textLayout.operations.DeleteTextOperation,4
> flashx.textLayout.operations.DeleteTextOperation:deleteSelectionState,2
> flashx.textLayout.operations.InsertInlineGraphicOperation,1
> flashx.textLayout.operations.InsertTextOperation,5
> flashx.textLayout.operations.InsertTextOperation:_text,1
> flashx.textLayout.operations.MoveChildrenOperation,1
> flashx.textLayout.operations.PasteOperation,3
> flashx.textLayout.operations.PasteOperation:textScrap,1
> flashx.textLayout.operations.SplitParagraphOperation,3
> flashx.textLayout.operations.UndoOperation,1
> flashx.textLayout.tlf_internal,2
> flashx.undo.IUndoManager,1
> flashx.undo.UndoManager,5
> flashx.undo.UndoManager:undoAndRedoItemLimit,1
>
>
Re: TLF APIs Effort Estimate
Posted by Yishay Weiss <yi...@hotmail.com>.
I just realized interactionManager (EditManager) wasn't being picked up by the API reporter so here's what I see in the code:
interactionManager.anchorPosition
interactionManager.getSelectionState
interactionManager.refreshSelection
interactionManager.selectRange
interactionManager.setFocus
interactionManager.setSelectionState
________________________________
From: Yishay Weiss <yi...@hotmail.com>
Sent: Wednesday, February 17, 2021 10:30 AM
To: dev@royale.apache.org <de...@royale.apache.org>
Subject: TLF APIs Effort Estimate
Hi All,
The app I am porting makes extensive use of some TLF APIs. Re-implementing everything differently will be difficult so I am trying to estimate the work involved in actually making the below APIs work. If anyone (prbly Harbs and Alex) has time to have a quick glance and help me asses the work involved, I would be grateful.
Thanks,
Yishay
flashx.textLayout.container.ContainerController,3
flashx.textLayout.container.ContainerController:compositionHeight,3
flashx.textLayout.container.ContainerController:getContentBounds,1
flashx.textLayout.container.ContainerController:setCompositionSize,1
flashx.textLayout.container.ContainerController:verticalScrollPosition,4
flashx.textLayout.conversion.ConversionType,7
flashx.textLayout.conversion.ConversionType:STRING_TYPE,2
flashx.textLayout.conversion.ConversionType:XML_TYPE,5
flashx.textLayout.conversion.TextConverter,18
flashx.textLayout.conversion.TextConverter:TEXT_LAYOUT_FORMAT,9
flashx.textLayout.conversion.TextConverter:export,7
flashx.textLayout.conversion.TextConverter:importToFlow,2
flashx.textLayout.edit.EditManager,3
flashx.textLayout.edit.EditManager:applyFormat,2
flashx.textLayout.edit.EditManager:applyFormatToElement,2
flashx.textLayout.edit.EditManager:applyLink,2
flashx.textLayout.edit.EditManager:applyParagraphFormat,2
flashx.textLayout.edit.EditManager:insertInlineGraphic,1
flashx.textLayout.edit.EditManager:keyDownHandler,1
flashx.textLayout.edit.EditManager:keyUpHandler,1
flashx.textLayout.edit.EditManager:textFlow,1
flashx.textLayout.edit.EditManager:undoManager,1
flashx.textLayout.edit.ElementRange,4
flashx.textLayout.edit.ElementRange:createElementRange,1
flashx.textLayout.edit.ElementRange:textFlow,1
flashx.textLayout.edit.IEditManager,12
flashx.textLayout.edit.SelectionManager:activePosition,2
flashx.textLayout.edit.SelectionManager:anchorPosition,1
flashx.textLayout.edit.SelectionManager:getCommonCharacterFormat,1
flashx.textLayout.edit.SelectionManager:getSelectionState,12
flashx.textLayout.edit.SelectionState,12
flashx.textLayout.edit.SelectionState:absoluteEnd,3
flashx.textLayout.edit.SelectionState:absoluteStart,3
flashx.textLayout.edit.TextFlowEdit,2
flashx.textLayout.edit.TextFlowEdit:makeLink,1
flashx.textLayout.edit.TextFlowEdit:removeLink,1
flashx.textLayout.edit.TextScrap:textFlow,1
flashx.textLayout.elements.DivElement,93
flashx.textLayout.elements.DivElement:addChild,11
flashx.textLayout.elements.DivElement:addChildAt,2
flashx.textLayout.elements.DivElement:getChildAt,6
flashx.textLayout.elements.DivElement:getChildIndex,3
flashx.textLayout.elements.DivElement:getElementRelativeStart,1
flashx.textLayout.elements.DivElement:getFirstLeaf,5
flashx.textLayout.elements.DivElement:getLastLeaf,3
flashx.textLayout.elements.DivElement:getNextSibling,6
flashx.textLayout.elements.DivElement:getPreviousSibling,3
flashx.textLayout.elements.DivElement:numChildren,2
flashx.textLayout.elements.DivElement:removeChild,4
flashx.textLayout.elements.DivElement:removeChildAt,1
flashx.textLayout.elements.DivElement:setStyle,5
flashx.textLayout.elements.DivElement:splitAtIndex,1
flashx.textLayout.elements.FlowElement,30
flashx.textLayout.elements.FlowElement:deepCopy,1
flashx.textLayout.elements.FlowElement:fontStyle,1
flashx.textLayout.elements.FlowElement:fontWeight,1
flashx.textLayout.elements.FlowElement:getAbsoluteStart,2
flashx.textLayout.elements.FlowElement:getNextSibling,3
flashx.textLayout.elements.FlowElement:getParagraph,13
flashx.textLayout.elements.FlowElement:getParentByType,4
flashx.textLayout.elements.FlowElement:getStyle,4
flashx.textLayout.elements.FlowElement:getText,2
flashx.textLayout.elements.FlowElement:parent,5
flashx.textLayout.elements.FlowElement:setStyle,1
flashx.textLayout.elements.FlowElement:textDecoration,1
flashx.textLayout.elements.FlowElement:userStyles,2
flashx.textLayout.elements.FlowGroupElement,11
flashx.textLayout.elements.FlowGroupElement:addChild,6
flashx.textLayout.elements.FlowGroupElement:findLeaf,2
flashx.textLayout.elements.FlowGroupElement:getChildAt,2
flashx.textLayout.elements.FlowGroupElement:getFirstLeaf,5
flashx.textLayout.elements.FlowGroupElement:getStyle,13
flashx.textLayout.elements.FlowGroupElement:removeChild,2
flashx.textLayout.elements.FlowLeafElement,11
flashx.textLayout.elements.FlowLeafElement:getNextLeaf,1
flashx.textLayout.elements.FlowLeafElement:getParagraph,2
flashx.textLayout.elements.FlowLeafElement:getParentByType,2
flashx.textLayout.elements.FlowLeafElement:parent,5
flashx.textLayout.elements.FlowLeafElement:text,2
flashx.textLayout.elements.InlineGraphicElement,20
flashx.textLayout.elements.InlineGraphicElement:getNextSibling,1
flashx.textLayout.elements.InlineGraphicElement:graphic,4
flashx.textLayout.elements.InlineGraphicElement:height,4
flashx.textLayout.elements.InlineGraphicElement:lineHeight,3
flashx.textLayout.elements.InlineGraphicElement:source,4
flashx.textLayout.elements.InlineGraphicElement:width,5
flashx.textLayout.elements.LinkElement,20
flashx.textLayout.elements.LinkElement:getStyle,3
flashx.textLayout.elements.LinkElement:href,7
flashx.textLayout.elements.LinkElement:setStyle,5
flashx.textLayout.elements.LinkElement:target,6
flashx.textLayout.elements.ParagraphElement,87
flashx.textLayout.elements.ParagraphElement:addChild,15
flashx.textLayout.elements.ParagraphElement:computedFormat,1
flashx.textLayout.elements.ParagraphElement:deepCopy,1
flashx.textLayout.elements.ParagraphElement:fontFamily,2
flashx.textLayout.elements.ParagraphElement:fontSize,4
flashx.textLayout.elements.ParagraphElement:fontWeight,2
flashx.textLayout.elements.ParagraphElement:format,1
flashx.textLayout.elements.ParagraphElement:getAbsoluteStart,1
flashx.textLayout.elements.ParagraphElement:getChildAt,1
flashx.textLayout.elements.ParagraphElement:getFirstLeaf,4
flashx.textLayout.elements.ParagraphElement:getLastLeaf,1
flashx.textLayout.elements.ParagraphElement:getNextParagraph,2
flashx.textLayout.elements.ParagraphElement:getNextSibling,5
flashx.textLayout.elements.ParagraphElement:getParentByType,2
flashx.textLayout.elements.ParagraphElement:getPreviousSibling,1
flashx.textLayout.elements.ParagraphElement:getStyle,13
flashx.textLayout.elements.ParagraphElement:getText,2
flashx.textLayout.elements.ParagraphElement:parent,19
flashx.textLayout.elements.ParagraphElement:setStyle,38
flashx.textLayout.elements.ParagraphElement:textAlign,3
flashx.textLayout.elements.ParagraphElement:userStyles,1
flashx.textLayout.elements.SpanElement,40
flashx.textLayout.elements.SpanElement:getAbsoluteStart,1
flashx.textLayout.elements.SpanElement:getElementRelativeStart,2
flashx.textLayout.elements.SpanElement:getParagraph,1
flashx.textLayout.elements.SpanElement:setStyle,1
flashx.textLayout.elements.SpanElement:text,19
flashx.textLayout.elements.SpanElement:textDecoration,1
flashx.textLayout.elements.TextFlow,48
flashx.textLayout.elements.TextFlow:addChild,5
flashx.textLayout.elements.TextFlow:addChildAt,3
flashx.textLayout.elements.TextFlow:addEventListener,14
flashx.textLayout.elements.TextFlow:dispatchEvent,19
flashx.textLayout.elements.TextFlow:findLeaf,7
flashx.textLayout.elements.TextFlow:flowComposer,29
flashx.textLayout.elements.TextFlow:getChildAt,1
flashx.textLayout.elements.TextFlow:getChildIndex,3
flashx.textLayout.elements.TextFlow:getFirstLeaf,7
flashx.textLayout.elements.TextFlow:getLastLeaf,1
flashx.textLayout.elements.TextFlow:interactionManager,55
flashx.textLayout.elements.TextFlow:removeChild,2
flashx.textLayout.elements.TextFlow:removeEventListener,6
flashx.textLayout.elements.TextFlow:textLength,1
flashx.textLayout.elements.TextFlow:whiteSpaceCollapse,1
flashx.textLayout.elements.TextRange:absoluteEnd,4
flashx.textLayout.elements.TextRange:absoluteStart,5
flashx.textLayout.elements.TextRange:activePosition,4
flashx.textLayout.elements.TextRange:anchorPosition,1
flashx.textLayout.events.CompositionCompleteEvent,2
flashx.textLayout.events.CompositionCompleteEvent:COMPOSITION_COMPLETE,1
flashx.textLayout.events.FlowOperationEvent,23
flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_BEGIN,5
flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_COMPLETE,1
flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_END,1
flashx.textLayout.events.FlowOperationEvent:operation,17
flashx.textLayout.events.FlowOperationEvent:preventDefault,1
flashx.textLayout.events.FlowOperationEvent:stopImmediatePropagation,1
flashx.textLayout.events.FlowOperationEvent:stopPropagation,1
flashx.textLayout.events.SelectionEvent,8
flashx.textLayout.events.SelectionEvent:SELECTION_CHANGE,4
flashx.textLayout.events.TextLayoutEvent,2
flashx.textLayout.events.TextLayoutEvent:SCROLL,1
flashx.textLayout.formats.ITextLayoutFormat,7
flashx.textLayout.formats.TextAlign,17
flashx.textLayout.formats.TextAlign:CENTER,7
flashx.textLayout.formats.TextAlign:JUSTIFY,2
flashx.textLayout.formats.TextAlign:LEFT,4
flashx.textLayout.formats.TextAlign:RIGHT,4
flashx.textLayout.formats.TextDecoration,8
flashx.textLayout.formats.TextDecoration:NONE,3
flashx.textLayout.formats.TextDecoration:UNDERLINE,5
flashx.textLayout.formats.TextLayoutFormat,43
flashx.textLayout.formats.TextLayoutFormat:backgroundColor,4
flashx.textLayout.formats.TextLayoutFormat:color,7
flashx.textLayout.formats.TextLayoutFormat:fontFamily,2
flashx.textLayout.formats.TextLayoutFormat:fontSize,5
flashx.textLayout.formats.TextLayoutFormat:fontStyle,7
flashx.textLayout.formats.TextLayoutFormat:fontWeight,7
flashx.textLayout.formats.TextLayoutFormat:lineThrough,2
flashx.textLayout.formats.TextLayoutFormat:textAlign,6
flashx.textLayout.formats.TextLayoutFormat:textDecoration,4
flashx.textLayout.formats.WhiteSpaceCollapse,1
flashx.textLayout.formats.WhiteSpaceCollapse:PRESERVE,1
flashx.textLayout.operations.DeleteTextOperation,4
flashx.textLayout.operations.DeleteTextOperation:deleteSelectionState,2
flashx.textLayout.operations.InsertInlineGraphicOperation,1
flashx.textLayout.operations.InsertTextOperation,5
flashx.textLayout.operations.InsertTextOperation:_text,1
flashx.textLayout.operations.MoveChildrenOperation,1
flashx.textLayout.operations.PasteOperation,3
flashx.textLayout.operations.PasteOperation:textScrap,1
flashx.textLayout.operations.SplitParagraphOperation,3
flashx.textLayout.operations.UndoOperation,1
flashx.textLayout.tlf_internal,2
flashx.undo.IUndoManager,1
flashx.undo.UndoManager,5
flashx.undo.UndoManager:undoAndRedoItemLimit,1
Re: TLF APIs Effort Estimate
Posted by Alex Harui <ah...@adobe.com.INVALID>.
IIRC, editing worked at one point, but not rich text editing.
TLF had many goals, one of which was to provide pixel-perfect cross-browser glyph positioning. If you need that, I don't know if any JS editors do that, so you probably have to stick with TLF and have a lot of work left to make it perfect. What I had working at one time did not guarantee pixel-perfect.
Nor did it guarantee the next level back from that which would be cross-browser line-breaking. That is probably much less work than pixel-perfect, and potentially easier for certain width and other trade-offs
TLF also support right-to-left text. I did not get that working.
If all you need is rich text editing and different glyph positions on different browser is ok, I would not recommend trying to use TLF. There is a TinyEditor wrapper for that. The couple of use cases I saw stored rich text as HTML anyway, so why convert it to TextFlow and back out again?
HTH,
-Alex
On 2/17/21, 8:16 AM, "Harbs" <ha...@gmail.com> wrote:
Alex did work getting TLF to work with spans. IIRC that was functional.
I don’t remember whether editing worked or not, but that should be doable without too much trouble if not.
You’ll need a hidden input to take the interaction, but you probably know that already.
> On Feb 17, 2021, at 6:04 PM, Yishay Weiss <yi...@hotmail.com> wrote:
>
> I am not sure which problems are app related and which are FW related. Glad to hear you're optimistic, makes me think it's worthwhile going for it. I'll try to create some tests for these APIs.
>
> Spark TextArea isn't editable so I thought there might be issues with TLF, but again, it could be Spark issues.
>
> Thanks.
> ________________________________
> From: Harbs <ha...@gmail.com>
> Sent: Wednesday, February 17, 2021 1:45 PM
> To: Apache Royale Development <de...@royale.apache.org>
> Subject: Re: TLF APIs Effort Estimate
>
> The vast majority of this should work. No?
>
>> On Feb 17, 2021, at 12:30 PM, Yishay Weiss <yi...@hotmail.com> wrote:
>>
>> Hi All,
>>
>> The app I am porting makes extensive use of some TLF APIs. Re-implementing everything differently will be difficult so I am trying to estimate the work involved in actually making the below APIs work. If anyone (prbly Harbs and Alex) has time to have a quick glance and help me asses the work involved, I would be grateful.
>>
>> Thanks,
>> Yishay
>>
>> flashx.textLayout.container.ContainerController,3
>> flashx.textLayout.container.ContainerController:compositionHeight,3
>> flashx.textLayout.container.ContainerController:getContentBounds,1
>> flashx.textLayout.container.ContainerController:setCompositionSize,1
>> flashx.textLayout.container.ContainerController:verticalScrollPosition,4
>> flashx.textLayout.conversion.ConversionType,7
>> flashx.textLayout.conversion.ConversionType:STRING_TYPE,2
>> flashx.textLayout.conversion.ConversionType:XML_TYPE,5
>> flashx.textLayout.conversion.TextConverter,18
>> flashx.textLayout.conversion.TextConverter:TEXT_LAYOUT_FORMAT,9
>> flashx.textLayout.conversion.TextConverter:export,7
>> flashx.textLayout.conversion.TextConverter:importToFlow,2
>> flashx.textLayout.edit.EditManager,3
>> flashx.textLayout.edit.EditManager:applyFormat,2
>> flashx.textLayout.edit.EditManager:applyFormatToElement,2
>> flashx.textLayout.edit.EditManager:applyLink,2
>> flashx.textLayout.edit.EditManager:applyParagraphFormat,2
>> flashx.textLayout.edit.EditManager:insertInlineGraphic,1
>> flashx.textLayout.edit.EditManager:keyDownHandler,1
>> flashx.textLayout.edit.EditManager:keyUpHandler,1
>> flashx.textLayout.edit.EditManager:textFlow,1
>> flashx.textLayout.edit.EditManager:undoManager,1
>> flashx.textLayout.edit.ElementRange,4
>> flashx.textLayout.edit.ElementRange:createElementRange,1
>> flashx.textLayout.edit.ElementRange:textFlow,1
>> flashx.textLayout.edit.IEditManager,12
>> flashx.textLayout.edit.SelectionManager:activePosition,2
>> flashx.textLayout.edit.SelectionManager:anchorPosition,1
>> flashx.textLayout.edit.SelectionManager:getCommonCharacterFormat,1
>> flashx.textLayout.edit.SelectionManager:getSelectionState,12
>> flashx.textLayout.edit.SelectionState,12
>> flashx.textLayout.edit.SelectionState:absoluteEnd,3
>> flashx.textLayout.edit.SelectionState:absoluteStart,3
>> flashx.textLayout.edit.TextFlowEdit,2
>> flashx.textLayout.edit.TextFlowEdit:makeLink,1
>> flashx.textLayout.edit.TextFlowEdit:removeLink,1
>> flashx.textLayout.edit.TextScrap:textFlow,1
>> flashx.textLayout.elements.DivElement,93
>> flashx.textLayout.elements.DivElement:addChild,11
>> flashx.textLayout.elements.DivElement:addChildAt,2
>> flashx.textLayout.elements.DivElement:getChildAt,6
>> flashx.textLayout.elements.DivElement:getChildIndex,3
>> flashx.textLayout.elements.DivElement:getElementRelativeStart,1
>> flashx.textLayout.elements.DivElement:getFirstLeaf,5
>> flashx.textLayout.elements.DivElement:getLastLeaf,3
>> flashx.textLayout.elements.DivElement:getNextSibling,6
>> flashx.textLayout.elements.DivElement:getPreviousSibling,3
>> flashx.textLayout.elements.DivElement:numChildren,2
>> flashx.textLayout.elements.DivElement:removeChild,4
>> flashx.textLayout.elements.DivElement:removeChildAt,1
>> flashx.textLayout.elements.DivElement:setStyle,5
>> flashx.textLayout.elements.DivElement:splitAtIndex,1
>> flashx.textLayout.elements.FlowElement,30
>> flashx.textLayout.elements.FlowElement:deepCopy,1
>> flashx.textLayout.elements.FlowElement:fontStyle,1
>> flashx.textLayout.elements.FlowElement:fontWeight,1
>> flashx.textLayout.elements.FlowElement:getAbsoluteStart,2
>> flashx.textLayout.elements.FlowElement:getNextSibling,3
>> flashx.textLayout.elements.FlowElement:getParagraph,13
>> flashx.textLayout.elements.FlowElement:getParentByType,4
>> flashx.textLayout.elements.FlowElement:getStyle,4
>> flashx.textLayout.elements.FlowElement:getText,2
>> flashx.textLayout.elements.FlowElement:parent,5
>> flashx.textLayout.elements.FlowElement:setStyle,1
>> flashx.textLayout.elements.FlowElement:textDecoration,1
>> flashx.textLayout.elements.FlowElement:userStyles,2
>> flashx.textLayout.elements.FlowGroupElement,11
>> flashx.textLayout.elements.FlowGroupElement:addChild,6
>> flashx.textLayout.elements.FlowGroupElement:findLeaf,2
>> flashx.textLayout.elements.FlowGroupElement:getChildAt,2
>> flashx.textLayout.elements.FlowGroupElement:getFirstLeaf,5
>> flashx.textLayout.elements.FlowGroupElement:getStyle,13
>> flashx.textLayout.elements.FlowGroupElement:removeChild,2
>> flashx.textLayout.elements.FlowLeafElement,11
>> flashx.textLayout.elements.FlowLeafElement:getNextLeaf,1
>> flashx.textLayout.elements.FlowLeafElement:getParagraph,2
>> flashx.textLayout.elements.FlowLeafElement:getParentByType,2
>> flashx.textLayout.elements.FlowLeafElement:parent,5
>> flashx.textLayout.elements.FlowLeafElement:text,2
>> flashx.textLayout.elements.InlineGraphicElement,20
>> flashx.textLayout.elements.InlineGraphicElement:getNextSibling,1
>> flashx.textLayout.elements.InlineGraphicElement:graphic,4
>> flashx.textLayout.elements.InlineGraphicElement:height,4
>> flashx.textLayout.elements.InlineGraphicElement:lineHeight,3
>> flashx.textLayout.elements.InlineGraphicElement:source,4
>> flashx.textLayout.elements.InlineGraphicElement:width,5
>> flashx.textLayout.elements.LinkElement,20
>> flashx.textLayout.elements.LinkElement:getStyle,3
>> flashx.textLayout.elements.LinkElement:href,7
>> flashx.textLayout.elements.LinkElement:setStyle,5
>> flashx.textLayout.elements.LinkElement:target,6
>> flashx.textLayout.elements.ParagraphElement,87
>> flashx.textLayout.elements.ParagraphElement:addChild,15
>> flashx.textLayout.elements.ParagraphElement:computedFormat,1
>> flashx.textLayout.elements.ParagraphElement:deepCopy,1
>> flashx.textLayout.elements.ParagraphElement:fontFamily,2
>> flashx.textLayout.elements.ParagraphElement:fontSize,4
>> flashx.textLayout.elements.ParagraphElement:fontWeight,2
>> flashx.textLayout.elements.ParagraphElement:format,1
>> flashx.textLayout.elements.ParagraphElement:getAbsoluteStart,1
>> flashx.textLayout.elements.ParagraphElement:getChildAt,1
>> flashx.textLayout.elements.ParagraphElement:getFirstLeaf,4
>> flashx.textLayout.elements.ParagraphElement:getLastLeaf,1
>> flashx.textLayout.elements.ParagraphElement:getNextParagraph,2
>> flashx.textLayout.elements.ParagraphElement:getNextSibling,5
>> flashx.textLayout.elements.ParagraphElement:getParentByType,2
>> flashx.textLayout.elements.ParagraphElement:getPreviousSibling,1
>> flashx.textLayout.elements.ParagraphElement:getStyle,13
>> flashx.textLayout.elements.ParagraphElement:getText,2
>> flashx.textLayout.elements.ParagraphElement:parent,19
>> flashx.textLayout.elements.ParagraphElement:setStyle,38
>> flashx.textLayout.elements.ParagraphElement:textAlign,3
>> flashx.textLayout.elements.ParagraphElement:userStyles,1
>> flashx.textLayout.elements.SpanElement,40
>> flashx.textLayout.elements.SpanElement:getAbsoluteStart,1
>> flashx.textLayout.elements.SpanElement:getElementRelativeStart,2
>> flashx.textLayout.elements.SpanElement:getParagraph,1
>> flashx.textLayout.elements.SpanElement:setStyle,1
>> flashx.textLayout.elements.SpanElement:text,19
>> flashx.textLayout.elements.SpanElement:textDecoration,1
>> flashx.textLayout.elements.TextFlow,48
>> flashx.textLayout.elements.TextFlow:addChild,5
>> flashx.textLayout.elements.TextFlow:addChildAt,3
>> flashx.textLayout.elements.TextFlow:addEventListener,14
>> flashx.textLayout.elements.TextFlow:dispatchEvent,19
>> flashx.textLayout.elements.TextFlow:findLeaf,7
>> flashx.textLayout.elements.TextFlow:flowComposer,29
>> flashx.textLayout.elements.TextFlow:getChildAt,1
>> flashx.textLayout.elements.TextFlow:getChildIndex,3
>> flashx.textLayout.elements.TextFlow:getFirstLeaf,7
>> flashx.textLayout.elements.TextFlow:getLastLeaf,1
>> flashx.textLayout.elements.TextFlow:interactionManager,55
>> flashx.textLayout.elements.TextFlow:removeChild,2
>> flashx.textLayout.elements.TextFlow:removeEventListener,6
>> flashx.textLayout.elements.TextFlow:textLength,1
>> flashx.textLayout.elements.TextFlow:whiteSpaceCollapse,1
>> flashx.textLayout.elements.TextRange:absoluteEnd,4
>> flashx.textLayout.elements.TextRange:absoluteStart,5
>> flashx.textLayout.elements.TextRange:activePosition,4
>> flashx.textLayout.elements.TextRange:anchorPosition,1
>> flashx.textLayout.events.CompositionCompleteEvent,2
>> flashx.textLayout.events.CompositionCompleteEvent:COMPOSITION_COMPLETE,1
>> flashx.textLayout.events.FlowOperationEvent,23
>> flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_BEGIN,5
>> flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_COMPLETE,1
>> flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_END,1
>> flashx.textLayout.events.FlowOperationEvent:operation,17
>> flashx.textLayout.events.FlowOperationEvent:preventDefault,1
>> flashx.textLayout.events.FlowOperationEvent:stopImmediatePropagation,1
>> flashx.textLayout.events.FlowOperationEvent:stopPropagation,1
>> flashx.textLayout.events.SelectionEvent,8
>> flashx.textLayout.events.SelectionEvent:SELECTION_CHANGE,4
>> flashx.textLayout.events.TextLayoutEvent,2
>> flashx.textLayout.events.TextLayoutEvent:SCROLL,1
>> flashx.textLayout.formats.ITextLayoutFormat,7
>> flashx.textLayout.formats.TextAlign,17
>> flashx.textLayout.formats.TextAlign:CENTER,7
>> flashx.textLayout.formats.TextAlign:JUSTIFY,2
>> flashx.textLayout.formats.TextAlign:LEFT,4
>> flashx.textLayout.formats.TextAlign:RIGHT,4
>> flashx.textLayout.formats.TextDecoration,8
>> flashx.textLayout.formats.TextDecoration:NONE,3
>> flashx.textLayout.formats.TextDecoration:UNDERLINE,5
>> flashx.textLayout.formats.TextLayoutFormat,43
>> flashx.textLayout.formats.TextLayoutFormat:backgroundColor,4
>> flashx.textLayout.formats.TextLayoutFormat:color,7
>> flashx.textLayout.formats.TextLayoutFormat:fontFamily,2
>> flashx.textLayout.formats.TextLayoutFormat:fontSize,5
>> flashx.textLayout.formats.TextLayoutFormat:fontStyle,7
>> flashx.textLayout.formats.TextLayoutFormat:fontWeight,7
>> flashx.textLayout.formats.TextLayoutFormat:lineThrough,2
>> flashx.textLayout.formats.TextLayoutFormat:textAlign,6
>> flashx.textLayout.formats.TextLayoutFormat:textDecoration,4
>> flashx.textLayout.formats.WhiteSpaceCollapse,1
>> flashx.textLayout.formats.WhiteSpaceCollapse:PRESERVE,1
>> flashx.textLayout.operations.DeleteTextOperation,4
>> flashx.textLayout.operations.DeleteTextOperation:deleteSelectionState,2
>> flashx.textLayout.operations.InsertInlineGraphicOperation,1
>> flashx.textLayout.operations.InsertTextOperation,5
>> flashx.textLayout.operations.InsertTextOperation:_text,1
>> flashx.textLayout.operations.MoveChildrenOperation,1
>> flashx.textLayout.operations.PasteOperation,3
>> flashx.textLayout.operations.PasteOperation:textScrap,1
>> flashx.textLayout.operations.SplitParagraphOperation,3
>> flashx.textLayout.operations.UndoOperation,1
>> flashx.textLayout.tlf_internal,2
>> flashx.undo.IUndoManager,1
>> flashx.undo.UndoManager,5
>> flashx.undo.UndoManager:undoAndRedoItemLimit,1
>>
>
Re: TLF APIs Effort Estimate
Posted by Harbs <ha...@gmail.com>.
Alex did work getting TLF to work with spans. IIRC that was functional.
I don’t remember whether editing worked or not, but that should be doable without too much trouble if not.
You’ll need a hidden input to take the interaction, but you probably know that already.
> On Feb 17, 2021, at 6:04 PM, Yishay Weiss <yi...@hotmail.com> wrote:
>
> I am not sure which problems are app related and which are FW related. Glad to hear you're optimistic, makes me think it's worthwhile going for it. I'll try to create some tests for these APIs.
>
> Spark TextArea isn't editable so I thought there might be issues with TLF, but again, it could be Spark issues.
>
> Thanks.
> ________________________________
> From: Harbs <ha...@gmail.com>
> Sent: Wednesday, February 17, 2021 1:45 PM
> To: Apache Royale Development <de...@royale.apache.org>
> Subject: Re: TLF APIs Effort Estimate
>
> The vast majority of this should work. No?
>
>> On Feb 17, 2021, at 12:30 PM, Yishay Weiss <yi...@hotmail.com> wrote:
>>
>> Hi All,
>>
>> The app I am porting makes extensive use of some TLF APIs. Re-implementing everything differently will be difficult so I am trying to estimate the work involved in actually making the below APIs work. If anyone (prbly Harbs and Alex) has time to have a quick glance and help me asses the work involved, I would be grateful.
>>
>> Thanks,
>> Yishay
>>
>> flashx.textLayout.container.ContainerController,3
>> flashx.textLayout.container.ContainerController:compositionHeight,3
>> flashx.textLayout.container.ContainerController:getContentBounds,1
>> flashx.textLayout.container.ContainerController:setCompositionSize,1
>> flashx.textLayout.container.ContainerController:verticalScrollPosition,4
>> flashx.textLayout.conversion.ConversionType,7
>> flashx.textLayout.conversion.ConversionType:STRING_TYPE,2
>> flashx.textLayout.conversion.ConversionType:XML_TYPE,5
>> flashx.textLayout.conversion.TextConverter,18
>> flashx.textLayout.conversion.TextConverter:TEXT_LAYOUT_FORMAT,9
>> flashx.textLayout.conversion.TextConverter:export,7
>> flashx.textLayout.conversion.TextConverter:importToFlow,2
>> flashx.textLayout.edit.EditManager,3
>> flashx.textLayout.edit.EditManager:applyFormat,2
>> flashx.textLayout.edit.EditManager:applyFormatToElement,2
>> flashx.textLayout.edit.EditManager:applyLink,2
>> flashx.textLayout.edit.EditManager:applyParagraphFormat,2
>> flashx.textLayout.edit.EditManager:insertInlineGraphic,1
>> flashx.textLayout.edit.EditManager:keyDownHandler,1
>> flashx.textLayout.edit.EditManager:keyUpHandler,1
>> flashx.textLayout.edit.EditManager:textFlow,1
>> flashx.textLayout.edit.EditManager:undoManager,1
>> flashx.textLayout.edit.ElementRange,4
>> flashx.textLayout.edit.ElementRange:createElementRange,1
>> flashx.textLayout.edit.ElementRange:textFlow,1
>> flashx.textLayout.edit.IEditManager,12
>> flashx.textLayout.edit.SelectionManager:activePosition,2
>> flashx.textLayout.edit.SelectionManager:anchorPosition,1
>> flashx.textLayout.edit.SelectionManager:getCommonCharacterFormat,1
>> flashx.textLayout.edit.SelectionManager:getSelectionState,12
>> flashx.textLayout.edit.SelectionState,12
>> flashx.textLayout.edit.SelectionState:absoluteEnd,3
>> flashx.textLayout.edit.SelectionState:absoluteStart,3
>> flashx.textLayout.edit.TextFlowEdit,2
>> flashx.textLayout.edit.TextFlowEdit:makeLink,1
>> flashx.textLayout.edit.TextFlowEdit:removeLink,1
>> flashx.textLayout.edit.TextScrap:textFlow,1
>> flashx.textLayout.elements.DivElement,93
>> flashx.textLayout.elements.DivElement:addChild,11
>> flashx.textLayout.elements.DivElement:addChildAt,2
>> flashx.textLayout.elements.DivElement:getChildAt,6
>> flashx.textLayout.elements.DivElement:getChildIndex,3
>> flashx.textLayout.elements.DivElement:getElementRelativeStart,1
>> flashx.textLayout.elements.DivElement:getFirstLeaf,5
>> flashx.textLayout.elements.DivElement:getLastLeaf,3
>> flashx.textLayout.elements.DivElement:getNextSibling,6
>> flashx.textLayout.elements.DivElement:getPreviousSibling,3
>> flashx.textLayout.elements.DivElement:numChildren,2
>> flashx.textLayout.elements.DivElement:removeChild,4
>> flashx.textLayout.elements.DivElement:removeChildAt,1
>> flashx.textLayout.elements.DivElement:setStyle,5
>> flashx.textLayout.elements.DivElement:splitAtIndex,1
>> flashx.textLayout.elements.FlowElement,30
>> flashx.textLayout.elements.FlowElement:deepCopy,1
>> flashx.textLayout.elements.FlowElement:fontStyle,1
>> flashx.textLayout.elements.FlowElement:fontWeight,1
>> flashx.textLayout.elements.FlowElement:getAbsoluteStart,2
>> flashx.textLayout.elements.FlowElement:getNextSibling,3
>> flashx.textLayout.elements.FlowElement:getParagraph,13
>> flashx.textLayout.elements.FlowElement:getParentByType,4
>> flashx.textLayout.elements.FlowElement:getStyle,4
>> flashx.textLayout.elements.FlowElement:getText,2
>> flashx.textLayout.elements.FlowElement:parent,5
>> flashx.textLayout.elements.FlowElement:setStyle,1
>> flashx.textLayout.elements.FlowElement:textDecoration,1
>> flashx.textLayout.elements.FlowElement:userStyles,2
>> flashx.textLayout.elements.FlowGroupElement,11
>> flashx.textLayout.elements.FlowGroupElement:addChild,6
>> flashx.textLayout.elements.FlowGroupElement:findLeaf,2
>> flashx.textLayout.elements.FlowGroupElement:getChildAt,2
>> flashx.textLayout.elements.FlowGroupElement:getFirstLeaf,5
>> flashx.textLayout.elements.FlowGroupElement:getStyle,13
>> flashx.textLayout.elements.FlowGroupElement:removeChild,2
>> flashx.textLayout.elements.FlowLeafElement,11
>> flashx.textLayout.elements.FlowLeafElement:getNextLeaf,1
>> flashx.textLayout.elements.FlowLeafElement:getParagraph,2
>> flashx.textLayout.elements.FlowLeafElement:getParentByType,2
>> flashx.textLayout.elements.FlowLeafElement:parent,5
>> flashx.textLayout.elements.FlowLeafElement:text,2
>> flashx.textLayout.elements.InlineGraphicElement,20
>> flashx.textLayout.elements.InlineGraphicElement:getNextSibling,1
>> flashx.textLayout.elements.InlineGraphicElement:graphic,4
>> flashx.textLayout.elements.InlineGraphicElement:height,4
>> flashx.textLayout.elements.InlineGraphicElement:lineHeight,3
>> flashx.textLayout.elements.InlineGraphicElement:source,4
>> flashx.textLayout.elements.InlineGraphicElement:width,5
>> flashx.textLayout.elements.LinkElement,20
>> flashx.textLayout.elements.LinkElement:getStyle,3
>> flashx.textLayout.elements.LinkElement:href,7
>> flashx.textLayout.elements.LinkElement:setStyle,5
>> flashx.textLayout.elements.LinkElement:target,6
>> flashx.textLayout.elements.ParagraphElement,87
>> flashx.textLayout.elements.ParagraphElement:addChild,15
>> flashx.textLayout.elements.ParagraphElement:computedFormat,1
>> flashx.textLayout.elements.ParagraphElement:deepCopy,1
>> flashx.textLayout.elements.ParagraphElement:fontFamily,2
>> flashx.textLayout.elements.ParagraphElement:fontSize,4
>> flashx.textLayout.elements.ParagraphElement:fontWeight,2
>> flashx.textLayout.elements.ParagraphElement:format,1
>> flashx.textLayout.elements.ParagraphElement:getAbsoluteStart,1
>> flashx.textLayout.elements.ParagraphElement:getChildAt,1
>> flashx.textLayout.elements.ParagraphElement:getFirstLeaf,4
>> flashx.textLayout.elements.ParagraphElement:getLastLeaf,1
>> flashx.textLayout.elements.ParagraphElement:getNextParagraph,2
>> flashx.textLayout.elements.ParagraphElement:getNextSibling,5
>> flashx.textLayout.elements.ParagraphElement:getParentByType,2
>> flashx.textLayout.elements.ParagraphElement:getPreviousSibling,1
>> flashx.textLayout.elements.ParagraphElement:getStyle,13
>> flashx.textLayout.elements.ParagraphElement:getText,2
>> flashx.textLayout.elements.ParagraphElement:parent,19
>> flashx.textLayout.elements.ParagraphElement:setStyle,38
>> flashx.textLayout.elements.ParagraphElement:textAlign,3
>> flashx.textLayout.elements.ParagraphElement:userStyles,1
>> flashx.textLayout.elements.SpanElement,40
>> flashx.textLayout.elements.SpanElement:getAbsoluteStart,1
>> flashx.textLayout.elements.SpanElement:getElementRelativeStart,2
>> flashx.textLayout.elements.SpanElement:getParagraph,1
>> flashx.textLayout.elements.SpanElement:setStyle,1
>> flashx.textLayout.elements.SpanElement:text,19
>> flashx.textLayout.elements.SpanElement:textDecoration,1
>> flashx.textLayout.elements.TextFlow,48
>> flashx.textLayout.elements.TextFlow:addChild,5
>> flashx.textLayout.elements.TextFlow:addChildAt,3
>> flashx.textLayout.elements.TextFlow:addEventListener,14
>> flashx.textLayout.elements.TextFlow:dispatchEvent,19
>> flashx.textLayout.elements.TextFlow:findLeaf,7
>> flashx.textLayout.elements.TextFlow:flowComposer,29
>> flashx.textLayout.elements.TextFlow:getChildAt,1
>> flashx.textLayout.elements.TextFlow:getChildIndex,3
>> flashx.textLayout.elements.TextFlow:getFirstLeaf,7
>> flashx.textLayout.elements.TextFlow:getLastLeaf,1
>> flashx.textLayout.elements.TextFlow:interactionManager,55
>> flashx.textLayout.elements.TextFlow:removeChild,2
>> flashx.textLayout.elements.TextFlow:removeEventListener,6
>> flashx.textLayout.elements.TextFlow:textLength,1
>> flashx.textLayout.elements.TextFlow:whiteSpaceCollapse,1
>> flashx.textLayout.elements.TextRange:absoluteEnd,4
>> flashx.textLayout.elements.TextRange:absoluteStart,5
>> flashx.textLayout.elements.TextRange:activePosition,4
>> flashx.textLayout.elements.TextRange:anchorPosition,1
>> flashx.textLayout.events.CompositionCompleteEvent,2
>> flashx.textLayout.events.CompositionCompleteEvent:COMPOSITION_COMPLETE,1
>> flashx.textLayout.events.FlowOperationEvent,23
>> flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_BEGIN,5
>> flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_COMPLETE,1
>> flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_END,1
>> flashx.textLayout.events.FlowOperationEvent:operation,17
>> flashx.textLayout.events.FlowOperationEvent:preventDefault,1
>> flashx.textLayout.events.FlowOperationEvent:stopImmediatePropagation,1
>> flashx.textLayout.events.FlowOperationEvent:stopPropagation,1
>> flashx.textLayout.events.SelectionEvent,8
>> flashx.textLayout.events.SelectionEvent:SELECTION_CHANGE,4
>> flashx.textLayout.events.TextLayoutEvent,2
>> flashx.textLayout.events.TextLayoutEvent:SCROLL,1
>> flashx.textLayout.formats.ITextLayoutFormat,7
>> flashx.textLayout.formats.TextAlign,17
>> flashx.textLayout.formats.TextAlign:CENTER,7
>> flashx.textLayout.formats.TextAlign:JUSTIFY,2
>> flashx.textLayout.formats.TextAlign:LEFT,4
>> flashx.textLayout.formats.TextAlign:RIGHT,4
>> flashx.textLayout.formats.TextDecoration,8
>> flashx.textLayout.formats.TextDecoration:NONE,3
>> flashx.textLayout.formats.TextDecoration:UNDERLINE,5
>> flashx.textLayout.formats.TextLayoutFormat,43
>> flashx.textLayout.formats.TextLayoutFormat:backgroundColor,4
>> flashx.textLayout.formats.TextLayoutFormat:color,7
>> flashx.textLayout.formats.TextLayoutFormat:fontFamily,2
>> flashx.textLayout.formats.TextLayoutFormat:fontSize,5
>> flashx.textLayout.formats.TextLayoutFormat:fontStyle,7
>> flashx.textLayout.formats.TextLayoutFormat:fontWeight,7
>> flashx.textLayout.formats.TextLayoutFormat:lineThrough,2
>> flashx.textLayout.formats.TextLayoutFormat:textAlign,6
>> flashx.textLayout.formats.TextLayoutFormat:textDecoration,4
>> flashx.textLayout.formats.WhiteSpaceCollapse,1
>> flashx.textLayout.formats.WhiteSpaceCollapse:PRESERVE,1
>> flashx.textLayout.operations.DeleteTextOperation,4
>> flashx.textLayout.operations.DeleteTextOperation:deleteSelectionState,2
>> flashx.textLayout.operations.InsertInlineGraphicOperation,1
>> flashx.textLayout.operations.InsertTextOperation,5
>> flashx.textLayout.operations.InsertTextOperation:_text,1
>> flashx.textLayout.operations.MoveChildrenOperation,1
>> flashx.textLayout.operations.PasteOperation,3
>> flashx.textLayout.operations.PasteOperation:textScrap,1
>> flashx.textLayout.operations.SplitParagraphOperation,3
>> flashx.textLayout.operations.UndoOperation,1
>> flashx.textLayout.tlf_internal,2
>> flashx.undo.IUndoManager,1
>> flashx.undo.UndoManager,5
>> flashx.undo.UndoManager:undoAndRedoItemLimit,1
>>
>
Re: TLF APIs Effort Estimate
Posted by Yishay Weiss <yi...@hotmail.com>.
I am not sure which problems are app related and which are FW related. Glad to hear you're optimistic, makes me think it's worthwhile going for it. I'll try to create some tests for these APIs.
Spark TextArea isn't editable so I thought there might be issues with TLF, but again, it could be Spark issues.
Thanks.
________________________________
From: Harbs <ha...@gmail.com>
Sent: Wednesday, February 17, 2021 1:45 PM
To: Apache Royale Development <de...@royale.apache.org>
Subject: Re: TLF APIs Effort Estimate
The vast majority of this should work. No?
> On Feb 17, 2021, at 12:30 PM, Yishay Weiss <yi...@hotmail.com> wrote:
>
> Hi All,
>
> The app I am porting makes extensive use of some TLF APIs. Re-implementing everything differently will be difficult so I am trying to estimate the work involved in actually making the below APIs work. If anyone (prbly Harbs and Alex) has time to have a quick glance and help me asses the work involved, I would be grateful.
>
> Thanks,
> Yishay
>
> flashx.textLayout.container.ContainerController,3
> flashx.textLayout.container.ContainerController:compositionHeight,3
> flashx.textLayout.container.ContainerController:getContentBounds,1
> flashx.textLayout.container.ContainerController:setCompositionSize,1
> flashx.textLayout.container.ContainerController:verticalScrollPosition,4
> flashx.textLayout.conversion.ConversionType,7
> flashx.textLayout.conversion.ConversionType:STRING_TYPE,2
> flashx.textLayout.conversion.ConversionType:XML_TYPE,5
> flashx.textLayout.conversion.TextConverter,18
> flashx.textLayout.conversion.TextConverter:TEXT_LAYOUT_FORMAT,9
> flashx.textLayout.conversion.TextConverter:export,7
> flashx.textLayout.conversion.TextConverter:importToFlow,2
> flashx.textLayout.edit.EditManager,3
> flashx.textLayout.edit.EditManager:applyFormat,2
> flashx.textLayout.edit.EditManager:applyFormatToElement,2
> flashx.textLayout.edit.EditManager:applyLink,2
> flashx.textLayout.edit.EditManager:applyParagraphFormat,2
> flashx.textLayout.edit.EditManager:insertInlineGraphic,1
> flashx.textLayout.edit.EditManager:keyDownHandler,1
> flashx.textLayout.edit.EditManager:keyUpHandler,1
> flashx.textLayout.edit.EditManager:textFlow,1
> flashx.textLayout.edit.EditManager:undoManager,1
> flashx.textLayout.edit.ElementRange,4
> flashx.textLayout.edit.ElementRange:createElementRange,1
> flashx.textLayout.edit.ElementRange:textFlow,1
> flashx.textLayout.edit.IEditManager,12
> flashx.textLayout.edit.SelectionManager:activePosition,2
> flashx.textLayout.edit.SelectionManager:anchorPosition,1
> flashx.textLayout.edit.SelectionManager:getCommonCharacterFormat,1
> flashx.textLayout.edit.SelectionManager:getSelectionState,12
> flashx.textLayout.edit.SelectionState,12
> flashx.textLayout.edit.SelectionState:absoluteEnd,3
> flashx.textLayout.edit.SelectionState:absoluteStart,3
> flashx.textLayout.edit.TextFlowEdit,2
> flashx.textLayout.edit.TextFlowEdit:makeLink,1
> flashx.textLayout.edit.TextFlowEdit:removeLink,1
> flashx.textLayout.edit.TextScrap:textFlow,1
> flashx.textLayout.elements.DivElement,93
> flashx.textLayout.elements.DivElement:addChild,11
> flashx.textLayout.elements.DivElement:addChildAt,2
> flashx.textLayout.elements.DivElement:getChildAt,6
> flashx.textLayout.elements.DivElement:getChildIndex,3
> flashx.textLayout.elements.DivElement:getElementRelativeStart,1
> flashx.textLayout.elements.DivElement:getFirstLeaf,5
> flashx.textLayout.elements.DivElement:getLastLeaf,3
> flashx.textLayout.elements.DivElement:getNextSibling,6
> flashx.textLayout.elements.DivElement:getPreviousSibling,3
> flashx.textLayout.elements.DivElement:numChildren,2
> flashx.textLayout.elements.DivElement:removeChild,4
> flashx.textLayout.elements.DivElement:removeChildAt,1
> flashx.textLayout.elements.DivElement:setStyle,5
> flashx.textLayout.elements.DivElement:splitAtIndex,1
> flashx.textLayout.elements.FlowElement,30
> flashx.textLayout.elements.FlowElement:deepCopy,1
> flashx.textLayout.elements.FlowElement:fontStyle,1
> flashx.textLayout.elements.FlowElement:fontWeight,1
> flashx.textLayout.elements.FlowElement:getAbsoluteStart,2
> flashx.textLayout.elements.FlowElement:getNextSibling,3
> flashx.textLayout.elements.FlowElement:getParagraph,13
> flashx.textLayout.elements.FlowElement:getParentByType,4
> flashx.textLayout.elements.FlowElement:getStyle,4
> flashx.textLayout.elements.FlowElement:getText,2
> flashx.textLayout.elements.FlowElement:parent,5
> flashx.textLayout.elements.FlowElement:setStyle,1
> flashx.textLayout.elements.FlowElement:textDecoration,1
> flashx.textLayout.elements.FlowElement:userStyles,2
> flashx.textLayout.elements.FlowGroupElement,11
> flashx.textLayout.elements.FlowGroupElement:addChild,6
> flashx.textLayout.elements.FlowGroupElement:findLeaf,2
> flashx.textLayout.elements.FlowGroupElement:getChildAt,2
> flashx.textLayout.elements.FlowGroupElement:getFirstLeaf,5
> flashx.textLayout.elements.FlowGroupElement:getStyle,13
> flashx.textLayout.elements.FlowGroupElement:removeChild,2
> flashx.textLayout.elements.FlowLeafElement,11
> flashx.textLayout.elements.FlowLeafElement:getNextLeaf,1
> flashx.textLayout.elements.FlowLeafElement:getParagraph,2
> flashx.textLayout.elements.FlowLeafElement:getParentByType,2
> flashx.textLayout.elements.FlowLeafElement:parent,5
> flashx.textLayout.elements.FlowLeafElement:text,2
> flashx.textLayout.elements.InlineGraphicElement,20
> flashx.textLayout.elements.InlineGraphicElement:getNextSibling,1
> flashx.textLayout.elements.InlineGraphicElement:graphic,4
> flashx.textLayout.elements.InlineGraphicElement:height,4
> flashx.textLayout.elements.InlineGraphicElement:lineHeight,3
> flashx.textLayout.elements.InlineGraphicElement:source,4
> flashx.textLayout.elements.InlineGraphicElement:width,5
> flashx.textLayout.elements.LinkElement,20
> flashx.textLayout.elements.LinkElement:getStyle,3
> flashx.textLayout.elements.LinkElement:href,7
> flashx.textLayout.elements.LinkElement:setStyle,5
> flashx.textLayout.elements.LinkElement:target,6
> flashx.textLayout.elements.ParagraphElement,87
> flashx.textLayout.elements.ParagraphElement:addChild,15
> flashx.textLayout.elements.ParagraphElement:computedFormat,1
> flashx.textLayout.elements.ParagraphElement:deepCopy,1
> flashx.textLayout.elements.ParagraphElement:fontFamily,2
> flashx.textLayout.elements.ParagraphElement:fontSize,4
> flashx.textLayout.elements.ParagraphElement:fontWeight,2
> flashx.textLayout.elements.ParagraphElement:format,1
> flashx.textLayout.elements.ParagraphElement:getAbsoluteStart,1
> flashx.textLayout.elements.ParagraphElement:getChildAt,1
> flashx.textLayout.elements.ParagraphElement:getFirstLeaf,4
> flashx.textLayout.elements.ParagraphElement:getLastLeaf,1
> flashx.textLayout.elements.ParagraphElement:getNextParagraph,2
> flashx.textLayout.elements.ParagraphElement:getNextSibling,5
> flashx.textLayout.elements.ParagraphElement:getParentByType,2
> flashx.textLayout.elements.ParagraphElement:getPreviousSibling,1
> flashx.textLayout.elements.ParagraphElement:getStyle,13
> flashx.textLayout.elements.ParagraphElement:getText,2
> flashx.textLayout.elements.ParagraphElement:parent,19
> flashx.textLayout.elements.ParagraphElement:setStyle,38
> flashx.textLayout.elements.ParagraphElement:textAlign,3
> flashx.textLayout.elements.ParagraphElement:userStyles,1
> flashx.textLayout.elements.SpanElement,40
> flashx.textLayout.elements.SpanElement:getAbsoluteStart,1
> flashx.textLayout.elements.SpanElement:getElementRelativeStart,2
> flashx.textLayout.elements.SpanElement:getParagraph,1
> flashx.textLayout.elements.SpanElement:setStyle,1
> flashx.textLayout.elements.SpanElement:text,19
> flashx.textLayout.elements.SpanElement:textDecoration,1
> flashx.textLayout.elements.TextFlow,48
> flashx.textLayout.elements.TextFlow:addChild,5
> flashx.textLayout.elements.TextFlow:addChildAt,3
> flashx.textLayout.elements.TextFlow:addEventListener,14
> flashx.textLayout.elements.TextFlow:dispatchEvent,19
> flashx.textLayout.elements.TextFlow:findLeaf,7
> flashx.textLayout.elements.TextFlow:flowComposer,29
> flashx.textLayout.elements.TextFlow:getChildAt,1
> flashx.textLayout.elements.TextFlow:getChildIndex,3
> flashx.textLayout.elements.TextFlow:getFirstLeaf,7
> flashx.textLayout.elements.TextFlow:getLastLeaf,1
> flashx.textLayout.elements.TextFlow:interactionManager,55
> flashx.textLayout.elements.TextFlow:removeChild,2
> flashx.textLayout.elements.TextFlow:removeEventListener,6
> flashx.textLayout.elements.TextFlow:textLength,1
> flashx.textLayout.elements.TextFlow:whiteSpaceCollapse,1
> flashx.textLayout.elements.TextRange:absoluteEnd,4
> flashx.textLayout.elements.TextRange:absoluteStart,5
> flashx.textLayout.elements.TextRange:activePosition,4
> flashx.textLayout.elements.TextRange:anchorPosition,1
> flashx.textLayout.events.CompositionCompleteEvent,2
> flashx.textLayout.events.CompositionCompleteEvent:COMPOSITION_COMPLETE,1
> flashx.textLayout.events.FlowOperationEvent,23
> flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_BEGIN,5
> flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_COMPLETE,1
> flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_END,1
> flashx.textLayout.events.FlowOperationEvent:operation,17
> flashx.textLayout.events.FlowOperationEvent:preventDefault,1
> flashx.textLayout.events.FlowOperationEvent:stopImmediatePropagation,1
> flashx.textLayout.events.FlowOperationEvent:stopPropagation,1
> flashx.textLayout.events.SelectionEvent,8
> flashx.textLayout.events.SelectionEvent:SELECTION_CHANGE,4
> flashx.textLayout.events.TextLayoutEvent,2
> flashx.textLayout.events.TextLayoutEvent:SCROLL,1
> flashx.textLayout.formats.ITextLayoutFormat,7
> flashx.textLayout.formats.TextAlign,17
> flashx.textLayout.formats.TextAlign:CENTER,7
> flashx.textLayout.formats.TextAlign:JUSTIFY,2
> flashx.textLayout.formats.TextAlign:LEFT,4
> flashx.textLayout.formats.TextAlign:RIGHT,4
> flashx.textLayout.formats.TextDecoration,8
> flashx.textLayout.formats.TextDecoration:NONE,3
> flashx.textLayout.formats.TextDecoration:UNDERLINE,5
> flashx.textLayout.formats.TextLayoutFormat,43
> flashx.textLayout.formats.TextLayoutFormat:backgroundColor,4
> flashx.textLayout.formats.TextLayoutFormat:color,7
> flashx.textLayout.formats.TextLayoutFormat:fontFamily,2
> flashx.textLayout.formats.TextLayoutFormat:fontSize,5
> flashx.textLayout.formats.TextLayoutFormat:fontStyle,7
> flashx.textLayout.formats.TextLayoutFormat:fontWeight,7
> flashx.textLayout.formats.TextLayoutFormat:lineThrough,2
> flashx.textLayout.formats.TextLayoutFormat:textAlign,6
> flashx.textLayout.formats.TextLayoutFormat:textDecoration,4
> flashx.textLayout.formats.WhiteSpaceCollapse,1
> flashx.textLayout.formats.WhiteSpaceCollapse:PRESERVE,1
> flashx.textLayout.operations.DeleteTextOperation,4
> flashx.textLayout.operations.DeleteTextOperation:deleteSelectionState,2
> flashx.textLayout.operations.InsertInlineGraphicOperation,1
> flashx.textLayout.operations.InsertTextOperation,5
> flashx.textLayout.operations.InsertTextOperation:_text,1
> flashx.textLayout.operations.MoveChildrenOperation,1
> flashx.textLayout.operations.PasteOperation,3
> flashx.textLayout.operations.PasteOperation:textScrap,1
> flashx.textLayout.operations.SplitParagraphOperation,3
> flashx.textLayout.operations.UndoOperation,1
> flashx.textLayout.tlf_internal,2
> flashx.undo.IUndoManager,1
> flashx.undo.UndoManager,5
> flashx.undo.UndoManager:undoAndRedoItemLimit,1
>
Re: TLF APIs Effort Estimate
Posted by Harbs <ha...@gmail.com>.
The vast majority of this should work. No?
> On Feb 17, 2021, at 12:30 PM, Yishay Weiss <yi...@hotmail.com> wrote:
>
> Hi All,
>
> The app I am porting makes extensive use of some TLF APIs. Re-implementing everything differently will be difficult so I am trying to estimate the work involved in actually making the below APIs work. If anyone (prbly Harbs and Alex) has time to have a quick glance and help me asses the work involved, I would be grateful.
>
> Thanks,
> Yishay
>
> flashx.textLayout.container.ContainerController,3
> flashx.textLayout.container.ContainerController:compositionHeight,3
> flashx.textLayout.container.ContainerController:getContentBounds,1
> flashx.textLayout.container.ContainerController:setCompositionSize,1
> flashx.textLayout.container.ContainerController:verticalScrollPosition,4
> flashx.textLayout.conversion.ConversionType,7
> flashx.textLayout.conversion.ConversionType:STRING_TYPE,2
> flashx.textLayout.conversion.ConversionType:XML_TYPE,5
> flashx.textLayout.conversion.TextConverter,18
> flashx.textLayout.conversion.TextConverter:TEXT_LAYOUT_FORMAT,9
> flashx.textLayout.conversion.TextConverter:export,7
> flashx.textLayout.conversion.TextConverter:importToFlow,2
> flashx.textLayout.edit.EditManager,3
> flashx.textLayout.edit.EditManager:applyFormat,2
> flashx.textLayout.edit.EditManager:applyFormatToElement,2
> flashx.textLayout.edit.EditManager:applyLink,2
> flashx.textLayout.edit.EditManager:applyParagraphFormat,2
> flashx.textLayout.edit.EditManager:insertInlineGraphic,1
> flashx.textLayout.edit.EditManager:keyDownHandler,1
> flashx.textLayout.edit.EditManager:keyUpHandler,1
> flashx.textLayout.edit.EditManager:textFlow,1
> flashx.textLayout.edit.EditManager:undoManager,1
> flashx.textLayout.edit.ElementRange,4
> flashx.textLayout.edit.ElementRange:createElementRange,1
> flashx.textLayout.edit.ElementRange:textFlow,1
> flashx.textLayout.edit.IEditManager,12
> flashx.textLayout.edit.SelectionManager:activePosition,2
> flashx.textLayout.edit.SelectionManager:anchorPosition,1
> flashx.textLayout.edit.SelectionManager:getCommonCharacterFormat,1
> flashx.textLayout.edit.SelectionManager:getSelectionState,12
> flashx.textLayout.edit.SelectionState,12
> flashx.textLayout.edit.SelectionState:absoluteEnd,3
> flashx.textLayout.edit.SelectionState:absoluteStart,3
> flashx.textLayout.edit.TextFlowEdit,2
> flashx.textLayout.edit.TextFlowEdit:makeLink,1
> flashx.textLayout.edit.TextFlowEdit:removeLink,1
> flashx.textLayout.edit.TextScrap:textFlow,1
> flashx.textLayout.elements.DivElement,93
> flashx.textLayout.elements.DivElement:addChild,11
> flashx.textLayout.elements.DivElement:addChildAt,2
> flashx.textLayout.elements.DivElement:getChildAt,6
> flashx.textLayout.elements.DivElement:getChildIndex,3
> flashx.textLayout.elements.DivElement:getElementRelativeStart,1
> flashx.textLayout.elements.DivElement:getFirstLeaf,5
> flashx.textLayout.elements.DivElement:getLastLeaf,3
> flashx.textLayout.elements.DivElement:getNextSibling,6
> flashx.textLayout.elements.DivElement:getPreviousSibling,3
> flashx.textLayout.elements.DivElement:numChildren,2
> flashx.textLayout.elements.DivElement:removeChild,4
> flashx.textLayout.elements.DivElement:removeChildAt,1
> flashx.textLayout.elements.DivElement:setStyle,5
> flashx.textLayout.elements.DivElement:splitAtIndex,1
> flashx.textLayout.elements.FlowElement,30
> flashx.textLayout.elements.FlowElement:deepCopy,1
> flashx.textLayout.elements.FlowElement:fontStyle,1
> flashx.textLayout.elements.FlowElement:fontWeight,1
> flashx.textLayout.elements.FlowElement:getAbsoluteStart,2
> flashx.textLayout.elements.FlowElement:getNextSibling,3
> flashx.textLayout.elements.FlowElement:getParagraph,13
> flashx.textLayout.elements.FlowElement:getParentByType,4
> flashx.textLayout.elements.FlowElement:getStyle,4
> flashx.textLayout.elements.FlowElement:getText,2
> flashx.textLayout.elements.FlowElement:parent,5
> flashx.textLayout.elements.FlowElement:setStyle,1
> flashx.textLayout.elements.FlowElement:textDecoration,1
> flashx.textLayout.elements.FlowElement:userStyles,2
> flashx.textLayout.elements.FlowGroupElement,11
> flashx.textLayout.elements.FlowGroupElement:addChild,6
> flashx.textLayout.elements.FlowGroupElement:findLeaf,2
> flashx.textLayout.elements.FlowGroupElement:getChildAt,2
> flashx.textLayout.elements.FlowGroupElement:getFirstLeaf,5
> flashx.textLayout.elements.FlowGroupElement:getStyle,13
> flashx.textLayout.elements.FlowGroupElement:removeChild,2
> flashx.textLayout.elements.FlowLeafElement,11
> flashx.textLayout.elements.FlowLeafElement:getNextLeaf,1
> flashx.textLayout.elements.FlowLeafElement:getParagraph,2
> flashx.textLayout.elements.FlowLeafElement:getParentByType,2
> flashx.textLayout.elements.FlowLeafElement:parent,5
> flashx.textLayout.elements.FlowLeafElement:text,2
> flashx.textLayout.elements.InlineGraphicElement,20
> flashx.textLayout.elements.InlineGraphicElement:getNextSibling,1
> flashx.textLayout.elements.InlineGraphicElement:graphic,4
> flashx.textLayout.elements.InlineGraphicElement:height,4
> flashx.textLayout.elements.InlineGraphicElement:lineHeight,3
> flashx.textLayout.elements.InlineGraphicElement:source,4
> flashx.textLayout.elements.InlineGraphicElement:width,5
> flashx.textLayout.elements.LinkElement,20
> flashx.textLayout.elements.LinkElement:getStyle,3
> flashx.textLayout.elements.LinkElement:href,7
> flashx.textLayout.elements.LinkElement:setStyle,5
> flashx.textLayout.elements.LinkElement:target,6
> flashx.textLayout.elements.ParagraphElement,87
> flashx.textLayout.elements.ParagraphElement:addChild,15
> flashx.textLayout.elements.ParagraphElement:computedFormat,1
> flashx.textLayout.elements.ParagraphElement:deepCopy,1
> flashx.textLayout.elements.ParagraphElement:fontFamily,2
> flashx.textLayout.elements.ParagraphElement:fontSize,4
> flashx.textLayout.elements.ParagraphElement:fontWeight,2
> flashx.textLayout.elements.ParagraphElement:format,1
> flashx.textLayout.elements.ParagraphElement:getAbsoluteStart,1
> flashx.textLayout.elements.ParagraphElement:getChildAt,1
> flashx.textLayout.elements.ParagraphElement:getFirstLeaf,4
> flashx.textLayout.elements.ParagraphElement:getLastLeaf,1
> flashx.textLayout.elements.ParagraphElement:getNextParagraph,2
> flashx.textLayout.elements.ParagraphElement:getNextSibling,5
> flashx.textLayout.elements.ParagraphElement:getParentByType,2
> flashx.textLayout.elements.ParagraphElement:getPreviousSibling,1
> flashx.textLayout.elements.ParagraphElement:getStyle,13
> flashx.textLayout.elements.ParagraphElement:getText,2
> flashx.textLayout.elements.ParagraphElement:parent,19
> flashx.textLayout.elements.ParagraphElement:setStyle,38
> flashx.textLayout.elements.ParagraphElement:textAlign,3
> flashx.textLayout.elements.ParagraphElement:userStyles,1
> flashx.textLayout.elements.SpanElement,40
> flashx.textLayout.elements.SpanElement:getAbsoluteStart,1
> flashx.textLayout.elements.SpanElement:getElementRelativeStart,2
> flashx.textLayout.elements.SpanElement:getParagraph,1
> flashx.textLayout.elements.SpanElement:setStyle,1
> flashx.textLayout.elements.SpanElement:text,19
> flashx.textLayout.elements.SpanElement:textDecoration,1
> flashx.textLayout.elements.TextFlow,48
> flashx.textLayout.elements.TextFlow:addChild,5
> flashx.textLayout.elements.TextFlow:addChildAt,3
> flashx.textLayout.elements.TextFlow:addEventListener,14
> flashx.textLayout.elements.TextFlow:dispatchEvent,19
> flashx.textLayout.elements.TextFlow:findLeaf,7
> flashx.textLayout.elements.TextFlow:flowComposer,29
> flashx.textLayout.elements.TextFlow:getChildAt,1
> flashx.textLayout.elements.TextFlow:getChildIndex,3
> flashx.textLayout.elements.TextFlow:getFirstLeaf,7
> flashx.textLayout.elements.TextFlow:getLastLeaf,1
> flashx.textLayout.elements.TextFlow:interactionManager,55
> flashx.textLayout.elements.TextFlow:removeChild,2
> flashx.textLayout.elements.TextFlow:removeEventListener,6
> flashx.textLayout.elements.TextFlow:textLength,1
> flashx.textLayout.elements.TextFlow:whiteSpaceCollapse,1
> flashx.textLayout.elements.TextRange:absoluteEnd,4
> flashx.textLayout.elements.TextRange:absoluteStart,5
> flashx.textLayout.elements.TextRange:activePosition,4
> flashx.textLayout.elements.TextRange:anchorPosition,1
> flashx.textLayout.events.CompositionCompleteEvent,2
> flashx.textLayout.events.CompositionCompleteEvent:COMPOSITION_COMPLETE,1
> flashx.textLayout.events.FlowOperationEvent,23
> flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_BEGIN,5
> flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_COMPLETE,1
> flashx.textLayout.events.FlowOperationEvent:FLOW_OPERATION_END,1
> flashx.textLayout.events.FlowOperationEvent:operation,17
> flashx.textLayout.events.FlowOperationEvent:preventDefault,1
> flashx.textLayout.events.FlowOperationEvent:stopImmediatePropagation,1
> flashx.textLayout.events.FlowOperationEvent:stopPropagation,1
> flashx.textLayout.events.SelectionEvent,8
> flashx.textLayout.events.SelectionEvent:SELECTION_CHANGE,4
> flashx.textLayout.events.TextLayoutEvent,2
> flashx.textLayout.events.TextLayoutEvent:SCROLL,1
> flashx.textLayout.formats.ITextLayoutFormat,7
> flashx.textLayout.formats.TextAlign,17
> flashx.textLayout.formats.TextAlign:CENTER,7
> flashx.textLayout.formats.TextAlign:JUSTIFY,2
> flashx.textLayout.formats.TextAlign:LEFT,4
> flashx.textLayout.formats.TextAlign:RIGHT,4
> flashx.textLayout.formats.TextDecoration,8
> flashx.textLayout.formats.TextDecoration:NONE,3
> flashx.textLayout.formats.TextDecoration:UNDERLINE,5
> flashx.textLayout.formats.TextLayoutFormat,43
> flashx.textLayout.formats.TextLayoutFormat:backgroundColor,4
> flashx.textLayout.formats.TextLayoutFormat:color,7
> flashx.textLayout.formats.TextLayoutFormat:fontFamily,2
> flashx.textLayout.formats.TextLayoutFormat:fontSize,5
> flashx.textLayout.formats.TextLayoutFormat:fontStyle,7
> flashx.textLayout.formats.TextLayoutFormat:fontWeight,7
> flashx.textLayout.formats.TextLayoutFormat:lineThrough,2
> flashx.textLayout.formats.TextLayoutFormat:textAlign,6
> flashx.textLayout.formats.TextLayoutFormat:textDecoration,4
> flashx.textLayout.formats.WhiteSpaceCollapse,1
> flashx.textLayout.formats.WhiteSpaceCollapse:PRESERVE,1
> flashx.textLayout.operations.DeleteTextOperation,4
> flashx.textLayout.operations.DeleteTextOperation:deleteSelectionState,2
> flashx.textLayout.operations.InsertInlineGraphicOperation,1
> flashx.textLayout.operations.InsertTextOperation,5
> flashx.textLayout.operations.InsertTextOperation:_text,1
> flashx.textLayout.operations.MoveChildrenOperation,1
> flashx.textLayout.operations.PasteOperation,3
> flashx.textLayout.operations.PasteOperation:textScrap,1
> flashx.textLayout.operations.SplitParagraphOperation,3
> flashx.textLayout.operations.UndoOperation,1
> flashx.textLayout.tlf_internal,2
> flashx.undo.IUndoManager,1
> flashx.undo.UndoManager,5
> flashx.undo.UndoManager:undoAndRedoItemLimit,1
>