]> source.dussan.org Git - vaadin-framework.git/blob
55f22a6e815c86f36b4800fbd94e25ee3398d3d3
[vaadin-framework.git] /
1 /*
2  * Copyright 2000-2018 Vaadin Ltd.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License"); you may not
5  * use this file except in compliance with the License. You may obtain a copy of
6  * the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
12  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
13  * License for the specific language governing permissions and limitations under
14  * the License.
15  */
16 package com.vaadin.v7.client.widget.grid.events;
17
18 import com.google.gwt.dom.client.BrowserEvents;
19 import com.vaadin.v7.client.widget.grid.CellReference;
20 import com.vaadin.v7.client.widget.grid.events.AbstractGridMouseEventHandler.GridDoubleClickHandler;
21 import com.vaadin.v7.client.widgets.Grid;
22 import com.vaadin.v7.client.widgets.Grid.AbstractGridMouseEvent;
23 import com.vaadin.v7.shared.ui.grid.GridConstants.Section;
24
25 /**
26  * Represents native mouse double click event in Grid.
27  *
28  * @since 7.4
29  * @author Vaadin Ltd
30  */
31 public class GridDoubleClickEvent
32         extends AbstractGridMouseEvent<GridDoubleClickHandler> {
33
34     public static final Type<GridDoubleClickHandler> TYPE = new Type<GridDoubleClickHandler>(
35             BrowserEvents.DBLCLICK, new GridDoubleClickEvent());
36
37     /**
38      * @since 7.7.9
39      */
40     public GridDoubleClickEvent() {
41     }
42
43     /**
44      * @deprecated This constructor's arguments are no longer used. Use the
45      *             no-args constructor instead.
46      */
47     @Deprecated
48     public GridDoubleClickEvent(Grid<?> grid, CellReference<?> targetCell) {
49     }
50
51     @Override
52     public Type<GridDoubleClickHandler> getAssociatedType() {
53         return TYPE;
54     }
55
56     @Override
57     protected String getBrowserEventType() {
58         return BrowserEvents.DBLCLICK;
59     }
60
61     @Override
62     protected void doDispatch(GridDoubleClickHandler handler, Section section) {
63         if ((section == Section.BODY
64                 && handler instanceof BodyDoubleClickHandler)
65                 || (section == Section.HEADER
66                         && handler instanceof HeaderDoubleClickHandler)
67                 || (section == Section.FOOTER
68                         && handler instanceof FooterDoubleClickHandler)) {
69             handler.onDoubleClick(this);
70         }
71     }
72 }