[jboss-svn-commits] JBoss Portal SVN: r5215 - in trunk: core/src/bin/portal-core-war/layouts/generic core/src/bin/portal-core-war/themes/industrial core/src/bin/portal-core-war/themes/maple core/src/bin/portal-core-war/themes/mission-critical core/src/bin/portal-core-war/themes/phalanx core/src/bin/portal-core-war/themes/renaissance theme/src/bin/portal-ajax-war/js/portal theme/src/main/org/jboss/portal/theme/impl/render/dynamic theme/src/main/org/jboss/portal/theme/render/region

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sat Sep 16 21:08:15 EDT 2006


Author: roy.russo at jboss.com
Date: 2006-09-16 21:08:12 -0400 (Sat, 16 Sep 2006)
New Revision: 5215

Modified:
   trunk/core/src/bin/portal-core-war/layouts/generic/index.jsp
   trunk/core/src/bin/portal-core-war/themes/industrial/portal_style.css
   trunk/core/src/bin/portal-core-war/themes/maple/portal_style.css
   trunk/core/src/bin/portal-core-war/themes/mission-critical/portal_style.css
   trunk/core/src/bin/portal-core-war/themes/phalanx/portal_style.css
   trunk/core/src/bin/portal-core-war/themes/renaissance/portal_style.css
   trunk/theme/src/bin/portal-ajax-war/js/portal/event.js
   trunk/theme/src/main/org/jboss/portal/theme/impl/render/dynamic/DynaDecorationRenderer.java
   trunk/theme/src/main/org/jboss/portal/theme/impl/render/dynamic/DynaPortletRenderer.java
   trunk/theme/src/main/org/jboss/portal/theme/impl/render/dynamic/DynaWindowRenderer.java
   trunk/theme/src/main/org/jboss/portal/theme/render/region/AJAXFooter.java
   trunk/theme/src/main/org/jboss/portal/theme/render/region/AJAXScripts.java
Log:
JBPORTAL-1040
- added handles on title bars
- added content handles on emptyrenderer types
- added outline of region when onDragOver, even on empty containers.


Modified: trunk/core/src/bin/portal-core-war/layouts/generic/index.jsp
===================================================================
--- trunk/core/src/bin/portal-core-war/layouts/generic/index.jsp	2006-09-16 05:38:48 UTC (rev 5214)
+++ trunk/core/src/bin/portal-core-war/layouts/generic/index.jsp	2006-09-17 01:08:12 UTC (rev 5215)
@@ -39,16 +39,18 @@
             <!-- 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 id="footer-container" class="portal-copyright">Powered by <a class="portal-copyright"
-                                                                              href="http://www.jboss.com/products/jbossportal">JBoss
-               Portal</a><br/>
-               <span id="ThemeBy"></span>
-            </div>
          </div>
       </div>
    </div>
 </div>
+
+<!-- TODO: Fix the auto jump in this tag -->
+<!-- <div id="footer-container" class="portal-copyright">Powered by
+<a class="portal-copyright" href="http://www.jboss.com/products/jbossportal">JBoss Portal</a><br/>
+</div>
+-->
+
 <p:region regionName='AJAXFooter' regionID='AJAXFooter'/>
+
 </body>
 </html>

Modified: trunk/core/src/bin/portal-core-war/themes/industrial/portal_style.css
===================================================================
--- trunk/core/src/bin/portal-core-war/themes/industrial/portal_style.css	2006-09-16 05:38:48 UTC (rev 5214)
+++ trunk/core/src/bin/portal-core-war/themes/industrial/portal_style.css	2006-09-17 01:08:12 UTC (rev 5215)
@@ -167,6 +167,7 @@
       margin: 0px;
       padding: 0px;
       min-width: 250px;
+      height: 300px;
    }
 
    #regionB {
@@ -177,6 +178,7 @@
       margin: 0 0 0 30%;
       padding: 0;
       width: 69%;
