List of usage examples for com.google.gwt.user.client.ui ScrollPanel ScrollPanel
public ScrollPanel()
From source file:asquare.gwt.tk.uitest.alertdialog.client.Demo.java
License:Apache License
public void onModuleLoad() { Debug.enable();// www . j av a 2s .c om new DebugEventListener('x', Event.ONMOUSEDOWN, null) { @Override protected void doEvent(Event event) { Element target = DOM.eventGetTarget(event); Debug.println("target=" + DebugUtil.prettyPrintElement(target)); int screenX = DOM.eventGetScreenX(event); int screenY = DOM.eventGetScreenY(event); int clientX = DOM.eventGetClientX(event); int clientY = DOM.eventGetClientY(event); int absLeft = DOM.getAbsoluteLeft(target); int absTop = DOM.getAbsoluteTop(target); int offsetLeft = getOffsetLeft(target); int offsetTop = getOffsetTop(target); int docScrollX = Window.getScrollLeft(); int docScrollY = Window.getScrollTop(); Debug.println("screenX=" + screenX + ",screenY=" + screenY + ",clientX=" + clientX + ",clientY=" + clientY + ",absLeft=" + absLeft + ",absTop=" + absTop + ",offsetLeft=" + offsetLeft + ",offsetTop=" + offsetTop + ",docScrollX=" + docScrollX + ",docScrollY=" + docScrollY); } }.install(); new DebugEventListener('z', Event.ONMOUSEDOWN, "Offset hierarchy inspector") { @Override protected void doEvent(Event event) { Element target = DOM.eventGetTarget(event); printOffsetTopHierarchy(target); } }.install(); new DebugHierarchyInspector().install(); new DebugElementDumpInspector().install(); new DebugEventListener(Event.ONMOUSEDOWN | Event.ONMOUSEUP).install(); if (!GWT.isScript()) { DebugConsole.getInstance().disable(); } final Button button = new Button(); button.setText("Default Info dialog"); button.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { final AlertDialog alert = AlertDialog.createInfo(new Command() { public void execute() { Debug.println("OK clicked"); } }, "Info Dialog", "this is a default info dialog"); alert.show(); } }); RootPanel.get().add(button); Command showDialog = new Command() { private AlertDialog m_dialog; public void execute() { if (m_dialog == null) { m_dialog = AlertDialog.createWarning(this, "Caption text", null); ScrollPanel message = new ScrollPanel(); message.setAlwaysShowScrollBars(true); message.setWidth("100%"); message.setHeight("100px"); message.setWidget(new Label( "These packages contain reference information about the main GWT user interface and utility classes. For higher-level explanations of how to take advantage of all this stuff, check out the Developer Guide. Among other things, there's a handy widget gallery and an explanation of how remote procedure calls work.These packages contain reference information about the main GWT user interface and utility classes. For higher-level explanations of how to take advantage of all this stuff, check out the Developer Guide. Among other things, there's a handy widget gallery and an explanation of how remote procedure calls work.")); m_dialog.setMessage(message); m_dialog.setSize("400px", "300px"); m_dialog.addController(new ControllerAdaptor(Controller.class, Event.ONMOUSEDOWN) { @Override public void onBrowserEvent(Widget widget, Event event) { int x = DomUtil.eventGetAbsoluteX(event) - DOM.getAbsoluteLeft(widget.getElement()); int y = DomUtil.eventGetAbsoluteY(event) - DOM.getAbsoluteTop(widget.getElement()); Debug.println("onMouseDown(" + x + "," + y + ")"); } }); } m_dialog.show(); } }; showDialog.execute(); }
From source file:asquare.gwt.tk.uitest.isvisible.client.Demo.java
License:Apache License
public void onModuleLoad() { RootPanel outer = RootPanel.get();//from w w w . ja v a2 s. c om TextBox rowInput = new TextBox(); TextBox colInput = new TextBox(); Grid input = new Grid(2, 2); input.setText(0, 0, "Row: "); input.setWidget(0, 1, rowInput); input.setText(1, 0, "Col: "); input.setWidget(1, 1, colInput); outer.add(input); final int ROWS = 20; final int COLS = 20; Grid grid = new Grid(ROWS, COLS); grid.setCellPadding(0); grid.setCellSpacing(0); for (int row = 0; row < ROWS; row++) { for (int col = 0; col < COLS; col++) { grid.setWidget(row, col, new Label("(" + row + "," + col + ")")); } } ScrollPanel scrollInner = new ScrollPanel(); scrollInner.setAlwaysShowScrollBars(true); scrollInner.setPixelSize(400, 400); scrollInner.setWidget(grid); ScrollPanel scrollOuter = new ScrollPanel(); scrollOuter.add(scrollInner); scrollOuter.setAlwaysShowScrollBars(true); scrollOuter.setPixelSize(600, 200); outer.add(scrollOuter); scrollInner.setScrollPosition(100); scrollInner.setHorizontalScrollPosition(100); }
From source file:ca.upei.ic.timetable.client.MessageView.java
License:Apache License
public MessageView(MessageViewController controller) { controller_ = controller;/*from w w w.j a va2 s . co m*/ dialogBox_ = new DialogBox(true, true); dialogBox_.setText("Messages"); dialogBox_.setAnimationEnabled(true); dialogBox_.hide(); // XXX a hack to make sure the dialog display top most dialogBox_.getElement().getStyle().setProperty("z-index", "100"); ScrollPanel scrolled = new ScrollPanel(); scrolled.setPixelSize(350, 250); panel_ = new VerticalPanel(); panel_.setWidth("232px"); scrolled.add(panel_); Button closeButton = new Button("Close"); closeButton.addClickListener(new ClickListener() { public void onClick(Widget sender) { dialogBox_.hide(); } }); closeButton.addKeyboardListener(new KeyboardListener() { public void onKeyDown(Widget sender, char keyCode, int modifiers) { } public void onKeyPress(Widget sender, char keyCode, int modifiers) { if (keyCode == KeyboardListener.KEY_ESCAPE) dialogBox_.hide(); } public void onKeyUp(Widget sender, char keyCode, int modifiers) { } }); Button clearButton = new Button("Clear"); clearButton.addClickListener(new ClickListener() { public void onClick(Widget sender) { clearMessage(); } }); dialogBox_.setWidget( PanelUtils.verticalPanel(scrolled, PanelUtils.horizontalPanel(closeButton, clearButton))); }
From source file:cc.alcina.framework.gwt.client.gwittir.widget.BoundTableExt.java
License:Open Source License
private void init(int masksValue) { renderContext = RenderContext.get().snapshot(); // GWT.log( "Init "+ +masksValue + " :: "+((masksValue & // BoundTable.MULTI_REQUIRES_SHIFT) > 0), null); final BoundTableExt instance = this; this.topBinding = new Binding(); this.masks = masksValue; this.factory = (this.factory == null) ? new BoundWidgetTypeFactory(true) : this.factory; if (((this.masks & BoundTableExt.SORT_MASK) > 0) && (this.columns != null)) { this.ascending = new boolean[this.columns.length]; }//from www.j a va 2 s . co m if ((this.masks & BoundTableExt.MULTIROWSELECT_MASK) > 0) { this.selectedRowStyles = new HashMap(); } if (((this.masks & BoundTableExt.ROW_HANDLE_MASK) > 0) && ((this.masks & BoundTableExt.MULTIROWSELECT_MASK) > 0)) { this.allRowsHandle = new Button(" ", new ClickListener() { public void onClick(Widget sender) { if ((getSelected() != null) && (getSelected().size() == 0)) { setSelected(new ArrayList((Collection) getValue())); } else { setSelected(new ArrayList()); } } }); this.allRowsHandle.setStyleName("rowHandle"); this.allRowsHandle.setHeight("100%"); this.allRowsHandle.setWidth("100%"); if ((this.masks & BoundTableExt.MULTIROWSELECT_MASK) == 0) { this.allRowsHandle.setEnabled(false); } } if ((this.masks & BoundTableExt.ROW_HANDLE_MASK) > 0) { this.rowHandles = new ArrayList(); } esp = new EventingSimplePanel(); createTable(); if ((masks & BoundTableExt.SCROLL_MASK) > 0) { if ("".isEmpty()) { throw new UnsupportedOperationException(); } this.scroll = new ScrollPanel(); this.scroll.setWidget(table); super.initWidget(esp); scroll.addScrollListener(new ScrollListener() { public void onScroll(Widget widget, int scrollLeft, int scrollTop) { // GWT.log("HasProvider: " + (provider != null), null); if ((provider != null) && (inChunk == false) && (scrollTop >= (table.getOffsetHeight() - scroll.getOffsetHeight()))) { // GWT.log("Scroll Event fired. ", null); lastScrollPosition = scrollTop - 1; next(); } } }); } else { super.initWidget(esp); } this.value = (this.value == null) ? new ArrayList() : this.value; this.columns = (this.columns == null) ? new Field[0] : this.columns; this.setStyleName("gwittir-BoundTable"); if ((masks & BoundTableExt.HANDLES_AS_CHECKBOXES) > 0) { this.addStyleName("handles-as-checkboxes"); } if ((this.provider != null) && (this.getCurrentChunk() == -1)) { this.inChunk = true; this.provider.init(this); } this.addPropertyChangeListener("selected", new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent propertyChangeEvent) { if (getAction() != null) { getAction().execute(instance); } } }); this.addPropertyChangeListener("active", new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent propertyChangeEvent) { boolean newActive = ((Boolean) propertyChangeEvent.getNewValue()).booleanValue(); if ((masks & BoundTableExt.ROW_HANDLE_MASK) > 0 && (masks & BoundTableExt.HANDLES_AS_CHECKBOXES) == 0) { for (int i = 0; i < rowHandles.size(); i++) { ((Button) rowHandles.get(i)) .setText((newActive && (i <= 8)) ? Integer.toString(i + 1) : " "); } } for (Iterator it = keyBindings.entrySet().iterator(); it.hasNext();) { Entry entry = (Entry) it.next(); handleBinding(newActive, entry); } for (Iterator it = externalKeyBindings.entrySet().iterator(); it.hasNext();) { Entry entry = (Entry) it.next(); handleBinding(newActive, entry); } } private void handleBinding(boolean newActive, Entry entry) { KeyBinding kb = (KeyBinding) entry.getKey(); Object execute = entry.getValue(); if (newActive) { BoundTableExt.LOG.log(Level.SPAM, "Registering " + kb, null); try { if (execute instanceof Task) { KeyboardController.INSTANCE.register(kb, (Task) execute); } else if (execute instanceof Action) { KeyboardController.INSTANCE.register(kb, (Action) execute); } else if (execute instanceof BoundWidget) { KeyboardController.INSTANCE.register(kb, (BoundWidget) execute); } } catch (KeyBindingException kbe) { BoundTableExt.LOG.log(Level.DEBUG, "Unable to register" + kb, kbe); } } else { boolean result = KeyboardController.INSTANCE.unregister(kb); BoundTableExt.LOG.log(Level.SPAM, "Unregistering " + kb + " " + result, null); } } }); }
From source file:cc.alcina.framework.gwt.client.ide.SimpleWorkspaceVisualiser.java
License:Apache License
protected void createContentContainer(SplitLayoutPanel hsp) { this.contentContainer = new ScrollPanel(); contentContainer.setStyleName("alcina-WorkspaceContent"); setContentWidget(model.getContentWidget()); contentContainer.setHeight("100%"); hsp.add(contentContainer);//from www.j a va 2 s .c o m }
From source file:cc.alcina.framework.gwt.client.widget.Wizard.java
License:Apache License
public Widget renderPage() { FlowPanel fp = new FlowPanel(); fp.addAttachHandler(evt -> System.out.println(fp.getElement().getInnerHTML())); currentWidget = fp;// w w w. j a va2s .c o m fp.setStyleName(FRAME_STYLE_NAME); fp.addStyleName(getStyleName()); renderHeader(fp); if (usePageTabs) { renderTabPane(fp); return fp; } WizardPage page = pages.get(pageIndex); Widget w = page.getPageWidget(); w.addStyleName("wizard-form"); if (contentScrollPanelHeight != 0) { ScrollPanel sp = new ScrollPanel(); sp.setHeight(contentScrollPanelHeight + "px"); sp.add(w); fp.add(sp); } else { fp.add(w); } renderButtonsPane(fp); PermissibleAction highlighted = page.getHighlightedAction(); highlighted = highlighted == null ? CommonUtils.first(toolbar.getActions()) : highlighted; if (highlighted == previousPage || highlighted == cancel) { highlighted = null; } if (highlighted != null) { toolbar.getButtonForAction(highlighted).addStyleName("highlighted"); } toolbar.addVetoableActionListener(this); if (renderInScrollPanel) { ScrollPanel sp = new ScrollPanel(); sp.getElement().getStyle().setPropertyPx("maxHeight", Window.getClientHeight() * 70 / 100); fp.getElement().getStyle().setMargin(0.8, Unit.EM); sp.add(fp); currentWidget = sp; return sp; } else { return fp; } }
From source file:cc.kune.gspace.client.share.ShareToListPanel.java
License:Open Source License
/** * Instantiates a new abstract share to list panel. * //from w ww.j a v a2s. com * @param titleText * the title text */ public ShareToListPanel() { title = new Label(); title.setStyleName("k-sharelist-title"); final VerticalPanel vp = new VerticalPanel(); itemsPanel = new VerticalPanel(); scroll = new ScrollPanel(); scroll.setWidth(SCROLLWIDTH); DOM.setStyleAttribute(scroll.getElement(), "maxHeight", SCROLL_HEIGHT); scroll.setStyleName("k-sharelist-scroll"); scroll.add(itemsPanel); vp.add(title); vp.add(scroll); initWidget(vp); }
From source file:ch.heftix.mailxel.client.MailOverviewCellTable.java
License:Open Source License
private void init(final boolean withoutSearch, final MailServiceAsync mailxelService, final MailxelPanel mailxelPanel) { this.mailxelService = mailxelService; TextColumn<Envelope> toColumn = new TextColumn<Envelope>() { public String getValue(Envelope env) { return env.to; }//ww w.j a v a 2s . c om }; TextColumn<Envelope> dateColumn = new TextColumn<Envelope>() { public String getValue(Envelope env) { return env.date; } }; TextColumn<Envelope> gtdColumn = new TextColumn<Envelope>() { public String getValue(Envelope env) { return env.GTD; } }; TextColumn<Envelope> aColumn = new TextColumn<Envelope>() { public String getValue(Envelope env) { return Integer.toString(env.nattach); } }; rf = grid.getRowFormatter(); // header grid.setText(LABEL_ROW, C_FROM, "From"); grid.setText(LABEL_ROW, C_TO, "To"); grid.setText(LABEL_ROW, C_DATE, "Date"); grid.setText(LABEL_ROW, C_GTD, "GTD"); grid.setText(LABEL_ROW, C_ATTACHMENT, "A"); // subjectPanel.add(new Label("Subject")); // grid.setWidget(LABEL_ROW, C_SUBJECT, subjectPanel); grid.setText(LABEL_ROW, C_SUBJECT, "Subject"); ColumnFormatter fmt = grid.getColumnFormatter(); fmt.setWidth(C_FROM, "75px"); fmt.setWidth(C_TO, "75px"); fmt.setWidth(C_DATE, "75px"); fmt.setWidth(C_GTD, "50px"); fmt.setWidth(C_ATTACHMENT, "10px"); fmt.setWidth(C_SUBJECT, "400px"); final KeyPressHandler kbla = new KeyPressHandler() { public void onKeyPress(KeyPressEvent keyPressEvent) { if (KeyCodes.KEY_ENTER == keyPressEvent.getCharCode()) { currentPage = 0; startMessageSearch(mailxelService, mailxelPanel); } } }; fts = new TextBox(); fts.setTitle("full text search"); fts.setWidth("700px"); fts.addKeyPressHandler(kbla); final Image nextPage = new Image("img/resultset_next.png"); nextPage.setTitle("Next Page"); nextPage.setStylePrimaryName("mailxel-toolbar-item"); nextPage.addClickHandler(new ClickHandler() { public void onClick(ClickEvent sender) { currentPage++; startMessageSearch(mailxelService, mailxelPanel); } }); final Image prevPage = new Image("img/resultset_previous.png"); prevPage.setTitle("Previous Page"); prevPage.setStylePrimaryName("mailxel-toolbar-item"); prevPage.addClickHandler(new ClickHandler() { public void onClick(ClickEvent sender) { if (currentPage > 0) { currentPage--; } startMessageSearch(mailxelService, mailxelPanel); } }); // paginatePanel.add(attachmentName); searchPanel.add(fts); searchPanel.add(prevPage); searchPanel.add(nextPage); grid.addClickHandler(new ClickHandler() { public void onClick(ClickEvent clickEvent) { Cell cell = grid.getCellForEvent(clickEvent); if (null == cell) { return; } final int row = cell.getRowIndex(); final int col = cell.getCellIndex(); // row >= FIRST_PAYLOAD_ROW: skip header // col > 0: skip first col; contains a checkbox with separate // listener if (row >= first_payload_row && col > 0) { Envelope env = envelopes.get(row - first_payload_row); if (col == C_ATTACHMENT && env.nattach > 0) { // show popup with attachment details mailxelService.getAttachments(env.id, new AsyncCallback<List<AttachmentTO>>() { public void onSuccess(List<AttachmentTO> result) { PopupPanel pop = new PopupPanel(true); AttachmentBar ab = new AttachmentBar(mailxelService); for (AttachmentTO aTO : result) { ab.addAttachement(aTO, mailxelPanel, null); } pop.add(ab); Widget tmp = (Image) grid.getWidget(row, col); int x = tmp.getAbsoluteLeft(); int y = tmp.getAbsoluteTop(); pop.setPopupPosition(x, y); pop.show(); } public void onFailure(Throwable caught) { // ignore } }); } else if (991 == env.curcatid) { // edit message rf.setStylePrimaryName(row, "row-selected"); MailTO mt = new MailTO(); final MailSendGrid sg = new MailSendGrid(mailxelService, mailxelPanel, mt, MailSendGrid.TYPE_NEW); sg.setMailDetail(env.id); mailxelPanel.addTab(sg, env.from + ": " + env.subject); } else { // open a detail tab rf.setStylePrimaryName(row, "row-selected"); cl.setCursorPosition(row - first_payload_row); addDetailTab(mailxelService, mailxelPanel, env); } } } }); if (!withoutSearch) { add(searchPanel); } ScrollPanel sp = new ScrollPanel(); sp.add(grid); add(sp); }
From source file:ch.heftix.mailxel.client.MailOverviewGrid.java
License:Open Source License
private void init(final boolean withoutSearch, final MailServiceAsync mailxelService, final MailxelPanel mailxelPanel) { this.mailxelService = mailxelService; rf = grid.getRowFormatter();/*from w w w . j ava 2s. co m*/ // header grid.setText(LABEL_ROW, C_FROM, "From"); grid.setText(LABEL_ROW, C_TO, "To"); grid.setText(LABEL_ROW, C_DATE, "Date"); grid.setText(LABEL_ROW, C_GTD, "GTD"); grid.setText(LABEL_ROW, C_ATTACHMENT, "A"); // subjectPanel.add(new Label("Subject")); // grid.setWidget(LABEL_ROW, C_SUBJECT, subjectPanel); grid.setText(LABEL_ROW, C_SUBJECT, "Subject"); ColumnFormatter fmt = grid.getColumnFormatter(); fmt.setWidth(C_FROM, "75px"); fmt.setWidth(C_TO, "75px"); fmt.setWidth(C_DATE, "75px"); fmt.setWidth(C_GTD, "50px"); fmt.setWidth(C_ATTACHMENT, "10px"); fmt.setWidth(C_SUBJECT, "400px"); final KeyPressHandler kbla = new KeyPressHandler() { public void onKeyPress(KeyPressEvent keyPressEvent) { if (KeyCodes.KEY_ENTER == keyPressEvent.getCharCode()) { currentPage = 0; startMessageSearch(mailxelService, mailxelPanel); } } }; fts = new TextBox(); fts.setTitle("full text search"); fts.setWidth("700px"); fts.addKeyPressHandler(kbla); final Image nextPage = new Image("img/resultset_next.png"); nextPage.setTitle("Next Page"); nextPage.setStylePrimaryName("mailxel-toolbar-item"); nextPage.addClickHandler(new ClickHandler() { public void onClick(ClickEvent sender) { currentPage++; startMessageSearch(mailxelService, mailxelPanel); } }); final Image prevPage = new Image("img/resultset_previous.png"); prevPage.setTitle("Previous Page"); prevPage.setStylePrimaryName("mailxel-toolbar-item"); prevPage.addClickHandler(new ClickHandler() { public void onClick(ClickEvent sender) { if (currentPage > 0) { currentPage--; } startMessageSearch(mailxelService, mailxelPanel); } }); // paginatePanel.add(attachmentName); searchPanel.add(fts); searchPanel.add(prevPage); searchPanel.add(nextPage); grid.addClickHandler(new ClickHandler() { public void onClick(ClickEvent clickEvent) { Cell cell = grid.getCellForEvent(clickEvent); if (null == cell) { return; } final int row = cell.getRowIndex(); final int col = cell.getCellIndex(); // row >= FIRST_PAYLOAD_ROW: skip header // col > 0: skip first col; contains a checkbox with separate // listener if (row >= first_payload_row && col > 0) { Envelope env = envelopes.get(row - first_payload_row); if (col == C_ATTACHMENT && env.nattach > 0) { // show popup with attachment details mailxelService.getAttachments(env.id, new AsyncCallback<List<AttachmentTO>>() { public void onSuccess(List<AttachmentTO> result) { PopupPanel pop = new PopupPanel(true); AttachmentBar ab = new AttachmentBar(mailxelService); for (AttachmentTO aTO : result) { ab.addAttachement(aTO, mailxelPanel, null); } pop.add(ab); Widget tmp = (Image) grid.getWidget(row, col); int x = tmp.getAbsoluteLeft(); int y = tmp.getAbsoluteTop(); pop.setPopupPosition(x, y); pop.show(); } public void onFailure(Throwable caught) { // ignore } }); } else if (991 == env.curcatid) { // edit message rf.setStylePrimaryName(row, "row-selected"); MailTO mt = new MailTO(); final MailSendGrid sg = new MailSendGrid(mailxelService, mailxelPanel, mt, MailSendGrid.TYPE_NEW); sg.setMailDetail(env.id); mailxelPanel.addTab(sg, env.from + ": " + env.subject); } else { // open a detail tab rf.setStylePrimaryName(row, "row-selected"); cl.setCursorPosition(row - first_payload_row); addDetailTab(mailxelService, mailxelPanel, env); } } } }); if (!withoutSearch) { add(searchPanel); } ScrollPanel sp = new ScrollPanel(); sp.add(grid); add(sp); }
From source file:ch.heftix.mailxel.client.OverviewGrid.java
License:Open Source License
private void init(final MailServiceAsync mailxelService, final MailxelPanel mailxelPanel) { this.mailxelService = mailxelService; ScrollPanel sp = new ScrollPanel(); sp.add(grid);/*ww w .j a va 2s . co m*/ add(sp); }