use of com.google.gwt.user.client.ui.FlowPanel in project che by eclipse.
the class PreviewViewImpl method checkParentState.
private void checkParentState(TreeItem treeItem, Boolean value) {
TreeItem parentItem = treeItem.getParentItem();
if (parentItem == null) {
return;
}
if (!(parentItem.getWidget() instanceof FlowPanel)) {
return;
}
FlowPanel parentChangeContainer = (FlowPanel) parentItem.getWidget();
if (!(parentChangeContainer.getWidget(0) instanceof CheckBox)) {
return;
}
CheckBox parentCheckBox = (CheckBox) parentChangeContainer.getWidget(0);
if (value && !parentCheckBox.getValue()) {
parentCheckBox.setValue(true);
checkParentState(parentItem, true);
}
}
use of com.google.gwt.user.client.ui.FlowPanel in project che by eclipse.
the class PreviewViewImpl method createTreeElement.
private void createTreeElement(final TreeItem root, String changeName, List<RefactoringPreview> children) {
FlowPanel element = new FlowPanel();
element.getElement().getStyle().setFloat(LEFT);
CheckBox itemCheckBox = new CheckBox();
itemCheckBox.setValue(true);
itemCheckBox.getElement().getStyle().setFloat(LEFT);
itemCheckBox.getElement().getStyle().setMarginTop(3, PX);
Label name = new Label(changeName);
name.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
delegate.onSelectionChanged(containerChanges.get(root));
root.setSelected(true);
}
});
name.getElement().getStyle().setFloat(LEFT);
element.add(itemCheckBox);
element.add(name);
root.setWidget(element);
element.getElement().getParentElement().getStyle().setMargin(1, PX);
itemCheckBox.addValueChangeHandler(new ValueChangeHandler<Boolean>() {
@Override
public void onValueChange(ValueChangeEvent<Boolean> event) {
checkChildrenState(root, event.getValue());
checkParentState(root, event.getValue());
RefactoringPreview change = containerChanges.get(root);
change.setEnabled(event.getValue());
delegate.onEnabledStateChanged(change);
}
});
if (children.isEmpty()) {
return;
}
for (RefactoringPreview child : children) {
TreeItem treeItem = new TreeItem();
containerChanges.put(treeItem, child);
createTreeElement(treeItem, child.getText(), child.getChildrens());
root.addItem(treeItem);
}
}
use of com.google.gwt.user.client.ui.FlowPanel in project gwt-test-utils by gwt-test-utils.
the class GwtBootstrapModule method onModuleLoad.
public void onModuleLoad() {
FlowPanel panel = new FlowPanel();
RootLayoutPanel.get().add(panel);
widget = new TestWidget();
panel.add(widget);
}
use of com.google.gwt.user.client.ui.FlowPanel in project rstudio by rstudio.
the class ModifyKeyboardShortcutsWidget method createMainWidget.
@Override
protected Widget createMainWidget() {
resetState();
setEscapeDisabled(true);
setEnterDisabled(true);
previewHandler_ = Event.addNativePreviewHandler(new NativePreviewHandler() {
@Override
public void onPreviewNativeEvent(NativePreviewEvent preview) {
if (swallowNextKeyUpEvent_ && preview.getTypeInt() == Event.ONKEYUP) {
swallowNextKeyUpEvent_ = false;
preview.cancel();
preview.getNativeEvent().stopPropagation();
preview.getNativeEvent().preventDefault();
} else if (preview.getTypeInt() == Event.ONKEYDOWN) {
int keyCode = preview.getNativeEvent().getKeyCode();
if (keyCode == KeyCodes.KEY_ESCAPE || keyCode == KeyCodes.KEY_ENTER) {
// If the DataGrid (or an underlying element) has focus, let it
// handle the escape / enter key.
Element target = preview.getNativeEvent().getEventTarget().cast();
Element foundTable = DomUtils.findParentElement(target, new ElementPredicate() {
@Override
public boolean test(Element el) {
return el.equals(table_.getElement());
}
});
if (foundTable != null)
return;
// the widget.
if (filterWidget_.isFocused()) {
if (keyCode == KeyCodes.KEY_ENTER) {
table_.setKeyboardSelectedRow(0);
table_.setKeyboardSelectedColumn(0);
return;
} else if (keyCode == KeyCodes.KEY_ESCAPE) {
focusOkButton();
return;
}
}
// Otherwise, handle Enter / Escape 'modally' as we might normally do.
preview.cancel();
preview.getNativeEvent().stopPropagation();
preview.getNativeEvent().preventDefault();
if (keyCode == KeyCodes.KEY_ENTER) {
clickOkButton();
return;
} else if (keyCode == KeyCodes.KEY_ESCAPE) {
closeDialog();
return;
}
}
}
}
});
addAttachHandler(new AttachEvent.Handler() {
@Override
public void onAttachOrDetach(AttachEvent event) {
if (event.isAttached())
;
else
previewHandler_.removeHandler();
}
});
VerticalPanel container = new VerticalPanel();
FlowPanel headerPanel = new FlowPanel();
Label radioLabel = new Label("Show:");
radioLabel.getElement().getStyle().setFloat(Style.Float.LEFT);
radioLabel.getElement().getStyle().setMarginRight(8, Unit.PX);
headerPanel.add(radioLabel);
headerPanel.add(radioAll_);
radioAll_.setValue(true);
headerPanel.add(radioCustomized_);
filterWidget_.getElement().getStyle().setFloat(Style.Float.LEFT);
filterWidget_.getElement().getStyle().setMarginLeft(10, Unit.PX);
filterWidget_.getElement().getStyle().setMarginTop(-1, Unit.PX);
headerPanel.add(filterWidget_);
HelpLink link = new HelpLink("Customizing Keyboard Shortcuts", "custom_keyboard_shortcuts");
link.getElement().getStyle().setFloat(Style.Float.RIGHT);
headerPanel.add(link);
container.add(headerPanel);
FlowPanel spacer = new FlowPanel();
spacer.setWidth("100%");
spacer.setHeight("4px");
container.add(spacer);
DockPanel dockPanel = new DockPanel();
dockPanel.add(table_, DockPanel.CENTER);
container.add(dockPanel);
return container;
}
use of com.google.gwt.user.client.ui.FlowPanel in project rstudio by rstudio.
the class MathJax method createMathJaxLineWidget.
private void createMathJaxLineWidget(int row, boolean bare, final CommandWithArg<LineWidget> onAttached) {
final FlowPanel panel = createMathJaxContainerWidget();
ChunkOutputHost host = new ChunkOutputHost() {
private int lastHeight_ = Integer.MAX_VALUE;
@Override
public void onOutputRemoved(final ChunkOutputWidget widget) {
removeChunkOutputWidget(widget);
}
@Override
public void onOutputHeightChanged(ChunkOutputWidget widget, int height, boolean ensureVisible) {
final PinnedLineWidget plw = cowToPlwMap_.get(widget);
if (plw == null)
return;
// munge the size of the frame, to avoid issues where the
// frame's size changes following a collapse + expand
boolean isExpansion = lastHeight_ <= height;
if (isExpansion)
widget.getFrame().setHeight((height + 4) + "px");
lastHeight_ = height;
// update the height and report to doc display
LineWidget lineWidget = plw.getLineWidget();
lineWidget.setPixelHeight(height);
docDisplay_.onLineWidgetChanged(lineWidget);
}
};
final ChunkOutputWidget outputWidget = new ChunkOutputWidget(StringUtil.makeRandomId(8), StringUtil.makeRandomId(8), RmdChunkOptions.create(), ChunkOutputWidget.EXPANDED, // can close
false, host, bare ? ChunkOutputSize.Bare : ChunkOutputSize.Default);
outputWidget.setRootWidget(panel);
outputWidget.hideSatellitePopup();
PinnedLineWidget plWidget = new PinnedLineWidget(LINE_WIDGET_TYPE, docDisplay_, outputWidget, row, null, new PinnedLineWidget.Host() {
@Override
public void onLineWidgetRemoved(LineWidget widget) {
// no action necessary here; this is taken care of by the
// hosting chunk (see onOutputRemoved)
}
@Override
public void onLineWidgetAdded(LineWidget widget) {
onAttached.execute(widget);
}
});
cowToPlwMap_.put(outputWidget, plWidget);
lwToPlwMap_.put(plWidget.getLineWidget(), outputWidget);
}
Aggregations