Return-Path: Delivered-To: apmail-jakarta-jetspeed-dev-archive@www.apache.org Received: (qmail 64560 invoked from network); 7 May 2004 02:40:39 -0000 Received: from daedalus.apache.org (HELO mail.apache.org) (208.185.179.12) by minotaur-2.apache.org with SMTP; 7 May 2004 02:40:39 -0000 Received: (qmail 12396 invoked by uid 500); 7 May 2004 02:40:22 -0000 Delivered-To: apmail-jakarta-jetspeed-dev-archive@jakarta.apache.org Received: (qmail 12137 invoked by uid 500); 7 May 2004 02:40:21 -0000 Mailing-List: contact jetspeed-dev-help@jakarta.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Help: List-Post: List-Id: "Jetspeed Developers List" Reply-To: "Jetspeed Developers List" Delivered-To: mailing list jetspeed-dev@jakarta.apache.org Received: (qmail 12122 invoked by uid 500); 7 May 2004 02:40:21 -0000 Received: (qmail 12119 invoked by uid 500); 7 May 2004 02:40:21 -0000 Received: (qmail 12115 invoked from network); 7 May 2004 02:40:21 -0000 Received: from unknown (HELO minotaur.apache.org) (209.237.227.194) by daedalus.apache.org with SMTP; 7 May 2004 02:40:21 -0000 Received: (qmail 64538 invoked by uid 1265); 7 May 2004 02:40:36 -0000 Date: 7 May 2004 02:40:36 -0000 Message-ID: <20040507024036.64537.qmail@minotaur.apache.org> From: taylor@apache.org To: jakarta-jetspeed-2-cvs@apache.org Subject: cvs commit: jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/aggregator/impl PageAggregatorImpl.java X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N taylor 2004/05/06 19:40:36 Modified: portal/src/java/org/apache/jetspeed/container/session NavigationalStateComponent.java portal/src/java/org/apache/jetspeed/velocity JetspeedPowerTool.java portal/src/java/org/apache/jetspeed/container/session/impl JetspeedNavigationalStateComponent.java portal/src/java/org/apache/jetspeed/aggregator/impl PageAggregatorImpl.java Added: portal/src/java/org/apache/jetspeed/velocity DecoratorAction.java Log: start of new feature (JS2-25): decorator actions added min, max, restore buttons implemented min, restore behavior max is not yet implemented NOTE: this code is not yet optimized (first pass) PR: Obtained from: Submitted by: Reviewed by: CVS: ---------------------------------------------------------------------- CVS: PR: CVS: If this change addresses a PR in the problem report tracking CVS: database, then enter the PR number(s) here. CVS: Obtained from: CVS: If this change has been taken from another system, such as NCSA, CVS: then name the system in this line, otherwise delete it. CVS: Submitted by: CVS: If this code has been contributed to Apache by someone else; i.e., CVS: they sent us a patch or a new module, then include their name/email CVS: address here. If this is your work then delete this line. CVS: Reviewed by: CVS: If we are doing pre-commit code reviews and someone else has CVS: reviewed your changes, include their name(s) here. CVS: If you have not had it reviewed then delete this line. Revision Changes Path 1.5 +24 -1 jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/container/session/NavigationalStateComponent.java Index: NavigationalStateComponent.java =================================================================== RCS file: /home/cvs/jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/container/session/NavigationalStateComponent.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- NavigationalStateComponent.java 4 May 2004 22:05:17 -0000 1.4 +++ NavigationalStateComponent.java 7 May 2004 02:40:36 -0000 1.5 @@ -15,6 +15,9 @@ */ package org.apache.jetspeed.container.session; +import javax.portlet.PortletMode; +import javax.portlet.WindowState; + import org.apache.jetspeed.container.url.PortalURL; import org.apache.jetspeed.request.RequestContext; @@ -92,5 +95,25 @@ * @return The window id from the key */ String getWindowIdFromKey(String key); + + /** + * Given a window state name, look up its object. + * Ensures that we always use the same objects for WindowStates + * allowing for comparison by value. + * + * @param name The string representation of the window state. + * @return The corresponding WindowState object + */ + //WindowState lookupWindowState(String name); + + /** + * Given a portlet mode name, look up its object. + * Ensures that we always use the same objects for Portlet Modes + * allowing for comparison by value. + * + * @param name The string representation of the portlet mode. + * @return The corresponding PortletMode object + */ + //PortletMode lookupPortletMode(String name); } 1.12 +64 -1 jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/velocity/JetspeedPowerTool.java Index: JetspeedPowerTool.java =================================================================== RCS file: /home/cvs/jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/velocity/JetspeedPowerTool.java,v retrieving revision 1.11 retrieving revision 1.12 diff -u -r1.11 -r1.12 --- JetspeedPowerTool.java 4 May 2004 22:05:18 -0000 1.11 +++ JetspeedPowerTool.java 7 May 2004 02:40:36 -0000 1.12 @@ -21,6 +21,7 @@ import java.util.List; import java.util.Locale; import java.util.Stack; +import java.util.Vector; import javax.portlet.PortletConfig; import javax.portlet.PortletException; @@ -50,6 +51,7 @@ import org.apache.jetspeed.om.page.Fragment; import org.apache.jetspeed.om.page.Page; import org.apache.jetspeed.request.RequestContext; +import org.apache.jetspeed.services.information.PortletURLProviderImpl; import org.apache.jetspeed.util.JetspeedObjectID; import org.apache.pluto.Constants; import org.apache.pluto.om.entity.PortletEntity; @@ -583,4 +585,65 @@ } } + private static final int ACTION_MINIMIZE = 0; + private static final int ACTION_MAXIMIZE = 1; + private static final int ACTION_NORMAL = 2; + private static final int ACTION_VIEW = 3; + private static final int ACTION_EDIT = 4; + private static final int ACTION_HELP = 5; + + private static final String ACTION_STRINGS[] = + { + "minimize", "maximize", "restore", "view", "edit", "help" + }; + + public List getDecoratorActions() + { + List actions = new Vector(); + WindowState state = getWindowState(); + String s = state.toString(); + if (s.equals(WindowState.NORMAL.toString())) + { + actions.add(createAction(ACTION_MINIMIZE)); + actions.add(createAction(ACTION_MAXIMIZE)); + } + else if (s.equals(WindowState.MAXIMIZED.toString())) + { + actions.add(createAction(ACTION_MINIMIZE)); + actions.add(createAction(ACTION_NORMAL)); + } + else // minimized + { + actions.add(createAction(ACTION_MAXIMIZE)); + actions.add(createAction(ACTION_NORMAL)); + } + return actions; + } + + public DecoratorAction createAction(int kind) + { + DecoratorAction action = new DecoratorAction(ACTION_STRINGS[kind], ACTION_STRINGS[kind], "content/images/" + ACTION_STRINGS[kind] + ".gif"); + PortletEntity entity = getCurrentPortletEntity(); + + // TODO: use a factory to create this object + PortletURLProviderImpl url = new PortletURLProviderImpl(Jetspeed.getCurrentRequestContext(), + windowAccess.getPortletWindow(getCurrentFragment())); + switch (kind) + { + case ACTION_MAXIMIZE: + url.setWindowState(WindowState.MAXIMIZED); + break; + case ACTION_MINIMIZE: + url.setWindowState(WindowState.MINIMIZED); + break; + case ACTION_NORMAL: + url.setWindowState(WindowState.NORMAL); + break; + } + + action.setAction(url.toString()); + return action; + + } + } 1.1 jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/velocity/DecoratorAction.java Index: DecoratorAction.java =================================================================== /* * Copyright 2000-2001,2004 The Apache Software Foundation. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.apache.jetspeed.velocity; /** * DecoratorAction * * @author David Sean Taylor * @version $Id: DecoratorAction.java,v 1.1 2004/05/07 02:40:36 taylor Exp $ */ public class DecoratorAction { String name = null; String link = null; String alt = null; String action = null; /** * Constructor * * @param name Name of the action * @param alt Alternative text description (localized) */ public DecoratorAction(String name, String alt, String link) { this.name = name; this.alt = alt; this.link = link; } public String getName() { return this.name; } public String getLink() { return this.link; } public void setLink(String link) { this.link = link; } public String getAlt() { return this.alt; } public String getAction() { return this.action; } public void setAction(String action) { this.action = action; } } 1.6 +2 -1 jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/container/session/impl/JetspeedNavigationalStateComponent.java Index: JetspeedNavigationalStateComponent.java =================================================================== RCS file: /home/cvs/jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/container/session/impl/JetspeedNavigationalStateComponent.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- JetspeedNavigationalStateComponent.java 4 May 2004 22:05:17 -0000 1.5 +++ JetspeedNavigationalStateComponent.java 7 May 2004 02:40:36 -0000 1.6 @@ -199,4 +199,5 @@ return null; return tokenizer.nextToken(); } + } 1.2 +10 -5 jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/aggregator/impl/PageAggregatorImpl.java Index: PageAggregatorImpl.java =================================================================== RCS file: /home/cvs/jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/aggregator/impl/PageAggregatorImpl.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- PageAggregatorImpl.java 17 Mar 2004 22:19:53 -0000 1.1 +++ PageAggregatorImpl.java 7 May 2004 02:40:36 -0000 1.2 @@ -105,8 +105,12 @@ { layoutDecorator = page.getDefaultDecorator(currentFragment.getType()); } - + + /////////////////////////////////////////////////////////////////////////////////////////////// //TODO: Remove hard coding of locations and use CM + TL + // DST: Im going to encapsulate this into a class, which can be accessed by + // the PowerTool when aggregating content, and make sure to modify the search path + // according to the current decorator. Assigned issue to JiRa JS2-24 List contentPathes = (List) context.getSessionAttribute(ContentFilter.SESSION_CONTENT_PATH_ATTR); if(contentPathes == null) @@ -119,15 +123,16 @@ { // define the lookup order contentPathes.add(currentFragment.getType()+"/html/"+layoutDecorator); - contentPathes.add("portlet/html"); + contentPathes.add("portlet/html/jetspeed"); + contentPathes.add("portlet/html"); contentPathes.add("generic/html"); contentPathes.add("/html"); } else { contentPathes.set(0, currentFragment.getType()+"/html/"+layoutDecorator); - } - + } + /////////////////////////////////////////////////////////////////////////////////////////////// if (checkAccess(context,(currentFragment.getAcl()!=null)?currentFragment.getAcl():acl, "render")) { --------------------------------------------------------------------- To unsubscribe, e-mail: jetspeed-dev-unsubscribe@jakarta.apache.org For additional commands, e-mail: jetspeed-dev-help@jakarta.apache.org