+      height: 300px;
 
       /* test to add 3rd region in layout...
      width: 40%;
@@ -189,6 +191,7 @@
      width: 27%;
      float: left;*/
       display: none;
+      height: 300px;
    }
 
    /* give a maximized portlet more space */
@@ -953,4 +956,16 @@
 
    /* Top level style for the content of a tab. */
    .portlet-tab-area {
-   }
\ No newline at end of file
+   }
+
+   /*****************
+   * AJAX Selectors *
+   *****************/
+
+.handle {
+   cursor: move;
+}
+
+.dragover {
+   border: 1px dashed green;
+}

Modified: trunk/core/src/bin/portal-core-war/themes/maple/portal_style.css
===================================================================
--- trunk/core/src/bin/portal-core-war/themes/maple/portal_style.css	2006-09-16 05:38:48 UTC (rev 5214)
+++ trunk/core/src/bin/portal-core-war/themes/maple/portal_style.css	2006-09-17 01:08:12 UTC (rev 5215)
@@ -179,6 +179,7 @@
    margin: 0px;
    padding: 0px;
    min-width: 250px;
+   height: 300px;
 }
 
 #regionB {
@@ -190,6 +191,7 @@
    padding: 0px; /* test to add 3rd region in layout...*/
    width: 68.5%;
    float: left;
+   height: 300px;
 }
 
 #regionC {
@@ -199,6 +201,7 @@
    width: 28%;
    float: left; /*hide 3rd region*/
    display: none;
+   height: 300px;
 }
 
 #footer-container {
@@ -968,6 +971,19 @@
 
 }
 
+   /*****************
+   * AJAX Selectors *
+   *****************/
+
+.handle {
+   cursor: move;
+}
+
+.dragover {
+   border: 1px dashed green;
+}
+
+
    /****************** Not sure about the following selectors:
 
    PortletHeaderColor

Modified: trunk/core/src/bin/portal-core-war/themes/mission-critical/portal_style.css
===================================================================
--- trunk/core/src/bin/portal-core-war/themes/mission-critical/portal_style.css	2006-09-16 05:38:48 UTC (rev 5214)
+++ trunk/core/src/bin/portal-core-war/themes/mission-critical/portal_style.css	2006-09-17 01:08:12 UTC (rev 5215)
@@ -156,6 +156,7 @@
       margin: 0px;
       padding: 0px;
       min-width: 250px;
+      height: 300px;
    }
 
    #regionB {
@@ -166,6 +167,7 @@
       margin: 0 0 0 30%;
       padding: 0;
       width: 69%;
+      height: 300px;
 
       /* test to add 3rd region in layout...
      width: 40%;
@@ -178,6 +180,7 @@
      width: 27%;
      float: left; */
       display: none;
+      height: 300px;
    }
 
    /* give a maximized portlet more space */
@@ -1054,3 +1057,15 @@
    /* Top level style for the content of a tab. */
    .portlet-tab-area {
    }
+
+   /*****************
+   * AJAX Selectors *
+   *****************/
+
+.handle {
+   cursor: move;
+}
+
+.dragover {
+   border: 1px dashed green;
+}

Modified: trunk/core/src/bin/portal-core-war/themes/phalanx/portal_style.css
===================================================================
--- trunk/core/src/bin/portal-core-war/themes/phalanx/portal_style.css	2006-09-16 05:38:48 UTC (rev 5214)
+++ trunk/core/src/bin/portal-core-war/themes/phalanx/portal_style.css	2006-09-17 01:08:12 UTC (rev 5215)
@@ -184,6 +184,7 @@
    margin: 0px;
    padding: 0px;
    min-width: 250px;
+   height: 300px;
 }
 
 #regionB {
@@ -195,6 +196,7 @@
    padding: 0px; /* test to add 3rd region in layout...*/
    width: 67%;
    float: left;
+   height: 300px;
 }
 
 #regionC {
@@ -204,6 +206,7 @@
    width: 28%;
    float: left; /*hide 3rd region*/
    display: none;
