@Override public Widget asWidget() { if (cp == null) { ExampleResources bundle = GWT.create(ExampleResources.class); this.style = bundle.style(); this.style.ensureInjected(); cp = new ContentPanel(GWT.<ContentPanelAppearance>create(FramedPanelAppearance.class)); cp.addStyleName("margin-10"); cp.setPixelSize(500, 400); cp.getBody().getStyle().setBackgroundColor("white"); cp.getBody().addClassName(ThemeStyles.getStyle().border()); con = new CardLayoutContainer(); cp.add(con); ToggleGroup group = new ToggleGroup(); for (Category cat : Category.values()) { final ToggleButton btn = new ToggleButton(cat.desc); btn.setData("cat", cat); btn.addValueChangeHandler( new ValueChangeHandler<Boolean>() { @Override public void onValueChange(ValueChangeEvent<Boolean> event) { if (event.getValue() == true) { onClick((Category) btn.getData("cat")); } } }); group.add(btn); cp.addButton(btn); } ToggleButton normal = (ToggleButton) cp.getButtonBar().getWidget(0); normal.setValue(true, true); } return cp; }