List of usage examples for com.google.gwt.user.client.ui FocusPanel addMouseOverHandler
public HandlerRegistration addMouseOverHandler(MouseOverHandler handler)
From source file:com.alkacon.geranium.client.ui.input.A_SelectBox.java
License:Open Source License
/** * Helper method for adding event handlers for a 'hover' effect to the opener.<p> * /*w w w .jav a2 s . co m*/ * @param panel the opener */ private void addHoverHandlers(FocusPanel panel) { final StyleVariable hoverVar = new StyleVariable(panel); hoverVar.setValue(CSS.openerNoHover()); panel.addMouseOverHandler(new MouseOverHandler() { /** * @see com.google.gwt.event.dom.client.MouseOverHandler#onMouseOver(com.google.gwt.event.dom.client.MouseOverEvent) */ public void onMouseOver(MouseOverEvent event) { hoverVar.setValue(CSS.openerHover()); } }); panel.addMouseOutHandler(new MouseOutHandler() { /** * @see com.google.gwt.event.dom.client.MouseOutHandler#onMouseOut(com.google.gwt.event.dom.client.MouseOutEvent) */ public void onMouseOut(MouseOutEvent event) { hoverVar.setValue(CSS.openerNoHover()); } }); }
From source file:com.koobe.editor.admin.client.application.sandbox.SandboxView.java
License:Apache License
@UiHandler("draftAddButton") void onDraftAddButtonClick(ClickEvent event) { final HTML widget = new HTML("<h1>Chapter Title</h1>"); final FocusPanel wrapper = new FocusPanel(); wrapper.add(widget);/*from w w w . j a v a2 s . c om*/ wrapper.addMouseOverHandler(new MouseOverHandler() { @Override public void onMouseOver(MouseOverEvent mouseOverEvent) { widget.setStyleName("draft-with-border"); } }); wrapper.addMouseOutHandler(new MouseOutHandler() { @Override public void onMouseOut(MouseOutEvent mouseOutEvent) { widget.removeStyleName("draft-with-border"); } }); wrapper.addDoubleClickHandler(new DoubleClickHandler() { @Override public void onDoubleClick(DoubleClickEvent doubleClickEvent) { Bootbox.prompt("Write:", new PromptCallback() { @Override public void callback(String result) { widget.setHTML("<h1>" + result + "</h1>"); } }); } }); draftPanel.add(wrapper); }
From source file:com.mecatran.otp.gwt.client.view.ItineraryWidget.java
License:Open Source License
public ItineraryWidget(ItineraryBean anItinerary, ItineraryListener aListener) { itinerary = anItinerary;/*from w ww . ja va2s . c o m*/ listener = aListener; FocusPanel focusPanel = new FocusPanel(); VerticalPanel openablePanel = new VerticalPanel(); openablePanel.setWidth("100%"); // Header: summary itinerarySummaryWidget = new ItinerarySummaryWidget(itinerary, new ClickHandler() { @Override public void onClick(ClickEvent event) { event.stopPropagation(); listener.onItineraryCloseButtonClicked(ItineraryWidget.this); } }, new ClickHandler() { @Override public void onClick(ClickEvent event) { event.stopPropagation(); listener.onItineraryPinButtonClicked(ItineraryWidget.this, itinerarySummaryWidget.isPinned()); } }); itinerarySummaryWidget.addStyleName("itinerary-summary-panel"); openablePanel.add(itinerarySummaryWidget); // Print link click handler itinerarySummaryWidget.addPrintClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { event.stopPropagation(); listener.onItineraryPrintButtonClicked(ItineraryWidget.this); } }); // Timeline (not visible by default) itineraryTimeLineWidget = new ItineraryTimeLineWidget(itinerary); openablePanel.add(itineraryTimeLineWidget); itineraryTimeLineWidget.setVisible(false); // Details (not visible by default) itineraryDetailsWidget = new ItineraryDetailsWidget(itinerary, listener); itineraryDetailsWidget.addStyleName("itinerary-details-panel"); itineraryDetailsWidget.setVisible(false); opened = false; openablePanel.add(itineraryDetailsWidget); focusPanel.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { boolean wasSelected = selected; listener.onItineraryHover(ItineraryWidget.this, false); listener.onItineraryClicked(ItineraryWidget.this); if (!opened) { itinerarySummaryWidget.setOpened(true); itineraryDetailsWidget.setVisible(true); itineraryTimeLineWidget.setVisible(true); opened = true; } else if (wasSelected && selected) { // We close it only if we were already selected. itinerarySummaryWidget.setOpened(false); itineraryDetailsWidget.setVisible(false); itineraryTimeLineWidget.setVisible(false); opened = false; } } }); focusPanel.addMouseOverHandler(new MouseOverHandler() { @Override public void onMouseOver(MouseOverEvent event) { if (!selected) listener.onItineraryHover(ItineraryWidget.this, true); } }); focusPanel.addMouseOutHandler(new MouseOutHandler() { @Override public void onMouseOut(MouseOutEvent event) { if (!selected) listener.onItineraryHover(ItineraryWidget.this, false); } }); focusPanel.add(openablePanel); initWidget(focusPanel); this.addStyleName("itinerary-panel-outer"); }
From source file:com.objetdirect.gwt.umlapi.client.umlCanvas.DecoratorCanvas.java
License:Open Source License
private void addSidePanelHandlers(final Direction direction, final FocusPanel sidePanel) { sidePanel.getElement().getStyle().setBackgroundColor(backgroundColor); sidePanel.getElement().getStyle().setOpacity(opacityValue); sidePanel.addMouseOverHandler(new MouseOverHandler() { @Override/*from ww w . j a v a 2 s .co m*/ public void onMouseOver(final MouseOverEvent event) { for (double d = opacityValue; d <= opacityMax; d += 0.05) { final double opacity = Math.ceil(d * 100) / 100; new Scheduler.Task("Opacifying") { @Override public void process() { sidePanel.getElement().getStyle().setOpacity(opacity); } }; } new Scheduler.Task("MovingAllArtifacts") { @Override public void process() { Scheduler.cancel("MovingAllArtifactsRecursive"); umlCanvas.moveAll(direction.withSpeed(Direction.getDependingOnQualityLevelSpeed()), true); } }; } }); sidePanel.addMouseOutHandler(new MouseOutHandler() { @Override public void onMouseOut(final MouseOutEvent event) { Scheduler.cancel("Opacifying"); Scheduler.cancel("MovingAllArtifacts"); Scheduler.cancel("MovingAllArtifactsRecursive"); sidePanel.getElement().getStyle().setOpacity(opacityValue); } }); sidePanel.addMouseDownHandler(new MouseDownHandler() { @Override public void onMouseDown(final MouseDownEvent event) { sidePanel.getElement().getStyle() .setBackgroundColor(ThemeManager.getTheme().getDirectionPanelPressedColor().toString()); Scheduler.cancel("MovingAllArtifactsRecursive"); } }); sidePanel.addMouseUpHandler(new MouseUpHandler() { @Override public void onMouseUp(final MouseUpEvent event) { sidePanel.getElement().getStyle() .setBackgroundColor(ThemeManager.getTheme().getDirectionPanelColor().toString()); umlCanvas.moveAll(direction.withSpeed( Math.min(DecoratorCanvas.this.getOffsetHeight(), DecoratorCanvas.this.getOffsetWidth())), false); } }); }
From source file:geogebra.web.gui.advanced.client.ui.widget.ListPopupPanel.java
License:Apache License
/** * This method wraps the specified widget into the focus panel and adds necessary listeners. * * @param widget is an item widget to be wraped. * @return a focus panel adopted for displaying. *//* w w w.jav a 2 s .co m*/ protected FocusPanel adoptItemWidget(Widget widget) { FocusPanel panel = new FocusPanel(widget); panel.addClickHandler(getItemClickHandler()); panel.addMouseOverHandler(getMouseEventsHandler()); panel.addMouseOutHandler(getMouseEventsHandler()); panel.setStyleName("item"); DOM.removeElementAttribute(panel.getElement(), "tabindex"); return panel; }
From source file:opus.gwt.management.console.client.dashboard.DashboardPanel.java
License:Apache License
public void handleProjectInformation(String projectName) { applicationsFlowPanel.clear();// w w w .j a va2s . c om final Project project = clientFactory.getProjects().get(projectName); HashMap<String, Application> applicationsMap = clientFactory.getApplications(); JsArrayString applicationsArray = project.getApps(); if (active) { activeButton.setText("Deactivate project"); } else { activeButton.setText("Activate project"); } for (int i = 0; i < applicationsArray.length() - 1; i++) { final Application app = applicationsMap.get(applicationsArray.get(i)); final FlowPanel application = new FlowPanel(); final FocusPanel applicationLabel = new FocusPanel(); final Label appName = new Label(app.getName()); final Label httpLabel = new Label("HTTP"); final Label httpsLabel = new Label("HTTPS"); final Label settingsLabel = new Label("Settings"); Image appIcon = new Image(); if (app.getIconURL().split("//").length < 2) { appIcon = new Image(JSVarHandler.getCommunityBaseURL() + app.getIconURL()); } else { appIcon = new Image(app.getIconURL()); } appIcon.setSize("64px", "64px"); application.add(appIcon); application.add(appName); application.add(httpLabel); application.add(httpsLabel); application.add(settingsLabel); application.setStyleName(manager.appIcon()); applicationLabel.add(application); applicationLabel.addMouseOverHandler(new MouseOverHandler() { public void onMouseOver(MouseOverEvent event) { if (active) { applicationLabel.setStyleName(manager.appIconActive()); appName.addStyleName(manager.text()); httpLabel.addStyleName(manager.link()); httpsLabel.addStyleName(manager.link()); settingsLabel.addStyleName(manager.link()); } } }); applicationLabel.addMouseOutHandler(new MouseOutHandler() { public void onMouseOut(MouseOutEvent event) { applicationLabel.setStyleName(manager.appIcon()); appName.removeStyleName(manager.text()); httpLabel.removeStyleName(manager.link()); httpsLabel.removeStyleName(manager.link()); settingsLabel.removeStyleName(manager.link()); } }); httpLabel.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { if (active) { Window.Location.assign(project.getURLS().get(0) + app.getAppName()); } } }); httpsLabel.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { if (active) { Window.Location.assign(project.getURLS().get(1) + app.getAppName()); } } }); settingsLabel.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { if (active) { eventBus.fireEvent(new PanelTransitionEvent(PanelTransitionEvent.TransitionTypes.SETTINGS, app.getAppName())); } } }); applicationsFlowPanel.add(applicationLabel); } }
From source file:opus.gwt.management.console.client.dashboard.IconPanel.java
License:Apache License
public void addProjectIcon(Project project) { FlowPanel projectPanel = new FlowPanel(); JsArrayString appStrings = project.getApps(); String description = ""; for (int i = 0; i < appStrings.length(); i++) { if (i == appStrings.length() - 1) description += appStrings.get(i); else/*from ww w . ja v a2 s.c o m*/ description += appStrings.get(i) + ", "; } final String projectName = project.getName(); final String appNames = description; Image projectImg = new Image(res.projectdefaulticon2().getUrl()); projectImg.setPixelSize(64, 64); projectPanel.add(projectImg); projectPanel.add(new Label(projectName)); final FocusPanel testLabel = new FocusPanel(); testLabel.add(projectPanel); testLabel.setStyleName(style.projectIcon()); testLabel.addMouseOverHandler(new MouseOverHandler() { public void onMouseOver(MouseOverEvent event) { testLabel.setStyleName(style.projectIconActive()); int[] pos = getDescPosition(testLabel); desc.show(); desc.setPopupPosition(pos[0], pos[1]); desc.setTitle("Applications"); desc.setText(appNames); } }); testLabel.addMouseOutHandler(new MouseOutHandler() { public void onMouseOut(MouseOutEvent event) { testLabel.setStyleName(style.projectIcon()); desc.hide(); } }); testLabel.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { testLabel.setStyleName(style.projectIcon()); eventBus.fireEvent( new PanelTransitionEvent(PanelTransitionEvent.TransitionTypes.DASHBOARD, projectName)); } }); projectIconsFlowPanel.add(testLabel); iconMap.put(project.getName(), projectIconsFlowPanel.getWidgetIndex(testLabel)); }
From source file:org.eurekastreams.web.client.ui.common.widgets.activity.BookmarkSearchComposite.java
License:Apache License
/** * Sets up event handling./*from w w w. jav a 2 s . c om*/ */ private void setupEvents() { final EventBus eventBus = Session.getInstance().getEventBus(); searchTerm.addKeyUpHandler(new KeyUpHandler() { public void onKeyUp(final KeyUpEvent ev) { // ENTER key if (ev.getNativeKeyCode() == KeyCodes.KEY_ENTER && !ev.isAnyModifierKeyDown()) { // navigating the list of search results - pick it if (activeItem != null) { activeItem.getElement().dispatchEvent( Document.get().createClickEvent(1, 0, 0, 0, 0, false, false, false, false)); } // search term in box - go to search page (should this be here?) else if (!searchTerm.getText().isEmpty()) { eventBus.notifyObservers(new UpdateHistoryEvent( new CreateUrlRequest(Page.SEARCH, generateParams(searchTerm.getText()), false))); } } else if (ev.isDownArrow() && activeItem != null) { int activeIndex = resultsPanel.getWidgetIndex(activeItem); if (activeIndex + 1 < resultsPanel.getWidgetCount()) { selectItem((Panel) resultsPanel.getWidget(activeIndex + 1)); } } else if (ev.isUpArrow() && activeItem != null) { int activeIndex = resultsPanel.getWidgetIndex(activeItem); if (activeIndex >= 1) { selectItem((Panel) resultsPanel.getWidget(activeIndex - 1)); } } else if (termLength != searchTerm.getText().length()) { termLength = searchTerm.getText().length(); if (termLength == 0) { resultsPanelContainer.setVisible(false); resultsPanel.clear(); } else { GetDirectorySearchResultsRequest request = new GetDirectorySearchResultsRequest( searchTerm.getText(), "", 0, 4, "bookmark"); SearchResultsModel.getInstance().fetch(request, true); } } } }); eventBus.addObserver(GotSearchResultsResponseEvent.class, new Observer<GotSearchResultsResponseEvent>() { public void update(final GotSearchResultsResponseEvent event) { if ("bookmark".equals(event.getCallerKey())) { activeItem = null; resultsPanel.clear(); resultsPanelContainer.setVisible(event.getResponse().getPagedSet().size() > 0); for (ModelView result : event.getResponse().getPagedSet()) { final FocusPanel itemContainer = new FocusPanel(); final FlowPanel itemPanel = new FlowPanel(); final Anchor name = new Anchor(); name.addStyleName(StaticResourceBundle.INSTANCE.coreCss().bookmarkSearchName()); name.addStyleName(StaticResourceBundle.INSTANCE.coreCss().ellipsis()); if (result instanceof PersonModelView) { final PersonModelView person = (PersonModelView) result; itemPanel.add(AvatarLinkPanel.create(person, Size.VerySmall, false)); name.setText(person.getDisplayName()); name.setTitle(person.getDisplayName()); itemContainer.addClickHandler(new ClickHandler() { public void onClick(final ClickEvent event) { StreamBookmarksModel.getInstance().insert(person.getStreamId()); } }); } else if (result instanceof DomainGroupModelView) { final DomainGroupModelView group = (DomainGroupModelView) result; itemPanel.add(new AvatarLinkPanel(EntityType.GROUP, group.getShortName(), group.getAvatarId(), Size.VerySmall, false)); name.setText(group.getName()); name.setTitle(group.getName()); itemContainer.addClickHandler(new ClickHandler() { public void onClick(final ClickEvent event) { StreamBookmarksModel.getInstance().insert(group.getStreamId()); } }); } itemContainer.addMouseOverHandler(new MouseOverHandler() { public void onMouseOver(final MouseOverEvent arg0) { selectItem(itemContainer); } }); name.addStyleName(StaticResourceBundle.INSTANCE.coreCss().bookmarkNameLink()); name.addStyleName(StaticResourceBundle.INSTANCE.coreCss().ellipsis()); itemPanel.add(name); itemContainer.add(itemPanel); resultsPanel.add(itemContainer); if (activeItem == null) { selectItem(itemContainer); } } } } }); eventBus.addObserver(SwitchedHistoryViewEvent.class, new Observer<SwitchedHistoryViewEvent>() { public void update(final SwitchedHistoryViewEvent event) { if (event.getPage() != Page.SEARCH) { searchTerm.reset(); } } }); }
From source file:org.eurekastreams.web.client.ui.pages.search.GlobalSearchComposite.java
License:Apache License
/** * Constructor./*from w w w. j a v a 2 s. c o m*/ * * @param label * the label for the uninitialized textbox. */ public GlobalSearchComposite(final String label) { searchTerm = new LabeledTextBox(label); resultsPanelContainer.setVisible(false); addStyleName(StaticResourceBundle.INSTANCE.coreCss().searchList()); add(searchTerm); resultsPanelContainer .addStyleName(StaticResourceBundle.INSTANCE.coreCss().searchResultsAutocompleteResults()); resultsPanelContainer .addStyleName(StaticResourceBundle.INSTANCE.coreCss().globalSearchResultsAutocompleteResults()); add(resultsPanelContainer); resultsPanelContainer.add(resultsPanel); final EventBus eventBus = Session.getInstance().getEventBus(); final GlobalSearchComposite thisClass = this; searchTerm.addKeyUpHandler(new KeyUpHandler() { public void onKeyUp(final KeyUpEvent ev) { if (ev.getNativeKeyCode() == KeyCodes.KEY_ENTER && !ev.isAnyModifierKeyDown() && searchTerm.getText().length() > 0 && activeItem != null) { activeItem.getElement().dispatchEvent( Document.get().createClickEvent(1, 0, 0, 0, 0, false, false, false, false)); clearSearch(); } else if (ev.getNativeKeyCode() == KeyCodes.KEY_DOWN && activeItem != null) { int activeIndex = resultsPanel.getWidgetIndex(activeItem); if (activeIndex + 1 < resultsPanel.getWidgetCount()) { selectItem((Panel) resultsPanel.getWidget(activeIndex + 1)); } } else if (ev.getNativeKeyCode() == KeyCodes.KEY_UP && activeItem != null) { int activeIndex = resultsPanel.getWidgetIndex(activeItem); if (activeIndex - 1 >= 0) { selectItem((Panel) resultsPanel.getWidget(activeIndex - 1)); } } else if (termLength != searchTerm.getText().length()) { String searchTermText = searchTerm.getText().trim(); termLength = searchTermText.length(); if (termLength == 0) { resultsPanelContainer.setVisible(false); resultsPanel.clear(); thisClass.removeStyleName(StaticResourceBundle.INSTANCE.coreCss().globalSearchBoxActive()); } else { GetDirectorySearchResultsRequest request = new GetDirectorySearchResultsRequest( searchTermText, "", 0, 4, "global"); SearchResultsModel.getInstance().fetch(request, true); thisClass.addStyleName(StaticResourceBundle.INSTANCE.coreCss().globalSearchBoxActive()); } } } }); searchTerm.addBlurHandler(new BlurHandler() { public void onBlur(final BlurEvent arg0) { timerFactory.runTimer(BLUR_DELAY, new TimerHandler() { public void run() { clearSearch(); } }); } }); eventBus.addObserver(GotSearchResultsResponseEvent.class, new Observer<GotSearchResultsResponseEvent>() { public void update(final GotSearchResultsResponseEvent event) { if ("global".equals(event.getCallerKey())) { resultsPanel.clear(); activeItem = null; resultsPanelContainer.setVisible(event.getResponse().getPagedSet().size() > 0); String historyToken = ""; for (ModelView result : event.getResponse().getPagedSet()) { final FocusPanel itemContainer = new FocusPanel(); final FlowPanel itemPanel = new FlowPanel(); final Hyperlink name = new Hyperlink(); name.addStyleName(StaticResourceBundle.INSTANCE.coreCss().globalSearchItemName()); name.addStyleName(StaticResourceBundle.INSTANCE.coreCss().ellipsisChild()); if (result instanceof PersonModelView) { final PersonModelView person = (PersonModelView) result; itemPanel.add(AvatarLinkPanel.create(person, Size.Small, false)); name.setText(person.getDisplayName()); name.setTitle(person.getDisplayName()); historyToken = Session.getInstance() .generateUrl(new CreateUrlRequest(Page.PEOPLE, person.getAccountId())); itemContainer.addClickHandler(new ClickHandler() { public void onClick(final ClickEvent event) { ArrayList<String> views = new ArrayList<String>(); views.add(person.getAccountId()); eventBus.notifyObservers( new UpdateHistoryEvent(new CreateUrlRequest(Page.PEOPLE, views))); } }); } else if (result instanceof DomainGroupModelView) { final DomainGroupModelView group = (DomainGroupModelView) result; itemPanel.add(new AvatarLinkPanel(EntityType.GROUP, group.getShortName(), group.getAvatarId(), Size.Small, false)); name.setText(group.getName()); name.setTitle(group.getName()); historyToken = Session.getInstance() .generateUrl(new CreateUrlRequest(Page.GROUPS, group.getShortName())); itemContainer.addClickHandler(new ClickHandler() { public void onClick(final ClickEvent event) { ArrayList<String> views = new ArrayList<String>(); views.add(group.getShortName()); eventBus.notifyObservers( new UpdateHistoryEvent(new CreateUrlRequest(Page.GROUPS, views))); } }); } itemContainer.addMouseOverHandler(new MouseOverHandler() { public void onMouseOver(final MouseOverEvent arg0) { selectItem(itemContainer); } }); name.setTargetHistoryToken(historyToken); itemPanel.add(name); itemContainer.add(itemPanel); resultsPanel.add(itemContainer); if (activeItem == null) { selectItem(itemContainer); } } if (event.getResponse().getTotal() > event.getResponse().getPagedSet().size()) { final FocusPanel itemContainer = new FocusPanel(); final FlowPanel itemPanel = new FlowPanel(); itemContainer .addStyleName(StaticResourceBundle.INSTANCE.coreCss().searchResultsMoreButton()); itemPanel.add(new Label("See more results")); itemContainer.addClickHandler(new ClickHandler() { public void onClick(final ClickEvent event) { eventBus.notifyObservers(new UpdateHistoryEvent(new CreateUrlRequest(Page.SEARCH, generateParams(searchTerm.getText()), false))); } }); itemContainer.addMouseOverHandler(new MouseOverHandler() { public void onMouseOver(final MouseOverEvent arg0) { selectItem(itemContainer); } }); itemContainer.add(itemPanel); resultsPanel.add(itemContainer); } } } }); eventBus.addObserver(SwitchedHistoryViewEvent.class, new Observer<SwitchedHistoryViewEvent>() { public void update(final SwitchedHistoryViewEvent event) { if (event.getPage() != Page.SEARCH) { searchTerm.reset(); } } }); }
From source file:org.opencms.gwt.client.ui.input.A_CmsSelectBox.java
License:Open Source License
/** * Helper method for adding event handlers for a 'hover' effect to the opener.<p> * /*from w ww .j av a 2s .c om*/ * @param panel the opener */ private void addHoverHandlers(FocusPanel panel) { final CmsStyleVariable hoverVar = new CmsStyleVariable(panel); hoverVar.setValue(CSS.openerNoHover()); panel.addMouseOverHandler(new MouseOverHandler() { /** * @see com.google.gwt.event.dom.client.MouseOverHandler#onMouseOver(com.google.gwt.event.dom.client.MouseOverEvent) */ public void onMouseOver(MouseOverEvent event) { hoverVar.setValue(CSS.openerHover()); } }); panel.addMouseOutHandler(new MouseOutHandler() { /** * @see com.google.gwt.event.dom.client.MouseOutHandler#onMouseOut(com.google.gwt.event.dom.client.MouseOutEvent) */ public void onMouseOut(MouseOutEvent event) { hoverVar.setValue(CSS.openerNoHover()); } }); }