+   height: 300px;
 }
 
 #footer-container {
@@ -960,3 +963,14 @@
 .portlet-tab-area {
 }
 
+   /*****************
+   * AJAX Selectors *
+   *****************/
+
+.handle {
+   cursor: move;
+}
+
+.dragover {
+   border: 1px dashed green;
+}

Modified: trunk/core/src/bin/portal-core-war/themes/renaissance/portal_style.css
===================================================================
--- trunk/core/src/bin/portal-core-war/themes/renaissance/portal_style.css	2006-09-16 05:38:48 UTC (rev 5214)
+++ trunk/core/src/bin/portal-core-war/themes/renaissance/portal_style.css	2006-09-17 01:08:12 UTC (rev 5215)
@@ -165,6 +165,7 @@
    margin: 0px;
    padding: 0px;
    min-width: 250px;
+   height: 300px;
 }
 
 #regionB {
@@ -176,6 +177,7 @@
    padding: 0px; /* test to add 3rd region in layout...*/
    width: 67%;
    float: left;
+   height: 300px;
 }
 
 #regionC {
@@ -213,18 +215,18 @@
    visibility: hidden;
 }
 
-/***************************
-*  Primary Navigation (Tabbed Nav)  *
-*****************************/
+   /***************************
+   *  Primary Navigation (Tabbed Nav)  *
+   *****************************/
 
 UL#tabsHeader {
    margin: 0;
-   padding-left:0px;
+   padding-left: 0px;
    min-width: 550px;
 }
 
 UL#tabsHeader li {
-display: inline;
+   display: inline;
    list-style: none;
    float: left;
    margin-left: 0px;
@@ -232,14 +234,14 @@
    margin-right: 0px;
    position: relative;
    top: 0px;
-   background-image: url(images/tab_right.gif);
+   background-image: url( images/tab_right.gif );
    background-repeat: no-repeat;
    background-position: right top;
    white-space: nowrap;
 }
 
 UL#tabsHeader li:hover {
-   background-image: url(images/tab_right_hover2.gif);
+   background-image: url( images/tab_right_hover2.gif );
    background-repeat: no-repeat;
    background-position: right top;
    white-space: nowrap;
@@ -247,16 +249,16 @@
 
 /* hover selectors for main header tabs */
 UL#tabsHeader li.hoverOn {
-   background-image: url(images/tab_right_hover2.gif);
+   background-image: url( images/tab_right_hover2.gif );
    background-repeat: no-repeat;
    background-position: right top;
    white-space: nowrap;
 }
 
 UL#tabsHeader li.hoverOff {
-   background-image: url(images/tab_right.gif);
+   background-image: url( images/tab_right.gif );
    background-repeat: no-repeat;
-   background-position: top right ;
+   background-position: top right;
    white-space: nowrap;
 }
 
@@ -265,11 +267,10 @@
    float: left;
    text-decoration: none;
    font: 11px / normal Verdana, Arial, Helvetica, Sans-Serif, sans-serif;
-   font-weight:bold;
+   font-weight: bold;
    color: #8a8a8a;
    line-height: 22px;
-   padding: 5px 15px 3px 15px;
-   /*background-image: url(../images/tab_left.gif);*/
+   padding: 5px 15px 3px 15px; /*background-image: url(../images/tab_left.gif);*/
    background-repeat: no-repeat;
    background-position: top left;
    width: 90px;
@@ -278,8 +279,7 @@
 
 UL#tabsHeader a:hover {
    text-decoration: underline;
-   color: #000000;
-   /*background-image: url(../images/tab_left_hover2.gif);*/
+   color: #000000; /*background-image: url(../images/tab_left_hover2.gif);*/
    background-repeat: no-repeat;
    background-position: top left;
    white-space: nowrap;
@@ -288,7 +288,7 @@
 UL#tabsHeader #current {
    line-height: 22px;
    background-color: #fff;
