001 /* 002 Copyright (C) 2001-2003 Laurent Martelli <laurent@aopsys.com> 003 004 This program is free software; you can redistribute it and/or modify 005 it under the terms of the GNU Lesser General Public License as 006 published by the Free Software Foundation; either version 2 of the 007 License, or (at your option) any later version. 008 009 This program is distributed in the hope that it will be useful, 010 but WITHOUT ANY WARRANTY; without even the implied warranty of 011 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 012 GNU Lesser General Public License for more details. 013 014 You should have received a copy of the GNU Lesser General Public License 015 along with this program; if not, write to the Free Software 016 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ 017 018 package org.objectweb.jac.aspects.gui.web; 019 020 import org.objectweb.jac.aspects.gui.*; 021 import org.objectweb.jac.core.rtti.CollectionItem; 022 import java.io.PrintWriter; 023 024 public class List extends AbstractCollection 025 implements HTMLViewer, CollectionListener 026 { 027 public List(ViewFactory factory, DisplayContext context, 028 CollectionItem collection, Object substance, 029 CollectionModel model, org.objectweb.jac.aspects.gui.CollectionItemView itemView) { 030 super(factory,context,collection,substance,model,itemView); 031 } 032 033 public void sort() { 034 } 035 036 // HTMLViewer interface 037 038 public void genHTML(PrintWriter out) { 039 sort(); 040 041 genHeader(out); 042 out.println("<table class=\"list\">"); 043 out.println(" <tbody>"); 044 045 for (int index=startIndex; 046 (!split || index<startIndex+rowsPerPage) && index<model.getRowCount(); 047 index++) 048 { 049 String row = (String)((ListModel)model).getElementAt(index); 050 out.println(" <tr"+(selected==index?" class=\"selected\"":"")+">"); 051 out.println(" <td><a href=\""+ 052 eventURL("onView")+ 053 "&index="+index+"\">"+row+"</a></td>"); 054 if (GuiAC.isRemovable(collection) && isEditor) 055 out.println(" <td>"+removeLink(index)+"</td>"); 056 out.println(" </tr>"); 057 } 058 out.println(" </tbody>"); 059 060 out.println("</table>"); 061 } 062 }