Thursday, September 1, 2011

Re: Click Listener on CellTableRow

You retreive the item by using the currentSelectedItem. But on click,
the row is actually not selected. So you will get the Item of the
previous selected row.

Is there not "normal" way for handling a click on a row of a
celltable?
On a flex table there is a "addTableListener" method. but this is
deprecated. On a HTMLTable there is the method "getcellforEvent". But
how I can do this with a CellTable??

I only want to have the index of the row that I have clicked.

Can somebody pleas help me????

On 31 Aug., 21:28, Juan Pablo Gardella <gardellajuanpa...@gmail.com>
wrote:
> You can extend CellTable and overwritte onBrowserEvent2.
>
>  @Override
>   protected void onBrowserEvent2(Event event) {
>     super.onBrowserEvent2(event);
>
>     String eventType = event.getType();
>     boolean isClick = "click".equals(eventType);
>
>     // Get the event target.
>     EventTarget eventTarget = event.getEventTarget();
>     if (!Element.is(eventTarget)) {
>       return;
>     }
>     final Element target = event.getEventTarget().cast();
>
>     if (isClick) {
>       int columnClicked = getCellIndex(target);
>       boolean isExcludedColumn =
>           this.excludedColumns != null
>               && (Arrays.binarySearch(this.excludedColumns, columnClicked)>= 0);
>
>       if (!"input".equalsIgnoreCase(target.getTagName())
>           && !isExcludedColumn) {
>         T item = getCurrentSelectedItem(target);
>        //do something
>       }
>     }
>   }
>
> 2011/8/31 Foermchen82 <Juergen.F...@gmx.de>
>
>
>
>
>
>
>
> > Hi,
>
> > I want to handle click events on cell table rows. But i'm not able to
> > do this!
>
> > I tried the following code:
>
> > CellTable<MyObject> table = new CellTable<MyObject>();
> > final SingleSelectionModel<MyObject> model = new
> > SingleSelectionModel<MyObject>();
> >                table.setSelectionModel(model);
>
> >                table.addHandler(new ClickHandler() {
>
> >                        @Override
> >                        public void onClick(ClickEvent event) {
> >                                try{
>
> >  Window.alert(model.getSelectedObject());
> >                                }
> >                                catch(Exception e){
> >                                        System.out.println(e);
> >                                }
> >                        }
> >                }, ClickEvent.getType());
>
> > The problem is, that I try to get the object of the row on which I
> > have clicked. But on the click, the row under the mouse is actually
> > not selected. so the popup shows the wrong object.
>
> > How can I retreive the object under the mouse?
>
> > Kind regards,
>
> > --
> > You received this message because you are subscribed to the Google Groups
> > "Google Web Toolkit" group.
> > To post to this group, send email to google-web-toolkit@googlegroups.com.
> > To unsubscribe from this group, send email to
> > google-web-toolkit+unsubscribe@googlegroups.com.
> > For more options, visit this group at
> >http://groups.google.com/group/google-web-toolkit?hl=en.

--
You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to google-web-toolkit+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.

No comments:

Post a Comment