-   background-image: url(images/tab_right_current.gif);
+   background-image: url( images/tab_right_current.gif );
    background-repeat: no-repeat;
    background-position: right top;
    padding-top: -3px;
@@ -298,39 +298,36 @@
 UL#tabsHeader #current a, #current a:hover {
    font: 11px / normal Verdana, Arial, Helvetica, Sans-Serif, sans-serif;
    font-weight: bold;
-   color: #000;
-/*   background-image: url(../images/tab_left_current.gif); */
+   color: #000; /*   background-image: url(../images/tab_left_current.gif); */
    background-repeat: no-repeat;
    background-position: top left;
 }
 
 /* -------- These are new selectors for the admin and add page styles ------- */
 
-
 UL#tabsHeader #admin {
    display: inline;
-   background-image: url(images/tab_right_admin.gif);
+   background-image: url( images/tab_right_admin.gif );
    background-repeat: no-repeat;
    background-position: right top;
-padding-top: -3px;
-line-height: 22px;
+   padding-top: -3px;
+   line-height: 22px;
 }
 
 UL#tabsHeader #admin a {
    text-decoration: none;
-   color: #4386b5;
-/*   background-image: url(../images/tab_left_admin.gif);*/
+   color: #4386b5; /*   background-image: url(../images/tab_left_admin.gif);*/
    background-repeat: no-repeat;
    background-position: top left;
    white-space: nowrap;
-padding-top: -3px;
-line-height: 22px;
+   padding-top: -3px;
+   line-height: 22px;
 }
+
 UL#tabsHeader #admin a:hover {
    text-decoration: underline;
 }
 
-
 UL#tabsHeader #addpage {
    display: inline;
    background-color: none;
@@ -345,7 +342,7 @@
    color: white;
    line-height: 22px;
    background-image: none;
-   white-space:nowrap;
+   white-space: nowrap;
 }
 
 UL#tabsHeader #addpage a:hover {
@@ -369,7 +366,6 @@
 
 /* fixes IE6 win hack */
 
-
    /***************************
    *  Utility Navigation  *
    *****************************/
@@ -1053,3 +1049,14 @@
 .portlet-tab-area {
 }
 
+   /*****************
+   * AJAX Selectors *
+   *****************/
+
+.handle {
+   cursor: move;
+}
+
+.dragover {
+   border: 1px dashed green;
+}

Modified: trunk/theme/src/bin/portal-ajax-war/js/portal/event.js
===================================================================
--- trunk/theme/src/bin/portal-ajax-war/js/portal/event.js	2006-09-16 05:38:48 UTC (rev 5214)
+++ trunk/theme/src/bin/portal-ajax-war/js/portal/event.js	2006-09-17 01:08:12 UTC (rev 5215)
@@ -1,12 +1,53 @@
-Sortable.create("regionA",{dropOnEmpty:true,handle:'handle',tag:'div',containment:["regionA","regionB"],constraint:false, ghosting: false,
-onChange: function(el) {
-	//setMoved(el);
-},
-onUpdate: function (el) {
-	//moved_element = getMoved();
-	//moved_Parent = moved_element.parentNode;
-	//alert(moved_element.id + ' ' + moved_Parent.id);
-	}
-});
+/*
+* JBoss, a division of Red Hat
+* Copyright 2006, Red Hat Middleware, LLC, and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*
+* @author <a href="mailto:roy at jboss.org">Roy Russo</a>
+*/
 
