Author: vjrj Date: 2008-11-19 18:55:46 +0100 (Wed, 19 Nov 2008) New Revision: 956 Added: trunk/img/kune-anim-16.gif trunk/img/kune-anim-16.xcf trunk/src/main/java/org/ourproject/kune/app/public/images/kune-anim-16.gif trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionBuddiesSummaryToolbar.java trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionBuddiesSummaryToolbarPresenter.java trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionCntCtxToolbarPanel.java trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionGroupSummaryToolbar.java trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionGroupSummaryToolbarPresenter.java trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionParticipationSummaryToolbarPresenter.java trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionParticipationToolbar.java trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/ContextPropEditor.java trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/ContextPropEditorPanel.java trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/ContextPropEditorPresenter.java trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/ContextPropEditorView.java Removed: trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocContextPropEditor.java trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocContextPropEditorPanel.java trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocContextPropEditorPresenter.java trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocContextPropEditorView.java trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditor.java trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditorPanel.java trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditorPresenter.java trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditorView.java Modified: trunk/img/kune-anim.gif trunk/img/kune-anim.xcf trunk/src/main/java/org/ourproject/kune/app/public/Kune.html trunk/src/main/java/org/ourproject/kune/app/public/images/kune-anim.gif trunk/src/main/java/org/ourproject/kune/chat/client/ctx/ChatContextPresenter.java trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientActions.java trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientModule.java trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocumentContextPresenter.java trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionDescriptor.java trunk/src/main/java/org/ourproject/kune/platf/client/actions/BeforeActionCollection.java trunk/src/main/java/org/ourproject/kune/platf/client/actions/GroupActionRegistry.java trunk/src/main/java/org/ourproject/kune/platf/client/actions/UserActionRegistry.java trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbar.java trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbarPanel.java trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbarPresenter.java trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbarView.java trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneModule.java trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneWorkspaceModule.java trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridMenuPanel.java trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/FoldableContextPresenter.java trunk/src/main/java/org/ourproject/kune/workspace/client/skel/SummaryPanel.java trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPanel.java trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/GroupMembersSummaryPanel.java trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/GroupMembersSummaryPresenter.java trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/ParticipationSummaryPanel.java trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/ParticipationSummaryPresenter.java trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/SocialNetworkPresenter.java Log: Incomplete - task UI tools & workspace refactorization Incomplete - task Use of new ActionDescriptionClass in SocialNetwork Added: trunk/img/kune-anim-16.gif =================================================================== (Binary files differ) Property changes on: trunk/img/kune-anim-16.gif ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/img/kune-anim-16.xcf =================================================================== (Binary files differ) Property changes on: trunk/img/kune-anim-16.xcf ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Modified: trunk/img/kune-anim.gif =================================================================== (Binary files differ) Modified: trunk/img/kune-anim.xcf =================================================================== (Binary files differ) Modified: trunk/src/main/java/org/ourproject/kune/app/public/Kune.html =================================================================== --- trunk/src/main/java/org/ourproject/kune/app/public/Kune.html 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/app/public/Kune.html 2008-11-19 17:55:46 UTC (rev 956) @@ -33,7 +33,7 @@ #kuneprogresspanel { position: absolute; top: 2px; - left: 2px; + <!-- left: 2px; --> z-index: 9998; } Added: trunk/src/main/java/org/ourproject/kune/app/public/images/kune-anim-16.gif =================================================================== (Binary files differ) Property changes on: trunk/src/main/java/org/ourproject/kune/app/public/images/kune-anim-16.gif ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Modified: trunk/src/main/java/org/ourproject/kune/app/public/images/kune-anim.gif =================================================================== (Binary files differ) Modified: trunk/src/main/java/org/ourproject/kune/chat/client/ctx/ChatContextPresenter.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/chat/client/ctx/ChatContextPresenter.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/chat/client/ctx/ChatContextPresenter.java 2008-11-19 17:55:46 UTC (rev 956) @@ -20,7 +20,6 @@ package org.ourproject.kune.chat.client.ctx; import org.ourproject.kune.chat.client.ChatClientTool; -import org.ourproject.kune.platf.client.dto.StateContainerDTO; import org.ourproject.kune.platf.client.state.StateManager; import org.ourproject.kune.workspace.client.ctxnav.ContextNavigator; import org.ourproject.kune.workspace.client.cxt.FoldableContextPresenter; @@ -33,9 +32,4 @@ final Provider<ContextNavigator> contextNavigatorProvider) { super(ChatClientTool.NAME, stateManager, contextNavigatorProvider); } - - @Override - protected void setState(final StateContainerDTO state) { - super.setState(state); - } } Modified: trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientActions.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientActions.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientActions.java 2008-11-19 17:55:46 UTC (rev 956) @@ -29,7 +29,6 @@ import static org.ourproject.kune.docs.client.DocumentClientTool.TYPE_WIKIPAGE; import org.ourproject.kune.docs.client.cnt.DocumentViewer; -import org.ourproject.kune.docs.client.ctx.DocContextPropEditor; import org.ourproject.kune.platf.client.actions.ActionEnableCondition; import org.ourproject.kune.platf.client.actions.ActionMenuItemDescriptor; import org.ourproject.kune.platf.client.actions.ActionToolbarButtonAndItemDescriptor; @@ -59,6 +58,7 @@ import org.ourproject.kune.platf.client.ui.download.FileDownloadUtils; import org.ourproject.kune.platf.client.ui.upload.FileUploader; import org.ourproject.kune.workspace.client.ctxnav.ContextNavigator; +import org.ourproject.kune.workspace.client.cxt.ContextPropEditor; import org.ourproject.kune.workspace.client.editor.TextEditor; import org.ourproject.kune.workspace.client.entitylogo.EntityLogo; import org.ourproject.kune.workspace.client.i18n.I18nUITranslationService; @@ -87,7 +87,7 @@ private final Provider<TextEditor> textEditorProvider; private final KuneErrorHandler errorHandler; private final DocumentViewer documentViewer; - private final Provider<DocContextPropEditor> contextPropEditorProvider; + private final Provider<ContextPropEditor> contextPropEditorProvider; public DocumentClientActions(final I18nUITranslationService i18n, final ContextNavigator contextNavigator, final Session session, final StateManager stateManager, @@ -96,7 +96,7 @@ final ContentActionRegistry contentActionRegistry, final ContextActionRegistry contextActionRegistry, final Provider<FileDownloadUtils> fileDownloadProvider, final EntityLogo entityLogo, final Provider<TextEditor> textEditorProvider, final KuneErrorHandler errorHandler, - final DocumentViewer documentViewer, final Provider<DocContextPropEditor> contextProvEditorProvider) { + final DocumentViewer documentViewer, final Provider<ContextPropEditor> contextProvEditorProvider) { this.i18n = i18n; this.contextNavigator = contextNavigator; this.session = session; Modified: trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientModule.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientModule.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientModule.java 2008-11-19 17:55:46 UTC (rev 956) @@ -26,10 +26,6 @@ import org.ourproject.kune.docs.client.cnt.DocumentViewerPanel; import org.ourproject.kune.docs.client.cnt.DocumentViewerPresenter; import org.ourproject.kune.docs.client.cnt.DocumentViewerView; -import org.ourproject.kune.docs.client.ctx.DocContextPropEditor; -import org.ourproject.kune.docs.client.ctx.DocContextPropEditorPanel; -import org.ourproject.kune.docs.client.ctx.DocContextPropEditorPresenter; -import org.ourproject.kune.docs.client.ctx.DocContextPropEditorView; import org.ourproject.kune.docs.client.ctx.DocumentContext; import org.ourproject.kune.docs.client.ctx.DocumentContextPresenter; import org.ourproject.kune.platf.client.actions.ContentActionRegistry; @@ -48,6 +44,10 @@ import org.ourproject.kune.platf.client.ui.download.FileDownloadUtils; import org.ourproject.kune.platf.client.ui.upload.FileUploader; import org.ourproject.kune.workspace.client.ctxnav.ContextNavigator; +import org.ourproject.kune.workspace.client.cxt.ContextPropEditor; +import org.ourproject.kune.workspace.client.cxt.ContextPropEditorPanel; +import org.ourproject.kune.workspace.client.cxt.ContextPropEditorPresenter; +import org.ourproject.kune.workspace.client.cxt.ContextPropEditorView; import org.ourproject.kune.workspace.client.editor.TextEditor; import org.ourproject.kune.workspace.client.entitylogo.EntityLogo; import org.ourproject.kune.workspace.client.i18n.I18nUITranslationService; @@ -84,17 +84,17 @@ $$(GroupServiceAsync.class), $$(FileUploader.class), $(ContentActionRegistry.class), $(ContextActionRegistry.class), $$(FileDownloadUtils.class), $(EntityLogo.class), $$(TextEditor.class), $(KuneErrorHandler.class), $(DocumentViewer.class), - $$(DocContextPropEditor.class)); + $$(ContextPropEditor.class)); } }); - register(Singleton.class, new Factory<DocContextPropEditor>(DocContextPropEditor.class) { + register(Singleton.class, new Factory<ContextPropEditor>(ContextPropEditor.class) { @Override - public DocContextPropEditor create() { - final DocContextPropEditorPresenter presenter = new DocContextPropEditorPresenter($(Session.class), + public ContextPropEditor create() { + final ContextPropEditorPresenter presenter = new ContextPropEditorPresenter($(Session.class), $(StateManager.class), $(ContentCapabilitiesRegistry.class), $$(TagsSummary.class), $$(ContentServiceAsync.class), $(EntityTitle.class), $(EntitySubTitle.class)); - final DocContextPropEditorView view = new DocContextPropEditorPanel(presenter, + final ContextPropEditorView view = new ContextPropEditorPanel(presenter, $(I18nUITranslationService.class), $(WorkspaceSkeleton.class), $$(LanguageSelector.class), $(Images.class)); presenter.init(view); @@ -106,7 +106,7 @@ @Override public DocumentContext create() { final DocumentContextPresenter presenter = new DocumentContextPresenter($(StateManager.class), - $$(ContextNavigator.class), $$(DocContextPropEditor.class)); + $$(ContextNavigator.class), $$(ContextPropEditor.class)); return presenter; } }); Deleted: trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocContextPropEditor.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocContextPropEditor.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocContextPropEditor.java 2008-11-19 17:55:46 UTC (rev 956) @@ -1,26 +0,0 @@ -/* - * - * Copyright (C) 2007-2008 The kune development team (see CREDITS for details) - * This file is part of kune. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program 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 Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - */ -package org.ourproject.kune.docs.client.ctx; - -import org.ourproject.kune.workspace.client.cxt.AbstractContextPropEditor; - - -public interface DocContextPropEditor extends AbstractContextPropEditor { -} Deleted: trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocContextPropEditorPanel.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocContextPropEditorPanel.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocContextPropEditorPanel.java 2008-11-19 17:55:46 UTC (rev 956) @@ -1,37 +0,0 @@ -/* - * - * Copyright (C) 2007-2008 The kune development team (see CREDITS for details) - * This file is part of kune. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program 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 Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - */ -package org.ourproject.kune.docs.client.ctx; - -import org.ourproject.kune.platf.client.services.I18nTranslationService; -import org.ourproject.kune.platf.client.services.Images; -import org.ourproject.kune.workspace.client.cxt.AbstractContextPropEditorPanel; -import org.ourproject.kune.workspace.client.i18n.LanguageSelector; -import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton; - -import com.calclab.suco.client.ioc.Provider; - -public class DocContextPropEditorPanel extends AbstractContextPropEditorPanel implements DocContextPropEditorView { - - public DocContextPropEditorPanel(final DocContextPropEditorPresenter presenter, final I18nTranslationService i18n, - WorkspaceSkeleton ws, Provider<LanguageSelector> langSelectorProv, Images images) { - super(presenter, i18n, ws, langSelectorProv, images); - } - -} Deleted: trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocContextPropEditorPresenter.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocContextPropEditorPresenter.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocContextPropEditorPresenter.java 2008-11-19 17:55:46 UTC (rev 956) @@ -1,42 +0,0 @@ -/* - * - * Copyright (C) 2007-2008 The kune development team (see CREDITS for details) - * This file is part of kune. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program 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 Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - */ -package org.ourproject.kune.docs.client.ctx; - -import org.ourproject.kune.platf.client.registry.ContentCapabilitiesRegistry; -import org.ourproject.kune.platf.client.rpc.ContentServiceAsync; -import org.ourproject.kune.platf.client.state.Session; -import org.ourproject.kune.platf.client.state.StateManager; -import org.ourproject.kune.workspace.client.cxt.AbstractContextPropEditorPresenter; -import org.ourproject.kune.workspace.client.tags.TagsSummary; -import org.ourproject.kune.workspace.client.title.EntitySubTitle; -import org.ourproject.kune.workspace.client.title.EntityTitle; - -import com.calclab.suco.client.ioc.Provider; - -public class DocContextPropEditorPresenter extends AbstractContextPropEditorPresenter implements DocContextPropEditor { - - public DocContextPropEditorPresenter(final Session session, final StateManager stateManager, - ContentCapabilitiesRegistry capabilitiesRegistry, final Provider<TagsSummary> tagsSummaryProvider, - final Provider<ContentServiceAsync> contentServiceProvider, final EntityTitle entityTitle, - final EntitySubTitle entitySubTitle) { - super(session, stateManager, capabilitiesRegistry, tagsSummaryProvider, contentServiceProvider, entityTitle, - entitySubTitle); - } -} Deleted: trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocContextPropEditorView.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocContextPropEditorView.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocContextPropEditorView.java 2008-11-19 17:55:46 UTC (rev 956) @@ -1,26 +0,0 @@ -/* - * - * Copyright (C) 2007-2008 The kune development team (see CREDITS for details) - * This file is part of kune. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program 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 Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - */ -package org.ourproject.kune.docs.client.ctx; - -import org.ourproject.kune.workspace.client.cxt.AbstractContextPropEditorView; - - -public interface DocContextPropEditorView extends AbstractContextPropEditorView { -} Modified: trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocumentContextPresenter.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocumentContextPresenter.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/docs/client/ctx/DocumentContextPresenter.java 2008-11-19 17:55:46 UTC (rev 956) @@ -20,36 +20,17 @@ package org.ourproject.kune.docs.client.ctx; import org.ourproject.kune.docs.client.DocumentClientTool; -import org.ourproject.kune.platf.client.dto.StateContainerDTO; -import org.ourproject.kune.platf.client.dto.StateContentDTO; import org.ourproject.kune.platf.client.state.StateManager; import org.ourproject.kune.workspace.client.ctxnav.ContextNavigator; +import org.ourproject.kune.workspace.client.cxt.ContextPropEditor; import org.ourproject.kune.workspace.client.cxt.FoldableContextPresenter; import com.calclab.suco.client.ioc.Provider; public class DocumentContextPresenter extends FoldableContextPresenter implements DocumentContext { - private final Provider<DocContextPropEditor> contextPropEditorProvider; - public DocumentContextPresenter(final StateManager stateManager, final Provider<ContextNavigator> contextNavigatorProvider, - final Provider<DocContextPropEditor> contextPropEditorProvider) { - super(DocumentClientTool.NAME, stateManager, contextNavigatorProvider); - this.contextPropEditorProvider = contextPropEditorProvider; + final Provider<ContextPropEditor> contextPropEditorProvider) { + super(DocumentClientTool.NAME, stateManager, contextNavigatorProvider, contextPropEditorProvider); } - - @Override - protected void detach() { - super.detach(); - contextPropEditorProvider.get().detach(); - contextPropEditorProvider.get().clear(); - } - - @Override - protected void setState(final StateContainerDTO state) { - super.setState(state); - if (state instanceof StateContentDTO) { - contextPropEditorProvider.get().setState((StateContentDTO) state); - } - } } Modified: trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionDescriptor.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionDescriptor.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionDescriptor.java 2008-11-19 17:55:46 UTC (rev 956) @@ -23,7 +23,6 @@ import com.calclab.suco.client.listener.Listener; -// TODO: Auto-generated Javadoc /** * The Class ActionDescriptor. */ @@ -332,5 +331,4 @@ public void setToolTip(final String toolTip) { this.toolTip = toolTip; } - } Modified: trunk/src/main/java/org/ourproject/kune/platf/client/actions/BeforeActionCollection.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/actions/BeforeActionCollection.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/BeforeActionCollection.java 2008-11-19 17:55:46 UTC (rev 956) @@ -2,10 +2,18 @@ import java.util.ArrayList; +/** + * The Class BeforeActionCollection. + */ public class BeforeActionCollection extends ArrayList<BeforeActionListener> { private static final long serialVersionUID = 1L; + /** + * Check before action listeners. + * + * @return true, if all listener returns true + */ public boolean checkBeforeAction() { for (BeforeActionListener listener : this) { if (!listener.beforeAction()) { Modified: trunk/src/main/java/org/ourproject/kune/platf/client/actions/GroupActionRegistry.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/actions/GroupActionRegistry.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/GroupActionRegistry.java 2008-11-19 17:55:46 UTC (rev 956) @@ -20,5 +20,10 @@ import org.ourproject.kune.platf.client.dto.GroupDTO; +/** + * The Class GroupActionRegistry stores actions over groups (mainly used in SN) + */ public class GroupActionRegistry extends ActionRegistry<GroupDTO> { + + public static final String GENERAL = "genActions"; } Modified: trunk/src/main/java/org/ourproject/kune/platf/client/actions/UserActionRegistry.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/actions/UserActionRegistry.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/UserActionRegistry.java 2008-11-19 17:55:46 UTC (rev 956) @@ -20,6 +20,12 @@ import org.ourproject.kune.platf.client.dto.UserSimpleDTO; +/** + * The Class UserActionRegistry. + * + * List of actions over a user (initially used for buddies actions) + * + */ public class UserActionRegistry extends ActionRegistry<UserSimpleDTO> { public static final String GENERAL = "genActions"; Added: trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionBuddiesSummaryToolbar.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionBuddiesSummaryToolbar.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionBuddiesSummaryToolbar.java 2008-11-19 17:55:46 UTC (rev 956) @@ -0,0 +1,7 @@ +package org.ourproject.kune.platf.client.actions.toolbar; + +import org.ourproject.kune.platf.client.dto.StateToken; + +public interface ActionBuddiesSummaryToolbar extends ActionToolbar<StateToken> { + +} Added: trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionBuddiesSummaryToolbarPresenter.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionBuddiesSummaryToolbarPresenter.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionBuddiesSummaryToolbarPresenter.java 2008-11-19 17:55:46 UTC (rev 956) @@ -0,0 +1,12 @@ +package org.ourproject.kune.platf.client.actions.toolbar; + +import org.ourproject.kune.platf.client.dto.StateToken; + +public class ActionBuddiesSummaryToolbarPresenter extends ActionToolbarPresenter<StateToken> implements + ActionBuddiesSummaryToolbar { + + public ActionBuddiesSummaryToolbarPresenter(ActionToolbarView<StateToken> toolbar) { + super(toolbar); + } + +} Copied: trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionCntCtxToolbarPanel.java (from rev 953, trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbarPanel.java) =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbarPanel.java 2008-11-17 10:18:11 UTC (rev 953) +++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionCntCtxToolbarPanel.java 2008-11-19 17:55:46 UTC (rev 956) @@ -0,0 +1,71 @@ +/* + * + * Copyright (C) 2007-2008 The kune development team (see CREDITS for details) + * This file is part of kune. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program 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 Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + */package org.ourproject.kune.platf.client.actions.toolbar; + +import org.ourproject.kune.platf.client.actions.ActionManager; +import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton; + +import com.calclab.suco.client.ioc.Provider; + +public class ActionCntCtxToolbarPanel<T> extends ActionToolbarPanel<T> { + + public enum Position { + content, context + } + + private final Position position; + + public ActionCntCtxToolbarPanel(final Position position, final Provider<ActionManager> actionManagerProvider, + final WorkspaceSkeleton ws) { + super(actionManagerProvider, ws); + this.position = position; + } + + public void attach() { + if (!topbar.isAttached()) { + switch (position) { + case content: + ws.getEntityWorkspace().getContentTopBar().removeAll(); + ws.getEntityWorkspace().getContentTopBar().add(topbar); + ws.getEntityWorkspace().getContentBottomBar().add(bottombar); + break; + case context: + default: + ws.getEntityWorkspace().getContextTopBar().removeAll(); + ws.getEntityWorkspace().getContextTopBar().add(topbar); + ws.getEntityWorkspace().getContextBottomBar().add(bottombar); + } + } + } + + public void detach() { + if (topbar.isAttached()) { + switch (position) { + case content: + ws.getEntityWorkspace().getContentTopBar().remove(topbar); + ws.getEntityWorkspace().getContentBottomBar().remove(bottombar); + break; + case context: + default: + ws.getEntityWorkspace().getContextTopBar().remove(topbar); + ws.getEntityWorkspace().getContextBottomBar().remove(bottombar); + } + } + } +} Added: trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionGroupSummaryToolbar.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionGroupSummaryToolbar.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionGroupSummaryToolbar.java 2008-11-19 17:55:46 UTC (rev 956) @@ -0,0 +1,7 @@ +package org.ourproject.kune.platf.client.actions.toolbar; + +import org.ourproject.kune.platf.client.dto.StateToken; + +public interface ActionGroupSummaryToolbar extends ActionToolbar<StateToken> { + +} Added: trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionGroupSummaryToolbarPresenter.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionGroupSummaryToolbarPresenter.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionGroupSummaryToolbarPresenter.java 2008-11-19 17:55:46 UTC (rev 956) @@ -0,0 +1,11 @@ +package org.ourproject.kune.platf.client.actions.toolbar; + +import org.ourproject.kune.platf.client.dto.StateToken; + +public class ActionGroupSummaryToolbarPresenter extends ActionToolbarPresenter<StateToken> implements + ActionGroupSummaryToolbar { + + public ActionGroupSummaryToolbarPresenter(ActionToolbarView<StateToken> toolbar) { + super(toolbar); + } +} Added: trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionParticipationSummaryToolbarPresenter.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionParticipationSummaryToolbarPresenter.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionParticipationSummaryToolbarPresenter.java 2008-11-19 17:55:46 UTC (rev 956) @@ -0,0 +1,12 @@ +package org.ourproject.kune.platf.client.actions.toolbar; + +import org.ourproject.kune.platf.client.dto.StateToken; + +public class ActionParticipationSummaryToolbarPresenter extends ActionToolbarPresenter<StateToken> implements + ActionParticipationToolbar { + + public ActionParticipationSummaryToolbarPresenter(ActionToolbarView<StateToken> toolbar) { + super(toolbar); + } + +} Added: trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionParticipationToolbar.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionParticipationToolbar.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionParticipationToolbar.java 2008-11-19 17:55:46 UTC (rev 956) @@ -0,0 +1,7 @@ +package org.ourproject.kune.platf.client.actions.toolbar; + +import org.ourproject.kune.platf.client.dto.StateToken; + +public interface ActionParticipationToolbar extends ActionToolbar<StateToken> { + +} Modified: trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbar.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbar.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbar.java 2008-11-19 17:55:46 UTC (rev 956) @@ -31,6 +31,8 @@ void disableMenusAndClearButtons(); + ActionToolbarView<T> getView(); + void setActions(ActionItemCollection<T> actionItemCollection); void setEnableAction(ActionToolbarDescriptor<T> action, boolean enable); Modified: trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbarPanel.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbarPanel.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbarPanel.java 2008-11-19 17:55:46 UTC (rev 956) @@ -1,22 +1,4 @@ -/* - * - * Copyright (C) 2007-2008 The kune development team (see CREDITS for details) - * This file is part of kune. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program 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 Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - */package org.ourproject.kune.platf.client.actions.toolbar; +package org.ourproject.kune.platf.client.actions.toolbar; import java.util.HashMap; @@ -46,25 +28,18 @@ public class ActionToolbarPanel<T> implements ActionToolbarView<T> { - public enum Position { - content, context - } - private final HashMap<String, Menu> toolbarMenus; private final HashMap<String, ToolbarButton> toolbarButtons; private final HashMap<String, Item> menuItems; private final Provider<ActionManager> actionManagerProvider; - private final Position position; - private final SimpleToolbar topbar; - private final SimpleToolbar bottombar; - private final WorkspaceSkeleton ws; + protected final SimpleToolbar topbar; + protected final SimpleToolbar bottombar; + protected final WorkspaceSkeleton ws; - public ActionToolbarPanel(final Position position, final Provider<ActionManager> actionManagerProvider, - final WorkspaceSkeleton ws) { + public ActionToolbarPanel(final Provider<ActionManager> actionManagerProvider, final WorkspaceSkeleton ws) { this.ws = ws; topbar = new SimpleToolbar(); bottombar = new SimpleToolbar(); - this.position = position; this.actionManagerProvider = actionManagerProvider; toolbarMenus = new HashMap<String, Menu>(); @@ -123,20 +98,6 @@ } public void attach() { - if (!topbar.isAttached()) { - switch (position) { - case content: - ws.getEntityWorkspace().getContentTopBar().removeAll(); - ws.getEntityWorkspace().getContentTopBar().add(topbar); - ws.getEntityWorkspace().getContentBottomBar().add(bottombar); - break; - case context: - default: - ws.getEntityWorkspace().getContextTopBar().removeAll(); - ws.getEntityWorkspace().getContextTopBar().add(topbar); - ws.getEntityWorkspace().getContextBottomBar().add(bottombar); - } - } } public void clear() { @@ -150,18 +111,6 @@ } public void detach() { - if (topbar.isAttached()) { - switch (position) { - case content: - ws.getEntityWorkspace().getContentTopBar().remove(topbar); - ws.getEntityWorkspace().getContentBottomBar().remove(bottombar); - break; - case context: - default: - ws.getEntityWorkspace().getContextTopBar().remove(topbar); - ws.getEntityWorkspace().getContextBottomBar().remove(bottombar); - } - } } public void disableAllMenuItems() { Modified: trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbarPresenter.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbarPresenter.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbarPresenter.java 2008-11-19 17:55:46 UTC (rev 956) @@ -52,6 +52,10 @@ view.clear(); } + public ActionToolbarView<T> getView() { + return view; + } + public void setActions(final ActionItemCollection<T> actions) { for (final ActionItem<T> actionItem : actions) { final ActionDescriptor<T> action = actionItem.getAction(); Modified: trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbarView.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbarView.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/toolbar/ActionToolbarView.java 2008-11-19 17:55:46 UTC (rev 956) @@ -18,10 +18,11 @@ * */package org.ourproject.kune.platf.client.actions.toolbar; +import org.ourproject.kune.platf.client.View; import org.ourproject.kune.platf.client.actions.ActionDescriptor; import org.ourproject.kune.platf.client.actions.ActionItem; -public interface ActionToolbarView<T> { +public interface ActionToolbarView<T> extends View { void addButtonAction(ActionItem<T> actionItem, boolean enable); Modified: trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneModule.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneModule.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneModule.java 2008-11-19 17:55:46 UTC (rev 956) @@ -24,10 +24,17 @@ import org.ourproject.kune.platf.client.actions.ContextActionRegistry; import org.ourproject.kune.platf.client.actions.GroupActionRegistry; import org.ourproject.kune.platf.client.actions.UserActionRegistry; +import org.ourproject.kune.platf.client.actions.toolbar.ActionBuddiesSummaryToolbar; +import org.ourproject.kune.platf.client.actions.toolbar.ActionBuddiesSummaryToolbarPresenter; +import org.ourproject.kune.platf.client.actions.toolbar.ActionCntCtxToolbarPanel; import org.ourproject.kune.platf.client.actions.toolbar.ActionContentToolbar; import org.ourproject.kune.platf.client.actions.toolbar.ActionContentToolbarPresenter; import org.ourproject.kune.platf.client.actions.toolbar.ActionContextToolbar; import org.ourproject.kune.platf.client.actions.toolbar.ActionContextToolbarPresenter; +import org.ourproject.kune.platf.client.actions.toolbar.ActionGroupSummaryToolbar; +import org.ourproject.kune.platf.client.actions.toolbar.ActionGroupSummaryToolbarPresenter; +import org.ourproject.kune.platf.client.actions.toolbar.ActionParticipationSummaryToolbarPresenter; +import org.ourproject.kune.platf.client.actions.toolbar.ActionParticipationToolbar; import org.ourproject.kune.platf.client.actions.toolbar.ActionToolbar; import org.ourproject.kune.platf.client.actions.toolbar.ActionToolbarPanel; import org.ourproject.kune.platf.client.actions.toolbar.ActionToolbarPresenter; @@ -357,8 +364,8 @@ register(Singleton.class, new Factory<TextEditor>(TextEditor.class) { @Override public TextEditor create() { - final ActionToolbarPanel<StateToken> contentNavigatorToolbar = new ActionToolbarPanel<StateToken>( - ActionToolbarPanel.Position.content, $$(ActionManager.class), $(WorkspaceSkeleton.class)); + final ActionCntCtxToolbarPanel<StateToken> contentNavigatorToolbar = new ActionCntCtxToolbarPanel<StateToken>( + ActionCntCtxToolbarPanel.Position.content, $$(ActionManager.class), $(WorkspaceSkeleton.class)); final ActionToolbar<StateToken> toolbar = new ActionToolbarPresenter<StateToken>( contentNavigatorToolbar); @@ -419,8 +426,8 @@ register(NoDecoration.class, new Factory<ActionContentToolbar>(ActionContentToolbar.class) { @Override public ActionContentToolbar create() { - final ActionToolbarPanel<StateToken> contentNavigatorToolbar = new ActionToolbarPanel<StateToken>( - ActionToolbarPanel.Position.content, $$(ActionManager.class), $(WorkspaceSkeleton.class)); + final ActionCntCtxToolbarPanel<StateToken> contentNavigatorToolbar = new ActionCntCtxToolbarPanel<StateToken>( + ActionCntCtxToolbarPanel.Position.content, $$(ActionManager.class), $(WorkspaceSkeleton.class)); final ActionContentToolbar toolbar = new ActionContentToolbarPresenter(contentNavigatorToolbar); return toolbar; } @@ -429,13 +436,40 @@ register(NoDecoration.class, new Factory<ActionContextToolbar>(ActionContextToolbar.class) { @Override public ActionContextToolbar create() { - final ActionToolbarPanel<StateToken> contentNavigatorToolbar = new ActionToolbarPanel<StateToken>( - ActionToolbarPanel.Position.context, $$(ActionManager.class), $(WorkspaceSkeleton.class)); + final ActionCntCtxToolbarPanel<StateToken> contentNavigatorToolbar = new ActionCntCtxToolbarPanel<StateToken>( + ActionCntCtxToolbarPanel.Position.context, $$(ActionManager.class), $(WorkspaceSkeleton.class)); final ActionContextToolbar toolbar = new ActionContextToolbarPresenter(contentNavigatorToolbar); return toolbar; } }); + register(Singleton.class, new Factory<ActionGroupSummaryToolbar>(ActionGroupSummaryToolbar.class) { + @Override + public ActionGroupSummaryToolbar create() { + final ActionToolbarPanel<StateToken> panel = new ActionToolbarPanel<StateToken>( + $$(ActionManager.class), $(WorkspaceSkeleton.class)); + final ActionGroupSummaryToolbarPresenter toolbar = new ActionGroupSummaryToolbarPresenter(panel); + return toolbar; + } + }, new Factory<ActionParticipationToolbar>(ActionParticipationToolbar.class) { + @Override + public ActionParticipationToolbar create() { + final ActionToolbarPanel<StateToken> panel = new ActionToolbarPanel<StateToken>( + $$(ActionManager.class), $(WorkspaceSkeleton.class)); + final ActionParticipationSummaryToolbarPresenter toolbar = new ActionParticipationSummaryToolbarPresenter( + panel); + return toolbar; + } + }, new Factory<ActionBuddiesSummaryToolbar>(ActionBuddiesSummaryToolbar.class) { + @Override + public ActionBuddiesSummaryToolbar create() { + final ActionToolbarPanel<StateToken> panel = new ActionToolbarPanel<StateToken>( + $$(ActionManager.class), $(WorkspaceSkeleton.class)); + final ActionBuddiesSummaryToolbarPresenter toolbar = new ActionBuddiesSummaryToolbarPresenter(panel); + return toolbar; + } + }); + register(Singleton.class, new Factory<ContextNavigator>(ContextNavigator.class) { @Override public ContextNavigator create() { Modified: trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneWorkspaceModule.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneWorkspaceModule.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneWorkspaceModule.java 2008-11-19 17:55:46 UTC (rev 956) @@ -21,7 +21,11 @@ import org.ourproject.kune.chat.client.ChatEngine; import org.ourproject.kune.platf.client.actions.ActionManager; import org.ourproject.kune.platf.client.actions.ContentIconsRegistry; +import org.ourproject.kune.platf.client.actions.GroupActionRegistry; import org.ourproject.kune.platf.client.actions.UserActionRegistry; +import org.ourproject.kune.platf.client.actions.toolbar.ActionBuddiesSummaryToolbar; +import org.ourproject.kune.platf.client.actions.toolbar.ActionGroupSummaryToolbar; +import org.ourproject.kune.platf.client.actions.toolbar.ActionParticipationToolbar; import org.ourproject.kune.platf.client.app.ApplicationComponentGroup; import org.ourproject.kune.platf.client.registry.ContentCapabilitiesRegistry; import org.ourproject.kune.platf.client.registry.RenamableRegistry; @@ -332,7 +336,8 @@ final GroupMembersSummaryPresenter presenter = new GroupMembersSummaryPresenter( $(I18nUITranslationService.class), $(StateManager.class), $(ImageUtils.class), $(Session.class), $$(SocialNetworkServiceAsync.class), $$(GroupLiveSearcher.class), - $(WsThemePresenter.class), $$(ChatEngine.class)); + $(WsThemePresenter.class), $$(ChatEngine.class), $(GroupActionRegistry.class), + $(ActionGroupSummaryToolbar.class)); final GroupMembersSummaryView view = new GroupMembersSummaryPanel(presenter, $(I18nUITranslationService.class), $(WorkspaceSkeleton.class)); presenter.init(view); @@ -359,7 +364,7 @@ $(Session.class), $(UserActionRegistry.class), $(I18nTranslationService.class), $$(ChatEngine.class)); final BuddiesSummaryPanel panel = new BuddiesSummaryPanel(presenter, $(WorkspaceSkeleton.class), - $(I18nTranslationService.class), $(ActionManager.class)); + $(I18nTranslationService.class), $(ActionManager.class), $(ActionBuddiesSummaryToolbar.class)); presenter.init(panel); return presenter; } @@ -370,9 +375,11 @@ public ParticipationSummary create() { final ParticipationSummaryPresenter presenter = new ParticipationSummaryPresenter( $(I18nUITranslationService.class), $(StateManager.class), $(ImageUtils.class), - $(Session.class), $$(SocialNetworkServiceAsync.class), $(WsThemePresenter.class)); + $(Session.class), $$(SocialNetworkServiceAsync.class), $(WsThemePresenter.class), + $(GroupActionRegistry.class), $(ActionParticipationToolbar.class)); final ParticipationSummaryView view = new ParticipationSummaryPanel(presenter, - $(I18nUITranslationService.class), $(WorkspaceSkeleton.class)); + $(I18nUITranslationService.class), $(WorkspaceSkeleton.class), + ($(ActionParticipationToolbar.class).getView())); presenter.init(view); return presenter; } Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridMenuPanel.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridMenuPanel.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridMenuPanel.java 2008-11-19 17:55:46 UTC (rev 956) @@ -193,14 +193,14 @@ @Override public void doLayout(final boolean shallow) { // Grid rendered problems with shallow false - grid.doLayout(false); - super.doLayout(false); + grid.doLayout(true); + super.doLayout(true); } public void doLayoutIfNeeded() { if (super.isRendered()) { - grid.doLayout(false); - super.doLayout(false); + grid.doLayout(true); + super.doLayout(true); } } @@ -249,8 +249,8 @@ @Override public void setWidth(final int width) { - // grid.setWidth(width - 27); - super.setWidth(width); + grid.setWidth(width - 27); + // super.setWidth(width); doLayoutIfNeeded(); } @@ -396,7 +396,7 @@ grid.addGridRowListener(new GridRowListener() { public void onRowClick(final GridPanel grid, final int rowIndex, final EventObject e) { - // showMenu(rowIndex, e); + showMenu(rowIndex, e); onClick(rowIndex); } Deleted: trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditor.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditor.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditor.java 2008-11-19 17:55:46 UTC (rev 956) @@ -1,32 +0,0 @@ -/* - * - * Copyright (C) 2007-2008 The kune development team (see CREDITS for details) - * This file is part of kune. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program 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 Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - */ -package org.ourproject.kune.workspace.client.cxt; - -import org.ourproject.kune.platf.client.dto.StateContentDTO; - -public interface AbstractContextPropEditor { - void attach(); - - void clear(); - - void detach(); - - void setState(StateContentDTO content); -} Deleted: trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditorPanel.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditorPanel.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditorPanel.java 2008-11-19 17:55:46 UTC (rev 956) @@ -1,263 +0,0 @@ -/* - * - * Copyright (C) 2007-2008 The kune development team (see CREDITS for details) - * This file is part of kune. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program 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 Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - */ -package org.ourproject.kune.workspace.client.cxt; - -import java.util.Date; -import java.util.List; - -import org.ourproject.kune.docs.client.ctx.DocContextPropEditorPresenter; -import org.ourproject.kune.docs.client.ctx.DocContextPropEditorView; -import org.ourproject.kune.platf.client.dto.AccessListsDTO; -import org.ourproject.kune.platf.client.dto.I18nLanguageDTO; -import org.ourproject.kune.platf.client.dto.UserSimpleDTO; -import org.ourproject.kune.platf.client.services.I18nTranslationService; -import org.ourproject.kune.platf.client.services.Images; -import org.ourproject.kune.platf.client.ui.ContextPropertyPanel; -import org.ourproject.kune.workspace.client.i18n.LanguageSelector; -import org.ourproject.kune.workspace.client.i18n.LanguageSelectorPanel; -import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton; - -import com.calclab.suco.client.ioc.Provider; -import com.google.gwt.user.client.ui.ScrollPanel; -import com.google.gwt.user.client.ui.VerticalPanel; -import com.gwtext.client.data.Record; -import com.gwtext.client.widgets.form.ComboBox; -import com.gwtext.client.widgets.form.DateField; -import com.gwtext.client.widgets.form.Field; -import com.gwtext.client.widgets.form.FormPanel; -import com.gwtext.client.widgets.form.TextArea; -import com.gwtext.client.widgets.form.event.ComboBoxListenerAdapter; -import com.gwtext.client.widgets.form.event.FieldListenerAdapter; - -public abstract class AbstractContextPropEditorPanel extends ScrollPanel implements DocContextPropEditorView { - - private static final int FORMS_WIDTH = 150; - public static final String TAGS_PROP = "k-dcpep-tagsp-dis"; - public static final String LANG_PROP = "k-dcpep-langsp-dis"; - public static final String PUBLI_PROP = "k-dcpep-publisp-dis"; - private static final String ACL_PROP = ""; - - private final DocContextPropEditorPresenter presenter; - private final WorkspaceSkeleton ws; - private final I18nTranslationService i18n; - private final Provider<LanguageSelector> langSelectorProv; - private final VerticalPanel vp; - private ContextPropertyPanel tagsComponent; - private ContextPropertyPanel langComponent; - private ContextPropertyPanel publishedOnComponent; - private TextArea tagsField; - private DateField publishedOnField; - private final Images images; - private ContextPropertyPanel aclComponent; - private AccessListsPanel accessListsPanel; - - public AbstractContextPropEditorPanel(final DocContextPropEditorPresenter presenter, - final I18nTranslationService i18n, WorkspaceSkeleton ws, Provider<LanguageSelector> langSelectorProv, - Images images) { - this.i18n = i18n; - this.ws = ws; - this.presenter = presenter; - this.langSelectorProv = langSelectorProv; - this.images = images; - super.addStyleName("kune-Margin-Medium-trbl"); - vp = new VerticalPanel(); - super.add(vp); - // authors_item = i18n.t("Authors"); - } - - public void attach() { - if (!super.isAttached()) { - ws.getEntityWorkspace().setContext(this); - } - } - - public void detach() { - if (super.isAttached()) { - super.removeFromParent(); - } - } - - public void removeAccessListComponent() { - // if (options.containsItem(perms_item)) { - // removeComponent(perms_item); - // } - } - - public void removeAclComponent() { - if (aclComponent != null) { - aclComponent.removeFromParent(); - } - } - - public void removeAuthorsComponent() { - // if (options.containsItem(authors_item)) { - // removeComponent(authors_item); - // } - } - - public void removeLangComponent() { - if (langComponent != null) { - langComponent.removeFromParent(); - } - } - - public void removePublishedOnComponent() { - if (publishedOnComponent != null) { - publishedOnComponent.removeFromParent(); - } - } - - public void removeTagsComponent() { - if (tagsComponent != null) { - tagsComponent.removeFromParent(); - } - } - - public void reset() { - if (tagsField != null) { - tagsField.reset(); - } - } - - public void setAccessLists(final AccessListsDTO accessLists) { - if (aclComponent == null) { - accessListsPanel = new AccessListsPanel(i18n, images); - aclComponent = new ContextPropertyPanel(i18n.t("Permissions"), i18n.t("Who can admin/edit/view this work"), - true, ACL_PROP, accessListsPanel); - addComponent(aclComponent); - } - accessListsPanel.setAccessLists(accessLists); - } - - public void setAuthors(final List<UserSimpleDTO> authors) { - // if (authorsComponent == null) { - // authorsComponent = new VerticalPanel(); - // addAuthorLabel = new IconLabel(IMG.addGreen(), i18n.t("Add author")); - // addAuthorLabel.addClickListener(new ClickListener() { - // public void onClick(final Widget sender) { - // presenter.doAction(DocsEvents.ADD_AUTHOR, null); - // } - // }); - // } else { - // if (options.containsItem(authors_item)) { - // options.removeStackItem(authors_item); - // } - // authorsComponent.clear(); - // } - // if (!options.containsItem(authors_item)) { - // addComponent(authors_item, i18n.t("Authors of this work"), - // authorsComponent); - // } - // for (final Iterator<UserSimpleDTO> iterator = authors.iterator(); - // iterator.hasNext();) { - // final UserSimpleDTO author = iterator.next(); - // final StackSubItemAction[] authorActions = { new - // StackSubItemAction(IMG.del(), i18n.t("Remove author"), - // DocsEvents.REMOVE_AUTHOR) }; - // options.addStackSubItem(authors_item, IMG.personDef(), - // author.getShortName(), author.getName(), - // authorActions, presenter); - // } - // authorsComponent.add(addAuthorLabel); - } - - public void setLanguage(final I18nLanguageDTO language) { - if (langComponent == null) { - final LanguageSelectorPanel view = (LanguageSelectorPanel) langSelectorProv.get().getView(); - view.setWidth(FORMS_WIDTH); - langComponent = new ContextPropertyPanel(i18n.t("What language is this in?"), null, true, LANG_PROP, view); - view.addChangeListener(new ComboBoxListenerAdapter() { - @Override - public void onSelect(final ComboBox comboBox, final Record record, final int index) { - presenter.doChangeLanguage(record.getAsString(LanguageSelectorPanel.LANG_ID)); - } - }); - // angComponent.addStyleName("kune-Margin-Medium-t"); - addComponent(langComponent); - } - langSelectorProv.get().setLanguage(language); - } - - public void setPublishedOn(final Date publishedOn, String dateFormat) { - if (publishedOnField == null) { - publishedOnComponent = createPublicationComponent(); - } - addComponent(publishedOnComponent); - publishedOnField.setValue(publishedOn); - publishedOnField.setFormat(dateFormat); - } - - public void setTags(final String tags) { - if (tagsComponent == null) { - tagsComponent = createTagsComponent(); - addComponent(tagsComponent); - } - tagsField.setValue(tags); - } - - private void addComponent(ContextPropertyPanel prop) { - vp.add(prop); - } - - private FormPanel createDefaultForm() { - final FormPanel form = new FormPanel(); - form.setHideLabels(true); - form.setWidth(FORMS_WIDTH); - form.setBorder(false); - return form; - } - - private ContextPropertyPanel createPublicationComponent() { - final FormPanel form = createDefaultForm(); - - publishedOnField = new DateField(); - publishedOnField.setWidth("140"); - - publishedOnField.addListener(new FieldListenerAdapter() { - @Override - public void onChange(final Field field, final Object newVal, final Object oldVal) { - presenter.setPublishedOn((Date) newVal); - } - }); - form.add(publishedOnField); - return new ContextPropertyPanel(i18n.t("Publication"), i18n.t("Date of publication"), true, PUBLI_PROP, form); - } - - private ContextPropertyPanel createTagsComponent() { - final FormPanel form = createDefaultForm(); - tagsField = new TextArea(); - tagsField.setWidth(FORMS_WIDTH - 10); - tagsField.setHeight("3em"); - tagsField.addListener(new FieldListenerAdapter() { - @Override - public void onChange(final Field field, final Object newVal, final Object oldVal) { - presenter.setTags((String) newVal); - } - }); - form.add(tagsField); - return new ContextPropertyPanel(i18n.t("Tags"), i18n.t("Keywords or terms associated with this work"), true, - TAGS_PROP, form); - } - - // private void removeComponent(final String header) { - // options.removeStackItem(header); - // } - -} Deleted: trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditorPresenter.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditorPresenter.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditorPresenter.java 2008-11-19 17:55:46 UTC (rev 956) @@ -1,197 +0,0 @@ -/* - * - * Copyright (C) 2007-2008 The kune development team (see CREDITS for details) - * This file is part of kune. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program 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 Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - */ -package org.ourproject.kune.workspace.client.cxt; - -import java.util.Date; -import java.util.List; - -import org.ourproject.kune.docs.client.ctx.DocContextPropEditorView; -import org.ourproject.kune.platf.client.dto.AccessListsDTO; -import org.ourproject.kune.platf.client.dto.I18nLanguageDTO; -import org.ourproject.kune.platf.client.dto.StateContainerDTO; -import org.ourproject.kune.platf.client.dto.StateContentDTO; -import org.ourproject.kune.platf.client.dto.TagResultDTO; -import org.ourproject.kune.platf.client.dto.UserSimpleDTO; -import org.ourproject.kune.platf.client.registry.ContentCapabilitiesRegistry; -import org.ourproject.kune.platf.client.rpc.AsyncCallbackSimple; -import org.ourproject.kune.platf.client.rpc.ContentServiceAsync; -import org.ourproject.kune.platf.client.state.Session; -import org.ourproject.kune.platf.client.state.StateManager; -import org.ourproject.kune.workspace.client.site.Site; -import org.ourproject.kune.workspace.client.tags.TagsSummary; -import org.ourproject.kune.workspace.client.title.EntitySubTitle; -import org.ourproject.kune.workspace.client.title.EntityTitle; - -import com.calclab.suco.client.ioc.Provider; - -public abstract class AbstractContextPropEditorPresenter { - - private DocContextPropEditorView view; - private final Session session; - private final Provider<TagsSummary> tagsSummaryProvider; - private final Provider<ContentServiceAsync> contentServiceProvider; - private final EntitySubTitle entitySubTitle; - private final EntityTitle entityTitle; - private final StateManager stateManager; - private final ContentCapabilitiesRegistry capabilitiesRegistry; - - public AbstractContextPropEditorPresenter(final Session session, final StateManager stateManager, - ContentCapabilitiesRegistry capabilitiesRegistry, final Provider<TagsSummary> tagsSummaryProvider, - final Provider<ContentServiceAsync> contentServiceProvider, final EntityTitle entityTitle, - final EntitySubTitle entitySubTitle) { - this.session = session; - this.stateManager = stateManager; - this.capabilitiesRegistry = capabilitiesRegistry; - this.tagsSummaryProvider = tagsSummaryProvider; - this.contentServiceProvider = contentServiceProvider; - this.entityTitle = entityTitle; - this.entitySubTitle = entitySubTitle; - } - - public void addAuthor(final String authorShortName) { - Site.showProgressProcessing(); - final StateContainerDTO currentState = session.getContentState(); - contentServiceProvider.get().addAuthor(session.getUserHash(), currentState.getStateToken(), authorShortName, - new AsyncCallbackSimple<Object>() { - public void onSuccess(final Object result) { - Site.hideProgress(); - stateManager.reload(); - } - }); - } - - public void attach() { - view.attach(); - } - - public void clear() { - view.reset(); - } - - public void delAuthor(final String authorShortName) { - Site.showProgressProcessing(); - final StateContainerDTO currentState = session.getContentState(); - contentServiceProvider.get().removeAuthor(session.getUserHash(), currentState.getStateToken(), authorShortName, - new AsyncCallbackSimple<Object>() { - public void onSuccess(final Object result) { - Site.hideProgress(); - stateManager.reload(); - } - }); - } - - public void detach() { - view.detach(); - } - - public void doChangeLanguage(final String langCode) { - Site.showProgressProcessing(); - final StateContainerDTO currentState = session.getContentState(); - contentServiceProvider.get().setLanguage(session.getUserHash(), currentState.getStateToken(), langCode, - new AsyncCallbackSimple<I18nLanguageDTO>() { - public void onSuccess(final I18nLanguageDTO lang) { - Site.hideProgress(); - entitySubTitle.setContentLanguage(lang.getEnglishName()); - } - }); - } - - public void init(final DocContextPropEditorView view) { - this.view = view; - } - - public void setPublishedOn(final Date publishedOn) { - Site.showProgressProcessing(); - final StateContainerDTO currentState = session.getContentState(); - contentServiceProvider.get().setPublishedOn(session.getUserHash(), currentState.getStateToken(), publishedOn, - new AsyncCallbackSimple<Object>() { - public void onSuccess(final Object result) { - Site.hideProgress(); - entityTitle.setContentDate(publishedOn); - } - }); - } - - public void setState(final StateContentDTO state) { - // In the future check the use of these components by each tool - final I18nLanguageDTO language = state.getLanguage(); - final AccessListsDTO accessLists = state.getAccessLists(); - final Date publishedOn = state.getPublishedOn(); - final String tags = state.getTags(); - final List<UserSimpleDTO> authors = state.getAuthors(); - - String typeId = state.getTypeId(); - if (capabilitiesRegistry.isTranslatable(typeId)) { - assert (language != null); - view.setLanguage(language); - } else { - view.removeLangComponent(); - } - if (capabilitiesRegistry.isTageable(typeId)) { - assert (tags != null); - view.setTags(tags); - } else { - view.removeTagsComponent(); - } - if (capabilitiesRegistry.isAuthorable(typeId)) { - assert (authors != null); - view.setAuthors(authors); - } else { - view.removeAuthorsComponent(); - } - if (capabilitiesRegistry.isPublishModerable(typeId)) { - assert (publishedOn != null); - String dateFormat = session.getCurrentLanguage().getDateFormatShort(); - if (dateFormat != null) { - dateFormat = dateFormat.replace("yyyy", "Y"); - dateFormat = dateFormat.replace("yy", "y"); - dateFormat = dateFormat.replace("MM", "m"); - dateFormat = dateFormat.replace("M", "n"); - dateFormat = dateFormat.replace("dd", "xxx"); - dateFormat = dateFormat.replace("d", "j"); - dateFormat = dateFormat.replace("xxx", "d"); - view.setPublishedOn(publishedOn, dateFormat); - } else { - view.setPublishedOn(publishedOn, "M/d/yy def"); - } - } else { - view.removePublishedOnComponent(); - } - if (capabilitiesRegistry.isAclEditable(typeId)) { - assert (accessLists != null); - view.setAccessLists(accessLists); - } else { - view.removeAccessListComponent(); - } - } - - public void setTags(final String tagsString) { - Site.showProgressProcessing(); - final StateContainerDTO currentState = session.getContentState(); - contentServiceProvider.get().setTags(session.getUserHash(), currentState.getStateToken(), tagsString, - new AsyncCallbackSimple<List<TagResultDTO>>() { - public void onSuccess(final List<TagResultDTO> result) { - tagsSummaryProvider.get().setGroupTags(result); - Site.hideProgress(); - } - }); - } - -} Deleted: trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditorView.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditorView.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditorView.java 2008-11-19 17:55:46 UTC (rev 956) @@ -1,57 +0,0 @@ -/* - * - * Copyright (C) 2007-2008 The kune development team (see CREDITS for details) - * This file is part of kune. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program 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 Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - */ -package org.ourproject.kune.workspace.client.cxt; - -import java.util.Date; -import java.util.List; - -import org.ourproject.kune.platf.client.dto.AccessListsDTO; -import org.ourproject.kune.platf.client.dto.I18nLanguageDTO; -import org.ourproject.kune.platf.client.dto.UserSimpleDTO; - -public interface AbstractContextPropEditorView { - - void attach(); - - void detach(); - - void removeAccessListComponent(); - - void removeAuthorsComponent(); - - void removeLangComponent(); - - void removePublishedOnComponent(); - - void removeTagsComponent(); - - void reset(); - - void setAccessLists(AccessListsDTO accessLists); - - void setAuthors(List<UserSimpleDTO> authors); - - void setLanguage(I18nLanguageDTO language); - - void setPublishedOn(Date publishedOn, String dateFormat); - - void setTags(String tags); - -} Copied: trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/ContextPropEditor.java (from rev 955, trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditor.java) =================================================================== --- trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditor.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/ContextPropEditor.java 2008-11-19 17:55:46 UTC (rev 956) @@ -0,0 +1,32 @@ +/* + * + * Copyright (C) 2007-2008 The kune development team (see CREDITS for details) + * This file is part of kune. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program 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 Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + */ +package org.ourproject.kune.workspace.client.cxt; + +import org.ourproject.kune.platf.client.dto.StateContentDTO; + +public interface ContextPropEditor { + void attach(); + + void clear(); + + void detach(); + + void setState(StateContentDTO content); +} Property changes on: trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/ContextPropEditor.java ___________________________________________________________________ Name: svn:mergeinfo + Copied: trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/ContextPropEditorPanel.java (from rev 955, trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditorPanel.java) =================================================================== --- trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditorPanel.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/ContextPropEditorPanel.java 2008-11-19 17:55:46 UTC (rev 956) @@ -0,0 +1,261 @@ +/* + * + * Copyright (C) 2007-2008 The kune development team (see CREDITS for details) + * This file is part of kune. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program 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 Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + */ +package org.ourproject.kune.workspace.client.cxt; + +import java.util.Date; +import java.util.List; + +import org.ourproject.kune.platf.client.dto.AccessListsDTO; +import org.ourproject.kune.platf.client.dto.I18nLanguageDTO; +import org.ourproject.kune.platf.client.dto.UserSimpleDTO; +import org.ourproject.kune.platf.client.services.I18nTranslationService; +import org.ourproject.kune.platf.client.services.Images; +import org.ourproject.kune.platf.client.ui.ContextPropertyPanel; +import org.ourproject.kune.workspace.client.i18n.LanguageSelector; +import org.ourproject.kune.workspace.client.i18n.LanguageSelectorPanel; +import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton; + +import com.calclab.suco.client.ioc.Provider; +import com.google.gwt.user.client.ui.ScrollPanel; +import com.google.gwt.user.client.ui.VerticalPanel; +import com.gwtext.client.data.Record; +import com.gwtext.client.widgets.form.ComboBox; +import com.gwtext.client.widgets.form.DateField; +import com.gwtext.client.widgets.form.Field; +import com.gwtext.client.widgets.form.FormPanel; +import com.gwtext.client.widgets.form.TextArea; +import com.gwtext.client.widgets.form.event.ComboBoxListenerAdapter; +import com.gwtext.client.widgets.form.event.FieldListenerAdapter; + +public class ContextPropEditorPanel extends ScrollPanel implements ContextPropEditorView { + + private static final int FORMS_WIDTH = 150; + public static final String TAGS_PROP = "k-dcpep-tagsp-dis"; + public static final String LANG_PROP = "k-dcpep-langsp-dis"; + public static final String PUBLI_PROP = "k-dcpep-publisp-dis"; + private static final String ACL_PROP = ""; + + private final ContextPropEditorPresenter presenter; + private final WorkspaceSkeleton ws; + private final I18nTranslationService i18n; + private final Provider<LanguageSelector> langSelectorProv; + private final VerticalPanel vp; + private ContextPropertyPanel tagsComponent; + private ContextPropertyPanel langComponent; + private ContextPropertyPanel publishedOnComponent; + private TextArea tagsField; + private DateField publishedOnField; + private final Images images; + private ContextPropertyPanel aclComponent; + private AccessListsPanel accessListsPanel; + + public ContextPropEditorPanel(final ContextPropEditorPresenter presenter, + final I18nTranslationService i18n, WorkspaceSkeleton ws, Provider<LanguageSelector> langSelectorProv, + Images images) { + this.i18n = i18n; + this.ws = ws; + this.presenter = presenter; + this.langSelectorProv = langSelectorProv; + this.images = images; + super.addStyleName("kune-Margin-Medium-trbl"); + vp = new VerticalPanel(); + super.add(vp); + // authors_item = i18n.t("Authors"); + } + + public void attach() { + if (!super.isAttached()) { + ws.getEntityWorkspace().setContext(this); + } + } + + public void detach() { + if (super.isAttached()) { + super.removeFromParent(); + } + } + + public void removeAccessListComponent() { + // if (options.containsItem(perms_item)) { + // removeComponent(perms_item); + // } + } + + public void removeAclComponent() { + if (aclComponent != null) { + aclComponent.removeFromParent(); + } + } + + public void removeAuthorsComponent() { + // if (options.containsItem(authors_item)) { + // removeComponent(authors_item); + // } + } + + public void removeLangComponent() { + if (langComponent != null) { + langComponent.removeFromParent(); + } + } + + public void removePublishedOnComponent() { + if (publishedOnComponent != null) { + publishedOnComponent.removeFromParent(); + } + } + + public void removeTagsComponent() { + if (tagsComponent != null) { + tagsComponent.removeFromParent(); + } + } + + public void reset() { + if (tagsField != null) { + tagsField.reset(); + } + } + + public void setAccessLists(final AccessListsDTO accessLists) { + if (aclComponent == null) { + accessListsPanel = new AccessListsPanel(i18n, images); + aclComponent = new ContextPropertyPanel(i18n.t("Permissions"), i18n.t("Who can admin/edit/view this work"), + true, ACL_PROP, accessListsPanel); + addComponent(aclComponent); + } + accessListsPanel.setAccessLists(accessLists); + } + + public void setAuthors(final List<UserSimpleDTO> authors) { + // if (authorsComponent == null) { + // authorsComponent = new VerticalPanel(); + // addAuthorLabel = new IconLabel(IMG.addGreen(), i18n.t("Add author")); + // addAuthorLabel.addClickListener(new ClickListener() { + // public void onClick(final Widget sender) { + // presenter.doAction(DocsEvents.ADD_AUTHOR, null); + // } + // }); + // } else { + // if (options.containsItem(authors_item)) { + // options.removeStackItem(authors_item); + // } + // authorsComponent.clear(); + // } + // if (!options.containsItem(authors_item)) { + // addComponent(authors_item, i18n.t("Authors of this work"), + // authorsComponent); + // } + // for (final Iterator<UserSimpleDTO> iterator = authors.iterator(); + // iterator.hasNext();) { + // final UserSimpleDTO author = iterator.next(); + // final StackSubItemAction[] authorActions = { new + // StackSubItemAction(IMG.del(), i18n.t("Remove author"), + // DocsEvents.REMOVE_AUTHOR) }; + // options.addStackSubItem(authors_item, IMG.personDef(), + // author.getShortName(), author.getName(), + // authorActions, presenter); + // } + // authorsComponent.add(addAuthorLabel); + } + + public void setLanguage(final I18nLanguageDTO language) { + if (langComponent == null) { + final LanguageSelectorPanel view = (LanguageSelectorPanel) langSelectorProv.get().getView(); + view.setWidth(FORMS_WIDTH); + langComponent = new ContextPropertyPanel(i18n.t("What language is this in?"), null, true, LANG_PROP, view); + view.addChangeListener(new ComboBoxListenerAdapter() { + @Override + public void onSelect(final ComboBox comboBox, final Record record, final int index) { + presenter.doChangeLanguage(record.getAsString(LanguageSelectorPanel.LANG_ID)); + } + }); + // angComponent.addStyleName("kune-Margin-Medium-t"); + addComponent(langComponent); + } + langSelectorProv.get().setLanguage(language); + } + + public void setPublishedOn(final Date publishedOn, String dateFormat) { + if (publishedOnField == null) { + publishedOnComponent = createPublicationComponent(); + } + addComponent(publishedOnComponent); + publishedOnField.setValue(publishedOn); + publishedOnField.setFormat(dateFormat); + } + + public void setTags(final String tags) { + if (tagsComponent == null) { + tagsComponent = createTagsComponent(); + addComponent(tagsComponent); + } + tagsField.setValue(tags); + } + + private void addComponent(ContextPropertyPanel prop) { + vp.add(prop); + } + + private FormPanel createDefaultForm() { + final FormPanel form = new FormPanel(); + form.setHideLabels(true); + form.setWidth(FORMS_WIDTH); + form.setBorder(false); + return form; + } + + private ContextPropertyPanel createPublicationComponent() { + final FormPanel form = createDefaultForm(); + + publishedOnField = new DateField(); + publishedOnField.setWidth("140"); + + publishedOnField.addListener(new FieldListenerAdapter() { + @Override + public void onChange(final Field field, final Object newVal, final Object oldVal) { + presenter.setPublishedOn((Date) newVal); + } + }); + form.add(publishedOnField); + return new ContextPropertyPanel(i18n.t("Publication"), i18n.t("Date of publication"), true, PUBLI_PROP, form); + } + + private ContextPropertyPanel createTagsComponent() { + final FormPanel form = createDefaultForm(); + tagsField = new TextArea(); + tagsField.setWidth(FORMS_WIDTH - 10); + tagsField.setHeight("3em"); + tagsField.addListener(new FieldListenerAdapter() { + @Override + public void onChange(final Field field, final Object newVal, final Object oldVal) { + presenter.setTags((String) newVal); + } + }); + form.add(tagsField); + return new ContextPropertyPanel(i18n.t("Tags"), i18n.t("Keywords or terms associated with this work"), true, + TAGS_PROP, form); + } + + // private void removeComponent(final String header) { + // options.removeStackItem(header); + // } + +} Property changes on: trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/ContextPropEditorPanel.java ___________________________________________________________________ Name: svn:mergeinfo + Copied: trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/ContextPropEditorPresenter.java (from rev 953, trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditorPresenter.java) =================================================================== --- trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditorPresenter.java 2008-11-17 10:18:11 UTC (rev 953) +++ trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/ContextPropEditorPresenter.java 2008-11-19 17:55:46 UTC (rev 956) @@ -0,0 +1,196 @@ +/* + * + * Copyright (C) 2007-2008 The kune development team (see CREDITS for details) + * This file is part of kune. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program 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 Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + */ +package org.ourproject.kune.workspace.client.cxt; + +import java.util.Date; +import java.util.List; + +import org.ourproject.kune.platf.client.dto.AccessListsDTO; +import org.ourproject.kune.platf.client.dto.I18nLanguageDTO; +import org.ourproject.kune.platf.client.dto.StateContainerDTO; +import org.ourproject.kune.platf.client.dto.StateContentDTO; +import org.ourproject.kune.platf.client.dto.TagResultDTO; +import org.ourproject.kune.platf.client.dto.UserSimpleDTO; +import org.ourproject.kune.platf.client.registry.ContentCapabilitiesRegistry; +import org.ourproject.kune.platf.client.rpc.AsyncCallbackSimple; +import org.ourproject.kune.platf.client.rpc.ContentServiceAsync; +import org.ourproject.kune.platf.client.state.Session; +import org.ourproject.kune.platf.client.state.StateManager; +import org.ourproject.kune.workspace.client.site.Site; +import org.ourproject.kune.workspace.client.tags.TagsSummary; +import org.ourproject.kune.workspace.client.title.EntitySubTitle; +import org.ourproject.kune.workspace.client.title.EntityTitle; + +import com.calclab.suco.client.ioc.Provider; + +public class ContextPropEditorPresenter implements ContextPropEditor { + + private ContextPropEditorView view; + private final Session session; + private final Provider<TagsSummary> tagsSummaryProvider; + private final Provider<ContentServiceAsync> contentServiceProvider; + private final EntitySubTitle entitySubTitle; + private final EntityTitle entityTitle; + private final StateManager stateManager; + private final ContentCapabilitiesRegistry capabilitiesRegistry; + + public ContextPropEditorPresenter(final Session session, final StateManager stateManager, + ContentCapabilitiesRegistry capabilitiesRegistry, final Provider<TagsSummary> tagsSummaryProvider, + final Provider<ContentServiceAsync> contentServiceProvider, final EntityTitle entityTitle, + final EntitySubTitle entitySubTitle) { + this.session = session; + this.stateManager = stateManager; + this.capabilitiesRegistry = capabilitiesRegistry; + this.tagsSummaryProvider = tagsSummaryProvider; + this.contentServiceProvider = contentServiceProvider; + this.entityTitle = entityTitle; + this.entitySubTitle = entitySubTitle; + } + + public void addAuthor(final String authorShortName) { + Site.showProgressProcessing(); + final StateContainerDTO currentState = session.getContentState(); + contentServiceProvider.get().addAuthor(session.getUserHash(), currentState.getStateToken(), authorShortName, + new AsyncCallbackSimple<Object>() { + public void onSuccess(final Object result) { + Site.hideProgress(); + stateManager.reload(); + } + }); + } + + public void attach() { + view.attach(); + } + + public void clear() { + view.reset(); + } + + public void delAuthor(final String authorShortName) { + Site.showProgressProcessing(); + final StateContainerDTO currentState = session.getContentState(); + contentServiceProvider.get().removeAuthor(session.getUserHash(), currentState.getStateToken(), authorShortName, + new AsyncCallbackSimple<Object>() { + public void onSuccess(final Object result) { + Site.hideProgress(); + stateManager.reload(); + } + }); + } + + public void detach() { + view.detach(); + } + + public void doChangeLanguage(final String langCode) { + Site.showProgressProcessing(); + final StateContainerDTO currentState = session.getContentState(); + contentServiceProvider.get().setLanguage(session.getUserHash(), currentState.getStateToken(), langCode, + new AsyncCallbackSimple<I18nLanguageDTO>() { + public void onSuccess(final I18nLanguageDTO lang) { + Site.hideProgress(); + entitySubTitle.setContentLanguage(lang.getEnglishName()); + } + }); + } + + public void init(final ContextPropEditorView view) { + this.view = view; + } + + public void setPublishedOn(final Date publishedOn) { + Site.showProgressProcessing(); + final StateContainerDTO currentState = session.getContentState(); + contentServiceProvider.get().setPublishedOn(session.getUserHash(), currentState.getStateToken(), publishedOn, + new AsyncCallbackSimple<Object>() { + public void onSuccess(final Object result) { + Site.hideProgress(); + entityTitle.setContentDate(publishedOn); + } + }); + } + + public void setState(final StateContentDTO state) { + // In the future check the use of these components by each tool + final I18nLanguageDTO language = state.getLanguage(); + final AccessListsDTO accessLists = state.getAccessLists(); + final Date publishedOn = state.getPublishedOn(); + final String tags = state.getTags(); + final List<UserSimpleDTO> authors = state.getAuthors(); + + String typeId = state.getTypeId(); + if (capabilitiesRegistry.isTranslatable(typeId)) { + assert (language != null); + view.setLanguage(language); + } else { + view.removeLangComponent(); + } + if (capabilitiesRegistry.isTageable(typeId)) { + assert (tags != null); + view.setTags(tags); + } else { + view.removeTagsComponent(); + } + if (capabilitiesRegistry.isAuthorable(typeId)) { + assert (authors != null); + view.setAuthors(authors); + } else { + view.removeAuthorsComponent(); + } + if (capabilitiesRegistry.isPublishModerable(typeId)) { + assert (publishedOn != null); + String dateFormat = session.getCurrentLanguage().getDateFormatShort(); + if (dateFormat != null) { + dateFormat = dateFormat.replace("yyyy", "Y"); + dateFormat = dateFormat.replace("yy", "y"); + dateFormat = dateFormat.replace("MM", "m"); + dateFormat = dateFormat.replace("M", "n"); + dateFormat = dateFormat.replace("dd", "xxx"); + dateFormat = dateFormat.replace("d", "j"); + dateFormat = dateFormat.replace("xxx", "d"); + view.setPublishedOn(publishedOn, dateFormat); + } else { + view.setPublishedOn(publishedOn, "M/d/yy def"); + } + } else { + view.removePublishedOnComponent(); + } + if (capabilitiesRegistry.isAclEditable(typeId)) { + assert (accessLists != null); + view.setAccessLists(accessLists); + } else { + view.removeAccessListComponent(); + } + } + + public void setTags(final String tagsString) { + Site.showProgressProcessing(); + final StateContainerDTO currentState = session.getContentState(); + contentServiceProvider.get().setTags(session.getUserHash(), currentState.getStateToken(), tagsString, + new AsyncCallbackSimple<List<TagResultDTO>>() { + public void onSuccess(final List<TagResultDTO> result) { + tagsSummaryProvider.get().setGroupTags(result); + Site.hideProgress(); + } + }); + } + +} Property changes on: trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/ContextPropEditorPresenter.java ___________________________________________________________________ Name: svn:mergeinfo + Copied: trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/ContextPropEditorView.java (from rev 953, trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditorView.java) =================================================================== --- trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/AbstractContextPropEditorView.java 2008-11-17 10:18:11 UTC (rev 953) +++ trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/ContextPropEditorView.java 2008-11-19 17:55:46 UTC (rev 956) @@ -0,0 +1,57 @@ +/* + * + * Copyright (C) 2007-2008 The kune development team (see CREDITS for details) + * This file is part of kune. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program 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 Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + */ +package org.ourproject.kune.workspace.client.cxt; + +import java.util.Date; +import java.util.List; + +import org.ourproject.kune.platf.client.dto.AccessListsDTO; +import org.ourproject.kune.platf.client.dto.I18nLanguageDTO; +import org.ourproject.kune.platf.client.dto.UserSimpleDTO; + +public interface ContextPropEditorView { + + void attach(); + + void detach(); + + void removeAccessListComponent(); + + void removeAuthorsComponent(); + + void removeLangComponent(); + + void removePublishedOnComponent(); + + void removeTagsComponent(); + + void reset(); + + void setAccessLists(AccessListsDTO accessLists); + + void setAuthors(List<UserSimpleDTO> authors); + + void setLanguage(I18nLanguageDTO language); + + void setPublishedOn(Date publishedOn, String dateFormat); + + void setTags(String tags); + +} Property changes on: trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/ContextPropEditorView.java ___________________________________________________________________ Name: svn:mergeinfo + Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/FoldableContextPresenter.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/FoldableContextPresenter.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/FoldableContextPresenter.java 2008-11-19 17:55:46 UTC (rev 956) @@ -2,6 +2,7 @@ import org.ourproject.kune.platf.client.dto.StateAbstractDTO; import org.ourproject.kune.platf.client.dto.StateContainerDTO; +import org.ourproject.kune.platf.client.dto.StateContentDTO; import org.ourproject.kune.platf.client.state.StateManager; import org.ourproject.kune.workspace.client.ctxnav.ContextNavigator; @@ -11,11 +12,19 @@ public abstract class FoldableContextPresenter { private final Provider<ContextNavigator> contextNavigatorProvider; protected final String toolname; + private final Provider<ContextPropEditor> contextPropEditorProvider; public FoldableContextPresenter(final String toolname, final StateManager stateManager, final Provider<ContextNavigator> contextNavigatorProvider) { + this(toolname, stateManager, contextNavigatorProvider, null); + } + + public FoldableContextPresenter(final String toolname, final StateManager stateManager, + final Provider<ContextNavigator> contextNavigatorProvider, + Provider<ContextPropEditor> contextPropEditorProvider) { this.toolname = toolname; this.contextNavigatorProvider = contextNavigatorProvider; + this.contextPropEditorProvider = contextPropEditorProvider; stateManager.onStateChanged(new Listener<StateAbstractDTO>() { public void onEvent(final StateAbstractDTO state) { if (state instanceof StateContainerDTO) { @@ -34,9 +43,16 @@ protected void detach() { contextNavigatorProvider.get().detach(); contextNavigatorProvider.get().clear(); + if (contextPropEditorProvider != null) { + contextPropEditorProvider.get().detach(); + contextPropEditorProvider.get().clear(); + } } protected void setState(StateContainerDTO state) { contextNavigatorProvider.get().setState(state, true); + if (contextPropEditorProvider != null && state instanceof StateContentDTO) { + contextPropEditorProvider.get().setState((StateContentDTO) state); + } } } Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/skel/SummaryPanel.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/workspace/client/skel/SummaryPanel.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/workspace/client/skel/SummaryPanel.java 2008-11-19 17:55:46 UTC (rev 956) @@ -33,7 +33,7 @@ public void doLayoutIfNeeded() { if (super.isRendered()) { - super.doLayout(false); + super.doLayout(); } } Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPanel.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPanel.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPanel.java 2008-11-19 17:55:46 UTC (rev 956) @@ -22,6 +22,7 @@ import org.ourproject.kune.platf.client.actions.ActionItemCollection; import org.ourproject.kune.platf.client.actions.ActionManager; import org.ourproject.kune.platf.client.actions.MenuItemsContainer; +import org.ourproject.kune.platf.client.actions.toolbar.ActionBuddiesSummaryToolbar; import org.ourproject.kune.platf.client.dto.UserSimpleDTO; import org.ourproject.kune.platf.client.services.I18nTranslationService; import org.ourproject.kune.workspace.client.skel.SummaryPanel; @@ -74,7 +75,8 @@ private final ActionManager actionManager; public BuddiesSummaryPanel(final BuddiesSummaryPresenter presenter, final WorkspaceSkeleton ws, - I18nTranslationService i18n, ActionManager actionManager) { + I18nTranslationService i18n, ActionManager actionManager, + ActionBuddiesSummaryToolbar actionBuddiesSummaryToolbar) { super(i18n.t("Buddies"), i18n.t("Buddies of this user"), ws); this.actionManager = actionManager; menuItemsContainer = new MenuItemsContainer<UserSimpleDTO>(); Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/GroupMembersSummaryPanel.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/GroupMembersSummaryPanel.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/GroupMembersSummaryPanel.java 2008-11-19 17:55:46 UTC (rev 956) @@ -66,7 +66,7 @@ presenter.onDoubleClick(groupShortName); } }; - gridMenuPanel.onClick(go); + // gridMenuPanel.onClick(go); gridMenuPanel.onDoubleClick(go); gridMenuPanel.getBottomBar().setCls("k-blank-toolbar"); super.add(gridMenuPanel); Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/GroupMembersSummaryPresenter.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/GroupMembersSummaryPresenter.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/GroupMembersSummaryPresenter.java 2008-11-19 17:55:46 UTC (rev 956) @@ -21,6 +21,8 @@ import java.util.List; import org.ourproject.kune.chat.client.ChatEngine; +import org.ourproject.kune.platf.client.actions.GroupActionRegistry; +import org.ourproject.kune.platf.client.actions.toolbar.ActionGroupSummaryToolbar; import org.ourproject.kune.platf.client.dto.AccessListsDTO; import org.ourproject.kune.platf.client.dto.AccessRightsDTO; import org.ourproject.kune.platf.client.dto.GroupDTO; @@ -66,8 +68,9 @@ final ImageUtils imageUtils, final Session session, final Provider<SocialNetworkServiceAsync> snServiceProvider, final Provider<GroupLiveSearcher> liveSearcherProvider, final WsThemePresenter wsThemePresenter, - final Provider<ChatEngine> chatEngineProvider) { - super(i18n, stateManager, imageUtils, session, snServiceProvider); + final Provider<ChatEngine> chatEngineProvider, GroupActionRegistry groupActionRegistry, + ActionGroupSummaryToolbar actionGroupSummaryToolbar) { + super(i18n, stateManager, imageUtils, session, snServiceProvider, groupActionRegistry); this.i18n = i18n; this.stateManager = stateManager; this.session = session; Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/ParticipationSummaryPanel.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/ParticipationSummaryPanel.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/ParticipationSummaryPanel.java 2008-11-19 17:55:46 UTC (rev 956) @@ -19,7 +19,9 @@ */ package org.ourproject.kune.workspace.client.socialnet; +import org.ourproject.kune.platf.client.actions.toolbar.ActionToolbarView; import org.ourproject.kune.platf.client.dto.GroupDTO; +import org.ourproject.kune.platf.client.dto.StateToken; import org.ourproject.kune.platf.client.services.I18nTranslationService; import org.ourproject.kune.platf.client.ui.gridmenu.GridItem; import org.ourproject.kune.platf.client.ui.gridmenu.GridMenuPanel; @@ -36,7 +38,7 @@ private final GridMenuPanel<GroupDTO> gridMenuPanel; public ParticipationSummaryPanel(final ParticipationSummaryPresenter presenter, final I18nTranslationService i18n, - final WorkspaceSkeleton ws) { + final WorkspaceSkeleton ws, ActionToolbarView<StateToken> actionToolbarView) { super(i18n.t("Participates in"), i18n.t("Groups in which participates"), ws); // super.setBorderStylePrimaryName("k-dropdownouter-part"); // // super.addStyleName("kune-Margin-Medium-t"); @@ -48,7 +50,7 @@ presenter.onDoubleClick(groupShortName); } }; - gridMenuPanel.onClick(go); + // gridMenuPanel.onClick(go); gridMenuPanel.onDoubleClick(go); super.add(gridMenuPanel); ws.addInSummary(this); Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/ParticipationSummaryPresenter.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/ParticipationSummaryPresenter.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/ParticipationSummaryPresenter.java 2008-11-19 17:55:46 UTC (rev 956) @@ -21,6 +21,8 @@ import java.util.List; +import org.ourproject.kune.platf.client.actions.GroupActionRegistry; +import org.ourproject.kune.platf.client.actions.toolbar.ActionParticipationToolbar; import org.ourproject.kune.platf.client.dto.AccessRightsDTO; import org.ourproject.kune.platf.client.dto.GroupDTO; import org.ourproject.kune.platf.client.dto.ParticipationDataDTO; @@ -48,8 +50,9 @@ public ParticipationSummaryPresenter(final I18nUITranslationService i18n, final StateManager stateManager, final ImageUtils imageUtils, final Session session, - final Provider<SocialNetworkServiceAsync> snServiceProvider, final WsThemePresenter wsThemePresenter) { - super(i18n, stateManager, imageUtils, session, snServiceProvider); + final Provider<SocialNetworkServiceAsync> snServiceProvider, final WsThemePresenter wsThemePresenter, + GroupActionRegistry groupActionRegistry, ActionParticipationToolbar actionParticipationToolbar) { + super(i18n, stateManager, imageUtils, session, snServiceProvider, groupActionRegistry); adminCategory = new GridGroup("admin in:", " ", i18n.tWithNT("Administrate these groups", "talking about a person"), false); collabCategory = new GridGroup(i18n.t("and as collaborator in:"), " ", i18n.t("Collaborate in these groups"), @@ -103,7 +106,5 @@ } else { hide(); } - } - } Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/SocialNetworkPresenter.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/SocialNetworkPresenter.java 2008-11-18 12:05:52 UTC (rev 955) +++ trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/SocialNetworkPresenter.java 2008-11-19 17:55:46 UTC (rev 956) @@ -18,6 +18,7 @@ * */package org.ourproject.kune.workspace.client.socialnet; +import org.ourproject.kune.platf.client.actions.GroupActionRegistry; import org.ourproject.kune.platf.client.dto.AccessRightsDTO; import org.ourproject.kune.platf.client.dto.GroupDTO; import org.ourproject.kune.platf.client.dto.GroupType; @@ -63,15 +64,17 @@ private final ImageUtils imageUtils; private final MenuItemCollection<GroupDTO> otherOperationsUsers; private final MenuItemCollection<GroupDTO> otherLoggedOperationsUsers; + private final GroupActionRegistry groupActionRegistry; public SocialNetworkPresenter(final I18nUITranslationService i18n, final StateManager stateManager, final ImageUtils imageUtils, final Session session, - final Provider<SocialNetworkServiceAsync> snServiceProvider) { + final Provider<SocialNetworkServiceAsync> snServiceProvider, GroupActionRegistry groupActionRegistry) { this.i18n = i18n; this.stateManager = stateManager; this.imageUtils = imageUtils; this.session = session; this.snServiceProvider = snServiceProvider; + this.groupActionRegistry = groupActionRegistry; createButtons(); createMenuActions(); otherOperationsUsers = new MenuItemCollection<GroupDTO>();