David/Scott:

Attached are patches to the jetspeed layout decorator to enable tab navigation for pages, (folder navigation remains as links). This is based off of a recent CVS HEAD that includes Scott's navigation work. I tried to follow the usage of CSS styles established with the portlet decorators. Let me know how it looks!

Steps to patch:

1. move /portal/src/webapp/WEB-INF/decorations/portlet/html/jetspeed/images/tab*.gif to /portal/src/webapp/WEB-INF/decorations/layout/html/jetspeed/images.
2. apply decorator-top.vm.patch to /portal/src/webapp/WEB-INF/decorations/layout/html/jetspeed/decorator-top.vm
3. apply styles.css.patch to /portal/src/webapp/WEB-INF/decorations/layout/html/jetspeed/css/styles.css


That's it!

Randy Watler


--- decorator-top.vm.orig       2004-08-24 15:33:26.000000000 -0600
+++ decorator-top.vm    2004-09-01 15:12:11.000000000 -0600
@@ -34,9 +34,11 @@
 </ol>
 *#
 
+#set($myF = $jetspeed.currentFragment)
 
 <!--  BEGIN: layout/html/jetspeed/decorator.vm -->
 
+<div id="layout-${myF.id}" class="layout-Jetspeed" >
 <p>
 <img src="content/images/jetspeed-logo.gif" alt="Jetspeed 2 Logo" border="0">
 </p>
@@ -55,12 +57,34 @@
        #foreach($childFolder in $folder.folders.iterator())
          <a 
href="${appRoot}/portal${childFolder.name}">$childFolder.metaData.getTitle($preferedLocal)</a>
 &nbsp;              
        #end
-       
+
+    #* 
        #foreach($childPage in $folder.pages.iterator())                
                <a 
href="${appRoot}/portal${childPage.id}">$childPage.getTitle($preferedLocal)</a> &nbsp;
        #end
+    *#
+    <p>
+        <table border="0" cellpadding="0" cellspacing="0" width="100%">
+            <tr>
+                #foreach($childPage in $folder.pages.iterator())
+                #set($tabName = $childPage.getTitle($preferedLocal))
+                #if($jetspeed.page == $childPage)
+                <td class="LTabLeft" style="font-size:1pt;" nowrap="true">&nbsp;</td>
+                <td class="LTab" align="center" valign="middle" 
nowrap="true">${tabName}</td>
+                <td class="LTabRight" style="font-size:1pt;" nowrap="true">&nbsp;</td>
+                #else
+                <td class="LTabLeftLow" style="font-size:1pt;" 
nowrap="true">&nbsp;</td>
+                <td class="LTabLow" align="center" valign="middle" nowrap="true"><a 
href="${appRoot}/portal${childPage.id}">${tabName}</a></td>
+                <td class="LTabRightLow" style="font-size:1pt;" 
nowrap="true">&nbsp;</td>
+                #end
+                #end
+            </tr>
+        </table>
+    </p>
        
 </p>
+</div>
+
 ## $jetspeed.include($jetspeed.currentFragment)
 
 <!--  END: layout/html/jetspeed/decorator.vm -->
--- styles.css.orig     2004-07-20 15:36:32.000000000 -0600
+++ styles.css  2004-09-01 14:34:08.000000000 -0600
@@ -18,3 +18,49 @@
 BODY.layout-Jetspeed  {
 
 }
+
+.layout-Jetspeed .LTabLeftLow
+{
+       /**
+       Needs to specify the width of image used
+       otherwise it won't show !
+       **/
+       width:10px;
+    
+       /** Always use relative path ! **/
+       background:url(content/jetspeed/images/tableft_low.gif);
+}
+
+.layout-Jetspeed .LTabLow
+{
+       /**
+       Specify the height of the image used
+       else it will use the text height        
+       **/
+       height:25px;    
+       background:url(content/jetspeed/images/tabmiddle_low.gif);
+}
+ 
+.layout-Jetspeed .LTabRightLow
+{
+       width:10px;
+       background:url(content/jetspeed/images/tabright_low.gif);
+}
+
+.layout-Jetspeed .LTabLeft
+{
+       width:10px;
+       background:url(content/jetspeed/images/tableft.gif);
+}
+
+.layout-Jetspeed .LTab
+{
+       height:25px;    
+       background:url(content/jetspeed/images/tabmiddle.gif);
+}
+ 
+.layout-Jetspeed .LTabRight
+{
+       width:10px;
+       background:url(content/jetspeed/images/tabright.gif);
+}

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

Reply via email to