-Sortable.create("regionB",{dropOnEmpty:true,handle:'handle',tag:'div',containment:["regionA","regionB"],constraint:false, ghosting: false});
+init();
+
+// initialize sortable and event updater
+function init()
+{
+   try
+   {
+      Sortable.create("regionA", {dropOnEmpty:true,handle:'handle',hoverclass:'dragover',tag:'div',containment:["regionA","regionB"],constraint:false, ghosting: false,
+         onChange: function(el)
+         {
+            //	setMoved(el);
+         },
+         onUpdate: function (el)
+         {
+            //	moved_element = getMoved();
+            //	moved_Parent = moved_element.parentNode;
+            //	alert(moved_element.id + ' ' + moved_Parent.id);
+         }
+      });
+      Sortable.create("regionB", {dropOnEmpty:true,handle:'handle',hoverclass:'dragover',tag:'div',containment:["regionA","regionB"],constraint:false, ghosting: false});
+   }
+   catch(e)
+   {
+      alert(e);
+   }
+}
+
+// protects against mem-leaks in IE/Gecko.
+//Event.observe(window, "load", init, false);

Modified: trunk/theme/src/main/org/jboss/portal/theme/impl/render/dynamic/DynaDecorationRenderer.java
===================================================================
--- trunk/theme/src/main/org/jboss/portal/theme/impl/render/dynamic/DynaDecorationRenderer.java	2006-09-16 05:38:48 UTC (rev 5214)
+++ trunk/theme/src/main/org/jboss/portal/theme/impl/render/dynamic/DynaDecorationRenderer.java	2006-09-17 01:08:12 UTC (rev 5215)
@@ -23,12 +23,23 @@
 package org.jboss.portal.theme.impl.render.dynamic;
 
 import org.jboss.logging.Logger;
