You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jetspeed-dev@portals.apache.org by rw...@apache.org on 2006/01/13 07:28:02 UTC
svn commit: r368613 - in /portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1:
components/page-manager/src/java/org/apache/jetspeed/om/page/impl/
components/portal/src/java/org/apache/jetspeed/aggregator/impl/
components/portal/src/java/org/apache/jetspe...
Author: rwatler
Date: Thu Jan 12 22:27:39 2006
New Revision: 368613
URL: http://svn.apache.org/viewcvs?rev=368613&view=rev
Log:
- support nested layouts in decoration portal componentry
- add column sizes support in columns layout template and ColumnLayout
- cleanup MiltiColumnPortlet to support more robust sizes support
- fix broken portal pipeline test case
- cleanup portal-layout styles to avoid css box model layout issues
and customize portlet content overflow settings for IE and other
browsers
- remove broken page actions in tcolumns layout: page actions have been
moved to header.vm decorators
- added some test cases for the use of the sizes layout property to demo
PSML pages
- added VelocityOneColumnTable layout portlet for completeness and
backward compatibility
Added:
portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/WEB-INF/pages/_user/user/nested-table-layout.psml
- copied unchanged from r368605, portals/jetspeed-2/trunk/src/webapp/WEB-INF/pages/_user/user/nested-table-layout.psml
Modified:
portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/page-manager/src/java/org/apache/jetspeed/om/page/impl/BaseElementImpl.java
portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/java/org/apache/jetspeed/aggregator/impl/AsyncPageAggregatorImpl.java
portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/java/org/apache/jetspeed/decoration/DecorationFactoryImpl.java
portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/java/org/apache/jetspeed/decoration/PageTheme.java
portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/test/org/apache/jetspeed/decoration/TestDecorations.java
portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/test/org/apache/jetspeed/pipeline/TestPipeline.java
portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/jetspeed-api/src/java/org/apache/jetspeed/decoration/DecorationFactory.java
portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/layout-portlets/src/java/org/apache/jetspeed/portlets/layout/ColumnLayout.java
portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/layout-portlets/src/java/org/apache/jetspeed/portlets/layout/MultiColumnPortlet.java
portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/layout-portlets/src/test/org/apache/jetspeed/portlets/layout/TestColumnLayout.java
portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/layout-portlets/src/webapp/WEB-INF/portlet.xml
portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/WEB-INF/pages/Administrative/user-mgt.psml
portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/WEB-INF/pages/_user/user/nested-layout.psml
portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/WEB-INF/templates/layout/html/columns/layout.vm
portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/WEB-INF/templates/layout/html/tcolumns/layout.vm
portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/css/standard-columns.css
portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/jetspeed/css/styles.css
portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/jscookmenu/css/styles.css
portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/simple/css/styles.css
portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/tigris/css/styles.css
portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/portlet/jetspeed/css/styles.css
portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/portlet/tigris/css/styles.css
Modified: portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/page-manager/src/java/org/apache/jetspeed/om/page/impl/BaseElementImpl.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/page-manager/src/java/org/apache/jetspeed/om/page/impl/BaseElementImpl.java?rev=368613&r1=368612&r2=368613&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/page-manager/src/java/org/apache/jetspeed/om/page/impl/BaseElementImpl.java (original)
+++ portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/page-manager/src/java/org/apache/jetspeed/om/page/impl/BaseElementImpl.java Thu Jan 12 22:27:39 2006
@@ -234,6 +234,24 @@
}
/* (non-Javadoc)
+ * @see java.lang.Object#equals(java.lang.Object)
+ */
+ public boolean equals(Object o)
+ {
+ // compare element by id
+ return ((o != null) && getClass().equals(o.getClass()) && (id != 0) && (id == ((BaseElementImpl)o).id));
+ }
+
+ /* (non-Javadoc)
+ * @see java.lang.Object#hashCode()
+ */
+ public int hashCode()
+ {
+ // use id to generate hashCode
+ return id;
+ }
+
+ /* (non-Javadoc)
* @see org.apache.jetspeed.om.common.SecuredResource#getSecurityConstraints()
*/
public SecurityConstraints getSecurityConstraints()
Modified: portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/java/org/apache/jetspeed/aggregator/impl/AsyncPageAggregatorImpl.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/java/org/apache/jetspeed/aggregator/impl/AsyncPageAggregatorImpl.java?rev=368613&r1=368612&r2=368613&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/java/org/apache/jetspeed/aggregator/impl/AsyncPageAggregatorImpl.java (original)
+++ portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/java/org/apache/jetspeed/aggregator/impl/AsyncPageAggregatorImpl.java Thu Jan 12 22:27:39 2006
@@ -184,6 +184,7 @@
}
}
+
// sync
// TODO: synchronize on completion of all jobs
// not sure where that code went, used to be in here, very odd
Modified: portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/java/org/apache/jetspeed/decoration/DecorationFactoryImpl.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/java/org/apache/jetspeed/decoration/DecorationFactoryImpl.java?rev=368613&r1=368612&r2=368613&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/java/org/apache/jetspeed/decoration/DecorationFactoryImpl.java (original)
+++ portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/java/org/apache/jetspeed/decoration/DecorationFactoryImpl.java Thu Jan 12 22:27:39 2006
@@ -96,13 +96,15 @@
String decorationName = getDefaultDecorationName(fragment, page);
Decoration decoration;
- if (fragment.getType().equals(Fragment.PORTLET))
+ // use layout decoration for top level layout root
+ // fragments; portlet layouts for all others
+ if (fragment.getType().equals(Fragment.LAYOUT) && fragment.equals(page.getRootFragment()))
{
- decoration = getPortletDecoration(decorationName, requestContext);
+ decoration = getLayoutDecoration(decorationName, requestContext);
}
else
{
- decoration = getLayoutDecoration(decorationName, requestContext);
+ decoration = getPortletDecoration(decorationName, requestContext);
}
return decoration;
@@ -217,16 +219,27 @@
*/
protected String getDefaultDecorationName(Fragment fragment, Page page)
{
+ // get specified decorator
String decoration = fragment.getDecorator();
if (decoration == null)
{
- if (fragment.getType().equals(Fragment.PORTLET))
+ if (fragment.getType().equals(Fragment.LAYOUT))
{
- decoration = page.getEffectiveDefaultDecorator(Fragment.PORTLET);
+ if (fragment.equals(page.getRootFragment()))
+ {
+ // use page specified layout decorator name
+ decoration = page.getEffectiveDefaultDecorator(Fragment.LAYOUT);
+ }
+ else
+ {
+ // use default nested layout portlet decorator name
+ decoration = DEFAULT_NESTED_LAYOUT_PORTLET_DECORATOR;
+ }
}
else
{
- decoration = page.getEffectiveDefaultDecorator(Fragment.LAYOUT);
+ // use page specified default portlet decorator name
+ decoration = page.getEffectiveDefaultDecorator(Fragment.PORTLET);
}
}
Modified: portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/java/org/apache/jetspeed/decoration/PageTheme.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/java/org/apache/jetspeed/decoration/PageTheme.java?rev=368613&r1=368612&r2=368613&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/java/org/apache/jetspeed/decoration/PageTheme.java (original)
+++ portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/java/org/apache/jetspeed/decoration/PageTheme.java Thu Jan 12 22:27:39 2006
@@ -18,6 +18,7 @@
import java.util.HashMap;
import java.util.Iterator;
import java.util.LinkedHashSet;
+import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -48,22 +49,38 @@
this.requestContext = requestContext;
this.styleSheets = new LinkedHashSet();
this.fragmentDecorations = new HashMap();
-
- Fragment rootFragment = page.getRootFragment();
- layoutDecoration = (LayoutDecoration) decorationFactory.getDecoration(page, rootFragment, requestContext);
- styleSheets.add(layoutDecoration.getStyleSheet());
- fragmentDecorations.put(rootFragment.getId(), layoutDecoration);
-
- Iterator fragments = rootFragment.getFragments().iterator();
-
- while(fragments.hasNext())
+ this.layoutDecoration = (LayoutDecoration)setupFragmentDecorations(page.getRootFragment());
+ }
+
+ /**
+ * setupFragmentDecorations
+ *
+ * Setup styleSheets and fragmentDecorations from all fragments
+ * in page, including nested fragments.
+ *
+ * @param fragment page fragment
+ * @return fragment decoration
+ */
+ private Decoration setupFragmentDecorations(Fragment fragment)
+ {
+ // setup fragment decorations
+ Decoration decoration = decorationFactory.getDecoration(page, fragment, requestContext);
+ styleSheets.add(decoration.getStyleSheet());
+ fragmentDecorations.put(fragment.getId(), decoration);
+
+ // setup nested fragment decorations
+ List fragments = fragment.getFragments();
+ if ((fragments != null) && !fragments.isEmpty())
{
- Fragment fragment = (Fragment) fragments.next();
- Decoration decoration = decorationFactory.getDecoration(page, fragment, requestContext);
- styleSheets.add(decoration.getStyleSheet());
- fragmentDecorations.put(fragment.getId(), decoration);
+ Iterator fragmentsIter = fragments.iterator();
+ while (fragmentsIter.hasNext())
+ {
+ setupFragmentDecorations((Fragment)fragmentsIter.next());
+ }
}
-
+
+ // return decoration; used to save page layout decoration
+ return decoration;
}
public Set getStyleSheets()
Modified: portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/test/org/apache/jetspeed/decoration/TestDecorations.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/test/org/apache/jetspeed/decoration/TestDecorations.java?rev=368613&r1=368612&r2=368613&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/test/org/apache/jetspeed/decoration/TestDecorations.java (original)
+++ portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/test/org/apache/jetspeed/decoration/TestDecorations.java Thu Jan 12 22:27:39 2006
@@ -86,6 +86,8 @@
expectAndReturn(atLeastOnce(), fragmentMock, "getId", "001");
expectAndReturn(atLeastOnce(), childFragmentMock, "getId", "002");
+
+ expectAndReturn(childFragmentMock, "getFragments", null);
}
protected void setUp1() throws Exception
@@ -240,6 +242,9 @@
//expectAndReturn(sessionMock, "getAttribute", PortalReservedParameters.RESOVLER_CACHE_ATTR);
expectAndReturn(childFragmentMock, "getDecorator", "myPortletDecoration");
+
+ expectAndReturn(pageMock, "getRootFragment", fragment);
+
Theme theme = testFactory.getTheme(page, requestContext);
Decoration result1 = theme.getDecoration(fragment);
Modified: portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/test/org/apache/jetspeed/pipeline/TestPipeline.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/test/org/apache/jetspeed/pipeline/TestPipeline.java?rev=368613&r1=368612&r2=368613&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/test/org/apache/jetspeed/pipeline/TestPipeline.java (original)
+++ portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/components/portal/src/test/org/apache/jetspeed/pipeline/TestPipeline.java Thu Jan 12 22:27:39 2006
@@ -53,9 +53,9 @@
assertEquals("PasswordCredentialValve", valves[4].toString());
assertEquals("LoginValidationValve", valves[5].toString());
assertEquals("ProfilerValve", valves[6].toString());
- assertEquals("DecorationValve", valves[7].toString());
- assertEquals("ContainerValve", valves[8].toString());
- assertEquals("ActionValveImpl", valves[9].toString());
+ assertEquals("ContainerValve", valves[7].toString());
+ assertEquals("ActionValveImpl", valves[8].toString());
+ assertEquals("DecorationValve", valves[9].toString());
assertEquals("AggregatorValve", valves[10].toString());
assertEquals("CleanupValveImpl", valves[11].toString());
Modified: portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/jetspeed-api/src/java/org/apache/jetspeed/decoration/DecorationFactory.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/jetspeed-api/src/java/org/apache/jetspeed/decoration/DecorationFactory.java?rev=368613&r1=368612&r2=368613&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/jetspeed-api/src/java/org/apache/jetspeed/decoration/DecorationFactory.java (original)
+++ portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/jetspeed-api/src/java/org/apache/jetspeed/decoration/DecorationFactory.java Thu Jan 12 22:27:39 2006
@@ -36,6 +36,9 @@
*/
public interface DecorationFactory
{
+ /** Default nested layout portlet decorator */
+ String DEFAULT_NESTED_LAYOUT_PORTLET_DECORATOR = "clear";
+
/**
* Returns a theme containing all of the Decorations for all of
* the layouts on the current page.
Modified: portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/layout-portlets/src/java/org/apache/jetspeed/portlets/layout/ColumnLayout.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/layout-portlets/src/java/org/apache/jetspeed/portlets/layout/ColumnLayout.java?rev=368613&r1=368612&r2=368613&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/layout-portlets/src/java/org/apache/jetspeed/portlets/layout/ColumnLayout.java (original)
+++ portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/layout-portlets/src/java/org/apache/jetspeed/portlets/layout/ColumnLayout.java Thu Jan 12 22:27:39 2006
@@ -16,6 +16,7 @@
package org.apache.jetspeed.portlets.layout;
import java.io.Serializable;
+import java.text.DecimalFormat;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
@@ -65,6 +66,12 @@
*/
public class ColumnLayout implements Serializable
{
+ /** Percentage widths gutter width */
+ private final static double PERCENTAGE_WIDTH_GUTTER = 0.01;
+
+ /** Percentage widths format */
+ private final static DecimalFormat PERCENTAGE_WIDTH_FORMAT = new DecimalFormat("0.00'%'");
+
/** Constrains the columns for this layout */
private final int numberOfColumns;
@@ -72,7 +79,7 @@
private final SortedMap columns;
/** Width settings for eacah column */
- private final String[] columnWidthes;
+ private final String[] columnWidths;
/**
* The type of layout this is, required for extract row/column properties
@@ -99,13 +106,16 @@
* property settings based on the type of layout in use. This
* effectively allows for the interchange of multiple layout
* formats without one format effecting the settings of another.
+ * @param columnWidths
+ * widths for each column that accumulate to 100% if percentages
+ * are used.
* @see org.apache.jetspeed.om.page.Fragment#getType()
*/
- public ColumnLayout(int numberOfColumns, String layoutType, String[] columnWidthes)
+ public ColumnLayout(int numberOfColumns, String layoutType, String[] columnWidths)
{
this.numberOfColumns = numberOfColumns;
this.layoutType = layoutType;
- this.columnWidthes = columnWidthes;
+ this.columnWidths = columnWidths;
eventListeners = new ArrayList();
columns = new TreeMap();
@@ -140,11 +150,14 @@
* effectively allows for the interchange of multiple layout
* formats without one format effecting the settings of another.
* @param fragments Initial set of fragments to add to this layout.
+ * @param columnWidths
+ * widths for each column that accumulate to 100% if percentages
+ * are used.
* @throws LayoutEventException
*/
- public ColumnLayout(int numberOfColumns, String layoutType, Collection fragments, String[] columnWidthes) throws LayoutEventException
+ public ColumnLayout(int numberOfColumns, String layoutType, Collection fragments, String[] columnWidths) throws LayoutEventException
{
- this(numberOfColumns, layoutType, columnWidthes);
+ this(numberOfColumns, layoutType, columnWidths);
Iterator fragmentsItr = fragments.iterator();
try
{
@@ -242,52 +255,61 @@
* @return the width to be used with the specified column. Or 0 if no value
* has been specified.
*/
- public int getColumnWidth(int columnNumber)
+ public String getColumnWidth(int columnNumber)
{
- if (columnNumber < numberOfColumns)
+ if ((columnWidths != null) && (columnNumber < numberOfColumns))
{
- String stringValue = columnWidthes[columnNumber];
- if (stringValue.endsWith("%"))
- {
- return Integer.parseInt(stringValue.substring(0, (stringValue.length() - 1)));
- }
- else
+ String columnWidth = columnWidths[columnNumber];
+
+ // subtract "gutter" width from last percentage
+ // column to prevent wrapping on rounding errors
+ // of column widths when rendered in the browser
+ if ((numberOfColumns > 1) && (columnNumber == (numberOfColumns - 1)))
{
- return Integer.parseInt(stringValue);
+ int percentIndex = columnWidth.lastIndexOf('%');
+ if (percentIndex > 0)
+ {
+ try
+ {
+ double width = Double.parseDouble(columnWidth.substring(0,percentIndex).trim());
+ synchronized (PERCENTAGE_WIDTH_FORMAT)
+ {
+ columnWidth = PERCENTAGE_WIDTH_FORMAT.format(width - PERCENTAGE_WIDTH_GUTTER);
+ }
+ }
+ catch (NumberFormatException nfe)
+ {
+ }
+ }
}
+ return columnWidth;
}
- else
- {
- return 0;
- }
+ return "0";
}
/**
- * IE has a non-conformant box modle that takes into account both padding
- * and margin settings. You can use this method to return the column width
- * reduced by the <code>reductionAmount</code> to prevent unwanted
- * scrolling/wrapping.
- *
+ * returns the float to be used with the specified column.
*
- * @param columnNumber whose width has been requested. Will be reduced by
- * the <code>reductionAmount</code> argument.
- * @param reductionAmount amount to subtract from the column's width setting
- * @return column width reduced by the <code>reductionAmount</code>.
+ * @param columnNumber whose width has been requested.
+ * @return "right" for the last column, "left" if more than one
+ * column, or "none" otherwise.
*/
- public int getSafeColumnWidth(int columnNumber, int reductionAmount)
+ public String getColumnFloat(int columnNumber)
{
- int columnWidth = getColumnWidth(columnNumber);
- if(columnWidth > 0)
+ if ((numberOfColumns > 1) && (columnNumber < numberOfColumns))
{
- return (columnWidth - reductionAmount);
- }
- else
- {
- return 0;
+ if (columnNumber == (numberOfColumns - 1))
+ {
+ return "right";
+ }
+ else
+ {
+ return "left";
+ }
}
-
+ return "none";
}
-
+
/**
* @return <code>java.util.Collection</code> all of columns (also
* Collection objects) in order within this layout. All Collections
Modified: portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/layout-portlets/src/java/org/apache/jetspeed/portlets/layout/MultiColumnPortlet.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/layout-portlets/src/java/org/apache/jetspeed/portlets/layout/MultiColumnPortlet.java?rev=368613&r1=368612&r2=368613&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/layout-portlets/src/java/org/apache/jetspeed/portlets/layout/MultiColumnPortlet.java (original)
+++ portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/layout-portlets/src/java/org/apache/jetspeed/portlets/layout/MultiColumnPortlet.java Thu Jan 12 22:27:39 2006
@@ -16,6 +16,7 @@
package org.apache.jetspeed.portlets.layout;
import java.io.IOException;
+import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -52,128 +53,103 @@
protected final static String PARAM_NUM_COLUMN = "columns";
protected final static int DEFAULT_NUM_COLUMN = 2;
protected final static String PARAM_COLUMN_SIZES = "sizes";
- protected final static String DEFAULT_COLUMN_SIZES = "50%,50%";
+ protected final static String DEFAULT_ONE_COLUMN_SIZES = "100%";
+ protected final static String DEFAULT_TWO_COLUMN_SIZES = "50%,50%";
+ protected final static String DEFAULT_THREE_COLUMN_SIZES = "34%,33%,33%";
private int numColumns = 0;
- private String colSizes = null;
+ private String columnSizes = null;
private String portletName = null;
private String layoutType;
- private List columnSizes = null;
protected DecorationFactory decorators;
- private Map layouts ;
public void init( PortletConfig config ) throws PortletException
{
super.init(config);
- layouts = new HashMap();
+ this.portletName = config.getPortletName();
+ this.layoutType = config.getInitParameter("layoutType");
+ if (this.layoutType == null)
+ {
+ throw new PortletException("Layout type not specified for " + this.portletName);
+ }
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)
+ if (this.numColumns < 1)
{
- columnSizes = getCellSizes(colSizes);
+ this.numColumns = 1;
}
- this.portletName = config.getPortletName();
- this.layoutType = config.getInitParameter("layoutType");
-
- decorators = (DecorationFactory)getPortletContext().getAttribute(CommonPortletServices.CPS_DECORATION_FACTORY);
- if (null == decorators)
+ this.columnSizes = config.getInitParameter(PARAM_COLUMN_SIZES);
+ if ((this.columnSizes == null) || (this.columnSizes.trim().length() == 0))
+ {
+ switch (this.numColumns)
+ {
+ case 1: this.columnSizes = DEFAULT_ONE_COLUMN_SIZES; break;
+ case 2: this.columnSizes = DEFAULT_TWO_COLUMN_SIZES; break;
+ case 3: this.columnSizes = DEFAULT_THREE_COLUMN_SIZES; break;
+ default: this.columnSizes = null; break;
+ }
+ }
+ if (this.columnSizes == null)
+ {
+ throw new PortletException("Column sizes cannot be defaulted for " + this.numColumns + " columns and are not specified for " + this.portletName);
+ }
+
+ this.decorators = (DecorationFactory)getPortletContext().getAttribute(CommonPortletServices.CPS_DECORATION_FACTORY);
+ if (null == this.decorators)
{
throw new PortletException("Failed to find the Decoration Factory on portlet initialization");
}
-
}
public void doView( RenderRequest request, RenderResponse response ) throws PortletException, IOException
{
+ // get context and test for maximized window rendering
RequestContext context = getRequestContext(request);
PortletWindow window = context.getPortalURL().getNavigationalState().getMaximizedWindow();
- Page page = getRequestContext(request).getPage();
+ if (window != null)
+ {
+ super.doView(request, response);
+ return;
+ }
+
+ // get fragment column sizes
Fragment f = getFragment(request, false);
+ String fragmentColumnSizes = columnSizes;
+ String fragmentColumnSizesProperty = f.getProperty(Fragment.SIZES_PROPERTY_NAME);
+ if (fragmentColumnSizesProperty != null)
+ {
+ fragmentColumnSizes = fragmentColumnSizesProperty;
+ }
+ String [] fragmentColumnSizesArray = fragmentColumnSizes.split("\\,");
+ List fragmentColumnSizesList = new ArrayList(fragmentColumnSizesArray.length);
+ for (int i = 0; (i < fragmentColumnSizesArray.length); i++)
+ {
+ fragmentColumnSizesList.add(fragmentColumnSizesArray[i]);
+ }
+
+ // construct layout object
ColumnLayout layout;
try
{
- layout = new ColumnLayout(numColumns, layoutType, f.getFragments(), this.colSizes.split("\\,") );
- layout.addLayoutEventListener(new PageManagerLayoutEventListener(pageManager, page, layoutType));
+ layout = new ColumnLayout(numColumns, layoutType, f.getFragments(), fragmentColumnSizesArray);
+ layout.addLayoutEventListener(new PageManagerLayoutEventListener(pageManager, context.getPage(), layoutType));
}
catch (LayoutEventException e1)
{
throw new PortletException("Failed to build ColumnLayout "+e1.getMessage(), e1);
}
-
-
- // if (targetState != null && targetState.isMaximized())
- if (window != null)
- {
- super.doView(request, response);
- return;
- }
-
+ // invoke the JSP associated with this portlet
request.setAttribute("columnLayout", layout);
request.setAttribute("numberOfColumns", new Integer(numColumns));
request.setAttribute("decorationFactory", this.decorators);
- List columnSizes = this.columnSizes;
-
- // Determine custom column sizes in the psml
- String customSizes = f.getProperty(Fragment.SIZES_PROPERTY_NAME);
- if ( customSizes != null && customSizes.trim().length() > 0 )
- {
- columnSizes = getCellSizes(customSizes);
- }
-
- request.setAttribute("columnSizes", columnSizes);
-
- // now invoke the JSP associated with this portlet
+ request.setAttribute("columnSizes", fragmentColumnSizesList);
super.doView(request, response);
-
request.removeAttribute("decorationFactory");
request.removeAttribute("columnLayout");
request.removeAttribute("numberOfColumns");
request.removeAttribute("columnSizes");
}
- /**
- * Parses the size config info and returns a list of size values for the
- * current set
- *
- * @param sizeList
- * java.lang.String a comma separated string a values
- * @return a List of values
- */
- protected static List getCellSizes( String sizeList )
- {
- List list = new Vector();
-
- if (sizeList != null)
- {
- StringTokenizer st = new StringTokenizer(sizeList, ",");
- while (st.hasMoreTokens())
- {
- list.add(st.nextToken());
- }
- }
-
- return list;
- }
-
- protected static List getCellClasses( String classlist )
- {
- List list = new Vector();
-
- if (classlist != null)
- {
- StringTokenizer st = new StringTokenizer(classlist, ",");
- while (st.hasMoreTokens())
- {
- list.add(st.nextToken());
- }
- }
-
- return list;
- }
-
public void processAction(ActionRequest request, ActionResponse response) throws PortletException, IOException
{
String decoratorChange = request.getParameter("decorator");
@@ -242,7 +218,7 @@
ColumnLayout layout;
try
{
- layout = new ColumnLayout(numColumns, layoutType, rootFragment.getFragments(), this.colSizes.split("\\,") );
+ layout = new ColumnLayout(numColumns, layoutType, rootFragment.getFragments(), null);
layout.addLayoutEventListener(new PageManagerLayoutEventListener(pageManager, page, layoutType));
}
catch (LayoutEventException e1)
Modified: portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/layout-portlets/src/test/org/apache/jetspeed/portlets/layout/TestColumnLayout.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/layout-portlets/src/test/org/apache/jetspeed/portlets/layout/TestColumnLayout.java?rev=368613&r1=368612&r2=368613&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/layout-portlets/src/test/org/apache/jetspeed/portlets/layout/TestColumnLayout.java (original)
+++ portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/layout-portlets/src/test/org/apache/jetspeed/portlets/layout/TestColumnLayout.java Thu Jan 12 22:27:39 2006
@@ -24,7 +24,7 @@
public class TestColumnLayout extends MockObjectTestCase
{
- private static final String[] widthes=new String[]{"25%", "50%", "25%"};
+ private static final String[] widths=new String[]{"25%", "50%", "25%"};
private ColumnLayout layout;
@@ -87,17 +87,16 @@
assertEquals(2, layout.getLastRowNumber(0));
assertEquals(2, layout.getLastRowNumber(1));
- // test widthes
- assertEquals(25, layout.getColumnWidth(0));
- assertEquals(50, layout.getColumnWidth(1));
- assertEquals(25, layout.getColumnWidth(2));
-
- assertEquals(23, layout.getSafeColumnWidth(0, 2));
- assertEquals(48, layout.getSafeColumnWidth(1, 2));
- assertEquals(23, layout.getSafeColumnWidth(2, 2));
-
- assertEquals(0, layout.getColumnWidth(3));
- assertEquals(0, layout.getSafeColumnWidth(3, 2));
+ // test widths
+ assertEquals("25%", layout.getColumnWidth(0));
+ assertEquals("50%", layout.getColumnWidth(1));
+ assertEquals("24.99%", layout.getColumnWidth(2));
+ assertEquals("0", layout.getColumnWidth(3));
+
+ assertEquals("left", layout.getColumnFloat(0));
+ assertEquals("left", layout.getColumnFloat(1));
+ assertEquals("right", layout.getColumnFloat(2));
+ assertEquals("none", layout.getColumnFloat(3));
}
public void testSameRowSameColumn() throws Exception
@@ -114,7 +113,7 @@
f2.setLayoutRow(0);
f2.setLayoutColumn(0);
- ColumnLayout layout = new ColumnLayout(3, "test", widthes);
+ ColumnLayout layout = new ColumnLayout(3, "test", null);
layout.addFragment(f1);
layout.addFragment(f2);
@@ -147,7 +146,7 @@
f2.setName("test");
f2.setLayoutRow(0);
- ColumnLayout layout = new ColumnLayout(3, "test", widthes);
+ ColumnLayout layout = new ColumnLayout(3, "test", null);
layout.addFragment(f1);
layout.addFragment(f2);
@@ -176,7 +175,7 @@
f2.setName("test");
f2.setLayoutColumn(0);
- ColumnLayout layout = new ColumnLayout(3, "test", widthes);
+ ColumnLayout layout = new ColumnLayout(3, "test", null);
layout.addFragment(f1);
layout.addFragment(f2);
@@ -196,7 +195,7 @@
f1.setLayoutRow(0);
f1.setLayoutColumn(5);
- ColumnLayout layout = new ColumnLayout(3, "test", widthes);
+ ColumnLayout layout = new ColumnLayout(3, "test", null);
layout.addFragment(f1);
// Exceeded columns just get dumped into the last column
@@ -462,7 +461,7 @@
f8.setLayoutRow(1);
f8.setLayoutColumn(2);
- layout = new ColumnLayout(3, "test", widthes );
+ layout = new ColumnLayout(3, "test", widths);
layout.addFragment(f1);
layout.addFragment(f2);
layout.addFragment(f3);
Modified: portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/layout-portlets/src/webapp/WEB-INF/portlet.xml
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/layout-portlets/src/webapp/WEB-INF/portlet.xml?rev=368613&r1=368612&r2=368613&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/layout-portlets/src/webapp/WEB-INF/portlet.xml (original)
+++ portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/layout-portlets/src/webapp/WEB-INF/portlet.xml Thu Jan 12 22:27:39 2006
@@ -53,6 +53,43 @@
</portlet-info>
</portlet>
+<portlet id="VelocityOneColumnTable">
+ <portlet-name>VelocityOneColumnTable</portlet-name>
+ <display-name>One Column Layout Using Velocity And Tables</display-name>
+ <init-param>
+ <name>ViewPage</name>
+ <value>tcolumns</value>
+ </init-param>
+ <init-param>
+ <name>MaxPage</name>
+ <value>maximized</value>
+ </init-param>
+ <init-param>
+ <name>columns</name>
+ <value>1</value>
+ </init-param>
+ <init-param>
+ <name>sizes</name>
+ <value>100%</value>
+ </init-param>
+ <init-param>
+ <name>layoutType</name>
+ <value>OneColumn</value>
+ </init-param>
+ <portlet-class>org.apache.jetspeed.portlets.layout.MultiColumnPortlet</portlet-class>
+ <expiration-cache>-1</expiration-cache>
+ <supports>
+ <mime-type>text/html</mime-type>
+ <portlet-mode>view</portlet-mode>
+ <portlet-mode>edit</portlet-mode>
+ <portlet-mode>help</portlet-mode>
+ </supports>
+ <portlet-info>
+ <title>VelocityOneColumnTable</title>
+ <short-title>OneColumnTable</short-title>
+ </portlet-info>
+</portlet>
+
<portlet id="VelocityTwoColumns">
<portlet-name>VelocityTwoColumns</portlet-name>
<display-name>Two Columns Layout Using Velocity</display-name>
@@ -167,7 +204,7 @@
<portlet id="VelocityThreeColumnsTable">
<portlet-name>VelocityThreeColumnsTable</portlet-name>
- <display-name>Three Columns Layout Using Velocity Tables</display-name>
+ <display-name>Three Columns Layout Using Velocity And Tables</display-name>
<init-param>
<name>ViewPage</name>
<value>tcolumns</value>
@@ -450,7 +487,7 @@
<portlet id="VelocityTwoColumnsTable">
<portlet-name>VelocityTwoColumnsTable</portlet-name>
- <display-name>Two Columns Layout Using Velocity Table</display-name>
+ <display-name>Two Columns Layout Using Velocity And Tables</display-name>
<init-param>
<name>ViewPage</name>
<value>tcolumns</value>
Modified: portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/WEB-INF/pages/Administrative/user-mgt.psml
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/WEB-INF/pages/Administrative/user-mgt.psml?rev=368613&r1=368612&r2=368613&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/WEB-INF/pages/Administrative/user-mgt.psml (original)
+++ portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/WEB-INF/pages/Administrative/user-mgt.psml Thu Jan 12 22:27:39 2006
@@ -23,7 +23,8 @@
<metadata name="title" xml:lang="hu">Felhasználók beállÃtása</metadata>
<metadata name="title" xml:lang="zh">ç¨æ·ç®¡ç</metadata>
- <fragment id="um-2" type="layout" name="jetspeed-layouts::VelocityTwoColumns2575">
+ <fragment id="um-2" type="layout" name="jetspeed-layouts::VelocityTwoColumns">
+ <property layout="TwoColumns" name="sizes" value="33%,64%" />
<fragment id="um-3" type="portlet" name="j2-admin::UserBrowserPortlet">
<property layout="TwoColumns" name="row" value="0" />
<property layout="TwoColumns" name="column" value="0" />
Modified: portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/WEB-INF/pages/_user/user/nested-layout.psml
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/WEB-INF/pages/_user/user/nested-layout.psml?rev=368613&r1=368612&r2=368613&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/WEB-INF/pages/_user/user/nested-layout.psml (original)
+++ portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/WEB-INF/pages/_user/user/nested-layout.psml Thu Jan 12 22:27:39 2006
@@ -19,6 +19,7 @@
</fragment>
<fragment id="100345" type="layout" name="jetspeed-layouts::VelocityTwoColumns">
<property layout="OneColumn" name="row" value="1"/>
+ <property layout="TwoColumns" name="sizes" value="40%,60%"/>
<fragment id="100121" type="portlet" name="j2-admin::LoginPortlet">
<property layout="TwoColumns" name="row" value="0"/>
<property layout="TwoColumns" name="column" value="0"/>
Modified: portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/WEB-INF/templates/layout/html/columns/layout.vm
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/WEB-INF/templates/layout/html/columns/layout.vm?rev=368613&r1=368612&r2=368613&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/WEB-INF/templates/layout/html/columns/layout.vm (original)
+++ portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/WEB-INF/templates/layout/html/columns/layout.vm Thu Jan 12 22:27:39 2006
@@ -66,21 +66,17 @@
<input type="submit" name="jsSubmitPage" value="Add Page" />
</form>
#end
-
- <div id="$renderResponse.namespace" class="portal-layout portal-layout-$layoutType">
- #set ($sizeIndex = 0)
+ #set($layoutClass = "portal-layout")
+ #if($myFragment != $myPage.getRootFragment())
+ #set($layoutClass = "portal-nested-layout")
+ #end
+ <div id="$renderResponse.namespace" class="${layoutClass} ${layoutClass}-${layoutType}">
+ #set ($columnIndex = 0)
#foreach($column in $columnLayout.columns)
- #set($columnWidth = "auto")
- #*
- #if ($columnLayout.getColumnWidth($sizeIndex) > 0)
- #set($columnWidth = $columnLayout.getColumnWidth($sizeIndex))
- #end
- *#
-
- #set ($sizeIndex = $sizeIndex + 1)
- <div id="column-$sizeIndex" class="portal-layout-column" >
- <!-- <div class="portal-layout-column-gutter"> -->
+ #set($columnFloat = $columnLayout.getColumnFloat($columnIndex))
+ #set($columnWidth = $columnLayout.getColumnWidth($columnIndex))
+ <div id="column_${myFragment.getId()}_${columnIndex}" class="portal-layout-column portal-layout-column-${layoutType}-${columnIndex}" style="float:${columnFloat}; width:${columnWidth};">
#foreach($f in $column)
## Set up coordinates for this fragment
@@ -90,7 +86,7 @@
#set($row = $coords.y)
## get the decorated Portlet content
- <div class="portal-layout-cell" >
+ <div class="portal-layout-cell portal-layout-cell-${layoutType}-${row}-${col}"" >
## editing block
#if($editing)
<div class="portlet-edit-bar">
@@ -160,10 +156,10 @@
#end
</div>
#end
- <!-- </div> -->
</div>
- #end
- </div>
+ #set ($columnIndex = $columnIndex + 1)
+ #end
+ </div>
#if ($myFragment == $myPage.getRootFragment())
#parse($myFragment.decoration.footer)
Modified: portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/WEB-INF/templates/layout/html/tcolumns/layout.vm
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/WEB-INF/templates/layout/html/tcolumns/layout.vm?rev=368613&r1=368612&r2=368613&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/WEB-INF/templates/layout/html/tcolumns/layout.vm (original)
+++ portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/WEB-INF/templates/layout/html/tcolumns/layout.vm Thu Jan 12 22:27:39 2006
@@ -51,39 +51,6 @@
#set($decorationFactory = $renderRequest.getAttribute("decorationFactory"))
#set($rc = $renderRequest.getAttribute("org.apache.jetspeed.request.RequestContext"))
-#if ($actions.size()>0)
-<table width="100%" cellspacing="0" cellpadding="0" >
- <tr>
- <td class="PContent" style="font-size:1pt;" nowrap="true"> </td>
-
- <td align="left" valign="middle" class="PContent" >
- </td>
- <td align="right" valign="middle" class="PContent" >
- <table border="0" cellpadding="0" cellspacing="0" >
- <tr>
- #foreach ($action in $actions)
- #if ($action.Alt == "edit" || $action.Alt == "view")
- <td align="right" valign="middle" class="PContent" >
- #set ($myImage = "images/${action.Alt}.gif")
- <a href="${action.Action}" title="${action.Name}" ><img src="#GetPageResource($myImage)" alt="${action.Alt}" border="0"></a>
- </td>
- #end
- #end
- #if($editing == true)
- #set ($chooser = "${jetspeed.basePath}/system/customizer/portlet-selector.psml")
- <td align="right" valign="middle" class="PContent" >
- <a href="javascript:openWindow('$response.encodeURL($chooser)')"><img src="#GetPageResource('images/select.gif')" border="0" title="Select"/></a>
- </td>
- #end
- </tr>
- </table>
- </td>
-
- <td class="PContent" style="font-size:1pt;" nowrap="true"> </td>
- </tr>
-</table>
-#end
-
<form name='portletform' action="$renderResponse.createActionURL()" method="post">
<input type='hidden' name='portlets'/>
<input type='hidden' name='page' value='$myPage'/>
@@ -110,7 +77,11 @@
#end
-<div id="portal-layout-$htmlUtil.getSafeElementId($myPage.path)" class="portal-layout">
+#set($layoutClass = "portal-layout")
+#if($myFragment != $myPage.getRootFragment())
+ #set($layoutClass = "portal-nested-layout")
+#end
+<div id="portal-layout-$htmlUtil.getSafeElementId($myPage.path)" class="${layoutClass} ${layoutClass}-${layoutType}">
<table width="100%" cellspacing="0" cellpadding="0" >
<tr>
#set ($sizeIndex = 0)
@@ -126,7 +97,7 @@
<td valign="top">
#end
#set ($sizeIndex = $sizeIndex + 1)
- <table width="100%" class="portal-layout-column">
+ <table width="100%" class="portal-layout-column portal-layout-column-${layoutType}-${sizeIndex}">
#foreach($f in $column)
<tr>
<td width="100%">
Modified: portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/css/standard-columns.css
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/css/standard-columns.css?rev=368613&r1=368612&r2=368613&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/css/standard-columns.css (original)
+++ portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/css/standard-columns.css Thu Jan 12 22:27:39 2006
@@ -15,35 +15,70 @@
*/
/**
- * This page contains standardized settings for spacing one, two and three
- * column layouts. You can use this within your custom decorations style by
- * adding this line to the top of your css/styles.css:
+ * This page contains standardized settings for spacing column layouts.
+ * You can use this within your custom decorations style by adding this
+ * line to the top of your css/styles.css:
*
* @import url("../../css/standard-columns.css");
*/
-/** TwoColumn Sepcific widths */
-.portal-layout-TwoColumns .portal-layout-column
-{
- padding-left:1%;
- width: 48%;
- float: left;
-}
-
-/** OneColumn Sepcific widths */
-.portal-layout-OneColumn .portal-layout-column
-{
- padding-left:1%;
- padding-right:1%;
- width: 97%;
- float: left;
+DIV.PContent
+{
+ /*
+ overflow honored on portlet content
+ on all browsers except IE; IE requires
+ width to be specified, see
+ portal-layout-column below
+ */
+ overflow:hidden;
}
+DIV.portlet
+{
+ /*
+ all layout padding done here to prevent
+ box model problems with specified widths
+ on portal-layout-column and to yield
+ even spacing between portlets with nested
+ layouts
+ */
+ margin-top:5px;
+ margin-bottom:5px;
+ margin-left:5px;
+ margin-right:5px;
+}
+
+DIV.portal-layout
+{
+}
+
+DIV.portal-nested-layout
+{
+}
+
+DIV.portal-layout-cell
+{
+}
+
+DIV.portal-layout-column
+{
+ /*
+ float and width stypes computed dynamically
+ in layout templates for these elements
+ */
+ display:inline;
+}
-/** ThreeColumn Sepcific widths */
-.portal-layout-ThreeColumns .portal-layout-column
-{
- padding-left:1%;
- width: 31%;
- float: left;
-}
\ No newline at end of file
+* html DIV.portal-layout-column
+{
+ /*
+ overflow required by IE to be defined
+ on elements with width specified; using
+ "starhtml" hack here to restrict to IE
+ */
+ overflow:hidden;
+}
+
+DIV.portal-layout-maxed
+{
+}
Modified: portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/jetspeed/css/styles.css
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/jetspeed/css/styles.css?rev=368613&r1=368612&r2=368613&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/jetspeed/css/styles.css (original)
+++ portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/jetspeed/css/styles.css Thu Jan 12 22:27:39 2006
@@ -259,18 +259,4 @@
text-align: right;
}
-.portal-layout-column
-{
- display:inline;
- float: left;
-}
-.portal-layout-cell
-{
- padding: 2px;
-}
-
-.portal-layout-maxed
-{
- padding: 15px;
-}
Modified: portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/jscookmenu/css/styles.css
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/jscookmenu/css/styles.css?rev=368613&r1=368612&r2=368613&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/jscookmenu/css/styles.css (original)
+++ portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/jscookmenu/css/styles.css Thu Jan 12 22:27:39 2006
@@ -103,13 +103,3 @@
position: relative;
top: -12px;
}
-
-.portal-layout-column
-{
- display:inline;
- float: left;
-}
-.portal-layout-cell
-{
- padding: 2px;
-}
\ No newline at end of file
Modified: portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/simple/css/styles.css
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/simple/css/styles.css?rev=368613&r1=368612&r2=368613&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/simple/css/styles.css (original)
+++ portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/simple/css/styles.css Thu Jan 12 22:27:39 2006
@@ -33,9 +33,3 @@
a:hover {
color: #f30 !important;
}
-
-.layout-simple .portal-layout
-{
- padding-top: 25px;
-}
-
\ No newline at end of file
Modified: portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/tigris/css/styles.css
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/tigris/css/styles.css?rev=368613&r1=368612&r2=368613&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/tigris/css/styles.css (original)
+++ portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/layout/tigris/css/styles.css Thu Jan 12 22:27:39 2006
@@ -296,21 +296,3 @@
display: inline;
}
-
-.layout-tigris .portal-layout
-{
- padding-top:6px;
-}
-
-
-.portal-layout-cell
-{
- padding-bottom: 4px;
-}
-
-.portal-layout-maxed
-{
- padding-top: 4px;
- padding-right: 2px;
-}
-
\ No newline at end of file
Modified: portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/portlet/jetspeed/css/styles.css
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/portlet/jetspeed/css/styles.css?rev=368613&r1=368612&r2=368613&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/portlet/jetspeed/css/styles.css (original)
+++ portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/portlet/jetspeed/css/styles.css Thu Jan 12 22:27:39 2006
@@ -65,7 +65,6 @@
.portlet-Jetspeed .PContent
{
- overflow : scroll;
}
Modified: portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/portlet/tigris/css/styles.css
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/portlet/tigris/css/styles.css?rev=368613&r1=368612&r2=368613&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/portlet/tigris/css/styles.css (original)
+++ portals/jetspeed-2/branches/JETSPEED-BRANCH-2.0.1/src/webapp/decorations/portlet/tigris/css/styles.css Thu Jan 12 22:27:39 2006
@@ -67,7 +67,6 @@
background-color: #EFEFEF;
border-right: 1px solid #AAAAAA;
border-bottom: 1px solid #AAAAAA;
- overflow: hidden;
font-size: small;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org