taylor      2005/01/29 13:42:08

  Modified:    layout-portlets/src/java/org/apache/jetspeed/portlets/layout
                        MultiColumnPortlet.java
               portal/src/webapp/WEB-INF/templates/layout/html/columns
                        layout.vm
               portal/src/java/org/apache/jetspeed/velocity
                        JetspeedPowerTool.java
  Log:
  column sizes in the layout portlets were being ignored
  column sizes are now being applied to multicolumn portlets
  this may affect your pages, suggest testing pages with this new functionality
  if you don't specify a column size init param, no sizes are applied
  
  Revision  Changes    Path
  1.9       +9 -1      
jakarta-jetspeed-2/layout-portlets/src/java/org/apache/jetspeed/portlets/layout/MultiColumnPortlet.java
  
  Index: MultiColumnPortlet.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jetspeed-2/layout-portlets/src/java/org/apache/jetspeed/portlets/layout/MultiColumnPortlet.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- MultiColumnPortlet.java   25 Jan 2005 00:53:36 -0000      1.8
  +++ MultiColumnPortlet.java   29 Jan 2005 21:42:08 -0000      1.9
  @@ -53,14 +53,20 @@
       private String colSizes = null;
       private String portletName = null;
       private String layoutType;
  -
  +    private List columnSizes = null;
       protected PageManager pm;
   
       public void init( PortletConfig config ) throws PortletException
       {
           super.init(config);
           this.numColumns = 
Integer.parseInt(config.getInitParameter(PARAM_NUM_COLUMN));
  +        if (0 == numColumns)
  +            numColumns = 1;
           this.colSizes = config.getInitParameter(PARAM_COLUMN_SIZES);
  +        if (colSizes != null || colSizes.trim().length() > 0)
  +        {
  +            columnSizes = getCellSizes(colSizes);            
  +        }
           this.portletName = config.getPortletName();
           this.layoutType = config.getInitParameter("layoutType");
           pm = (PageManager) 
Jetspeed.getComponentManager().getComponent(PageManager.class);
  @@ -108,12 +114,14 @@
   
           request.setAttribute("columns", columns);
           request.setAttribute("numberOfColumns", new Integer(numColumns));
  +        request.setAttribute("columnSizes", columnSizes);        
   
           // now invoke the JSP associated with this portlet
           super.doView(request, response);
           
           request.removeAttribute("columns");
           request.removeAttribute("numberOfColumns");
  +        request.removeAttribute("columnSizes");
       }
   
       protected List[] buildColumns( Fragment f, int colNum, RenderRequest 
request ) throws PortletException
  
  
  
  1.19      +12 -1     
jakarta-jetspeed-2/portal/src/webapp/WEB-INF/templates/layout/html/columns/layout.vm
  
  Index: layout.vm
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jetspeed-2/portal/src/webapp/WEB-INF/templates/layout/html/columns/layout.vm,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- layout.vm 26 Jan 2005 17:46:26 -0000      1.18
  +++ layout.vm 29 Jan 2005 21:42:08 -0000      1.19
  @@ -15,6 +15,7 @@
   *#
   
   #set($table = $jetspeed.columns)
  +#set($sizes = $jetspeed.columnSizes)
   
   #set($myPage = $jetspeed.page)
   
  @@ -74,8 +75,18 @@
   <div id="portal-layout-$htmlUtil.getSafeElementId($myPage.id)" 
class="portal-layout">
   <table  width="100%" cellspacing="0" cellpadding="0" >
     <tr>
  +     #set ($sizeIndex = 0)
        #foreach($entry in $table)
  -    <td valign="top">
  +        #if ($sizes)
  +          #if ($sizeIndex < $sizes.size())
  +             <td valign='top' name='alexi' width='$sizes.get($sizeIndex)'/>
  +          #else
  +            <td valign="top">          
  +          #end
  +        #else
  +       <td  valign="top">
  +       #end
  +       #set ($sizeIndex = $sizeIndex + 1)     
          <table width="100%" class="portal-layout-column">
          #foreach($f in $entry)       
           <tr>
  
  
  
  1.39      +11 -1     
jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/velocity/JetspeedPowerTool.java
  
  Index: JetspeedPowerTool.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/velocity/JetspeedPowerTool.java,v
  retrieving revision 1.38
  retrieving revision 1.39
  diff -u -r1.38 -r1.39
  --- JetspeedPowerTool.java    4 Jan 2005 16:21:09 -0000       1.38
  +++ JetspeedPowerTool.java    29 Jan 2005 21:42:08 -0000      1.39
  @@ -91,6 +91,7 @@
       protected static final String RENDER_RESPONSE_ATTR = 
"javax.portlet.response";
       protected static final String RENDER_REQUEST_ATTR = 
"javax.portlet.request";
       private static final String COLUMNS_ATTR = "columns";
  +    private static final String COLUMN_SIZES = "columnSizes";
   
       private RenderRequest renderRequest;
   
  @@ -264,6 +265,15 @@
           return (List[]) renderRequest.getAttribute(COLUMNS_ATTR);
       }
   
  +    public List getColumnSizes()
  +    {
  +        checkState();
  +        Object o = renderRequest.getAttribute(COLUMN_SIZES);
  +        if (o == null)
  +            return null;
  +        return (List) renderRequest.getAttribute(COLUMN_SIZES);
  +    }
  +    
       /**
        * 
        * @return
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to