+import org.jboss.portal.Mode;
+import org.jboss.portal.WindowState;
+import org.jboss.portal.theme.impl.render.empty.EmptyDecorationRenderer;
 import org.jboss.portal.theme.page.WindowContext;
 import org.jboss.portal.theme.page.WindowResult;
 import org.jboss.portal.theme.render.DecorationRenderer;
 import org.jboss.portal.theme.render.RenderContext;
 import org.jboss.portal.theme.render.RenderException;
 
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+
 /**
  * Implementation of a drag and drop decoration renderer.
  *
@@ -72,9 +83,109 @@
                       WindowContext portletContext, WindowResult result)
          throws RenderException
    {
+      log.debug("decorate " + result.getTitle());
 
-      delegate.render(renderContext, portletContext, result);
+      // we don't need a title bar on empty renderers, but we want titlebar handles on others.
+      if(!(delegate instanceof EmptyDecorationRenderer))
+      {
+         StringBuffer markup = renderContext.getMarkupFragment();
+         markup.append("<tr class=\"handle\"><td class=\"portlet-titlebar-left\"></td>");
+         markup.append("<td class=\"portlet-titlebar-center\">");
+         renderTitle(renderContext, result);
+         markup.append("<div class=\"portlet-mode-container\">");
+         renderModeAndStateLinks(renderContext, result, WindowResult.MODES_KEY);
+         renderModeAndStateLinks(renderContext, result, WindowResult.WINDOWSTATES_KEY);
 
+         markup.append("</div></td><td class=\"portlet-titlebar-right\"></td></tr>");
+      }
+      log.debug("decoration is done");
    }
 
+   private static void renderTitle(RenderContext ctx, WindowResult result)
+   {
+      ctx.getMarkupFragment().append("<div class=\"portlet-titlebar-decoration\">");
+      ctx.getMarkupFragment().append("<span  class=\"portlet-titlebar-title\">");
+      ctx.getMarkupFragment().append(result.getTitle());
+      ctx.getMarkupFragment().append("</span></div>");
+   }
+
+   private static void renderModeAndStateLinks(RenderContext ctx, WindowResult result, String selector)
+   {
+      log.debug("render " + selector + "s");
+      Collection modesOrStates = result.getTriggerableActions(selector);
+      if(modesOrStates == null)
+      {
+         return;
+      }
+
+      if(modesOrStates instanceof List)
+      {
+         List list = (List) modesOrStates;
+         Collections.sort(list, COMPARATOR);
+         modesOrStates = list;
+      }
+
+      for(Iterator i = modesOrStates.iterator(); i.hasNext();)
+      {
+         WindowResult.Action action = (WindowResult.Action) i.next();
+         if(action.isEnabled())
+         {
+            log.debug("action is enabled: " + action.getName());
+            ctx.getMarkupFragment().append("<div class=\"portlet-mode-").append(action.getName());
+            ctx.getMarkupFragment().append("\" onClick=\"location.href='").append(action.getURL()).append("';\" title=\"");
+            ctx.getMarkupFragment().append(action.getName()).append("\"></div>");
+         }
+      }
+   }
+
+   private static final Comparator COMPARATOR = new ModeAndStateComparator();
+
+   private static class ModeAndStateComparator implements Comparator
+   {
+      private static final Map modeOrState2Index = new HashMap();
+
+      static
+      {
+         modeOrState2Index.put(Mode.EDIT, new Integer(98));
+         modeOrState2Index.put(Mode.HELP, new Integer(99));
+         modeOrState2Index.put(Mode.VIEW, new Integer(100));
+         modeOrState2Index.put(WindowState.MINIMIZED, new Integer(198));
+         modeOrState2Index.put(WindowState.NORMAL, new Integer(199));
+         modeOrState2Index.put(WindowState.MAXIMIZED, new Integer(200));
+      }
+
+      private static int lastModeIndex = 1;
+      private static int lastStateIndex = 101;
+
+      public int compare(Object o1, Object o2)
+      {
+         WindowResult.Action action1 = (WindowResult.Action) o1;
+         WindowResult.Action action2 = (WindowResult.Action) o2;
+
+         Object origin1 = action1.getOrigin();
+         Object origin2 = action2.getOrigin();
+
+         if(origin1.equals(origin2))
+         {
+            return 0;
+         }
+
+         int index1 = getIndexFor(origin1);
+         int index2 = getIndexFor(origin2);
+
+         return index1 - index2;
+      }
+
+      private int getIndexFor(Object origin)
+      {
+         Integer index = (Integer) modeOrState2Index.get(origin);
+         if(index == null)
+         {
+            index = (origin instanceof Mode) ? new Integer(lastModeIndex++) : new Integer(lastStateIndex++);
+            modeOrState2Index.put(origin, index);
+         }
+         return index.intValue();
+      }
+   }
+
 }
\ No newline at end of file

Modified: trunk/theme/src/main/org/jboss/portal/theme/impl/render/dynamic/DynaPortletRenderer.java
===================================================================
--- trunk/theme/src/main/org/jboss/portal/theme/impl/render/dynamic/DynaPortletRenderer.java	2006-09-16 05:38:48 UTC (rev 5214)
+++ trunk/theme/src/main/org/jboss/portal/theme/impl/render/dynamic/DynaPortletRenderer.java	2006-09-17 01:08:12 UTC (rev 5215)
@@ -22,6 +22,8 @@
 
 package org.jboss.portal.theme.impl.render.dynamic;
 
+import org.jboss.portal.theme.impl.render.empty.EmptyDecorationRenderer;
+import org.jboss.portal.theme.impl.render.empty.EmptyPortletRenderer;
 import org.jboss.portal.theme.page.WindowContext;
 import org.jboss.portal.theme.page.WindowResult;
 import org.jboss.portal.theme.render.PortletRenderer;
@@ -42,7 +44,7 @@
    private PortletRenderer delegate;
 
    public DynaPortletRenderer(PortletRenderer portletRenderer) throws InstantiationException,
-                                       IllegalAccessException, ClassNotFoundException
+                                                                      IllegalAccessException, ClassNotFoundException
    {
       super();
       delegate = portletRenderer;
@@ -54,9 +56,16 @@
    public void render(RenderContext renderContext, WindowContext state,
                       WindowResult result) throws RenderException
    {
-
-      delegate.render(renderContext, state, result);
-
+      if(delegate instanceof EmptyPortletRenderer)
+      {
+         renderContext.getMarkupFragment().append("<span class=\"handle\">");
+         delegate.render(renderContext, state, result);
+         renderContext.getMarkupFragment().append("</span>");
+      }
+      else
+      {
+         delegate.render(renderContext, state, result);
+      }
    }
 
    /**

Modified: trunk/theme/src/main/org/jboss/portal/theme/impl/render/dynamic/DynaWindowRenderer.java
===================================================================
--- trunk/theme/src/main/org/jboss/portal/theme/impl/render/dynamic/DynaWindowRenderer.java	2006-09-16 05:38:48 UTC (rev 5214)
+++ trunk/theme/src/main/org/jboss/portal/theme/impl/render/dynamic/DynaWindowRenderer.java	2006-09-17 01:08:12 UTC (rev 5215)
@@ -65,17 +65,9 @@
             "portlet-dnd-" + renderContext.getRegionID() + "-"
             + portletNumber, portletContext.getWindowName());
 
-      // TODO: Find a way for CSS to control the forced empty width of the region div!
-      if(portletNumber == 0 && !"navigation".equalsIgnoreCase(renderContext.getRegionID()))
-      {
-         // force space to maintain region width, even when it empty of windows.
-         renderContext.getMarkupFragment().append("&nbsp;");
-      }
+      renderContext.getMarkupFragment().append("<div id=\"portlet-dnd-").append(renderContext.getRegionID())
+            .append("-").append(portletNumber).append("\">\n");
 
-      renderContext.getMarkupFragment().append(
-            "<div id=\"portlet-dnd-" + renderContext.getRegionID() + "-"
-            + portletNumber + "\">\n");
-
       delegate.render(renderContext, portletContext, result);
 
       renderContext.getMarkupFragment().append("</div>");

Modified: trunk/theme/src/main/org/jboss/portal/theme/render/region/AJAXFooter.java
===================================================================
--- trunk/theme/src/main/org/jboss/portal/theme/render/region/AJAXFooter.java	2006-09-16 05:38:48 UTC (rev 5214)
+++ trunk/theme/src/main/org/jboss/portal/theme/render/region/AJAXFooter.java	2006-09-17 01:08:12 UTC (rev 5215)
@@ -23,6 +23,8 @@
 package org.jboss.portal.theme.render.region;
 
 /**
+ * Places necessary sortable and listener scripts in footer for ajax-enablement.
+ *
  * @author <a href="mailto:roy at jboss.org">Roy Russo</a>
  */
 

