You are viewing a plain text version of this content. The canonical link for it is here.
Posted to slide-dev@jakarta.apache.org by df...@apache.org on 2004/06/22 17:22:21 UTC

cvs commit: jakarta-slide/proposals/projector/src/java/org/apache/slide/projector/processor/table TableGenerator.java TableMapRenderer.java

dflorey     2004/06/22 08:22:21

  Modified:    proposals/projector/src/java/org/apache/slide/projector/processor/table
                        TableGenerator.java TableMapRenderer.java
  Log:
  Selectable column fragment added
  
  Revision  Changes    Path
  1.7       +12 -5     jakarta-slide/proposals/projector/src/java/org/apache/slide/projector/processor/table/TableGenerator.java
  
  Index: TableGenerator.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/proposals/projector/src/java/org/apache/slide/projector/processor/table/TableGenerator.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- TableGenerator.java	22 Jun 2004 13:54:24 -0000	1.6
  +++ TableGenerator.java	22 Jun 2004 15:22:21 -0000	1.7
  @@ -45,11 +45,12 @@
       final private static String SORTABLE = "sortable";
       final private static String HEADER = "header";
       final private static String KEY = "key";
  +    final private static String VALUE = "value";
  +    final private static String FRAGMENT = "fragment";
       
       final private static String HEADERS = "headers";
       final private static String COLUMNS = "columns";
   
  -    final private static String VALUE = "value";
       final private static String SORTABLE_HANDLER = "sortableHandler";
       final private static String RESIZABLE_HANDLER = "resizableHandler";
   
  @@ -62,6 +63,7 @@
           setRequiredFragments(new String[] { DEFAULT_FRAGMENT, COLUMN_FRAGMENT, HEADER_COLUMN_FRAGMENT });
           setOptionalFragments(new String[] { COLLAPSED_HEADER_COLUMN_FRAGMENT, COLLAPSED_COLUMN_FRAGMENT, ASCENDING_HEADER_COLUMN_FRAGMENT, DESCENDING_HEADER_COLUMN_FRAGMENT, EMPTY_FRAGMENT, HEADER_FRAGMENT, FOOTER_FRAGMENT, FIRST_FRAGMENT, LAST_FRAGMENT, EVEN_FRAGMENT });
           setRepeatedFragments(new String[] { FIRST_FRAGMENT, LAST_FRAGMENT, DEFAULT_FRAGMENT, EVEN_FRAGMENT });
  +        ignoreUndefinedFragments(false);
       }
   
       public void configure(StreamableValue config) throws ConfigurationException {
  @@ -75,9 +77,10 @@
           List headerParameterDescriptors = getTemplateParameterDescriptor(new String[] { HEADER_COLUMN_FRAGMENT, COLLAPSED_HEADER_COLUMN_FRAGMENT });
           headerParameterDescriptors.add(new ParameterDescriptor(HEADER, new ParameterMessage("tableGenerator/parameter/columns/header"), new StringValueDescriptor(), StringValue.EMPTY));
           headerParameterDescriptors.add(new ParameterDescriptor(VALUE, new ParameterMessage("tableGenerator/parameter/columns/value"), new ResourceValueDescriptor(), NullValue.NULL));
  -        headerParameterDescriptors.add(new ParameterDescriptor(KEY, new ParameterMessage("tableGenerator/parameter/columns/key"), new StringValueDescriptor(), NullValue.NULL));
  +        headerParameterDescriptors.add(new ParameterDescriptor(KEY, new ParameterMessage("tableGenerator/parameter/columns/key"), new StringValueDescriptor()));
           headerParameterDescriptors.add(new ParameterDescriptor(RESIZABLE, new ParameterMessage("tableGenerator/parameter/columns/resizable"), new BooleanValueDescriptor(), BooleanValue.FALSE));
           headerParameterDescriptors.add(new ParameterDescriptor(SORTABLE, new ParameterMessage("tableGenerator/parameter/columns/sortable"), new BooleanValueDescriptor(), BooleanValue.FALSE));
  +        headerParameterDescriptors.add(new ParameterDescriptor(FRAGMENT, new ParameterMessage("tableGenerator/parameter/columns/fragment"), new StringValueDescriptor(getDefinedFragments()), NullValue.NULL));
           parameterDescriptorList.add(new ParameterDescriptor(COLUMNS_PARAMETER, new ParameterMessage("tableGenerator/parameter/columns"),
           		new ArrayValueDescriptor(new MapValueDescriptor((ParameterDescriptor [])headerParameterDescriptors.toArray(new ParameterDescriptor[headerParameterDescriptors.size()])))));
           parameterDescriptorList.add(new ParameterDescriptor(PARAMETER, new ParameterMessage("tableGenerator/parameter/parameter"), new MapValueDescriptor(), new MapValue(new HashMap())));
  @@ -162,15 +165,19 @@
               Map inputParameter = ((MapValue)input[i]).getMap();
       		for ( int j = 0; j < columns.length; j++ ) {
           		Map columnMap = ((MapValue)columns[j]).getMap();
  +        		Object value = columnMap.get(VALUE);
           		String key = columnMap.get(KEY).toString();
  -        		Value value = (Value)columnMap.get(VALUE);
           		if ( value == null || value == NullValue.NULL ) {
  -        			value = (Value)inputParameter.get(key);
  +        			value = inputParameter.get(key);
           		}
           		Map columnParameters = new HashMap();
           		columnParameters.putAll(parameter);
           		columnParameters.put(VALUE, value);
           		Template template = columnTemplate;
  +        		Value fragment = (Value)columnMap.get(FRAGMENT);
  +        		if ( fragment != NullValue.NULL ) {
  +        			template = getOptionalFragment(fragment.toString());
  +        		}
           		if ( size != null && TableHandler.COLLAPSED.equals(size.get(key))) {
           			template = collapsedColumnTemplate;
           		}
  
  
  
  1.6       +2 -2      jakarta-slide/proposals/projector/src/java/org/apache/slide/projector/processor/table/TableMapRenderer.java
  
  Index: TableMapRenderer.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/proposals/projector/src/java/org/apache/slide/projector/processor/table/TableMapRenderer.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- TableMapRenderer.java	21 Jun 2004 16:00:25 -0000	1.5
  +++ TableMapRenderer.java	22 Jun 2004 15:22:21 -0000	1.6
  @@ -203,8 +203,8 @@
   		public int compare(Object o1, Object o2) {
   			Map map1 = ((MapValue)o1).getMap();
   			Map map2 = ((MapValue)o2).getMap();
  -			Value v1 = (Value)map1.get(sortBy);
  -			Value v2 = (Value)map2.get(sortBy);
  +			Object v1 = map1.get(sortBy);
  +			Object v2 = map2.get(sortBy);
   			int comparison = 0;
   			if ( v1 instanceof Comparable ) {
   				comparison = ((Comparable)v1).compareTo(v2);
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: slide-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: slide-dev-help@jakarta.apache.org