List of usage examples for com.google.gwt.user.client.ui Composite Composite
Composite
From source file:com.vaadin.tests.widgetset.client.grid.GridBasicClientFeaturesWidget.java
License:Apache License
@SuppressWarnings("unchecked") public GridBasicClientFeaturesWidget() { super(new Grid<List<Data>>()); // Initialize data source data = createData(ROWS);/*from w w w . j av a 2 s .c o m*/ ds = new ListDataSource<List<Data>>(data); grid = getTestedWidget(); grid.getElement().setId("testComponent"); grid.setDataSource(ds); grid.addSelectAllHandler(ds.getSelectAllHandler()); grid.setSelectionMode(SelectionMode.NONE); grid.setEditorHandler(new TestEditorHandler()); sorter = new ListSorter<List<Data>>(grid); // Create a bunch of grid columns // Data source layout: // text (String) * (COLUMNS - MANUALLY_FORMATTED_COLUMNS + 1) | // rownumber (Integer) | some date (Date) | row number as HTML (String) // | random value (Integer) int col = 0; // Text times COLUMNS - MANUALLY_FORMATTED_COLUMNS for (col = 0; col < COLUMNS - MANUALLY_FORMATTED_COLUMNS; ++col) { final int c = col; Grid.Column<String, List<Data>> column = new Grid.Column<String, List<Data>>( createRenderer(Renderers.TEXT_RENDERER)) { @Override public String getValue(List<Data> row) { return (String) row.get(c).value; } }; column.setWidth(50 + c * 25); column.setHeaderCaption("Header (0," + c + ")"); grid.addColumn(column); } // Integer row number { final int c = col++; Grid.Column<Integer, List<Data>> column = new Grid.Column<Integer, List<Data>>( createRenderer(Renderers.NUMBER_RENDERER)) { @Override public Integer getValue(List<Data> row) { return (Integer) row.get(c).value; } }; grid.addColumn(column); column.setHeaderCaption("Header (0," + c + ")"); } // Some date { final int c = col++; Grid.Column<Date, List<Data>> column = new Grid.Column<Date, List<Data>>( createRenderer(Renderers.DATE_RENDERER)) { @Override public Date getValue(List<Data> row) { return (Date) row.get(c).value; } }; grid.addColumn(column); column.setHeaderCaption("Header (0," + c + ")"); } // Row number as a HTML string { final int c = col++; Grid.Column<String, List<Data>> column = new Grid.Column<String, List<Data>>( createRenderer(Renderers.HTML_RENDERER)) { @Override public String getValue(List<Data> row) { return (String) row.get(c).value; } }; grid.addColumn(column); column.setHeaderCaption("Header (0," + c + ")"); } // Random integer value { final int c = col++; Grid.Column<Integer, List<Data>> column = new Grid.Column<Integer, List<Data>>( createRenderer(Renderers.NUMBER_RENDERER)) { @Override public Integer getValue(List<Data> row) { return (Integer) row.get(c).value; } }; grid.addColumn(column); column.setHeaderCaption("Header (0," + c + ")"); } // Random integer value between 0 and 5 { final int c = col++; Grid.Column<Integer, List<Data>> column = new Grid.Column<Integer, List<Data>>( createRenderer(Renderers.NUMBER_RENDERER)) { @Override public Integer getValue(List<Data> row) { return (Integer) row.get(c).value; } }; grid.addColumn(column); column.setHeaderCaption("Header (0," + c + ")"); } grid.getColumn(3).setEditable(false); HeaderRow row = grid.getDefaultHeaderRow(); for (int i = 0; i < col; ++i) { String caption = "Header (0," + i + ")"; Grid.Column<?, ?> column = grid.getColumn(i); // Lets use some different cell types if (i % 3 == 0) { // No-op } else if (i % 2 == 0) { row.getCell(column).setHtml("<b>" + caption + "</b>"); } else { row.getCell(column).setWidget(new HTML(caption)); } } ++headerCounter; // // Populate the menu // createStateMenu(); createColumnsMenu(); createHeaderMenu(); createFooterMenu(); createEditorMenu(); createInternalsMenu(); createDataSourceMenu(); createDetailsMenu(); createSidebarMenu(); grid.getElement().getStyle().setZIndex(0); // // Composite wrapping for grid. // boolean isComposite = Window.Location.getParameter("composite") != null; if (isComposite) { addNorth(new Composite() { { initWidget(grid); } }, 400); } else { addNorth(grid, 400); } createKeyHandlers(); }
From source file:com.vaadin.tests.widgetset.client.v7.grid.GridBasicClientFeaturesWidget.java
License:Apache License
@SuppressWarnings("unchecked") public GridBasicClientFeaturesWidget() { super(new Grid<List<Data>>()); // Initialize data source data = createData(ROWS);/* www . j ava 2s.co m*/ ds = new ListDataSource<>(data); grid = getTestedWidget(); grid.getElement().setId("testComponent"); grid.setDataSource(ds); grid.addSelectAllHandler(ds.getSelectAllHandler()); grid.setSelectionMode(SelectionMode.NONE); grid.setEditorHandler(new TestEditorHandler()); sorter = new ListSorter<>(grid); // Create a bunch of grid columns // Data source layout: // text (String) * (COLUMNS - MANUALLY_FORMATTED_COLUMNS + 1) | // rownumber (Integer) | some date (Date) | row number as HTML (String) // | random value (Integer) int col = 0; // Text times COLUMNS - MANUALLY_FORMATTED_COLUMNS for (col = 0; col < COLUMNS - MANUALLY_FORMATTED_COLUMNS; ++col) { final int c = col; Grid.Column<String, List<Data>> column = new Grid.Column<String, List<Data>>( createRenderer(Renderers.TEXT_RENDERER)) { @Override public String getValue(List<Data> row) { return (String) row.get(c).value; } }; column.setWidth(50 + c * 25); column.setHeaderCaption("Header (0," + c + ")"); grid.addColumn(column); } // Integer row number { final int c = col++; Grid.Column<Integer, List<Data>> column = new Grid.Column<Integer, List<Data>>( createRenderer(Renderers.NUMBER_RENDERER)) { @Override public Integer getValue(List<Data> row) { return (Integer) row.get(c).value; } }; grid.addColumn(column); column.setHeaderCaption("Header (0," + c + ")"); } // Some date { final int c = col++; Grid.Column<Date, List<Data>> column = new Grid.Column<Date, List<Data>>( createRenderer(Renderers.DATE_RENDERER)) { @Override public Date getValue(List<Data> row) { return (Date) row.get(c).value; } }; grid.addColumn(column); column.setHeaderCaption("Header (0," + c + ")"); } // Row number as a HTML string { final int c = col++; Grid.Column<String, List<Data>> column = new Grid.Column<String, List<Data>>( createRenderer(Renderers.HTML_RENDERER)) { @Override public String getValue(List<Data> row) { return (String) row.get(c).value; } }; grid.addColumn(column); column.setHeaderCaption("Header (0," + c + ")"); } // Random integer value { final int c = col++; Grid.Column<Integer, List<Data>> column = new Grid.Column<Integer, List<Data>>( createRenderer(Renderers.NUMBER_RENDERER)) { @Override public Integer getValue(List<Data> row) { return (Integer) row.get(c).value; } }; grid.addColumn(column); column.setHeaderCaption("Header (0," + c + ")"); } // Random integer value between 0 and 5 { final int c = col++; Grid.Column<Integer, List<Data>> column = new Grid.Column<Integer, List<Data>>( createRenderer(Renderers.NUMBER_RENDERER)) { @Override public Integer getValue(List<Data> row) { return (Integer) row.get(c).value; } }; grid.addColumn(column); column.setHeaderCaption("Header (0," + c + ")"); } grid.getColumn(3).setEditable(false); HeaderRow row = grid.getDefaultHeaderRow(); for (int i = 0; i < col; ++i) { String caption = "Header (0," + i + ")"; Grid.Column<?, ?> column = grid.getColumn(i); // Lets use some different cell types if (i % 3 == 0) { // No-op } else if (i % 2 == 0) { row.getCell(column).setHtml("<b>" + caption + "</b>"); } else { row.getCell(column).setWidget(new HTML(caption)); } } ++headerCounter; // // Populate the menu // createStateMenu(); createColumnsMenu(); createHeaderMenu(); createFooterMenu(); createEditorMenu(); createInternalsMenu(); createDataSourceMenu(); createDetailsMenu(); createSidebarMenu(); grid.getElement().getStyle().setZIndex(0); // // Composite wrapping for grid. // boolean isComposite = Window.Location.getParameter("composite") != null; if (isComposite) { addNorth(new Composite() { { initWidget(grid); } }, 400); } else { addNorth(grid, 400); } createKeyHandlers(); }
From source file:com.xemantic.tadedon.gwt.user.client.ui.OneWidgetDeckPanel.java
License:Apache License
private void addWidget(final Widget widget) { // wrap widget in composite with lifecycle controlled by setVisible method m_panel.add(new Composite() { {// w ww.j a v a 2s . c o m initWidget(widget); } @Override public void setVisible(boolean visible) { if (!visible) { if (!added) { // first invocation, see DeckPanel#finishWidgetInitialization() added = true; } else { // last invocation m_panel.remove(this); } } super.setVisible(visible); } boolean added = false; }); }
From source file:javawars.client.pages.LeaguePage.java
License:Open Source License
public LeaguePage(final League league, Leagues leagues) { super(league.getName()); this.league = league; this.leagues = leagues; final Button subscribeButton = new Button("zapisz si"); final AsyncCallback subscriptionResult = new AsyncCallback() { public void onFailure(Throwable throwable) { subscribeButton.setEnabled(true); if (throwable instanceof AuthenticationException) { Window.alert(/*from w ww . ja va2 s . co m*/ "Brak moliwoci zapisania si do ligi - sprawd wymagan liczb punktw i wolne miejsca"); } else { Window.alert("Wystpi nieznany bd."); } } public void onSuccess(Object arg0) { subscribeButton.setEnabled(true); History.newItem("Leagues"); } }; subscribeButton.addClickListener(new ClickListener() { public void onClick(Widget arg0) { subscribeButton.setEnabled(false); DataProvider.getInstance().getService().subscribeToLeague(league.getName(), subscriptionResult); } }); final Button unsubscribeButton = new Button("wypisz mnie z tej ligi"); final AsyncCallback unsubscriptionResult = new AsyncCallback() { public void onFailure(Throwable throwable) { unsubscribeButton.setEnabled(true); Window.alert("Wystpi nieznany bd."); } public void onSuccess(Object arg0) { unsubscribeButton.setEnabled(true); History.newItem("Leagues"); } }; unsubscribeButton.addClickListener(new ClickListener() { public void onClick(Widget arg0) { unsubscribeButton.setEnabled(false); DataProvider.getInstance().getService().unsubscribeFromLeague(unsubscriptionResult); } }); tableComposite = new Composite() { private VerticalPanel mainPanel = new VerticalPanel(); { mainPanel.add(new HTML("<h2>Tabela punktacji dla ligi " + league.getName() + ":")); if (league.getUsers().isEmpty() == true) { mainPanel.add(new Label("Nie ma uytkownikw zapisanych do tej ligi.")); } else { FlexTable table = new FlexTable(); SpacerFactory.adjustFlexTable(table, 10, 150, 10, 150, 10, 150, 10, 150); table.setText(1, 1, "Uytkownik:"); table.setText(1, 3, "Punkty w tej lidze:"); table.setText(1, 5, "Wszystkie punkty:"); table.setText(1, 7, "Aktualny robot:"); User[] users = league.getUsers().toArray(new User[] {}); // sorting the table for (int a = 0; a < users.length; a++) { for (int b = a; b < users.length; b++) { if (a != b && (users[a].getScore() - users[a].getStartScore()) < (users[b].getScore() - users[b].getStartScore())) { User c = users[a]; users[a] = users[b]; users[b] = c; } } } for (int counter = 0; counter < users.length; counter++) { table.setText(2 + counter, 0, "" + (counter + 1) + "."); table.setText(2 + counter, 1, users[counter].getLogin()); table.setText(2 + counter, 3, "" + (users[counter].getScore() - users[counter].getStartScore())); table.setText(2 + counter, 5, "" + (users[counter].getScore())); table.setText(2 + counter, 7, "" + users[counter].getSelectedRobot()); } mainPanel.add(table); } mainPanel.add(SpacerFactory.getHTMLSpacer(20, 20)); AsyncCallback<SessionConstants> addButton = new AsyncCallback<SessionConstants>() { public void onFailure(Throwable arg0) { } public void onSuccess(SessionConstants sessionConstants) { for (User u : league.getUsers()) { if (u.getLogin().equals(sessionConstants.getCurrentuser().getLogin())) { // user already in the league; no need // to display the subscribe button. mainPanel.add(unsubscribeButton); return; } } mainPanel.add(subscribeButton); } }; if (league.getUsers().isEmpty() == true) { mainPanel.add(subscribeButton); } else { DataProvider.getInstance().getSessionConstants(addButton); } initWidget(mainPanel); } }; aboutComposite = new Composite() { private VerticalPanel mainPanel = new VerticalPanel(); { mainPanel.add(new HTML("<h2>Liga " + league.getName() + ":")); mainPanel.add(new Label(league.getDescription())); mainPanel.add(SpacerFactory.getHTMLSpacer(20, 20)); FlexTable table = new FlexTable(); SpacerFactory.adjustFlexTable(table, 150, 10, 50, 10, 150, 10, 50, 10, 150); table.setText(1, 0, "Trawa:"); table.setText(1, 2, league.getGrasslandPercentage() + "%"); table.setText(1, 4, "Wzniesienia:"); table.setText(1, 6, league.getHillsPercentage() + "%"); table.setText(1, 8, "Gry:"); table.setText(1, 10, league.getMountainsPercentage() + "%"); table.setWidget(2, 0, SpacerFactory.getHTMLSpacer(10, 10)); table.setText(3, 0, "Uycie ognia (akcja 'strza'):"); table.setText(3, 2, league.getShootingAllowed() ? "TAK" : "NIE"); table.setWidget(4, 0, SpacerFactory.getHTMLSpacer(10, 10)); table.setText(5, 0, "Minimalna liczba punktw:"); table.setText(5, 2, "" + league.getMinScore()); table.setText(6, 0, "Mnonik otrzymywanych punktw:"); table.setText(6, 2, "x" + league.getScoreMultiplier()); mainPanel.add(table); initWidget(mainPanel); } }; matchesComposite = new Composite() { private final List<MatchReport> matches = new ArrayList<MatchReport>(); private VerticalPanel mainPanel = new VerticalPanel(); { AsyncCallback<List<MatchReport>> processMatches = new AsyncCallback<List<MatchReport>>() { public void onFailure(Throwable arg0) { Window.alert("Wystpi bd."); } public void onSuccess(final List<MatchReport> matchReports) { mainPanel.clear(); mainPanel.add(new HTML("<h3>Ostatnie dziesi pojedynkw: </h3>")); mainPanel.add(SpacerFactory.getHTMLSpacer(20, 20)); final ListBox matchesListBox = new ListBox(); matchesListBox.setVisibleItemCount(5); for (MatchReport m : matchReports) { matchesListBox.addItem(DateFormatter.extractDateAndHour(m.getDate())); } mainPanel.add(matchesListBox); mainPanel.add(SpacerFactory.getHTMLSpacer(20, 20)); final VerticalPanel viewerPanel = new VerticalPanel(); final Button showMatch = new Button("wywietl"); showMatch.addClickListener(new ClickListener() { public void onClick(Widget arg0) { if (matchesListBox.getSelectedIndex() == -1) Window.alert("nie wybrano pojedynku"); showMatch.setEnabled(false); showMatch.setText("prosz czeka..."); viewerPanel.clear(); // viewerPanel.add(new Label("Prosz czeka")); MatchViewer mv = new MatchViewerFast(); viewerPanel.add(mv); mv.show(matchReports.get(matchesListBox.getSelectedIndex()).getXmlDescription()); //viewerPanel.getWidget(0).removeFromParent(); showMatch.setText("wywietl"); showMatch.setEnabled(true); } }); mainPanel.add(showMatch); mainPanel.add(SpacerFactory.getHTMLSpacer(20, 20)); mainPanel.add(viewerPanel); } }; mainPanel.add(new Label("prosz czeka...")); DataProvider.getInstance().getService().fetchLeagueMatchReports(league.getName(), processMatches); initWidget(mainPanel); } }; this.addChild(new LeagueTable()); this.addChild(new LeagueDetails()); this.addChild(new LeagueMatches()); }
From source file:javawars.client.pages.RobotPage.java
License:Open Source License
RobotPage(final Robot robot, final Workshop workshop) { super(robot.getName()); this.robot = robot; this.workshop = workshop; /**/*from ww w . ja v a2 s .c o m*/ * The robot label - displayed in a side menu. */ robotLabel = new Composite() { private VerticalPanel mainPanel = new VerticalPanel(); { FlexTable table = new FlexTable(); table.setWidget(0, 0, SpacerFactory.getHTMLSpacer(100, 0)); table.setWidget(0, 1, SpacerFactory.getHTMLSpacer(100, 0)); Label robotName = new Label(robot.getName()); robotName.setStyleName("RobotName"); table.setWidget(1, 0, robotName); table.setText(1, 1, "" + robot.getScore()); table.setText(2, 0, "" + DateFormatter.extractDate(robot.getCreationDate())); table.setText(2, 1, "" + DateFormatter.extractDate(robot.getModificationDate())); mainPanel.add(table); table.setStyleName("Table"); mainPanel.setStyleName("RobotLabel"); initWidget(mainPanel); } }; /** * Content of the statistics subpage */ statisticsContent = new Composite() { private VerticalPanel mainPanel = new VerticalPanel(); { mainPanel.add(new HTML("<h2>" + robot.getName() + "</h2>")); final FlexTable table = new FlexTable(); SpacerFactory.adjustFlexTable(table, 120, 50, 50, 120, 50, 50); table.setText(1, 0, "Data utworzenia:"); table.setText(1, 1, "" + DateFormatter.extractDateAndHour(robot.getCreationDate())); table.setText(1, 3, "Ostatnia modyfikacja: "); table.setText(1, 4, "" + DateFormatter.extractDateAndHour(robot.getModificationDate())); table.setText(2, 0, "Punkty: "); table.setText(2, 1, "" + robot.getScore()); // temporary commenting out - the 'choose' button doesn't get back // when another robot is chosen as a representant //if (robot.isRepresentant() == false) { table.setWidget(3, 0, SpacerFactory.getHTMLSpacer(1, 15)); table.setText(4, 0, "Ustaw jako reprezentanta:"); final Button representButton = new Button("reprezentant"); table.setWidget(4, 1, representButton); final AsyncCallback representCallback = new AsyncCallback() { public void onFailure(Throwable arg0) { representButton.setEnabled(true); } public void onSuccess(Object arg0) { representButton.setEnabled(true); } }; representButton.addClickListener(new ClickListener() { public void onClick(Widget arg0) { representButton.setEnabled(false); DataProvider.getInstance().getService().selectAsRepresentant(robot.getName(), representCallback); } }); // } table.setWidget(5, 0, SpacerFactory.getHTMLSpacer(1, 15)); table.setText(6, 0, "Usu robota: "); final Button deleteButton = new Button("usu"); table.setWidget(6, 1, deleteButton); final AsyncCallback deleteCallback = new AsyncCallback() { public void onFailure(Throwable arg0) { Window.alert("Wystpi nieznany bd."); deleteButton.setEnabled(true); } public void onSuccess(Object arg0) { History.newItem("Workshop"); workshop.removeChildPage(getUrl()); deleteButton.setEnabled(true); } }; deleteButton.addClickListener(new ClickListener() { public void onClick(Widget arg0) { deleteButton.setEnabled(false); DataProvider.getInstance().getService().deleteRobot(robot.getName(), deleteCallback); } }); mainPanel.add(table); initWidget(mainPanel); } }; /** * The composite which will be used as a content in the Edit subpage */ editContent = new Composite() { private final HTML codeTextArea; private VerticalPanel mainPanel = new VerticalPanel(); { codeTextArea = new HTML("<textarea id='codeTextArea' " + "class='codepress java' " + "style='width: " + Math.max(300, Window.getClientWidth() - 250) + "px; " + "height: " + Math.max(300, Window.getClientHeight() - 300) + "px; '" + ">" + robot.getCode() + "</textarea>"); mainPanel.add(codeTextArea); final FlowPanel editors = new FlowPanel(); CheckBox useVi = new CheckBox("Edytor VI ", false); useVi.addClickListener(new ClickListener() { private boolean enabled = false; public void onClick(Widget arg0) { if (enabled == false) { enabled = true; DOM.getElementById("codeTextArea").setAttribute("onfocus", "editor(this);"); } else { enabled = false; DOM.getElementById("codeTextArea").setAttribute("onfocus", ";"); } } }); editors.add(useVi); // editors.add(SpacerFactory.getHTMLSpacer(20, 20)); final Button launchCodepress = new Button("Edytor CodePress"); launchCodepress.addClickListener(new ClickListener() { public void onClick(Widget arg0) { editors.setVisible(false); initializeCodePress(); } }); editors.add(launchCodepress); mainPanel.add(editors); final Button save = new Button("Zapisz"); final HTML compilerOutput = new HTML(); final AsyncCallback<String> processOutput = new AsyncCallback<String>() { String startingCode; { startingCode = robot.getCode(); } public void onFailure(Throwable arg0) { compilerOutput.setText("Bd poczenia z serwerem!"); save.setEnabled(true); } public void onSuccess(String output) { compilerOutput.setHTML("<pre>" + output + "</pre>"); robot.setCode(startingCode); save.setEnabled(true); } }; save.addClickListener(new ClickListener() { public native String getRobotCode() /*-{ return $wnd.codeTextArea.getCode(); }-*/; public native String storeRobotCode() /*-{ return $doc.getElementById("codeTextArea_cp").value = $wnd.codeTextArea.getCode() }-*/; public void onClick(Widget arg0) { save.setEnabled(false); if (editors.isVisible()) { DataProvider.getInstance().getService().updateRobotCode(robot.getName(), DOM.getElementById("codeTextArea").getPropertyString("value"), processOutput); } else { storeRobotCode(); DataProvider.getInstance().getService().updateRobotCode(robot.getName(), getRobotCode(), processOutput); } } }); mainPanel.add(save); mainPanel.add(compilerOutput); initWidget(mainPanel); } boolean initialized = false; @Override protected void onLoad() { ; } public native void initializeCodePress() /*-{ $wnd.CodePress.run(); }-*/; }; // content of the test subpage... testContent = new Composite() { private final ListBox robotList = new ListBox(true); private final VerticalPanel mainPanel = new VerticalPanel(); private final VerticalPanel matchViewerPanel = new VerticalPanel(); private final ListBox leaguesList = new ListBox(); { HTML testHeadline = new HTML("<h2>Testuj:</h2>"); Label testDescription = new Label("Wybierz z listy roboty, ktre " + "chcesz przetestowa na jednej planszy; Ctrl+klik - zaznaczenie wicej ni jednego robota. " + "Po dokonaniu wyboru nacini przycisk."); mainPanel.add(testHeadline); mainPanel.add(testDescription); mainPanel.add(SpacerFactory.getHTMLSpacer(10, 10)); mainPanel.add(robotList); mainPanel.add(SpacerFactory.getHTMLSpacer(10, 10)); HTML leagueHeadline = new HTML("<h3>Liga:</h3>"); Label leagueDescription = new Label("Wybierz w jakiej lidze chcesz dokona testu:"); mainPanel.add(leagueHeadline); mainPanel.add(leagueDescription); mainPanel.add(leaguesList); mainPanel.add(SpacerFactory.getHTMLSpacer(10, 10)); final Button testButton = new Button("Testuj"); final AsyncCallback<MatchReport> testCallback = new AsyncCallback<MatchReport>() { public void onFailure(Throwable arg0) { Window.alert(("Wystpi nieznany bd.")); testButton.setEnabled(true); } public void onSuccess(MatchReport matchReport) { try { matchViewerPanel.clear(); MatchViewer matchViewer = new MatchViewerFast(); matchViewerPanel.add(matchViewer); matchViewer.show(matchReport.getXmlDescription()); testButton.setEnabled(true); } catch (Exception exception) { Window.alert("Wystpi nieznany bd podczas wywietlania przebiegu pojedynku!"); } } }; testButton.addClickListener(new ClickListener() { public void onClick(Widget arg0) { if (robotList.getSelectedIndex() == -1) { Window.alert("Prosz wybra przynajmniej jednego robota"); return; } testButton.setEnabled(false); // adding all the selected items of the listbox to one list List<String> robotNames = new LinkedList<String>(); int counter = 0; while (counter < robotList.getItemCount()) { if (robotList.isItemSelected(counter) == true) { robotNames.add(robotList.getItemText(counter)); } counter++; } // invoking the method on server DataProvider.getInstance().getService().testRobots(leaguesList.getSelectedIndex(), robotNames, testCallback); } }); mainPanel.add(SpacerFactory.getHTMLSpacer(10, 10)); mainPanel.add(testButton); mainPanel.add(matchViewerPanel); initWidget(mainPanel); } // a boolean that provides us a lock for the listbox boolean robotListLocked = false; boolean leaguesListLocked = false; /** * Refreshes the content of the listBox; */ private void populateRobotListBox(List<Robot> list) { // if the list is locked, it means there already is an update // in progress; we don't need to update it after such a short // time, so we quit updating completely. if (robotListLocked == false) { robotListLocked = true; robotList.clear(); for (Robot r : list) { robotList.addItem(r.getName()); } robotListLocked = false; } } /** * Refreshes the content of the leaguesListBox; */ private void populateLeaguesListBox(List<League> list) { // if the list is locked, it means there already is an update // in progress; we don't need to update it after such a short // time, so we quit updating completely. if (leaguesListLocked == false) { leaguesListLocked = true; leaguesList.clear(); for (League l : list) { leaguesList.addItem(l.getName()); } leaguesListLocked = false; } } private final AsyncCallback<List<League>> processLeagueCallback = new AsyncCallback<List<League>>() { public void onFailure(Throwable exception) { Window.alert("Error, couldn't update leagues list."); } public void onSuccess(List<League> list) { populateLeaguesListBox(list); } }; @Override protected void onLoad() { populateRobotListBox(workshop.getRobotList()); DataProvider.getInstance().getService().getLeagues(processLeagueCallback); } }; // matchesContent matchesContent = new Composite() { private final List<MatchReport> matches = new ArrayList<MatchReport>(); private VerticalPanel mainPanel = new VerticalPanel(); { AsyncCallback<List<MatchReport>> processMatches = new AsyncCallback<List<MatchReport>>() { public void onFailure(Throwable arg0) { Window.alert("Wystpi bd."); } public void onSuccess(final List<MatchReport> matchReports) { mainPanel.clear(); mainPanel.add(new HTML("<h3>Ostatnie dziesi pojedynkw: </h3>")); mainPanel.add(SpacerFactory.getHTMLSpacer(20, 20)); final ListBox matchesListBox = new ListBox(); matchesListBox.setVisibleItemCount(5); for (MatchReport m : matchReports) { matchesListBox.addItem(DateFormatter.extractDateAndHour(m.getDate())); } mainPanel.add(matchesListBox); mainPanel.add(SpacerFactory.getHTMLSpacer(20, 20)); final VerticalPanel viewerPanel = new VerticalPanel(); mainPanel.add(viewerPanel); matchesListBox.addClickListener(new ClickListener() { public void onClick(Widget arg0) { matchesListBox.setEnabled(false); viewerPanel.clear(); viewerPanel.add(new Label("Prosz czeka")); MatchViewer mv = new MatchViewerFast(); viewerPanel.add(mv); mv.show(matchReports.get(matchesListBox.getSelectedIndex()).getXmlDescription()); viewerPanel.getWidget(0).removeFromParent(); matchesListBox.setEnabled(true); } }); } }; mainPanel.add(new Label("prosz czeka...")); DataProvider.getInstance().getService().fetchRobotMatchReports(robot.getName(), processMatches); initWidget(mainPanel); } }; // adding the subpages... addChild(new Statistics()); addChild(new Edit()); addChild(new Test()); addChild(new MatchReports()); }
From source file:org.jboss.errai.workspaces.client.widgets.WSLoginPanel.java
License:Apache License
public WSLoginPanel() { this.widget = new Composite() { {// w w w. ja v a2 s .c o m VerticalPanel mainPanel = new VerticalPanel(); HorizontalPanel login = new HorizontalPanel(); HorizontalPanel password = new HorizontalPanel(); HorizontalPanel buttons = new HorizontalPanel(); mainPanel.add(login); mainPanel.add(password); mainPanel.add(buttons); Label userNameLabel = new Label("User:"); Label passwordLabel = new Label("Password:"); userNameInput = new TextBox(); passwordInput = new PasswordTextBox(); login.add(userNameLabel); login.add(userNameInput); login.setWidth("100%"); login.setCellHorizontalAlignment(userNameInput, HasAlignment.ALIGN_RIGHT); password.add(passwordLabel); password.add(passwordInput); password.setWidth("100%"); password.setCellHorizontalAlignment(passwordInput, HasAlignment.ALIGN_RIGHT); loginButton = new Button("Login"); buttons.add(loginButton); buttons.setWidth("100%"); buttons.setCellHorizontalAlignment(loginButton, HasAlignment.ALIGN_RIGHT); // clickhandler comes form presenter KeyDownHandler formSubmit = new KeyDownHandler() { public void onKeyDown(KeyDownEvent event) { if (event.getNativeKeyCode() == KeyCodes.KEY_ENTER) { loginButton.click(); } } }; userNameInput.addKeyDownHandler(formSubmit); passwordInput.addKeyDownHandler(formSubmit); initWidget(mainPanel); } }; }