View Javadoc
1 /* 2 * Scope: a generic MVC framework. 3 * Copyright (c) 2000-2002, The Scope team 4 * All rights reserved. 5 * 6 * 7 * Redistribution and use in source and binary forms, with or without 8 * modification, are permitted provided that the following conditions 9 * are met: 10 * 11 * Redistributions of source code must retain the above copyright 12 * notice, this list of conditions and the following disclaimer. 13 * 14 * Redistributions in binary form must reproduce the above copyright 15 * notice, this list of conditions and the following disclaimer in the 16 * documentation and/or other materials provided with the distribution. 17 * 18 * Neither the name "Scope" nor the names of its contributors 19 * may be used to endorse or promote products derived from this software 20 * without specific prior written permission. 21 * 22 * 23 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 24 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 25 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 26 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR 27 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 28 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 29 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 30 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 31 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 32 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 33 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 34 * 35 * 36 * $Id: PersonView.java,v 1.4 2002/09/05 15:41:50 ludovicc Exp $ 37 */ 38 package samples.swing.timesheet.view; 39 40 import java.awt.BorderLayout; 41 import javax.swing.JLabel; 42 import javax.swing.JPanel; 43 import javax.swing.JScrollPane; 44 import javax.swing.JSplitPane; 45 import org.scopemvc.core.Selector; 46 import org.scopemvc.view.swing.SList; 47 import org.scopemvc.view.swing.SPanel; 48 import org.scopemvc.view.swing.STextField; 49 50 /*** 51 * <p> 52 * 53 * The Model, rather than view model part of the timesheet application. This 54 * contains the timesheet view, the list of projects and of course the persons 55 * name.</p> 56 * 57 * @author <a href="mailto:steve.jones@netdecisions.co.uk>;Steve Jones</a> 58 * @created 05 September 2002 59 * @since Scope v0.8 60 * @version $Revision: 1.4 $ $Date: 2002/09/05 15:41:50 $ 61 */ 62 public class PersonView extends SPanel { 63 64 /*** 65 * Constructor for the PersonView object 66 */ 67 public PersonView() { 68 // Add the list to the left 69 SList list = new SList(); 70 list.setSelector(Selector.fromString("projects")); 71 JPanel listPanel = new JPanel(); 72 listPanel.setLayout(new BorderLayout()); 73 list.setToolTipText("Select project to start work"); 74 listPanel.add(new JLabel("Project List"), BorderLayout.NORTH); 75 listPanel.add(list, BorderLayout.CENTER); 76 77 setLayout(new BorderLayout()); 78 79 // Add the Timesheet bit in the centre 80 TimesheetView timesheetView = new TimesheetView(); 81 timesheetView.setSelector(Selector.fromString("timesheet")); 82 JSplitPane s = new JSplitPane(); 83 s.setLeftComponent(new JScrollPane(listPanel)); 84 s.setRightComponent(new JScrollPane(timesheetView)); 85 add(s, BorderLayout.CENTER); 86 87 // Add the text field to the top 88 JPanel subPanel = new JPanel(); 89 subPanel.setLayout(new BorderLayout()); 90 STextField textField = new STextField(); 91 textField.setSelector(Selector.fromString("name")); 92 textField.setName("Name"); 93 textField.setToolTipText("The name of the person for the timesheet"); 94 subPanel.add(textField, BorderLayout.CENTER); 95 JLabel label = new JLabel(); 96 label.setText("Name : "); 97 subPanel.add(label, BorderLayout.WEST); 98 add(subPanel, BorderLayout.NORTH); 99 100 // Finally set the selected item of the list to be the current project of the timesheet 101 list.setSelectionSelector(Selector.fromString("timesheet.currentProject")); 102 } 103 104 }

This page was automatically generated by Maven