use of com.google.gwt.event.dom.client.DoubleClickHandler in project rstudio by rstudio.
the class ChooseMirrorDialog method createMainWidget.
@Override
protected Widget createMainWidget() {
// create progress container
final SimplePanelWithProgress panel = new SimplePanelWithProgress(ProgressImages.createLargeGray());
panel.setStylePrimaryName(RESOURCES.styles().mainWidget());
// show progress (with delay)
panel.showProgress(200);
// query data source for packages
mirrorSource_.requestData(new SimpleRequestCallback<JsArray<T>>() {
@Override
public void onResponseReceived(JsArray<T> mirrors) {
// keep internal list of mirrors
boolean haveInsecureMirror = false;
mirrors_ = new ArrayList<T>(mirrors.length());
// create list box and select default item
listBox_ = new ListBox();
listBox_.setMultipleSelect(false);
// all
listBox_.setVisibleItemCount(18);
listBox_.setWidth("100%");
if (mirrors.length() > 0) {
for (int i = 0; i < mirrors.length(); i++) {
T mirror = mirrors.get(i);
if (mirrorSource_.getLabel(mirror).startsWith("0-Cloud"))
continue;
mirrors_.add(mirror);
String item = mirrorSource_.getLabel(mirror);
String value = mirrorSource_.getURL(mirror);
if (!value.startsWith("https"))
haveInsecureMirror = true;
listBox_.addItem(item, value);
}
listBox_.setSelectedIndex(0);
enableOkButton(true);
}
// set it into the panel
panel.setWidget(listBox_);
// set caption
String protocolQualifer = !haveInsecureMirror ? " HTTPS" : "";
setText("Choose" + protocolQualifer + " CRAN Mirror");
// update ok button on changed
listBox_.addDoubleClickHandler(new DoubleClickHandler() {
@Override
public void onDoubleClick(DoubleClickEvent event) {
clickOkButton();
}
});
// if the list box is larger than the space we initially allocated
// then increase the panel height
final int kDefaultPanelHeight = 285;
if (listBox_.getOffsetHeight() > kDefaultPanelHeight)
panel.setHeight(listBox_.getOffsetHeight() + "px");
// set focus
FocusHelper.setFocusDeferred(listBox_);
}
@Override
public void onError(ServerError error) {
closeDialog();
super.onError(error);
}
});
return panel;
}
use of com.google.gwt.event.dom.client.DoubleClickHandler in project lienzo-core by ahome-it.
the class LienzoHandlerManager method addHandlers.
private final void addHandlers() {
m_lienzo.addClickHandler(new ClickHandler() {
@Override
public void onClick(final ClickEvent event) {
if (!m_viewport.getOnEventHandlers().getOnMouseClickEventHandle().onMouseEventBefore(event)) {
// could have been set previously by a mousedown, it will need cleaning up
m_dragging_mouse_pressed = false;
m_dragging_ignore_clicks = false;
m_dragging = false;
return;
}
onNodeMouseClick(new NodeMouseClickEvent(event));
m_mouse_button_left = (event.getNativeButton() == NativeEvent.BUTTON_LEFT);
m_mouse_button_middle = (event.getNativeButton() == NativeEvent.BUTTON_MIDDLE);
m_mouse_button_right = (event.getNativeButton() == NativeEvent.BUTTON_RIGHT);
event.preventDefault();
m_viewport.getOnEventHandlers().getOnMouseClickEventHandle().onMouseEventAfter(event);
}
});
m_lienzo.addDoubleClickHandler(new DoubleClickHandler() {
@Override
public void onDoubleClick(final DoubleClickEvent event) {
if (!m_viewport.getOnEventHandlers().getOnMouseDoubleClickEventHandle().onMouseEventBefore(event)) {
return;
}
onNodeMouseDoubleClick(new NodeMouseDoubleClickEvent(event));
m_mouse_button_left = (event.getNativeButton() == NativeEvent.BUTTON_LEFT);
m_mouse_button_middle = (event.getNativeButton() == NativeEvent.BUTTON_MIDDLE);
m_mouse_button_right = (event.getNativeButton() == NativeEvent.BUTTON_RIGHT);
event.preventDefault();
m_viewport.getOnEventHandlers().getOnMouseDoubleClickEventHandle().onMouseEventBefore(event);
}
});
m_lienzo.addMouseMoveHandler(new MouseMoveHandler() {
@Override
public void onMouseMove(final MouseMoveEvent event) {
if (!m_viewport.getOnEventHandlers().getOnMouseMoveEventHandle().onMouseEventBefore(event)) {
return;
}
if ((m_dragging) && (m_dragging_using_touches)) {
event.preventDefault();
// Ignore weird Mouse Move (0,0) in the middle of a Touch Drag on iOS/Safari
return;
}
final NodeMouseMoveEvent nevent = new NodeMouseMoveEvent(event);
if (m_mediators.handleEvent(nevent)) {
event.preventDefault();
return;
}
m_mouse_button_left = (event.getNativeButton() == NativeEvent.BUTTON_LEFT);
m_mouse_button_middle = (event.getNativeButton() == NativeEvent.BUTTON_MIDDLE);
m_mouse_button_right = (event.getNativeButton() == NativeEvent.BUTTON_RIGHT);
onNodeMouseMove(nevent);
event.preventDefault();
m_viewport.getOnEventHandlers().getOnMouseMoveEventHandle().onMouseEventBefore(event);
}
});
m_lienzo.addMouseUpHandler(new MouseUpHandler() {
@Override
public void onMouseUp(final MouseUpEvent event) {
if (!m_viewport.getOnEventHandlers().getOnMouseUpEventHandle().onMouseEventBefore(event)) {
// could have been set previously by a mousedown, it will need cleaning up
m_dragging_mouse_pressed = false;
m_dragging_ignore_clicks = false;
m_dragging = false;
return;
}
final NodeMouseUpEvent nevent = new NodeMouseUpEvent(event);
if (m_mediators.handleEvent(nevent)) {
return;
}
m_mouse_button_left = (event.getNativeButton() == NativeEvent.BUTTON_LEFT);
m_mouse_button_middle = (event.getNativeButton() == NativeEvent.BUTTON_MIDDLE);
m_mouse_button_right = (event.getNativeButton() == NativeEvent.BUTTON_RIGHT);
onNodeMouseUp(nevent);
m_viewport.getOnEventHandlers().getOnMouseUpEventHandle().onMouseEventBefore(event);
}
});
m_lienzo.addMouseDownHandler(new MouseDownHandler() {
@Override
public void onMouseDown(final MouseDownEvent event) {
if (!m_viewport.getOnEventHandlers().getOnMouseDownEventHandle().onMouseEventBefore(event)) {
return;
}
final NodeMouseDownEvent nevent = new NodeMouseDownEvent(event);
if (m_mediators.handleEvent(nevent)) {
event.preventDefault();
return;
}
m_mouse_button_left = (event.getNativeButton() == NativeEvent.BUTTON_LEFT);
m_mouse_button_middle = (event.getNativeButton() == NativeEvent.BUTTON_MIDDLE);
m_mouse_button_right = (event.getNativeButton() == NativeEvent.BUTTON_RIGHT);
onNodeMouseDown(nevent);
event.preventDefault();
m_viewport.getOnEventHandlers().getOnMouseDownEventHandle().onMouseEventBefore(event);
}
});
m_lienzo.addMouseOutHandler(new MouseOutHandler() {
@Override
public void onMouseOut(final MouseOutEvent event) {
final NodeMouseOutEvent nevent = new NodeMouseOutEvent(event);
if (m_mediators.handleEvent(nevent)) {
return;
}
onNodeMouseOut(nevent);
}
});
m_lienzo.addMouseOverHandler(new MouseOverHandler() {
@Override
public void onMouseOver(final MouseOverEvent event) {
final NodeMouseOverEvent nevent = new NodeMouseOverEvent(event);
if (m_mediators.handleEvent(nevent)) {
return;
}
onNodeMouseOver(nevent);
}
});
m_lienzo.addMouseWheelHandler(new MouseWheelHandler() {
@Override
public void onMouseWheel(final MouseWheelEvent event) {
final NodeMouseWheelEvent nevent = new NodeMouseWheelEvent(event);
if (m_mediators.handleEvent(nevent)) {
event.preventDefault();
event.stopPropagation();
} else {
fireEvent(nevent);
}
}
});
m_lienzo.addTouchCancelHandler(new TouchCancelHandler() {
@Override
public void onTouchCancel(final TouchCancelEvent event) {
final NodeTouchCancelEvent nevent = new NodeTouchCancelEvent(event, getTouches(event));
if (m_mediators.handleEvent(event)) {
event.preventDefault();
return;
}
onNodeMouseOut(nevent);
event.preventDefault();
}
});
m_lienzo.addTouchEndHandler(new TouchEndHandler() {
@Override
public void onTouchEnd(final TouchEndEvent event) {
final NodeTouchEndEvent nevent = new NodeTouchEndEvent(event, m_touches);
if (m_mediators.handleEvent(nevent)) {
event.preventDefault();
return;
}
onNodeMouseUp(nevent);
event.preventDefault();
}
});
m_lienzo.addTouchMoveHandler(new TouchMoveHandler() {
@Override
public void onTouchMove(final TouchMoveEvent event) {
m_touches = getTouches(event);
final NodeTouchMoveEvent nevent = new NodeTouchMoveEvent(event, m_touches);
if (m_mediators.handleEvent(nevent)) {
event.preventDefault();
return;
}
onNodeMouseMove(nevent);
event.preventDefault();
}
});
m_lienzo.addTouchStartHandler(new TouchStartHandler() {
@Override
public void onTouchStart(final TouchStartEvent event) {
m_touches = getTouches(event);
final NodeTouchStartEvent nevent = new NodeTouchStartEvent(event, m_touches);
if (m_mediators.handleEvent(nevent)) {
event.preventDefault();
return;
}
onNodeMouseDown(nevent);
event.preventDefault();
}
});
m_lienzo.addGestureStartHandler(new GestureStartHandler() {
@Override
public void onGestureStart(final GestureStartEvent event) {
final NodeGestureStartEvent nevent = new NodeGestureStartEvent(event.getScale(), event.getRotation());
if (m_mediators.handleEvent(nevent)) {
event.preventDefault();
return;
}
fireEvent(nevent);
event.preventDefault();
}
});
m_lienzo.addGestureEndHandler(new GestureEndHandler() {
@Override
public void onGestureEnd(final GestureEndEvent event) {
final NodeGestureEndEvent nevent = new NodeGestureEndEvent(event.getScale(), event.getRotation());
if (m_mediators.handleEvent(nevent)) {
event.preventDefault();
return;
}
fireEvent(nevent);
event.preventDefault();
}
});
m_lienzo.addGestureChangeHandler(new GestureChangeHandler() {
@Override
public void onGestureChange(final GestureChangeEvent event) {
final NodeGestureChangeEvent nevent = new NodeGestureChangeEvent(event.getScale(), event.getRotation());
if (m_mediators.handleEvent(nevent)) {
event.preventDefault();
return;
}
fireEvent(nevent);
event.preventDefault();
}
});
}
use of com.google.gwt.event.dom.client.DoubleClickHandler in project che by eclipse.
the class RevisionListViewImpl method createRevisionsTable.
private void createRevisionsTable(org.eclipse.che.ide.Resources coreRes) {
Column<Revision, String> idColumn = new Column<Revision, String>(new TextCell()) {
@Override
public String getValue(Revision revision) {
return revision.getId().substring(0, 8) + "...";
}
};
Column<Revision, String> timeColumn = new Column<Revision, String>(new TextCell()) {
@Override
public String getValue(Revision revision) {
return dateTimeFormatter.getFormattedDate(revision.getCommitTime());
}
};
Column<Revision, String> authorColumn = new Column<Revision, String>(new TextCell()) {
@Override
public String getValue(Revision revision) {
return revision.getCommitter().getName();
}
};
Column<Revision, String> titleColumn = new Column<Revision, String>(new TextCell()) {
@Override
public String getValue(Revision revision) {
return revision.getMessage().substring(0, 50);
}
};
revisions = new CellTable<>(15, coreRes);
revisions.setWidth("100%");
revisions.addColumn(idColumn, locale.viewCompareRevisionTableIdTitle());
revisions.addColumn(timeColumn, locale.viewCompareRevisionTableTimeTitle());
revisions.addColumn(authorColumn, locale.viewCompareRevisionTableAuthorTitle());
revisions.addColumn(titleColumn, locale.viewCompareRevisionTableTitleTitle());
selectionModel = new SingleSelectionModel<Revision>();
selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {
@Override
public void onSelectionChange(SelectionChangeEvent event) {
description.setText(selectionModel.getSelectedObject().getMessage());
delegate.onRevisionSelected(selectionModel.getSelectedObject());
}
});
revisions.setSelectionModel(selectionModel);
revisions.addDomHandler(new DoubleClickHandler() {
@Override
public void onDoubleClick(DoubleClickEvent event) {
delegate.onRevisionDoubleClicked();
}
}, DoubleClickEvent.getType());
this.revisionsPanel.add(revisions);
}
use of com.google.gwt.event.dom.client.DoubleClickHandler in project che by eclipse.
the class HistoryViewImpl method createRevisionsTable.
private void createRevisionsTable(org.eclipse.che.ide.Resources coreRes) {
Column<Revision, String> idColumn = new Column<Revision, String>(new TextCell()) {
@Override
public String getValue(Revision revision) {
return revision.getId().substring(0, 8) + "...";
}
};
Column<Revision, String> timeColumn = new Column<Revision, String>(new TextCell()) {
@Override
public String getValue(Revision revision) {
return dateTimeFormatter.getFormattedDate(revision.getCommitTime());
}
};
Column<Revision, String> authorColumn = new Column<Revision, String>(new TextCell()) {
@Override
public String getValue(Revision revision) {
return revision.getCommitter().getName();
}
};
Column<Revision, String> titleColumn = new Column<Revision, String>(new TextCell()) {
@Override
public String getValue(Revision revision) {
return revision.getMessage().substring(0, 50);
}
};
revisions = new CellTable<>(15, coreRes);
revisions.setWidth("100%");
revisions.addColumn(idColumn, locale.viewCompareRevisionTableIdTitle());
revisions.addColumn(timeColumn, locale.viewCompareRevisionTableTimeTitle());
revisions.addColumn(authorColumn, locale.viewCompareRevisionTableAuthorTitle());
revisions.addColumn(titleColumn, locale.viewCompareRevisionTableTitleTitle());
selectionModel = new SingleSelectionModel<Revision>();
selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {
@Override
public void onSelectionChange(SelectionChangeEvent event) {
description.setText(selectionModel.getSelectedObject().getMessage());
delegate.onRevisionSelected(selectionModel.getSelectedObject());
}
});
revisions.setSelectionModel(selectionModel);
revisions.addDomHandler(new DoubleClickHandler() {
@Override
public void onDoubleClick(DoubleClickEvent event) {
delegate.onRevisionDoubleClicked();
}
}, DoubleClickEvent.getType());
this.revisionsPanel.add(revisions);
}
use of com.google.gwt.event.dom.client.DoubleClickHandler in project rstudio by rstudio.
the class WidgetListBox method addItem.
public void addItem(final T item, boolean atEnd) {
// wrap the widget in a panel that can receive click events, indicate
// selection, etc.
final ClickableHTMLPanel panel = new ClickableHTMLPanel();
panel.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
setSelectedIndex(panel_.getWidgetIndex(panel), true);
}
});
panel.addDomHandler(new DoubleClickHandler() {
@Override
public void onDoubleClick(DoubleClickEvent event) {
SelectionCommitEvent.fire(WidgetListBox.this, item);
}
}, DoubleClickEvent.getType());
panel.add(item);
// add the panel to our root layout panel
if (!atEnd && panel_.getWidgetCount() > 0) {
panel_.insert(panel, 0);
items_.add(0, item);
options_.add(0, panel);
selectedIdx_++;
} else {
panel_.add(panel);
items_.add(item);
options_.add(panel);
}
panel.getElement().getStyle().setPadding(itemPaddingValue_, itemPaddingUnit_);
panel.addStyleName(style_.anyItem());
panel.addStyleName(ThemeResources.INSTANCE.themeStyles().handCursor());
// if it's the first item, select it
if (options_.size() == 1)
setSelectedIndex(0);
else if (!atEnd && getSelectedIndex() == 1 && options_.size() > 1)
setSelectedIndex(0, true);
updateEmptyText();
}
Aggregations