001    package org.hackystat.projectbrowser.page.projects;
002    
003    import org.apache.wicket.markup.html.form.Form;
004    import org.hackystat.projectbrowser.ProjectBrowserSession;
005    
006    /**
007     * Provide form with Project management functions.
008     * 
009     * @author Philip Johnson
010     * @author Randy Cox
011     */
012    public class ProjectsForm extends Form {
013    
014      /** Support serialization. */
015      private static final long serialVersionUID = 1L;
016    
017      /** The page containing this form. */
018      ProjectsPage page = null;
019    
020      /**
021       * The constructor for this page.
022       * 
023       * @param id Form identification
024       * @param page Page this form is imbedded in
025       */
026      public ProjectsForm(final String id, final ProjectsPage page) {
027        super(id);
028        this.page = page;
029    
030        /** Get session and model object for future use. */
031        final ProjectsSession session = ProjectBrowserSession.get().getProjectsSession();
032    
033        final ProjListPanel listPanel = new ProjListPanel("projListPanel");
034        listPanel.setVisible(true);
035        add(listPanel);
036        session.setProjListPanel(listPanel);
037    
038        final ProjEditPanel editPanel = new ProjEditPanel("projEditPanel");
039        editPanel.setVisible(false);
040        add(editPanel);
041        session.setProjEditPanel(editPanel);
042    
043        final ProjRenamePanel renamePanel = new ProjRenamePanel("projRenamePanel");
044        renamePanel.setVisible(false);
045        add(renamePanel);
046        session.setProjRenamePanel(renamePanel);
047    
048        final ProjDeletePanel deletePanel = new ProjDeletePanel("projDeletePanel");
049        deletePanel.setVisible(false);
050        add(deletePanel);
051        session.setProjDeletePanel(deletePanel);
052    
053        final ProjLeavePanel leavePanel = new ProjLeavePanel("projLeavePanel");
054        leavePanel.setVisible(false);
055        add(leavePanel);
056        session.setProjLeavePanel(leavePanel);
057    
058        final ProjReplyPanel replyPanel = new ProjReplyPanel("projReplyPanel");
059        replyPanel.setVisible(false);
060        add(replyPanel);
061        session.setProjReplyPanel(replyPanel);
062    
063        final ProjClearCachePanel clearCachePanel = new ProjClearCachePanel("projClearCachePanel");
064        clearCachePanel.setVisible(false);
065        add(clearCachePanel);
066        session.setProjClearCachePanel(clearCachePanel);
067      }
068    }