Done: https://github.com/wicketstuff/core/pull/402
Cheers, -Tom > On 30.04.2015, at 09:31, Martin Grigorov <mgrigo...@apache.org> wrote: > > Hi Tom, > > Please send a PR with your suggested changes/improvements and we will > discuss them. > Thanks! > > Martin Grigorov > Wicket Training and Consulting > https://twitter.com/mtgrigorov > > On Thu, Apr 30, 2015 at 10:27 AM, Tom Götz <t...@decoded.de> wrote: > >> I found the source of the mentioned changes: >> >> https://github.com/wicketstuff/core/commit/79781d83cf11ac63d2e661328fa7176b93184c64 >> >> -Tom >> >> >>> On 30.04.2015, at 08:58, Tom Götz <t...@decoded.de> wrote: >>> >>> See my inline comments >>> >>>> On 30.04.2015, at 04:29, Maxim Solodovnik <solomax...@gmail.com> wrote: >>>> >>>> >>>> The changes I have made were (most probably) merged from original Igor's >>>> code (https://github.com/ivaynberg/wicket-select2) >>> >>> I can’t find the "List<T> choices“ property of AbstractSelect2Choice >> anywhere in Igor’s original code, so I don’t know where it should have been >> merged from. >>> >>> What should be the purpose of having to provide a ChoiceProvider *and* a >> list of choices?! Currently you have to provide both to avoid an exception >> upon construction, which is … weird ;) and breaks existing implementations. >>> >>> >>>> 1) I believe this is since AbstractSelect2Choice is parent class for for >>>> Single and Multi choices. >>> >>> That is so, but what does this explain? ;) >>> >>> >>>> 2) the code was refactored a bit, so line numbers were changed. This >>>> constructor: >>>> >> https://github.com/wicketstuff/core/blob/wicket-6.x/jdk-1.6-parent/select2-parent/select2/src/main/java/org/wicketstuff/select2/AbstractSelect2Choice.java#L109 >>>> seems to not throwing any exceptions >>> >>> Yeah, but another does. This pattern does not make any sense to me: >>> >>> class Foo { >>> >>> public Foo(Object a) { >>> this(a, null); >>> } >>> >>> public Foo(Object a, Object b) { >>> if (b == null) >>> throw new IllegalArgumentException(); >>> this.a = a; >>> this.b = b; >>> } >>> } >>> >>> >>>> 3) you can call constructor mentioned in 2 to avoid exception. >>> >>> … >>> >>> >>>> 4) I guess renderChoice method is designed to render single choice >> object, >>>> you can override it (for ex. to add your own properties to each choice) >>>> other 2 methods are private helpers >>> >>> renderChoice is called from within renderChoices which is called from >> within renderHead. But only if !isAjax(), and: >>> >>> public boolean isAjax() >>> { >>> return provider != null; >>> } >>> >>> …? >>> >>> That means: if no ChoiceProvider is set, then use the static List<T> >> choices, but if you don’t provide a ChoiceProvider in the constructor >> you’ll get an IllegalArgumentException. >>> >>> This code is broken and doesn’t make any sense *to me*, or I didn’t get >> it yet ;-) >>> >>> My proposal is: >>> >>> if nobody can tell which problem should be solved with the introduced >> List<T> choices I would revert it to get a working implementation again, as >> it is currently unusable. >>> >>> Personally, I need to upgrade the select.js library in our project, >> therefor I was looking at wicketstuff-select2, as we still use the original >> wicket-select2 implementation. The current state of it leaves mit three >> options, in order of priority: >>> >>> a) >>> convince the wicketstuff-select2 maintainers to revert the code to a >> working state, which I am currently doing ;-) >>> >>> b) >>> fork wicketstuff-select2 and provide own (working) implementation >>> >>> c) >>> stick with Igor’s original code, which means: no upgrades to select2.js >>> >>> >>> Maybe someone else can shed some light on this? >>> >>> Cheers, >>> -Tom >>> >>> >>> >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org >>> For additional commands, e-mail: users-h...@wicket.apache.org >>> >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org >> For additional commands, e-mail: users-h...@wicket.apache.org >> >> --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org