JBoss Portal SVN: r7076 - trunk/core/src/resources/portal-core-war/WEB-INF/jsp/header.
by portal-commits@lists.jboss.org
Author: thomas.heute(a)jboss.com
Date: 2007-04-26 09:25:08 -0400 (Thu, 26 Apr 2007)
New Revision: 7076
Modified:
trunk/core/src/resources/portal-core-war/WEB-INF/jsp/header/tabs.jsp
Log:
Show the top pages in the tabs.
Modified: trunk/core/src/resources/portal-core-war/WEB-INF/jsp/header/tabs.jsp
===================================================================
--- trunk/core/src/resources/portal-core-war/WEB-INF/jsp/header/tabs.jsp 2007-04-26 13:15:14 UTC (rev 7075)
+++ trunk/core/src/resources/portal-core-war/WEB-INF/jsp/header/tabs.jsp 2007-04-26 13:25:08 UTC (rev 7076)
@@ -6,6 +6,15 @@
<%
PortalNode root = (PortalNode)request.getAttribute("org.jboss.portal.api.PORTAL_NODE");
+ PortalNode portal = root;
+ PortalNode mainPage = portal;
+
+ while (portal.getType() != PortalNode.TYPE_PORTAL)
+ {
+ mainPage = portal;
+ portal = portal.getParent();
+ }
+
PortalRuntimeContext context = (PortalRuntimeContext)request.getAttribute("org.jboss.portal.api.PORTAL_RUNTIME_CONTEXT");
// Get a locale
@@ -19,23 +28,23 @@
<ul id="tabsHeader">
<%
ArrayList tmp = new ArrayList(10);
- Iterator siblingsIt = root.getParent().getChildren().iterator();
- while (siblingsIt.hasNext())
+ Iterator childrenIt = portal.getChildren().iterator();
+ while (childrenIt.hasNext())
{
- PortalNode sibling = (PortalNode)siblingsIt.next();
+ PortalNode child = (PortalNode)childrenIt.next();
// Get the list of child pages
tmp.clear();
- for (Iterator i = sibling.getChildren().iterator();i.hasNext();)
+ for (Iterator i = child.getChildren().iterator();i.hasNext();)
{
- PortalNode siblingChild = (PortalNode)i.next();
- if (siblingChild.getType() == PortalNode.TYPE_PAGE)
+ PortalNode childChild = (PortalNode)i.next();
+ if (childChild.getType() == PortalNode.TYPE_PAGE)
{
- tmp.add(siblingChild);
+ tmp.add(childChild);
}
}
%>
- <li <% if(sibling == root) out.println(" id=\"current\""); %> onmouseover="this.className='hoverOn'" onmouseout="this.className='hoverOff'"><a href="<%= sibling.createURL(context) %>"><%= sibling.getDisplayName(locale) %>
+ <li <% if(child == mainPage) out.println(" id=\"current\""); %> onmouseover="this.className='hoverOn'" onmouseout="this.className='hoverOff'"><a href="<%= child.createURL(context) %>"><%= child.getDisplayName(locale) %>
<%
if (tmp.size() == 0)
{
@@ -52,9 +61,9 @@
<%
for (Iterator j = tmp.iterator(); j.hasNext();)
{
- PortalNode siblingChild = (PortalNode)j.next();
+ PortalNode childChild = (PortalNode)j.next();
%>
- <li><a href='<%= siblingChild.createURL(context) %>'><%= siblingChild.getDisplayName(locale) %></a></li>
+ <li><a href='<%= childChild.createURL(context) %>'><%= childChild.getDisplayName(locale) %></a></li>
<%
}
%>
17 years, 1 month
JBoss Portal SVN: r7075 - trunk/core/src/main/org/jboss/portal/core/impl/model/portal.
by portal-commits@lists.jboss.org
Author: julien(a)jboss.com
Date: 2007-04-26 09:15:14 -0400 (Thu, 26 Apr 2007)
New Revision: 7075
Modified:
trunk/core/src/main/org/jboss/portal/core/impl/model/portal/ContextImpl.java
trunk/core/src/main/org/jboss/portal/core/impl/model/portal/PageImpl.java
trunk/core/src/main/org/jboss/portal/core/impl/model/portal/PortalImpl.java
trunk/core/src/main/org/jboss/portal/core/impl/model/portal/WindowImpl.java
Log:
clone also listener in the PortalObject clone operation
Modified: trunk/core/src/main/org/jboss/portal/core/impl/model/portal/ContextImpl.java
===================================================================
--- trunk/core/src/main/org/jboss/portal/core/impl/model/portal/ContextImpl.java 2007-04-26 12:46:38 UTC (rev 7074)
+++ trunk/core/src/main/org/jboss/portal/core/impl/model/portal/ContextImpl.java 2007-04-26 13:15:14 UTC (rev 7075)
@@ -103,6 +103,7 @@
{
ContextImpl clone = new ContextImpl();
clone.setDeclaredPropertyMap(new HashMap(getDeclaredPropertyMap()));
+ clone.setListener(getListener());
return clone;
}
}
Modified: trunk/core/src/main/org/jboss/portal/core/impl/model/portal/PageImpl.java
===================================================================
--- trunk/core/src/main/org/jboss/portal/core/impl/model/portal/PageImpl.java 2007-04-26 12:46:38 UTC (rev 7074)
+++ trunk/core/src/main/org/jboss/portal/core/impl/model/portal/PageImpl.java 2007-04-26 13:15:14 UTC (rev 7075)
@@ -101,6 +101,7 @@
{
PageImpl clone = new PageImpl();
clone.setDeclaredPropertyMap(new HashMap(getDeclaredPropertyMap()));
+ clone.setListener(getListener());
return clone;
}
}
Modified: trunk/core/src/main/org/jboss/portal/core/impl/model/portal/PortalImpl.java
===================================================================
--- trunk/core/src/main/org/jboss/portal/core/impl/model/portal/PortalImpl.java 2007-04-26 12:46:38 UTC (rev 7074)
+++ trunk/core/src/main/org/jboss/portal/core/impl/model/portal/PortalImpl.java 2007-04-26 13:15:14 UTC (rev 7075)
@@ -126,6 +126,7 @@
clone.setWindowStates(new HashSet(getWindowStates()));
clone.setModes(new HashSet(getModes()));
clone.setDeclaredPropertyMap(new HashMap(getDeclaredPropertyMap()));
+ clone.setListener(getListener());
return clone;
}
}
Modified: trunk/core/src/main/org/jboss/portal/core/impl/model/portal/WindowImpl.java
===================================================================
--- trunk/core/src/main/org/jboss/portal/core/impl/model/portal/WindowImpl.java 2007-04-26 12:46:38 UTC (rev 7074)
+++ trunk/core/src/main/org/jboss/portal/core/impl/model/portal/WindowImpl.java 2007-04-26 13:15:14 UTC (rev 7075)
@@ -149,6 +149,7 @@
WindowImpl clone = new WindowImpl();
clone.setInstanceRef(instanceRef);
clone.setDeclaredPropertyMap(new HashMap(getDeclaredPropertyMap()));
+ clone.setListener(getListener());
return clone;
}
17 years, 1 month
JBoss Portal SVN: r7074 - trunk/core/src/resources/portal-core-war/WEB-INF/layout.
by portal-commits@lists.jboss.org
Author: julien(a)jboss.com
Date: 2007-04-26 08:46:38 -0400 (Thu, 26 Apr 2007)
New Revision: 7074
Modified:
trunk/core/src/resources/portal-core-war/WEB-INF/layout/portal-renderSet.xml
Log:
provide at runtime divRenderer and emptyRenderer that are not ajax
Modified: trunk/core/src/resources/portal-core-war/WEB-INF/layout/portal-renderSet.xml
===================================================================
--- trunk/core/src/resources/portal-core-war/WEB-INF/layout/portal-renderSet.xml 2007-04-26 12:46:14 UTC (rev 7073)
+++ trunk/core/src/resources/portal-core-war/WEB-INF/layout/portal-renderSet.xml 2007-04-26 12:46:38 UTC (rev 7074)
@@ -41,4 +41,22 @@
<decoration-renderer>org.jboss.portal.theme.impl.render.empty.EmptyDecorationRenderer</decoration-renderer>
</set>
</renderSet>
+ <renderSet name="divRendererNoAjax">
+ <set content-type="text/html">
+ <ajax-enabled>false</ajax-enabled>
+ <region-renderer>org.jboss.portal.theme.impl.render.div.DivRegionRenderer</region-renderer>
+ <window-renderer>org.jboss.portal.theme.impl.render.div.DivWindowRenderer</window-renderer>
+ <portlet-renderer>org.jboss.portal.theme.impl.render.div.DivPortletRenderer</portlet-renderer>
+ <decoration-renderer>org.jboss.portal.theme.impl.render.div.DivDecorationRenderer</decoration-renderer>
+ </set>
+ </renderSet>
+ <renderSet name="emptyRendererNoAjax">
+ <set content-type="text/html">
+ <ajax-enabled>false</ajax-enabled>
+ <region-renderer>org.jboss.portal.theme.impl.render.empty.EmptyRegionRenderer</region-renderer>
+ <window-renderer>org.jboss.portal.theme.impl.render.empty.EmptyWindowRenderer</window-renderer>
+ <portlet-renderer>org.jboss.portal.theme.impl.render.empty.EmptyPortletRenderer</portlet-renderer>
+ <decoration-renderer>org.jboss.portal.theme.impl.render.empty.EmptyDecorationRenderer</decoration-renderer>
+ </set>
+ </renderSet>
</portal-renderSet>
17 years, 1 month
JBoss Portal SVN: r7073 - docs/trunk/referenceGuide/en/modules.
by portal-commits@lists.jboss.org
Author: thomas.heute(a)jboss.com
Date: 2007-04-26 08:46:14 -0400 (Thu, 26 Apr 2007)
New Revision: 7073
Modified:
docs/trunk/referenceGuide/en/modules/themeandlayouts.xml
Log:
Fixed typo
Modified: docs/trunk/referenceGuide/en/modules/themeandlayouts.xml
===================================================================
--- docs/trunk/referenceGuide/en/modules/themeandlayouts.xml 2007-04-26 12:45:55 UTC (rev 7072)
+++ docs/trunk/referenceGuide/en/modules/themeandlayouts.xml 2007-04-26 12:46:14 UTC (rev 7073)
@@ -162,7 +162,7 @@
</itemizedlist>
</para>
<para>Writing the header JSP</para>
- <para>A couple of request attributes are set so that they can be used by the JSP, here is the list of attibutes and their meaning:
+ <para>A couple of request attributes are set so that they can be used by the JSP, here is the list of attributes and their meaning:
<itemizedlist>
<listitem><literal>org.jboss.portal.header.USER</literal>: A <literal>org.jboss.portal.identity.User</literal> object of the logged-in user, null if the user is not logged-in.</listitem>
<listitem><literal>org.jboss.portal.header.LOGIN_URL</literal>: URL to logging-in.</listitem>
@@ -201,7 +201,7 @@
]]></programlisting>
</para>
<para>Writing the tabs JSP</para>
- <para>A couple of request attributes are set so that they can be used by the JSP, here is the list of attibutes and their meaning:
+ <para>A couple of request attributes are set so that they can be used by the JSP, here is the list of attributes and their meaning:
<itemizedlist>
<listitem><literal>org.jboss.portal.api.PORTAL_NODE</literal>: A <literal>org.jboss.portal.api.node.PortalNode</literal> object of the root Portal node. Authorized children and siblings
of this object are accessible.</listitem>
17 years, 1 month
JBoss Portal SVN: r7072 - trunk/core/src/bin/portal-core-war/layouts/generic.
by portal-commits@lists.jboss.org
Author: julien(a)jboss.com
Date: 2007-04-26 08:45:55 -0400 (Thu, 26 Apr 2007)
New Revision: 7072
Modified:
trunk/core/src/bin/portal-core-war/layouts/generic/index.jsp
Log:
minor
Modified: trunk/core/src/bin/portal-core-war/layouts/generic/index.jsp
===================================================================
--- trunk/core/src/bin/portal-core-war/layouts/generic/index.jsp 2007-04-26 12:44:36 UTC (rev 7071)
+++ trunk/core/src/bin/portal-core-war/layouts/generic/index.jsp 2007-04-26 12:45:55 UTC (rev 7072)
@@ -8,7 +8,7 @@
<meta http-equiv="Content-Type" content="text/html;"/>
<!-- to correct the unsightly Flash of Unstyled Content. -->
<script type="text/javascript"></script>
- <!-- inject the theme; default to the Renaissance theme if nothing is selected for the portal or the page -->
+ <!-- inject the theme, default to the Renaissance theme if nothing is selected for the portal or the page -->
<p:theme themeName="renaissance"/>
<!-- insert header content that was possibly set by portlets on the page -->
<p:headerContent/>
17 years, 1 month
JBoss Portal SVN: r7071 - docs/trunk/referenceGuide/en/modules.
by portal-commits@lists.jboss.org
Author: thomas.heute(a)jboss.com
Date: 2007-04-26 08:44:36 -0400 (Thu, 26 Apr 2007)
New Revision: 7071
Modified:
docs/trunk/referenceGuide/en/modules/themeandlayouts.xml
Log:
Removed PageCustomizerInterceptor
Modified: docs/trunk/referenceGuide/en/modules/themeandlayouts.xml
===================================================================
--- docs/trunk/referenceGuide/en/modules/themeandlayouts.xml 2007-04-26 12:43:38 UTC (rev 7070)
+++ docs/trunk/referenceGuide/en/modules/themeandlayouts.xml 2007-04-26 12:44:36 UTC (rev 7071)
@@ -124,8 +124,8 @@
the content. Links to legacy application could easily be added, URLs could be arranged differently, the CSS
approach could be replaced by good old HTML, CSS style names could be changed... The drawback of
this method compare to the next one is the limitation in what is accessible from the JSP.</listitem>
- <listitem>The third option is the most flexible and let you inject whatever you want, it consists in
- replacing the default <literal>PageCustomizerInterceptor</literal> by your own.</listitem>
+ <!-- listitem>The third option is the most flexible and let you inject whatever you want, it consists in
+ replacing the default <literal>PageCustomizerInterceptor</literal> by your own.</listitem-->
</itemizedlist>
</para>
<sect3>
@@ -210,7 +210,7 @@
</para>
<para>The default file in charge of displaying the tabs can be found in: <literal>portal-core.war/WEB-INF/jsp/header/</literal></para>
</sect3>
- <sect3>
+ <!-- sect3>
<title>Modifying the default PageCustomizerInterceptor</title>
<para>Instead of modifying the class directly, create your own Interceptor
(I suggest you copy the default PageCustomizerInterceptor look at the source in
@@ -237,7 +237,7 @@
]]></programlisting>
Just replace the PageCustomizer by one of your own.
</para>
- </sect3>
+ </sect3-->
</sect2>
</sect1>
<sect1>
17 years, 1 month
JBoss Portal SVN: r7070 - in docs/trunk/referenceGuide/en: modules and 1 other directory.
by portal-commits@lists.jboss.org
Author: thomas.heute(a)jboss.com
Date: 2007-04-26 08:43:38 -0400 (Thu, 26 Apr 2007)
New Revision: 7070
Added:
docs/trunk/referenceGuide/en/images/themeguide/portal-header.gif
Modified:
docs/trunk/referenceGuide/en/modules/themeandlayouts.xml
Log:
Oups
Added: docs/trunk/referenceGuide/en/images/themeguide/portal-header.gif
===================================================================
(Binary files differ)
Property changes on: docs/trunk/referenceGuide/en/images/themeguide/portal-header.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Modified: docs/trunk/referenceGuide/en/modules/themeandlayouts.xml
===================================================================
--- docs/trunk/referenceGuide/en/modules/themeandlayouts.xml 2007-04-26 12:38:38 UTC (rev 7069)
+++ docs/trunk/referenceGuide/en/modules/themeandlayouts.xml 2007-04-26 12:43:38 UTC (rev 7070)
@@ -146,9 +146,9 @@
xmbean-dd=""
xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
<xmbean/>
- <attribute name="JSPContext">/portal-core</attribute>
- <attribute name="HeaderJSP">/WEB-INF/jsp/header/header.jsp</attribute>
- <attribute name="TabsJSP">/WEB-INF/jsp/header/tabs.jsp</attribute>
+ <attribute name="TargetContextPath">/portal-core</attribute>
+ <attribute name="HeaderPath">/WEB-INF/jsp/header/header.jsp</attribute>
+ <attribute name="TabsPath">/WEB-INF/jsp/header/tabs.jsp</attribute>
<depends
optional-attribute-name="PortalAuthorizationManagerFactory"
proxy-type="attribute">portal:service=PortalAuthorizationManagerFactory</depends>
@@ -156,9 +156,9 @@
]]></programlisting>
The three attibutes are:
<itemizedlist>
- <listitem>JSPContext: Defines the web application context where the JSPs are located</listitem>
- <listitem>HeaderJSP: Defines the location (in the web application previously defined) of the JSP in charge of writing the header links</listitem>
- <listitem>TabsJSP: Defines the location (in the web application previously defined) of the JSP in charge of writing the pages links (note that it doesn't have to be renderer as tabs)</listitem>
+ <listitem>TargetContextPath: Defines the web application context where the JSPs are located</listitem>
+ <listitem>HeaderPath: Defines the location (in the web application previously defined) of the JSP in charge of writing the header links</listitem>
+ <listitem>TabsPath: Defines the location (in the web application previously defined) of the JSP in charge of writing the pages links (note that it doesn't have to be renderer as tabs)</listitem>
</itemizedlist>
</para>
<para>Writing the header JSP</para>
17 years, 1 month
JBoss Portal SVN: r7069 - in docs/trunk/referenceGuide/en: modules and 1 other directory.
by portal-commits@lists.jboss.org
Author: julien(a)jboss.com
Date: 2007-04-26 08:38:38 -0400 (Thu, 26 Apr 2007)
New Revision: 7069
Added:
docs/trunk/referenceGuide/en/modules/ajax.xml
Modified:
docs/trunk/referenceGuide/en/master.xml
docs/trunk/referenceGuide/en/modules/clustering.xml
Log:
started ajax chapter
Modified: docs/trunk/referenceGuide/en/master.xml
===================================================================
--- docs/trunk/referenceGuide/en/master.xml 2007-04-26 12:27:02 UTC (rev 7068)
+++ docs/trunk/referenceGuide/en/master.xml 2007-04-26 12:38:38 UTC (rev 7069)
@@ -16,6 +16,7 @@
<!ENTITY CMS SYSTEM "modules/cmsPortlet.xml">
<!ENTITY navtabs SYSTEM "modules/navtabs.xml">
<!ENTITY themeandlayouts SYSTEM "modules/themeandlayouts.xml">
+ <!ENTITY ajax SYSTEM "modules/ajax.xml">
<!ENTITY identity SYSTEM "modules/identity.xml">
<!ENTITY authentication SYSTEM "modules/authentication.xml">
<!ENTITY ldap SYSTEM "modules/ldap.xml">
@@ -77,6 +78,7 @@
<!-- CMS --> &CMS;
<!-- NavTabs --> &navtabs;
<!-- theme/layout api --> &themeandlayouts;
+ <!-- ajax --> &ajax;
<!-- troubleshooting FAQ--> &troubleshooting;
</book>
Added: docs/trunk/referenceGuide/en/modules/ajax.xml
===================================================================
--- docs/trunk/referenceGuide/en/modules/ajax.xml (rev 0)
+++ docs/trunk/referenceGuide/en/modules/ajax.xml 2007-04-26 12:38:38 UTC (rev 7069)
@@ -0,0 +1,111 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<chapter id="clustering">
+ <chapterinfo>
+ <author>
+ <firstname>Julien</firstname>
+ <surname>Viet</surname>
+ <email>julien.viet(a)jboss.com</email>
+ </author>
+ </chapterinfo>
+ <title>Ajax</title>
+ <para>This section covers the ajax features provided by the portal.</para>
+ <sect1>
+ <title>Introduction</title>
+ <para>Todo</para>
+ </sect1>
+ <sect1>
+ <title>Ajaxified markup</title>
+ <sect2>
+ <title>Ajaxified layouts</title>
+ <para>Part of the Ajax capabilities are implemented in the layout framework which provide the structure for
+ generating portal pages. The good news is that the existing layout only requires a few modifications in
+ order to be ajaxified.</para>
+ <para>We will use as example an simplified version of the layout JSP provided in JBoss Portal 2.6 and outline
+ what are the required changes that makes it an ajaxified layout:
+ <programlisting><![CDATA[
+<%@ taglib uri="/WEB-INF/theme/portal-layout.tld" prefix="p" %>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <meta http-equiv="Content-Type" content="text/html;"/>
+ <!-- inject the theme, default to the Renaissance theme if nothing is selected for the portal or the page -->
+ <p:theme themeName="renaissance"/>
+ <!-- insert header content that was possibly set by portlets on the page -->
+ <p:headerContent/>
+</head>
+
+<body id="body">
+<p:region regionName='AJAXScripts' regionID='AJAXScripts'/>
+<div id="portal-container">
+ <div id="sizer">
+ <div id="expander">
+ <div id="logoName"></div>
+ <table border="0" cellpadding="0" cellspacing="0" id="header-container">
+ <tr>
+ <td align="center" valign="top" id="header">
+
+ <!-- Utility controls -->
+ <p:region regionName='dashboardnav' regionID='dashboardnav'/>
+
+ <!-- navigation tabs and such -->
+ <p:region regionName='navigation' regionID='navigation'/>
+ <div id="spacer"></div>
+ </td>
+ </tr>
+ </table>
+ <div id="content-container">
+ <!-- insert the content of the 'left' region of the page, and assign the css selector id 'regionA' -->
+ <p:region regionName='left' regionID='regionA'/>
+ <!-- insert the content of the 'center' region of the page, and assign the css selector id 'regionB' -->
+ <p:region regionName='center' regionID='regionB'/>
+ <hr class="cleaner"/>
+ </div>
+ </div>
+ </div>
+</div>
+
+<p:region regionName='AJAXFooter' regionID='AJAXFooter'/>
+
+</body>
+</html>
+]]></programlisting>
+ <itemizedlist>
+ <listitem><![CDATA[<p:theme themeName="renaissance"/>]]> should be already present as it exists since 2.4 but is even more
+ necessary as it will inject in the page the reference to the ajax stylesheet.</listitem>
+ <listitem><![CDATA[<p:region regionName='AJAXScripts' regionID='AJAXScripts'/>]]> should be added before any other region
+ in the markup of the layout.</listitem>
+ <listitem><![CDATA[<p:region regionName='AJAXFooter' regionID='AJAXFooter'/>]]> should be added after any other region
+ in the markup of the layout.</listitem>
+ </itemizedlist>
+ </para>
+ </sect2>
+ <sect2>
+ <title>Ajaxified renderers</title>
+ <para>At runtime the portal combines the layout and the renderers in order create the markup returned to the
+ web browser. The most used render set is the divRenderer. Renderers only need a modification in the deployment
+ descriptor to indicate that they support ajax. Here is the declaration of the default divRenderer now in 2.6:</para>
+ <programlisting><![CDATA[
+<renderSet name="divRenderer">
+ <set content-type="text/html">
+ <ajax-enabled>true</ajax-enabled>
+ <region-renderer>org.jboss.portal.theme.impl.render.div.DivRegionRenderer</region-renderer>
+ <window-renderer>org.jboss.portal.theme.impl.render.div.DivWindowRenderer</window-renderer>
+ <portlet-renderer>org.jboss.portal.theme.impl.render.div.DivPortletRenderer</portlet-renderer>
+ <decoration-renderer>org.jboss.portal.theme.impl.render.div.DivDecorationRenderer</decoration-renderer>
+ </set>
+</renderSet>
+]]></programlisting>
+ <para>You should notice the <![CDATA[<ajax-enabled>true</ajax-enabled>]]> which indicates that the render set
+ supports ajaxification.</para>
+ </sect2>
+ </sect1>
+ <sect1>
+ <title>Ajaxified pages</title>
+ <para>todo</para>
+ </sect1>
+ <sect1>
+ <title>Ajaxified portlets</title>
+ <para>todo</para>
+ </sect1>
+</chapter>
\ No newline at end of file
Modified: docs/trunk/referenceGuide/en/modules/clustering.xml
===================================================================
--- docs/trunk/referenceGuide/en/modules/clustering.xml 2007-04-26 12:27:02 UTC (rev 7068)
+++ docs/trunk/referenceGuide/en/modules/clustering.xml 2007-04-26 12:38:38 UTC (rev 7069)
@@ -2,15 +2,15 @@
<chapter id="clustering">
<chapterinfo>
<author>
+ <firstname>Julien</firstname>
+ <surname>Viet</surname>
+ <email>julien.viet(a)jboss.com</email>
+ </author>
+ <author>
<firstname>Roy</firstname>
<surname>Russo</surname>
<email>roy(a)jboss.org</email>
</author>
- <author>
- <firstname>Julien</firstname>
- <surname>Viet</surname>
- <email>julien.viet(a)jboss.com</email>
- </author>
</chapterinfo>
<title>Clustering Configuration</title>
<para>This section covers configuring JBoss Portal to function in a clustered environment.</para>
17 years, 1 month
JBoss Portal SVN: r7068 - docs/trunk/referenceGuide/en/modules.
by portal-commits@lists.jboss.org
Author: thomas.heute(a)jboss.com
Date: 2007-04-26 08:27:02 -0400 (Thu, 26 Apr 2007)
New Revision: 7068
Modified:
docs/trunk/referenceGuide/en/modules/authentication.xml
docs/trunk/referenceGuide/en/modules/installation.xml
docs/trunk/referenceGuide/en/modules/supported.xml
docs/trunk/referenceGuide/en/modules/themeandlayouts.xml
Log:
- Add chapter on modifying the header.
- minor
Modified: docs/trunk/referenceGuide/en/modules/authentication.xml
===================================================================
--- docs/trunk/referenceGuide/en/modules/authentication.xml 2007-04-26 12:08:39 UTC (rev 7067)
+++ docs/trunk/referenceGuide/en/modules/authentication.xml 2007-04-26 12:27:02 UTC (rev 7068)
@@ -20,7 +20,7 @@
To learn more about security in JBoss Application Server please read
<ulink url="http://wiki.jboss.org/wiki/Wiki.jsp?page=JBossSX">JBossSX</ulink> documentation.
</para>
- <sect2 id="configuration">
+ <sect2 id="authentication_configuration">
<title>Configuration</title>
<para>You can configure the JAAS authentication stack in <emphasis>jboss-portal.sar/conf/login-config.xml</emphasis>.
It is important to remember that authorisation in portal starts at the JAAS level -
Modified: docs/trunk/referenceGuide/en/modules/installation.xml
===================================================================
--- docs/trunk/referenceGuide/en/modules/installation.xml 2007-04-26 12:08:39 UTC (rev 7067)
+++ docs/trunk/referenceGuide/en/modules/installation.xml 2007-04-26 12:27:02 UTC (rev 7068)
@@ -8,8 +8,7 @@
</author>
</chapterinfo>
<title>Installation</title>
- <para>There are 4 different methods to getting JBoss Portal up and running. The one you choose is up to you, but all
- result in your being able to run/deploy the best Portal application in the world. ;-)
+ <para>Depending on your needs, there are several different methods to get JBoss Portal up and running.
<itemizedlist>
<listitem>
<xref linkend="install_bundle"/>
Modified: docs/trunk/referenceGuide/en/modules/supported.xml
===================================================================
--- docs/trunk/referenceGuide/en/modules/supported.xml 2007-04-26 12:08:39 UTC (rev 7067)
+++ docs/trunk/referenceGuide/en/modules/supported.xml 2007-04-26 12:27:02 UTC (rev 7068)
@@ -22,7 +22,7 @@
<itemizedlist>
<listitem>JDK 1.4 or higher (1.4.2 is recommended)</listitem>
<listitem>512 MB RAM</listitem>
- <listitem>50 MB hard disk space</listitem>
+ <listitem>100 MB hard disk space</listitem>
<listitem>400 MHz CPU</listitem>
</itemizedlist>
</para>
@@ -30,15 +30,15 @@
<sect1>
<title>Supported Operating Systems</title>
<para>JBoss Portal is 100% pure Java and therefore interoperable with most operating systems
- capable of running a Java Virtual Machine (JVM); including Windows, UNIX, and Linux.
+ capable of running a Java Virtual Machine (JVM); including Linux, Windows, UNIX, MacOS X.
</para>
</sect1>
<sect1>
<title>JBoss Application Server</title>
- <para>JBoss Portal only works with JBoss Application Server.</para>
+ <para>As of today JBoss Portal only works with JBoss Application Server.</para>
+ <para>Currently we recommend using JBoss AS 4.0.5.GA, support for JBoss AS 4.2.x is on its way.</para>
<warning>
- <para>Currently we recommend using JBoss AS 4.0.4.GA, or greater. Previous versions of
- JBoss Application Server are not supported with this version of JBoss Portal</para>
+ <para> Versions before 4.0.4 of JBoss Application Server are not supported with this version of JBoss Portal.</para>
</warning>
</sect1>
<sect1 id="supportedversions-db">
@@ -58,14 +58,13 @@
<listitem>PostgreSQL 8.x</listitem>
<listitem>HypersonicSQL</listitem>
<listitem>Derby</listitem>
- <listitem>Oracle 9 and 10g</listitem>
- <listitem>MSSQL</listitem>
+ <listitem>Oracle 9 and 10g (make sure to use the latest driver of Oracle's 10 branch even when running Oracle 9)</listitem>
+ <listitem>Microsoft SQL Server</listitem>
<listitem>MaxDB</listitem>
</itemizedlist>
</sect1>
<sect1>
<title>Source building</title>
- <para>The source building mechanism works on Windows, Linux, MacOS X and any 'Unix like'
- operating system.</para>
+ <para>The source building mechanism works on Linux, Windows, MacOS X and any 'Unix like' operating system.</para>
</sect1>
</chapter>
Modified: docs/trunk/referenceGuide/en/modules/themeandlayouts.xml
===================================================================
--- docs/trunk/referenceGuide/en/modules/themeandlayouts.xml 2007-04-26 12:08:39 UTC (rev 7067)
+++ docs/trunk/referenceGuide/en/modules/themeandlayouts.xml 2007-04-26 12:27:02 UTC (rev 7068)
@@ -98,6 +98,149 @@
</para>
</sect1>
<sect1>
+ <title>Header</title>
+ <sect2>
+ <title>Overview</title>
+ <para>The default header is divided into two parts, links to pages displayed as tabs and links
+ to navigate between portals and dahsboards as well as loggin in and out.
+ </para>
+ <para>Screenshot:</para>
+ <para>
+ <imageobject>
+ <imagedata fileref="images/themeguide/portal-header.gif" format="gif"/>
+ </imageobject>
+ </para>
+ <note>Here, we use split content from rendering by using a CSS style sheet, it allow us to change the
+ display by switching the CSS without affecting the content. THe Maple theme will display the links
+ on the left side with a different font for example. THis is up to you to choose or not this approach
+ </note>
+ <para>To customize the header there are several options detailed after.
+ <itemizedlist>
+ <listitem>The first option would simply require to modify
+ the theme CSS, by doing this you could change the fonts, the way tabs are rendered, colors and many
+ other things but not change the content.</listitem>
+ <listitem>The second option is to modify the provided JSPs, <literal>header.jsp</literal> and
+ <literal>tabs.jsp</literal>. It gives you more flexibility than the previous solution on modifying
+ the content. Links to legacy application could easily be added, URLs could be arranged differently, the CSS
+ approach could be replaced by good old HTML, CSS style names could be changed... The drawback of
+ this method compare to the next one is the limitation in what is accessible from the JSP.</listitem>
+ <listitem>The third option is the most flexible and let you inject whatever you want, it consists in
+ replacing the default <literal>PageCustomizerInterceptor</literal> by your own.</listitem>
+ </itemizedlist>
+ </para>
+ <sect3>
+ <title>Writing his own JSPs</title>
+ <para>The content of those two parts are displayed thanks to two different JSP pages. By default
+ you would find those pages in the directory <literal>portal-core.war/WEB-INF/jsp/header/</literal>.
+ The file <literal>header.jsp</literal> is used to display the links that are displayed on the upper
+ right of the default theme. The file <literal>tabs.jsp</literal> is used to display the pages tabs
+ appearing on the left.
+ </para>
+ <para> Again, you have several choices, either to edit the included JSPs directly or create your own,
+ store them in a web application then edit the following file: <literal>portal-core.sar/META-INF/jboss-service.xml</literal>.
+ The interesting part in that file is the following:
+ <programlisting><![CDATA[
+<mbean
+ code="org.jboss.portal.core.aspects.controller.PageCustomizerInterceptor"
+ name="portal:service=Interceptor,type=Command,name=PageCustomizer"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <attribute name="JSPContext">/portal-core</attribute>
+ <attribute name="HeaderJSP">/WEB-INF/jsp/header/header.jsp</attribute>
+ <attribute name="TabsJSP">/WEB-INF/jsp/header/tabs.jsp</attribute>
+ <depends
+ optional-attribute-name="PortalAuthorizationManagerFactory"
+ proxy-type="attribute">portal:service=PortalAuthorizationManagerFactory</depends>
+</mbean>
+ ]]></programlisting>
+ The three attibutes are:
+ <itemizedlist>
+ <listitem>JSPContext: Defines the web application context where the JSPs are located</listitem>
+ <listitem>HeaderJSP: Defines the location (in the web application previously defined) of the JSP in charge of writing the header links</listitem>
+ <listitem>TabsJSP: Defines the location (in the web application previously defined) of the JSP in charge of writing the pages links (note that it doesn't have to be renderer as tabs)</listitem>
+ </itemizedlist>
+ </para>
+ <para>Writing the header JSP</para>
+ <para>A couple of request attributes are set so that they can be used by the JSP, here is the list of attibutes and their meaning:
+ <itemizedlist>
+ <listitem><literal>org.jboss.portal.header.USER</literal>: A <literal>org.jboss.portal.identity.User</literal> object of the logged-in user, null if the user is not logged-in.</listitem>
+ <listitem><literal>org.jboss.portal.header.LOGIN_URL</literal>: URL to logging-in.</listitem>
+ <listitem><literal>org.jboss.portal.header.DASHBOARD_URL</literal>: URL to the dashboard, null if the user is already on the dashboard, null if the user is on the default portal already.</listitem>
+ <listitem><literal>org.jboss.portal.header.DEFAULT_PORTAL_URL</literal>: URL to the default page of the portal named 'default', null if the user is on the default portal already.</listitem>
+ <listitem><literal>org.jboss.portal.header.ADMIN_PORTAL_URL</literal>: URL to the default page of the admin portal (named 'admin'), null if the user is on the admin portal already.</listitem>
+ <listitem><literal>org.jboss.portal.header.EDIT_DASHBOARD_URL</literal>: URL to the page content editor of the dashboard, set only if the user is on the dashboard, null otherwise.</listitem>
+ <listitem><literal>org.jboss.portal.header.COPY_TO_DASHBOARD_URL</literal>: URL to copy a page from a portal to the personal dashboard, null if the user is on the dashboard.</listitem>
+ <listitem><literal>org.jboss.portal.header.SIGN_OUT_URL</literal>: URL to log out the portal.</listitem>
+ </itemizedlist>
+ With that in hand, if someone just wanted to display the logged-in username and a link to log out, he could write:
+ <programlisting><![CDATA[
+<%@ page import="org.jboss.portal.identity.User" %>
+
+<%
+ User user = (User) request.getAttribute("org.jboss.portal.header.USER");
+ String signOutURL = (String) request.getAttribute("org.jboss.portal.header.SIGN_OUT_URL");
+ String loginURL = (String) request.getAttribute("org.jboss.portal.header.LOGIN_URL");
+
+
+ if (user == null)
+ {
+%>
+ <a href="<%= loginURL %>">Login</a>
+<%
+ }
+ else
+ {
+%>
+Logged in as: <%= user.getUserName() %>
+<br/>
+<a href="<%= signOutURL %>">Logout</a>
+<%
+ }
+%>
+ ]]></programlisting>
+ </para>
+ <para>Writing the tabs JSP</para>
+ <para>A couple of request attributes are set so that they can be used by the JSP, here is the list of attibutes and their meaning:
+ <itemizedlist>
+ <listitem><literal>org.jboss.portal.api.PORTAL_NODE</literal>: A <literal>org.jboss.portal.api.node.PortalNode</literal> object of the root Portal node. Authorized children and siblings
+ of this object are accessible.</listitem>
+ <listitem><literal>org.jboss.portal.api.PORTAL_RUNTIME_CONTEXT</literal>: A <literal>org.jboss.portal.api.PortalRuntimeContext</literal> object that can be used to render URLs.</listitem>
+ </itemizedlist>
+ </para>
+ <para>The default file in charge of displaying the tabs can be found in: <literal>portal-core.war/WEB-INF/jsp/header/</literal></para>
+ </sect3>
+ <sect3>
+ <title>Modifying the default PageCustomizerInterceptor</title>
+ <para>Instead of modifying the class directly, create your own Interceptor
+ (I suggest you copy the default PageCustomizerInterceptor look at the source in
+ <literal>core/src/main/org/jboss/portal/core/aspects/controller</literal>) then add it to:
+ <literal>portal-core.sar/META-INF/jboss-service.xml</literal> the same way it
+ is done by the default Interceptor. Then replace the default one by your own in
+ the following part:
+<programlisting><![CDATA[
+<mbean
+ code="org.jboss.portal.server.impl.invocation.JBossInterceptorStackFactory"
+ name="portal:service=InterceptorStackFactory,type=Command"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends-list optional-attribute-name="InterceptorNames">
+ <depends-list-element>portal:service=Interceptor,type=Command,name=Ajax</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Command,name=NavigationalState</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Command,name=PortalNode</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Command,name=PolicyEnforcement</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Command,name=PageCustomizer</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Command,name=EventBroadcaster</depends-list-element>
+ </depends-list>
+</mbean>
+]]></programlisting>
+ Just replace the PageCustomizer by one of your own.
+ </para>
+ </sect3>
+ </sect2>
+ </sect1>
+ <sect1>
<title>Layouts</title>
<sect2>
<title>How to define a Layout</title>
17 years, 1 month
JBoss Portal SVN: r7067 - docs/trunk/referenceGuide/en/modules.
by portal-commits@lists.jboss.org
Author: julien(a)jboss.com
Date: 2007-04-26 08:08:39 -0400 (Thu, 26 Apr 2007)
New Revision: 7067
Removed:
docs/trunk/referenceGuide/en/modules/themeStyleGuide.xml
Modified:
docs/trunk/referenceGuide/en/modules/themeandlayouts.xml
Log:
added section on new ajax CSS in the theme guide
Deleted: docs/trunk/referenceGuide/en/modules/themeStyleGuide.xml
===================================================================
--- docs/trunk/referenceGuide/en/modules/themeStyleGuide.xml 2007-04-26 11:27:50 UTC (rev 7066)
+++ docs/trunk/referenceGuide/en/modules/themeStyleGuide.xml 2007-04-26 12:08:39 UTC (rev 7067)
@@ -1,1580 +0,0 @@
-<preface id="themeStyleGuide">
- <title>JBoss Portal - Theme Style Guide (based on the Industrial theme)</title>
- <sect1>
- <title>Overview</title>
- <para>
- This document outlines the different selectors used to handle the layout and look/feel of the Industrial theme
- included in the JBoss portal.
-
- <itemizedlist>
- <para>A couple of things to know about the theming approach discussed below:</para>
- <listitem>Main premise behind this approach was to provide a clean separation between the business and
- presentation layer of the portal. As we go through each selector and explain the relation to the visual
- presentation on the page, this will become more apparent.
- </listitem>
- <listitem>The flexibility of the selectors used in the theme stylesheet allow a designer to very easily
- customize the visual aspects of the portal, thereby taking the responsibility off of the developers hands
- through allowing the designer to quickly achieve the desired effect w/out the need to dive down into code
- and/or having to deploy changes to the portal. This saves time and allows both developers and designers
- to focus on what they do best.
- </listitem>
- <listitem>This theme incorporates a liquid layout approach which allows elements on a page to
- expand/contract
- based on screen resolution and provides a consistent look across varying display settings. However, the
- stylesheet is adaptable to facilitate a fixed layout and/or combination approach where elements are pixel
- based and completely independent of viewport.
- </listitem>
- <listitem>The pieces that make up the portal theme consist of at least one stylesheet and any associated
- images.
- Having a consolidated set of files to control the portal look and feel allows administrators to
- effortlessly
- swap themes on the fly. In addition, this clean separation of the pieces that make up a specific theme
- will enable sharing and collaboration of different themes by those looking to get involved or contribute
- to the open source initiative.
- </listitem>
- </itemizedlist>
- </para>
- </sect1>
-
- <sect1>
- <title>Main Screen Shot</title>
- <para>
- Screen shot using color outline of main ID selectors used to control presentation and layout:
- <para>
- <imageobject>
- <imagedata fileref="images/themeguide/selector-outline.gif" format="gif"/>
- </imageobject>
- </para>
- <para>
- <table align="center">
- <title>Key</title>
- <tr>
- <th align="left">Color Outline</th>
- <th align="left">Corresponding Selector</th>
- </tr>
- <tr>
- <td align="left">Red Border</td>
- <td align="left">portal-container</td>
- </tr>
- <tr>
- <td align="left">Yellow Border</td>
- <td align="left">header-container</td>
- </tr>
- <tr>
- <td align="left">Orange Border</td>
- <td align="left">content-container</td>
- </tr>
- <tr>
- <td align="left">Blue Border</td>
- <td align="left">regionA / regionB</td>
- </tr>
- <tr>
- <td align="left">Green Border</td>
- <td align="left">portlet-container</td>
- </tr>
- </table>
- </para>
- </para>
- </sect1>
-
- <sect1>
- <title>List of CSS Selectors</title>
- <para>
- <itemizedlist>
- <para>The following is a list of the selectors used in the theme stylesheet, including a brief
- explanation of how each selector is used in the portal:
- </para>
-
- <listitem>
- <para>
- Portal Body Selector
-
- <programlisting>
- #body {
- background-image: url(images/portal_background.gif);
- margin: 0px;
- padding: 0px;
- }
- </programlisting>
-
- Usage:
- This selector controls the background of the page, and can be modified to set a base font-family,
- layout margin, etc. that will be inherited by all child elements that do not have their own individual
- style applied. By default, the selector pulls an image background for the page.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Portal Header Selectors
-
- <programlisting>
- #spacer {
- width: 1024px;
- line-height: 0px;
- font-size: 0px;
- height: 0px;
- }
- </programlisting>
-
- Usage:
- Spacer div used to keep header at certain width regardless of display size. This is done to
- avoid overlapping of tab navigation in header. To account for different display sizes, this
- selector can be modified to force a horizontal scroll in the browser which eliminates any issue
- with overlapping elements in the header.
-
- <programlisting>
- #header-container {
- background-image: url(images/portal_background.gif);
- background-repeat: repeat-y;
- height: 100%;
- min-width: 1000px;
- width: 100%;
- /* test to reposition header on page
- position: absolute;
- bottom: 5px;*/
- }
- </programlisting>
-
- Usage:
- Wrapper selector used to control the position of the header on the page (see yellow border in screen
- shot). This selector is applied as an ID on the table used to structure the header. You can adjust
- the attributes to reposition the header location on the page and/or create margin space on the top,
- right, bottom and left sides of the header.
-
- <para>
- Screenshot:
- </para>
- <para>
- <imageobject>
- <imagedata fileref="images/themeguide/header.gif" format="gif"/>
- </imageobject>
- </para>
-
- <programlisting>
- #header {
- background-image: url(images/header.gif);
- background-repeat: repeat-x;
- height: 100px;
- padding: 0px;
- /*margin: 0 25% 0 25%;*/
- }
- </programlisting>
-
- Usage:
- This selector applies the header background image in the portal. It can be adjusted to accommodate a
- header background of a certain width/height or, as it currently does, repeat the header graphic so
- that it tiles across the header portion of the page.
-
- <programlisting>
- #logoName {
- background-image: url(images/JBossLogo.gif);
- background-repeat: no-repeat;
- width: 187px;
- height: 35px;
- position: absolute;
- left: 15px;
- top: 16px;
- z-index: 2;
- }
- </programlisting>
-
- Usage:
- Logo selector which is used to brand the header with a specific, customized logo. The style is applied
- as an ID on an absolutely positioned DIV element which enables it to be moved to any location on the
- page, and allows it to be adjusted to accommodate a logo of any set width/height.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Portal Layout Region Selectors
-
- <programlisting>
- #portal-container {
- /*width: 100%;*/
-
- /*IE specific approach to preserve min-width for portlet regions */
- padding: 0 350px 0 350px;
- }
- </programlisting>
-
- Usage:
- Wrapper for entire portal which starts/ends after/before the BODY tag (see red border in screen shot).
- The padding attribute for this selector is used to preserve a minimum width setting for the portlet
- regions (discussed below). Similar to body selector, this style can modified to create margin or
- padding space on the top, right, bottom and left sections of the page. It provides the design
- capability to accommodate most layouts (e.g. a centered look such as the phalanx theme where
- there is some spacing around the content of the portal, or a full width look as illustrated in
- the Industrial theme).
-
- <para>
- Screenshot:
- </para>
- <para>
- <imageobject>
- <imagedata fileref="images/themeguide/region-selectors.gif" format="gif"/>
- </imageobject>
- </para>
-
-
- <programlisting>
- /* min width for IE */
- #expander {
- margin: 0 -350px 0 -350px;
- position: relative;
- }
-
- /* min width for IE */
- #sizer {
- width: 100%;
- }
-
- /* IE min width \*/
- * html #portal-container,
- * html #sizer,
- * html #expander { height: 0; }
- </programlisting>
-
- Usage:
- These selectors are used in conjunction with the above, portal-container, selector to preserve a
- minimum width setting for the portlet regions. This was implemented to maintain a consistent
- look across different browsers.
-
-
- <programlisting>
- /*table that contains all regions. does not include header*/
- #content-container {
- height: 100%;
- text-align:left;
- max-width: 1600px;
- min-width: 800px;
- }
- </programlisting>
-
- Usage:
- Wrapper that contains all regions in portal with the exception of the header (see orange border
- in screen shot). Its attributes can be adjusted to create margin space on page, as well as
- control positioning of the area of the page below the header.
-
- <para>
- Screenshot:
- </para>
- <para>
- <imageobject>
- <imagedata fileref="images/themeguide/content-container.gif" format="gif"/>
- </imageobject>
- </para>
-
-
- <programlisting>
- #regionA {
- /* test to swap columns with regionB...
- float: right; */
-
- width: 30%;
- float: left;
- margin: 0px;
- padding: 0px;
- min-width: 250px;
- }
- </programlisting>
-
- Usage:
- First portlet region located within the content-container (see blue border in screen shot). This
- selector controls the width of the region as well as its location on the page. Designers can
- very easily reposition this region in the portal (e.g. swap left regionA with right regionB,
- etc.) by adjusting the attributes of this selector.
-
- <programlisting>
- #regionB {
- /*test to swap columns with regionA...
- margin: 0 30% 0 0; */
-
- /* two column layout*/
- margin: 0 0 0 30%;
- padding: 0;
- width: 69%;
-
- /* test to add 3rd region in layout...
- width: 40%;
- float: left;*/
- }
- </programlisting>
-
- Usage:
- Second portlet region located within the content-container (see blue border in screen shot).
- Similar to regionA, this selector controls the width of the region as well as its location
- on the page.
-
-
- <programlisting>
- #regionC {
- /* inclusion of 3rd region - comment out for 2 region testing
- padding: 0px;
- width: 27%;
- float: left;*/
- display: none;
- }
- </programlisting>
-
- Usage:
- Third portlet region located within the content-container (please refer to blue border in screen
- shot representing regionA and regionB for an example). Used for 3 column layout. Similar to
- regionA and regionB, this selector controls the width of the region as well as its location
- on the page.
-
- <programlisting>
- /* give a maximized portlet more space */
- #regionMaximized {
- width: 100%;
- float: left;
- margin: 0px;
- padding: 0px;
- min-width: 400px;
- }
- </programlisting>
-
- Usage:
- Portlet region located within the content-container (please refer to blue border in screen
- shot representing regionA and regionB for an example). Used for a one column layout to allow one
- portlet to take over the entire page. Similar to regionA, regionB, and regionB, this selector
- controls the width of the region as well as its location on the page.
-
- <para>
- Screenshot:
- </para>
- <para>
- <imageobject>
- <imagedata fileref="images/themeguide/regions.gif" format="gif"/>
- </imageobject>
- </para>
-
- <programlisting>
- hr.cleaner {
- clear:both;
- height:1px;
- margin: -1px 0 0 0;
- padding:0;
- border:none;
- visibility: hidden;
- }
- </programlisting>
-
- Usage:
- Used to clear floats in regionA, regionB and regionC DIVs so that footer spans bottom of page.
-
- <programlisting>
- #footer-container {
- margin: 30px 25% 0 25%;
- text-align: center;
- }
- </programlisting>
-
- Usage:
- Footer region located towards the bottom of the content-container (see above screen shot). This
- region spans the entire width of the page, but can be adjusted (just like regionA, regionB
- and regionC) to take on a certain position and width/height in the layout.
-
- <programlisting>
- #navigation-container {}
- </programlisting>
-
- Usage:
- Unused at this time.
-
- <programlisting>
- #sub-navigation-container {}
- </programlisting>
-
- Usage:
- Unused at this time.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Tab Navigation Selectors for Header
-
-
- <programlisting>
- UL#tabsHeader {
- margin: 0;
- padding-left: 300px;
- min-width: 550px;
- }
- </programlisting>
-
- Usage:
- Used to provide position (through padding attribute) of tabbed navigational items in header. A
- padding-left of 300px gives space for the left hand logo area and can be adjusted as needed to
- set the desired location for the navigation.
-
- <programlisting>
- UL#tabsHeader li {
- list-style: none;
- float: left;
- margin-left: 0px;
- margin-top: 74px;
- margin-right: 0px;
- line-height: 24px;
- padding: 0px;
- border-left: 1px solid #72828E;
- }
- </programlisting>
-
- Usage:
- Selector used to style list items as horizontal navigation and to set the spacing and position
- of each nav item that's available.
-
- <programlisting>
- UL#tabsHeader li:hover {
- background-image: url(images/highlightedTab.gif);
- background-repeat: repeat-x;
- }
- </programlisting>
-
- Usage:
- Used to provide hover pseudo class on navigation items so that the tab background will change
- upon mouseover. Note that currently IE only supports the hover pseudo class on links, so this
- selector will only affect non-IE browsers (e.g. FireFox, etc.).
-
- <programlisting>
- UL#tabsHeader li.hoverOn {
- background-image: url(images/highlightedTab.gif);
- background-repeat: repeat-x;
- }
-
- UL#tabsHeader li.hoverOff {
- background-image:none;
- }
- </programlisting>
-
- Usage:
- These two selectors are implemented to account for the fact that IE cannot understand the use
- of a pseudo class on the LI element. They provide the same mouseover effect as the
- “UL#tabsHeader li:hover�? selector when hovering the navigation item in IE, and are used in
- combination with onmouseover/onmouseout event handlers in the header navigation:
- <programlisting>
- <![CDATA[
- <li onmouseover="this.className='hoverOn'" onmouseout="this.className='hoverOff'">
- <a href="#">Tab Nav</a>
- </li>
- ]]></programlisting>
-
- <programlisting>
- UL#tabsHeader a {
- display: block;
- float: left;
- padding: 4px 15px 5px 15px;
- text-decoration: none;
- font: 13px/normal Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
- background: 100% 0 no-repeat;
- color: #596874;
- }
- </programlisting>
-
- Usage:
- This selector styles the navigational links, indicating padding surrounding the link as well as
- font family, color and text-decoration.
-
- <programlisting>
- UL#tabsHeader a:hover {
- text-decoration: underline;
- }
- </programlisting>
-
- Usage:
- Used to underline navigational links when hovering with mouse. Unlike the li:hover pseudo class,
- IE does support the hover effect on links, so there is no need for a separate set of selectors
- to deal with this effect.
-
- <programlisting>
- UL#tabsHeader #current, UL#tabsHeader #current a {
- font: 13px/normal Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
- font-weight: 600;
- color: #EBEAEA;
- background-image: url(images/activeTab.gif);
- background-repeat: repeat-x;
- border-right: 0px;
- border-left: 0px;
- }
- </programlisting>
-
- Usage:
- This selector is set on the current/selected navigation item to style both the background of
- the tab as well as font properties such as color and weight. Example:
- <programlisting>
- <![CDATA[
- <li id="current" onmouseover="this.className='hoverOn'" onmouseout="this.className='hoverOff'">
- <a href="#">Tab Nav</a>
- </li>
- ]]></programlisting>
-
- <programlisting>
- /* backslash for IE5-Mac \*/
- UL#tabsHeader a {float: none;} /* End Mac Hack */
- html>body UL#tabsHeader a {width: auto;} /* fixes IE issues */
- </programlisting>
-
- Usage:
- Also known in the industry as an example of the “Holly Hack�?, the above is added to the stylesheet
- to handle certain buggy issues with IE. This section of the stylesheet should be left alone as
- subsequent changes can effect the way things behave in IE.
-
- <programlisting>
- li.currentTabBackground {
- background: #fff;
- }
-
- li.currentTabBackgroundSubNav {
- background: #eeeeef;
- }
- </programlisting>
-
- Usage:
- The above two selectors are not currently in use. Included to account for future changes to the
- navigation where multiple tiers/levels might be incorporated.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Portlet Container Window Selectors
-
- <programlisting>
- .portlet-container {
- padding: 10px;
- }
- </programlisting>
-
- Usage:
- Wrapper that surrounds the portlet windows (see green border in screen shot). Currently, this
- selector is used to create space (padding) between the portlets displayed in each particular region.
-
- <para>
- Screenshot:
- </para>
- <para>
- <imageobject>
- <imagedata fileref="images/themeguide/portlet-container.gif" format="gif"/>
- </imageobject>
- </para>
-
- <programlisting>
- .portlet-titlebar-title {
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 11px;
- font-weight: 500;
- color: #596874;
- white-space: nowrap;
- line-height: 100%;
- float: left;
- text-indent: 15px;
- }
- </programlisting>
-
- Usage:
- Class used to style the title of each portlet window. Attributes of this selector set font
- properties, indentation and position of title.
-
- <programlisting>
- .portlet-titlebar-decoration {
- background-image: url(images/portlet-win-decoration.gif);
- background-repeat: no-repeat;
- height: 11px;
- width: 11px;
- float: left;
- position: relative;
- top: 6px;
- }
- </programlisting>
-
- Usage:
- Used to display top left portlet window decoration (e.g. sphere icon in Industrial theme).
- Attributes for this selector set position and dimensions of this decoration.
-
- <programlisting>
- .portlet-mode-container {
- float: right;
- }
- </programlisting>
-
- Usage:
- Wrapper that contains the portlet window modes that display in the top right section of the
- portlet windows.
-
- <programlisting>
- .portlet-titlebar-left {
- background-image: url(images/portlet-top-left.gif);
- background-repeat: no-repeat;
- width: 9px;
- height: 33px;
- background-position: right;
- min-width: 9px;
- }
- </programlisting>
-
- Usage:
- Used to style the top left corner of the portlet window. Each portlet window consists of one
- table that has 3 columns and 3 rows. This selector styles the first column (TD) in the first
- row (TR).
-
- <para>
- Screenshot:
- </para>
- <para>
- <imageobject>
- <imagedata fileref="images/themeguide/portlet-titlebar-left.gif" format="gif"/>
- </imageobject>
- </para>
-
- <programlisting>
- .portlet-titlebar-center {
- background-image: url(images/portlet-top-middle.gif);
- background-repeat: repeat-x;
- height: 33px;
- }
- </programlisting>
-
- Usage:
- Used to style the center section of the portlet title bar. Each portlet window consists of one
- table that has 3 columns and 3 rows. This selector styles the second column (TD) in the first
- row (TR).
-
- <para>
- Screenshot:
- </para>
- <para>
- <imageobject>
- <imagedata fileref="images/themeguide/portlet-titlebar-center.gif" format="gif"/>
- </imageobject>
- </para>
-
- <programlisting>
- .portlet-titlebar-right {
- background-image: url(images/portlet-top-right.gif);
- background-repeat: no-repeat;
- width: 10px;
- height: 33px;
- min-width: 10px;
- }
- </programlisting>
-
- Usage:
- Used to style the top right corner of the portlet window. Each portlet window consists of one
- table that has 3 columns and 3 rows. This selector styles the third column (TD) in the first row (TR).
-
- <para>
- Screenshot:
- </para>
- <para>
- <imageobject>
- <imagedata fileref="images/themeguide/portlet-titlebar-right.gif" format="gif"/>
- </imageobject>
- </para>
-
- <programlisting>
- .portlet-content-left {
- background-image: url(images/portlet-left-vertical.gif);
- height: 100%;
- background-repeat: repeat-y;
- background-position: right;
- width: 9px;
- min-width: 9px;
- }
- </programlisting>
-
- Usage:
- Used to style the left hand vertical lines that make up the portlet window. Each portlet window
- consists of one table that has 3 columns and 3 rows. This selector styles the first column (TD)
- in the second row (TR).
-
- <para>
- Screenshot:
- </para>
- <para>
- <imageobject>
- <imagedata fileref="images/themeguide/portlet-content-left.gif" format="gif"/>
- </imageobject>
- </para>
-
- <programlisting>
- .portlet-content-center {
- background-color: #f7f7f7;
- background-repeat: repeat;
- vertical-align: top;
- font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
- font-size: 13px;
- }
- </programlisting>
-
- Usage:
- Used to style the center, content area where the portlet content is injected into the portlet
- window (see below screen). Attributes for this selector control the positioning of the portlet
- content as well as the background and font properties. Each portlet window consists of one table
- that has 3 columns and 3 rows. This selector styles the second column (TD) in the second row (TR).
-
- <para>
- Screenshot:
- </para>
- <para>
- <imageobject>
- <imagedata fileref="images/themeguide/portlet-content-center.gif" format="gif"/>
- </imageobject>
- </para>
-
- <programlisting>
- .portlet-body {
- background-color: #f7f7f7;
- }
- </programlisting>
-
- Usage:
- An extra selector for controlling the content section of the portlet windows (see below screen).
- This was added to better deal with structuring the content that gets inserted/rendered in the
- portlet windows, specifically if the content is causing display problems in a portlet.
-
- <para>
- Screenshot:
- </para>
- <para>
- <imageobject>
- <imagedata fileref="images/themeguide/portlet-body.gif" format="gif"/>
- </imageobject>
- </para>
-
- <programlisting>
- .portlet-content-right {
- background-image: url(images/portlet-right-vertical.gif);
- height: 100%;
- background-repeat: repeat-y;
- background-position: left;
- width: 10px;
- min-width: 10px;
- }
- </programlisting>
-
- Usage:
- Used to style the right hand vertical lines that make up the portlet window. Each portlet
- window consists of one table that has 3 columns and 3 rows. This selector styles the third
- column (TD) in the second row (TR).
-
- <para>
- Screenshot:
- </para>
- <para>
- <imageobject>
- <imagedata fileref="images/themeguide/portlet-content-right.gif" format="gif"/>
- </imageobject>
- </para>
-
- <programlisting>
- .portlet-footer-left {
- background-image: url(images/portlet-bottom-left.gif);
- width: 9px;
- height: 9px;
- background-repeat: no-repeat;
- background-position: top right;
- min-width: 9px;
- }
- </programlisting>
-
- Usage:
- Used to style the bottom left corner of the portlet window. Each portlet window consists of one
- table that has 3 columns and 3 rows. This selector styles the first column (TD) in the third row (TR).
-
- <para>
- Screenshot:
- </para>
- <para>
- <imageobject>
- <imagedata fileref="images/themeguide/portlet-footer-left.gif" format="gif"/>
- </imageobject>
- </para>
-
- <programlisting>
- .portlet-footer-center {
- background-image: url(images/portlet-bottom-middle.gif);
- height: 14px;
- background-repeat: repeat-x;
- }
- </programlisting>
-
- Usage:
- Used to style the bottom, center of the portlet window (i.e. the bottom horizontal line in the
- Industrial theme). Each portlet window consists of one table that has 3 columns and 3 rows.
- This selector styles the second column (TD) in the third row (TR).
-
- <para>
- Screenshot:
- </para>
- <para>
- <imageobject>
- <imagedata fileref="images/themeguide/portlet-footer-center.gif" format="gif"/>
- </imageobject>
- </para>
-
- <programlisting>
- .portlet-footer-right {
- background-image: url(images/portlet-bottom-right.gif);
- width: 10px;
- height: 9px;
- background-repeat: no-repeat;
- min-width: 10px;
- }
- </programlisting>
-
- Usage:
- Used to style the bottom right corner of the portlet window. Each portlet window consists of
- one table that has 3 columns and 3 rows. This selector styles the third column (TD) in the
- third row (TR).
-
- <para>
- Screenshot:
- </para>
- <para>
- <imageobject>
- <imagedata fileref="images/themeguide/portlet-footer-right.gif" format="gif"/>
- </imageobject>
- </para>
- </para>
- </listitem>
-
- <listitem>
- <para>
- Portlet Window Mode Selectors
-
- <programlisting>
- .portlet-mode-maximized {
- background-image: url(images/maximize.gif);
- width: 16px;
- height: 23px;
- background-repeat: no-repeat;
- float: left;
- display: inline;
- cursor: pointer;
- }
- </programlisting>
-
- Usage:
- Selector used to display the portlet maximize mode. Attributes for this selector control the
- display and dimensions of the maximize icon, including the behavior of the mouse pointer when
- hovering the mode.
-
- <programlisting>
- .portlet-mode-minimized {
- background-image: url(images/minimize.gif);
- width: 16px;
- height: 23px;
- background-repeat: no-repeat;
- float: left;
- display: inline;
- cursor: pointer;
- }
- </programlisting>
-
- Usage:
- Selector used to display the portlet minimize mode. Attributes for this selector control the
- display and dimensions of the minimize icon, including the behavior of the mouse pointer when
- hovering the mode.
-
- <programlisting>
- .portlet-mode-normal {
- background-image: url(images/normal.gif);
- width: 16px;
- height: 23px;
- background-repeat: no-repeat;
- float: left;
- display: inline;
- cursor: pointer;
- }
- </programlisting>
-
- Usage:
- Selector used to display the portlet normal mode (i.e. the icon that when clicked, restores the
- portlet to the original, default view). Attributes for this selector control the display and
- dimensions of the normal icon, including the behavior of the mouse pointer when hovering the mode.
-
- <programlisting>
- .portlet-mode-help {
- background-image: url(images/help.gif);
- width: 16px;
- height: 23px;
- background-repeat: no-repeat;
- float: left;
- display: inline;
- cursor: pointer;
- }
- </programlisting>
-
- Usage:
- Selector used to display the portlet help mode. Attributes for this selector control the display
- and dimensions of the help icon, including the behavior of the mouse pointer when hovering the mode.
-
- <programlisting>
- .portlet-mode-edit {
- background-image: url(images/edit.gif);
- width: 16px;
- height: 23px;
- background-repeat: no-repeat;
- float: left;
- display: inline;
- cursor: pointer;
- }
- </programlisting>
-
- Usage:
- Selector used to display the portlet edit mode. Attributes for this selector control the display
- and dimensions of the edit icon, including the behavior of the mouse pointer when hovering the mode.
-
- <programlisting>
- .portlet-mode-remove {
- background-image: url(images/remove.gif);
- width: 16px;
- height: 23px;
- background-repeat: no-repeat;
- float: left;
- display: inline;
- cursor: pointer;
- }
- </programlisting>
-
- Usage:
- Currently not available. But here is the intended use:
- Selector used to display the portlet remove mode. Attributes for this selector control the
- display and dimensions of the remove icon, including the behavior of the mouse pointer when
- hovering the mode.
-
- <programlisting>
- .portlet-mode-view {
- background-image: url(images/view.gif);
- width: 16px;
- height: 23px;
- background-repeat: no-repeat;
- float: left;
- display: inline;
- cursor: pointer;
- }
- </programlisting>
-
- Usage:
- Selector used to display the portlet view mode. Attributes for this selector control the display
- and dimensions of the view icon, including the behavior of the mouse pointer when hovering the mode.
-
- <programlisting>
- .portlet-mode-reload {
- background-image: url(images/reload.gif);
- width: 16px;
- height: 23px;
- background-repeat: no-repeat;
- float: left;
- display: inline;
- cursor: pointer;
- }
- </programlisting>
-
- Usage:
- Currently not available. But here is the intended use:
- Selector used to display the portlet reload mode. Attributes for this selector control the
- display and dimensions of the reload icon, including the behavior of the mouse pointer when
- hovering the mode.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Copyright Selectors
-
- <programlisting>
- .portal-copyright {
- font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
- font-size: 9px;
- color: #5E6D7A;
- }
-
- a.portal-copyright {
- color: #768591;
- text-decoration: none;
- }
-
- a.portal-copyright:hover {
- color: #96A5B1;
- text-decoration: none;
- }
- </programlisting>
-
- Usage:
- The above three selectors are used to style copyright content in the portal. The portal-copyright
- selector sets the font properties (color, etc.), and the a.portal-copyright/a.portal-copyright:hover
- selectors style any links that are part of the copyright information.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Element Selectors
-
- <programlisting>
- a {
- color: #768591;
- text-decoration: none;
- }
- a:hover {
- color: #96A5B1;
- text-decoration: none;
- }
- </programlisting>
-
- Usage:
- The above two selectors style all anchor elements that do not have their own class/selector applied.
-
-
- <programlisting>
- INPUT {
- font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
- font-size: 10px;
- }
- </programlisting>
-
- Usage:
- The above selector styles all INPUT elements that do not have their own class/selector applied.
-
- <programlisting>
- SELECT {
- font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
- font-size: 10px;
- }
- </programlisting>
-
- Usage:
- The above selector styles all SELECT elements that do not have their own class/selector applied.
-
- <programlisting>
- FONT {
- font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
- font-size: 10px;
- color: #768591;
- }
- </programlisting>
-
- Usage:
- The above selector styles all FONT elements that do not have their own class/selector applied.
-
- <programlisting>
- FIELDSET {
- background-color: #f7f7f7;
- border:1px solid #BABDB6;
- padding: 6px;
- }
- </programlisting>
-
- Usage:
- The above selector styles all FIELDSET elements that do not have their own class/selector applied.
-
- <programlisting>
- LEGEND {
- background-color: transparent;
- padding-left: 6px;
- padding-right: 6px;
- padding-bottom: 0px;
- font-size: 14px;
- }
- </programlisting>
-
- Usage:
- The above selector styles all LEGEND elements that do not have their own class/selector applied.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Table Selectors
-
- <programlisting>
- .portlet-table-header {}
- </programlisting>
-
- Usage:
- Not currently in use. Intended for styling tables (specifically, the TH or table header elements)
- that get rendered within a portlet window.
-
- <programlisting>
- .portlet-table-body {}
- </programlisting>
-
- Usage:
- Not currently in use. Intended for styling the table body element used to group rows in a table.
-
- <programlisting>
- .portlet-table-alternate {}
- </programlisting>
-
- Usage:
- Not currently in use. Used to style the background color (and possibly other attributes) for
- every other row within a table.
-
- <programlisting>
- .portlet-table-selected {}
- </programlisting>
-
- Usage:
- Not currently in use. Used to style text, color, etc. in a selected cell range.
-
- <programlisting>
- .portlet-table-subheader {}
- </programlisting>
-
- Usage:
- Not currently in use. Used to style a subheading within a table that gets rendered in a portlet.
-
- <programlisting>
- .portlet-table-footer {}
- </programlisting>
-
- Usage:
- Not currently in use. Similar to portlet-table-header and portlet-table-body, this selector is
- used to style the table footer element which is used to group the footer row in a table.
-
- <programlisting>
- .portlet-table-text {}
- </programlisting>
-
- Usage:
- Text that belongs to the table but does not fall in one of the other categories (e.g. explanatory
- or help text that is associated with the table). This selector can also be modified to provide
- styled text that can be used in all tables that are rendered within a portlet.
- </para>
- </listitem>
-
- <listitem>
- <para>
- FONT Selectors
-
- <programlisting>
- .portlet-font {
- color:#000;
- font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
- font-size: 10px;
- }
- </programlisting>
-
- Usage:
- Used to style the font properties on text used in a portlet. Typically this class is used for
- the display of non-accentuated information.
-
- <programlisting>
- .portlet-font-dim {
- color:#888385;
- font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
- font-size: 10px;
- }
- </programlisting>
-
- Usage:
- A lighter version (color-wise) of the portlet-font selector.
- </para>
- </listitem>
-
- <listitem>
- <para>
- FORM Selectors
-
- <programlisting>
- .portlet-form-label {
- color:#4A4A4A;
- text-decoration:none;
- font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
- font-size: 9px;
- }
- </programlisting>
-
- Usage:
- Text used for the descriptive label of an entire form (not the label for each actual form field).
-
- <programlisting>
- .portlet-form-button {
- font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
- font-size: 9px;
- font-weight: bold;
- color: #270F07;
- }
- </programlisting>
-
- Usage:
- Used to style portlet form buttons (e.g. Submit).
-
- <programlisting>
- .portlet-icon-label {}
- </programlisting>
-
- Usage:
- Not currently in use. Text that appears beside a context dependent action icon.
-
- <programlisting>
- .portlet-dlg-icon-label {}
- </programlisting>
-
- Usage:
- Not currently in use. Text that appears beside a "standard" icon (e.g Ok, or Cancel).
-
- <programlisting>
- .portlet-form-field-label {
- font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
- font-size: 9px;
- color: #4A4A4A;
- }
- </programlisting>
-
- Usage:
- Selector used to style portlet form field labels.
-
- <programlisting>
- .portlet-form-field {
- font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
- font-size: 9px;
- color: #4A4A4A;
- margin-top: 10px;
- }
- </programlisting>
-
- Usage:
- Selector used to style portlet form fields (i.e. INPUT controls, SELECT elements, etc.).
- </para>
- </listitem>
- <listitem>
- <para>
- LINK Selectors
-
- <programlisting>
- .portal-links:link {
- font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
- font-size: 9px;
- font-weight: bold;
- color: #242424;
- text-decoration: none;
- }
-
- .portal-links:hover {
- font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
- font-size: 9px;
- font-weight: bold;
- color: #5699B7;
- text-decoration: none;
- }
-
- .portal-links:active {
- font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
- font-size: 9px;
- font-weight: bold;
- color: #242424;
- text-decoration: none;
- }
-
- .portal-links:visited {
- font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
- font-size: 9px;
- font-weight: bold;
- color: #242424;
- text-decoration: none;
- }
- </programlisting>
-
- Usage:
- The above four selectors are used to style links in the portal. Each pseudo class (i.e. hover, active,
- etc.) provides a different link style.
- </para>
- </listitem>
- <listitem>
- <para>
- MESSAGE Selectors
-
- <programlisting>
- .portlet-msg-status {
- font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
- font-size: 10px;
- font-style: normal;
- color: #788793;
- }
- </programlisting>
-
- Usage:
- Selector used to signify the status of a current operation that takes place in the portlet (e.g.
- “saving results�?, “step 1 of 4�?).
-
- <programlisting>
- .portlet-msg-info {
- font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
- font-size: 9px;
- font-style: italic;
- color: #000;
- }
- </programlisting>
-
- Usage:
- Selector used to signify general information in a portlet (e.g. help messages).
-
- <programlisting>
- .portlet-msg-error {
- color:red;
- font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
- font-size: 9px;
- font-weight: bold;
- }
- </programlisting>
-
- Usage:
- Selector used to signify an error message in the portlet (e.g. form validation error).
-
- <programlisting>
- .portlet-msg-alert {
- font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
- font-size: 9px;
- font-weight: bold;
- color: #821717;
- }
- </programlisting>
-
- Usage:
- Selector used to style an alert that is displayed to the user.
-
- <programlisting>
- .portlet-msg-success {
- font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular;
- font-size: 9px;
- font-weight: bold;
- color: #359630;
- }
- </programlisting>
-
- Usage:
- Selector used to indicate successful completion of an action in a portlet (e.g. “save successful�?).
- </para>
- </listitem>
- <listitem>
- <para>
- SECTION Selectors
-
- <programlisting>
- .portlet-section-header {
- font-weight: bold;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 13px;
- color: #768591;
- background-color: #f7f7f7;
- }
- </programlisting>
-
- Usage:
- Table or section header.
-
- <programlisting>
- .portlet-section-body {
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 10px;
- }
- </programlisting>
-
- Usage:
- Normal text in a table cell.
-
- <programlisting>
- .portlet-section-alternate {
- background-color: #ececed;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 9px;
- }
- </programlisting>
-
- Usage:
- Used to style background color and text in every other table row.
-
- <programlisting>
- .portlet-section-selected {
- background-color: #89AEC6;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 9px;
- }
- </programlisting>
-
- Usage:
- Used to style background and font properties in a selected cell range.
-
- <programlisting>
- .portlet-section-subheader {
- font-weight: bold;
- font-size: 10px;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- color: #000;
- }
- </programlisting>
-
- Usage:
- Used to style a subheading within a table/section that gets rendered in a portlet.
-
- <programlisting>
- .portlet-section-footer {
- font-family: Verdana, Arial, Helvetica, sans-serif;
- background-color: #f7f7f7;
- font-size: 8px;
- }
- </programlisting>
-
- Usage:
- Used to style footer area of a section/table that gets rendered in a portlet.
-
- <programlisting>
- .portlet-section-text {}
- </programlisting>
-
- Usage:
- Not currently used. Text that belongs to a section but does not fall in one of the other categories.
- This selector can also be modified to provide styled text that can be used in all sections that are
- rendered within a portlet.
- </para>
- </listitem>
- <listitem>
- <para>
- MENU Selectors
-
- <programlisting>
- .portlet-menu {}
- </programlisting>
-
- Usage:
- Not currently used. General menu settings such as background color, margins, etc.
-
- <programlisting>
- .portlet-menu-item {
- color: #242424;
- text-decoration: none;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 9px;
- }
- </programlisting>
-
- Usage:
- Not currently used. Normal, unselected menu item.
-
- <programlisting>
- .portlet-menu-item:hover {
- color: #5699B7;
- text-decoration: none;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 9px;
- }
- </programlisting>
-
- Usage:
- Not currently used. Used to style hover effect on a normal, unselected menu item.
-
- <programlisting>
- .portlet-menu-item-selected {}
- </programlisting>
-
- Usage:
- Not currently used. Applies to selected menu items.
-
- <programlisting>
- .portlet-menu-item-selected:hover {
-
- }
- </programlisting>
-
- Usage:
- Not currently used. Selector styles the hover effect on a selected menu item.
-
- <programlisting>
- .portlet-menu-cascade-item {}
- </programlisting>
-
- Usage:
- Not currently used. Normal, unselected menu item that has sub-menus.
-
- <programlisting>
- .portlet-menu-cascade-item-selected {}
- </programlisting>
-
- Usage:
- Not currently used. Selected sub-menu item.
-
- <programlisting>
- .portlet-menu-description {}
- </programlisting>
-
- Usage:
- Not currently used. Descriptive text for the menu (e.g. in a help context below the menu).
-
- <programlisting>
- .portlet-menu-caption {}
- </programlisting>
-
- Usage:
- Not currently used. Selector used to style menu captions.
- </para>
- </listitem>
- <listitem>
- <para>
- WSRP Selectors
-
- <programlisting>
- .portlet-horizontal-separator {}
- </programlisting>
-
- Usage:
- Not currently used. A separator bar similar to a horizontal rule, but with styling matching the page.
-
- <programlisting>
- .portlet-nestedTitle-bar {}
- </programlisting>
-
- Usage:
- Not currently used. Allows portlets to mimic the title bar when nesting something.
-
- <programlisting>
- .portlet-nestedTitle {}
- </programlisting>
-
- Usage:
- Not currently used. Allows portlets to match the textual character of the title on the title bar.
-
- <programlisting>
- .portlet-tab {}
- </programlisting>
-
- Usage:
- Not currently used. Support portlets having tabs in the same style as the page or other portlets.
-
- <programlisting>
- .portlet-tab-active {}
- </programlisting>
-
- Usage:
- Not currently used. Highlight the tab currently being shown.
-
- <programlisting>
- .portlet-tab-selected {}
- </programlisting>
-
- Usage:
- Not currently used. Highlight the selected tab (not yet active).
-
- <programlisting>
- .portlet-tab-disabled {}
- </programlisting>
-
- Usage:
- Not currently used. A tab which can not be currently activated.
-
- <programlisting>
- .portlet-tab-area {}
- </programlisting>
-
- Usage:
- Not currently used. Top level style for the content of a tab.
- </para>
- </listitem>
- </itemizedlist>
- </para>
- </sect1>
-</preface>
\ No newline at end of file
Modified: docs/trunk/referenceGuide/en/modules/themeandlayouts.xml
===================================================================
--- docs/trunk/referenceGuide/en/modules/themeandlayouts.xml 2007-04-26 11:27:50 UTC (rev 7066)
+++ docs/trunk/referenceGuide/en/modules/themeandlayouts.xml 2007-04-26 12:08:39 UTC (rev 7067)
@@ -27,7 +27,7 @@
portlets. Themes, on the other hand, are responsible to style and enhance this markup.
</para>
<para>In JBoss Portal, layouts are implemented as a JSP or a Servlet. Themes are implemeted
- using CSS Style sheets, java script and images. The binding elemement between layouts and
+ using CSS Style sheets, javascript and images. The binding elemement between layouts and
themes are the class and id attributes of the rendered markup.
</para>
<para>JBoss Portal has the concept of regions on a page. When a page is defined, and portlet
@@ -642,7 +642,7 @@
and feel of the portal response. Through clean separation of markup and styles a much
more flexible and powerfull approach to theming portals is possible. While this approach
is not enforced, it is strongly encouraged. If you follow the definitions of the
- ThemeStyleGuide (see later), it is not necessary to change the layout or the strategy,
+ Theme Style Guide (see later), it is not necessary to change the layout or the strategy,
or the RenderSet to achieve very different look and feels for the portal. All you need
to change is the theme. Since the theme has no binary dependencies, it is very simple to
swapt it, or change individual items of it. No compile or redeploy is necessary. Themes
@@ -816,7 +816,7 @@
</sect2>
<sect2>
<title>How to write your own Theme</title>
- <para>Ask your favorite web designer and/or consult the ThemeStyleGuide in this document
+ <para>Ask your favorite web designer and/or consult the Theme Style Guide in this document
;)
</para>
</sect2>
@@ -2179,4 +2179,68 @@
</para>
</sect2>
</sect1>
+ <sect1>
+ <title>Additional Ajax selectors</title>
+ <para>Since 2.6 JBoss Portal has ajax features. Those features introduce a couple of
+ CSS selectors that enables further customization of the visual look and feel. Indeed by default
+ those CSS styles are provided by ajaxified layouts but it may not fit with some themes. It is possible
+ to redefine them in the stylesheet of the themes.</para>
+ <itemizedlist>
+ <listitem>
+ <programlisting>
+ .dyna-region {}
+ </programlisting>
+
+ Usage:
+ Not currently used. Denotes a dynamic region which can be subject to ajax capabilities.
+ </listitem>
+ <listitem>
+ <programlisting>
+ .dyna-window {}
+ </programlisting>
+
+ Usage:
+ Not currently used. Denotes a dynamic window which can be subject to ajax capabilities.
+ </listitem>
+ <listitem>
+ <programlisting>
+ .dyna-decoration {}
+ </programlisting>
+
+ Usage:
+ Not currently used. Denotes a dynamic decorator which can be subject to ajax capabilities.
+ </listitem>
+ <listitem>
+ <programlisting>
+ .dyna-portlet {}
+ </programlisting>
+
+ Usage:
+ Not currently used. Denotes a dynamic content which can be subject to ajax capabilities.
+ </listitem>
+ <listitem>
+ <programlisting>
+ .dnd-handle {
+ cursor: move;
+ }
+ </programlisting>
+
+ Usage:
+ Denotes the handle offered by draggable windows. By default it changes the mouse shape to indicate
+ to the user that his mouse is hovering a draggable window.
+ </listitem>
+ <listitem>
+ <programlisting>
+ .dnd-droppable {
+ border: red 1px dashed;
+ background-color: Transparent;
+ }
+ </programlisting>
+
+ Usage:
+ Denotes a zone where a user can drop a window during drag and drop operations. This selector is added
+ and removed dynamically at runtime by the ajax framework and is not present in the generated markup.
+ </listitem>
+ </itemizedlist>
+ </sect1>
</chapter>
17 years, 1 month