[ 
https://issues.apache.org/jira/browse/WICKET-789?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Janne Hietamäki closed WICKET-789.
----------------------------------

    Resolution: Won't Fix

> New ExtensibleChoiceAutocomplete
> --------------------------------
>
>                 Key: WICKET-789
>                 URL: https://issues.apache.org/jira/browse/WICKET-789
>             Project: Wicket
>          Issue Type: Improvement
>          Components: wicket-extensions
>         Environment: all platforms
>            Reporter: Francisco Diaz Trepat
>            Assignee: Janne Hietamäki
>            Priority: Minor
>             Fix For: 1.3.0-rc2
>
>         Attachments: AutocompleteTestCase.rar, AutocompleteTestCase.rar
>
>
> The idea is to have an autocomplete behavior that allows you to have a key 
> and value if you need it. This is done by either including a hidden field or 
> some other component as the key receiver when a choice gets selected, or it 
> can be left out and works exactly like the one that is know available in the 
> extensions package. 
> The thing started out as the current implementation used a fixed "node path" 
> to get the elements that needed to render select etc. Now it uses an 
> option/choice name. 
> To do this I had to re-write the JavaScript and All the abstract classes so I 
> did a new package all together.
> And renamed all of the classes to have both of them without any conflicts. I 
> also included a new collection class in the javascript to help out and I 
> putted on a Wicket.Collection "package", and also named this autocomplete as 
> ExtensibleChoiceAutocomplete. Extensible because you can put in it any html 
> markup you feel like and it will work (choose arrows etc), Choice because it 
> can use key and value like a DropdownChoice, and Autocomplete because it is 
> an autocomplete.  
> All naming convention might be wrong and some of my code might not make the 
> grade for you guys, so what I would like is to have someone review it and see 
> if it is considered to be included somewhere. 
> Wicket is awesome, I get lots of help all the time, and just want to 
> contribute.
> There are some algorithms in the current Autocomplete JavaScript that didn't 
> worked on IE 7 and IE 6 because of a well known issue on IE that is that it 
> does not refresh document DOM on the assignment of the innerHTML property of 
> an element. But that is taken care of by using element.all collection that 
> works for IE 7 and 6.
> Both wicket-extenssions and scriptaculos don't support just any html. They 
> both support putting <ul><li> with inside them any html like images <img> and 
> divs spans <p> etc. It also supports puting <div><div> or span div or span 
> span etc on wicket if you change a little bit. 
> But that doesn't mean any html. For instance you cannot put a table with rows 
> and colunms and then have the rows painted over key controls like up down 
> left & right  arrows.
> In scriptaculous looks for ul and the wicket one lives that open with the 
> renderer but it is fixed on the JavaScript by looking at the, 
> menu.firstChild.childNodes , that means that inside the menu container you 
> cannot put any html that whould argue that path that is.
> Menu Container
>   Your Choices Container
>     Your Choices
> Inside a table you have:
> Menu Container
>    Your Table
>       Your Table Body (this is put in the DOM whether you specify it or not. 
>          Your Rows 
> This is not accesible due to the firstChild.childNodes which in this case 
> would translate to table.tableBody and not the tr that you maight need. Also 
> the event handlers for key down key pressed etc are similar.
> Also my code is usually considered heavily commented so as I see wicket code 
> in general is not, maybe the reviewer would have to erase some comments.  
> Feel Free is the key. I want to contribute, keep contributing in the future, 
> and learn a proper way not to step on any one's feet.
> Best regards,
> f(t)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to