[
https://issues.apache.org/jira/browse/FOP-2293?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13791302#comment-13791302
]
Seifeddine Dridi edited comment on FOP-2293 at 10/10/13 8:17 AM:
-----------------------------------------------------------------
Sorry about the inconvenience. Didn't know the patch was missing files...
{quote}
BestFit.filter: why would you want to remove children FO nodes? Seems to me
like you just want to somehow select the right one.
{quote}
That is going to change, since modifying the FO tree is not recommended after
all (see Glenn's comment). I'm still searching for other solutions to
incorporate the best-fit extension. Maybe I'll integrate the code of
_BestFitLayoutManager_ directly inside _MultiSwitchLayoutManager_.
{quote}
MultiCase.isActuated: are you sure about the test? Do you want to implement
this method at all? In the case of your extension there will be no actuation.
{quote}
The purpose of that method is to check whether the multi-case in question has
been actuated by a multi-toggle or not. It has nothing to do with the
_best-fit_ extension...
{quote}
MultiSwitch.finalizeNode: the selection of the best node cannot be done here?
You have to wait for the results of layout?
{quote}
Right, but without the extension we can find out the currently visible
multi-case early on.
{quote}
MultiToggle: why do you implement a filter method in this class? From what I
understood you're not going to use that element in your extension. Therefore
you don't have to implement it. Otherwise you have to test it...
{quote}
the multi-toggle is responsible for actuating its parent multi-case. It works
based on the currently visible multi-case and the switch-to property. Please
have a look at the newly attached patch.
In case you didn't notice, I removed the old test case in
_KnuthAlgorithmTestCase_ because it doesn't work anymore and so many things
have changed. I'm planning to add new test cases, but right now I want to focus
on improving the core logic of my extension, because the current implementation
has many limitations (no support for stretching/shrinking of glues, no support
for IPD size, etc..) and it doesn't fit very well with the rest of the layout
engine.
Thanks for your review
was (Author: sdridi):
Sorry about the inconvenience. Didn't know the patch was missing files...
{quote}
BestFit.filter: why would you want to remove children FO nodes? Seems to me
like you just want to somehow select the right one.
{quote}
That is going to change, since modifying the FO tree is not recommended after
all (see Glenn's comment). I'm still searching for other solutions to
incorporate the best-fit extension. Maybe I'll integrate the code of
_BestFitLayoutManager_ directly inside _MultiSwitchLayoutManager_.
{quote}
MultiCase.isActuated: are you sure about the test? Do you want to implement
this method at all? In the case of your extension there will be no actuation.
{quote}
The purpose of that method is to check whether the multi-case in question has
been actuated by a multi-toggle or not. It has nothing to do with the
_best-fit_ extension...
{quote}
MultiSwitch.finalizeNode: the selection of the best node cannot be done here?
You have to wait for the results of layout?
{quote}
Right, but without the extension we can find out the currently visible
multi-case early on.
{quote}
MultiToggle: why do you implement a filter method in this class? From what I
understood you're not going to use that element in your extension. Therefore
you don't have to implement it. Otherwise you have to test it...
{quote}
the multi-toggle is responsible for actuating its parent multi-case. It works
based on the currently visible multi-case and the switch-to property. Please
have a look at the newly attached patch.
In case you didn't notice, I removed the old test case in
_KnuthAlgorithmTestCase_ because it doesn't work anymore and so many things
have changed. I'm planning to add new test cases, but right now I want to focus
on improving the core logic of my extension, because the current implementation
has many limitations (no support for stretching/shrinking of glues, no support
for IPD size, etc..) and it doesn't fit very well with the rest of the layout
engine.
Thank for your review
> Whitespace management extension
> -------------------------------
>
> Key: FOP-2293
> URL: https://issues.apache.org/jira/browse/FOP-2293
> Project: Fop
> Issue Type: New Feature
> Components: general
> Affects Versions: trunk
> Reporter: Seifeddine Dridi
> Priority: Minor
> Labels: XSL-FO
> Fix For: trunk
>
> Attachments: bestfit.fo, doc.pdf, FO_multi-switch_test.fo,
> FO_multi-switch_with_best-fit_extension.patch, multiple-feasible-nodes.fo,
> multi-switch_bestfit.fo, patch.patch, patch-rev1.1.patch, patch-rev1.patch,
> patch-rev2.patch
>
>
> I have been working on an extension for whitespace management, similar to
> what's described here:
> http://wiki.apache.org/xmlgraphics-fop/WhitespaceManagement
> The logic of the extension is very simple: the user defines a set of
> alternatives that he wishes to insert at the end of a page, then if there is
> enough space left, FOP will pick the alternative that best matches the user's
> selection criteria (first fit, smallest fit, biggest fit).
> This is my first work on FOP and it took me almost 2 months to reach this
> stage in development. But it's not the end of course, so I'm relying on your
> feedback to improve it.
> Thank you
--
This message was sent by Atlassian JIRA
(v6.1#6144)