001 package org.hackystat.projectbrowser.page.projectportfolio.inputpanel; 002 003 import org.apache.wicket.markup.html.form.Button; 004 import org.apache.wicket.markup.html.form.Form; 005 import org.apache.wicket.markup.html.panel.Panel; 006 import org.hackystat.projectbrowser.ProjectBrowserSession; 007 import org.hackystat.projectbrowser.page.projectportfolio.ProjectPortfolioPage; 008 009 /** 010 * Panel to let user select the project to display. 011 * @author Shaoxuan Zhang 012 */ 013 public class ProjectPortfolioInputPanel extends Panel { 014 015 /** Support serialization. */ 016 private static final long serialVersionUID = 5389750577845203444L; 017 018 /** 019 * @param id the wicket id. 020 * @param page the page this panel is attached to. 021 */ 022 public ProjectPortfolioInputPanel(String id, ProjectPortfolioPage page) { 023 super(id); 024 add(new ProjectPortfolioInputForm("inputForm", page)); 025 026 Button cancelButton = new Button("cancel") { 027 /** Support serialization. */ 028 public static final long serialVersionUID = 1L; 029 @Override 030 public void onSubmit() { 031 ProjectBrowserSession.get().getProjectPortfolioSession().getDataModel().cancelDataUpdate(); 032 } 033 @Override 034 public boolean isEnabled() { 035 return 036 ProjectBrowserSession.get().getProjectPortfolioSession().getDataModel().isInProcess(); 037 } 038 }; 039 add(new Form("cancelForm").add(cancelButton)); 040 } 041 042 }