/** * */ package org.gcube.portlets.user.dataminermanager.client; import org.gcube.portlets.user.dataminermanager.client.DataMinerManager.MenuItem; import com.google.gwt.event.dom.client.ClickEvent; import com.google.gwt.event.dom.client.ClickHandler; import com.google.gwt.user.client.ui.HorizontalPanel; import com.google.gwt.user.client.ui.Image; /** * @author ceras * */ public abstract class Header extends HorizontalPanel { public abstract void select(MenuItem menuItem); Image menuGoBack, menuExperiment; // menuInputSpace, menuComputations; MenuItem currentSelection = null; Image currentImageSelection = null; //private Image menuDataSpace; /** * */ public Header() { super(); // this.setStyleAttribute("background-color", "#FFFFFF"); Image logo = new Image(DataMinerManager.resources.logoLittle()); logo.setAltText("Data Miner Manager"); logo.setTitle("Data Miner Manager"); logo.addStyleName("menuImgLogo"); menuGoBack = new Image(DataMinerManager.resources.goBack()); menuGoBack.addStyleName("menuItemImage"); menuGoBack.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { if (setMenuSelected(null)) select(null); } }); /* menuDataSpace = new Image( DataMinerManager.resources.menuItemInputspace()); menuDataSpace.addStyleName("menuItemImage"); menuDataSpace.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { if (setMenuSelected(MenuItem.DATA_SPACE)) select(MenuItem.DATA_SPACE); } }); */ menuExperiment = new Image( DataMinerManager.resources.menuItemExperiment()); menuExperiment.addStyleName("menuItemImage"); menuExperiment.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { if (setMenuSelected(MenuItem.EXPERIMENT)) select(MenuItem.EXPERIMENT); } }); /* * menuComputations = new Image( * DataMinerManager.resources.menuItemComputations()); * menuComputations.addStyleName("menuItemImage"); * menuComputations.addClickHandler(new ClickHandler() { * * @Override public void onClick(ClickEvent event) { if * (setMenuSelected(MenuItem.COMPUTATIONS)) * select(MenuItem.COMPUTATIONS); } }); */ this.add(logo); this.add(menuGoBack); //this.add(menuDataSpace); this.add(menuExperiment); // this.add(menuComputations); this.setCellWidth(logo, "100px"); this.setCellWidth(menuGoBack, "100px"); //this.setCellWidth(menuDataSpace, "80px"); this.setCellWidth(menuExperiment, "80px"); // this.setCellWidth(menuComputations, "80px"); menuGoBack.setVisible(false); //menuDataSpace.setVisible(false); menuExperiment.setVisible(false); // menuComputations.setVisible(false); } /** * @param inputSpace */ public boolean setMenuSelected(MenuItem menuItem) { // return true if the menu was changed if (menuItem == currentSelection) return false; // nothing to change if (menuItem == null) { menuGoBack.setVisible(false); //menuDataSpace.setVisible(false); menuExperiment.setVisible(false); // menuComputations.setVisible(false); if (currentSelection == MenuItem.EXPERIMENT) menuExperiment.removeStyleName("menuItemImage-selected"); /* else if (currentSelection == MenuItem.DATA_SPACE) menuDataSpace.removeStyleName("menuItemImage-selected"); */ /* * else if (currentSelection == MenuItem.COMPUTATIONS) * menuComputations.removeStyleName("menuItemImage-selected"); */ } else { if (currentSelection == null) { menuGoBack.setVisible(true); //menuDataSpace.setVisible(true); menuExperiment.setVisible(true); // menuComputations.setVisible(true); } if (currentSelection == MenuItem.EXPERIMENT) menuExperiment.removeStyleName("menuItemImage-selected"); /*else if (currentSelection == MenuItem.DATA_SPACE) menuDataSpace.removeStyleName("menuItemImage-selected");*/ /* * else if (currentSelection == MenuItem.COMPUTATIONS) * menuComputations.removeStyleName("menuItemImage-selected"); */ Image imgNew=menuExperiment; /* Image imgNew = (menuItem == MenuItem.DATA_SPACE ? menuDataSpace : menuExperiment); */ /* * Image imgNew = (menuItem == MenuItem.DATA_SPACE ? menuDataSpace : * (menuItem == MenuItem.EXPERIMENT ? menuExperiment : * menuComputations)); */ imgNew.addStyleName("menuItemImage-selected"); } currentSelection = menuItem; return true; } }