Modified: trunk/theme/src/main/org/jboss/portal/theme/render/region/AJAXScripts.java
===================================================================
--- trunk/theme/src/main/org/jboss/portal/theme/render/region/AJAXScripts.java	2006-09-16 05:38:48 UTC (rev 5214)
+++ trunk/theme/src/main/org/jboss/portal/theme/render/region/AJAXScripts.java	2006-09-17 01:08:12 UTC (rev 5215)
@@ -47,11 +47,12 @@
       sb.append("<script type='text/javascript' src='").append(ctx).append("/js/portal/prototype.js'></script>\n");
       sb.append("<script type='text/javascript' src='").append(ctx).append("/js/portal/scriptaculous.js'></script>\n");
       sb.append("<script type='text/javascript' src='").append(ctx).append("/js/portal/effects.js'></script>\n");
+/*
       sb.append("<script type='text/javascript' src='").append(ctx).append("/js/portal/builder.js'></script>\n");
       sb.append("<script type='text/javascript' src='").append(ctx).append("/js/portal/controls.js'></script>\n");
       sb.append("<script type='text/javascript' src='").append(ctx).append("/js/portal/slider.js'></script>\n");
+*/
       sb.append("<script type='text/javascript' src='").append(ctx).append("/js/portal/dragdrop.js'></script>\n");
-//      sb.append("<script type='text/javascript' src='").append(ctx).append("/js/portal/unittest.js'></script>\n");
       sb.append("\n\n\n");
 
       return sb.toString();




More information about the jboss-svn-commits mailing list