kune-commits
Threads by month
- ----- 2026 -----
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
April 2011
- 1 participants
- 33 discussions
Author: vjrj_
Date: 2011-04-27 22:48:48 +0200 (Wed, 27 Apr 2011)
New Revision: 1323
Added:
trunk/src/main/resources/db/update-0015-waveid.sql
Log:
Wave typeid removed
Added: trunk/src/main/resources/db/update-0015-waveid.sql
===================================================================
--- trunk/src/main/resources/db/update-0015-waveid.sql (rev 0)
+++ trunk/src/main/resources/db/update-0015-waveid.sql 2011-04-27 20:48:48 UTC (rev 1323)
@@ -0,0 +1 @@
+UPDATE `contents` SET typeId='docs.doc' WHERE typeId='docs.wave';
\ No newline at end of file
1
0
Author: vjrj_
Date: 2011-04-27 17:32:01 +0200 (Wed, 27 Apr 2011)
New Revision: 1322
Added:
trunk/.codepro/
trunk/.codepro/deadCodeEntryPoints.xml
trunk/src/main/java/cc/kune/blogs/shared/
trunk/src/main/java/cc/kune/blogs/shared/BlogsConstants.java
trunk/src/main/java/cc/kune/core/KuneCore.gwt.xml
trunk/src/main/java/cc/kune/core/shared/ToolConstants.java
trunk/src/main/java/cc/kune/docs/shared/
trunk/src/main/java/cc/kune/docs/shared/DocsConstants.java
Removed:
trunk/src/main/java/cc/kune/core/Core.gwt.xml
Modified:
trunk/.project
trunk/src/main/java/cc/kune/Kune.gwt.xml
trunk/src/main/java/cc/kune/blogs/KuneBlogs.gwt.xml
trunk/src/main/java/cc/kune/blogs/client/BlogsClientTool.java
trunk/src/main/java/cc/kune/blogs/client/actions/BlogsClientActions.java
trunk/src/main/java/cc/kune/blogs/client/actions/NewBlogBtn.java
trunk/src/main/java/cc/kune/blogs/client/actions/NewPostBtn.java
trunk/src/main/java/cc/kune/blogs/server/BlogServerTool.java
trunk/src/main/java/cc/kune/chat/client/actions/OpenGroupPublicChatRoomAction.java
trunk/src/main/java/cc/kune/chat/client/resources/ChatResources.java
trunk/src/main/java/cc/kune/common/client/utils/Pair.java
trunk/src/main/java/cc/kune/core/client/cnt/FoldableContentPanel.java
trunk/src/main/java/cc/kune/core/client/sn/AbstractSNPanel.java
trunk/src/main/java/cc/kune/core/client/sn/GroupSNPanel.java
trunk/src/main/java/cc/kune/core/client/sn/UserSNPanel.java
trunk/src/main/java/cc/kune/core/client/sn/actions/registry/AbstractSNActionsRegistry.java
trunk/src/main/java/cc/kune/core/client/sn/actions/registry/AbstractSNMembersActionsRegistry.java
trunk/src/main/java/cc/kune/core/client/state/ContentCacheDefault.java
trunk/src/main/java/cc/kune/core/client/ui/utils/ContentPosition.java
trunk/src/main/java/cc/kune/core/server/content/ContentManager.java
trunk/src/main/java/cc/kune/core/server/content/ContentManagerDefault.java
trunk/src/main/java/cc/kune/core/server/init/DatabaseInitializer.java
trunk/src/main/java/cc/kune/core/server/manager/GroupManager.java
trunk/src/main/java/cc/kune/core/server/manager/impl/ContentConstants.java
trunk/src/main/java/cc/kune/core/server/manager/impl/GroupManagerDefault.java
trunk/src/main/java/cc/kune/core/server/manager/impl/UserManagerDefault.java
trunk/src/main/java/cc/kune/core/server/rpc/ContentRPC.java
trunk/src/main/java/cc/kune/core/server/rpc/GroupRPC.java
trunk/src/main/java/cc/kune/core/server/rpc/UserRPC.java
trunk/src/main/java/cc/kune/core/server/state/StateServiceDefault.java
trunk/src/main/java/cc/kune/core/server/tool/ServerTool.java
trunk/src/main/java/cc/kune/docs/KuneDocs.gwt.xml
trunk/src/main/java/cc/kune/docs/client/DocsClientTool.java
trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java
trunk/src/main/java/cc/kune/docs/client/actions/NewDocBtn.java
trunk/src/main/java/cc/kune/docs/client/actions/NewFolderBtn.java
trunk/src/main/java/cc/kune/docs/server/DocumentServerTool.java
trunk/src/main/java/cc/kune/gspace/client/actions/ActionGroups.java
trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPresenter.java
trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerAsFlowPanel.java
trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerPresenter.java
trunk/src/main/java/cc/kune/wave/client/WebClient.java
trunk/src/main/java/cc/kune/wave/server/CustomUserRegistrationServlet.java
trunk/src/main/java/cc/kune/wave/server/KuneWaveManager.java
trunk/src/main/java/cc/kune/wave/server/KuneWaveManagerDefault.java
trunk/src/main/java/cc/kune/wave/server/ParticipantUtils.java
trunk/src/main/java/org/ourproject/kune/chat/server/ChatServerTool.java
trunk/src/main/java/org/ourproject/kune/gallery/server/GalleryServerTool.java
trunk/src/main/java/org/ourproject/kune/wiki/server/WikiServerTool.java
trunk/src/main/java/org/ourproject/kune/workspace/client/ctxnav/ContextNavigatorPresenter.java
trunk/src/main/resources/db/liquibase_changelog.xml
trunk/src/test/java/cc/kune/blogs/server/BlogServerToolTest.java
trunk/src/test/java/cc/kune/core/server/PersistencePreLoadedDataTest.java
trunk/src/test/java/cc/kune/core/server/integration/DatabaseInitializerTest.java
trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceAddTest.java
trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceVariousTest.java
trunk/src/test/java/cc/kune/core/server/manager/ContentManagerTest.java
trunk/src/test/java/cc/kune/core/server/manager/GroupManagerTest.java
trunk/src/test/java/cc/kune/docs/DocumentToolTest.java
trunk/src/test/java/cc/kune/docs/server/DocumentServerToolTest.java
trunk/src/test/java/cc/kune/wave/server/KuneWaveManagerDefaultTest.java
trunk/src/test/java/org/ourproject/kune/platf/client/ui/dialogs/upload/FileUploaderPresenterTest.java
Log:
More blogs/docs and WIAB integration work
Added: trunk/.codepro/deadCodeEntryPoints.xml
===================================================================
--- trunk/.codepro/deadCodeEntryPoints.xml (rev 0)
+++ trunk/.codepro/deadCodeEntryPoints.xml 2011-04-27 15:32:01 UTC (rev 1322)
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Generated by Code Pro -->
+<entry-points
+ version="1">
+ <explicit-entry-points>
+ <explicit-entry-point
+ handle="=kune/src\/main\/java<cc.kune.client{KuneEntryPoint.java[KuneEntryPoint~onModuleLoad"/>
+ </explicit-entry-points>
+ <include-main
+ enabled="true"/>
+ <include-tests
+ enabled="false"/>
+ <include-xml
+ enabled="true"/>
+</entry-points>
\ No newline at end of file
Property changes on: trunk/.codepro/deadCodeEntryPoints.xml
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/.project
===================================================================
--- trunk/.project 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/.project 2011-04-27 15:32:01 UTC (rev 1322)
@@ -1,38 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
- <name>kune</name>
- <comment>kune free/open/libre collaboration platform. NO_M2ECLIPSE_SUPPORT: Project files created with the maven-eclipse-plugin are not supported in M2Eclipse.</comment>
- <projects/>
- <buildSpec>
- <buildCommand>
- <name>com.google.gdt.eclipse.core.webAppProjectValidator</name>
- </buildCommand>
- <buildCommand>
- <name>com.google.gwt.eclipse.core.gwtProjectValidator</name>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.wst.common.project.facet.core.builder</name>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.wst.validation.validationbuilder</name>
- </buildCommand>
- <buildCommand>
- <name>edu.umd.cs.findbugs.plugin.eclipse.findbugsBuilder</name>
- </buildCommand>
- <buildCommand>
- <name>com.instantiations.assist.eclipse.coverage.instrumentationBuilder</name>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.wst.common.project.facet.core.nature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
- <nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
- <nature>org.eclipse.ajdt.ui.ajnature</nature>
- <nature>com.google.gwt.eclipse.core.gwtNature</nature>
- <nature>edu.umd.cs.findbugs.plugin.eclipse.findbugsNature</nature>
- <nature>com.instantiations.assist.eclipse.coverage.codeCoverageNature</nature>
- </natures>
-</projectDescription>
\ No newline at end of file
+ <name>kune</name>
+ <comment>kune free/open/libre collaboration platform. NO_M2ECLIPSE_SUPPORT: Project files created with the maven-eclipse-plugin are not supported in M2Eclipse.</comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>com.google.gdt.eclipse.core.webAppProjectValidator</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>com.google.gwt.eclipse.core.gwtProjectValidator</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.wst.common.project.facet.core.builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.wst.validation.validationbuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>edu.umd.cs.findbugs.plugin.eclipse.findbugsBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>com.instantiations.assist.eclipse.coverage.instrumentationBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>net.sourceforge.pmd.eclipse.plugin.pmdBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.wst.common.project.facet.core.nature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
+ <nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
+ <nature>org.eclipse.ajdt.ui.ajnature</nature>
+ <nature>com.google.gwt.eclipse.core.gwtNature</nature>
+ <nature>edu.umd.cs.findbugs.plugin.eclipse.findbugsNature</nature>
+ <nature>com.instantiations.assist.eclipse.coverage.codeCoverageNature</nature>
+ <nature>net.sourceforge.pmd.eclipse.plugin.pmdNature</nature>
+ </natures>
+</projectDescription>
Modified: trunk/src/main/java/cc/kune/Kune.gwt.xml
===================================================================
--- trunk/src/main/java/cc/kune/Kune.gwt.xml 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/Kune.gwt.xml 2011-04-27 15:32:01 UTC (rev 1322)
@@ -3,7 +3,7 @@
<module rename-to="ws">
<inherits name="com.google.gwt.user.User" />
<inherits name='com.google.gwt.logging.Logging' />
- <inherits name="cc.kune.core.Core" />
+ <inherits name="cc.kune.core.KuneCore" />
<inherits name="cc.kune.wave.KuneWave" />
<inherits name="cc.kune.chat.KuneChat" />
<inherits name="cc.kune.docs.KuneDocs" />
Modified: trunk/src/main/java/cc/kune/blogs/KuneBlogs.gwt.xml
===================================================================
--- trunk/src/main/java/cc/kune/blogs/KuneBlogs.gwt.xml 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/blogs/KuneBlogs.gwt.xml 2011-04-27 15:32:01 UTC (rev 1322)
@@ -1,5 +1,6 @@
<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit 2.1.0//EN" "http://google-web-toolkit.googlecode.com/svn/tags/2.1.0/distro-source/core/…">
<module>
- <inherits name="cc.kune.core.Core" />
- <source path="client" />
+ <inherits name="cc.kune.core.KuneCore" />
+ <source path="client" />
+ <source path="shared" />
</module>
\ No newline at end of file
Modified: trunk/src/main/java/cc/kune/blogs/client/BlogsClientTool.java
===================================================================
--- trunk/src/main/java/cc/kune/blogs/client/BlogsClientTool.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/blogs/client/BlogsClientTool.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -19,6 +19,11 @@
*/
package cc.kune.blogs.client;
+import static cc.kune.blogs.shared.BlogsConstants.NAME;
+import static cc.kune.blogs.shared.BlogsConstants.TYPE_BLOG;
+import static cc.kune.blogs.shared.BlogsConstants.TYPE_POST;
+import static cc.kune.blogs.shared.BlogsConstants.TYPE_ROOT;
+import static cc.kune.blogs.shared.BlogsConstants.TYPE_UPLOADEDFILE;
import cc.kune.core.client.i18n.I18nUITranslationService;
import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
import cc.kune.core.client.resources.nav.NavResources;
@@ -29,11 +34,6 @@
public class BlogsClientTool extends FoldableAbstractClientTool {
- public static final String NAME = "blogs";
- public static final String TYPE_BLOG = NAME + "." + "blog";
- public static final String TYPE_POST = NAME + "." + "post";
- public static final String TYPE_ROOT = NAME + "." + "root";
- public static final String TYPE_UPLOADEDFILE = NAME + "." + FoldableAbstractClientTool.UPLOADEDFILE_SUFFIX;
private final NavResources navResources;
@Inject
Modified: trunk/src/main/java/cc/kune/blogs/client/actions/BlogsClientActions.java
===================================================================
--- trunk/src/main/java/cc/kune/blogs/client/actions/BlogsClientActions.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/blogs/client/actions/BlogsClientActions.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -19,10 +19,10 @@
\*/
package cc.kune.blogs.client.actions;
-import static org.ourproject.kune.blogs.client.BlogClientTool.TYPE_BLOG;
-import static org.ourproject.kune.blogs.client.BlogClientTool.TYPE_POST;
-import static org.ourproject.kune.blogs.client.BlogClientTool.TYPE_ROOT;
-import static org.ourproject.kune.blogs.client.BlogClientTool.TYPE_UPLOADEDFILE;
+import static cc.kune.blogs.shared.BlogsConstants.TYPE_BLOG;
+import static cc.kune.blogs.shared.BlogsConstants.TYPE_POST;
+import static cc.kune.blogs.shared.BlogsConstants.TYPE_ROOT;
+import static cc.kune.blogs.shared.BlogsConstants.TYPE_UPLOADEDFILE;
import cc.kune.core.client.actions.ActionRegistryByType;
import cc.kune.core.client.i18n.I18nUITranslationService;
import cc.kune.core.client.resources.CoreResources;
Modified: trunk/src/main/java/cc/kune/blogs/client/actions/NewBlogBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/blogs/client/actions/NewBlogBtn.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/blogs/client/actions/NewBlogBtn.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -1,6 +1,6 @@
package cc.kune.blogs.client.actions;
-import cc.kune.blogs.client.BlogsClientTool;
+import cc.kune.blogs.shared.BlogsConstants;
import cc.kune.core.client.resources.nav.NavResources;
import cc.kune.core.shared.i18n.I18nTranslationService;
import cc.kune.gspace.client.actions.NewContainerBtn;
@@ -12,7 +12,7 @@
@Inject
public NewBlogBtn(final I18nTranslationService i18n, final NewContainerAction action, final NavResources res) {
super(i18n, action, res, i18n.t("New blog"), i18n.t("Create a new blog"), i18n.t("New blog"),
- BlogsClientTool.TYPE_BLOG);
+ BlogsConstants.TYPE_BLOG);
}
}
Modified: trunk/src/main/java/cc/kune/blogs/client/actions/NewPostBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/blogs/client/actions/NewPostBtn.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/blogs/client/actions/NewPostBtn.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -1,6 +1,6 @@
package cc.kune.blogs.client.actions;
-import cc.kune.blogs.client.BlogsClientTool;
+import cc.kune.blogs.shared.BlogsConstants;
import cc.kune.common.client.shortcuts.GlobalShortcutRegister;
import cc.kune.core.client.resources.nav.NavResources;
import cc.kune.core.shared.i18n.I18nTranslationService;
@@ -14,7 +14,7 @@
public NewPostBtn(final I18nTranslationService i18n, final NewContentAction action, final NavResources res,
final GlobalShortcutRegister shorcutReg) {
super(i18n, action, res, shorcutReg, i18n.t("New post"), i18n.t("Create a new blog post"), i18n.t("New post"),
- BlogsClientTool.TYPE_POST);
+ BlogsConstants.TYPE_POST);
}
}
Modified: trunk/src/main/java/cc/kune/blogs/server/BlogServerTool.java
===================================================================
--- trunk/src/main/java/cc/kune/blogs/server/BlogServerTool.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/blogs/server/BlogServerTool.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -19,7 +19,11 @@
*/
package cc.kune.blogs.server;
-
+import static cc.kune.blogs.shared.BlogsConstants.NAME;
+import static cc.kune.blogs.shared.BlogsConstants.TYPE_BLOG;
+import static cc.kune.blogs.shared.BlogsConstants.TYPE_POST;
+import static cc.kune.blogs.shared.BlogsConstants.TYPE_ROOT;
+import static cc.kune.blogs.shared.BlogsConstants.TYPE_UPLOADEDFILE;
import cc.kune.core.client.errors.ContainerNotPermittedException;
import cc.kune.core.client.errors.ContentNotPermittedException;
import cc.kune.core.server.content.ContainerManager;
@@ -40,17 +44,12 @@
import com.google.inject.Inject;
public class BlogServerTool implements ServerTool {
- public static final String NAME = "blogs";
- public static final String TYPE_ROOT = NAME + "." + "root";
- public static final String TYPE_BLOG = NAME + "." + "blog";
- public static final String TYPE_POST = NAME + "." + "post";
- public static final String TYPE_UPLOADEDFILE = NAME + "." + ServerTool.UPLOADEDFILE_SUFFIX;
public static final String ROOT_NAME = "blogs";
- private final ContentManager contentManager;
private final ToolConfigurationManager configurationManager;
private final ContainerManager containerManager;
+ private final ContentManager contentManager;
private final I18nTranslationService i18n;
@Inject
@@ -62,85 +61,94 @@
this.i18n = translationService;
}
- public void checkTypesBeforeContainerCreation(String parentTypeId, String typeId) {
+ void checkContainerTypeId(final String parentTypeId, final String typeId) {
+ if (typeId.equals(TYPE_BLOG)) {
+ // ok valid container
+ if ((typeId.equals(TYPE_BLOG) && parentTypeId.equals(TYPE_ROOT))) {
+ // ok
+ } else {
+ throw new ContainerNotPermittedException();
+ }
+ } else {
+ throw new ContainerNotPermittedException();
+ }
+ }
+
+ void checkContentTypeId(final String parentTypeId, final String typeId) {
+ if (typeId.equals(TYPE_UPLOADEDFILE) || typeId.equals(TYPE_POST)) {
+ // ok valid content
+ if ((typeId.equals(TYPE_UPLOADEDFILE) && parentTypeId.equals(TYPE_BLOG))
+ || (typeId.equals(TYPE_POST) && parentTypeId.equals(TYPE_BLOG))) {
+ // ok
+ } else {
+ throw new ContentNotPermittedException();
+ }
+
+ } else {
+ throw new ContentNotPermittedException();
+ }
+ }
+
+ @Override
+ public void checkTypesBeforeContainerCreation(final String parentTypeId, final String typeId) {
checkContainerTypeId(parentTypeId, typeId);
}
- public void checkTypesBeforeContentCreation(String parentTypeId, String typeId) {
+ @Override
+ public void checkTypesBeforeContentCreation(final String parentTypeId, final String typeId) {
checkContentTypeId(parentTypeId, typeId);
}
+ @Override
public String getName() {
return NAME;
}
+ @Override
public String getRootName() {
return ROOT_NAME;
}
+ @Override
public ServerToolTarget getTarget() {
return ServerToolTarget.forBoth;
}
- public Group initGroup(final User user, final Group group) {
+ @Override
+ public Group initGroup(final User user, final Group group, final Object... otherVars) {
final ToolConfiguration config = new ToolConfiguration();
final Container rootFolder = containerManager.createRootFolder(group, NAME, ROOT_NAME, TYPE_ROOT);
config.setRoot(rootFolder);
group.setToolConfig(NAME, config);
configurationManager.persist(config);
- I18nLanguage language = user.getLanguage();
+ final I18nLanguage language = user.getLanguage();
final Container blog = containerManager.createFolder(group, rootFolder, i18n.t("Blog sample"), language,
TYPE_BLOG);
- final Content content = contentManager.createContent(i18n.t("A post sample"), "", user, blog,
- BlogServerTool.TYPE_POST);
+ final Content content = contentManager.createContent(i18n.t("A post sample"),
+ i18n.t("This is only a post sample. You can edit it, rename the post and this blog"), user, blog,
+ TYPE_POST);
content.addAuthor(user);
content.setLanguage(language);
content.setTypeId(TYPE_POST);
content.setStatus(ContentStatus.publishedOnline);
- contentManager.save(user, content,
- i18n.t("This is only a post sample. You can edit it, rename the post and this blog"));
+ contentManager.save(user, content);
return group;
}
+ @Override
public void onCreateContainer(final Container container, final Container parent) {
}
+ @Override
public void onCreateContent(final Content content, final Container parent) {
}
+ @Override
@Inject
public void register(final ServerToolRegistry registry) {
registry.register(this);
}
-
- void checkContainerTypeId(final String parentTypeId, final String typeId) {
- if (typeId.equals(TYPE_BLOG)) {
- // ok valid container
- if ((typeId.equals(TYPE_BLOG) && parentTypeId.equals(TYPE_ROOT))) {
- // ok
- } else {
- throw new ContainerNotPermittedException();
- }
- } else {
- throw new ContainerNotPermittedException();
- }
- }
-
- void checkContentTypeId(final String parentTypeId, final String typeId) {
- if (typeId.equals(TYPE_UPLOADEDFILE) || typeId.equals(TYPE_POST)) {
- // ok valid content
- if ((typeId.equals(TYPE_UPLOADEDFILE) && parentTypeId.equals(TYPE_BLOG))
- || (typeId.equals(TYPE_POST) && parentTypeId.equals(TYPE_BLOG))) {
- // ok
- } else {
- throw new ContentNotPermittedException();
- }
-
- } else {
- throw new ContentNotPermittedException();
- }
- }
}
Added: trunk/src/main/java/cc/kune/blogs/shared/BlogsConstants.java
===================================================================
--- trunk/src/main/java/cc/kune/blogs/shared/BlogsConstants.java (rev 0)
+++ trunk/src/main/java/cc/kune/blogs/shared/BlogsConstants.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -0,0 +1,15 @@
+package cc.kune.blogs.shared;
+
+import cc.kune.core.shared.ToolConstants;
+
+public final class BlogsConstants {
+
+ public static final String NAME = "blogs";
+ public static final String TYPE_BLOG = NAME + "." + "blog";
+ public static final String TYPE_POST = NAME + "." + "post";
+ public static final String TYPE_ROOT = NAME + "." + "root";
+ public static final String TYPE_UPLOADEDFILE = NAME + "." + ToolConstants.UPLOADEDFILE_SUFFIX;
+
+ private BlogsConstants() {
+ }
+}
Property changes on: trunk/src/main/java/cc/kune/blogs/shared/BlogsConstants.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/src/main/java/cc/kune/chat/client/actions/OpenGroupPublicChatRoomAction.java
===================================================================
--- trunk/src/main/java/cc/kune/chat/client/actions/OpenGroupPublicChatRoomAction.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/chat/client/actions/OpenGroupPublicChatRoomAction.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -54,7 +54,7 @@
putValue(Action.NAME, i18n.t("Group's public room"));
putValue(Action.SHORT_DESCRIPTION, i18n.t("Enter to this group public chat room"));
putValue(Action.SMALL_ICON, res.groupChat());
- setInviteMembers(false);
+ setInviteMembersImpl(false);
}
@Override
@@ -103,6 +103,10 @@
}
public void setInviteMembers(final boolean inviteMembers) {
+ setInviteMembersImpl(inviteMembers);
+ }
+
+ private void setInviteMembersImpl(final boolean inviteMembers) {
this.inviteMembers = inviteMembers;
}
Modified: trunk/src/main/java/cc/kune/chat/client/resources/ChatResources.java
===================================================================
--- trunk/src/main/java/cc/kune/chat/client/resources/ChatResources.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/chat/client/resources/ChatResources.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -87,7 +87,7 @@
ImageResource unavailable();
@Source("user_add.png")
- ImageResource user_add();
+ ImageResource userAdd();
@Source("xa.png")
ImageResource xa();
Modified: trunk/src/main/java/cc/kune/common/client/utils/Pair.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/utils/Pair.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/common/client/utils/Pair.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -19,7 +19,7 @@
* @param <L>
* @param <R>
*/
-public class Pair<L, R> {
+public final class Pair<L, R> {
public static <L, R> Pair<L, R> create(final L l, final R r) {
return new Pair<L, R>(l, r);
}
Deleted: trunk/src/main/java/cc/kune/core/Core.gwt.xml
===================================================================
--- trunk/src/main/java/cc/kune/core/Core.gwt.xml 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/core/Core.gwt.xml 2011-04-27 15:32:01 UTC (rev 1322)
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit 2.1.0//EN" "http://google-web-toolkit.googlecode.com/svn/tags/2.1.0/distro-source/core/…">
-<module rename-to="ws">
- <!-- source / public / etc ==================================== -->
- <!-- excluding test sources for this module workaround for open issue 4454
- see http://code.google.com/p/google-web-toolkit/issues/detail?id=4454 -->
- <source path='client'
- excludes="**/*Test.java,**/*Tests.java,**/*MockProvider.java" />
- <source path="shared" />
- <public path="public" />
- <!-- Dependencies ============================================= -->
- <inherits name="com.google.gwt.user.User" />
- <inherits name="cc.kune.gspace.GSpace" />
- <inherits name="cc.kune.msgs.KuneMsgs" />
- <inherits name="cc.kune.common.KuneCommon" />
- <inherits name="com.extjs.gxt.ui.GXT" />
-<!-- <inherits name="com.jhickman.web.gwt.gxtuibinder.GxtUiBinder" />-->
- <inherits name="com.calclab.suco.Suco" />
- <inherits name='com.gwtplatform.mvp.Mvp' />
- <!-- Styles =================================================== -->
- <!-- <inherits name="com.google.gwt.user.theme.standard.Standard" /> -->
-</module>
\ No newline at end of file
Copied: trunk/src/main/java/cc/kune/core/KuneCore.gwt.xml (from rev 1320, trunk/src/main/java/cc/kune/core/Core.gwt.xml)
===================================================================
--- trunk/src/main/java/cc/kune/core/KuneCore.gwt.xml (rev 0)
+++ trunk/src/main/java/cc/kune/core/KuneCore.gwt.xml 2011-04-27 15:32:01 UTC (rev 1322)
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit 2.1.0//EN" "http://google-web-toolkit.googlecode.com/svn/tags/2.1.0/distro-source/core/…">
+<module rename-to="ws">
+ <!-- source / public / etc ==================================== -->
+ <!-- excluding test sources for this module workaround for open issue 4454
+ see http://code.google.com/p/google-web-toolkit/issues/detail?id=4454 -->
+ <source path='client'
+ excludes="**/*Test.java,**/*Tests.java,**/*MockProvider.java" />
+ <source path="shared" />
+ <public path="public" />
+ <!-- Dependencies ============================================= -->
+ <inherits name="com.google.gwt.user.User" />
+ <inherits name="cc.kune.gspace.GSpace" />
+ <inherits name="cc.kune.msgs.KuneMsgs" />
+ <inherits name="cc.kune.common.KuneCommon" />
+ <inherits name="com.extjs.gxt.ui.GXT" />
+<!-- <inherits name="com.jhickman.web.gwt.gxtuibinder.GxtUiBinder" />-->
+ <inherits name="com.calclab.suco.Suco" />
+ <inherits name='com.gwtplatform.mvp.Mvp' />
+ <!-- Styles =================================================== -->
+ <!-- <inherits name="com.google.gwt.user.theme.standard.Standard" /> -->
+</module>
\ No newline at end of file
Modified: trunk/src/main/java/cc/kune/core/client/cnt/FoldableContentPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/cnt/FoldableContentPanel.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/core/client/cnt/FoldableContentPanel.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -89,7 +89,8 @@
}
@Override
- public void setEditableWaveContent(final WaveRef waveRef, final boolean isNewWave) {
+ public void setEditableWaveContent(final WaveRef waveRef, final boolean isNewWave) { // NOPMD by vjrj on 27/04/11 8:40
+ // FIXME
}
// public void setWave(final String waveId, final Listener0 onLoaded) {
Modified: trunk/src/main/java/cc/kune/core/client/sn/AbstractSNPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/AbstractSNPanel.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/core/client/sn/AbstractSNPanel.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -31,13 +31,12 @@
interface AbstractSNPanelUiBinder extends UiBinder<Widget, AbstractSNPanel> {
}
- private static final String CATEG_HEIGHT = "80px";
-
+ private final static int AVATARLABELMAXSIZE = 4;
+ private final static int AVATARSIZE = 22;
+ private final static String CATEG_HEIGHT = "80px";
private static AbstractSNPanelUiBinder uiBinder = GWT.create(AbstractSNPanelUiBinder.class);
- protected final ActionSimplePanel actions;
- int AVATARLABELMAXSIZE = 4;
- int AVATARSIZE = 22;
+ protected final ActionSimplePanel actions;
ActionFlowPanel bottomActionsToolbar;
@UiField
FlowPanel bottomPanel;
Modified: trunk/src/main/java/cc/kune/core/client/sn/GroupSNPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/GroupSNPanel.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/core/client/sn/GroupSNPanel.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -17,7 +17,7 @@
@Inject
public GroupSNPanel(final I18nTranslationService i18n, final GuiProvider guiProvider, final GSpaceArmor armor) {
super(i18n, guiProvider, armor);
- setVisible(false);
+ setVisibleImpl(false);
mainTitle.setText(i18n.t("Group members"));
Tooltip.to(mainTitle, i18n.t("People and groups collaborating in this group"));
firstCategoryLabel.setText(i18n.t("Admins"));
@@ -83,6 +83,10 @@
@Override
public void setVisible(final boolean visible) {
+ setVisibleImpl(visible);
+ }
+
+ private void setVisibleImpl(final boolean visible) {
mainPanel.setVisible(visible);
}
Modified: trunk/src/main/java/cc/kune/core/client/sn/UserSNPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/UserSNPanel.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/core/client/sn/UserSNPanel.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -18,7 +18,7 @@
@Inject
public UserSNPanel(final I18nTranslationService i18n, final GuiProvider guiProvider, final GSpaceArmor armor) {
super(i18n, guiProvider, armor);
- setVisible(false);
+ setVisibleImpl(false);
mainTitle.setText(i18n.t("His/her network:"));
mainTitle.setTitle(i18n.t("This user buddies and groups where participes"));
firstCategoryLabel.setText(i18n.t("Buddies"));
@@ -76,6 +76,10 @@
@Override
public void setVisible(final boolean visible) {
+ setVisibleImpl(visible);
+ }
+
+ private void setVisibleImpl(final boolean visible) {
mainPanel.setVisible(visible);
}
Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/registry/AbstractSNActionsRegistry.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/actions/registry/AbstractSNActionsRegistry.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/core/client/sn/actions/registry/AbstractSNActionsRegistry.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -4,4 +4,8 @@
@SuppressWarnings("serial")
public abstract class AbstractSNActionsRegistry extends GuiActionDescCollection {
+
+ public AbstractSNActionsRegistry() {
+ super();
+ }
}
\ No newline at end of file
Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/registry/AbstractSNMembersActionsRegistry.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/actions/registry/AbstractSNMembersActionsRegistry.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/core/client/sn/actions/registry/AbstractSNMembersActionsRegistry.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -8,4 +8,8 @@
@SuppressWarnings("serial")
public abstract class AbstractSNMembersActionsRegistry extends ArrayList<Provider<MenuItemDescriptor>> {
+
+ public AbstractSNMembersActionsRegistry() {
+ super();
+ }
}
\ No newline at end of file
Modified: trunk/src/main/java/cc/kune/core/client/state/ContentCacheDefault.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/state/ContentCacheDefault.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/core/client/state/ContentCacheDefault.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -42,7 +42,8 @@
this.server = server;
this.eventBus = eventBus;
this.cacheMap = new HashMap<StateToken, StateAbstractDTO>();
- useCache = true;
+ // Don't use while we don't check changes in the server
+ useCache = false;
}
@Override
Modified: trunk/src/main/java/cc/kune/core/client/ui/utils/ContentPosition.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/ui/utils/ContentPosition.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/core/client/ui/utils/ContentPosition.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -35,11 +35,11 @@
public static final String RIGHT = "right";
private static I18nTranslationService i18n;
private static Object[][] positionObjs;
- public static final String[][] positions = { new String[] { LEFT }, new String[] { CENTER }, new String[] { RIGHT } };
+ public static final String[][] POSITIONS = { new String[] { LEFT }, new String[] { CENTER }, new String[] { RIGHT } };
public synchronized static Object[][] getPositions() {
if (positionObjs == null) {
- final String[][] values = positions;
+ final String[][] values = POSITIONS;
positionObjs = new Object[values.length][1];
int i = 0;
for (final String[] position : values) {
Modified: trunk/src/main/java/cc/kune/core/server/content/ContentManager.java
===================================================================
--- trunk/src/main/java/cc/kune/core/server/content/ContentManager.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/core/server/content/ContentManager.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -21,7 +21,6 @@
import java.util.Date;
-
import cc.kune.core.client.errors.DefaultException;
import cc.kune.core.server.manager.Manager;
import cc.kune.core.server.manager.impl.SearchResult;
@@ -62,6 +61,8 @@
Content renameContent(User user, Long contentId, String newName) throws DefaultException;
+ Content save(User user, Content content);
+
Content save(User editor, Content content, String body);
SearchResult<Content> search(String search);
Modified: trunk/src/main/java/cc/kune/core/server/content/ContentManagerDefault.java
===================================================================
--- trunk/src/main/java/cc/kune/core/server/content/ContentManagerDefault.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/core/server/content/ContentManagerDefault.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -28,7 +28,10 @@
import org.apache.lucene.queryParser.MultiFieldQueryParser;
import org.apache.lucene.queryParser.ParseException;
import org.apache.lucene.search.Query;
+import org.waveprotocol.wave.model.waveref.WaveRef;
+import org.waveprotocol.wave.util.escapers.jvm.JavaWaverefEncoder;
+import cc.kune.blogs.shared.BlogsConstants;
import cc.kune.core.client.errors.DefaultException;
import cc.kune.core.client.errors.I18nNotFoundException;
import cc.kune.core.client.errors.NameInUseException;
@@ -42,6 +45,7 @@
import cc.kune.core.server.utils.FilenameUtils;
import cc.kune.core.shared.domain.ContentStatus;
import cc.kune.core.shared.domain.RateResult;
+import cc.kune.docs.shared.DocsConstants;
import cc.kune.domain.Container;
import cc.kune.domain.Content;
import cc.kune.domain.I18nLanguage;
@@ -52,6 +56,8 @@
import cc.kune.domain.finders.ContentFinder;
import cc.kune.domain.finders.I18nLanguageFinder;
import cc.kune.domain.finders.UserFinder;
+import cc.kune.wave.server.KuneWaveManager;
+import cc.kune.wave.server.ParticipantUtils;
import com.google.inject.Inject;
import com.google.inject.Provider;
@@ -63,14 +69,17 @@
private final ContainerFinder containerFinder;
private final ContentFinder contentFinder;
private final FinderService finder;
+ private final KuneWaveManager kuneWaveManager;
private final I18nLanguageFinder languageFinder;
+ private final ParticipantUtils participantUtils;
private final TagUserContentManager tagManager;
private final UserFinder userFinder;
@Inject
public ContentManagerDefault(final ContentFinder contentFinder, final ContainerFinder containerFinder,
final Provider<EntityManager> provider, final FinderService finder, final UserFinder userFinder,
- final I18nLanguageFinder languageFinder, final TagUserContentManager tagManager) {
+ final I18nLanguageFinder languageFinder, final TagUserContentManager tagManager,
+ final KuneWaveManager kuneWaveManager, final ParticipantUtils participantUtils) {
super(provider, Content.class);
this.contentFinder = contentFinder;
this.containerFinder = containerFinder;
@@ -78,6 +87,8 @@
this.userFinder = userFinder;
this.languageFinder = languageFinder;
this.tagManager = tagManager;
+ this.kuneWaveManager = kuneWaveManager;
+ this.participantUtils = participantUtils;
}
@Override
@@ -93,6 +104,7 @@
@Override
public Content createContent(final String title, final String body, final User author, final Container container,
final String typeId) {
+ String contentBody;
FilenameUtils.checkBasicFilename(title);
final String newtitle = findInexistentTitle(container, title);
final Content newContent = new Content();
@@ -103,7 +115,14 @@
newContent.setContainer(container);
final Revision revision = new Revision(newContent);
revision.setTitle(newtitle);
- revision.setBody(body);
+ // Duplicate in StateServiceDefault
+ if ((typeId.equals(DocsConstants.TYPE_DOCUMENT)) || (typeId.equals(BlogsConstants.TYPE_POST))) {
+ final WaveRef waveRef = kuneWaveManager.createWave(title, body, participantUtils.of(author.getShortName()));
+ contentBody = JavaWaverefEncoder.encodeToUriPathSegment(waveRef);
+ } else {
+ contentBody = body;
+ }
+ revision.setBody(contentBody);
newContent.addRevision(revision);
return persist(newContent);
}
@@ -187,6 +206,11 @@
}
@Override
+ public Content save(final User editor, final Content content) {
+ return persist(content);
+ }
+
+ @Override
public Content save(final User editor, final Content content, final String body) {
final Revision revision = new Revision(content);
revision.setEditor(editor);
Modified: trunk/src/main/java/cc/kune/core/server/init/DatabaseInitializer.java
===================================================================
--- trunk/src/main/java/cc/kune/core/server/init/DatabaseInitializer.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/core/server/init/DatabaseInitializer.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -5,8 +5,6 @@
import javax.persistence.NoResultException;
import org.waveprotocol.box.server.authentication.PasswordDigest;
-import org.waveprotocol.wave.model.waveref.WaveRef;
-import org.waveprotocol.wave.util.escapers.jvm.JavaWaverefEncoder;
import cc.kune.core.client.errors.UserMustBeLoggedException;
import cc.kune.core.server.content.ContentManager;
@@ -83,17 +81,15 @@
final License defaultLicense = licenseManager.findByShortName(defaultLicenseId);
final Group siteGroup = new Group(siteShortName, siteName, defaultLicense, GroupType.PROJECT);
- groupManager.createGroup(siteGroup, user);
+ groupManager.createGroup(siteGroup, user, ContentConstants.INITIAL_CONTENT.replaceAll("\\[%s\\]", siteName));
+ final Content defaultContent = siteGroup.getDefaultContent();
+ contentManager.setStatus(defaultContent.getId(), ContentStatus.publishedOnline);
+ contentManager.save(user, defaultContent);
+
userManager.reIndex();
groupManager.reIndex();
- final Content defaultContent = siteGroup.getDefaultContent();
- final WaveRef waveId = kuneWaveManager.createWave(
- ContentConstants.INITIAL_CONTENT.replaceAll("\\[%s\\]", siteName), user.getShortName());
- contentManager.save(user, defaultContent, JavaWaverefEncoder.encodeToUriPathSegment(waveId));
-
- contentManager.setStatus(defaultContent.getId(), ContentStatus.publishedOnline);
}
private void createLicenses() {
Modified: trunk/src/main/java/cc/kune/core/server/manager/GroupManager.java
===================================================================
--- trunk/src/main/java/cc/kune/core/server/manager/GroupManager.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/core/server/manager/GroupManager.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -21,7 +21,6 @@
import java.util.List;
-
import cc.kune.core.client.errors.AccessViolationException;
import cc.kune.core.client.errors.EmailAddressInUseException;
import cc.kune.core.client.errors.GroupNameInUseException;
@@ -39,7 +38,8 @@
void clearGroupBackImage(Group group);
- Group createGroup(Group group, User user) throws GroupNameInUseException, UserMustBeLoggedException;
+ Group createGroup(Group group, User user, String publicDescrip) throws GroupNameInUseException,
+ UserMustBeLoggedException;
Group createUserGroup(User user) throws GroupNameInUseException, EmailAddressInUseException;
Modified: trunk/src/main/java/cc/kune/core/server/manager/impl/ContentConstants.java
===================================================================
--- trunk/src/main/java/cc/kune/core/server/manager/impl/ContentConstants.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/core/server/manager/impl/ContentConstants.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -1,6 +1,6 @@
package cc.kune.core.server.manager.impl;
-public class ContentConstants {
+public final class ContentConstants {
public static final String INITIAL_CONTENT = "<span style=\"font-weight: bold;\">Welcome to [%s]</span><br/>"
+ " <br/>" + " This site is powered by <a target=\"_blank\""
@@ -167,6 +167,8 @@
+ " the ones others shared with you. You can use the search box to"
+ " search through all your waves, using specific keywords.<br/>";
+ public static final String WELCOME_WAVE_CONTENT_TITLE = "Welcome to [%s]";
+
private ContentConstants() {
}
}
Modified: trunk/src/main/java/cc/kune/core/server/manager/impl/GroupManagerDefault.java
===================================================================
--- trunk/src/main/java/cc/kune/core/server/manager/impl/GroupManagerDefault.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/core/server/manager/impl/GroupManagerDefault.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -46,6 +46,7 @@
import cc.kune.core.shared.domain.AdmissionType;
import cc.kune.core.shared.domain.GroupListMode;
import cc.kune.core.shared.dto.GroupType;
+import cc.kune.core.shared.i18n.I18nTranslationService;
import cc.kune.domain.AccessLists;
import cc.kune.domain.Content;
import cc.kune.domain.Group;
@@ -65,6 +66,7 @@
public class GroupManagerDefault extends DefaultManager<Group, Long> implements GroupManager {
private final GroupFinder finder;
+ private final I18nTranslationService i18n;
private final KuneProperties kuneProperties;
private final LicenseFinder licenseFinder;
private final LicenseManager licenseManager;
@@ -77,7 +79,7 @@
public GroupManagerDefault(final Provider<EntityManager> provider, final GroupFinder finder,
final UserFinder userFinder, final KuneProperties kuneProperties, final DatabaseProperties properties,
final ServerToolRegistry registry, final LicenseManager licenseManager, final LicenseFinder licenseFinder,
- final ServerToolRegistry serverToolRegistry) {
+ final ServerToolRegistry serverToolRegistry, final I18nTranslationService i18n) {
super(provider, Group.class);
this.finder = finder;
this.userFinder = userFinder;
@@ -87,6 +89,7 @@
this.licenseManager = licenseManager;
this.licenseFinder = licenseFinder;
this.serverToolRegistry = serverToolRegistry;
+ this.i18n = i18n;
}
@Override
@@ -110,8 +113,8 @@
}
@Override
- public Group createGroup(final Group group, final User user) throws GroupNameInUseException,
- UserMustBeLoggedException {
+ public Group createGroup(final Group group, final User user, final String publicDescrip)
+ throws GroupNameInUseException, UserMustBeLoggedException {
final String defaultSiteWorkspaceTheme = kuneProperties.get(KuneProperties.WS_THEMES_DEF);
if (User.isKnownUser(user)) {
if (group.getGroupType().equals(GroupType.COMMUNITY)) {
@@ -128,7 +131,8 @@
group.setDefaultLicense(license);
group.setWorkspaceTheme(defaultSiteWorkspaceTheme);
initSocialNetwork(group, user.getUserGroup());
- initGroup(user, group, serverToolRegistry.getToolsForGroupsKeys());
+ final String title = i18n.t("About [%s]", group.getLongName());
+ initGroup(user, group, serverToolRegistry.getToolsForGroupsKeys(), title, publicDescrip);
return group;
} else {
throw new UserMustBeLoggedException();
@@ -160,9 +164,12 @@
userGroup.setDefaultContent(null);
user.setUserGroup(userGroup);
initSocialNetwork(userGroup, userGroup);
+
+ final String title = i18n.t("[%s] Bio", user.getName());
+ final String body = "<h1>" + title + "</h1>" + i18n.t("This user has not written its biography yet");
try {
initGroup(user, userGroup, wantPersonalHomepage ? serverToolRegistry.getToolsForUserKeys()
- : ServerToolRegistry.emptyToolList);
+ : ServerToolRegistry.emptyToolList, title, body);
super.persist(user, User.class);
} catch (final PersistenceException e) {
if (e.getCause() instanceof ConstraintViolationException) {
@@ -204,8 +211,8 @@
return findByShortName(shortName);
}
- private void initGroup(final User user, final Group group, final Collection<String> toolsToEnable)
- throws GroupNameInUseException {
+ private void initGroup(final User user, final Group group, final Collection<String> toolsToEnable,
+ final Object... vars) throws GroupNameInUseException {
try {
persist(group);
} catch (final IllegalStateException e) {
@@ -218,7 +225,7 @@
}
for (final ServerTool tool : registry.all()) {
if (toolsToEnable.contains(tool.getName())) {
- tool.initGroup(user, group);
+ tool.initGroup(user, group, vars);
}
}
}
Modified: trunk/src/main/java/cc/kune/core/server/manager/impl/UserManagerDefault.java
===================================================================
--- trunk/src/main/java/cc/kune/core/server/manager/impl/UserManagerDefault.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/core/server/manager/impl/UserManagerDefault.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -137,8 +137,11 @@
final User user = new User(shortName, longName, email, passwd, passwdDigest.getDigest(),
passwdDigest.getSalt(), language, country, tz);
kuneWaveManager.createWave(
+ ContentConstants.WELCOME_WAVE_CONTENT_TITLE.replaceAll("\\[%s\\]",
+ databaseProperties.getDefaultSiteName()),
ContentConstants.WELCOME_WAVE_CONTENT.replaceAll("\\[%s\\]",
- databaseProperties.getDefaultSiteName()), databaseProperties.getAdminShortName(), shortName);
+ databaseProperties.getDefaultSiteName()),
+ participantUtils.of(databaseProperties.getAdminShortName()), participantUtils.of(shortName));
return user;
} catch (final RuntimeException e) {
try {
Modified: trunk/src/main/java/cc/kune/core/server/rpc/ContentRPC.java
===================================================================
--- trunk/src/main/java/cc/kune/core/server/rpc/ContentRPC.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/core/server/rpc/ContentRPC.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -23,9 +23,6 @@
import javax.persistence.NoResultException;
-import org.waveprotocol.wave.model.waveref.WaveRef;
-import org.waveprotocol.wave.util.escapers.jvm.JavaWaverefEncoder;
-
import cc.kune.core.client.errors.AccessViolationException;
import cc.kune.core.client.errors.ContentNotFoundException;
import cc.kune.core.client.errors.DefaultException;
@@ -70,7 +67,6 @@
import cc.kune.domain.Content;
import cc.kune.domain.Group;
import cc.kune.domain.User;
-import cc.kune.wave.server.KuneWaveManager;
import com.google.inject.Inject;
import com.google.inject.Provider;
@@ -86,7 +82,6 @@
private final CreationService creationService;
private final FinderService finderService;
private final GroupManager groupManager;
- private final KuneWaveManager kuneWaveManager;
private final Mapper mapper;
private final AccessRightsService rightsService;
private final StateService stateService;
@@ -100,7 +95,7 @@
final StateService stateService, final CreationService creationService, final GroupManager groupManager,
final XmppManager xmppManager, final ContentManager contentManager,
final ContainerManager containerManager, final TagUserContentManager tagManager,
- final CommentManager commentManager, final Mapper mapper, final KuneWaveManager kuneWaveManager) {
+ final CommentManager commentManager, final Mapper mapper) {
this.finderService = finderService;
this.userSessionProvider = userSessionProvider;
this.accessService = accessService;
@@ -114,7 +109,6 @@
this.tagManager = tagManager;
this.commentManager = commentManager;
this.mapper = mapper;
- this.kuneWaveManager = kuneWaveManager;
}
@Override
@@ -158,9 +152,7 @@
@Transactional
public StateContentDTO addContent(final String userHash, final StateToken parentToken, final String title,
final String typeId) throws DefaultException {
- final String body = "";
- final WaveRef waveRef = kuneWaveManager.createWave(body, getCurrentUser().getShortName());
- return createContent(parentToken, title, typeId, JavaWaverefEncoder.encodeToUriPathSegment(waveRef));
+ return createContent(parentToken, title, typeId);
}
@Override
@@ -207,11 +199,11 @@
return null;
}
- private StateContentDTO createContent(final StateToken parentToken, final String title, final String typeId,
- final String body) {
+ private StateContentDTO createContent(final StateToken parentToken, final String title, final String typeId) {
final User user = getCurrentUser();
final Container container = accessService.accessToContainer(ContentUtils.parseId(parentToken.getFolder()),
user, AccessRol.Editor);
+ final String body = "";
final Content addedContent = creationService.createContent(title, body, user, container, typeId);
return getState(user, addedContent);
}
Modified: trunk/src/main/java/cc/kune/core/server/rpc/GroupRPC.java
===================================================================
--- trunk/src/main/java/cc/kune/core/server/rpc/GroupRPC.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/core/server/rpc/GroupRPC.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -19,9 +19,6 @@
*/
package cc.kune.core.server.rpc;
-import org.waveprotocol.wave.model.waveref.WaveRef;
-import org.waveprotocol.wave.util.escapers.jvm.JavaWaverefEncoder;
-
import cc.kune.core.client.errors.DefaultException;
import cc.kune.core.client.rpcservices.GroupService;
import cc.kune.core.server.UserSession;
@@ -108,10 +105,9 @@
final String tags, final String[] enabledTools) throws DefaultException {
final User user = getUserLogged();
final Group group = mapper.map(groupDTO, Group.class);
- final Group newGroup = groupManager.createGroup(group, user);
- final WaveRef waveId = kuneWaveManager.createWave("<h1>" + i18n.t("About [%s]", groupDTO.getLongName())
- + "</h1>" + publicDesc, user.getShortName());
- contentManager.save(user, newGroup.getDefaultContent(), JavaWaverefEncoder.encodeToUriPathSegment(waveId));
+ final Group newGroup = groupManager.createGroup(group, user, publicDesc);
+ // This is necessary?
+ contentManager.save(user, newGroup.getDefaultContent());
// contentManager.setTags(user, defContentId, tags);
return newGroup.getDefaultContent().getStateToken();
};
Modified: trunk/src/main/java/cc/kune/core/server/rpc/UserRPC.java
===================================================================
--- trunk/src/main/java/cc/kune/core/server/rpc/UserRPC.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/core/server/rpc/UserRPC.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -25,8 +25,6 @@
import org.json.JSONObject;
import org.waveprotocol.box.server.CoreSettings;
import org.waveprotocol.box.server.authentication.SessionManager;
-import org.waveprotocol.wave.model.waveref.WaveRef;
-import org.waveprotocol.wave.util.escapers.jvm.JavaWaverefEncoder;
import cc.kune.core.client.errors.AccessViolationException;
import cc.kune.core.client.errors.DefaultException;
@@ -53,7 +51,6 @@
import cc.kune.domain.Group;
import cc.kune.domain.User;
import cc.kune.wave.server.CustomWaveClientServlet;
-import cc.kune.wave.server.KuneWaveManager;
import com.google.inject.Inject;
import com.google.inject.Provider;
@@ -67,7 +64,6 @@
private final ContentManager contentManager;
private final GroupManager groupManager;
private final I18nTranslationService i18n;
- private final KuneWaveManager kuneWaveManager;
private final Mapper mapper;
private final Provider<SessionService> sessionServiceProvider;
private final UserInfoService userInfoService;
@@ -83,8 +79,7 @@
@Named(CoreSettings.USE_SOCKETIO) final Boolean useSocketIO, final GroupManager groupManager,
final UserInfoService userInfoService, final Mapper mapper, final SessionManager waveSessionManager,
final CustomWaveClientServlet waveClientServlet, final I18nTranslationService i18n,
- final KuneWaveManager kuneWaveManager, final ContentManager contentManager) {
-
+ final ContentManager contentManager) {
this.sessionServiceProvider = sessionServiceProvider;
this.userSessionProvider = userSessionProvider;
this.userManager = userManager;
@@ -95,7 +90,6 @@
this.waveSessionManager = waveSessionManager;
this.waveClientServlet = waveClientServlet;
this.i18n = i18n;
- this.kuneWaveManager = kuneWaveManager;
this.contentManager = contentManager;
}
@@ -106,9 +100,9 @@
userDTO.getPassword(), userDTO.getLanguage().getCode(), userDTO.getCountry().getCode(),
userDTO.getTimezone().getId());
final Group userGroup = groupManager.createUserGroup(user, wantPersonalHomepage);
- final WaveRef waveId = kuneWaveManager.createWave("<h1>" + i18n.t("[%s] Bio", userDTO.getName()) + "</h1>"
- + i18n.t("This user has not written its biography yet"), user.getShortName());
- contentManager.save(user, userGroup.getDefaultContent(), JavaWaverefEncoder.encodeToUriPathSegment(waveId));
+ // Is this necessary? try to remove (used when we were setting the def
+ // content
+ contentManager.save(user, userGroup.getDefaultContent());
}
@Override
Modified: trunk/src/main/java/cc/kune/core/server/state/StateServiceDefault.java
===================================================================
--- trunk/src/main/java/cc/kune/core/server/state/StateServiceDefault.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/core/server/state/StateServiceDefault.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -19,6 +19,9 @@
*/
package cc.kune.core.server.state;
+import static cc.kune.blogs.shared.BlogsConstants.TYPE_POST;
+import static cc.kune.docs.shared.DocsConstants.TYPE_DOCUMENT;
+
import org.waveprotocol.wave.model.waveref.InvalidWaveRefException;
import org.waveprotocol.wave.util.escapers.jvm.JavaWaverefEncoder;
@@ -29,7 +32,6 @@
import cc.kune.core.server.manager.SocialNetworkManager;
import cc.kune.core.server.manager.TagUserContentManager;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.docs.server.DocumentServerTool;
import cc.kune.domain.Container;
import cc.kune.domain.Content;
import cc.kune.domain.Group;
@@ -103,10 +105,11 @@
state.setVersion(content.getVersion());
final char[] text = revision.getBody();
final String textBody = text == null ? null : new String(text);
- if (typeId.equals(DocumentServerTool.TYPE_WAVE)) {
+ if (typeId.equals(TYPE_DOCUMENT) || (typeId.equals(TYPE_POST))) {
state.setWaveRef(textBody);
try {
- state.setContent(kuneWaveManager.fetchWavelet(JavaWaverefEncoder.decodeWaveRefFromPath(textBody)).getRootBlip().getContent());
+ state.setContent(kuneWaveManager.fetchWavelet(JavaWaverefEncoder.decodeWaveRefFromPath(textBody),
+ content.getAuthors().get(0).getShortName()).getRootBlip().getContent());
} catch (final InvalidWaveRefException e) {
throw new DefaultException("Error retriving Wave");
}
Modified: trunk/src/main/java/cc/kune/core/server/tool/ServerTool.java
===================================================================
--- trunk/src/main/java/cc/kune/core/server/tool/ServerTool.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/core/server/tool/ServerTool.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -19,7 +19,6 @@
*/
package cc.kune.core.server.tool;
-
import cc.kune.domain.Container;
import cc.kune.domain.Content;
import cc.kune.domain.Group;
@@ -33,10 +32,6 @@
*/
public interface ServerTool {
- /* Same constant in client */
- public static final String UPLOADEDFILE_SUFFIX = "uploaded";
- public static final String WAVE_SUFFIX = "wave";
-
void checkTypesBeforeContainerCreation(String parentTypeId, String typeId);
void checkTypesBeforeContentCreation(String parentTypeId, String typeId);
@@ -47,7 +42,7 @@
ServerToolTarget getTarget();
- Group initGroup(User user, Group group);
+ Group initGroup(User user, Group group, Object... vars);
void onCreateContainer(Container container, Container parent);
Added: trunk/src/main/java/cc/kune/core/shared/ToolConstants.java
===================================================================
--- trunk/src/main/java/cc/kune/core/shared/ToolConstants.java (rev 0)
+++ trunk/src/main/java/cc/kune/core/shared/ToolConstants.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -0,0 +1,13 @@
+package cc.kune.core.shared;
+
+public final class ToolConstants {
+
+ public static final String UPLOADEDFILE_SUFFIX = "uploaded";
+ @Deprecated
+ public static final String WAVE_SUFFIX = "wave";
+
+ private ToolConstants() {
+
+ }
+
+}
Property changes on: trunk/src/main/java/cc/kune/core/shared/ToolConstants.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/src/main/java/cc/kune/docs/KuneDocs.gwt.xml
===================================================================
--- trunk/src/main/java/cc/kune/docs/KuneDocs.gwt.xml 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/docs/KuneDocs.gwt.xml 2011-04-27 15:32:01 UTC (rev 1322)
@@ -1,5 +1,6 @@
<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit 2.1.0//EN" "http://google-web-toolkit.googlecode.com/svn/tags/2.1.0/distro-source/core/…">
<module>
- <inherits name="cc.kune.core.Core" />
- <source path="client" />
+ <inherits name="cc.kune.core.KuneCore" />
+ <source path="client" />
+ <source path="shared" />
</module>
\ No newline at end of file
Modified: trunk/src/main/java/cc/kune/docs/client/DocsClientTool.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocsClientTool.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/docs/client/DocsClientTool.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -19,6 +19,11 @@
*/
package cc.kune.docs.client;
+import static cc.kune.docs.shared.DocsConstants.NAME;
+import static cc.kune.docs.shared.DocsConstants.TYPE_DOCUMENT;
+import static cc.kune.docs.shared.DocsConstants.TYPE_FOLDER;
+import static cc.kune.docs.shared.DocsConstants.TYPE_ROOT;
+import static cc.kune.docs.shared.DocsConstants.TYPE_UPLOADEDFILE;
import cc.kune.core.client.i18n.I18nUITranslationService;
import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
import cc.kune.core.client.resources.nav.NavResources;
@@ -28,12 +33,7 @@
import com.google.inject.Inject;
public class DocsClientTool extends FoldableAbstractClientTool {
- public static final String NAME = "docs";
- public static final String TYPE_DOCUMENT = NAME + "." + "doc";
- public static final String TYPE_FOLDER = NAME + "." + "folder";
- public static final String TYPE_ROOT = NAME + "." + "root";
- public static final String TYPE_UPLOADEDFILE = NAME + "." + FoldableAbstractClientTool.UPLOADEDFILE_SUFFIX;
- public static final String TYPE_WAVE = NAME + "." + FoldableAbstractClientTool.WAVE_SUFFIX;
+
private final NavResources navResources;
@Inject
@@ -63,7 +63,6 @@
private void registerIcons() {
registerContentTypeIcon(TYPE_FOLDER, navResources.folder());
registerContentTypeIcon(TYPE_DOCUMENT, navResources.page());
- registerContentTypeIcon(TYPE_WAVE, navResources.page());
registerUploadTypesAndMimes(TYPE_UPLOADEDFILE);
}
Modified: trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -19,11 +19,10 @@
\*/
package cc.kune.docs.client.actions;
-import static cc.kune.docs.client.DocsClientTool.TYPE_DOCUMENT;
-import static cc.kune.docs.client.DocsClientTool.TYPE_FOLDER;
-import static cc.kune.docs.client.DocsClientTool.TYPE_ROOT;
-import static cc.kune.docs.client.DocsClientTool.TYPE_UPLOADEDFILE;
-import static cc.kune.docs.client.DocsClientTool.TYPE_WAVE;
+import static cc.kune.docs.shared.DocsConstants.TYPE_DOCUMENT;
+import static cc.kune.docs.shared.DocsConstants.TYPE_FOLDER;
+import static cc.kune.docs.shared.DocsConstants.TYPE_ROOT;
+import static cc.kune.docs.shared.DocsConstants.TYPE_UPLOADEDFILE;
import cc.kune.core.client.actions.ActionRegistryByType;
import cc.kune.core.client.i18n.I18nUITranslationService;
import cc.kune.core.client.resources.CoreResources;
@@ -40,7 +39,7 @@
final String[] all = { TYPE_ROOT, TYPE_FOLDER, TYPE_DOCUMENT, TYPE_UPLOADEDFILE };
final String[] containers = { TYPE_ROOT, TYPE_FOLDER };
final String[] containersNoRoot = { TYPE_FOLDER };
- final String[] contents = { TYPE_DOCUMENT, TYPE_UPLOADEDFILE, TYPE_WAVE };
+ final String[] contents = { TYPE_DOCUMENT, TYPE_UPLOADEDFILE };
final String[] contentsModerated = { TYPE_DOCUMENT, TYPE_UPLOADEDFILE };
@Inject
Modified: trunk/src/main/java/cc/kune/docs/client/actions/NewDocBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/NewDocBtn.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/docs/client/actions/NewDocBtn.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -3,7 +3,7 @@
import cc.kune.common.client.shortcuts.GlobalShortcutRegister;
import cc.kune.core.client.resources.nav.NavResources;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.docs.client.DocsClientTool;
+import cc.kune.docs.shared.DocsConstants;
import cc.kune.gspace.client.actions.NewContentBtn;
import com.google.inject.Inject;
@@ -15,7 +15,7 @@
final GlobalShortcutRegister shorcutReg) {
super(i18n, action, res, shorcutReg, i18n.t("New document"), i18n.t("Create a New Document here. "
+ "This document will be a new 'Page' in the public web if you publish it"), i18n.t("New document"),
- DocsClientTool.TYPE_WAVE);
+ DocsConstants.TYPE_DOCUMENT);
}
}
Modified: trunk/src/main/java/cc/kune/docs/client/actions/NewFolderBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/NewFolderBtn.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/docs/client/actions/NewFolderBtn.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -2,7 +2,7 @@
import cc.kune.core.client.resources.nav.NavResources;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.docs.client.DocsClientTool;
+import cc.kune.docs.shared.DocsConstants;
import cc.kune.gspace.client.actions.NewContainerBtn;
import com.google.inject.Inject;
@@ -13,7 +13,7 @@
public NewFolderBtn(final I18nTranslationService i18n, final NewContainerAction action, final NavResources res) {
super(i18n, action, res, i18n.t("New folder"),
i18n.t("Create a new folder here. A folder will be a 'section' in the public web"),
- i18n.t("New folder"), DocsClientTool.TYPE_FOLDER);
+ i18n.t("New folder"), DocsConstants.TYPE_FOLDER);
}
}
Modified: trunk/src/main/java/cc/kune/docs/server/DocumentServerTool.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/server/DocumentServerTool.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/docs/server/DocumentServerTool.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -19,6 +19,13 @@
*/
package cc.kune.docs.server;
+import static cc.kune.docs.shared.DocsConstants.NAME;
+import static cc.kune.docs.shared.DocsConstants.ROOT_NAME;
+import static cc.kune.docs.shared.DocsConstants.TYPE_DOCUMENT;
+import static cc.kune.docs.shared.DocsConstants.TYPE_FOLDER;
+import static cc.kune.docs.shared.DocsConstants.TYPE_ROOT;
+import static cc.kune.docs.shared.DocsConstants.TYPE_UPLOADEDFILE;
+
import java.util.Date;
import cc.kune.core.client.errors.ContainerNotPermittedException;
@@ -31,6 +38,7 @@
import cc.kune.core.server.tool.ServerToolTarget;
import cc.kune.core.shared.domain.ContentStatus;
import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.docs.shared.DocsConstants;
import cc.kune.domain.Container;
import cc.kune.domain.Content;
import cc.kune.domain.Group;
@@ -40,14 +48,6 @@
import com.google.inject.Inject;
public class DocumentServerTool implements ServerTool {
- public static final String NAME = "docs";
- public static final String ROOT_NAME = "documents";
- public static final String TYPE_DOCUMENT = NAME + "." + "doc";
- public static final String TYPE_FOLDER = NAME + "." + "folder";
- public static final String TYPE_ROOT = NAME + "." + "root";
- public static final String TYPE_UPLOADEDFILE = NAME + "." + ServerTool.UPLOADEDFILE_SUFFIX;
- public static final String TYPE_WAVE = NAME + "." + ServerTool.WAVE_SUFFIX;
-
private final ToolConfigurationManager configurationManager;
private final ContainerManager containerManager;
private final ContentManager contentManager;
@@ -76,10 +76,9 @@
}
void checkContentTypeId(final String parentTypeId, final String typeId) {
- if (typeId.equals(TYPE_DOCUMENT) || typeId.equals(TYPE_UPLOADEDFILE) || typeId.equals(TYPE_WAVE)) {
+ if (typeId.equals(TYPE_DOCUMENT) || typeId.equals(TYPE_UPLOADEDFILE)) {
// ok valid content
if ((typeId.equals(TYPE_DOCUMENT) && (parentTypeId.equals(TYPE_ROOT) || parentTypeId.equals(TYPE_FOLDER)))
- || (typeId.equals(TYPE_WAVE) && (parentTypeId.equals(TYPE_ROOT) || parentTypeId.equals(TYPE_FOLDER)))
|| (typeId.equals(TYPE_UPLOADEDFILE) && (parentTypeId.equals(TYPE_ROOT) || parentTypeId.equals(TYPE_FOLDER)))) {
// ok
} else {
@@ -117,18 +116,18 @@
}
@Override
- public Group initGroup(final User user, final Group group) {
+ public Group initGroup(final User user, final Group group, final Object... otherVars) {
final ToolConfiguration config = new ToolConfiguration();
final Container rootFolder = containerManager.createRootFolder(group, NAME, ROOT_NAME, TYPE_ROOT);
config.setRoot(rootFolder);
group.setToolConfig(NAME, config);
configurationManager.persist(config);
- final String longName = group.getLongName();
- final Content content = contentManager.createContent(i18n.t("About [%s]", longName), "", user, rootFolder,
- DocumentServerTool.TYPE_WAVE);
+ final String title = (String) otherVars[0];
+ final String body = (String) otherVars[1];
+ final Content content = contentManager.createContent(title, body, user, rootFolder, DocsConstants.TYPE_DOCUMENT);
content.addAuthor(user);
content.setLanguage(user.getLanguage());
- content.setTypeId(TYPE_WAVE);
+ content.setTypeId(TYPE_DOCUMENT);
content.setStatus(ContentStatus.publishedOnline);
content.setPublishedOn(new Date());
group.setDefaultContent(content);
Added: trunk/src/main/java/cc/kune/docs/shared/DocsConstants.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/shared/DocsConstants.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/shared/DocsConstants.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -0,0 +1,20 @@
+package cc.kune.docs.shared;
+
+import cc.kune.core.shared.ToolConstants;
+
+public final class DocsConstants {
+
+ public static final String NAME = "docs";
+ public static final String ROOT_NAME = "documents";
+ public static final String TYPE_DOCUMENT = NAME + "." + "doc";
+ public static final String TYPE_FOLDER = NAME + "." + "folder";
+ public static final String TYPE_ROOT = NAME + "." + "root";
+ public static final String TYPE_UPLOADEDFILE = NAME + "." + ToolConstants.UPLOADEDFILE_SUFFIX;
+
+ // @Deprecated
+ // public static final String TYPE_WAVE = NAME + "." +
+ // ToolConstants.WAVE_SUFFIX;
+
+ private DocsConstants() {
+ }
+}
Property changes on: trunk/src/main/java/cc/kune/docs/shared/DocsConstants.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/src/main/java/cc/kune/gspace/client/actions/ActionGroups.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/ActionGroups.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/ActionGroups.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -4,10 +4,10 @@
* A group of actions that must be grouped and showed in some perspective (on
* edit, etc)
*/
-public class ActionGroups {
- public static String EDIT = "edit";
- public static String MENUITEM = "menu-item";
- public static String VIEW = "view";
+public final class ActionGroups {
+ public final static String EDIT = "edit";
+ public final static String MENUITEM = "menu-item";
+ public final static String VIEW = "view";
private ActionGroups() {
}
Modified: trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPresenter.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPresenter.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -2,16 +2,16 @@
import javax.annotation.Nonnull;
-import cc.kune.blogs.client.BlogsClientTool;
import cc.kune.blogs.client.actions.BlogsClientActions;
+import cc.kune.blogs.shared.BlogsConstants;
import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
import cc.kune.core.client.actions.ActionRegistryByType;
import cc.kune.core.client.state.Session;
import cc.kune.core.shared.domain.utils.AccessRights;
import cc.kune.core.shared.dto.HasContent;
import cc.kune.core.shared.dto.StateContentDTO;
-import cc.kune.docs.client.DocsClientTool;
import cc.kune.docs.client.actions.DocsClientActions;
+import cc.kune.docs.shared.DocsConstants;
import cc.kune.gspace.client.actions.ActionGroups;
import cc.kune.gspace.client.tool.ContentViewer;
import cc.kune.gspace.client.tool.ContentViewerSelector;
@@ -55,8 +55,8 @@
super(eventBus, view, proxy);
this.session = session;
this.actionsRegistry = actionsRegistry;
- viewerSelector.register(this, true, DocsClientTool.TYPE_WAVE);
- viewerSelector.register(this, true, BlogsClientTool.TYPE_POST);
+ viewerSelector.register(this, true, DocsConstants.TYPE_DOCUMENT);
+ viewerSelector.register(this, true, BlogsConstants.TYPE_POST);
}
@Override
Modified: trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerAsFlowPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerAsFlowPanel.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerAsFlowPanel.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -23,12 +23,11 @@
public class FolderViewerAsFlowPanel extends AbstractFolderViewerPanel {
interface FolderViewerAsFlowPanelUiBinder extends UiBinder<Widget, FolderViewerAsFlowPanel> {
}
+ private static final int ICONLABELMAXSIZE = 20;
+ private static final int ICONSIZE = 100;
private static FolderViewerAsFlowPanelUiBinder uiBinder = GWT.create(FolderViewerAsFlowPanelUiBinder.class);
-
@UiField
FlowPanel flow;
- int ICONLABELMAXSIZE = 20;
- int ICONSIZE = 100;
@Inject
public FolderViewerAsFlowPanel(final GSpaceArmor gsArmor, final I18nTranslationService i18n) {
Modified: trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerPresenter.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerPresenter.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -2,7 +2,7 @@
import javax.annotation.Nonnull;
-import cc.kune.blogs.client.BlogsClientTool;
+import cc.kune.blogs.shared.BlogsConstants;
import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
import cc.kune.core.client.actions.ActionRegistryByType;
import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
@@ -21,7 +21,7 @@
import cc.kune.core.shared.dto.HasContent;
import cc.kune.core.shared.dto.StateContainerDTO;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.docs.client.DocsClientTool;
+import cc.kune.docs.shared.DocsConstants;
import cc.kune.gspace.client.actions.ActionGroups;
import cc.kune.gspace.client.tool.ContentViewer;
import cc.kune.gspace.client.tool.ContentViewerSelector;
@@ -87,8 +87,8 @@
this.downloadUtilsProvider = downloadUtilsProvider;
this.capabilitiesRegistry = capabilitiesRegistry;
iconsRegistry = capabilitiesRegistry.getIconsRegistry();
- viewerSelector.register(this, true, DocsClientTool.TYPE_ROOT, DocsClientTool.TYPE_FOLDER);
- viewerSelector.register(this, true, BlogsClientTool.TYPE_ROOT, BlogsClientTool.TYPE_BLOG);
+ viewerSelector.register(this, true, DocsConstants.TYPE_ROOT, DocsConstants.TYPE_FOLDER);
+ viewerSelector.register(this, true, BlogsConstants.TYPE_ROOT, BlogsConstants.TYPE_BLOG);
useGenericImageIcon = false;
}
Modified: trunk/src/main/java/cc/kune/wave/client/WebClient.java
===================================================================
--- trunk/src/main/java/cc/kune/wave/client/WebClient.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/wave/client/WebClient.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -63,6 +63,7 @@
import org.waveprotocol.wave.model.waveref.WaveRef;
import cc.kune.common.client.notify.NotifyUser;
+import cc.kune.core.client.errors.DefaultException;
import cc.kune.core.client.sitebar.spaces.Space;
import cc.kune.core.client.sitebar.spaces.SpaceConfEvent;
import cc.kune.core.client.state.SiteTokens;
@@ -96,7 +97,7 @@
private static final Binder BINDER = GWT.create(Binder.class);
- static Log LOG = Log.get(WebClient.class);
+ static final Log LOG = Log.get(WebClient.class);
// Use of GWT logging is only intended for sending exception reports to the
// server, nothing else in the client should use java.util.logging.
// Please also see WebClientDemo.gwt.xml.
@@ -157,7 +158,7 @@
public void onCreateRequest(WaveCreationEvent event) {
LOG.info("WaveCreationEvent received");
if (channel == null) {
- throw new RuntimeException("Spaghetti attack. Create occured before login");
+ throw new DefaultException("Spaghetti attack. Create occured before login");
}
openWave(WaveRef.of(idGenerator.newWaveId()), true);
Modified: trunk/src/main/java/cc/kune/wave/server/CustomUserRegistrationServlet.java
===================================================================
--- trunk/src/main/java/cc/kune/wave/server/CustomUserRegistrationServlet.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/wave/server/CustomUserRegistrationServlet.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -95,7 +95,7 @@
* Try to create a user with the provided username and password. On error,
* returns a string containing an error message. On success, returns null.
*/
- public String tryCreateUser(String username, final PasswordDigest passwordDigest) {
+ public String tryCreateUser(String username, final PasswordDigest passwordDigest) { // NOPMD by vjrj on 27/04/11 8:36
final String message = null;
ParticipantId id = null;
Modified: trunk/src/main/java/cc/kune/wave/server/KuneWaveManager.java
===================================================================
--- trunk/src/main/java/cc/kune/wave/server/KuneWaveManager.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/wave/server/KuneWaveManager.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -1,13 +1,16 @@
package cc.kune.wave.server;
+import org.waveprotocol.wave.model.wave.ParticipantId;
import org.waveprotocol.wave.model.waveref.WaveRef;
import com.google.wave.api.Wavelet;
public interface KuneWaveManager {
- WaveRef createWave(String message, String... participants);
+ WaveRef createWave(String message, ParticipantId participants);
- Wavelet fetchWavelet(WaveRef waveRef);
+ WaveRef createWave(String title, String message, ParticipantId... participantsArray);
+ Wavelet fetchWavelet(WaveRef waveRef, String author);
+
}
Modified: trunk/src/main/java/cc/kune/wave/server/KuneWaveManagerDefault.java
===================================================================
--- trunk/src/main/java/cc/kune/wave/server/KuneWaveManagerDefault.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/wave/server/KuneWaveManagerDefault.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -5,6 +5,8 @@
import java.util.Map;
import java.util.Set;
+import javax.annotation.Nonnull;
+
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.waveprotocol.box.server.CoreSettings;
@@ -40,6 +42,8 @@
public class KuneWaveManagerDefault implements KuneWaveManager {
public static final Log LOG = LogFactory.getLog(KuneWaveManagerDefault.class);
+ private static final String NO_TITLE = "";
+
private final ConversationUtil conversationUtil;
private final EventDataConverterManager converterManager;
private final String domain;
@@ -61,14 +65,20 @@
}
@Override
- public WaveRef createWave(final String message, final String... participantArray) {
+ public WaveRef createWave(final String message, final ParticipantId participant) {
+ return createWave(NO_TITLE, message, participant);
+ }
+
+ @Override
+ public WaveRef createWave(@Nonnull final String title, final String message,
+ @Nonnull final ParticipantId... participantsArray) {
String newWaveId = null;
String newWaveletId = null;
final Set<String> participants = new HashSet<String>();
- for (final String participant : participantArray) {
- participants.add(participantUtils.of(participant).toString());
+ for (final ParticipantId participant : participantsArray) {
+ participants.add(participant.toString());
}
- final ParticipantId user = participantUtils.of(participantArray[0]);
+ final ParticipantId user = participantsArray[0];
final OperationQueue opQueue = new OperationQueue();
final Wavelet newWavelet = opQueue.createWavelet(domain, participants);
final Blip rootBlip = newWavelet.getRootBlip();
@@ -118,14 +128,14 @@
}
@Override
- public Wavelet fetchWavelet(final WaveRef waveName) {
+ public Wavelet fetchWavelet(final WaveRef waveName, final String author) {
Wavelet wavelet = null;
final OperationQueue opQueue = new OperationQueue();
opQueue.fetchWavelet(waveName.getWaveId(), waveName.getWaveletId());
final OperationContextImpl context = new OperationContextImpl(waveletProvider,
converterManager.getEventDataConverter(ProtocolVersion.DEFAULT), conversationUtil);
final OperationRequest request = opQueue.getPendingOperations().get(0);
- OperationUtil.executeOperation(request, operationRegistry, context, participantUtils.getSuperAdmin());
+ OperationUtil.executeOperation(request, operationRegistry, context, participantUtils.of(author));
final String reqId = request.getId();
final JsonRpcResponse response = context.getResponse(reqId);
if (response != null) {
Modified: trunk/src/main/java/cc/kune/wave/server/ParticipantUtils.java
===================================================================
--- trunk/src/main/java/cc/kune/wave/server/ParticipantUtils.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/cc/kune/wave/server/ParticipantUtils.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -21,7 +21,7 @@
public ParticipantUtils((a)Named(CoreSettings.WAVE_SERVER_DOMAIN) final String domain,
final DatabaseProperties databaseProperties) throws InvalidParticipantAddress {
this.domain = domain;
- superAdmin = of(databaseProperties.getAdminShortName());
+ superAdmin = ofImpl(databaseProperties.getAdminShortName());
}
public ParticipantId getSuperAdmin() {
@@ -29,6 +29,10 @@
}
public ParticipantId of(final String username) {
+ return ofImpl(username);
+ }
+
+ private ParticipantId ofImpl(final String username) {
try {
if (username.contains(ParticipantId.DOMAIN_PREFIX)) {
return ParticipantId.of(username);
Modified: trunk/src/main/java/org/ourproject/kune/chat/server/ChatServerTool.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/server/ChatServerTool.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/org/ourproject/kune/chat/server/ChatServerTool.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -36,11 +36,11 @@
import com.google.inject.Inject;
public class ChatServerTool implements ServerTool {
+ public static final String NAME = "chats";
+ public static final String ROOT_NAME = "chat rooms";
+ public static final String TYPE_CHAT = ChatClientTool.TYPE_CHAT;
+ public static final String TYPE_ROOM = ChatClientTool.TYPE_ROOM;
public static final String TYPE_ROOT = ChatClientTool.TYPE_ROOT;
- public static final String TYPE_ROOM = ChatClientTool.TYPE_ROOM;
- public static final String TYPE_CHAT = ChatClientTool.TYPE_CHAT;
- public static final String ROOT_NAME = "chat rooms";
- public static final String NAME = "chats";
private final ToolConfigurationManager configurationManager;
private final ContainerManager containerManager;
@@ -50,10 +50,23 @@
this.containerManager = containerManager;
}
+ private void checkContainerTypeId(final String parentTypeId, final String typeId) {
+ if (typeId.equals(TYPE_ROOM)) {
+ if (!parentTypeId.equals(TYPE_ROOT)) {
+ throw new ContainerNotPermittedException();
+ }
+ // ok valid container
+ } else {
+ throw new ContainerNotPermittedException();
+ }
+ }
+
+ @Override
public void checkTypesBeforeContainerCreation(final String parentTypeId, final String typeId) {
checkContainerTypeId(parentTypeId, typeId);
}
+ @Override
public void checkTypesBeforeContentCreation(final String parentTypeId, final String typeId) {
if (!parentTypeId.equals(TYPE_ROOM)) {
throw new ContainerNotPermittedException();
@@ -61,19 +74,23 @@
// in the future chat history checks
}
+ @Override
public String getName() {
return NAME;
}
+ @Override
public String getRootName() {
return ROOT_NAME;
}
+ @Override
public ServerToolTarget getTarget() {
return ServerToolTarget.forGroups;
}
- public Group initGroup(final User user, final Group group) {
+ @Override
+ public Group initGroup(final User user, final Group group, final Object... otherVars) {
final ToolConfiguration config = new ToolConfiguration();
final Container container = containerManager.createRootFolder(group, NAME, ROOT_NAME, TYPE_ROOT);
config.setRoot(container);
@@ -82,26 +99,18 @@
return group;
}
+ @Override
public void onCreateContainer(final Container container, final Container parent) {
}
+ @Override
public void onCreateContent(final Content content, final Container parent) {
}
+ @Override
@Inject
public void register(final ServerToolRegistry registry) {
registry.register(this);
}
- private void checkContainerTypeId(final String parentTypeId, final String typeId) {
- if (typeId.equals(TYPE_ROOM)) {
- if (!parentTypeId.equals(TYPE_ROOT)) {
- throw new ContainerNotPermittedException();
- }
- // ok valid container
- } else {
- throw new ContainerNotPermittedException();
- }
- }
-
}
Modified: trunk/src/main/java/org/ourproject/kune/gallery/server/GalleryServerTool.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/gallery/server/GalleryServerTool.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/org/ourproject/kune/gallery/server/GalleryServerTool.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -19,7 +19,6 @@
*/
package org.ourproject.kune.gallery.server;
-
import cc.kune.core.client.errors.ContainerNotPermittedException;
import cc.kune.core.client.errors.ContentNotPermittedException;
import cc.kune.core.server.content.ContainerManager;
@@ -27,6 +26,7 @@
import cc.kune.core.server.tool.ServerTool;
import cc.kune.core.server.tool.ServerToolRegistry;
import cc.kune.core.server.tool.ServerToolTarget;
+import cc.kune.core.shared.ToolConstants;
import cc.kune.core.shared.i18n.I18nTranslationService;
import cc.kune.domain.Container;
import cc.kune.domain.Content;
@@ -38,11 +38,11 @@
public class GalleryServerTool implements ServerTool {
public static final String NAME = "gallery";
+ public static final String ROOT_NAME = "gallery";
+ public static final String TYPE_ALBUM = NAME + "." + "album";
public static final String TYPE_ROOT = NAME + "." + "root";
- public static final String TYPE_ALBUM = NAME + "." + "album";
- public static final String TYPE_UPLOADEDFILE = NAME + "." + ServerTool.UPLOADEDFILE_SUFFIX;
- public static final String ROOT_NAME = "gallery";
+ public static final String TYPE_UPLOADEDFILE = NAME + "." + ToolConstants.UPLOADEDFILE_SUFFIX;
private final ToolConfigurationManager configurationManager;
private final ContainerManager containerManager;
@@ -56,27 +56,59 @@
this.i18n = translationService;
}
- public void checkTypesBeforeContainerCreation(String parentTypeId, String typeId) {
+ void checkContainerTypeId(final String parentTypeId, final String typeId) {
+ if (typeId.equals(TYPE_ALBUM)) {
+ // ok valid container
+ if ((typeId.equals(TYPE_ALBUM) && (parentTypeId.equals(TYPE_ROOT) || parentTypeId.equals(TYPE_ALBUM)))) {
+ // ok
+ } else {
+ throw new ContainerNotPermittedException();
+ }
+ } else {
+ throw new ContainerNotPermittedException();
+ }
+ }
+
+ void checkContentTypeId(final String parentTypeId, final String typeId) {
+ if (typeId.equals(TYPE_UPLOADEDFILE)) {
+ // ok valid content
+ if (typeId.equals(TYPE_UPLOADEDFILE) && (parentTypeId.equals(TYPE_ROOT) || parentTypeId.equals(TYPE_ALBUM))) {
+ // ok
+ } else {
+ throw new ContentNotPermittedException();
+ }
+ } else {
+ throw new ContentNotPermittedException();
+ }
+ }
+
+ @Override
+ public void checkTypesBeforeContainerCreation(final String parentTypeId, final String typeId) {
checkContainerTypeId(parentTypeId, typeId);
}
- public void checkTypesBeforeContentCreation(String parentTypeId, String typeId) {
+ @Override
+ public void checkTypesBeforeContentCreation(final String parentTypeId, final String typeId) {
checkContentTypeId(parentTypeId, typeId);
}
+ @Override
public String getName() {
return NAME;
}
+ @Override
public String getRootName() {
return ROOT_NAME;
}
+ @Override
public ServerToolTarget getTarget() {
return ServerToolTarget.forBoth;
}
- public Group initGroup(final User user, final Group group) {
+ @Override
+ public Group initGroup(final User user, final Group group, final Object... otherVars) {
final ToolConfiguration config = new ToolConfiguration();
final Container rootFolder = containerManager.createRootFolder(group, NAME, ROOT_NAME, TYPE_ROOT);
config.setRoot(rootFolder);
@@ -87,40 +119,17 @@
return group;
}
+ @Override
public void onCreateContainer(final Container container, final Container parent) {
}
+ @Override
public void onCreateContent(final Content content, final Container parent) {
}
+ @Override
@Inject
public void register(final ServerToolRegistry registry) {
registry.register(this);
}
-
- void checkContainerTypeId(final String parentTypeId, final String typeId) {
- if (typeId.equals(TYPE_ALBUM)) {
- // ok valid container
- if ((typeId.equals(TYPE_ALBUM) && (parentTypeId.equals(TYPE_ROOT) || parentTypeId.equals(TYPE_ALBUM)))) {
- // ok
- } else {
- throw new ContainerNotPermittedException();
- }
- } else {
- throw new ContainerNotPermittedException();
- }
- }
-
- void checkContentTypeId(final String parentTypeId, final String typeId) {
- if (typeId.equals(TYPE_UPLOADEDFILE)) {
- // ok valid content
- if (typeId.equals(TYPE_UPLOADEDFILE) && (parentTypeId.equals(TYPE_ROOT) || parentTypeId.equals(TYPE_ALBUM))) {
- // ok
- } else {
- throw new ContentNotPermittedException();
- }
- } else {
- throw new ContentNotPermittedException();
- }
- }
}
Modified: trunk/src/main/java/org/ourproject/kune/wiki/server/WikiServerTool.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/wiki/server/WikiServerTool.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/org/ourproject/kune/wiki/server/WikiServerTool.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -21,7 +21,6 @@
import java.util.Date;
-
import cc.kune.core.client.errors.ContainerNotPermittedException;
import cc.kune.core.client.errors.ContentNotPermittedException;
import cc.kune.core.server.content.ContainerManager;
@@ -30,6 +29,7 @@
import cc.kune.core.server.tool.ServerTool;
import cc.kune.core.server.tool.ServerToolRegistry;
import cc.kune.core.server.tool.ServerToolTarget;
+import cc.kune.core.shared.ToolConstants;
import cc.kune.core.shared.domain.ContentStatus;
import cc.kune.core.shared.domain.GroupListMode;
import cc.kune.core.shared.i18n.I18nTranslationService;
@@ -44,16 +44,16 @@
public class WikiServerTool implements ServerTool {
public static final String NAME = "wiki";
+ public static final String ROOT_NAME = "wiki";
+ public static final String TYPE_FOLDER = NAME + "." + "folder";
public static final String TYPE_ROOT = NAME + "." + "root";
- public static final String TYPE_FOLDER = NAME + "." + "folder";
+ public static final String TYPE_UPLOADEDFILE = NAME + "." + ToolConstants.UPLOADEDFILE_SUFFIX;
+
public static final String TYPE_WIKIPAGE = NAME + "." + "wikipage";
- public static final String TYPE_UPLOADEDFILE = NAME + "." + ServerTool.UPLOADEDFILE_SUFFIX;
- public static final String ROOT_NAME = "wiki";
-
- private final ContentManager contentManager;
private final ToolConfigurationManager configurationManager;
private final ContainerManager containerManager;
+ private final ContentManager contentManager;
private final I18nTranslationService i18n;
@Inject
@@ -65,27 +65,61 @@
this.i18n = translationService;
}
- public void checkTypesBeforeContainerCreation(String parentTypeId, String typeId) {
+ void checkContainerTypeId(final String parentTypeId, final String typeId) {
+ if (typeId.equals(TYPE_FOLDER)) {
+ // ok valid container
+ if ((typeId.equals(TYPE_FOLDER) && (parentTypeId.equals(TYPE_ROOT) || parentTypeId.equals(TYPE_FOLDER)))) {
+ // ok
+ } else {
+ throw new ContainerNotPermittedException();
+ }
+ } else {
+ throw new ContainerNotPermittedException();
+ }
+ }
+
+ void checkContentTypeId(final String parentTypeId, final String typeId) {
+ if (typeId.equals(TYPE_WIKIPAGE) || typeId.equals(TYPE_UPLOADEDFILE)) {
+ // ok valid content
+ final boolean parentIsFolderOrRoot = parentTypeId.equals(TYPE_ROOT) || parentTypeId.equals(TYPE_FOLDER);
+ if ((typeId.equals(TYPE_UPLOADEDFILE) && parentIsFolderOrRoot)
+ || (typeId.equals(TYPE_WIKIPAGE) && parentIsFolderOrRoot)) {
+ // ok
+ } else {
+ throw new ContentNotPermittedException();
+ }
+ } else {
+ throw new ContentNotPermittedException();
+ }
+ }
+
+ @Override
+ public void checkTypesBeforeContainerCreation(final String parentTypeId, final String typeId) {
checkContainerTypeId(parentTypeId, typeId);
}
- public void checkTypesBeforeContentCreation(String parentTypeId, String typeId) {
+ @Override
+ public void checkTypesBeforeContentCreation(final String parentTypeId, final String typeId) {
checkContentTypeId(parentTypeId, typeId);
}
+ @Override
public String getName() {
return NAME;
}
+ @Override
public String getRootName() {
return ROOT_NAME;
}
+ @Override
public ServerToolTarget getTarget() {
return ServerToolTarget.forBoth;
}
- public Group initGroup(final User user, final Group group) {
+ @Override
+ public Group initGroup(final User user, final Group group, final Object... otherVars) {
final ToolConfiguration config = new ToolConfiguration();
final Container rootFolder = containerManager.createRootFolder(group, NAME, ROOT_NAME, TYPE_ROOT);
setContainerWikiAcl(rootFolder);
@@ -103,50 +137,25 @@
return group;
}
+ @Override
public void onCreateContainer(final Container container, final Container parent) {
setContainerWikiAcl(container);
}
+ @Override
public void onCreateContent(final Content content, final Container parent) {
content.setStatus(ContentStatus.publishedOnline);
content.setPublishedOn(new Date());
}
+ @Override
@Inject
public void register(final ServerToolRegistry registry) {
registry.register(this);
}
- void checkContainerTypeId(final String parentTypeId, final String typeId) {
- if (typeId.equals(TYPE_FOLDER)) {
- // ok valid container
- if ((typeId.equals(TYPE_FOLDER) && (parentTypeId.equals(TYPE_ROOT) || parentTypeId.equals(TYPE_FOLDER)))) {
- // ok
- } else {
- throw new ContainerNotPermittedException();
- }
- } else {
- throw new ContainerNotPermittedException();
- }
- }
-
- void checkContentTypeId(final String parentTypeId, final String typeId) {
- if (typeId.equals(TYPE_WIKIPAGE) || typeId.equals(TYPE_UPLOADEDFILE)) {
- // ok valid content
- boolean parentIsFolderOrRoot = parentTypeId.equals(TYPE_ROOT) || parentTypeId.equals(TYPE_FOLDER);
- if ((typeId.equals(TYPE_UPLOADEDFILE) && parentIsFolderOrRoot)
- || (typeId.equals(TYPE_WIKIPAGE) && parentIsFolderOrRoot)) {
- // ok
- } else {
- throw new ContentNotPermittedException();
- }
- } else {
- throw new ContentNotPermittedException();
- }
- }
-
private void setContainerWikiAcl(final Container container) {
- AccessLists wikiAcl = new AccessLists();
+ final AccessLists wikiAcl = new AccessLists();
wikiAcl.getAdmins().setMode(GroupListMode.NORMAL);
wikiAcl.getAdmins().add(container.getOwner());
wikiAcl.getEditors().setMode(GroupListMode.EVERYONE);
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/ctxnav/ContextNavigatorPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/ctxnav/ContextNavigatorPresenter.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/ctxnav/ContextNavigatorPresenter.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -19,7 +19,7 @@
*/
package org.ourproject.kune.workspace.client.ctxnav;
-import static cc.kune.docs.client.DocsClientTool.TYPE_FOLDER;
+import static cc.kune.docs.shared.DocsConstants.TYPE_FOLDER;
import java.util.HashMap;
Modified: trunk/src/main/resources/db/liquibase_changelog.xml
===================================================================
--- trunk/src/main/resources/db/liquibase_changelog.xml 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/main/resources/db/liquibase_changelog.xml 2011-04-27 15:32:01 UTC (rev 1322)
@@ -125,5 +125,10 @@
encoding="utf8" stripComments="1" />
<rollback>DELETE FROM `ext_media_descriptors` WHERE id BETWEEN 1 AND 6;</rollback>
</changeSet>
-
+ <changeSet id="19" author="vjrj">
+ <comment>Wave id migration</comment>
+ <sqlFile path="src/main/resources/db/update-0015-waveid.sql"
+ encoding="utf8" stripComments="1" />
+ <rollback>SELECT * FROM globalize_countries;</rollback>
+ </changeSet>
</databaseChangeLog>
Modified: trunk/src/test/java/cc/kune/blogs/server/BlogServerToolTest.java
===================================================================
--- trunk/src/test/java/cc/kune/blogs/server/BlogServerToolTest.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/test/java/cc/kune/blogs/server/BlogServerToolTest.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -19,15 +19,14 @@
*/
package cc.kune.blogs.server;
-import static cc.kune.blogs.server.BlogServerTool.TYPE_BLOG;
-import static cc.kune.blogs.server.BlogServerTool.TYPE_POST;
-import static cc.kune.blogs.server.BlogServerTool.TYPE_ROOT;
-import static cc.kune.blogs.server.BlogServerTool.TYPE_UPLOADEDFILE;
+import static cc.kune.blogs.shared.BlogsConstants.TYPE_BLOG;
+import static cc.kune.blogs.shared.BlogsConstants.TYPE_POST;
+import static cc.kune.blogs.shared.BlogsConstants.TYPE_ROOT;
+import static cc.kune.blogs.shared.BlogsConstants.TYPE_UPLOADEDFILE;
import org.junit.Before;
import org.junit.Test;
-import cc.kune.blogs.server.BlogServerTool;
import cc.kune.core.client.errors.ContainerNotPermittedException;
import cc.kune.core.client.errors.ContentNotPermittedException;
Modified: trunk/src/test/java/cc/kune/core/server/PersistencePreLoadedDataTest.java
===================================================================
--- trunk/src/test/java/cc/kune/core/server/PersistencePreLoadedDataTest.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/test/java/cc/kune/core/server/PersistencePreLoadedDataTest.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -19,6 +19,7 @@
*/
package cc.kune.core.server;
+import static cc.kune.docs.shared.DocsConstants.TYPE_FOLDER;
import static org.junit.Assert.assertEquals;
import java.util.TimeZone;
@@ -33,7 +34,6 @@
import cc.kune.core.server.manager.I18nLanguageManager;
import cc.kune.core.server.manager.LicenseManager;
import cc.kune.core.server.manager.UserManager;
-import cc.kune.docs.server.DocumentServerTool;
import cc.kune.domain.Container;
import cc.kune.domain.Content;
import cc.kune.domain.I18nCountry;
@@ -116,7 +116,7 @@
content.setLanguage(english);
contentManager.persist(content);
container = new Container();
- container.setTypeId(DocumentServerTool.TYPE_FOLDER);
+ container.setTypeId(TYPE_FOLDER);
containerManager.persist(container);
}
}
Modified: trunk/src/test/java/cc/kune/core/server/integration/DatabaseInitializerTest.java
===================================================================
--- trunk/src/test/java/cc/kune/core/server/integration/DatabaseInitializerTest.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/test/java/cc/kune/core/server/integration/DatabaseInitializerTest.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -19,6 +19,8 @@
*/
package cc.kune.core.server.integration;
+import static cc.kune.docs.shared.DocsConstants.NAME;
+import static cc.kune.docs.shared.DocsConstants.TYPE_DOCUMENT;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
@@ -36,7 +38,6 @@
import cc.kune.core.server.manager.I18nLanguageManager;
import cc.kune.core.server.manager.I18nTranslationManager;
import cc.kune.core.server.manager.LicenseManager;
-import cc.kune.docs.server.DocumentServerTool;
import cc.kune.domain.Container;
import cc.kune.domain.Content;
import cc.kune.domain.Group;
@@ -80,7 +81,7 @@
@Test
public void testDefaultDocumentContent() {
final Content content = defaultGroup.getDefaultContent();
- assertEquals(DocumentServerTool.TYPE_WAVE, content.getTypeId());
+ assertEquals(TYPE_DOCUMENT, content.getTypeId());
final Container rootDocFolder = content.getContainer();
assertEquals(true, rootDocFolder.isRoot());
}
@@ -95,7 +96,7 @@
@Test
public void testToolConfiguration() {
assertNotNull(defaultGroup);
- final ToolConfiguration docToolConfig = defaultGroup.getToolConfiguration(DocumentServerTool.NAME);
+ final ToolConfiguration docToolConfig = defaultGroup.getToolConfiguration(NAME);
assertNotNull(docToolConfig);
assertTrue(docToolConfig.isEnabled());
final ToolConfiguration chatToolConfig = defaultGroup.getToolConfiguration(ChatServerTool.NAME);
Modified: trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceAddTest.java
===================================================================
--- trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceAddTest.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceAddTest.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -19,6 +19,7 @@
*/
package cc.kune.core.server.integration.content;
+import static cc.kune.docs.shared.DocsConstants.TYPE_DOCUMENT;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
@@ -38,8 +39,7 @@
import cc.kune.core.shared.dto.ContentSimpleDTO;
import cc.kune.core.shared.dto.StateContainerDTO;
import cc.kune.core.shared.dto.StateContentDTO;
-import cc.kune.docs.client.DocsClientTool;
-import cc.kune.docs.server.DocumentServerTool;
+import cc.kune.docs.shared.DocsConstants;
public class ContentServiceAddTest extends ContentServiceIntegrationTest {
@@ -54,7 +54,7 @@
public void noLoggedInShouldThrowIllegalAccess() throws ContentNotFoundException, Exception {
defaultContent = getSiteDefaultContent();
contentService.addContent(session.getHash(), defaultContent.getContainer().getStateToken(), "a name",
- DocumentServerTool.TYPE_DOCUMENT);
+ TYPE_DOCUMENT);
}
@Test
@@ -68,7 +68,7 @@
final String title = "New Content Title";
final StateContentDTO added = contentService.addContent(session.getHash(),
- defaultContent.getContainer().getStateToken(), title, DocumentServerTool.TYPE_DOCUMENT);
+ defaultContent.getContainer().getStateToken(), title, TYPE_DOCUMENT);
assertNotNull(added);
final List<ContentSimpleDTO> contents = added.getContainer().getContents();
assertEquals(title, added.getTitle());
@@ -93,7 +93,7 @@
final ContainerDTO parent = defaultContent.getContainer();
final String title = "folder name";
final StateContainerDTO newState = contentService.addFolder(session.getHash(), parent.getStateToken(), title,
- DocsClientTool.TYPE_FOLDER);
+ DocsConstants.TYPE_FOLDER);
assertNotNull(newState);
assertNotNull(newState.getGroupMembers());
assertNotNull(newState.getParticipation());
@@ -127,11 +127,11 @@
final ContainerDTO parent = defaultContent.getContainer();
final String title = "folder name";
final StateContainerDTO newState = contentService.addFolder(session.getHash(), parent.getStateToken(), title,
- DocsClientTool.TYPE_FOLDER);
+ DocsConstants.TYPE_FOLDER);
assertNotNull(newState);
final StateContainerDTO newState2 = contentService.addFolder(session.getHash(), parent.getStateToken(), title,
- DocsClientTool.TYPE_FOLDER);
+ DocsConstants.TYPE_FOLDER);
assertNotNull(newState2);
final ContainerDTO parentAgain = getSiteDefaultContent().getContainer();
Modified: trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceVariousTest.java
===================================================================
--- trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceVariousTest.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceVariousTest.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -19,6 +19,7 @@
*/
package cc.kune.core.server.integration.content;
+import static cc.kune.docs.shared.DocsConstants.TYPE_DOCUMENT;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
@@ -41,8 +42,7 @@
import cc.kune.core.shared.dto.StateContainerDTO;
import cc.kune.core.shared.dto.StateContentDTO;
import cc.kune.core.shared.dto.UserSimpleDTO;
-import cc.kune.docs.client.DocsClientTool;
-import cc.kune.docs.server.DocumentServerTool;
+import cc.kune.docs.shared.DocsConstants;
public class ContentServiceVariousTest extends ContentServiceIntegrationTest {
@@ -66,6 +66,24 @@
assertEquals(1, authors4.size());
}
+ private void checkResult(final TagCloudResult cloudResult) {
+ assertNotNull(cloudResult.getTagCountList());
+ final List<TagCount> summaryTags = cloudResult.getTagCountList();
+ assertEquals(3, summaryTags.size());
+
+ TagCount tagResult = summaryTags.get(0);
+ assertEquals("afoo2", tagResult.getName());
+ assertEquals(1, (long) tagResult.getCount());
+
+ tagResult = summaryTags.get(1);
+ assertEquals("bfoo", tagResult.getName());
+ assertEquals(1, (long) tagResult.getCount());
+
+ tagResult = summaryTags.get(2);
+ assertEquals("cfoa", tagResult.getName());
+ assertEquals(1, (long) tagResult.getCount());
+ }
+
@Test
public void contentRateAndRetrieve() throws Exception {
contentService.rateContent(getHash(), defaultContent.getStateToken(), 4.5);
@@ -102,7 +120,7 @@
final String oldTitle = "some title";
String newTitle = "folder new name";
final StateContainerDTO newState = contentService.addFolder(session.getHash(), defaultContent.getStateToken(),
- oldTitle, DocsClientTool.TYPE_FOLDER);
+ oldTitle, DocsConstants.TYPE_FOLDER);
final ContainerDTO newFolder = newState.getContainer();
@@ -188,7 +206,7 @@
defaultContent = getSiteDefaultContent();
final StateContainerDTO added = contentService.addContent(session.getHash(), defaultContent.getStateToken(),
- "New Content Title", DocumentServerTool.TYPE_DOCUMENT);
+ "New Content Title", TYPE_DOCUMENT);
assertNotNull(added);
final ContentSimpleDTO newDefContent = contentService.setAsDefaultContent(session.getHash(),
@@ -207,7 +225,7 @@
final String oldTitle = "some title";
String newTitle = "folder new name";
final StateContainerDTO newState = contentService.addFolder(session.getHash(), folder.getStateToken(),
- oldTitle, DocsClientTool.TYPE_FOLDER);
+ oldTitle, DocsConstants.TYPE_FOLDER);
final ContainerDTO newFolder = newState.getContainer();
@@ -225,22 +243,4 @@
assertEquals(newTitle, folderAgain.getContainer().getName());
}
- private void checkResult(final TagCloudResult cloudResult) {
- assertNotNull(cloudResult.getTagCountList());
- final List<TagCount> summaryTags = cloudResult.getTagCountList();
- assertEquals(3, summaryTags.size());
-
- TagCount tagResult = summaryTags.get(0);
- assertEquals("afoo2", tagResult.getName());
- assertEquals(1, (long) tagResult.getCount());
-
- tagResult = summaryTags.get(1);
- assertEquals("bfoo", tagResult.getName());
- assertEquals(1, (long) tagResult.getCount());
-
- tagResult = summaryTags.get(2);
- assertEquals("cfoa", tagResult.getName());
- assertEquals(1, (long) tagResult.getCount());
- }
-
}
Modified: trunk/src/test/java/cc/kune/core/server/manager/ContentManagerTest.java
===================================================================
--- trunk/src/test/java/cc/kune/core/server/manager/ContentManagerTest.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/test/java/cc/kune/core/server/manager/ContentManagerTest.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -19,6 +19,8 @@
*/
package cc.kune.core.server.manager;
+import static cc.kune.docs.shared.DocsConstants.TYPE_DOCUMENT;
+import static cc.kune.docs.shared.DocsConstants.TYPE_UPLOADEDFILE;
import static org.junit.Assert.assertEquals;
import org.junit.Ignore;
@@ -26,7 +28,6 @@
import cc.kune.core.server.PersistencePreLoadedDataTest;
import cc.kune.core.server.manager.impl.SearchResult;
-import cc.kune.docs.server.DocumentServerTool;
import cc.kune.domain.BasicMimeType;
import cc.kune.domain.Content;
@@ -37,14 +38,12 @@
private static final String TITLE = "title";
private void createContent() {
- final Content cnt = contentManager.createContent(TITLE, BODY, user, container,
- DocumentServerTool.TYPE_UPLOADEDFILE);
+ final Content cnt = contentManager.createContent(TITLE, BODY, user, container, TYPE_UPLOADEDFILE);
persist(cnt);
}
private void createContentWithMimeAndCheck(final String mimetype) {
- final Content cnt = contentManager.createContent(TITLE, BODY, user, container,
- DocumentServerTool.TYPE_UPLOADEDFILE);
+ final Content cnt = contentManager.createContent(TITLE, BODY, user, container, TYPE_UPLOADEDFILE);
cnt.setMimeType(new BasicMimeType(mimetype));
persist(cnt);
final Content newCnt = contentManager.find(cnt.getId());
@@ -113,8 +112,7 @@
*/
@Test
public void testUTF8Persist() {
- final Content cnt = contentManager.createContent("汉语/漢語", "汉语/漢語", user, container,
- DocumentServerTool.TYPE_DOCUMENT);
+ final Content cnt = contentManager.createContent("汉语/漢語", "汉语/漢語", user, container, TYPE_DOCUMENT);
final Content newCnt = contentManager.find(cnt.getId());
assertEquals("汉语/漢語", newCnt.getTitle());
}
Modified: trunk/src/test/java/cc/kune/core/server/manager/GroupManagerTest.java
===================================================================
--- trunk/src/test/java/cc/kune/core/server/manager/GroupManagerTest.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/test/java/cc/kune/core/server/manager/GroupManagerTest.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -42,10 +42,12 @@
public class GroupManagerTest extends PersistencePreLoadedDataTest {
+ private static final String PUBLIC_DESCRIP = "Some public descrip";
+
@Test
public void createdGroupShoudHaveValidSocialNetwork() throws Exception {
final Group group = new Group("short", "longName", defLicense, GroupType.PROJECT);
- groupManager.createGroup(group, user);
+ groupManager.createGroup(group, user, PUBLIC_DESCRIP);
final SocialNetwork socialNetwork = group.getSocialNetwork();
final AccessLists lists = socialNetwork.getAccessLists();
assertTrue(lists.getAdmins().includes(user.getUserGroup()));
@@ -58,7 +60,7 @@
public void createGroup() throws Exception {
final Group group = new Group("ysei", "Yellow Submarine Environmental Initiative", defLicense,
GroupType.PROJECT);
- groupManager.createGroup(group, user);
+ groupManager.createGroup(group, user, PUBLIC_DESCRIP);
final Group otherGroup = groupManager.findByShortName("ysei");
assertEquals(group.getLongName(), otherGroup.getLongName());
@@ -70,7 +72,7 @@
public void createGroupAndSearch() throws Exception, ParseException {
final Group group = new Group("ysei", "Yellow Submarine Environmental Initiative", defLicense,
GroupType.PROJECT);
- groupManager.createGroup(group, user);
+ groupManager.createGroup(group, user, PUBLIC_DESCRIP);
groupManager.reIndex();
final SearchResult<Group> result = groupManager.search("ysei");
assertEquals(1, result.getSize());
@@ -82,12 +84,12 @@
public void createGroupWithExistingLongName() throws Exception {
final Group group = new Group("ysei", "Yellow Submarine Environmental Initiative", defLicense,
GroupType.PROJECT);
- groupManager.createGroup(group, user);
+ groupManager.createGroup(group, user, PUBLIC_DESCRIP);
final Group group2 = new Group("ysei2", "Yellow Submarine Environmental Initiative", defLicense,
GroupType.PROJECT);
group2.setDefaultLicense(defLicense);
- groupManager.createGroup(group2, user);
+ groupManager.createGroup(group2, user, PUBLIC_DESCRIP);
rollbackTransaction();
}
@@ -96,11 +98,11 @@
public void createGroupWithExistingShortName() throws Exception {
final Group group = new Group("ysei", "Yellow Submarine Environmental Initiative", defLicense,
GroupType.PROJECT);
- groupManager.createGroup(group, user);
+ groupManager.createGroup(group, user, PUBLIC_DESCRIP);
final Group group2 = new Group("ysei", "Yellow Submarine Environmental Initiative 2", defLicense,
GroupType.PROJECT);
- groupManager.createGroup(group2, user);
+ groupManager.createGroup(group2, user, PUBLIC_DESCRIP);
rollbackTransaction();
}
@@ -108,7 +110,7 @@
private void createTestGroup(final int number) throws Exception {
final Group g = new Group("ysei" + number, "Yellow Submarine Environmental Initiative " + number, defLicense,
GroupType.PROJECT);
- groupManager.createGroup(g, user);
+ groupManager.createGroup(g, user, PUBLIC_DESCRIP);
}
@Test(expected = EmailAddressInUseException.class)
Modified: trunk/src/test/java/cc/kune/docs/DocumentToolTest.java
===================================================================
--- trunk/src/test/java/cc/kune/docs/DocumentToolTest.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/test/java/cc/kune/docs/DocumentToolTest.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -19,20 +19,23 @@
*/
package cc.kune.docs;
+import static cc.kune.docs.shared.DocsConstants.NAME;
+import static cc.kune.docs.shared.DocsConstants.TYPE_DOCUMENT;
+import static cc.kune.docs.shared.DocsConstants.TYPE_FOLDER;
+import static cc.kune.docs.shared.DocsConstants.TYPE_ROOT;
import static org.junit.Assert.assertEquals;
import org.junit.Test;
-import cc.kune.docs.client.DocsClientTool;
-import cc.kune.docs.server.DocumentServerTool;
+import cc.kune.docs.shared.DocsConstants;
public class DocumentToolTest {
@Test
public void clientAndServerSync() {
- assertEquals(DocumentServerTool.NAME, DocsClientTool.NAME);
- assertEquals(DocumentServerTool.TYPE_ROOT, DocsClientTool.TYPE_ROOT);
- assertEquals(DocumentServerTool.TYPE_FOLDER, DocsClientTool.TYPE_FOLDER);
- assertEquals(DocumentServerTool.TYPE_DOCUMENT, DocsClientTool.TYPE_DOCUMENT);
+ assertEquals(NAME, DocsConstants.NAME);
+ assertEquals(TYPE_ROOT, DocsConstants.TYPE_ROOT);
+ assertEquals(TYPE_FOLDER, DocsConstants.TYPE_FOLDER);
+ assertEquals(TYPE_DOCUMENT, DocsConstants.TYPE_DOCUMENT);
}
}
Modified: trunk/src/test/java/cc/kune/docs/server/DocumentServerToolTest.java
===================================================================
--- trunk/src/test/java/cc/kune/docs/server/DocumentServerToolTest.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/test/java/cc/kune/docs/server/DocumentServerToolTest.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -19,10 +19,10 @@
*/
package cc.kune.docs.server;
-import static cc.kune.docs.server.DocumentServerTool.TYPE_DOCUMENT;
-import static cc.kune.docs.server.DocumentServerTool.TYPE_FOLDER;
-import static cc.kune.docs.server.DocumentServerTool.TYPE_ROOT;
-import static cc.kune.docs.server.DocumentServerTool.TYPE_UPLOADEDFILE;
+import static cc.kune.docs.shared.DocsConstants.TYPE_DOCUMENT;
+import static cc.kune.docs.shared.DocsConstants.TYPE_FOLDER;
+import static cc.kune.docs.shared.DocsConstants.TYPE_ROOT;
+import static cc.kune.docs.shared.DocsConstants.TYPE_UPLOADEDFILE;
import org.junit.Before;
import org.junit.Test;
Modified: trunk/src/test/java/cc/kune/wave/server/KuneWaveManagerDefaultTest.java
===================================================================
--- trunk/src/test/java/cc/kune/wave/server/KuneWaveManagerDefaultTest.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/test/java/cc/kune/wave/server/KuneWaveManagerDefaultTest.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -19,8 +19,11 @@
public class KuneWaveManagerDefaultTest extends IntegrationTest {
private static final String MESSAGE = "testing";
+ private static final String TITLE = "title";
@Inject
KuneWaveManagerDefault manager;
+ @Inject
+ ParticipantUtils participantUtils;
@Before
public void before() {
@@ -31,10 +34,20 @@
@Test
public void createWave() throws DefaultException, IOException {
doLogin();
- final WaveRef waveletName = manager.createWave(MESSAGE, getSiteAdminShortName());
+ final WaveRef waveletName = manager.createWave(MESSAGE, participantUtils.of(getSiteAdminShortName()));
assertNotNull(waveletName);
- final Wavelet fetchWavelet = manager.fetchWavelet(waveletName);
+ final Wavelet fetchWavelet = manager.fetchWavelet(waveletName, getSiteAdminShortName());
assertNotNull(fetchWavelet);
assertTrue(fetchWavelet.getRootBlip().getContent().contains(MESSAGE));
}
+
+ @Test
+ public void createWaveWithTitle() throws DefaultException, IOException {
+ doLogin();
+ final WaveRef waveletName = manager.createWave(TITLE, MESSAGE, participantUtils.of(getSiteAdminShortName()));
+ assertNotNull(waveletName);
+ final Wavelet fetchWavelet = manager.fetchWavelet(waveletName, getSiteAdminShortName());
+ assertNotNull(fetchWavelet);
+ assertTrue(fetchWavelet.getRootBlip().getContent().contains(MESSAGE));
+ }
}
Modified: trunk/src/test/java/org/ourproject/kune/platf/client/ui/dialogs/upload/FileUploaderPresenterTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/client/ui/dialogs/upload/FileUploaderPresenterTest.java 2011-04-26 19:57:21 UTC (rev 1321)
+++ trunk/src/test/java/org/ourproject/kune/platf/client/ui/dialogs/upload/FileUploaderPresenterTest.java 2011-04-27 15:32:01 UTC (rev 1322)
@@ -30,14 +30,14 @@
import cc.kune.core.client.state.Session;
import cc.kune.core.shared.domain.utils.StateToken;
-import cc.kune.docs.client.DocsClientTool;
+import cc.kune.docs.shared.DocsConstants;
public class FileUploaderPresenterTest {
private static final String SOMEUSER_HASH = "someuserHash";
private FileUploaderPresenter presenter;
+ private Session session;
private FileUploaderView view;
- private Session session;
@Before
public void before() {
@@ -53,7 +53,7 @@
Mockito.when(session.getCurrentStateToken()).thenReturn(new StateToken("group.docs.1.1"));
assertTrue(presenter.checkFolderChange());
Mockito.verify(view, Mockito.times(1)).setUploadParams(SOMEUSER_HASH, "group.docs.1",
- DocsClientTool.TYPE_UPLOADEDFILE);
+ DocsConstants.TYPE_UPLOADEDFILE);
}
@Test
@@ -61,7 +61,7 @@
Mockito.when(session.getCurrentStateToken()).thenReturn(new StateToken("group.docs.1"));
assertTrue(presenter.checkFolderChange());
Mockito.verify(view, Mockito.times(1)).setUploadParams(SOMEUSER_HASH, "group.docs.1",
- DocsClientTool.TYPE_UPLOADEDFILE);
+ DocsConstants.TYPE_UPLOADEDFILE);
}
@Test
@@ -72,9 +72,9 @@
Mockito.when(session.getCurrentStateToken()).thenReturn(new StateToken("group.docs.2"));
assertTrue(presenter.checkFolderChange());
Mockito.verify(view, Mockito.times(1)).setUploadParams(SOMEUSER_HASH, "group.docs.1",
- DocsClientTool.TYPE_UPLOADEDFILE);
+ DocsConstants.TYPE_UPLOADEDFILE);
Mockito.verify(view, Mockito.times(1)).setUploadParams(SOMEUSER_HASH, "group.docs.2",
- DocsClientTool.TYPE_UPLOADEDFILE);
+ DocsConstants.TYPE_UPLOADEDFILE);
}
@Test
@@ -85,9 +85,9 @@
Mockito.when(session.getCurrentStateToken()).thenReturn(new StateToken("group.docs.2"));
assertFalse(presenter.checkFolderChange());
Mockito.verify(view, Mockito.times(1)).setUploadParams(SOMEUSER_HASH, "group.docs.1",
- DocsClientTool.TYPE_UPLOADEDFILE);
+ DocsConstants.TYPE_UPLOADEDFILE);
Mockito.verify(view, Mockito.never()).setUploadParams(SOMEUSER_HASH, "group.docs.2",
- DocsClientTool.TYPE_UPLOADEDFILE);
+ DocsConstants.TYPE_UPLOADEDFILE);
}
@Test
@@ -97,6 +97,6 @@
Mockito.when(session.getCurrentStateToken()).thenReturn(new StateToken("group.docs.1"));
assertTrue(presenter.checkFolderChange());
Mockito.verify(view, Mockito.times(2)).setUploadParams(SOMEUSER_HASH, "group.docs.1",
- DocsClientTool.TYPE_UPLOADEDFILE);
+ DocsConstants.TYPE_UPLOADEDFILE);
}
}
1
0
Author: vjrj_
Date: 2011-04-26 21:57:21 +0200 (Tue, 26 Apr 2011)
New Revision: 1321
Added:
trunk/src/main/java/cc/kune/blogs/
trunk/src/main/java/cc/kune/blogs/KuneBlogs.gwt.xml
trunk/src/main/java/cc/kune/blogs/client/
trunk/src/main/java/cc/kune/blogs/client/BlogsClientTool.java
trunk/src/main/java/cc/kune/blogs/client/BlogsGinModule.java
trunk/src/main/java/cc/kune/blogs/client/BlogsGinjector.java
trunk/src/main/java/cc/kune/blogs/client/BlogsParts.java
trunk/src/main/java/cc/kune/blogs/client/actions/
trunk/src/main/java/cc/kune/blogs/client/actions/BlogsClientActions.java
trunk/src/main/java/cc/kune/blogs/client/actions/DelBlogMenuItem.java
trunk/src/main/java/cc/kune/blogs/client/actions/DelPostMenuItem.java
trunk/src/main/java/cc/kune/blogs/client/actions/GoParentBlogBtn.java
trunk/src/main/java/cc/kune/blogs/client/actions/NewBlogBtn.java
trunk/src/main/java/cc/kune/blogs/client/actions/NewPostBtn.java
trunk/src/main/java/cc/kune/blogs/client/actions/OpenBlogMenuItem.java
trunk/src/main/java/cc/kune/blogs/server/
trunk/src/main/java/cc/kune/docs/client/actions/DelDocMenuItem.java
trunk/src/main/java/cc/kune/docs/client/actions/GoParentFolderBtn.java
trunk/src/main/java/cc/kune/docs/client/actions/OpenDocMenuItem.java
trunk/src/main/java/cc/kune/gspace/client/actions/AbstractFoldableToolActions.java
trunk/src/main/java/cc/kune/gspace/client/actions/ActionGroups.java
trunk/src/main/java/cc/kune/gspace/client/actions/DelContainerMenuItem.java
trunk/src/main/java/cc/kune/gspace/client/actions/DelContentMenuItem.java
trunk/src/main/java/cc/kune/gspace/client/actions/GoParentContainerBtn.java
trunk/src/main/java/cc/kune/gspace/client/actions/NewContainerBtn.java
trunk/src/main/java/cc/kune/gspace/client/actions/NewContentBtn.java
trunk/src/main/java/cc/kune/gspace/client/actions/OpenContentMenuItem.java
trunk/src/main/java/cc/kune/gspace/client/viewers/
trunk/src/main/java/cc/kune/gspace/client/viewers/AbstractFolderViewerPanel.java
trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPanel.java
trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPanel.ui.xml
trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPresenter.java
trunk/src/main/java/cc/kune/gspace/client/viewers/FolderItemWidget.java
trunk/src/main/java/cc/kune/gspace/client/viewers/FolderItemWidget.ui.xml
trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerAsFlowPanel.java
trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerAsFlowPanel.ui.xml
trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerAsTablePanel.java
trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerAsTablePanel.ui.xml
trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerPresenter.java
trunk/src/test/java/cc/kune/blogs/
trunk/src/test/java/cc/kune/blogs/server/
Removed:
trunk/src/main/java/cc/kune/core/ws/armor/
trunk/src/main/java/cc/kune/docs/client/actions/AbstractFoldableContentActions.java
trunk/src/main/java/cc/kune/docs/client/actions/DelContentMenuItem.java
trunk/src/main/java/cc/kune/docs/client/actions/FolderGoUpBtn.java
trunk/src/main/java/cc/kune/docs/client/actions/OpenContentMenuItem.java
trunk/src/main/java/cc/kune/docs/client/viewers/
trunk/src/main/java/cc/kune/gspace/client/actions/perspective/
trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPanel.java
trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPanel.ui.xml
trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPresenter.java
trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerPanel.java
trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerPanel.ui.xml
trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerPresenter.java
trunk/src/main/java/org/ourproject/kune/blogs/server/
trunk/src/main/java/org/ourproject/kune/docs/
trunk/src/test/java/org/ourproject/kune/blogs/server/
Modified:
trunk/src/main/java/cc/kune/Kune.gwt.xml
trunk/src/main/java/cc/kune/blogs/server/BlogServerModule.java
trunk/src/main/java/cc/kune/blogs/server/BlogServerTool.java
trunk/src/main/java/cc/kune/client/KuneEntryPoint.java
trunk/src/main/java/cc/kune/client/KuneGinjector.java
trunk/src/main/java/cc/kune/client/OnAppStartFactory.java
trunk/src/main/java/cc/kune/core/server/KuneRackModule.java
trunk/src/main/java/cc/kune/docs/client/DocsGinModule.java
trunk/src/main/java/cc/kune/docs/client/DocsGinjector.java
trunk/src/main/java/cc/kune/docs/client/DocsParts.java
trunk/src/main/java/cc/kune/docs/client/actions/DelFolderMenuItem.java
trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java
trunk/src/main/java/cc/kune/docs/client/actions/NewDocBtn.java
trunk/src/main/java/cc/kune/docs/client/actions/NewFolderBtn.java
trunk/src/main/java/cc/kune/gspace/client/GSpaceGinModule.java
trunk/src/main/java/cc/kune/gspace/client/GSpaceGinjector.java
trunk/src/main/java/cc/kune/gspace/client/GSpaceParts.java
trunk/src/main/java/cc/kune/gspace/client/viewers/FolderItemDescriptor.java
trunk/src/test/java/cc/kune/blogs/server/BlogServerToolTest.java
Log:
Blog tool added
Modified: trunk/src/main/java/cc/kune/Kune.gwt.xml
===================================================================
--- trunk/src/main/java/cc/kune/Kune.gwt.xml 2011-04-26 11:38:16 UTC (rev 1320)
+++ trunk/src/main/java/cc/kune/Kune.gwt.xml 2011-04-26 19:57:21 UTC (rev 1321)
@@ -7,6 +7,7 @@
<inherits name="cc.kune.wave.KuneWave" />
<inherits name="cc.kune.chat.KuneChat" />
<inherits name="cc.kune.docs.KuneDocs" />
+ <inherits name="cc.kune.blogs.KuneBlogs" />
<inherits name="cc.kune.pspace.PSpace" />
<inherits name="com.calclab.suco.Suco" />
<inherits name="org.adamtacy.GWTEffects"></inherits>
Added: trunk/src/main/java/cc/kune/blogs/KuneBlogs.gwt.xml
===================================================================
--- trunk/src/main/java/cc/kune/blogs/KuneBlogs.gwt.xml (rev 0)
+++ trunk/src/main/java/cc/kune/blogs/KuneBlogs.gwt.xml 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,5 @@
+<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit 2.1.0//EN" "http://google-web-toolkit.googlecode.com/svn/tags/2.1.0/distro-source/core/…">
+<module>
+ <inherits name="cc.kune.core.Core" />
+ <source path="client" />
+</module>
\ No newline at end of file
Property changes on: trunk/src/main/java/cc/kune/blogs/KuneBlogs.gwt.xml
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/blogs/client/BlogsClientTool.java
===================================================================
--- trunk/src/main/java/cc/kune/blogs/client/BlogsClientTool.java (rev 0)
+++ trunk/src/main/java/cc/kune/blogs/client/BlogsClientTool.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,69 @@
+/*
+ *
+ * Copyright (C) 2007-2009 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 cc.kune.blogs.client;
+
+import cc.kune.core.client.i18n.I18nUITranslationService;
+import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
+import cc.kune.core.client.resources.nav.NavResources;
+import cc.kune.gspace.client.tool.old.FoldableAbstractClientTool;
+import cc.kune.gspace.client.tool.selector.ToolSelector;
+
+import com.google.inject.Inject;
+
+public class BlogsClientTool extends FoldableAbstractClientTool {
+
+ public static final String NAME = "blogs";
+ public static final String TYPE_BLOG = NAME + "." + "blog";
+ public static final String TYPE_POST = NAME + "." + "post";
+ public static final String TYPE_ROOT = NAME + "." + "root";
+ public static final String TYPE_UPLOADEDFILE = NAME + "." + FoldableAbstractClientTool.UPLOADEDFILE_SUFFIX;
+ private final NavResources navResources;
+
+ @Inject
+ public BlogsClientTool(final I18nUITranslationService i18n, final ToolSelector toolSelector,
+ final ContentCapabilitiesRegistry cntCapRegistry, final NavResources navResources) {
+ super(NAME, i18n.t("blogs"), toolSelector, cntCapRegistry);
+ this.navResources = navResources;
+
+ // registerAclEditableTypes();
+ registerAuthorableTypes(TYPE_POST, TYPE_UPLOADEDFILE);
+ registerDragableTypes(TYPE_UPLOADEDFILE);
+ registerDropableTypes(TYPE_ROOT);
+ registerPublishModerableTypes(TYPE_POST, TYPE_UPLOADEDFILE);
+ registerRateableTypes(TYPE_POST, TYPE_UPLOADEDFILE);
+ registerRenamableTypes(TYPE_BLOG, TYPE_POST, TYPE_UPLOADEDFILE);
+ registerTageableTypes(TYPE_BLOG, TYPE_UPLOADEDFILE, TYPE_POST);
+ // registerTranslatableTypes();
+
+ registerIcons();
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ private void registerIcons() {
+ registerContentTypeIcon(TYPE_BLOG, navResources.blog());
+ registerContentTypeIcon(TYPE_POST, navResources.post());
+ registerUploadTypesAndMimes(TYPE_UPLOADEDFILE);
+ }
+
+}
Property changes on: trunk/src/main/java/cc/kune/blogs/client/BlogsClientTool.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/blogs/client/BlogsGinModule.java
===================================================================
--- trunk/src/main/java/cc/kune/blogs/client/BlogsGinModule.java (rev 0)
+++ trunk/src/main/java/cc/kune/blogs/client/BlogsGinModule.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,16 @@
+package cc.kune.blogs.client;
+
+import cc.kune.blogs.client.actions.BlogsClientActions;
+
+import com.google.inject.Singleton;
+import com.gwtplatform.mvp.client.gin.AbstractPresenterModule;
+
+public class BlogsGinModule extends AbstractPresenterModule {
+
+ @Override
+ protected void configure() {
+ bind(BlogsClientTool.class).in(Singleton.class);
+ bind(BlogsClientActions.class).in(Singleton.class);
+ }
+
+}
Property changes on: trunk/src/main/java/cc/kune/blogs/client/BlogsGinModule.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/blogs/client/BlogsGinjector.java
===================================================================
--- trunk/src/main/java/cc/kune/blogs/client/BlogsGinjector.java (rev 0)
+++ trunk/src/main/java/cc/kune/blogs/client/BlogsGinjector.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,9 @@
+package cc.kune.blogs.client;
+
+import com.google.gwt.inject.client.Ginjector;
+
+public interface BlogsGinjector extends Ginjector {
+
+ BlogsParts getBlogsParts();
+
+}
Property changes on: trunk/src/main/java/cc/kune/blogs/client/BlogsGinjector.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/blogs/client/BlogsParts.java
===================================================================
--- trunk/src/main/java/cc/kune/blogs/client/BlogsParts.java (rev 0)
+++ trunk/src/main/java/cc/kune/blogs/client/BlogsParts.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,14 @@
+package cc.kune.blogs.client;
+
+import cc.kune.core.client.state.Session;
+
+import com.google.inject.Inject;
+import com.google.inject.Provider;
+
+public class BlogsParts {
+
+ @Inject
+ public BlogsParts(final Session session, final Provider<BlogsClientTool> clientTool) {
+ clientTool.get();
+ }
+}
\ No newline at end of file
Property changes on: trunk/src/main/java/cc/kune/blogs/client/BlogsParts.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/blogs/client/actions/BlogsClientActions.java
===================================================================
--- trunk/src/main/java/cc/kune/blogs/client/actions/BlogsClientActions.java (rev 0)
+++ trunk/src/main/java/cc/kune/blogs/client/actions/BlogsClientActions.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,65 @@
+/*
+ *
+ * Copyright (C) 2007-2009 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 cc.kune.blogs.client.actions;
+
+import static org.ourproject.kune.blogs.client.BlogClientTool.TYPE_BLOG;
+import static org.ourproject.kune.blogs.client.BlogClientTool.TYPE_POST;
+import static org.ourproject.kune.blogs.client.BlogClientTool.TYPE_ROOT;
+import static org.ourproject.kune.blogs.client.BlogClientTool.TYPE_UPLOADEDFILE;
+import cc.kune.core.client.actions.ActionRegistryByType;
+import cc.kune.core.client.i18n.I18nUITranslationService;
+import cc.kune.core.client.resources.CoreResources;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.client.state.StateManager;
+import cc.kune.gspace.client.actions.AbstractFoldableToolActions;
+import cc.kune.gspace.client.actions.ActionGroups;
+
+import com.google.inject.Inject;
+import com.google.inject.Provider;
+
+public class BlogsClientActions extends AbstractFoldableToolActions {
+
+ final String[] all = { TYPE_ROOT, TYPE_BLOG, TYPE_POST, TYPE_UPLOADEDFILE };
+ final String[] containers = { TYPE_ROOT, TYPE_BLOG };
+ final String[] containersNoRoot = { TYPE_BLOG };
+ final String[] contents = { TYPE_POST, TYPE_UPLOADEDFILE };
+ final String[] contentsModerated = { TYPE_POST, TYPE_UPLOADEDFILE };
+
+ @Inject
+ public BlogsClientActions(final I18nUITranslationService i18n, final Session session,
+ final StateManager stateManager, final ActionRegistryByType registry, final CoreResources res,
+ final Provider<GoParentBlogBtn> folderGoUp, final Provider<NewPostBtn> newDocBtn,
+ final Provider<NewBlogBtn> newFolderBtn, final Provider<OpenBlogMenuItem> openContentMenuItem,
+ final Provider<DelPostMenuItem> delContentMenuItem, final Provider<DelBlogMenuItem> delFolderMenuItem) {
+ super(session, stateManager, i18n, registry);
+ actionsRegistry.addAction(ActionGroups.VIEW, folderGoUp, contents);
+ actionsRegistry.addAction(ActionGroups.VIEW, folderGoUp, containersNoRoot);
+ actionsRegistry.addAction(ActionGroups.VIEW, newDocBtn, containersNoRoot);
+ actionsRegistry.addAction(ActionGroups.VIEW, newFolderBtn, TYPE_ROOT);
+ actionsRegistry.addAction(ActionGroups.MENUITEM, openContentMenuItem, contents);
+ actionsRegistry.addAction(ActionGroups.MENUITEM, openContentMenuItem, containersNoRoot);
+ actionsRegistry.addAction(ActionGroups.MENUITEM, delContentMenuItem, contents);
+ actionsRegistry.addAction(ActionGroups.MENUITEM, delFolderMenuItem, containersNoRoot);
+ }
+
+ @Override
+ protected void createPostSessionInitActions() {
+ }
+}
Property changes on: trunk/src/main/java/cc/kune/blogs/client/actions/BlogsClientActions.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/blogs/client/actions/DelBlogMenuItem.java
===================================================================
--- trunk/src/main/java/cc/kune/blogs/client/actions/DelBlogMenuItem.java (rev 0)
+++ trunk/src/main/java/cc/kune/blogs/client/actions/DelBlogMenuItem.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,16 @@
+package cc.kune.blogs.client.actions;
+
+import cc.kune.core.client.resources.CoreResources;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.gspace.client.actions.DelContainerMenuItem;
+
+import com.google.inject.Inject;
+
+public class DelBlogMenuItem extends DelContainerMenuItem {
+
+ @Inject
+ public DelBlogMenuItem(final I18nTranslationService i18n, final DelContainerAction action, final CoreResources res) {
+ super(i18n, action, res);
+ }
+
+}
Property changes on: trunk/src/main/java/cc/kune/blogs/client/actions/DelBlogMenuItem.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/blogs/client/actions/DelPostMenuItem.java
===================================================================
--- trunk/src/main/java/cc/kune/blogs/client/actions/DelPostMenuItem.java (rev 0)
+++ trunk/src/main/java/cc/kune/blogs/client/actions/DelPostMenuItem.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,15 @@
+package cc.kune.blogs.client.actions;
+
+import cc.kune.core.client.resources.CoreResources;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.gspace.client.actions.DelContentMenuItem;
+
+import com.google.inject.Inject;
+
+public class DelPostMenuItem extends DelContentMenuItem {
+
+ @Inject
+ public DelPostMenuItem(final I18nTranslationService i18n, final DelContentAction action, final CoreResources res) {
+ super(i18n, action, res);
+ }
+}
Property changes on: trunk/src/main/java/cc/kune/blogs/client/actions/DelPostMenuItem.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/blogs/client/actions/GoParentBlogBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/blogs/client/actions/GoParentBlogBtn.java (rev 0)
+++ trunk/src/main/java/cc/kune/blogs/client/actions/GoParentBlogBtn.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,16 @@
+package cc.kune.blogs.client.actions;
+
+import cc.kune.core.client.resources.CoreResources;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.gspace.client.actions.GoParentContainerBtn;
+
+import com.google.inject.Inject;
+
+public class GoParentBlogBtn extends GoParentContainerBtn {
+
+ @Inject
+ public GoParentBlogBtn(final I18nTranslationService i18n, final GoParentContainerAction action, final CoreResources res) {
+ super(i18n, action, res);
+ }
+
+}
Property changes on: trunk/src/main/java/cc/kune/blogs/client/actions/GoParentBlogBtn.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/blogs/client/actions/NewBlogBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/blogs/client/actions/NewBlogBtn.java (rev 0)
+++ trunk/src/main/java/cc/kune/blogs/client/actions/NewBlogBtn.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,18 @@
+package cc.kune.blogs.client.actions;
+
+import cc.kune.blogs.client.BlogsClientTool;
+import cc.kune.core.client.resources.nav.NavResources;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.gspace.client.actions.NewContainerBtn;
+
+import com.google.inject.Inject;
+
+public class NewBlogBtn extends NewContainerBtn {
+
+ @Inject
+ public NewBlogBtn(final I18nTranslationService i18n, final NewContainerAction action, final NavResources res) {
+ super(i18n, action, res, i18n.t("New blog"), i18n.t("Create a new blog"), i18n.t("New blog"),
+ BlogsClientTool.TYPE_BLOG);
+ }
+
+}
Property changes on: trunk/src/main/java/cc/kune/blogs/client/actions/NewBlogBtn.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/blogs/client/actions/NewPostBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/blogs/client/actions/NewPostBtn.java (rev 0)
+++ trunk/src/main/java/cc/kune/blogs/client/actions/NewPostBtn.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,20 @@
+package cc.kune.blogs.client.actions;
+
+import cc.kune.blogs.client.BlogsClientTool;
+import cc.kune.common.client.shortcuts.GlobalShortcutRegister;
+import cc.kune.core.client.resources.nav.NavResources;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.gspace.client.actions.NewContentBtn;
+
+import com.google.inject.Inject;
+
+public class NewPostBtn extends NewContentBtn {
+
+ @Inject
+ public NewPostBtn(final I18nTranslationService i18n, final NewContentAction action, final NavResources res,
+ final GlobalShortcutRegister shorcutReg) {
+ super(i18n, action, res, shorcutReg, i18n.t("New post"), i18n.t("Create a new blog post"), i18n.t("New post"),
+ BlogsClientTool.TYPE_POST);
+ }
+
+}
Property changes on: trunk/src/main/java/cc/kune/blogs/client/actions/NewPostBtn.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/blogs/client/actions/OpenBlogMenuItem.java
===================================================================
--- trunk/src/main/java/cc/kune/blogs/client/actions/OpenBlogMenuItem.java (rev 0)
+++ trunk/src/main/java/cc/kune/blogs/client/actions/OpenBlogMenuItem.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,16 @@
+package cc.kune.blogs.client.actions;
+
+import cc.kune.core.client.resources.nav.NavResources;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.gspace.client.actions.OpenContentMenuItem;
+
+import com.google.inject.Inject;
+
+public class OpenBlogMenuItem extends OpenContentMenuItem {
+
+ @Inject
+ public OpenBlogMenuItem(final I18nTranslationService i18n, final OpenContentAction action, final NavResources res) {
+ super(i18n, action, res);
+ }
+
+}
Property changes on: trunk/src/main/java/cc/kune/blogs/client/actions/OpenBlogMenuItem.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Copied: trunk/src/main/java/cc/kune/blogs/server (from rev 1313, trunk/src/main/java/org/ourproject/kune/blogs/server)
Modified: trunk/src/main/java/cc/kune/blogs/server/BlogServerModule.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/blogs/server/BlogServerModule.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/blogs/server/BlogServerModule.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -17,7 +17,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
-package org.ourproject.kune.blogs.server;
+package cc.kune.blogs.server;
import com.google.inject.Binder;
import com.google.inject.Module;
Modified: trunk/src/main/java/cc/kune/blogs/server/BlogServerTool.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/blogs/server/BlogServerTool.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/blogs/server/BlogServerTool.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -17,7 +17,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
-package org.ourproject.kune.blogs.server;
+package cc.kune.blogs.server;
import cc.kune.core.client.errors.ContainerNotPermittedException;
Modified: trunk/src/main/java/cc/kune/client/KuneEntryPoint.java
===================================================================
--- trunk/src/main/java/cc/kune/client/KuneEntryPoint.java 2011-04-26 11:38:16 UTC (rev 1320)
+++ trunk/src/main/java/cc/kune/client/KuneEntryPoint.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -77,6 +77,7 @@
ginjector.getSpinerPresenter();
ginjector.getGroupMembersPresenter();
ginjector.getDocsParts();
+ ginjector.getBlogsParts();
ginjector.getSiteLogoPresenter();
ginjector.getSpacesTabPresenter();
ginjector.getChatClient();
Modified: trunk/src/main/java/cc/kune/client/KuneGinjector.java
===================================================================
--- trunk/src/main/java/cc/kune/client/KuneGinjector.java 2011-04-26 11:38:16 UTC (rev 1320)
+++ trunk/src/main/java/cc/kune/client/KuneGinjector.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -19,6 +19,8 @@
*/
package cc.kune.client;
+import cc.kune.blogs.client.BlogsGinModule;
+import cc.kune.blogs.client.BlogsGinjector;
import cc.kune.chat.client.ChatClient;
import cc.kune.chat.client.ChatGinModule;
import cc.kune.chat.client.ChatParts;
@@ -48,8 +50,8 @@
import cc.kune.core.client.ws.CorePresenter;
import cc.kune.core.client.ws.entheader.EntityHeaderPresenter;
import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.docs.client.DocsGinModule;
import cc.kune.docs.client.DocsGinjector;
-import cc.kune.docs.client.DocsGinModule;
import cc.kune.gspace.client.GSpaceGinModule;
import cc.kune.gspace.client.GSpaceGinjector;
import cc.kune.pspace.client.PSpaceGinModule;
@@ -66,8 +68,8 @@
import com.gwtplatform.mvp.client.proxy.ProxyFailureHandler;
@GinModules({ KuneGinModule.class, CoreGinModule.class, ChatGinModule.class, WaveGinModule.class,
- PSpaceGinModule.class, GSpaceGinModule.class, DocsGinModule.class })
-public interface KuneGinjector extends Ginjector, GSpaceGinjector, DocsGinjector {
+ PSpaceGinModule.class, GSpaceGinModule.class, DocsGinModule.class, BlogsGinModule.class })
+public interface KuneGinjector extends Ginjector, GSpaceGinjector, DocsGinjector, BlogsGinjector {
/*
* You have to add here all the GWTPresenters (as Provider or AsyncProvider)
Modified: trunk/src/main/java/cc/kune/client/OnAppStartFactory.java
===================================================================
--- trunk/src/main/java/cc/kune/client/OnAppStartFactory.java 2011-04-26 11:38:16 UTC (rev 1320)
+++ trunk/src/main/java/cc/kune/client/OnAppStartFactory.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -1,5 +1,6 @@
package cc.kune.client;
+import cc.kune.blogs.client.BlogsClientTool;
import cc.kune.core.client.init.AppStartEvent;
import cc.kune.core.client.init.AppStartEvent.AppStartHandler;
import cc.kune.core.client.state.Session;
@@ -11,11 +12,13 @@
public class OnAppStartFactory {
@Inject
- public OnAppStartFactory(final Session session, final Provider<DocsClientTool> docClientTool) {
+ public OnAppStartFactory(final Session session, final Provider<DocsClientTool> docsClientTool,
+ final Provider<BlogsClientTool> blogsClientTool) {
session.onAppStart(true, new AppStartHandler() {
@Override
public void onAppStart(final AppStartEvent event) {
- docClientTool.get();
+ docsClientTool.get();
+ blogsClientTool.get();
}
});
}
Modified: trunk/src/main/java/cc/kune/core/server/KuneRackModule.java
===================================================================
--- trunk/src/main/java/cc/kune/core/server/KuneRackModule.java 2011-04-26 11:38:16 UTC (rev 1320)
+++ trunk/src/main/java/cc/kune/core/server/KuneRackModule.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -22,6 +22,7 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import cc.kune.blogs.server.BlogServerModule;
import cc.kune.core.client.rpcservices.ContentService;
import cc.kune.core.client.rpcservices.GroupService;
import cc.kune.core.client.rpcservices.I18nService;
@@ -139,7 +140,7 @@
builder.use(new ServletModule());
builder.use(new PlatformServerModule());
builder.use(new DocumentServerModule());
- // builder.use(new BlogServerModule());
+ builder.use(new BlogServerModule());
// builder.use(new WikiServerModule());
// builder.use(new ChatServerModule());
// builder.use(new GalleryServerModule());
Modified: trunk/src/main/java/cc/kune/docs/client/DocsGinModule.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocsGinModule.java 2011-04-26 11:38:16 UTC (rev 1320)
+++ trunk/src/main/java/cc/kune/docs/client/DocsGinModule.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -1,10 +1,6 @@
package cc.kune.docs.client;
import cc.kune.docs.client.actions.DocsClientActions;
-import cc.kune.docs.client.viewers.DocViewerPanel;
-import cc.kune.docs.client.viewers.DocViewerPresenter;
-import cc.kune.docs.client.viewers.FolderViewerAsTablePanel;
-import cc.kune.docs.client.viewers.FolderViewerPresenter;
import com.google.inject.Singleton;
import com.gwtplatform.mvp.client.gin.AbstractPresenterModule;
@@ -15,10 +11,6 @@
protected void configure() {
bind(DocsClientTool.class).in(Singleton.class);
bind(DocsClientActions.class).in(Singleton.class);
- bindPresenter(DocViewerPresenter.class, DocViewerPresenter.DocViewerView.class, DocViewerPanel.class,
- DocViewerPresenter.DocViewerProxy.class);
- bindPresenter(FolderViewerPresenter.class, FolderViewerPresenter.FolderViewerView.class,
- FolderViewerAsTablePanel.class, FolderViewerPresenter.FolderViewerProxy.class);
}
}
Modified: trunk/src/main/java/cc/kune/docs/client/DocsGinjector.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocsGinjector.java 2011-04-26 11:38:16 UTC (rev 1320)
+++ trunk/src/main/java/cc/kune/docs/client/DocsGinjector.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -1,16 +1,9 @@
package cc.kune.docs.client;
-import cc.kune.docs.client.viewers.DocViewerPresenter;
-import cc.kune.docs.client.viewers.FolderViewerPresenter;
-
-import com.google.gwt.inject.client.AsyncProvider;
import com.google.gwt.inject.client.Ginjector;
public interface DocsGinjector extends Ginjector {
DocsParts getDocsParts();
- AsyncProvider<DocViewerPresenter> getDocsViewerPresenter();
-
- AsyncProvider<FolderViewerPresenter> getFolderViewerPresenter();
}
Modified: trunk/src/main/java/cc/kune/docs/client/DocsParts.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocsParts.java 2011-04-26 11:38:16 UTC (rev 1320)
+++ trunk/src/main/java/cc/kune/docs/client/DocsParts.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -1,8 +1,6 @@
package cc.kune.docs.client;
import cc.kune.core.client.state.Session;
-import cc.kune.docs.client.viewers.DocViewerPresenter;
-import cc.kune.docs.client.viewers.FolderViewerPresenter;
import com.google.inject.Inject;
import com.google.inject.Provider;
@@ -10,10 +8,7 @@
public class DocsParts {
@Inject
- public DocsParts(final Session session, final Provider<DocViewerPresenter> docsViewer,
- final Provider<FolderViewerPresenter> folderViewer, final Provider<DocsClientTool> docsClientTool) {
- docsClientTool.get();
- docsViewer.get();
- folderViewer.get();
+ public DocsParts(final Session session, final Provider<DocsClientTool> clientTool) {
+ clientTool.get();
}
}
\ No newline at end of file
Deleted: trunk/src/main/java/cc/kune/docs/client/actions/AbstractFoldableContentActions.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/AbstractFoldableContentActions.java 2011-04-26 11:38:16 UTC (rev 1320)
+++ trunk/src/main/java/cc/kune/docs/client/actions/AbstractFoldableContentActions.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -1,76 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2011 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 cc.kune.docs.client.actions;
-
-import cc.kune.core.client.actions.ActionRegistryByType;
-import cc.kune.core.client.i18n.I18nUITranslationService;
-import cc.kune.core.client.init.AppStartEvent;
-import cc.kune.core.client.init.AppStartEvent.AppStartHandler;
-import cc.kune.core.client.state.Session;
-import cc.kune.core.client.state.StateManager;
-
-public abstract class AbstractFoldableContentActions {
-
- private static final String PUBLICATION_MENU = "Publication";
-
- protected final ActionRegistryByType actionsRegistry;
- protected final I18nUITranslationService i18n;
- protected final Session session;
- protected final StateManager stateManager;
-
- public AbstractFoldableContentActions(final Session session, final StateManager stateManager,
- final I18nUITranslationService i18n, final ActionRegistryByType actionsRegistry) {
- this.session = session;
- this.stateManager = stateManager;
- this.i18n = i18n;
- this.actionsRegistry = actionsRegistry;
- createActions();
- session.onAppStart(true, new AppStartHandler() {
- @Override
- public void onAppStart(final AppStartEvent event) {
- createPostSessionInitActions();
- }
- });
- }
-
- protected abstract void createActions();
-
- protected void createContentModeratedActions(final String parentMenuTitle, final String... contentsModerated) {
- }
-
- protected void createContentRenameAction(final String parentMenuTitle, final String textDescription,
- final String... registerInTypes) {
- }
-
- protected void createDelContainerAction(final String text, final String parentMenuTitle,
- final String... registerInTypes) {
- }
-
- protected void createDelContentAction(final String parentMenuTitle, final String textDescription,
- final String... registerInTypes) {
- }
-
- protected void createDownloadActions(final String typeUploadedfile) {
-
- }
-
- protected abstract void createPostSessionInitActions();
-
-}
Deleted: trunk/src/main/java/cc/kune/docs/client/actions/DelContentMenuItem.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/DelContentMenuItem.java 2011-04-26 11:38:16 UTC (rev 1320)
+++ trunk/src/main/java/cc/kune/docs/client/actions/DelContentMenuItem.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -1,87 +0,0 @@
-package cc.kune.docs.client.actions;
-
-import cc.kune.common.client.actions.ActionEvent;
-import cc.kune.common.client.actions.ui.descrip.MenuItemDescriptor;
-import cc.kune.common.client.notify.ConfirmAskEvent;
-import cc.kune.common.client.notify.NotifyUser;
-import cc.kune.common.client.utils.OnAcceptCallback;
-import cc.kune.core.client.actions.RolAction;
-import cc.kune.core.client.resources.CoreResources;
-import cc.kune.core.client.rpcservices.AsyncCallbackSimple;
-import cc.kune.core.client.rpcservices.ContentServiceAsync;
-import cc.kune.core.client.state.Session;
-import cc.kune.core.client.state.StateManager;
-import cc.kune.core.shared.domain.utils.StateToken;
-import cc.kune.core.shared.dto.AccessRolDTO;
-import cc.kune.core.shared.dto.StateContentDTO;
-import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.docs.client.viewers.FolderViewerPresenter;
-
-import com.google.gwt.event.shared.EventBus;
-import com.google.inject.Inject;
-import com.google.inject.Provider;
-
-public class DelContentMenuItem extends MenuItemDescriptor {
-
- public static class DelContentAction extends RolAction {
-
- private final Provider<ContentServiceAsync> contentService;
- private final EventBus eventBus;
- private final I18nTranslationService i18n;
- private final Provider<FolderViewerPresenter> presenter;
- private final Session session;
- private final StateManager stateManager;
-
- @Inject
- public DelContentAction(final EventBus eventBus, final StateManager stateManager, final Session session,
- final Provider<ContentServiceAsync> contentService, final I18nTranslationService i18n,
- final Provider<FolderViewerPresenter> presenter) {
- super(AccessRolDTO.Administrator, true);
- this.eventBus = eventBus;
- this.stateManager = stateManager;
- this.session = session;
- this.contentService = contentService;
- this.i18n = i18n;
- this.presenter = presenter;
- }
-
- @Override
- public void actionPerformed(final ActionEvent event) {
- final StateToken token = (StateToken) event.getTarget();
- ConfirmAskEvent.fire(eventBus, i18n.t("Please confirm"), i18n.t("Are you sure?"), i18n.t("Yes"),
- i18n.t("No"), null, null, new OnAcceptCallback() {
- @Override
- public void onSuccess() {
- NotifyUser.showProgress();
- contentService.get().delContent(session.getUserHash(), token,
- new AsyncCallbackSimple<StateContentDTO>() {
- @Override
- public void onSuccess(final StateContentDTO state) {
- // Is this necessary?
- // session.setCurrentState(state);
- final StateToken parent = token.copy().clearDocument();
- if (session.getCurrentStateToken().equals(parent)) {
- stateManager.refreshCurrentGroupState();
- // Warning: the previous action
- // is asynchronous (it gets a
- // content)
- presenter.get().refreshState();
- } else {
- stateManager.gotoStateToken(parent, false);
- }
- NotifyUser.hideProgress();
- }
- });
- }
- });
- }
-
- }
-
- @Inject
- public DelContentMenuItem(final I18nTranslationService i18n, final DelContentAction action, final CoreResources res) {
- super(action);
- this.withText(i18n.t("Delete")).withIcon(res.cancel());
- }
-
-}
Copied: trunk/src/main/java/cc/kune/docs/client/actions/DelDocMenuItem.java (from rev 1320, trunk/src/main/java/cc/kune/docs/client/actions/DelContentMenuItem.java)
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/DelDocMenuItem.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/actions/DelDocMenuItem.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,15 @@
+package cc.kune.docs.client.actions;
+
+import cc.kune.core.client.resources.CoreResources;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.gspace.client.actions.DelContentMenuItem;
+
+import com.google.inject.Inject;
+
+public class DelDocMenuItem extends DelContentMenuItem {
+
+ @Inject
+ public DelDocMenuItem(final I18nTranslationService i18n, final DelContentAction action, final CoreResources res) {
+ super(i18n, action, res);
+ }
+}
Modified: trunk/src/main/java/cc/kune/docs/client/actions/DelFolderMenuItem.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/DelFolderMenuItem.java 2011-04-26 11:38:16 UTC (rev 1320)
+++ trunk/src/main/java/cc/kune/docs/client/actions/DelFolderMenuItem.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -1,69 +1,16 @@
package cc.kune.docs.client.actions;
-import cc.kune.common.client.actions.ActionEvent;
-import cc.kune.common.client.actions.ui.descrip.MenuItemDescriptor;
-import cc.kune.common.client.notify.ConfirmAskEvent;
-import cc.kune.common.client.notify.NotifyUser;
-import cc.kune.common.client.utils.OnAcceptCallback;
-import cc.kune.core.client.actions.RolAction;
import cc.kune.core.client.resources.CoreResources;
-import cc.kune.core.client.rpcservices.ContentServiceAsync;
-import cc.kune.core.client.state.Session;
-import cc.kune.core.client.state.StateManager;
-import cc.kune.core.shared.domain.utils.StateToken;
-import cc.kune.core.shared.dto.AccessRolDTO;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.docs.client.viewers.FolderViewerPresenter;
+import cc.kune.gspace.client.actions.DelContainerMenuItem;
-import com.google.gwt.event.shared.EventBus;
import com.google.inject.Inject;
-import com.google.inject.Provider;
-public class DelFolderMenuItem extends MenuItemDescriptor {
+public class DelFolderMenuItem extends DelContainerMenuItem {
- public static class DelFolderAction extends RolAction {
-
- private final Provider<ContentServiceAsync> contentService;
- private final EventBus eventBus;
- private final I18nTranslationService i18n;
- private final Provider<FolderViewerPresenter> presenter;
- private final Session session;
- private final StateManager stateManager;
-
- @Inject
- public DelFolderAction(final EventBus eventBus, final StateManager stateManager, final Session session,
- final Provider<ContentServiceAsync> contentService, final I18nTranslationService i18n,
- final Provider<FolderViewerPresenter> presenter) {
- super(AccessRolDTO.Administrator, true);
- this.eventBus = eventBus;
- this.stateManager = stateManager;
- this.session = session;
- this.contentService = contentService;
- this.i18n = i18n;
- this.presenter = presenter;
- }
-
- @Override
- public void actionPerformed(final ActionEvent event) {
- final StateToken token = (StateToken) event.getTarget();
- ConfirmAskEvent.fire(eventBus, i18n.t("Please confirm"),
- i18n.t("You will delete it with all its contents. Are you sure?"), i18n.t("Yes"), i18n.t("No"),
- null, null, new OnAcceptCallback() {
- @Override
- public void onSuccess() {
- NotifyUser.showProgress();
- NotifyUser.info("Sorry, in development");
- NotifyUser.hideProgress();
- }
- });
- }
-
- }
-
@Inject
- public DelFolderMenuItem(final I18nTranslationService i18n, final DelFolderAction action, final CoreResources res) {
- super(action);
- this.withText(i18n.t("Delete")).withIcon(res.cancel());
+ public DelFolderMenuItem(final I18nTranslationService i18n, final DelContainerAction action, final CoreResources res) {
+ super(i18n, action, res);
}
}
Modified: trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java 2011-04-26 11:38:16 UTC (rev 1320)
+++ trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -29,12 +29,13 @@
import cc.kune.core.client.resources.CoreResources;
import cc.kune.core.client.state.Session;
import cc.kune.core.client.state.StateManager;
-import cc.kune.gspace.client.actions.perspective.ActionGroups;
+import cc.kune.gspace.client.actions.AbstractFoldableToolActions;
+import cc.kune.gspace.client.actions.ActionGroups;
import com.google.inject.Inject;
import com.google.inject.Provider;
-public class DocsClientActions extends AbstractFoldableContentActions {
+public class DocsClientActions extends AbstractFoldableToolActions {
final String[] all = { TYPE_ROOT, TYPE_FOLDER, TYPE_DOCUMENT, TYPE_UPLOADEDFILE };
final String[] containers = { TYPE_ROOT, TYPE_FOLDER };
@@ -45,9 +46,9 @@
@Inject
public DocsClientActions(final I18nUITranslationService i18n, final Session session,
final StateManager stateManager, final ActionRegistryByType registry, final CoreResources res,
- final Provider<FolderGoUpBtn> folderGoUp, final Provider<NewDocBtn> newDocBtn,
- final Provider<NewFolderBtn> newFolderBtn, final Provider<OpenContentMenuItem> openContentMenuItem,
- final Provider<DelContentMenuItem> delContentMenuItem, final Provider<DelFolderMenuItem> delFolderMenuItem) {
+ final Provider<GoParentFolderBtn> folderGoUp, final Provider<NewDocBtn> newDocBtn,
+ final Provider<NewFolderBtn> newFolderBtn, final Provider<OpenDocMenuItem> openContentMenuItem,
+ final Provider<DelDocMenuItem> delContentMenuItem, final Provider<DelFolderMenuItem> delFolderMenuItem) {
super(session, stateManager, i18n, registry);
actionsRegistry.addAction(ActionGroups.VIEW, folderGoUp, contents);
actionsRegistry.addAction(ActionGroups.VIEW, folderGoUp, containersNoRoot);
@@ -60,55 +61,6 @@
}
@Override
- protected void createActions() {
- // final String parentMenuTitle = i18n.t("File");
- // final String parentMenuTitleCtx = i18n.t("Folder");
- //
- // createNewContainerAction(TYPE_FOLDER, "images/nav/folder_add.png",
- // i18n.t("New folder"), parentMenuTitleCtx,
- // i18n.t("New"), i18n.t("New folder"), Position.ctx, TYPE_ROOT,
- // TYPE_FOLDER);
- //
- // createNewContentAction(TYPE_DOCUMENT, "images/nav/page_add.png",
- // i18n.t("New document"), parentMenuTitleCtx,
- // Position.ctx, TYPE_ROOT, TYPE_FOLDER);
- //
- // createTranslateAction(parentMenuTitle, TYPE_DOCUMENT, TYPE_FOLDER);
- // createContentRenameAction(parentMenuTitle, i18n.t("Rename"),
- // contents);
- // createEditAction(parentMenuTitle, TYPE_DOCUMENT);
- // createContentModeratedActions(parentMenuTitle, contentsModerated);
- // createRenameContentInCtxAction(parentMenuTitleCtx, i18n.t("Rename"),
- // containersNoRoot);
- //
- // // final ActionToolbarMenuDescriptor<StateToken> setAsDefGroupCxt =
- // // createSetAsDefContent(parentMenuTitleCtx);
- //
- // createRefreshCntAction(parentMenuTitle, contents);
- // createRefreshCxtAction(parentMenuTitleCtx, containers);
- //
- // createSetAsDefContent(parentMenuTitle, contents);
- //
- // createSetGroupBackImageAction(parentMenuTitle, TYPE_UPLOADEDFILE);
- //
- // createUploadAction(i18n.t("Upload file"), "images/nav/upload.png",
- // i18n.t("Upload files (images, PDFs...)"),
- // null, containers);
- //
- // createDownloadActions(TYPE_UPLOADEDFILE);
- //
- // createGoAction(all);
- //
- // createGoHomeAction(containers);
- //
- // createDelContainerAction("Delete folder", parentMenuTitleCtx,
- // containersNoRoot);
- // createDelContentAction(parentMenuTitle, i18n.t("Delete"), contents);
- // createShowDeletedItems(parentMenuTitleCtx, all);
- }
-
- @Override
protected void createPostSessionInitActions() {
- // super.createUploadMediaAction(TYPE_GALLERY);
}
}
Deleted: trunk/src/main/java/cc/kune/docs/client/actions/FolderGoUpBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/FolderGoUpBtn.java 2011-04-26 11:38:16 UTC (rev 1320)
+++ trunk/src/main/java/cc/kune/docs/client/actions/FolderGoUpBtn.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -1,55 +0,0 @@
-package cc.kune.docs.client.actions;
-
-import cc.kune.common.client.actions.AbstractExtendedAction;
-import cc.kune.common.client.actions.ActionEvent;
-import cc.kune.common.client.actions.ui.descrip.ButtonDescriptor;
-import cc.kune.common.client.notify.NotifyUser;
-import cc.kune.core.client.resources.CoreResources;
-import cc.kune.core.client.state.Session;
-import cc.kune.core.client.state.StateManager;
-import cc.kune.core.shared.domain.utils.StateToken;
-import cc.kune.core.shared.dto.ContainerDTO;
-import cc.kune.core.shared.dto.StateAbstractDTO;
-import cc.kune.core.shared.dto.StateContainerDTO;
-import cc.kune.core.shared.dto.StateContentDTO;
-import cc.kune.core.shared.i18n.I18nTranslationService;
-
-import com.google.inject.Inject;
-
-public class FolderGoUpBtn extends ButtonDescriptor {
-
- public static class FolderGoUpAction extends AbstractExtendedAction {
-
- private final Session session;
- private final StateManager stateManager;
-
- @Inject
- public FolderGoUpAction(final Session session, final StateManager stateManager) {
- this.session = session;
- this.stateManager = stateManager;
- }
-
- @Override
- public void actionPerformed(final ActionEvent event) {
- NotifyUser.showProgress();
- StateToken stateToken;
- final StateAbstractDTO state = session.getCurrentState();
- if (state instanceof StateContentDTO) {
- stateToken = ((StateContentDTO) state).getContainer().getStateToken();
- } else {
- final ContainerDTO container = ((StateContainerDTO) state).getContainer();
- stateToken = container.getStateToken().copy().setFolder(container.getParentFolderId());
- }
- stateManager.gotoStateToken(stateToken);
- // NotifyUser.hideProgress();
- }
-
- }
-
- @Inject
- public FolderGoUpBtn(final I18nTranslationService i18n, final FolderGoUpAction action, final CoreResources res) {
- super(action);
- this.withToolTip(i18n.t("Go up: Open the container folder")).withIcon(res.folderGoUp());
- }
-
-}
Copied: trunk/src/main/java/cc/kune/docs/client/actions/GoParentFolderBtn.java (from rev 1320, trunk/src/main/java/cc/kune/docs/client/actions/FolderGoUpBtn.java)
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/GoParentFolderBtn.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/actions/GoParentFolderBtn.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,16 @@
+package cc.kune.docs.client.actions;
+
+import cc.kune.core.client.resources.CoreResources;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.gspace.client.actions.GoParentContainerBtn;
+
+import com.google.inject.Inject;
+
+public class GoParentFolderBtn extends GoParentContainerBtn {
+
+ @Inject
+ public GoParentFolderBtn(final I18nTranslationService i18n, final GoParentContainerAction action, final CoreResources res) {
+ super(i18n, action, res);
+ }
+
+}
Modified: trunk/src/main/java/cc/kune/docs/client/actions/NewDocBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/NewDocBtn.java 2011-04-26 11:38:16 UTC (rev 1320)
+++ trunk/src/main/java/cc/kune/docs/client/actions/NewDocBtn.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -1,75 +1,21 @@
package cc.kune.docs.client.actions;
-import cc.kune.common.client.actions.ActionEvent;
-import cc.kune.common.client.actions.KeyStroke;
-import cc.kune.common.client.actions.Shortcut;
-import cc.kune.common.client.actions.ui.descrip.ButtonDescriptor;
-import cc.kune.common.client.notify.NotifyUser;
import cc.kune.common.client.shortcuts.GlobalShortcutRegister;
-import cc.kune.core.client.actions.RolAction;
import cc.kune.core.client.resources.nav.NavResources;
-import cc.kune.core.client.rpcservices.AsyncCallbackSimple;
-import cc.kune.core.client.rpcservices.ContentServiceAsync;
-import cc.kune.core.client.state.ContentCache;
-import cc.kune.core.client.state.Session;
-import cc.kune.core.client.state.StateManager;
-import cc.kune.core.shared.dto.AccessRolDTO;
-import cc.kune.core.shared.dto.HasContent;
-import cc.kune.core.shared.dto.StateContentDTO;
import cc.kune.core.shared.i18n.I18nTranslationService;
import cc.kune.docs.client.DocsClientTool;
+import cc.kune.gspace.client.actions.NewContentBtn;
import com.google.inject.Inject;
-import com.google.inject.Provider;
-public class NewDocBtn extends ButtonDescriptor {
+public class NewDocBtn extends NewContentBtn {
- public static class NewDocAction extends RolAction {
-
- private final ContentCache cache;
- private final Provider<ContentServiceAsync> contentService;
- private final I18nTranslationService i18n;
- private final Session session;
- private final StateManager stateManager;
-
- @Inject
- public NewDocAction(final Session session, final StateManager stateManager, final I18nTranslationService i18n,
- final Provider<ContentServiceAsync> contentService, final ContentCache cache) {
- super(AccessRolDTO.Editor, true);
- this.session = session;
- this.stateManager = stateManager;
- this.i18n = i18n;
- this.contentService = contentService;
- this.cache = cache;
- }
-
- @Override
- public void actionPerformed(final ActionEvent event) {
- NotifyUser.showProgressProcessing();
- stateManager.gotoStateToken(((HasContent) session.getCurrentState()).getContainer().getStateToken());
- contentService.get().addContent(session.getUserHash(), session.getCurrentStateToken(),
- i18n.t("New document"), DocsClientTool.TYPE_WAVE, new AsyncCallbackSimple<StateContentDTO>() {
- @Override
- public void onSuccess(final StateContentDTO state) {
- stateManager.setRetrievedStateAndGo(state);
- NotifyUser.hideProgress();
- // stateManager.refreshCurrentGroupState();
- // contextNavigator.setEditOnNextStateChange(true);
- }
- });
- cache.removeContent(session.getCurrentStateToken());
- }
- }
-
@Inject
- public NewDocBtn(final I18nTranslationService i18n, final NewDocAction action, final NavResources res,
+ public NewDocBtn(final I18nTranslationService i18n, final NewContentAction action, final NavResources res,
final GlobalShortcutRegister shorcutReg) {
- super(action);
- final KeyStroke shortcut = Shortcut.getShortcut(false, true, false, false, Character.valueOf('N'));
- shorcutReg.put(shortcut, action);
- this.withText(i18n.t("New document")).withToolTip(
- "Create a New Document here. This document will be a new 'Page' in the public web if you publish it").withIcon(
- res.pageAdd()).withShortcut(shortcut).withStyles("k-def-docbtn");
+ super(i18n, action, res, shorcutReg, i18n.t("New document"), i18n.t("Create a New Document here. "
+ + "This document will be a new 'Page' in the public web if you publish it"), i18n.t("New document"),
+ DocsClientTool.TYPE_WAVE);
}
}
Modified: trunk/src/main/java/cc/kune/docs/client/actions/NewFolderBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/NewFolderBtn.java 2011-04-26 11:38:16 UTC (rev 1320)
+++ trunk/src/main/java/cc/kune/docs/client/actions/NewFolderBtn.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -1,68 +1,19 @@
package cc.kune.docs.client.actions;
-import cc.kune.common.client.actions.ActionEvent;
-import cc.kune.common.client.actions.ui.descrip.ButtonDescriptor;
-import cc.kune.common.client.notify.NotifyUser;
-import cc.kune.core.client.actions.RolAction;
import cc.kune.core.client.resources.nav.NavResources;
-import cc.kune.core.client.rpcservices.AsyncCallbackSimple;
-import cc.kune.core.client.rpcservices.ContentServiceAsync;
-import cc.kune.core.client.state.ContentCache;
-import cc.kune.core.client.state.Session;
-import cc.kune.core.client.state.StateManager;
-import cc.kune.core.shared.dto.AccessRolDTO;
-import cc.kune.core.shared.dto.HasContent;
-import cc.kune.core.shared.dto.StateContainerDTO;
import cc.kune.core.shared.i18n.I18nTranslationService;
import cc.kune.docs.client.DocsClientTool;
+import cc.kune.gspace.client.actions.NewContainerBtn;
import com.google.inject.Inject;
-import com.google.inject.Provider;
-public class NewFolderBtn extends ButtonDescriptor {
+public class NewFolderBtn extends NewContainerBtn {
- public static class NewDocAction extends RolAction {
-
- private final ContentCache cache;
- private final Provider<ContentServiceAsync> contentService;
- private final I18nTranslationService i18n;
- private final Session session;
- private final StateManager stateManager;
-
- @Inject
- public NewDocAction(final Session session, final StateManager stateManager, final I18nTranslationService i18n,
- final Provider<ContentServiceAsync> contentService, final ContentCache cache) {
- super(AccessRolDTO.Editor, true);
- this.session = session;
- this.stateManager = stateManager;
- this.i18n = i18n;
- this.contentService = contentService;
- this.cache = cache;
- }
-
- @Override
- public void actionPerformed(final ActionEvent event) {
- NotifyUser.showProgressProcessing();
- stateManager.gotoStateToken(((HasContent) session.getCurrentState()).getContainer().getStateToken());
- contentService.get().addFolder(session.getUserHash(), session.getCurrentStateToken(), i18n.t("New folder"),
- DocsClientTool.TYPE_FOLDER, new AsyncCallbackSimple<StateContainerDTO>() {
- @Override
- public void onSuccess(final StateContainerDTO state) {
- // contextNavigator.setEditOnNextStateChange(true);
- stateManager.setRetrievedStateAndGo(state);
- NotifyUser.hideProgress();
- }
- });
- cache.removeContent(session.getCurrentStateToken());
- }
-
- }
-
@Inject
- public NewFolderBtn(final I18nTranslationService i18n, final NewDocAction action, final NavResources res) {
- super(action);
- this.withText(i18n.t("New folder")).withToolTip(
- i18n.t("Create a new folder here. A folder will be a 'section' in the public web")).withIcon(
- res.folderAdd()).withStyles("k-def-docbtn");
+ public NewFolderBtn(final I18nTranslationService i18n, final NewContainerAction action, final NavResources res) {
+ super(i18n, action, res, i18n.t("New folder"),
+ i18n.t("Create a new folder here. A folder will be a 'section' in the public web"),
+ i18n.t("New folder"), DocsClientTool.TYPE_FOLDER);
}
+
}
Deleted: trunk/src/main/java/cc/kune/docs/client/actions/OpenContentMenuItem.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/OpenContentMenuItem.java 2011-04-26 11:38:16 UTC (rev 1320)
+++ trunk/src/main/java/cc/kune/docs/client/actions/OpenContentMenuItem.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -1,37 +0,0 @@
-package cc.kune.docs.client.actions;
-
-import cc.kune.common.client.actions.AbstractExtendedAction;
-import cc.kune.common.client.actions.ActionEvent;
-import cc.kune.common.client.actions.ui.descrip.MenuItemDescriptor;
-import cc.kune.core.client.resources.nav.NavResources;
-import cc.kune.core.client.state.StateManager;
-import cc.kune.core.shared.domain.utils.StateToken;
-import cc.kune.core.shared.i18n.I18nTranslationService;
-
-import com.google.inject.Inject;
-
-public class OpenContentMenuItem extends MenuItemDescriptor {
-
- public static class OpenContentAction extends AbstractExtendedAction {
-
- private final StateManager stateManager;
-
- @Inject
- public OpenContentAction(final StateManager stateManager) {
- this.stateManager = stateManager;
- }
-
- @Override
- public void actionPerformed(final ActionEvent event) {
- stateManager.gotoStateToken((StateToken) event.getTarget());
- }
-
- }
-
- @Inject
- public OpenContentMenuItem(final I18nTranslationService i18n, final OpenContentAction action, final NavResources res) {
- super(action);
- this.withText(i18n.t("Open")).withIcon(res.go());
- }
-
-}
Copied: trunk/src/main/java/cc/kune/docs/client/actions/OpenDocMenuItem.java (from rev 1320, trunk/src/main/java/cc/kune/docs/client/actions/OpenContentMenuItem.java)
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/OpenDocMenuItem.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/actions/OpenDocMenuItem.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,16 @@
+package cc.kune.docs.client.actions;
+
+import cc.kune.core.client.resources.nav.NavResources;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.gspace.client.actions.OpenContentMenuItem;
+
+import com.google.inject.Inject;
+
+public class OpenDocMenuItem extends OpenContentMenuItem {
+
+ @Inject
+ public OpenDocMenuItem(final I18nTranslationService i18n, final OpenContentAction action, final NavResources res) {
+ super(i18n, action, res);
+ }
+
+}
Modified: trunk/src/main/java/cc/kune/gspace/client/GSpaceGinModule.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/GSpaceGinModule.java 2011-04-26 11:38:16 UTC (rev 1320)
+++ trunk/src/main/java/cc/kune/gspace/client/GSpaceGinModule.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -26,6 +26,10 @@
import cc.kune.gspace.client.tool.selector.ToolSelectorPresenter;
import cc.kune.gspace.client.ui.footer.license.EntityLicensePanel;
import cc.kune.gspace.client.ui.footer.license.EntityLicensePresenter;
+import cc.kune.gspace.client.viewers.DocViewerPanel;
+import cc.kune.gspace.client.viewers.DocViewerPresenter;
+import cc.kune.gspace.client.viewers.FolderViewerAsTablePanel;
+import cc.kune.gspace.client.viewers.FolderViewerPresenter;
import com.google.inject.Singleton;
import com.gwtplatform.mvp.client.gin.AbstractPresenterModule;
@@ -49,6 +53,10 @@
bindPresenter(ToolSelectorPresenter.class, ToolSelectorPresenter.ToolSelectorView.class,
ToolSelectorPanel.class, ToolSelectorPresenter.ToolSelectorProxy.class);
bind(ToolSelector.class).to(ToolSelectorPresenter.class).in(Singleton.class);
+ bindPresenter(DocViewerPresenter.class, DocViewerPresenter.DocViewerView.class, DocViewerPanel.class,
+ DocViewerPresenter.DocViewerProxy.class);
+ bindPresenter(FolderViewerPresenter.class, FolderViewerPresenter.FolderViewerView.class,
+ FolderViewerAsTablePanel.class, FolderViewerPresenter.FolderViewerProxy.class);
}
}
\ No newline at end of file
Modified: trunk/src/main/java/cc/kune/gspace/client/GSpaceGinjector.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/GSpaceGinjector.java 2011-04-26 11:38:16 UTC (rev 1320)
+++ trunk/src/main/java/cc/kune/gspace/client/GSpaceGinjector.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -4,6 +4,8 @@
import cc.kune.gspace.client.tool.ContentViewerSelector;
import cc.kune.gspace.client.tool.selector.ToolSelectorPresenter;
import cc.kune.gspace.client.ui.footer.license.EntityLicensePresenter;
+import cc.kune.gspace.client.viewers.DocViewerPresenter;
+import cc.kune.gspace.client.viewers.FolderViewerPresenter;
import com.google.gwt.inject.client.AsyncProvider;
import com.google.gwt.inject.client.Ginjector;
@@ -12,8 +14,12 @@
ContentViewerSelector getContentViewerSelector();
+ AsyncProvider<DocViewerPresenter> getDocsViewerPresenter();
+
AsyncProvider<EntityLicensePresenter> getEntityLicensePresenter();
+ AsyncProvider<FolderViewerPresenter> getFolderViewerPresenter();
+
GSpaceParts getGSpaceParts();
AsyncProvider<TagsSummaryPresenter> getTagsSummaryPresenter();
Modified: trunk/src/main/java/cc/kune/gspace/client/GSpaceParts.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/GSpaceParts.java 2011-04-26 11:38:16 UTC (rev 1320)
+++ trunk/src/main/java/cc/kune/gspace/client/GSpaceParts.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -6,6 +6,8 @@
import cc.kune.gspace.client.tags.TagsSummaryPresenter;
import cc.kune.gspace.client.tool.selector.ToolSelector;
import cc.kune.gspace.client.ui.footer.license.EntityLicensePresenter;
+import cc.kune.gspace.client.viewers.DocViewerPresenter;
+import cc.kune.gspace.client.viewers.FolderViewerPresenter;
import com.google.inject.Inject;
import com.google.inject.Provider;
@@ -14,13 +16,16 @@
@Inject
public GSpaceParts(final Session session, final Provider<EntityLicensePresenter> licenseFooter,
- final Provider<TagsSummaryPresenter> tagsPresenter, final Provider<ToolSelector> toolSelector) {
+ final Provider<TagsSummaryPresenter> tagsPresenter, final Provider<ToolSelector> toolSelector,
+ final Provider<DocViewerPresenter> docsViewer, final Provider<FolderViewerPresenter> folderViewer) {
session.onAppStart(true, new AppStartHandler() {
@Override
public void onAppStart(final AppStartEvent event) {
licenseFooter.get();
tagsPresenter.get();
toolSelector.get();
+ docsViewer.get();
+ folderViewer.get();
}
});
}
Copied: trunk/src/main/java/cc/kune/gspace/client/actions/AbstractFoldableToolActions.java (from rev 1315, trunk/src/main/java/cc/kune/docs/client/actions/AbstractFoldableContentActions.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/AbstractFoldableToolActions.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/AbstractFoldableToolActions.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,52 @@
+/*
+ *
+ * Copyright (C) 2007-2011 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 cc.kune.gspace.client.actions;
+
+import cc.kune.core.client.actions.ActionRegistryByType;
+import cc.kune.core.client.i18n.I18nUITranslationService;
+import cc.kune.core.client.init.AppStartEvent;
+import cc.kune.core.client.init.AppStartEvent.AppStartHandler;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.client.state.StateManager;
+
+public abstract class AbstractFoldableToolActions {
+
+ protected final ActionRegistryByType actionsRegistry;
+ protected final I18nUITranslationService i18n;
+ protected final Session session;
+ protected final StateManager stateManager;
+
+ public AbstractFoldableToolActions(final Session session, final StateManager stateManager,
+ final I18nUITranslationService i18n, final ActionRegistryByType actionsRegistry) {
+ this.session = session;
+ this.stateManager = stateManager;
+ this.i18n = i18n;
+ this.actionsRegistry = actionsRegistry;
+ session.onAppStart(true, new AppStartHandler() {
+ @Override
+ public void onAppStart(final AppStartEvent event) {
+ createPostSessionInitActions();
+ }
+ });
+ }
+
+ protected abstract void createPostSessionInitActions();
+
+}
Copied: trunk/src/main/java/cc/kune/gspace/client/actions/ActionGroups.java (from rev 1320, trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ActionGroups.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/ActionGroups.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/ActionGroups.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,14 @@
+package cc.kune.gspace.client.actions;
+
+/**
+ * A group of actions that must be grouped and showed in some perspective (on
+ * edit, etc)
+ */
+public class ActionGroups {
+ public static String EDIT = "edit";
+ public static String MENUITEM = "menu-item";
+ public static String VIEW = "view";
+
+ private ActionGroups() {
+ }
+}
Added: trunk/src/main/java/cc/kune/gspace/client/actions/DelContainerMenuItem.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/DelContainerMenuItem.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/DelContainerMenuItem.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,69 @@
+package cc.kune.gspace.client.actions;
+
+import cc.kune.common.client.actions.ActionEvent;
+import cc.kune.common.client.actions.ui.descrip.MenuItemDescriptor;
+import cc.kune.common.client.notify.ConfirmAskEvent;
+import cc.kune.common.client.notify.NotifyUser;
+import cc.kune.common.client.utils.OnAcceptCallback;
+import cc.kune.core.client.actions.RolAction;
+import cc.kune.core.client.resources.CoreResources;
+import cc.kune.core.client.rpcservices.ContentServiceAsync;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.client.state.StateManager;
+import cc.kune.core.shared.domain.utils.StateToken;
+import cc.kune.core.shared.dto.AccessRolDTO;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.gspace.client.viewers.FolderViewerPresenter;
+
+import com.google.gwt.event.shared.EventBus;
+import com.google.inject.Inject;
+import com.google.inject.Provider;
+
+public class DelContainerMenuItem extends MenuItemDescriptor {
+
+ public static class DelContainerAction extends RolAction {
+
+ private final Provider<ContentServiceAsync> contentService;
+ private final EventBus eventBus;
+ private final I18nTranslationService i18n;
+ private final Provider<FolderViewerPresenter> presenter;
+ private final Session session;
+ private final StateManager stateManager;
+
+ @Inject
+ public DelContainerAction(final EventBus eventBus, final StateManager stateManager, final Session session,
+ final Provider<ContentServiceAsync> contentService, final I18nTranslationService i18n,
+ final Provider<FolderViewerPresenter> presenter) {
+ super(AccessRolDTO.Administrator, true);
+ this.eventBus = eventBus;
+ this.stateManager = stateManager;
+ this.session = session;
+ this.contentService = contentService;
+ this.i18n = i18n;
+ this.presenter = presenter;
+ }
+
+ @Override
+ public void actionPerformed(final ActionEvent event) {
+ final StateToken token = (StateToken) event.getTarget();
+ ConfirmAskEvent.fire(eventBus, i18n.t("Please confirm"),
+ i18n.t("You will delete it with all its contents. Are you sure?"), i18n.t("Yes"), i18n.t("No"),
+ null, null, new OnAcceptCallback() {
+ @Override
+ public void onSuccess() {
+ NotifyUser.showProgress();
+ NotifyUser.info("Sorry, in development");
+ NotifyUser.hideProgress();
+ }
+ });
+ }
+
+ }
+
+ public DelContainerMenuItem(final I18nTranslationService i18n, final DelContainerAction action,
+ final CoreResources res) {
+ super(action);
+ this.withText(i18n.t("Delete")).withIcon(res.cancel());
+ }
+
+}
Property changes on: trunk/src/main/java/cc/kune/gspace/client/actions/DelContainerMenuItem.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/gspace/client/actions/DelContentMenuItem.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/DelContentMenuItem.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/DelContentMenuItem.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,86 @@
+package cc.kune.gspace.client.actions;
+
+import cc.kune.common.client.actions.ActionEvent;
+import cc.kune.common.client.actions.ui.descrip.MenuItemDescriptor;
+import cc.kune.common.client.notify.ConfirmAskEvent;
+import cc.kune.common.client.notify.NotifyUser;
+import cc.kune.common.client.utils.OnAcceptCallback;
+import cc.kune.core.client.actions.RolAction;
+import cc.kune.core.client.resources.CoreResources;
+import cc.kune.core.client.rpcservices.AsyncCallbackSimple;
+import cc.kune.core.client.rpcservices.ContentServiceAsync;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.client.state.StateManager;
+import cc.kune.core.shared.domain.utils.StateToken;
+import cc.kune.core.shared.dto.AccessRolDTO;
+import cc.kune.core.shared.dto.StateContentDTO;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.gspace.client.viewers.FolderViewerPresenter;
+
+import com.google.gwt.event.shared.EventBus;
+import com.google.inject.Inject;
+import com.google.inject.Provider;
+
+public class DelContentMenuItem extends MenuItemDescriptor {
+
+ public static class DelContentAction extends RolAction {
+
+ private final Provider<ContentServiceAsync> contentService;
+ private final EventBus eventBus;
+ private final I18nTranslationService i18n;
+ private final Provider<FolderViewerPresenter> presenter;
+ private final Session session;
+ private final StateManager stateManager;
+
+ @Inject
+ public DelContentAction(final EventBus eventBus, final StateManager stateManager, final Session session,
+ final Provider<ContentServiceAsync> contentService, final I18nTranslationService i18n,
+ final Provider<FolderViewerPresenter> presenter) {
+ super(AccessRolDTO.Administrator, true);
+ this.eventBus = eventBus;
+ this.stateManager = stateManager;
+ this.session = session;
+ this.contentService = contentService;
+ this.i18n = i18n;
+ this.presenter = presenter;
+ }
+
+ @Override
+ public void actionPerformed(final ActionEvent event) {
+ final StateToken token = (StateToken) event.getTarget();
+ ConfirmAskEvent.fire(eventBus, i18n.t("Please confirm"), i18n.t("Are you sure?"), i18n.t("Yes"),
+ i18n.t("No"), null, null, new OnAcceptCallback() {
+ @Override
+ public void onSuccess() {
+ NotifyUser.showProgress();
+ contentService.get().delContent(session.getUserHash(), token,
+ new AsyncCallbackSimple<StateContentDTO>() {
+ @Override
+ public void onSuccess(final StateContentDTO state) {
+ // Is this necessary?
+ // session.setCurrentState(state);
+ final StateToken parent = token.copy().clearDocument();
+ if (session.getCurrentStateToken().equals(parent)) {
+ stateManager.refreshCurrentGroupState();
+ // Warning: the previous action
+ // is asynchronous (it gets a
+ // content)
+ presenter.get().refreshState();
+ } else {
+ stateManager.gotoStateToken(parent, false);
+ }
+ NotifyUser.hideProgress();
+ }
+ });
+ }
+ });
+ }
+
+ }
+
+ public DelContentMenuItem(final I18nTranslationService i18n, final DelContentAction action, final CoreResources res) {
+ super(action);
+ this.withText(i18n.t("Delete")).withIcon(res.cancel());
+ }
+
+}
Property changes on: trunk/src/main/java/cc/kune/gspace/client/actions/DelContentMenuItem.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/gspace/client/actions/GoParentContainerBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/GoParentContainerBtn.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/GoParentContainerBtn.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,54 @@
+package cc.kune.gspace.client.actions;
+
+import cc.kune.common.client.actions.AbstractExtendedAction;
+import cc.kune.common.client.actions.ActionEvent;
+import cc.kune.common.client.actions.ui.descrip.ButtonDescriptor;
+import cc.kune.common.client.notify.NotifyUser;
+import cc.kune.core.client.resources.CoreResources;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.client.state.StateManager;
+import cc.kune.core.shared.domain.utils.StateToken;
+import cc.kune.core.shared.dto.ContainerDTO;
+import cc.kune.core.shared.dto.StateAbstractDTO;
+import cc.kune.core.shared.dto.StateContainerDTO;
+import cc.kune.core.shared.dto.StateContentDTO;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+
+import com.google.inject.Inject;
+
+public class GoParentContainerBtn extends ButtonDescriptor {
+
+ public static class GoParentContainerAction extends AbstractExtendedAction {
+
+ private final Session session;
+ private final StateManager stateManager;
+
+ @Inject
+ public GoParentContainerAction(final Session session, final StateManager stateManager) {
+ this.session = session;
+ this.stateManager = stateManager;
+ }
+
+ @Override
+ public void actionPerformed(final ActionEvent event) {
+ NotifyUser.showProgress();
+ StateToken stateToken;
+ final StateAbstractDTO state = session.getCurrentState();
+ if (state instanceof StateContentDTO) {
+ stateToken = ((StateContentDTO) state).getContainer().getStateToken();
+ } else {
+ final ContainerDTO container = ((StateContainerDTO) state).getContainer();
+ stateToken = container.getStateToken().copy().setFolder(container.getParentFolderId());
+ }
+ stateManager.gotoStateToken(stateToken);
+ // NotifyUser.hideProgress();
+ }
+
+ }
+
+ public GoParentContainerBtn(final I18nTranslationService i18n, final GoParentContainerAction action, final CoreResources res) {
+ super(action);
+ this.withToolTip(i18n.t("Go up: Open the container folder")).withIcon(res.folderGoUp());
+ }
+
+}
Property changes on: trunk/src/main/java/cc/kune/gspace/client/actions/GoParentContainerBtn.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/gspace/client/actions/NewContainerBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/NewContainerBtn.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/NewContainerBtn.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,72 @@
+package cc.kune.gspace.client.actions;
+
+import cc.kune.common.client.actions.ActionEvent;
+import cc.kune.common.client.actions.ui.descrip.ButtonDescriptor;
+import cc.kune.common.client.notify.NotifyUser;
+import cc.kune.core.client.actions.RolAction;
+import cc.kune.core.client.resources.nav.NavResources;
+import cc.kune.core.client.rpcservices.AsyncCallbackSimple;
+import cc.kune.core.client.rpcservices.ContentServiceAsync;
+import cc.kune.core.client.state.ContentCache;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.client.state.StateManager;
+import cc.kune.core.shared.dto.AccessRolDTO;
+import cc.kune.core.shared.dto.HasContent;
+import cc.kune.core.shared.dto.StateContainerDTO;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+
+import com.google.inject.Inject;
+import com.google.inject.Provider;
+
+public class NewContainerBtn extends ButtonDescriptor {
+
+ public static class NewContainerAction extends RolAction {
+
+ private final ContentCache cache;
+ private final Provider<ContentServiceAsync> contentService;
+ private final I18nTranslationService i18n;
+ private final Session session;
+ private final StateManager stateManager;
+
+ @Inject
+ public NewContainerAction(final Session session, final StateManager stateManager,
+ final I18nTranslationService i18n, final Provider<ContentServiceAsync> contentService,
+ final ContentCache cache) {
+ super(AccessRolDTO.Editor, true);
+ this.session = session;
+ this.stateManager = stateManager;
+ this.i18n = i18n;
+ this.contentService = contentService;
+ this.cache = cache;
+ }
+
+ @Override
+ public void actionPerformed(final ActionEvent event) {
+ NotifyUser.showProgressProcessing();
+ stateManager.gotoStateToken(((HasContent) session.getCurrentState()).getContainer().getStateToken());
+ contentService.get().addFolder(session.getUserHash(), session.getCurrentStateToken(),
+ (String) getValue(NEW_NAME), (String) getValue(ID), new AsyncCallbackSimple<StateContainerDTO>() {
+ @Override
+ public void onSuccess(final StateContainerDTO state) {
+ // contextNavigator.setEditOnNextStateChange(true);
+ stateManager.setRetrievedStateAndGo(state);
+ NotifyUser.hideProgress();
+ }
+ });
+ cache.removeContent(session.getCurrentStateToken());
+ }
+
+ }
+
+ private static final String ID = "ctnernewid";
+ private static final String NEW_NAME = "ctnernewname";
+
+ public NewContainerBtn(final I18nTranslationService i18n, final NewContainerAction action, final NavResources res,
+ final String title, final String tooltip, final String newName, final String id) {
+ super(action);
+ // The name given to this new content
+ action.putValue(NEW_NAME, newName);
+ action.putValue(ID, id);
+ this.withText(title).withToolTip(tooltip).withIcon(res.folderAdd()).withStyles("k-def-docbtn");
+ }
+}
Property changes on: trunk/src/main/java/cc/kune/gspace/client/actions/NewContainerBtn.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/gspace/client/actions/NewContentBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/NewContentBtn.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/NewContentBtn.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,78 @@
+package cc.kune.gspace.client.actions;
+
+import cc.kune.common.client.actions.ActionEvent;
+import cc.kune.common.client.actions.KeyStroke;
+import cc.kune.common.client.actions.Shortcut;
+import cc.kune.common.client.actions.ui.descrip.ButtonDescriptor;
+import cc.kune.common.client.notify.NotifyUser;
+import cc.kune.common.client.shortcuts.GlobalShortcutRegister;
+import cc.kune.core.client.actions.RolAction;
+import cc.kune.core.client.resources.nav.NavResources;
+import cc.kune.core.client.rpcservices.AsyncCallbackSimple;
+import cc.kune.core.client.rpcservices.ContentServiceAsync;
+import cc.kune.core.client.state.ContentCache;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.client.state.StateManager;
+import cc.kune.core.shared.dto.AccessRolDTO;
+import cc.kune.core.shared.dto.HasContent;
+import cc.kune.core.shared.dto.StateContentDTO;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+
+import com.google.inject.Inject;
+import com.google.inject.Provider;
+
+public class NewContentBtn extends ButtonDescriptor {
+
+ public static class NewContentAction extends RolAction {
+
+ private final ContentCache cache;
+ private final Provider<ContentServiceAsync> contentService;
+ private final Session session;
+ private final StateManager stateManager;
+
+ @Inject
+ public NewContentAction(final Session session, final StateManager stateManager,
+ final I18nTranslationService i18n, final Provider<ContentServiceAsync> contentService,
+ final ContentCache cache) {
+ super(AccessRolDTO.Editor, true);
+ this.session = session;
+ this.stateManager = stateManager;
+ this.contentService = contentService;
+ this.cache = cache;
+ }
+
+ @Override
+ public void actionPerformed(final ActionEvent event) {
+ NotifyUser.showProgressProcessing();
+ stateManager.gotoStateToken(((HasContent) session.getCurrentState()).getContainer().getStateToken());
+ contentService.get().addContent(session.getUserHash(), session.getCurrentStateToken(),
+ (String) getValue(NEW_NAME), (String) getValue(ID), new AsyncCallbackSimple<StateContentDTO>() {
+ @Override
+ public void onSuccess(final StateContentDTO state) {
+ stateManager.setRetrievedStateAndGo(state);
+ NotifyUser.hideProgress();
+ // stateManager.refreshCurrentGroupState();
+ // contextNavigator.setEditOnNextStateChange(true);
+ }
+ });
+ cache.removeContent(session.getCurrentStateToken());
+ }
+ }
+
+ private static final String ID = "ctnnewid";
+ private static final String NEW_NAME = "ctnnewname";
+
+ public NewContentBtn(final I18nTranslationService i18n, final NewContentAction action, final NavResources res,
+ final GlobalShortcutRegister shorcutReg, final String title, final String tooltip, final String newName,
+ final String id) {
+ super(action);
+ // The name given to this new content
+ action.putValue(NEW_NAME, newName);
+ action.putValue(ID, id);
+ final KeyStroke shortcut = Shortcut.getShortcut(false, true, false, false, Character.valueOf('N'));
+ shorcutReg.put(shortcut, action);
+ this.withText(title).withToolTip(tooltip).withIcon(res.pageAdd()).withShortcut(shortcut).withStyles(
+ "k-def-docbtn");
+ }
+
+}
Property changes on: trunk/src/main/java/cc/kune/gspace/client/actions/NewContentBtn.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/gspace/client/actions/OpenContentMenuItem.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/OpenContentMenuItem.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/OpenContentMenuItem.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,36 @@
+package cc.kune.gspace.client.actions;
+
+import cc.kune.common.client.actions.AbstractExtendedAction;
+import cc.kune.common.client.actions.ActionEvent;
+import cc.kune.common.client.actions.ui.descrip.MenuItemDescriptor;
+import cc.kune.core.client.resources.nav.NavResources;
+import cc.kune.core.client.state.StateManager;
+import cc.kune.core.shared.domain.utils.StateToken;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+
+import com.google.inject.Inject;
+
+public class OpenContentMenuItem extends MenuItemDescriptor {
+
+ public static class OpenContentAction extends AbstractExtendedAction {
+
+ private final StateManager stateManager;
+
+ @Inject
+ public OpenContentAction(final StateManager stateManager) {
+ this.stateManager = stateManager;
+ }
+
+ @Override
+ public void actionPerformed(final ActionEvent event) {
+ stateManager.gotoStateToken((StateToken) event.getTarget());
+ }
+
+ }
+
+ public OpenContentMenuItem(final I18nTranslationService i18n, final OpenContentAction action, final NavResources res) {
+ super(action);
+ this.withText(i18n.t("Open")).withIcon(res.go());
+ }
+
+}
Property changes on: trunk/src/main/java/cc/kune/gspace/client/actions/OpenContentMenuItem.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Copied: trunk/src/main/java/cc/kune/gspace/client/viewers (from rev 1315, trunk/src/main/java/cc/kune/docs/client/viewers)
Copied: trunk/src/main/java/cc/kune/gspace/client/viewers/AbstractFolderViewerPanel.java (from rev 1320, trunk/src/main/java/cc/kune/docs/client/viewers/AbstractFolderViewerPanel.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/viewers/AbstractFolderViewerPanel.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/viewers/AbstractFolderViewerPanel.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,66 @@
+package cc.kune.gspace.client.viewers;
+
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
+import cc.kune.common.client.ui.UiUtils;
+import cc.kune.core.shared.dto.StateContainerDTO;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.gspace.client.GSpaceArmor;
+import cc.kune.gspace.client.viewers.FolderViewerPresenter.FolderViewerView;
+
+import com.google.gwt.user.client.ui.InlineLabel;
+import com.google.gwt.user.client.ui.InsertPanel.ForIsWidget;
+import com.google.gwt.user.client.ui.Widget;
+import com.gwtplatform.mvp.client.ViewImpl;
+
+public abstract class AbstractFolderViewerPanel extends ViewImpl implements FolderViewerView {
+ private final InlineLabel emptyLabel;
+ protected final GSpaceArmor gsArmor;
+ protected final I18nTranslationService i18n;
+ protected Widget widget;
+
+ public AbstractFolderViewerPanel(final GSpaceArmor gsArmor, final I18nTranslationService i18n) {
+ this.gsArmor = gsArmor;
+ this.i18n = i18n;
+ emptyLabel = new InlineLabel(i18n.t("This folder is empty."));
+ emptyLabel.setStyleName("k-empty-msg");
+ }
+
+ @Override
+ public Widget asWidget() {
+ return widget;
+ }
+
+ @Override
+ public void attach() {
+ final ForIsWidget docContainer = gsArmor.getDocContainer();
+ docContainer.add(widget);
+ }
+
+ @Override
+ public void clear() {
+ gsArmor.getSubheaderToolbar().clear();
+ UiUtils.clear(gsArmor.getDocContainer());
+ UiUtils.clear(gsArmor.getDocHeader());
+ }
+
+ @Override
+ public void detach() {
+ clear();
+ }
+
+ @Override
+ public void setActions(final GuiActionDescCollection actions) {
+ gsArmor.getSubheaderToolbar().clear();
+ gsArmor.getSubheaderToolbar().addAll(actions);
+ }
+
+ @Override
+ public void setContainer(final StateContainerDTO state) {
+ gsArmor.getDocHeader().add(new InlineLabel(state.getTitle()));
+ }
+
+ @Override
+ public void showEmptyMsg() {
+ gsArmor.getDocContainer().add(emptyLabel);
+ }
+}
Deleted: trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPanel.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -1,158 +0,0 @@
-package cc.kune.docs.client.viewers;
-
-import org.waveprotocol.box.webclient.client.ClientIdGenerator;
-import org.waveprotocol.box.webclient.client.RemoteViewServiceMultiplexer;
-import org.waveprotocol.box.webclient.client.Session;
-import org.waveprotocol.box.webclient.client.SimpleWaveStore;
-import org.waveprotocol.box.webclient.client.StagesProvider;
-import org.waveprotocol.box.webclient.client.WaveWebSocketClient;
-import org.waveprotocol.box.webclient.search.WaveStore;
-import org.waveprotocol.box.webclient.widget.loading.LoadingIndicator;
-import org.waveprotocol.wave.client.account.ProfileManager;
-import org.waveprotocol.wave.client.account.impl.ProfileManagerImpl;
-import org.waveprotocol.wave.client.widget.common.ImplPanel;
-import org.waveprotocol.wave.model.id.IdGenerator;
-import org.waveprotocol.wave.model.wave.ParticipantId;
-import org.waveprotocol.wave.model.waveref.InvalidWaveRefException;
-import org.waveprotocol.wave.model.waveref.WaveRef;
-import org.waveprotocol.wave.util.escapers.GwtWaverefEncoder;
-
-import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
-import cc.kune.common.client.errors.UIException;
-import cc.kune.core.shared.dto.StateContentDTO;
-import cc.kune.docs.client.viewers.DocViewerPresenter.DocViewerView;
-import cc.kune.gspace.client.GSpaceArmor;
-import cc.kune.wave.client.WaveClientManager;
-import cc.kune.wave.client.WebClient;
-
-import com.google.gwt.core.client.GWT;
-import com.google.gwt.dom.client.Document;
-import com.google.gwt.dom.client.Element;
-import com.google.gwt.safehtml.shared.SafeHtmlUtils;
-import com.google.gwt.uibinder.client.UiBinder;
-import com.google.gwt.uibinder.client.UiField;
-import com.google.gwt.user.client.Command;
-import com.google.gwt.user.client.ui.DeckPanel;
-import com.google.gwt.user.client.ui.InlineHTML;
-import com.google.gwt.user.client.ui.InsertPanel.ForIsWidget;
-import com.google.gwt.user.client.ui.Label;
-import com.google.gwt.user.client.ui.Widget;
-import com.google.inject.Inject;
-import com.gwtplatform.mvp.client.ViewImpl;
-
-public class DocViewerPanel extends ViewImpl implements DocViewerView {
- interface DocsViewerPanelUiBinder extends UiBinder<Widget, DocViewerPanel> {
- }
-
- private static DocsViewerPanelUiBinder uiBinder = GWT.create(DocsViewerPanelUiBinder.class);
-
- private RemoteViewServiceMultiplexer channel;
- @UiField
- DeckPanel deck;
- private IdGenerator idGenerator;
- private final Element loading = new LoadingIndicator().getElement();
- @UiField
- InlineHTML onlyViewPanel;
- private ProfileManager profiles;
- /** The wave panel, if a wave is open. */
- private StagesProvider wave;
- private final WaveClientManager waveClientManager;
- // @UiField
- // FramedPanel waveFrame;
- @UiField
- ImplPanel waveHolder;
- private final WaveStore waveStore = new SimpleWaveStore();
- private final Widget widget;
- private final GSpaceArmor wsArmor;
-
- @Inject
- public DocViewerPanel(final GSpaceArmor wsArmor, final WaveClientManager waveClientManager) {
- this.wsArmor = wsArmor;
- this.waveClientManager = waveClientManager;
- widget = uiBinder.createAndBindUi(this);
- }
-
- @Override
- public Widget asWidget() {
- return widget;
- }
-
- @Override
- public void attach() {
- final ForIsWidget docContainer = wsArmor.getDocContainer();
- final int widgetCount = docContainer.getWidgetCount();
- for (int i = 0; i < widgetCount; i++) {
- docContainer.remove(i);
- }
- docContainer.add(widget);
- }
-
- @Override
- public void detach() {
- widget.removeFromParent();
- }
-
- private WaveRef getWaveRef(final String waveRefS) {
- try {
- return GwtWaverefEncoder.decodeWaveRefFromPath(waveRefS);
- } catch (final InvalidWaveRefException e) {
- throw new UIException("Invalid waveref: " + waveRefS);
- }
- }
-
- private void initWaveClientIfNeeded() {
- if (channel == null) {
- final WaveWebSocketClient webSocket = new WaveWebSocketClient(WebClient.useSocketIO(),
- WebClient.getWebSocketBaseUrl(GWT.getModuleBaseURL()));
- webSocket.connect();
- channel = new RemoteViewServiceMultiplexer(webSocket,
- new ParticipantId(Session.get().getAddress()).getAddress());
- profiles = new ProfileManagerImpl();
- idGenerator = ClientIdGenerator.create();
- }
- }
-
- @Override
- public void setActions(final GuiActionDescCollection actions) {
- wsArmor.getSubheaderToolbar().clear();
- wsArmor.getSubheaderToolbar().addAll(actions);
- }
-
- @Override
- public void setContent(final StateContentDTO state) {
- final boolean editable = state.getContentRights().isEditable();
- if (editable) {
- // initWaveClientIfNeeded();
- // setEditableWaveContent(state.getWaveRef(), false);
- waveHolder.clear();
- waveHolder.add(new Label(state.getContent() + " (but here goes the Wave editor -we are testing it-)"));
- onlyViewPanel.setHTML(SafeHtmlUtils.fromTrustedString(state.getContent()));
- } else {
- onlyViewPanel.setHTML(SafeHtmlUtils.fromTrustedString(state.getContent()));
- }
- deck.showWidget(editable ? 0 : 1);
- }
-
- public void setEditableWaveContent(final String waveRefS, final boolean isNewWave) {
- final WaveRef waveRef = getWaveRef(waveRefS);
-
- if (wave != null) {
- wave.destroy();
- wave = null;
- }
-
- // Release the display:none.
- // UIObject.setVisible(waveFrame.getElement(), true);
- waveHolder.getElement().appendChild(loading);
- final Element holder = waveHolder.getElement().appendChild(Document.get().createDivElement());
- final StagesProvider wave = new StagesProvider(holder, waveHolder, waveRef, channel, idGenerator, profiles,
- waveStore, isNewWave);
- this.wave = wave;
- wave.load(new Command() {
- @Override
- public void execute() {
- loading.removeFromParent();
- }
- });
- }
-}
Copied: trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPanel.java (from rev 1317, trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPanel.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPanel.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,150 @@
+package cc.kune.gspace.client.viewers;
+
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
+import cc.kune.common.client.ui.UiUtils;
+import cc.kune.core.shared.dto.StateContentDTO;
+import cc.kune.gspace.client.GSpaceArmor;
+import cc.kune.gspace.client.viewers.DocViewerPresenter.DocViewerView;
+import cc.kune.wave.client.WaveClientManager;
+
+import com.google.gwt.core.client.GWT;
+import com.google.gwt.safehtml.shared.SafeHtmlUtils;
+import com.google.gwt.uibinder.client.UiBinder;
+import com.google.gwt.uibinder.client.UiField;
+import com.google.gwt.user.client.ui.DeckPanel;
+import com.google.gwt.user.client.ui.InlineHTML;
+import com.google.gwt.user.client.ui.InlineLabel;
+import com.google.gwt.user.client.ui.InsertPanel.ForIsWidget;
+import com.google.gwt.user.client.ui.Widget;
+import com.google.inject.Inject;
+import com.gwtplatform.mvp.client.ViewImpl;
+
+public class DocViewerPanel extends ViewImpl implements DocViewerView {
+ interface DocsViewerPanelUiBinder extends UiBinder<Widget, DocViewerPanel> {
+ }
+
+ private static DocsViewerPanelUiBinder uiBinder = GWT.create(DocsViewerPanelUiBinder.class);
+
+ // private RemoteViewServiceMultiplexer channel;
+ @UiField
+ DeckPanel deck;
+ private final GSpaceArmor gsArmor;
+ // private IdGenerator idGenerator;
+ // private final Element loading = new LoadingIndicator().getElement();
+ @UiField
+ InlineHTML onlyViewPanel;
+ // private ProfileManager profiles;
+ /** The wave panel, if a wave is open. */
+ // private StagesProvider wave;
+ // private final WaveClientManager waveClientManager;
+ // @UiField
+ // FramedPanel waveFrame;
+ // @UiField
+ // ImplPanel waveHolder;
+ // private final WaveStore waveStore = new SimpleWaveStore();
+ private final Widget widget;
+
+ @Inject
+ public DocViewerPanel(final GSpaceArmor wsArmor, final WaveClientManager waveClientManager) {
+ this.gsArmor = wsArmor;
+ // this.waveClientManager = waveClientManager;
+ widget = uiBinder.createAndBindUi(this);
+ }
+
+ @Override
+ public Widget asWidget() {
+ return widget;
+ }
+
+ @Override
+ public void attach() {
+ final ForIsWidget docContainer = gsArmor.getDocContainer();
+ docContainer.add(widget);
+ }
+
+ @Override
+ public void clear() {
+ onlyViewPanel.setHTML("");
+ gsArmor.getSubheaderToolbar().clear();
+ UiUtils.clear(gsArmor.getDocContainer());
+ UiUtils.clear(gsArmor.getDocHeader());
+ }
+
+ @Override
+ public void detach() {
+ clear();
+ }
+
+ // private WaveRef getWaveRef(final String waveRefS) {
+ // try {
+ // return GwtWaverefEncoder.decodeWaveRefFromPath(waveRefS);
+ // } catch (final InvalidWaveRefException e) {
+ // throw new UIException("Invalid waveref: " + waveRefS);
+ // }
+ // }
+ //
+ // private void initWaveClientIfNeeded() {
+ // if (channel == null) {
+ // final WaveWebSocketClient webSocket = new
+ // WaveWebSocketClient(WebClient.useSocketIO(),
+ // WebClient.getWebSocketBaseUrl(GWT.getModuleBaseURL()));
+ // webSocket.connect();
+ // channel = new RemoteViewServiceMultiplexer(webSocket,
+ // new ParticipantId(Session.get().getAddress()).getAddress());
+ // profiles = new ProfileManagerImpl();
+ // idGenerator = ClientIdGenerator.create();
+ // }
+ // }
+
+ @Override
+ public void setActions(final GuiActionDescCollection actions) {
+ gsArmor.getSubheaderToolbar().clear();
+ gsArmor.getSubheaderToolbar().addAll(actions);
+ }
+
+ @Override
+ public void setContent(final StateContentDTO state) {
+ final ForIsWidget docHeader = gsArmor.getDocHeader();
+ UiUtils.clear(docHeader);
+ docHeader.add(new InlineLabel(state.getTitle()));
+ final boolean editable = state.getContentRights().isEditable();
+ if (editable) {
+ // initWaveClientIfNeeded();
+ // setEditableWaveContent(state.getWaveRef(), false);
+ // waveHolder.clear();
+ // waveHolder.add(new Label(state.getContent() +
+ // " (but here goes the Wave editor -we are testing it-)"));
+ onlyViewPanel.setHTML(SafeHtmlUtils.fromTrustedString(state.getContent()));
+ } else {
+ onlyViewPanel.setHTML(SafeHtmlUtils.fromTrustedString(state.getContent()));
+ }
+ // deck.showWidget(editable ? 0 : 1);
+ deck.showWidget(1);
+ }
+ //
+ // private void setEditableWaveContent(final String waveRefS, final boolean
+ // isNewWave) {
+ // final WaveRef waveRef = getWaveRef(waveRefS);
+ //
+ // if (wave != null) {
+ // wave.destroy();
+ // wave = null;
+ // }
+ //
+ // // Release the display:none.
+ // // UIObject.setVisible(waveFrame.getElement(), true);
+ // waveHolder.getElement().appendChild(loading);
+ // final Element holder =
+ // waveHolder.getElement().appendChild(Document.get().createDivElement());
+ // final StagesProvider wave = new StagesProvider(holder, waveHolder,
+ // waveRef, channel, idGenerator, profiles,
+ // waveStore, isNewWave);
+ // this.wave = wave;
+ // wave.load(new Command() {
+ // @Override
+ // public void execute() {
+ // loading.removeFromParent();
+ // }
+ // });
+ // }
+}
Deleted: trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPanel.ui.xml
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.ui.xml 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPanel.ui.xml 2011-04-26 19:57:21 UTC (rev 1321)
@@ -1,25 +0,0 @@
-<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
-<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
- xmlns:g='urn:import:com.google.gwt.user.client.ui' xmlns:f='urn:import:org.waveprotocol.box.webclient.widget.frame'
- xmlns:w='urn:import:org.waveprotocol.wave.client.widget.common'>
- <ui:style>
- .wavePanel {
- margin: 0 0 0 0;
- }
- .waveHolder {
- position: absolute;
- top: 0;
- bottom: 0;
- left: 0;
- right: 0;
- }
- </ui:style>
- <g:HTMLPanel width="100%" height="100%">
- <g:DeckPanel ui:field="deck" addStyleNames="k-doc-content-deck">
-<!-- <f:FramedPanel ui:field="waveFrame" addStyleNames="{style.wavePanel}"> -->
-<!-- </f:FramedPanel> -->
- <w:ImplPanel ui:field="waveHolder" addStyleNames="{style.waveHolder}" />
- <g:InlineHTML ui:field="onlyViewPanel" />
- </g:DeckPanel>
- </g:HTMLPanel>
-</ui:UiBinder>
\ No newline at end of file
Copied: trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPanel.ui.xml (from rev 1317, trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.ui.xml)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPanel.ui.xml (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPanel.ui.xml 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,28 @@
+<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
+<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
+ xmlns:g='urn:import:com.google.gwt.user.client.ui' xmlns:f='urn:import:org.waveprotocol.box.webclient.widget.frame'
+ xmlns:w='urn:import:org.waveprotocol.wave.client.widget.common'>
+ <ui:style>
+ .wavePanel {
+ margin: 0 0 0 0;
+ }
+
+ .waveHolder {
+ position: absolute;
+ top: 0;
+ bottom: 0;
+ left: 0;
+ right: 0;
+ }
+ </ui:style>
+ <g:HTMLPanel width="100%" height="100%">
+ <g:DeckPanel ui:field="deck" addStyleNames="k-doc-content-deck">
+ <!-- <f:FramedPanel ui:field="waveFrame" addStyleNames="{style.wavePanel}"> -->
+ <!-- </f:FramedPanel> -->
+ <!-- <w:ImplPanel ui:field="waveHolder" addStyleNames="{style.waveHolder}"
+ /> -->
+ <g:InlineHTML ui:field="delete" />
+ <g:InlineHTML ui:field="onlyViewPanel" />
+ </g:DeckPanel>
+ </g:HTMLPanel>
+</ui:UiBinder>
\ No newline at end of file
Deleted: trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPresenter.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPresenter.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -1,79 +0,0 @@
-package cc.kune.docs.client.viewers;
-
-import javax.annotation.Nonnull;
-
-import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
-import cc.kune.core.client.actions.ActionRegistryByType;
-import cc.kune.core.client.state.Session;
-import cc.kune.core.shared.domain.utils.AccessRights;
-import cc.kune.core.shared.dto.HasContent;
-import cc.kune.core.shared.dto.StateContentDTO;
-import cc.kune.docs.client.DocsClientTool;
-import cc.kune.docs.client.actions.DocsClientActions;
-import cc.kune.gspace.client.tool.ContentViewer;
-import cc.kune.gspace.client.tool.ContentViewerSelector;
-
-import com.google.gwt.event.shared.EventBus;
-import com.google.inject.Inject;
-import com.gwtplatform.mvp.client.Presenter;
-import com.gwtplatform.mvp.client.View;
-import com.gwtplatform.mvp.client.annotations.ProxyCodeSplit;
-import com.gwtplatform.mvp.client.proxy.Proxy;
-import com.gwtplatform.mvp.client.proxy.RevealRootContentEvent;
-
-public class DocViewerPresenter extends Presenter<DocViewerPresenter.DocViewerView, DocViewerPresenter.DocViewerProxy>
- implements ContentViewer {
-
- @ProxyCodeSplit
- public interface DocViewerProxy extends Proxy<DocViewerPresenter> {
- }
-
- public interface DocViewerView extends View {
-
- void attach();
-
- void detach();
-
- void setActions(GuiActionDescCollection actions);
-
- void setContent(StateContentDTO state);
- }
-
- private final ActionRegistryByType actionsRegistry;
- private final Session session;
-
- @Inject
- public DocViewerPresenter(final EventBus eventBus, final DocViewerView view, final DocViewerProxy proxy,
- final Session session, final ContentViewerSelector viewerSelector,
- final ActionRegistryByType actionsRegistry, final DocsClientActions actions) {
- super(eventBus, view, proxy);
- this.session = session;
- this.actionsRegistry = actionsRegistry;
- viewerSelector.register(this, true, DocsClientTool.TYPE_WAVE);
- }
-
- @Override
- public void attach() {
- getView().attach();
- }
-
- @Override
- public void detach() {
- getView().detach();
- }
-
- @Override
- protected void revealInParent() {
- RevealRootContentEvent.fire(this, this);
- }
-
- @Override
- public void setContent(@Nonnull final HasContent state) {
- final StateContentDTO stateContent = (StateContentDTO) state;
- final AccessRights rights = stateContent.getContentRights();
- final GuiActionDescCollection actions = actionsRegistry.getCurrentActions(stateContent.getGroup(),
- stateContent.getTypeId(), session.isLogged(), rights);
- getView().setActions(actions);
- getView().setContent(stateContent);
- }
-}
\ No newline at end of file
Copied: trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPresenter.java (from rev 1320, trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPresenter.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPresenter.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/viewers/DocViewerPresenter.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,87 @@
+package cc.kune.gspace.client.viewers;
+
+import javax.annotation.Nonnull;
+
+import cc.kune.blogs.client.BlogsClientTool;
+import cc.kune.blogs.client.actions.BlogsClientActions;
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
+import cc.kune.core.client.actions.ActionRegistryByType;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.shared.domain.utils.AccessRights;
+import cc.kune.core.shared.dto.HasContent;
+import cc.kune.core.shared.dto.StateContentDTO;
+import cc.kune.docs.client.DocsClientTool;
+import cc.kune.docs.client.actions.DocsClientActions;
+import cc.kune.gspace.client.actions.ActionGroups;
+import cc.kune.gspace.client.tool.ContentViewer;
+import cc.kune.gspace.client.tool.ContentViewerSelector;
+
+import com.google.gwt.event.shared.EventBus;
+import com.google.inject.Inject;
+import com.gwtplatform.mvp.client.Presenter;
+import com.gwtplatform.mvp.client.View;
+import com.gwtplatform.mvp.client.annotations.ProxyCodeSplit;
+import com.gwtplatform.mvp.client.proxy.Proxy;
+import com.gwtplatform.mvp.client.proxy.RevealRootContentEvent;
+
+public class DocViewerPresenter extends Presenter<DocViewerPresenter.DocViewerView, DocViewerPresenter.DocViewerProxy>
+ implements ContentViewer {
+
+ @ProxyCodeSplit
+ public interface DocViewerProxy extends Proxy<DocViewerPresenter> {
+ }
+
+ public interface DocViewerView extends View {
+
+ void attach();
+
+ void clear();
+
+ void detach();
+
+ void setActions(GuiActionDescCollection actions);
+
+ void setContent(StateContentDTO state);
+ }
+
+ private final ActionRegistryByType actionsRegistry;
+ private final Session session;
+
+ @Inject
+ public DocViewerPresenter(final EventBus eventBus, final DocViewerView view, final DocViewerProxy proxy,
+ final Session session, final ContentViewerSelector viewerSelector,
+ final ActionRegistryByType actionsRegistry, final DocsClientActions docsActions,
+ final BlogsClientActions blogActions) {
+ super(eventBus, view, proxy);
+ this.session = session;
+ this.actionsRegistry = actionsRegistry;
+ viewerSelector.register(this, true, DocsClientTool.TYPE_WAVE);
+ viewerSelector.register(this, true, BlogsClientTool.TYPE_POST);
+ }
+
+ @Override
+ public void attach() {
+ getView().attach();
+ }
+
+ @Override
+ public void detach() {
+ getView().detach();
+ }
+
+ @Override
+ protected void revealInParent() {
+ RevealRootContentEvent.fire(this, this);
+ }
+
+ @Override
+ public void setContent(@Nonnull final HasContent state) {
+ getView().clear();
+ final StateContentDTO stateContent = (StateContentDTO) state;
+ final AccessRights rights = stateContent.getContentRights();
+ final GuiActionDescCollection actions = actionsRegistry.getCurrentActions(stateContent.getGroup(),
+ stateContent.getTypeId(), session.isLogged(), rights, ActionGroups.VIEW);
+ getView().setActions(actions);
+ getView().setContent(stateContent);
+ }
+}
\ No newline at end of file
Modified: trunk/src/main/java/cc/kune/gspace/client/viewers/FolderItemDescriptor.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderItemDescriptor.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/gspace/client/viewers/FolderItemDescriptor.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -17,7 +17,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
\*/
-package cc.kune.docs.client.viewers;
+package cc.kune.gspace.client.viewers;
import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
import cc.kune.core.shared.domain.ContentStatus;
Copied: trunk/src/main/java/cc/kune/gspace/client/viewers/FolderItemWidget.java (from rev 1318, trunk/src/main/java/cc/kune/docs/client/viewers/FolderItemWidget.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/viewers/FolderItemWidget.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/viewers/FolderItemWidget.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,116 @@
+package cc.kune.gspace.client.viewers;
+
+import cc.kune.common.client.actions.ui.ActionSimplePanel;
+
+import com.google.gwt.core.client.GWT;
+import com.google.gwt.event.dom.client.BlurEvent;
+import com.google.gwt.event.dom.client.FocusEvent;
+import com.google.gwt.event.dom.client.HasAllFocusHandlers;
+import com.google.gwt.event.dom.client.HasAllMouseHandlers;
+import com.google.gwt.event.dom.client.HasClickHandlers;
+import com.google.gwt.event.dom.client.HasDoubleClickHandlers;
+import com.google.gwt.event.dom.client.MouseOutEvent;
+import com.google.gwt.event.dom.client.MouseOverEvent;
+import com.google.gwt.resources.client.ImageResource;
+import com.google.gwt.uibinder.client.UiBinder;
+import com.google.gwt.uibinder.client.UiField;
+import com.google.gwt.uibinder.client.UiHandler;
+import com.google.gwt.user.client.ui.Composite;
+import com.google.gwt.user.client.ui.FlowPanel;
+import com.google.gwt.user.client.ui.FocusPanel;
+import com.google.gwt.user.client.ui.HasText;
+import com.google.gwt.user.client.ui.Image;
+import com.google.gwt.user.client.ui.InlineLabel;
+import com.google.gwt.user.client.ui.SimplePanel;
+import com.google.gwt.user.client.ui.Widget;
+
+public class FolderItemWidget extends Composite implements HasText {
+
+ interface FolderItemWidgetUiBinder extends UiBinder<Widget, FolderItemWidget> {
+ }
+
+ private static FolderItemWidgetUiBinder uiBinder = GWT.create(FolderItemWidgetUiBinder.class);
+
+ @UiField
+ FlowPanel flow;
+ @UiField
+ FocusPanel focusPanel;
+ @UiField
+ Image icon;
+ @UiField
+ SimplePanel menu;
+ @UiField
+ InlineLabel title;
+
+ public FolderItemWidget(final ImageResource iconResource, final String title) {
+ initWidget(uiBinder.createAndBindUi(this));
+ this.title.setText(title);
+ icon.setResource(iconResource);
+ }
+
+ private void clearFocusStyles() {
+ focusPanel.removeStyleDependentName("nofocused");
+ focusPanel.removeStyleDependentName("focused");
+ }
+
+ HasClickHandlers getRowClick() {
+ return focusPanel;
+ }
+
+ HasDoubleClickHandlers getRowDoubleClick() {
+ return focusPanel;
+ }
+
+ HasAllFocusHandlers getRowFocus() {
+ return focusPanel;
+ }
+
+ HasAllMouseHandlers getRowMouse() {
+ return focusPanel;
+ }
+
+ @Override
+ public String getText() {
+ return title.getText();
+ }
+
+ @UiHandler("focusPanel")
+ public void onBlur(final BlurEvent event) {
+ clearFocusStyles();
+ focusPanel.addStyleDependentName("nofocused");
+ }
+
+ @UiHandler("focusPanel")
+ public void onFocus(final FocusEvent event) {
+ clearFocusStyles();
+ focusPanel.addStyleDependentName("focused");
+ }
+
+ @UiHandler("focusPanel")
+ public void onOut(final MouseOutEvent event) {
+ clearFocusStyles();
+ focusPanel.addStyleDependentName("nofocused");
+ }
+
+ @UiHandler("focusPanel")
+ public void onOver(final MouseOverEvent event) {
+ clearFocusStyles();
+ focusPanel.addStyleDependentName("focused");
+ }
+
+ public void setMenu(final ActionSimplePanel toolbar) {
+ menu.add(toolbar);
+ }
+
+ public void setSelect(final boolean selected) {
+ clearFocusStyles();
+ focusPanel.removeStyleDependentName(selected ? "noselected" : "selected");
+ focusPanel.addStyleDependentName(selected ? "selected" : "noselected");
+ }
+
+ @Override
+ public void setText(final String text) {
+ title.setText(text);
+ }
+
+}
Copied: trunk/src/main/java/cc/kune/gspace/client/viewers/FolderItemWidget.ui.xml (from rev 1318, trunk/src/main/java/cc/kune/docs/client/viewers/FolderItemWidget.ui.xml)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/viewers/FolderItemWidget.ui.xml (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/viewers/FolderItemWidget.ui.xml 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,56 @@
+<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
+<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
+ xmlns:co="urn:ui:cc.kune.core.client" xmlns:g="urn:import:com.google.gwt.user.client.ui">
+ <ui:style>
+ @external .k-folderitem-focus;
+ @external .k-folderitem-focus-focused;
+ @external .k-folderitem-focus-selected;
+ @external .k-folderitem-focus-noselected;
+ @external .k-folderitem-focus-nofocused;
+ .k-folderitem-focus {
+ background-color: none;
+ }
+
+ .k-folderitem-focus-focused {
+ background-color: #F2F5FD;
+ }
+
+ .k-folderitem-focus-selected {
+ background-color: #E3E9FF;
+ }
+
+ .k-folderitem-focus-noselected {
+ }
+
+ .k-folderitem-focus-nofocused {
+
+ }
+
+ .flow {
+ cursor: pointer;
+ border-bottom: 1px solid #F3F3F3;
+ line-height: 1.3em;
+ height: 28px;
+ }
+
+ .title {
+ font-size: 16px;
+ margin-left: 5px;
+ }
+
+ .icon {
+ margin: 5px;
+ }
+
+ .menu {
+ float: right;
+ }
+ </ui:style>
+ <g:FocusPanel ui:field="focusPanel" styleName="{style.k-folderitem-focus}">
+ <g:FlowPanel styleName="{style.flow}" ui:field="flow">
+ <g:Image styleName="{style.icon}" ui:field="icon" />
+ <g:InlineLabel styleName="{style.title}" ui:field="title" />
+ <g:SimplePanel styleName="{style.menu}" ui:field="menu" />
+ </g:FlowPanel>
+ </g:FocusPanel>
+</ui:UiBinder>
\ No newline at end of file
Copied: trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerAsFlowPanel.java (from rev 1320, trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsFlowPanel.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerAsFlowPanel.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerAsFlowPanel.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,84 @@
+package cc.kune.gspace.client.viewers;
+
+import cc.kune.common.client.actions.gxtui.AbstractGxtMenuGui;
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescrip;
+import cc.kune.common.client.actions.ui.descrip.MenuDescriptor;
+import cc.kune.common.client.ui.BasicThumb;
+import cc.kune.core.shared.dto.StateContainerDTO;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.gspace.client.GSpaceArmor;
+
+import com.google.gwt.core.client.GWT;
+import com.google.gwt.event.dom.client.ClickEvent;
+import com.google.gwt.event.dom.client.ClickHandler;
+import com.google.gwt.event.dom.client.DoubleClickHandler;
+import com.google.gwt.uibinder.client.UiBinder;
+import com.google.gwt.uibinder.client.UiField;
+import com.google.gwt.user.client.ui.FlowPanel;
+import com.google.gwt.user.client.ui.HTML;
+import com.google.gwt.user.client.ui.Widget;
+import com.google.inject.Inject;
+
+public class FolderViewerAsFlowPanel extends AbstractFolderViewerPanel {
+ interface FolderViewerAsFlowPanelUiBinder extends UiBinder<Widget, FolderViewerAsFlowPanel> {
+ }
+ private static FolderViewerAsFlowPanelUiBinder uiBinder = GWT.create(FolderViewerAsFlowPanelUiBinder.class);
+
+ @UiField
+ FlowPanel flow;
+ int ICONLABELMAXSIZE = 20;
+ int ICONSIZE = 100;
+
+ @Inject
+ public FolderViewerAsFlowPanel(final GSpaceArmor gsArmor, final I18nTranslationService i18n) {
+ super(gsArmor, i18n);
+ widget = uiBinder.createAndBindUi(this);
+ }
+
+ @Override
+ public void addItem(final FolderItemDescriptor item, final ClickHandler clickHandler,
+ final DoubleClickHandler doubleClickHandler) {
+ // In this viewer we don't use the clickHandler from the presenter
+ flow.add(createThumb(item.getText(), item.getIcon(), item.getTooltip(), "", item.getActionCollection(),
+ doubleClickHandler));
+ }
+
+ @Override
+ public void clear() {
+ flow.clear();
+ super.clear();
+ }
+
+ public BasicThumb createThumb(final String text, final Object icon, final String tooltip,
+ final String tooltipTitle, final GuiActionDescCollection menuitems,
+ final DoubleClickHandler doubleClickHandler) {
+ final BasicThumb thumb = new BasicThumb(icon, ICONSIZE, text, ICONLABELMAXSIZE, false);
+ final MenuDescriptor menu = new MenuDescriptor();
+ menu.setStandalone(true);
+ menu.putValue(AbstractGxtMenuGui.MENU_POSITION, AbstractGxtMenuGui.MenuPosition.bl);
+ for (final GuiActionDescrip item : menuitems) {
+ item.setParent(menu);
+ }
+ final ClickHandler clickHand = new ClickHandler() {
+ @Override
+ public void onClick(final ClickEvent event) {
+ menu.show(thumb);
+ }
+ };
+ thumb.addClickHandler(clickHand);
+ thumb.addDoubleClickHandler(doubleClickHandler);
+ gsArmor.getSubheaderToolbar().add(menu);
+ gsArmor.getSubheaderToolbar().addAll(menuitems);
+ thumb.setTooltip(tooltipTitle, tooltip);
+ thumb.setLabelVisible(true);
+ return thumb;
+ }
+
+ @Override
+ public void setContainer(final StateContainerDTO state) {
+ super.setContainer(state);
+ gsArmor.getDocContainer().add(new HTML("<b>Note:</b> This GUI is provisional<br/>"));
+ }
+
+}
Copied: trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerAsFlowPanel.ui.xml (from rev 1318, trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsFlowPanel.ui.xml)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerAsFlowPanel.ui.xml (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerAsFlowPanel.ui.xml 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,8 @@
+<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
+<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
+ xmlns:g='urn:import:com.google.gwt.user.client.ui'>
+ <ui:style>
+ </ui:style>
+ <g:FlowPanel ui:field="flow" width="100%" height="100%">
+ </g:FlowPanel>
+</ui:UiBinder>
\ No newline at end of file
Copied: trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerAsTablePanel.java (from rev 1320, trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsTablePanel.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerAsTablePanel.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerAsTablePanel.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,106 @@
+package cc.kune.gspace.client.viewers;
+
+import cc.kune.common.client.actions.ui.ActionSimplePanel;
+import cc.kune.common.client.actions.ui.bind.GuiProvider;
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescrip;
+import cc.kune.common.client.actions.ui.descrip.MenuDescriptor;
+import cc.kune.core.client.resources.CoreResources;
+import cc.kune.core.shared.dto.StateContainerDTO;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.gspace.client.GSpaceArmor;
+
+import com.google.gwt.core.client.GWT;
+import com.google.gwt.event.dom.client.ClickEvent;
+import com.google.gwt.event.dom.client.ClickHandler;
+import com.google.gwt.event.dom.client.DoubleClickHandler;
+import com.google.gwt.event.dom.client.MouseOutEvent;
+import com.google.gwt.event.dom.client.MouseOutHandler;
+import com.google.gwt.event.dom.client.MouseOverEvent;
+import com.google.gwt.event.dom.client.MouseOverHandler;
+import com.google.gwt.resources.client.ImageResource;
+import com.google.gwt.uibinder.client.UiBinder;
+import com.google.gwt.uibinder.client.UiField;
+import com.google.gwt.user.client.ui.FlexTable;
+import com.google.gwt.user.client.ui.Widget;
+import com.google.inject.Inject;
+
+public class FolderViewerAsTablePanel extends AbstractFolderViewerPanel {
+
+ interface FolderViewerAsTablePanelUiBinder extends UiBinder<Widget, FolderViewerAsTablePanel> {
+ }
+
+ private static FolderViewerAsTablePanelUiBinder uiBinder = GWT.create(FolderViewerAsTablePanelUiBinder.class);
+
+ @UiField
+ FlexTable flex;
+
+ private final GuiProvider guiProvider;
+ private final CoreResources res;
+ protected FolderItemWidget selected;
+
+ @Inject
+ public FolderViewerAsTablePanel(final GSpaceArmor gsArmor, final I18nTranslationService i18n,
+ final GuiProvider guiProvider, final CoreResources res) {
+ super(gsArmor, i18n);
+ this.guiProvider = guiProvider;
+ this.res = res;
+ widget = uiBinder.createAndBindUi(this);
+ }
+
+ @Override
+ public void addItem(final FolderItemDescriptor item, final ClickHandler clickHandler,
+ final DoubleClickHandler doubleClickHandler) {
+ final int rowCount = flex.getRowCount();
+ final FolderItemWidget itemWidget = new FolderItemWidget((ImageResource) item.getIcon(), item.getText());
+ final ActionSimplePanel toolbar = new ActionSimplePanel(guiProvider);
+ itemWidget.setMenu(toolbar);
+ // Tooltip.to(itemWidget, item.getTooltip());
+ final MenuDescriptor menu = new MenuDescriptor(i18n.t("Actions"));
+ menu.withIcon(res.arrowdown()).withStyles("k-def-docbtn, k-btn, k-button");
+ menu.setStandalone(false);
+ menu.setVisible(false);
+ toolbar.add(menu);
+ for (final GuiActionDescrip menuItem : item.getActionCollection()) {
+ menuItem.setParent(menu);
+ toolbar.add(menuItem);
+ }
+ itemWidget.getRowClick().addClickHandler(new ClickHandler() {
+ @Override
+ public void onClick(final ClickEvent event) {
+ if (selected != null) {
+ selected.setSelect(false);
+ }
+ itemWidget.setSelect(true);
+ selected = itemWidget;
+ }
+ });
+ itemWidget.getRowDoubleClick().addDoubleClickHandler(doubleClickHandler);
+ itemWidget.getRowMouse().addMouseOutHandler(new MouseOutHandler() {
+ @Override
+ public void onMouseOut(final MouseOutEvent event) {
+ menu.setVisible(false);
+ // itemWidget.setSelect(false);
+ // menu.hide();
+ }
+ });
+ itemWidget.getRowMouse().addMouseOverHandler(new MouseOverHandler() {
+ @Override
+ public void onMouseOver(final MouseOverEvent event) {
+ menu.setVisible(true);
+ }
+ });
+ flex.setWidget(rowCount + 1, 0, itemWidget);
+ }
+
+ @Override
+ public void clear() {
+ flex.clear();
+ super.clear();
+ }
+
+ @Override
+ public void setContainer(final StateContainerDTO state) {
+ super.setContainer(state);
+ }
+
+}
Copied: trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerAsTablePanel.ui.xml (from rev 1318, trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsTablePanel.ui.xml)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerAsTablePanel.ui.xml (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerAsTablePanel.ui.xml 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,8 @@
+<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
+<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
+ xmlns:g="urn:import:com.google.gwt.user.client.ui">
+ <ui:style>
+ </ui:style>
+ <g:FlexTable ui:field="flex" width="100%" height="100%">
+ </g:FlexTable>
+</ui:UiBinder>
\ No newline at end of file
Deleted: trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerPanel.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -1,114 +0,0 @@
-package cc.kune.docs.client.viewers;
-
-import cc.kune.common.client.actions.gxtui.AbstractGxtMenuGui;
-import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
-import cc.kune.common.client.actions.ui.descrip.GuiActionDescrip;
-import cc.kune.common.client.actions.ui.descrip.MenuDescriptor;
-import cc.kune.common.client.ui.BasicThumb;
-import cc.kune.core.shared.dto.StateContainerDTO;
-import cc.kune.docs.client.viewers.FolderViewerPresenter.FolderViewerView;
-import cc.kune.gspace.client.GSpaceArmor;
-
-import com.google.gwt.core.client.GWT;
-import com.google.gwt.event.dom.client.ClickEvent;
-import com.google.gwt.event.dom.client.ClickHandler;
-import com.google.gwt.event.dom.client.DoubleClickHandler;
-import com.google.gwt.uibinder.client.UiBinder;
-import com.google.gwt.uibinder.client.UiField;
-import com.google.gwt.user.client.ui.FlowPanel;
-import com.google.gwt.user.client.ui.InsertPanel.ForIsWidget;
-import com.google.gwt.user.client.ui.Widget;
-import com.google.inject.Inject;
-import com.gwtplatform.mvp.client.ViewImpl;
-
-public class FolderViewerPanel extends ViewImpl implements FolderViewerView {
- interface FolderViewerPanelUiBinder extends UiBinder<Widget, FolderViewerPanel> {
- }
- private static FolderViewerPanelUiBinder uiBinder = GWT.create(FolderViewerPanelUiBinder.class);
-
- @UiField
- FlowPanel flow;
-
- private final GSpaceArmor gsArmor;
-
- int ICONLABELMAXSIZE = 10;
- int ICONSIZE = 40;
- private final Widget widget;
-
- @Inject
- public FolderViewerPanel(final GSpaceArmor wsArmor) {
- this.gsArmor = wsArmor;
- widget = uiBinder.createAndBindUi(this);
- }
-
- @Override
- public void addItem(final FolderItemDescriptor item, final DoubleClickHandler doubleClickHandler) {
- flow.add(createThumb(item.getText(), item.getIcon(), item.getTooltip(), "", item.getActionCollection(),
- doubleClickHandler));
- }
-
- @Override
- public Widget asWidget() {
- return widget;
- }
-
- @Override
- public void attach() {
- // Duplicate code in DocViewerPanel
- final ForIsWidget docContainer = gsArmor.getDocContainer();
- final int widgetCount = docContainer.getWidgetCount();
- for (int i = 0; i < widgetCount; i++) {
- docContainer.remove(i);
- }
- docContainer.add(widget);
- }
-
- @Override
- public void clear() {
- flow.clear();
- gsArmor.getSubheaderToolbar().clear();
- }
-
- public BasicThumb createThumb(final String text, final Object icon, final String tooltip,
- final String tooltipTitle, final GuiActionDescCollection menuitems,
- final DoubleClickHandler doubleClickHandler) {
- final BasicThumb thumb = new BasicThumb(icon, ICONSIZE, text, ICONLABELMAXSIZE, false);
- final MenuDescriptor menu = new MenuDescriptor();
- menu.setStandalone(true);
- menu.putValue(AbstractGxtMenuGui.MENU_POSITION, AbstractGxtMenuGui.MenuPosition.bl);
- for (final GuiActionDescrip item : menuitems) {
- item.setParent(menu);
- }
- final ClickHandler clickHand = new ClickHandler() {
- @Override
- public void onClick(final ClickEvent event) {
- menu.show(thumb);
- }
- };
-
- thumb.addClickHandler(clickHand);
- thumb.addDoubleClickHandler(doubleClickHandler);
- gsArmor.getSubheaderToolbar().add(menu);
- gsArmor.getSubheaderToolbar().addAll(menuitems);
- thumb.setTooltip(tooltipTitle, tooltip);
- thumb.setLabelVisible(true);
- return thumb;
- }
-
- @Override
- public void detach() {
- widget.removeFromParent();
- clear();
- }
-
- @Override
- public void setActions(final GuiActionDescCollection actions) {
- gsArmor.getSubheaderToolbar().clear();
- gsArmor.getSubheaderToolbar().addAll(actions);
- }
-
- @Override
- public void setContainer(final StateContainerDTO state) {
- }
-
-}
Deleted: trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerPanel.ui.xml
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.ui.xml 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerPanel.ui.xml 2011-04-26 19:57:21 UTC (rev 1321)
@@ -1,20 +0,0 @@
-<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
-<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
- xmlns:g='urn:import:com.google.gwt.user.client.ui' xmlns:f='urn:import:org.waveprotocol.box.webclient.widget.frame'
- xmlns:w='urn:import:org.waveprotocol.wave.client.widget.common'>
- <ui:style>
- .wavePanel {
- margin: 0 0 0 0;
- }
-
- .waveHolder {
- position: absolute;
- top: 0;
- bottom: 0;
- left: 0;
- right: 0;
- }
- </ui:style>
- <g:FlowPanel ui:field="flow" width="100%" height="100%">
- </g:FlowPanel>
-</ui:UiBinder>
\ No newline at end of file
Deleted: trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerPresenter.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -1,178 +0,0 @@
-package cc.kune.docs.client.viewers;
-
-import javax.annotation.Nonnull;
-
-import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
-import cc.kune.core.client.actions.ActionRegistryByType;
-import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
-import cc.kune.core.client.registry.IconsRegistry;
-import cc.kune.core.client.services.FileDownloadUtils;
-import cc.kune.core.client.services.ImageSize;
-import cc.kune.core.client.state.Session;
-import cc.kune.core.client.state.StateManager;
-import cc.kune.core.shared.domain.ContentStatus;
-import cc.kune.core.shared.domain.utils.AccessRights;
-import cc.kune.core.shared.domain.utils.StateToken;
-import cc.kune.core.shared.dto.BasicMimeTypeDTO;
-import cc.kune.core.shared.dto.ContainerDTO;
-import cc.kune.core.shared.dto.ContainerSimpleDTO;
-import cc.kune.core.shared.dto.ContentSimpleDTO;
-import cc.kune.core.shared.dto.HasContent;
-import cc.kune.core.shared.dto.StateContainerDTO;
-import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.docs.client.DocsClientTool;
-import cc.kune.docs.client.actions.DocsClientActions;
-import cc.kune.gspace.client.actions.perspective.MenuPerspective;
-import cc.kune.gspace.client.tool.ContentViewer;
-import cc.kune.gspace.client.tool.ContentViewerSelector;
-
-import com.google.gwt.event.dom.client.DoubleClickEvent;
-import com.google.gwt.event.dom.client.DoubleClickHandler;
-import com.google.gwt.event.shared.EventBus;
-import com.google.inject.Inject;
-import com.google.inject.Provider;
-import com.gwtplatform.mvp.client.Presenter;
-import com.gwtplatform.mvp.client.View;
-import com.gwtplatform.mvp.client.annotations.ProxyCodeSplit;
-import com.gwtplatform.mvp.client.proxy.Proxy;
-import com.gwtplatform.mvp.client.proxy.RevealRootContentEvent;
-
-public class FolderViewerPresenter extends
- Presenter<FolderViewerPresenter.FolderViewerView, FolderViewerPresenter.FolderViewerProxy> implements
- ContentViewer {
-
- @ProxyCodeSplit
- public interface FolderViewerProxy extends Proxy<FolderViewerPresenter> {
- }
-
- public interface FolderViewerView extends View {
-
- void addItem(FolderItemDescriptor item, DoubleClickHandler handler);
-
- void attach();
-
- void clear();
-
- void detach();
-
- void setActions(GuiActionDescCollection actions);
-
- void setContainer(StateContainerDTO state);
- }
-
- private final ActionRegistryByType actionsRegistry;
- private final ContentCapabilitiesRegistry capabilitiesRegistry;
- private final Provider<FileDownloadUtils> downloadUtilsProvider;
- private final I18nTranslationService i18n;
- private final IconsRegistry iconsRegistry;
- private final Session session;
- private final StateManager stateManager;
- private final boolean useGenericImageIcon;
-
- @Inject
- public FolderViewerPresenter(final EventBus eventBus, final FolderViewerView view, final FolderViewerProxy proxy,
- final Session session, final StateManager stateManager, final I18nTranslationService i18n,
- final ContentViewerSelector viewerSelector, final ActionRegistryByType actionsRegistry,
- final DocsClientActions actions, final Provider<FileDownloadUtils> downloadUtilsProvider,
- final ContentCapabilitiesRegistry capabilitiesRegistry) {
- super(eventBus, view, proxy);
- this.session = session;
- this.stateManager = stateManager;
- this.i18n = i18n;
- this.actionsRegistry = actionsRegistry;
- this.downloadUtilsProvider = downloadUtilsProvider;
- this.capabilitiesRegistry = capabilitiesRegistry;
- iconsRegistry = capabilitiesRegistry.getIconsRegistry();
- viewerSelector.register(this, true, DocsClientTool.TYPE_ROOT, DocsClientTool.TYPE_FOLDER);
- useGenericImageIcon = false;
- }
-
- private void addItem(final String title, final String contentTypeId, final BasicMimeTypeDTO mimeType,
- final ContentStatus status, final StateToken stateToken, final StateToken parentStateToken,
- final AccessRights rights, final boolean isNodeSelected) {
- final Object icon = getIcon(stateToken, contentTypeId, mimeType);
- final String tooltip = getTooltip(stateToken, mimeType);
- final FolderItemDescriptor item = new FolderItemDescriptor(genId(stateToken), genId(parentStateToken), icon,
- title, tooltip, status, stateToken, capabilitiesRegistry.isDragable(contentTypeId)
- && rights.isAdministrable(), capabilitiesRegistry.isDropable(contentTypeId)
- && rights.isAdministrable(), actionsRegistry.getCurrentActions(stateToken, contentTypeId,
- session.isLogged(), rights, MenuPerspective.class));
- if (status.equals(ContentStatus.inTheDustbin) && !session.getShowDeletedContent()) {
- // Don't show
- } else {
- getView().addItem(item, new DoubleClickHandler() {
-
- @Override
- public void onDoubleClick(final DoubleClickEvent event) {
- stateManager.gotoStateToken(stateToken);
- }
- });
- }
- }
-
- @Override
- public void attach() {
- getView().attach();
- }
-
- private void createChildItems(final ContainerDTO container, final AccessRights containerRights) {
- for (final ContainerSimpleDTO siblingFolder : container.getChilds()) {
- addItem(siblingFolder.getName(), siblingFolder.getTypeId(), null, ContentStatus.publishedOnline,
- siblingFolder.getStateToken(),
- siblingFolder.getStateToken().copy().setFolder(siblingFolder.getParentFolderId()), containerRights,
- false);
- }
- for (final ContentSimpleDTO content : container.getContents()) {
- // content.getTitle()
- addItem(content.getStateToken().toString(), content.getTypeId(), content.getMimeType(),
- content.getStatus(), content.getStateToken(), content.getStateToken().copy().clearDocument(),
- content.getRights(), false);
- }
- }
-
- @Override
- public void detach() {
- getView().detach();
- }
-
- private String genId(final StateToken token) {
- return "k-cnav-" + token.toString().replace(StateToken.SEPARATOR, "-");
- }
-
- private Object getIcon(final StateToken token, final String contentTypeId, final BasicMimeTypeDTO mimeType) {
- if (contentTypeId.equals(DocsClientTool.TYPE_FOLDER)) {
- return null;
- } else if (!useGenericImageIcon && mimeType != null && mimeType.getType().equals("image")) {
- return downloadUtilsProvider.get().getImageResizedUrl(token, ImageSize.ico);
- } else {
- return iconsRegistry.getContentTypeIcon(contentTypeId, mimeType);
- }
- }
-
- private String getTooltip(final StateToken token, final BasicMimeTypeDTO mimeType) {
- if (mimeType != null && (mimeType.isImage() || mimeType.isPdf())) {
- // Used for previews
- return null;
- } else {
- return i18n.t("Double click to open");
- }
- }
-
- @Override
- protected void revealInParent() {
- RevealRootContentEvent.fire(this, this);
- }
-
- @Override
- public void setContent(@Nonnull final HasContent state) {
- getView().clear();
- final StateContainerDTO stateContainer = (StateContainerDTO) state;
- final AccessRights rights = stateContainer.getContainerRights();
- final GuiActionDescCollection actions = actionsRegistry.getCurrentActions(stateContainer.getGroup(),
- stateContainer.getTypeId(), session.isLogged(), rights);
- getView().setActions(actions);
- getView().setContainer(stateContainer);
- createChildItems(stateContainer.getContainer(), stateContainer.getContainerRights());
- // view.setEditable(rights.isEditable());
- }
-}
\ No newline at end of file
Copied: trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerPresenter.java (from rev 1320, trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerPresenter.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/viewers/FolderViewerPresenter.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -0,0 +1,193 @@
+package cc.kune.gspace.client.viewers;
+
+import javax.annotation.Nonnull;
+
+import cc.kune.blogs.client.BlogsClientTool;
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
+import cc.kune.core.client.actions.ActionRegistryByType;
+import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
+import cc.kune.core.client.registry.IconsRegistry;
+import cc.kune.core.client.services.FileDownloadUtils;
+import cc.kune.core.client.services.ImageSize;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.client.state.StateManager;
+import cc.kune.core.shared.domain.ContentStatus;
+import cc.kune.core.shared.domain.utils.AccessRights;
+import cc.kune.core.shared.domain.utils.StateToken;
+import cc.kune.core.shared.dto.BasicMimeTypeDTO;
+import cc.kune.core.shared.dto.ContainerDTO;
+import cc.kune.core.shared.dto.ContainerSimpleDTO;
+import cc.kune.core.shared.dto.ContentSimpleDTO;
+import cc.kune.core.shared.dto.HasContent;
+import cc.kune.core.shared.dto.StateContainerDTO;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.docs.client.DocsClientTool;
+import cc.kune.gspace.client.actions.ActionGroups;
+import cc.kune.gspace.client.tool.ContentViewer;
+import cc.kune.gspace.client.tool.ContentViewerSelector;
+
+import com.google.gwt.event.dom.client.ClickEvent;
+import com.google.gwt.event.dom.client.ClickHandler;
+import com.google.gwt.event.dom.client.DoubleClickEvent;
+import com.google.gwt.event.dom.client.DoubleClickHandler;
+import com.google.gwt.event.shared.EventBus;
+import com.google.inject.Inject;
+import com.google.inject.Provider;
+import com.gwtplatform.mvp.client.Presenter;
+import com.gwtplatform.mvp.client.View;
+import com.gwtplatform.mvp.client.annotations.ProxyCodeSplit;
+import com.gwtplatform.mvp.client.proxy.Proxy;
+import com.gwtplatform.mvp.client.proxy.RevealRootContentEvent;
+
+public class FolderViewerPresenter extends
+ Presenter<FolderViewerPresenter.FolderViewerView, FolderViewerPresenter.FolderViewerProxy> implements
+ ContentViewer {
+
+ @ProxyCodeSplit
+ public interface FolderViewerProxy extends Proxy<FolderViewerPresenter> {
+ }
+
+ public interface FolderViewerView extends View {
+
+ void addItem(FolderItemDescriptor item, ClickHandler clickHandler, DoubleClickHandler doubleClickHandler);
+
+ void attach();
+
+ void clear();
+
+ void detach();
+
+ void setActions(GuiActionDescCollection actions);
+
+ void setContainer(StateContainerDTO state);
+
+ void showEmptyMsg();
+ }
+
+ private final ActionRegistryByType actionsRegistry;
+ private final ContentCapabilitiesRegistry capabilitiesRegistry;
+ private final Provider<FileDownloadUtils> downloadUtilsProvider;
+ private final I18nTranslationService i18n;
+ private final IconsRegistry iconsRegistry;
+ private final Session session;
+ private final StateManager stateManager;
+ private final boolean useGenericImageIcon;
+
+ @Inject
+ public FolderViewerPresenter(final EventBus eventBus, final FolderViewerView view, final FolderViewerProxy proxy,
+ final Session session, final StateManager stateManager, final I18nTranslationService i18n,
+ final ContentViewerSelector viewerSelector, final ActionRegistryByType actionsRegistry,
+ final Provider<FileDownloadUtils> downloadUtilsProvider,
+ final ContentCapabilitiesRegistry capabilitiesRegistry) {
+ super(eventBus, view, proxy);
+ this.session = session;
+ this.stateManager = stateManager;
+ this.i18n = i18n;
+ this.actionsRegistry = actionsRegistry;
+ this.downloadUtilsProvider = downloadUtilsProvider;
+ this.capabilitiesRegistry = capabilitiesRegistry;
+ iconsRegistry = capabilitiesRegistry.getIconsRegistry();
+ viewerSelector.register(this, true, DocsClientTool.TYPE_ROOT, DocsClientTool.TYPE_FOLDER);
+ viewerSelector.register(this, true, BlogsClientTool.TYPE_ROOT, BlogsClientTool.TYPE_BLOG);
+ useGenericImageIcon = false;
+ }
+
+ private void addItem(final String title, final String contentTypeId, final BasicMimeTypeDTO mimeType,
+ final ContentStatus status, final StateToken stateToken, final StateToken parentStateToken,
+ final AccessRights rights) {
+ final Object icon = getIcon(stateToken, contentTypeId, mimeType);
+ final String tooltip = getTooltip(stateToken, mimeType);
+ final FolderItemDescriptor item = new FolderItemDescriptor(genId(stateToken), genId(parentStateToken), icon,
+ title, tooltip, status, stateToken, capabilitiesRegistry.isDragable(contentTypeId)
+ && rights.isAdministrable(), capabilitiesRegistry.isDropable(contentTypeId)
+ && rights.isAdministrable(), actionsRegistry.getCurrentActions(stateToken, contentTypeId,
+ session.isLogged(), rights, ActionGroups.MENUITEM));
+ if (status.equals(ContentStatus.inTheDustbin) && !session.getShowDeletedContent()) {
+ // Don't show
+ // NotifyUser.info("Deleted, don't show");
+ } else {
+ getView().addItem(item, new ClickHandler() {
+ @Override
+ public void onClick(final ClickEvent event) {
+ stateManager.gotoStateToken(stateToken);
+ }
+ }, new DoubleClickHandler() {
+ @Override
+ public void onDoubleClick(final DoubleClickEvent event) {
+ stateManager.gotoStateToken(stateToken);
+ }
+ });
+ }
+ }
+
+ @Override
+ public void attach() {
+ getView().attach();
+ }
+
+ private void createChildItems(final ContainerDTO container, final AccessRights containerRights) {
+ if (container.getContents().size() + container.getChilds().size() == 0) {
+ getView().showEmptyMsg();
+ } else {
+ // Folders
+ for (final ContainerSimpleDTO childFolder : container.getChilds()) {
+ addItem(childFolder.getName(), childFolder.getTypeId(), null, ContentStatus.publishedOnline,
+ childFolder.getStateToken(),
+ childFolder.getStateToken().copy().setFolder(childFolder.getParentFolderId()), containerRights);
+ }
+ // Other contents (docs, etc)
+ for (final ContentSimpleDTO content : container.getContents()) {
+ addItem(content.getTitle(), content.getTypeId(), content.getMimeType(), content.getStatus(),
+ content.getStateToken(), content.getStateToken().copy().clearDocument(), content.getRights());
+ }
+ }
+ }
+
+ @Override
+ public void detach() {
+ getView().detach();
+ }
+
+ private String genId(final StateToken token) {
+ return "k-cnav-" + token.toString().replace(StateToken.SEPARATOR, "-");
+ }
+
+ private Object getIcon(final StateToken token, final String contentTypeId, final BasicMimeTypeDTO mimeType) {
+ if (!useGenericImageIcon && mimeType != null && mimeType.getType().equals("image")) {
+ return downloadUtilsProvider.get().getImageResizedUrl(token, ImageSize.ico);
+ } else {
+ return iconsRegistry.getContentTypeIcon(contentTypeId, mimeType);
+ }
+ }
+
+ private String getTooltip(final StateToken token, final BasicMimeTypeDTO mimeType) {
+ if (mimeType != null && (mimeType.isImage() || mimeType.isPdf())) {
+ // Used for previews
+ return null;
+ } else {
+ return i18n.t("Double click to open");
+ }
+ }
+
+ public void refreshState() {
+ setContent((HasContent) session.getCurrentState());
+ }
+
+ @Override
+ protected void revealInParent() {
+ RevealRootContentEvent.fire(this, this);
+ }
+
+ @Override
+ public void setContent(@Nonnull final HasContent state) {
+ getView().clear();
+ final StateContainerDTO stateContainer = (StateContainerDTO) state;
+ getView().setContainer(stateContainer);
+ final AccessRights rights = stateContainer.getContainerRights();
+ final GuiActionDescCollection actions = actionsRegistry.getCurrentActions(stateContainer.getGroup(),
+ stateContainer.getTypeId(), session.isLogged(), rights, ActionGroups.VIEW);
+ getView().setActions(actions);
+ createChildItems(stateContainer.getContainer(), stateContainer.getContainerRights());
+ // view.setEditable(rights.isEditable());
+ }
+}
\ No newline at end of file
Copied: trunk/src/test/java/cc/kune/blogs/server (from rev 1313, trunk/src/test/java/org/ourproject/kune/blogs/server)
Modified: trunk/src/test/java/cc/kune/blogs/server/BlogServerToolTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/blogs/server/BlogServerToolTest.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/test/java/cc/kune/blogs/server/BlogServerToolTest.java 2011-04-26 19:57:21 UTC (rev 1321)
@@ -17,16 +17,17 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
-package org.ourproject.kune.blogs.server;
+package cc.kune.blogs.server;
-import static org.ourproject.kune.blogs.server.BlogServerTool.TYPE_BLOG;
-import static org.ourproject.kune.blogs.server.BlogServerTool.TYPE_POST;
-import static org.ourproject.kune.blogs.server.BlogServerTool.TYPE_ROOT;
-import static org.ourproject.kune.blogs.server.BlogServerTool.TYPE_UPLOADEDFILE;
+import static cc.kune.blogs.server.BlogServerTool.TYPE_BLOG;
+import static cc.kune.blogs.server.BlogServerTool.TYPE_POST;
+import static cc.kune.blogs.server.BlogServerTool.TYPE_ROOT;
+import static cc.kune.blogs.server.BlogServerTool.TYPE_UPLOADEDFILE;
import org.junit.Before;
import org.junit.Test;
+import cc.kune.blogs.server.BlogServerTool;
import cc.kune.core.client.errors.ContainerNotPermittedException;
import cc.kune.core.client.errors.ContentNotPermittedException;
1
0
26 Apr '11
Author: vjrj_
Date: 2011-04-26 13:38:16 +0200 (Tue, 26 Apr 2011)
New Revision: 1320
Added:
trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ActionGroups.java
trunk/src/test/java/cc/kune/core/client/actions/ActionRegistryByTypeBorrarTest.java
Removed:
trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ActionsGroup.java
trunk/src/main/java/cc/kune/gspace/client/actions/perspective/EditActionsGroup.java
trunk/src/main/java/cc/kune/gspace/client/actions/perspective/MenuActionsGroup.java
trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ViewActionsGroup.java
trunk/src/test/java/cc/kune/core/client/actions/ActionRegistryByTypeTest.java
Modified:
trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/AbstractGuiActionDescrip.java
trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescrip.java
trunk/src/main/java/cc/kune/core/client/actions/ActionRegistryByType.java
trunk/src/main/java/cc/kune/core/public/ws.css
trunk/src/main/java/cc/kune/docs/client/actions/DelContentMenuItem.java
trunk/src/main/java/cc/kune/docs/client/actions/DelFolderMenuItem.java
trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java
trunk/src/main/java/cc/kune/docs/client/actions/FolderGoUpBtn.java
trunk/src/main/java/cc/kune/docs/client/actions/NewDocBtn.java
trunk/src/main/java/cc/kune/docs/client/actions/NewFolderBtn.java
trunk/src/main/java/cc/kune/docs/client/actions/OpenContentMenuItem.java
trunk/src/main/java/cc/kune/docs/client/viewers/AbstractFolderViewerPanel.java
trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPresenter.java
trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsFlowPanel.java
trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsTablePanel.java
trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java
trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceSaveTest.java
Log:
Actions groups revisited
Modified: trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/AbstractGuiActionDescrip.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/AbstractGuiActionDescrip.java 2011-04-26 09:28:16 UTC (rev 1319)
+++ trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/AbstractGuiActionDescrip.java 2011-04-26 11:38:16 UTC (rev 1320)
@@ -27,7 +27,6 @@
import cc.kune.common.client.actions.ActionEvent;
import cc.kune.common.client.actions.ChangeableObject;
import cc.kune.common.client.actions.KeyStroke;
-import cc.kune.gspace.client.actions.perspective.ActionsGroup;
/**
* The Class AbstractUIActionDescriptor.
@@ -139,12 +138,6 @@
}
@Override
- public GuiActionDescrip in(final Class<? extends ActionsGroup> clazz) {
- putValue(ActionsGroup.KEY, clazz);
- return this;
- }
-
- @Override
public boolean isChild() {
return !parent.equals(NO_PARENT);
}
Modified: trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescrip.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescrip.java 2011-04-26 09:28:16 UTC (rev 1319)
+++ trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescrip.java 2011-04-26 11:38:16 UTC (rev 1320)
@@ -4,7 +4,6 @@
import cc.kune.common.client.actions.ActionEvent;
import cc.kune.common.client.actions.KeyStroke;
import cc.kune.common.client.actions.PropertyChangeListener;
-import cc.kune.gspace.client.actions.perspective.ActionsGroup;
public interface GuiActionDescrip {
@@ -49,8 +48,6 @@
boolean hasTarget();
- GuiActionDescrip in(Class<? extends ActionsGroup> clazz);
-
boolean isChild();
boolean isEnabled();
Modified: trunk/src/main/java/cc/kune/core/client/actions/ActionRegistryByType.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/actions/ActionRegistryByType.java 2011-04-26 09:28:16 UTC (rev 1319)
+++ trunk/src/main/java/cc/kune/core/client/actions/ActionRegistryByType.java 2011-04-26 11:38:16 UTC (rev 1320)
@@ -1,7 +1,9 @@
package cc.kune.core.client.actions;
import java.util.HashMap;
+import java.util.Map;
+import javax.annotation.Nonnull;
import javax.annotation.Nullable;
import cc.kune.common.client.actions.AbstractAction;
@@ -9,18 +11,20 @@
import cc.kune.common.client.actions.ui.descrip.GuiActionDescProviderCollection;
import cc.kune.common.client.actions.ui.descrip.GuiActionDescrip;
import cc.kune.core.shared.domain.utils.AccessRights;
-import cc.kune.gspace.client.actions.perspective.ActionsGroup;
import com.google.inject.Provider;
/**
- * A registry of actions by content type (doc, post, etc)
+ * A registry of actions by content type (doc, post, etc) and grouped (some
+ * actions for some toolbar, etc)
*
*/
public class ActionRegistryByType {
- private static final String GENERIC = "kgenacts";
+ private static final String GENERIC_GROUP_ACTION = "kgengroup";
+ private static final String GENERIC_TYPE_ID = "kgentype";
+ private static final String KEY_SEPARATOR = "-";
- private final HashMap<String, GuiActionDescProviderCollection> actions;
+ private final Map<String, GuiActionDescProviderCollection> actions;
public ActionRegistryByType() {
actions = new HashMap<String, GuiActionDescProviderCollection>();
@@ -32,34 +36,44 @@
}
public void addAction(final Provider<? extends GuiActionDescrip> action) {
- addAction(action, GENERIC);
+ addAction(GENERIC_GROUP_ACTION, action, GENERIC_TYPE_ID);
}
- public void addAction(final Provider<? extends GuiActionDescrip> action, final String... typeIds) {
- assert action != null;
+ public void addAction(@Nonnull final String actionsGroupId, final Provider<? extends GuiActionDescrip> action) {
+ addAction(actionsGroupId, action, GENERIC_TYPE_ID);
+ }
+
+ public void addAction(@Nonnull final String actionsGroupId,
+ final @Nonnull Provider<? extends GuiActionDescrip> action, @Nonnull final String... typeIds) {
for (final String typeId : typeIds) {
- final GuiActionDescProviderCollection actionColl = getActions(typeId);
+ final GuiActionDescProviderCollection actionColl = getActions(actionsGroupId, typeId);
actionColl.add(action);
+ actions.put(genKey(actionsGroupId, typeId), actionColl);
}
}
- private GuiActionDescProviderCollection getActions(final String typeId) {
- GuiActionDescProviderCollection actionColl = actions.get(typeId);
+ private String genKey(final String actionsGroupId, final String typeId) {
+ return actionsGroupId + KEY_SEPARATOR + typeId;
+ }
+
+ private GuiActionDescProviderCollection getActions(final String actionsGroupId, final String typeId) {
+ final String key = genKey(actionsGroupId, typeId);
+ GuiActionDescProviderCollection actionColl = actions.get(key);
if (actionColl == null) {
actionColl = new GuiActionDescProviderCollection();
- actions.put(typeId, actionColl);
+ actions.put(key, actionColl);
}
return actionColl;
}
public GuiActionDescCollection getCurrentActions(final Object targetItem, final boolean isLogged,
final AccessRights rights) {
- return getCurrentActions(targetItem, GENERIC, isLogged, rights, null);
+ return getCurrentActions(targetItem, GENERIC_TYPE_ID, isLogged, rights, null);
}
public GuiActionDescCollection getCurrentActions(final Object targetItem, final boolean isLogged,
- final AccessRights rights, @Nullable final Class<?> clazz) {
- return getCurrentActions(targetItem, GENERIC, isLogged, rights, clazz);
+ final AccessRights rights, @Nullable final String actionsGroup) {
+ return getCurrentActions(targetItem, GENERIC_TYPE_ID, isLogged, rights, actionsGroup);
}
public GuiActionDescCollection getCurrentActions(final Object targetItem, final String typeId,
@@ -68,25 +82,17 @@
}
public <T> GuiActionDescCollection getCurrentActions(final Object targetItem, final String typeId,
- final boolean isLogged, final AccessRights rights, @Nullable final Class<?> clazz) {
+ final boolean isLogged, final AccessRights rights, @Nullable final String actionsGroupId) {
final GuiActionDescCollection collection = new GuiActionDescCollection();
- for (final Provider<? extends GuiActionDescrip> descripProv : getActions(typeId)) {
+ for (final Provider<? extends GuiActionDescrip> descripProv : getActions(actionsGroupId, typeId)) {
final GuiActionDescrip descrip = descripProv.get();
- // Log.info("Class " +
- // descripProv.getClass().getAnnotations().toString());
final AbstractAction action = descrip.getAction();
- final Object actionGroup = descrip.getValue(ActionsGroup.KEY);
- if (clazz != null && !clazz.equals(actionGroup)) {
- // Not this perspective, then don't add this action
- } else {
- // Any perspective it's ok (==null) or same perspective -> add
- if (action instanceof RolAction) {
- if (mustAdd((RolAction) action, isLogged, rights)) {
- add(collection, descrip, targetItem);
- }
- } else {
+ if (action instanceof RolAction) {
+ if (mustAdd((RolAction) action, isLogged, rights)) {
add(collection, descrip, targetItem);
}
+ } else {
+ add(collection, descrip, targetItem);
}
}
return collection;
Modified: trunk/src/main/java/cc/kune/core/public/ws.css
===================================================================
--- trunk/src/main/java/cc/kune/core/public/ws.css 2011-04-26 09:28:16 UTC (rev 1319)
+++ trunk/src/main/java/cc/kune/core/public/ws.css 2011-04-26 11:38:16 UTC (rev 1320)
@@ -1109,3 +1109,8 @@
.k-def-docbtn span {
font-size: 13px !important;
}
+
+.k-empty-msg {
+ font-size: 16px;
+ font-style: italic;
+}
\ No newline at end of file
Modified: trunk/src/main/java/cc/kune/docs/client/actions/DelContentMenuItem.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/DelContentMenuItem.java 2011-04-26 09:28:16 UTC (rev 1319)
+++ trunk/src/main/java/cc/kune/docs/client/actions/DelContentMenuItem.java 2011-04-26 11:38:16 UTC (rev 1320)
@@ -16,7 +16,6 @@
import cc.kune.core.shared.dto.StateContentDTO;
import cc.kune.core.shared.i18n.I18nTranslationService;
import cc.kune.docs.client.viewers.FolderViewerPresenter;
-import cc.kune.gspace.client.actions.perspective.MenuActionsGroup;
import com.google.gwt.event.shared.EventBus;
import com.google.inject.Inject;
@@ -82,7 +81,7 @@
@Inject
public DelContentMenuItem(final I18nTranslationService i18n, final DelContentAction action, final CoreResources res) {
super(action);
- this.withText(i18n.t("Delete")).withIcon(res.cancel()).in(MenuActionsGroup.class);
+ this.withText(i18n.t("Delete")).withIcon(res.cancel());
}
}
Modified: trunk/src/main/java/cc/kune/docs/client/actions/DelFolderMenuItem.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/DelFolderMenuItem.java 2011-04-26 09:28:16 UTC (rev 1319)
+++ trunk/src/main/java/cc/kune/docs/client/actions/DelFolderMenuItem.java 2011-04-26 11:38:16 UTC (rev 1320)
@@ -14,7 +14,6 @@
import cc.kune.core.shared.dto.AccessRolDTO;
import cc.kune.core.shared.i18n.I18nTranslationService;
import cc.kune.docs.client.viewers.FolderViewerPresenter;
-import cc.kune.gspace.client.actions.perspective.MenuActionsGroup;
import com.google.gwt.event.shared.EventBus;
import com.google.inject.Inject;
@@ -64,7 +63,7 @@
@Inject
public DelFolderMenuItem(final I18nTranslationService i18n, final DelFolderAction action, final CoreResources res) {
super(action);
- this.withText(i18n.t("Delete")).withIcon(res.cancel()).in(MenuActionsGroup.class);
+ this.withText(i18n.t("Delete")).withIcon(res.cancel());
}
}
Modified: trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java 2011-04-26 09:28:16 UTC (rev 1319)
+++ trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java 2011-04-26 11:38:16 UTC (rev 1320)
@@ -29,6 +29,7 @@
import cc.kune.core.client.resources.CoreResources;
import cc.kune.core.client.state.Session;
import cc.kune.core.client.state.StateManager;
+import cc.kune.gspace.client.actions.perspective.ActionGroups;
import com.google.inject.Inject;
import com.google.inject.Provider;
@@ -46,17 +47,16 @@
final StateManager stateManager, final ActionRegistryByType registry, final CoreResources res,
final Provider<FolderGoUpBtn> folderGoUp, final Provider<NewDocBtn> newDocBtn,
final Provider<NewFolderBtn> newFolderBtn, final Provider<OpenContentMenuItem> openContentMenuItem,
- final Provider<DelContentMenuItem> delContentMenuItem,
- final Provider<DelFolderMenuItem> delFolderMenuItem) {
+ final Provider<DelContentMenuItem> delContentMenuItem, final Provider<DelFolderMenuItem> delFolderMenuItem) {
super(session, stateManager, i18n, registry);
- actionsRegistry.addAction(folderGoUp, contents);
- actionsRegistry.addAction(folderGoUp, containersNoRoot);
- actionsRegistry.addAction(newDocBtn, containers);
- actionsRegistry.addAction(newFolderBtn, containers);
- actionsRegistry.addAction(openContentMenuItem, contents);
- actionsRegistry.addAction(openContentMenuItem, containersNoRoot);
- actionsRegistry.addAction(delContentMenuItem, contents);
- actionsRegistry.addAction(delFolderMenuItem, containersNoRoot);
+ actionsRegistry.addAction(ActionGroups.VIEW, folderGoUp, contents);
+ actionsRegistry.addAction(ActionGroups.VIEW, folderGoUp, containersNoRoot);
+ actionsRegistry.addAction(ActionGroups.VIEW, newDocBtn, containers);
+ actionsRegistry.addAction(ActionGroups.VIEW, newFolderBtn, containers);
+ actionsRegistry.addAction(ActionGroups.MENUITEM, openContentMenuItem, contents);
+ actionsRegistry.addAction(ActionGroups.MENUITEM, openContentMenuItem, containersNoRoot);
+ actionsRegistry.addAction(ActionGroups.MENUITEM, delContentMenuItem, contents);
+ actionsRegistry.addAction(ActionGroups.MENUITEM, delFolderMenuItem, containersNoRoot);
}
@Override
Modified: trunk/src/main/java/cc/kune/docs/client/actions/FolderGoUpBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/FolderGoUpBtn.java 2011-04-26 09:28:16 UTC (rev 1319)
+++ trunk/src/main/java/cc/kune/docs/client/actions/FolderGoUpBtn.java 2011-04-26 11:38:16 UTC (rev 1320)
@@ -13,7 +13,6 @@
import cc.kune.core.shared.dto.StateContainerDTO;
import cc.kune.core.shared.dto.StateContentDTO;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.actions.perspective.ViewActionsGroup;
import com.google.inject.Inject;
@@ -42,7 +41,7 @@
stateToken = container.getStateToken().copy().setFolder(container.getParentFolderId());
}
stateManager.gotoStateToken(stateToken);
- NotifyUser.hideProgress();
+ // NotifyUser.hideProgress();
}
}
@@ -50,8 +49,7 @@
@Inject
public FolderGoUpBtn(final I18nTranslationService i18n, final FolderGoUpAction action, final CoreResources res) {
super(action);
- this.withToolTip(i18n.t("Go up: Open the container folder")).withIcon(res.folderGoUp()).in(
- ViewActionsGroup.class);
+ this.withToolTip(i18n.t("Go up: Open the container folder")).withIcon(res.folderGoUp());
}
}
Modified: trunk/src/main/java/cc/kune/docs/client/actions/NewDocBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/NewDocBtn.java 2011-04-26 09:28:16 UTC (rev 1319)
+++ trunk/src/main/java/cc/kune/docs/client/actions/NewDocBtn.java 2011-04-26 11:38:16 UTC (rev 1320)
@@ -18,12 +18,11 @@
import cc.kune.core.shared.dto.StateContentDTO;
import cc.kune.core.shared.i18n.I18nTranslationService;
import cc.kune.docs.client.DocsClientTool;
-import cc.kune.gspace.client.actions.perspective.ViewActionsGroup;
import com.google.inject.Inject;
import com.google.inject.Provider;
-public class NewDocBtn extends ButtonDescriptor implements ViewActionsGroup {
+public class NewDocBtn extends ButtonDescriptor {
public static class NewDocAction extends RolAction {
@@ -70,7 +69,7 @@
shorcutReg.put(shortcut, action);
this.withText(i18n.t("New document")).withToolTip(
"Create a New Document here. This document will be a new 'Page' in the public web if you publish it").withIcon(
- res.pageAdd()).in(ViewActionsGroup.class).withShortcut(shortcut).withStyles("k-def-docbtn");
+ res.pageAdd()).withShortcut(shortcut).withStyles("k-def-docbtn");
}
}
Modified: trunk/src/main/java/cc/kune/docs/client/actions/NewFolderBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/NewFolderBtn.java 2011-04-26 09:28:16 UTC (rev 1319)
+++ trunk/src/main/java/cc/kune/docs/client/actions/NewFolderBtn.java 2011-04-26 11:38:16 UTC (rev 1320)
@@ -15,7 +15,6 @@
import cc.kune.core.shared.dto.StateContainerDTO;
import cc.kune.core.shared.i18n.I18nTranslationService;
import cc.kune.docs.client.DocsClientTool;
-import cc.kune.gspace.client.actions.perspective.ViewActionsGroup;
import com.google.inject.Inject;
import com.google.inject.Provider;
@@ -64,6 +63,6 @@
super(action);
this.withText(i18n.t("New folder")).withToolTip(
i18n.t("Create a new folder here. A folder will be a 'section' in the public web")).withIcon(
- res.folderAdd()).in(ViewActionsGroup.class).withStyles("k-def-docbtn");
+ res.folderAdd()).withStyles("k-def-docbtn");
}
}
Modified: trunk/src/main/java/cc/kune/docs/client/actions/OpenContentMenuItem.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/OpenContentMenuItem.java 2011-04-26 09:28:16 UTC (rev 1319)
+++ trunk/src/main/java/cc/kune/docs/client/actions/OpenContentMenuItem.java 2011-04-26 11:38:16 UTC (rev 1320)
@@ -7,7 +7,6 @@
import cc.kune.core.client.state.StateManager;
import cc.kune.core.shared.domain.utils.StateToken;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.actions.perspective.MenuActionsGroup;
import com.google.inject.Inject;
@@ -32,7 +31,7 @@
@Inject
public OpenContentMenuItem(final I18nTranslationService i18n, final OpenContentAction action, final NavResources res) {
super(action);
- this.withText(i18n.t("Open")).withIcon(res.go()).in(MenuActionsGroup.class);
+ this.withText(i18n.t("Open")).withIcon(res.go());
}
}
Modified: trunk/src/main/java/cc/kune/docs/client/viewers/AbstractFolderViewerPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/AbstractFolderViewerPanel.java 2011-04-26 09:28:16 UTC (rev 1319)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/AbstractFolderViewerPanel.java 2011-04-26 11:38:16 UTC (rev 1320)
@@ -3,6 +3,7 @@
import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
import cc.kune.common.client.ui.UiUtils;
import cc.kune.core.shared.dto.StateContainerDTO;
+import cc.kune.core.shared.i18n.I18nTranslationService;
import cc.kune.docs.client.viewers.FolderViewerPresenter.FolderViewerView;
import cc.kune.gspace.client.GSpaceArmor;
@@ -12,11 +13,16 @@
import com.gwtplatform.mvp.client.ViewImpl;
public abstract class AbstractFolderViewerPanel extends ViewImpl implements FolderViewerView {
+ private final InlineLabel emptyLabel;
protected final GSpaceArmor gsArmor;
+ protected final I18nTranslationService i18n;
protected Widget widget;
- public AbstractFolderViewerPanel(final GSpaceArmor gsArmor) {
+ public AbstractFolderViewerPanel(final GSpaceArmor gsArmor, final I18nTranslationService i18n) {
this.gsArmor = gsArmor;
+ this.i18n = i18n;
+ emptyLabel = new InlineLabel(i18n.t("This folder is empty."));
+ emptyLabel.setStyleName("k-empty-msg");
}
@Override
@@ -52,4 +58,9 @@
public void setContainer(final StateContainerDTO state) {
gsArmor.getDocHeader().add(new InlineLabel(state.getTitle()));
}
+
+ @Override
+ public void showEmptyMsg() {
+ gsArmor.getDocContainer().add(emptyLabel);
+ }
}
Modified: trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPresenter.java 2011-04-26 09:28:16 UTC (rev 1319)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPresenter.java 2011-04-26 11:38:16 UTC (rev 1320)
@@ -10,7 +10,7 @@
import cc.kune.core.shared.dto.StateContentDTO;
import cc.kune.docs.client.DocsClientTool;
import cc.kune.docs.client.actions.DocsClientActions;
-import cc.kune.gspace.client.actions.perspective.ViewActionsGroup;
+import cc.kune.gspace.client.actions.perspective.ActionGroups;
import cc.kune.gspace.client.tool.ContentViewer;
import cc.kune.gspace.client.tool.ContentViewerSelector;
@@ -76,7 +76,7 @@
final StateContentDTO stateContent = (StateContentDTO) state;
final AccessRights rights = stateContent.getContentRights();
final GuiActionDescCollection actions = actionsRegistry.getCurrentActions(stateContent.getGroup(),
- stateContent.getTypeId(), session.isLogged(), rights, ViewActionsGroup.class);
+ stateContent.getTypeId(), session.isLogged(), rights, ActionGroups.VIEW);
getView().setActions(actions);
getView().setContent(stateContent);
}
Modified: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsFlowPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsFlowPanel.java 2011-04-26 09:28:16 UTC (rev 1319)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsFlowPanel.java 2011-04-26 11:38:16 UTC (rev 1320)
@@ -6,6 +6,7 @@
import cc.kune.common.client.actions.ui.descrip.MenuDescriptor;
import cc.kune.common.client.ui.BasicThumb;
import cc.kune.core.shared.dto.StateContainerDTO;
+import cc.kune.core.shared.i18n.I18nTranslationService;
import cc.kune.gspace.client.GSpaceArmor;
import com.google.gwt.core.client.GWT;
@@ -30,8 +31,8 @@
int ICONSIZE = 100;
@Inject
- public FolderViewerAsFlowPanel(final GSpaceArmor gsArmor) {
- super(gsArmor);
+ public FolderViewerAsFlowPanel(final GSpaceArmor gsArmor, final I18nTranslationService i18n) {
+ super(gsArmor, i18n);
widget = uiBinder.createAndBindUi(this);
}
Modified: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsTablePanel.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsTablePanel.java 2011-04-26 09:28:16 UTC (rev 1319)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsTablePanel.java 2011-04-26 11:38:16 UTC (rev 1320)
@@ -35,15 +35,13 @@
FlexTable flex;
private final GuiProvider guiProvider;
- private final I18nTranslationService i18n;
private final CoreResources res;
protected FolderItemWidget selected;
@Inject
public FolderViewerAsTablePanel(final GSpaceArmor gsArmor, final I18nTranslationService i18n,
final GuiProvider guiProvider, final CoreResources res) {
- super(gsArmor);
- this.i18n = i18n;
+ super(gsArmor, i18n);
this.guiProvider = guiProvider;
this.res = res;
widget = uiBinder.createAndBindUi(this);
@@ -104,4 +102,5 @@
public void setContainer(final StateContainerDTO state) {
super.setContainer(state);
}
+
}
Modified: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java 2011-04-26 09:28:16 UTC (rev 1319)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java 2011-04-26 11:38:16 UTC (rev 1320)
@@ -3,7 +3,6 @@
import javax.annotation.Nonnull;
import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
-import cc.kune.common.client.log.Log;
import cc.kune.core.client.actions.ActionRegistryByType;
import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
import cc.kune.core.client.registry.IconsRegistry;
@@ -23,8 +22,7 @@
import cc.kune.core.shared.i18n.I18nTranslationService;
import cc.kune.docs.client.DocsClientTool;
import cc.kune.docs.client.actions.DocsClientActions;
-import cc.kune.gspace.client.actions.perspective.MenuActionsGroup;
-import cc.kune.gspace.client.actions.perspective.ViewActionsGroup;
+import cc.kune.gspace.client.actions.perspective.ActionGroups;
import cc.kune.gspace.client.tool.ContentViewer;
import cc.kune.gspace.client.tool.ContentViewerSelector;
@@ -62,6 +60,8 @@
void setActions(GuiActionDescCollection actions);
void setContainer(StateContainerDTO state);
+
+ void showEmptyMsg();
}
private final ActionRegistryByType actionsRegistry;
@@ -94,14 +94,13 @@
private void addItem(final String title, final String contentTypeId, final BasicMimeTypeDTO mimeType,
final ContentStatus status, final StateToken stateToken, final StateToken parentStateToken,
final AccessRights rights) {
- Log.info("Adding item: " + title);
final Object icon = getIcon(stateToken, contentTypeId, mimeType);
final String tooltip = getTooltip(stateToken, mimeType);
final FolderItemDescriptor item = new FolderItemDescriptor(genId(stateToken), genId(parentStateToken), icon,
title, tooltip, status, stateToken, capabilitiesRegistry.isDragable(contentTypeId)
&& rights.isAdministrable(), capabilitiesRegistry.isDropable(contentTypeId)
&& rights.isAdministrable(), actionsRegistry.getCurrentActions(stateToken, contentTypeId,
- session.isLogged(), rights, MenuActionsGroup.class));
+ session.isLogged(), rights, ActionGroups.MENUITEM));
if (status.equals(ContentStatus.inTheDustbin) && !session.getShowDeletedContent()) {
// Don't show
// NotifyUser.info("Deleted, don't show");
@@ -127,7 +126,7 @@
private void createChildItems(final ContainerDTO container, final AccessRights containerRights) {
if (container.getContents().size() + container.getChilds().size() == 0) {
- // FIXME
+ getView().showEmptyMsg();
} else {
// Folders
for (final ContainerSimpleDTO childFolder : container.getChilds()) {
@@ -180,13 +179,12 @@
@Override
public void setContent(@Nonnull final HasContent state) {
- Log.info("Set content in FolderViewer");
getView().clear();
final StateContainerDTO stateContainer = (StateContainerDTO) state;
getView().setContainer(stateContainer);
final AccessRights rights = stateContainer.getContainerRights();
final GuiActionDescCollection actions = actionsRegistry.getCurrentActions(stateContainer.getGroup(),
- stateContainer.getTypeId(), session.isLogged(), rights, ViewActionsGroup.class);
+ stateContainer.getTypeId(), session.isLogged(), rights, ActionGroups.VIEW);
getView().setActions(actions);
createChildItems(stateContainer.getContainer(), stateContainer.getContainerRights());
// view.setEditable(rights.isEditable());
Copied: trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ActionGroups.java (from rev 1319, trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ActionsGroup.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ActionGroups.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ActionGroups.java 2011-04-26 11:38:16 UTC (rev 1320)
@@ -0,0 +1,14 @@
+package cc.kune.gspace.client.actions.perspective;
+
+/**
+ * A group of actions that must be grouped and showed in some perspective (on
+ * edit, etc)
+ */
+public class ActionGroups {
+ public static String EDIT = "edit";
+ public static String MENUITEM = "menu-item";
+ public static String VIEW = "view";
+
+ private ActionGroups() {
+ }
+}
Deleted: trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ActionsGroup.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ActionsGroup.java 2011-04-26 09:28:16 UTC (rev 1319)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ActionsGroup.java 2011-04-26 11:38:16 UTC (rev 1320)
@@ -1,9 +0,0 @@
-package cc.kune.gspace.client.actions.perspective;
-
-/**
- * A group of actions that must be grouped and showed in some perspective (on
- * edit, etc)
- */
-public interface ActionsGroup {
- String KEY = "actiongroup";
-}
Deleted: trunk/src/main/java/cc/kune/gspace/client/actions/perspective/EditActionsGroup.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/perspective/EditActionsGroup.java 2011-04-26 09:28:16 UTC (rev 1319)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/perspective/EditActionsGroup.java 2011-04-26 11:38:16 UTC (rev 1320)
@@ -1,7 +0,0 @@
-package cc.kune.gspace.client.actions.perspective;
-
-/**
- * An action that must be showed when editing
- */
-public interface EditActionsGroup extends ActionsGroup {
-}
Deleted: trunk/src/main/java/cc/kune/gspace/client/actions/perspective/MenuActionsGroup.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/perspective/MenuActionsGroup.java 2011-04-26 09:28:16 UTC (rev 1319)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/perspective/MenuActionsGroup.java 2011-04-26 11:38:16 UTC (rev 1320)
@@ -1,7 +0,0 @@
-package cc.kune.gspace.client.actions.perspective;
-
-/**
- * An action that must be showed in menu of docs/folder, etc
- */
-public interface MenuActionsGroup extends ActionsGroup {
-}
Deleted: trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ViewActionsGroup.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ViewActionsGroup.java 2011-04-26 09:28:16 UTC (rev 1319)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ViewActionsGroup.java 2011-04-26 11:38:16 UTC (rev 1320)
@@ -1,7 +0,0 @@
-package cc.kune.gspace.client.actions.perspective;
-
-/**
- * An action that must be showed when viewing
- */
-public interface ViewActionsGroup extends ActionsGroup {
-}
Copied: trunk/src/test/java/cc/kune/core/client/actions/ActionRegistryByTypeBorrarTest.java (from rev 1319, trunk/src/test/java/cc/kune/core/client/actions/ActionRegistryByTypeTest.java)
===================================================================
--- trunk/src/test/java/cc/kune/core/client/actions/ActionRegistryByTypeBorrarTest.java (rev 0)
+++ trunk/src/test/java/cc/kune/core/client/actions/ActionRegistryByTypeBorrarTest.java 2011-04-26 11:38:16 UTC (rev 1320)
@@ -0,0 +1,45 @@
+package cc.kune.core.client.actions;
+
+import static org.junit.Assert.assertEquals;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.Mockito;
+
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescrip;
+import cc.kune.core.shared.domain.utils.AccessRights;
+
+import com.google.inject.Provider;
+
+public class ActionRegistryByTypeBorrarTest {
+
+ private static final String OTHERACTIONGROUP = "otheractiongroup";
+ private static final String SOMEACTIONGROUP = "someactiongroup";
+ private GuiActionDescrip action;
+ private ActionRegistryByType actionRegistryByType;
+ private AccessRights allRights;
+
+ @SuppressWarnings({ "unchecked", "rawtypes" })
+ @Before
+ public void before() {
+ actionRegistryByType = new ActionRegistryByType();
+ action = Mockito.mock(GuiActionDescrip.class);
+ allRights = new AccessRights(true, true, true);
+ actionRegistryByType.addAction(SOMEACTIONGROUP, new Provider() {
+ @Override
+ public Object get() {
+ return action;
+ }
+ });
+ }
+
+ @Test
+ public void testDontGetCurrentActionsOfOtherGroup() {
+ assertEquals(0, actionRegistryByType.getCurrentActions(null, false, allRights, OTHERACTIONGROUP).size());
+ }
+
+ @Test
+ public void testGetCurrentActionsOfGroup() {
+ assertEquals(1, actionRegistryByType.getCurrentActions(null, false, allRights, SOMEACTIONGROUP).size());
+ }
+}
Deleted: trunk/src/test/java/cc/kune/core/client/actions/ActionRegistryByTypeTest.java
===================================================================
--- trunk/src/test/java/cc/kune/core/client/actions/ActionRegistryByTypeTest.java 2011-04-26 09:28:16 UTC (rev 1319)
+++ trunk/src/test/java/cc/kune/core/client/actions/ActionRegistryByTypeTest.java 2011-04-26 11:38:16 UTC (rev 1320)
@@ -1,55 +0,0 @@
-package cc.kune.core.client.actions;
-
-import static org.junit.Assert.assertEquals;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.mockito.Mockito;
-
-import cc.kune.common.client.actions.ui.descrip.GuiActionDescrip;
-import cc.kune.core.shared.domain.utils.AccessRights;
-import cc.kune.gspace.client.actions.perspective.ActionsGroup;
-import cc.kune.gspace.client.actions.perspective.EditActionsGroup;
-import cc.kune.gspace.client.actions.perspective.ViewActionsGroup;
-
-import com.google.inject.Provider;
-
-public class ActionRegistryByTypeTest {
-
- private GuiActionDescrip action;
- private ActionRegistryByType actionRegistryByType;
- private AccessRights allRights;
-
- @SuppressWarnings({ "unchecked", "rawtypes" })
- @Before
- public void before() {
- actionRegistryByType = new ActionRegistryByType();
- action = Mockito.mock(GuiActionDescrip.class);
- allRights = new AccessRights(true, true, true);
- actionRegistryByType.addAction(new Provider() {
-
- @Override
- public Object get() {
- return action;
- }
- });
- }
-
- @Test
- public void testDontGetCurrentActionsOfOtherPerspective() {
- Mockito.when(action.getValue(ActionsGroup.KEY)).thenReturn(ViewActionsGroup.class);
- assertEquals(0, actionRegistryByType.getCurrentActions(null, false, allRights, EditActionsGroup.class).size());
- }
-
- @Test
- public void testGetCurrentActions() {
- Mockito.when(action.getValue(ActionsGroup.KEY)).thenReturn(null);
- assertEquals(1, actionRegistryByType.getCurrentActions(null, false, allRights, null).size());
- }
-
- @Test
- public void testGetCurrentActionsOfPerspective() {
- Mockito.when(action.getValue(ActionsGroup.KEY)).thenReturn(EditActionsGroup.class);
- assertEquals(1, actionRegistryByType.getCurrentActions(null, false, allRights, EditActionsGroup.class).size());
- }
-}
Modified: trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceSaveTest.java
===================================================================
--- trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceSaveTest.java 2011-04-26 09:28:16 UTC (rev 1319)
+++ trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceSaveTest.java 2011-04-26 11:38:16 UTC (rev 1320)
@@ -22,6 +22,7 @@
import static org.junit.Assert.assertEquals;
import org.junit.Before;
+import org.junit.Ignore;
import org.junit.Test;
import cc.kune.core.server.TestDomainHelper;
@@ -41,17 +42,19 @@
@Test
public void testSaveAndRetrieve() throws Exception {
- final String text = "Lorem ipsum dolor sit amet";
+ // We set the same content (in this case a wave id)
+ final String text = defaultContent.getWaveRef();
final int version = defaultContent.getVersion();
contentService.save(getHash(), defaultContent.getStateToken(), text);
final StateContentDTO again = (StateContentDTO) contentService.getContent(getHash(),
defaultContent.getStateToken());
- assertEquals(text, again.getContent());
+ assertEquals(text, again.getWaveRef());
assertEquals(version + 1, again.getVersion());
assertEquals(0, again.getRateByUsers().intValue());
assertEquals(new Double(0), again.getRate());
}
+ @Ignore
@Test
public void testSaveAndRetrieveBig() throws Exception {
final String text = TestDomainHelper.createBigText();
1
0
Author: vjrj_
Date: 2011-04-26 11:28:16 +0200 (Tue, 26 Apr 2011)
New Revision: 1319
Added:
trunk/src/main/java/cc/kune/docs/client/actions/DelContentMenuItem.java
trunk/src/main/java/cc/kune/docs/client/actions/DelFolderMenuItem.java
trunk/src/main/java/cc/kune/docs/client/actions/OpenContentMenuItem.java
trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ActionsGroup.java
trunk/src/main/java/cc/kune/gspace/client/actions/perspective/EditActionsGroup.java
trunk/src/main/java/cc/kune/gspace/client/actions/perspective/MenuActionsGroup.java
trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ViewActionsGroup.java
trunk/src/main/java/org/ourproject/kune/platf/client/ui/noti/OldNotifyUser.java
Removed:
trunk/src/main/java/cc/kune/docs/client/actions/OpenContentBtn.java
trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ActionPerspective.java
trunk/src/main/java/cc/kune/gspace/client/actions/perspective/EditPerspective.java
trunk/src/main/java/cc/kune/gspace/client/actions/perspective/MenuPerspective.java
trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ViewPerspective.java
trunk/src/main/java/org/ourproject/kune/platf/client/ui/noti/NotifyUser.java
Modified:
trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/AbstractGuiActionDescrip.java
trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescrip.java
trunk/src/main/java/cc/kune/core/client/actions/ActionRegistryByType.java
trunk/src/main/java/cc/kune/core/client/state/StateManager.java
trunk/src/main/java/cc/kune/core/client/state/StateManagerDefault.java
trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java
trunk/src/main/java/cc/kune/docs/client/actions/FolderGoUpBtn.java
trunk/src/main/java/cc/kune/docs/client/actions/NewDocBtn.java
trunk/src/main/java/cc/kune/docs/client/actions/NewFolderBtn.java
trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPresenter.java
trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java
trunk/src/main/java/org/ourproject/kune/chat/client/ctx/room/AddRoomPresenter.java
trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionManager.java
trunk/src/main/java/org/ourproject/kune/platf/client/services/PlatformModule.java
trunk/src/main/java/org/ourproject/kune/platf/client/ui/dialogs/WizardDialog.java
trunk/src/main/java/org/ourproject/kune/platf/client/ui/rte/basic/RTEditorPanel.java
trunk/src/main/java/org/ourproject/kune/platf/client/ui/rte/basic/RTEditorPresenter.java
trunk/src/main/java/org/ourproject/kune/platf/client/ui/rte/saving/RTESavingEditorPanel.java
trunk/src/main/java/org/ourproject/kune/workspace/client/OldAbstractFoldableContentActions.java
trunk/src/main/java/org/ourproject/kune/workspace/client/ctxnav/ContextNavigatorPanel.java
trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/ContextPropEditorPresenter.java
trunk/src/main/java/org/ourproject/kune/workspace/client/hello/HelloWorldModule.java
trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/I18nTranslatorPanel.java
trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/I18nTranslatorPresenter.java
trunk/src/main/java/org/ourproject/kune/workspace/client/licensewizard/LicenseChangeAction.java
trunk/src/main/java/org/ourproject/kune/workspace/client/licensewizard/LicenseWizardPresenter.java
trunk/src/main/java/org/ourproject/kune/workspace/client/oldsn/other/AddAsBuddieHeaderButton.java
trunk/src/main/java/org/ourproject/kune/workspace/client/options/logo/EntityOptionsLogoPanel.java
trunk/src/main/java/org/ourproject/kune/workspace/client/options/logo/EntityOptionsLogoPresenter.java
trunk/src/main/java/org/ourproject/kune/workspace/client/options/pscape/EntityOptionsPublicSpaceConfPanel.java
trunk/src/main/java/org/ourproject/kune/workspace/client/rate/RateItPresenter.java
trunk/src/main/java/org/ourproject/kune/workspace/client/search/SiteSearcherPresenter.java
trunk/src/main/java/org/ourproject/kune/workspace/client/site/WorkspaceNotifyUser.java
trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/ToastMessage.java
trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/ToastMessagePanel.java
trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/ToastMessagePresenter.java
trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/ToastMessageView.java
trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesearch/SiteSearchPanel.java
trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsThemeManager.java
trunk/src/main/java/org/ourproject/kune/workspace/client/title/RenameAction.java
trunk/src/main/java/org/ourproject/kune/workspace/client/upload/FileUploaderDialog.java
trunk/src/test/java/cc/kune/core/client/actions/ActionRegistryByTypeTest.java
Log:
Delete actions
Modified: trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/AbstractGuiActionDescrip.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/AbstractGuiActionDescrip.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/AbstractGuiActionDescrip.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -27,7 +27,7 @@
import cc.kune.common.client.actions.ActionEvent;
import cc.kune.common.client.actions.ChangeableObject;
import cc.kune.common.client.actions.KeyStroke;
-import cc.kune.gspace.client.actions.perspective.ActionPerspective;
+import cc.kune.gspace.client.actions.perspective.ActionsGroup;
/**
* The Class AbstractUIActionDescriptor.
@@ -139,8 +139,8 @@
}
@Override
- public GuiActionDescrip in(final Class<? extends ActionPerspective> clazz) {
- putValue(ActionPerspective.KEY, clazz);
+ public GuiActionDescrip in(final Class<? extends ActionsGroup> clazz) {
+ putValue(ActionsGroup.KEY, clazz);
return this;
}
Modified: trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescrip.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescrip.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescrip.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -4,7 +4,7 @@
import cc.kune.common.client.actions.ActionEvent;
import cc.kune.common.client.actions.KeyStroke;
import cc.kune.common.client.actions.PropertyChangeListener;
-import cc.kune.gspace.client.actions.perspective.ActionPerspective;
+import cc.kune.gspace.client.actions.perspective.ActionsGroup;
public interface GuiActionDescrip {
@@ -49,7 +49,7 @@
boolean hasTarget();
- GuiActionDescrip in(Class<? extends ActionPerspective> clazz);
+ GuiActionDescrip in(Class<? extends ActionsGroup> clazz);
boolean isChild();
Modified: trunk/src/main/java/cc/kune/core/client/actions/ActionRegistryByType.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/actions/ActionRegistryByType.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/cc/kune/core/client/actions/ActionRegistryByType.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -9,7 +9,7 @@
import cc.kune.common.client.actions.ui.descrip.GuiActionDescProviderCollection;
import cc.kune.common.client.actions.ui.descrip.GuiActionDescrip;
import cc.kune.core.shared.domain.utils.AccessRights;
-import cc.kune.gspace.client.actions.perspective.ActionPerspective;
+import cc.kune.gspace.client.actions.perspective.ActionsGroup;
import com.google.inject.Provider;
@@ -67,14 +67,16 @@
return getCurrentActions(targetItem, typeId, isLogged, rights, null);
}
- public GuiActionDescCollection getCurrentActions(final Object targetItem, final String typeId,
+ public <T> GuiActionDescCollection getCurrentActions(final Object targetItem, final String typeId,
final boolean isLogged, final AccessRights rights, @Nullable final Class<?> clazz) {
final GuiActionDescCollection collection = new GuiActionDescCollection();
for (final Provider<? extends GuiActionDescrip> descripProv : getActions(typeId)) {
final GuiActionDescrip descrip = descripProv.get();
+ // Log.info("Class " +
+ // descripProv.getClass().getAnnotations().toString());
final AbstractAction action = descrip.getAction();
- final Object perspective = descrip.getValue(ActionPerspective.KEY);
- if (clazz != null && clazz != perspective) {
+ final Object actionGroup = descrip.getValue(ActionsGroup.KEY);
+ if (clazz != null && !clazz.equals(actionGroup)) {
// Not this perspective, then don't add this action
} else {
// Any perspective it's ok (==null) or same perspective -> add
Modified: trunk/src/main/java/cc/kune/core/client/state/StateManager.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/state/StateManager.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/cc/kune/core/client/state/StateManager.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -39,6 +39,8 @@
void gotoStateToken(StateToken newToken);
+ void gotoStateToken(StateToken token, boolean useCache);
+
void onGroupChanged(boolean fireNow, GroupChangedEvent.GroupChangedHandler handler);
@Deprecated
@@ -80,6 +82,8 @@
void setRetrievedState(StateAbstractDTO state);
+ void setRetrievedStateAndGo(StateAbstractDTO state);
+
void setSocialNetwork(SocialNetworkDataDTO socialNet);
}
Modified: trunk/src/main/java/cc/kune/core/client/state/StateManagerDefault.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/state/StateManagerDefault.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/cc/kune/core/client/state/StateManagerDefault.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -51,7 +51,7 @@
public class StateManagerDefault implements StateManager, ValueChangeHandler<String> {
private final BeforeActionCollection beforeStateChangeCollection;
- private final ContentCache contentProvider;
+ private final ContentCache contentCache;
private final EventBus eventBus;
private final HistoryWrapper history;
private StateToken previousToken;
@@ -69,7 +69,7 @@
final TokenMatcher tokenMatcher, final EventBus eventBus, final SiteTokenListeners siteTokens) {
this.tokenMatcher = tokenMatcher;
this.eventBus = eventBus;
- this.contentProvider = contentProvider;
+ this.contentCache = contentProvider;
this.session = session;
this.history = history;
this.previousToken = null;
@@ -133,7 +133,7 @@
@Override
public void gotoHistoryToken(final String token) {
- Log.debug("StateManager: history goto-string-token newItem (" + token + ")");
+ Log.debug("StateManager: history goto-string-token :" + token);
history.newItem(token);
}
@@ -145,11 +145,19 @@
@Override
public void gotoStateToken(final StateToken newToken) {
- Log.debug("StateManager: history goto-token newItem (" + newToken + ")");
+ Log.debug("StateManager: history goto-token: " + newToken + ", previous: " + previousToken);
history.newItem(newToken.getEncoded());
}
@Override
+ public void gotoStateToken(final StateToken token, final boolean useCache) {
+ if (!useCache) {
+ contentCache.removeContent(token);
+ }
+ gotoStateToken(token);
+ }
+
+ @Override
public void onGroupChanged(final boolean fireNow, final GroupChangedHandler handler) {
eventBus.addHandler(GroupChangedEvent.getType(), handler);
final StateAbstractDTO currentState = session.getCurrentState();
@@ -167,7 +175,7 @@
private void onHistoryChanged(final StateToken newState) {
// NotifyUser.info("loading: " + newState + " because current:" +
// session.getCurrentStateToken());
- contentProvider.getContent(session.getUserHash(), newState, new AsyncCallbackSimple<StateAbstractDTO>() {
+ contentCache.getContent(session.getUserHash(), newState, new AsyncCallbackSimple<StateAbstractDTO>() {
@Override
public void onSuccess(final StateAbstractDTO newState) {
setState(newState);
@@ -330,7 +338,7 @@
if (currentStateToken == null) {
processCurrentHistoryToken();
} else {
- contentProvider.removeContent(currentStateToken);
+ contentCache.removeContent(currentStateToken);
onHistoryChanged(currentStateToken);
}
}
@@ -372,7 +380,12 @@
@Override
public void setRetrievedState(final StateAbstractDTO newState) {
- contentProvider.cache(newState.getStateToken(), newState);
+ contentCache.cache(newState.getStateToken(), newState);
+ }
+
+ @Override
+ public void setRetrievedStateAndGo(final StateAbstractDTO newState) {
+ setRetrievedState(newState);
// setState(newState);
history.newItem(newState.getStateToken().toString());
}
@@ -392,7 +405,7 @@
void setState(final StateAbstractDTO newState) {
session.setCurrentState(newState);
final StateToken newToken = newState.getStateToken();
- contentProvider.cache(newToken, newState);
+ contentCache.cache(newToken, newState);
// history.newItem(newToken.toString(), false);
StateChangedEvent.fire(eventBus, newState);
checkGroupAndToolChange(newState);
Added: trunk/src/main/java/cc/kune/docs/client/actions/DelContentMenuItem.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/DelContentMenuItem.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/actions/DelContentMenuItem.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -0,0 +1,88 @@
+package cc.kune.docs.client.actions;
+
+import cc.kune.common.client.actions.ActionEvent;
+import cc.kune.common.client.actions.ui.descrip.MenuItemDescriptor;
+import cc.kune.common.client.notify.ConfirmAskEvent;
+import cc.kune.common.client.notify.NotifyUser;
+import cc.kune.common.client.utils.OnAcceptCallback;
+import cc.kune.core.client.actions.RolAction;
+import cc.kune.core.client.resources.CoreResources;
+import cc.kune.core.client.rpcservices.AsyncCallbackSimple;
+import cc.kune.core.client.rpcservices.ContentServiceAsync;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.client.state.StateManager;
+import cc.kune.core.shared.domain.utils.StateToken;
+import cc.kune.core.shared.dto.AccessRolDTO;
+import cc.kune.core.shared.dto.StateContentDTO;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.docs.client.viewers.FolderViewerPresenter;
+import cc.kune.gspace.client.actions.perspective.MenuActionsGroup;
+
+import com.google.gwt.event.shared.EventBus;
+import com.google.inject.Inject;
+import com.google.inject.Provider;
+
+public class DelContentMenuItem extends MenuItemDescriptor {
+
+ public static class DelContentAction extends RolAction {
+
+ private final Provider<ContentServiceAsync> contentService;
+ private final EventBus eventBus;
+ private final I18nTranslationService i18n;
+ private final Provider<FolderViewerPresenter> presenter;
+ private final Session session;
+ private final StateManager stateManager;
+
+ @Inject
+ public DelContentAction(final EventBus eventBus, final StateManager stateManager, final Session session,
+ final Provider<ContentServiceAsync> contentService, final I18nTranslationService i18n,
+ final Provider<FolderViewerPresenter> presenter) {
+ super(AccessRolDTO.Administrator, true);
+ this.eventBus = eventBus;
+ this.stateManager = stateManager;
+ this.session = session;
+ this.contentService = contentService;
+ this.i18n = i18n;
+ this.presenter = presenter;
+ }
+
+ @Override
+ public void actionPerformed(final ActionEvent event) {
+ final StateToken token = (StateToken) event.getTarget();
+ ConfirmAskEvent.fire(eventBus, i18n.t("Please confirm"), i18n.t("Are you sure?"), i18n.t("Yes"),
+ i18n.t("No"), null, null, new OnAcceptCallback() {
+ @Override
+ public void onSuccess() {
+ NotifyUser.showProgress();
+ contentService.get().delContent(session.getUserHash(), token,
+ new AsyncCallbackSimple<StateContentDTO>() {
+ @Override
+ public void onSuccess(final StateContentDTO state) {
+ // Is this necessary?
+ // session.setCurrentState(state);
+ final StateToken parent = token.copy().clearDocument();
+ if (session.getCurrentStateToken().equals(parent)) {
+ stateManager.refreshCurrentGroupState();
+ // Warning: the previous action
+ // is asynchronous (it gets a
+ // content)
+ presenter.get().refreshState();
+ } else {
+ stateManager.gotoStateToken(parent, false);
+ }
+ NotifyUser.hideProgress();
+ }
+ });
+ }
+ });
+ }
+
+ }
+
+ @Inject
+ public DelContentMenuItem(final I18nTranslationService i18n, final DelContentAction action, final CoreResources res) {
+ super(action);
+ this.withText(i18n.t("Delete")).withIcon(res.cancel()).in(MenuActionsGroup.class);
+ }
+
+}
Property changes on: trunk/src/main/java/cc/kune/docs/client/actions/DelContentMenuItem.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/docs/client/actions/DelFolderMenuItem.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/DelFolderMenuItem.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/actions/DelFolderMenuItem.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -0,0 +1,70 @@
+package cc.kune.docs.client.actions;
+
+import cc.kune.common.client.actions.ActionEvent;
+import cc.kune.common.client.actions.ui.descrip.MenuItemDescriptor;
+import cc.kune.common.client.notify.ConfirmAskEvent;
+import cc.kune.common.client.notify.NotifyUser;
+import cc.kune.common.client.utils.OnAcceptCallback;
+import cc.kune.core.client.actions.RolAction;
+import cc.kune.core.client.resources.CoreResources;
+import cc.kune.core.client.rpcservices.ContentServiceAsync;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.client.state.StateManager;
+import cc.kune.core.shared.domain.utils.StateToken;
+import cc.kune.core.shared.dto.AccessRolDTO;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.docs.client.viewers.FolderViewerPresenter;
+import cc.kune.gspace.client.actions.perspective.MenuActionsGroup;
+
+import com.google.gwt.event.shared.EventBus;
+import com.google.inject.Inject;
+import com.google.inject.Provider;
+
+public class DelFolderMenuItem extends MenuItemDescriptor {
+
+ public static class DelFolderAction extends RolAction {
+
+ private final Provider<ContentServiceAsync> contentService;
+ private final EventBus eventBus;
+ private final I18nTranslationService i18n;
+ private final Provider<FolderViewerPresenter> presenter;
+ private final Session session;
+ private final StateManager stateManager;
+
+ @Inject
+ public DelFolderAction(final EventBus eventBus, final StateManager stateManager, final Session session,
+ final Provider<ContentServiceAsync> contentService, final I18nTranslationService i18n,
+ final Provider<FolderViewerPresenter> presenter) {
+ super(AccessRolDTO.Administrator, true);
+ this.eventBus = eventBus;
+ this.stateManager = stateManager;
+ this.session = session;
+ this.contentService = contentService;
+ this.i18n = i18n;
+ this.presenter = presenter;
+ }
+
+ @Override
+ public void actionPerformed(final ActionEvent event) {
+ final StateToken token = (StateToken) event.getTarget();
+ ConfirmAskEvent.fire(eventBus, i18n.t("Please confirm"),
+ i18n.t("You will delete it with all its contents. Are you sure?"), i18n.t("Yes"), i18n.t("No"),
+ null, null, new OnAcceptCallback() {
+ @Override
+ public void onSuccess() {
+ NotifyUser.showProgress();
+ NotifyUser.info("Sorry, in development");
+ NotifyUser.hideProgress();
+ }
+ });
+ }
+
+ }
+
+ @Inject
+ public DelFolderMenuItem(final I18nTranslationService i18n, final DelFolderAction action, final CoreResources res) {
+ super(action);
+ this.withText(i18n.t("Delete")).withIcon(res.cancel()).in(MenuActionsGroup.class);
+ }
+
+}
Property changes on: trunk/src/main/java/cc/kune/docs/client/actions/DelFolderMenuItem.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -45,14 +45,18 @@
public DocsClientActions(final I18nUITranslationService i18n, final Session session,
final StateManager stateManager, final ActionRegistryByType registry, final CoreResources res,
final Provider<FolderGoUpBtn> folderGoUp, final Provider<NewDocBtn> newDocBtn,
- final Provider<NewFolderBtn> newFolderBtn, final Provider<OpenContentBtn> openContentBtn) {
+ final Provider<NewFolderBtn> newFolderBtn, final Provider<OpenContentMenuItem> openContentMenuItem,
+ final Provider<DelContentMenuItem> delContentMenuItem,
+ final Provider<DelFolderMenuItem> delFolderMenuItem) {
super(session, stateManager, i18n, registry);
actionsRegistry.addAction(folderGoUp, contents);
actionsRegistry.addAction(folderGoUp, containersNoRoot);
actionsRegistry.addAction(newDocBtn, containers);
actionsRegistry.addAction(newFolderBtn, containers);
- actionsRegistry.addAction(openContentBtn, contents);
- actionsRegistry.addAction(openContentBtn, containersNoRoot);
+ actionsRegistry.addAction(openContentMenuItem, contents);
+ actionsRegistry.addAction(openContentMenuItem, containersNoRoot);
+ actionsRegistry.addAction(delContentMenuItem, contents);
+ actionsRegistry.addAction(delFolderMenuItem, containersNoRoot);
}
@Override
Modified: trunk/src/main/java/cc/kune/docs/client/actions/FolderGoUpBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/FolderGoUpBtn.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/cc/kune/docs/client/actions/FolderGoUpBtn.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -3,6 +3,7 @@
import cc.kune.common.client.actions.AbstractExtendedAction;
import cc.kune.common.client.actions.ActionEvent;
import cc.kune.common.client.actions.ui.descrip.ButtonDescriptor;
+import cc.kune.common.client.notify.NotifyUser;
import cc.kune.core.client.resources.CoreResources;
import cc.kune.core.client.state.Session;
import cc.kune.core.client.state.StateManager;
@@ -12,7 +13,7 @@
import cc.kune.core.shared.dto.StateContainerDTO;
import cc.kune.core.shared.dto.StateContentDTO;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.actions.perspective.ViewPerspective;
+import cc.kune.gspace.client.actions.perspective.ViewActionsGroup;
import com.google.inject.Inject;
@@ -31,6 +32,7 @@
@Override
public void actionPerformed(final ActionEvent event) {
+ NotifyUser.showProgress();
StateToken stateToken;
final StateAbstractDTO state = session.getCurrentState();
if (state instanceof StateContentDTO) {
@@ -40,6 +42,7 @@
stateToken = container.getStateToken().copy().setFolder(container.getParentFolderId());
}
stateManager.gotoStateToken(stateToken);
+ NotifyUser.hideProgress();
}
}
@@ -48,7 +51,7 @@
public FolderGoUpBtn(final I18nTranslationService i18n, final FolderGoUpAction action, final CoreResources res) {
super(action);
this.withToolTip(i18n.t("Go up: Open the container folder")).withIcon(res.folderGoUp()).in(
- ViewPerspective.class);
+ ViewActionsGroup.class);
}
}
Modified: trunk/src/main/java/cc/kune/docs/client/actions/NewDocBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/NewDocBtn.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/cc/kune/docs/client/actions/NewDocBtn.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -18,12 +18,12 @@
import cc.kune.core.shared.dto.StateContentDTO;
import cc.kune.core.shared.i18n.I18nTranslationService;
import cc.kune.docs.client.DocsClientTool;
-import cc.kune.gspace.client.actions.perspective.ViewPerspective;
+import cc.kune.gspace.client.actions.perspective.ViewActionsGroup;
import com.google.inject.Inject;
import com.google.inject.Provider;
-public class NewDocBtn extends ButtonDescriptor {
+public class NewDocBtn extends ButtonDescriptor implements ViewActionsGroup {
public static class NewDocAction extends RolAction {
@@ -46,14 +46,16 @@
@Override
public void actionPerformed(final ActionEvent event) {
+ NotifyUser.showProgressProcessing();
stateManager.gotoStateToken(((HasContent) session.getCurrentState()).getContainer().getStateToken());
- NotifyUser.showProgressProcessing();
contentService.get().addContent(session.getUserHash(), session.getCurrentStateToken(),
i18n.t("New document"), DocsClientTool.TYPE_WAVE, new AsyncCallbackSimple<StateContentDTO>() {
@Override
public void onSuccess(final StateContentDTO state) {
+ stateManager.setRetrievedStateAndGo(state);
+ NotifyUser.hideProgress();
+ // stateManager.refreshCurrentGroupState();
// contextNavigator.setEditOnNextStateChange(true);
- stateManager.setRetrievedState(state);
}
});
cache.removeContent(session.getCurrentStateToken());
@@ -68,7 +70,7 @@
shorcutReg.put(shortcut, action);
this.withText(i18n.t("New document")).withToolTip(
"Create a New Document here. This document will be a new 'Page' in the public web if you publish it").withIcon(
- res.pageAdd()).in(ViewPerspective.class).withShortcut(shortcut).withStyles("k-def-docbtn");
+ res.pageAdd()).in(ViewActionsGroup.class).withShortcut(shortcut).withStyles("k-def-docbtn");
}
}
Modified: trunk/src/main/java/cc/kune/docs/client/actions/NewFolderBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/NewFolderBtn.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/cc/kune/docs/client/actions/NewFolderBtn.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -15,7 +15,7 @@
import cc.kune.core.shared.dto.StateContainerDTO;
import cc.kune.core.shared.i18n.I18nTranslationService;
import cc.kune.docs.client.DocsClientTool;
-import cc.kune.gspace.client.actions.perspective.ViewPerspective;
+import cc.kune.gspace.client.actions.perspective.ViewActionsGroup;
import com.google.inject.Inject;
import com.google.inject.Provider;
@@ -43,14 +43,15 @@
@Override
public void actionPerformed(final ActionEvent event) {
+ NotifyUser.showProgressProcessing();
stateManager.gotoStateToken(((HasContent) session.getCurrentState()).getContainer().getStateToken());
- NotifyUser.showProgressProcessing();
contentService.get().addFolder(session.getUserHash(), session.getCurrentStateToken(), i18n.t("New folder"),
DocsClientTool.TYPE_FOLDER, new AsyncCallbackSimple<StateContainerDTO>() {
@Override
public void onSuccess(final StateContainerDTO state) {
// contextNavigator.setEditOnNextStateChange(true);
- stateManager.setRetrievedState(state);
+ stateManager.setRetrievedStateAndGo(state);
+ NotifyUser.hideProgress();
}
});
cache.removeContent(session.getCurrentStateToken());
@@ -63,6 +64,6 @@
super(action);
this.withText(i18n.t("New folder")).withToolTip(
i18n.t("Create a new folder here. A folder will be a 'section' in the public web")).withIcon(
- res.folderAdd()).in(ViewPerspective.class).withStyles("k-def-docbtn");
+ res.folderAdd()).in(ViewActionsGroup.class).withStyles("k-def-docbtn");
}
}
Deleted: trunk/src/main/java/cc/kune/docs/client/actions/OpenContentBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/OpenContentBtn.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/cc/kune/docs/client/actions/OpenContentBtn.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -1,38 +0,0 @@
-package cc.kune.docs.client.actions;
-
-import cc.kune.common.client.actions.AbstractExtendedAction;
-import cc.kune.common.client.actions.ActionEvent;
-import cc.kune.common.client.actions.ui.descrip.MenuItemDescriptor;
-import cc.kune.core.client.resources.CoreResources;
-import cc.kune.core.client.state.StateManager;
-import cc.kune.core.shared.domain.utils.StateToken;
-import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.actions.perspective.MenuPerspective;
-
-import com.google.inject.Inject;
-
-public class OpenContentBtn extends MenuItemDescriptor {
-
- public static class OpenContentAction extends AbstractExtendedAction {
-
- private final StateManager stateManager;
-
- @Inject
- public OpenContentAction(final StateManager stateManager) {
- this.stateManager = stateManager;
- }
-
- @Override
- public void actionPerformed(final ActionEvent event) {
- stateManager.gotoStateToken((StateToken) event.getTarget());
- }
-
- }
-
- @Inject
- public OpenContentBtn(final I18nTranslationService i18n, final OpenContentAction action, final CoreResources res) {
- super(action);
- this.withText(i18n.t("Open")).withIcon(res.arrowRightGreen()).in(MenuPerspective.class);
- }
-
-}
Copied: trunk/src/main/java/cc/kune/docs/client/actions/OpenContentMenuItem.java (from rev 1316, trunk/src/main/java/cc/kune/docs/client/actions/OpenContentBtn.java)
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/OpenContentMenuItem.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/actions/OpenContentMenuItem.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -0,0 +1,38 @@
+package cc.kune.docs.client.actions;
+
+import cc.kune.common.client.actions.AbstractExtendedAction;
+import cc.kune.common.client.actions.ActionEvent;
+import cc.kune.common.client.actions.ui.descrip.MenuItemDescriptor;
+import cc.kune.core.client.resources.nav.NavResources;
+import cc.kune.core.client.state.StateManager;
+import cc.kune.core.shared.domain.utils.StateToken;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.gspace.client.actions.perspective.MenuActionsGroup;
+
+import com.google.inject.Inject;
+
+public class OpenContentMenuItem extends MenuItemDescriptor {
+
+ public static class OpenContentAction extends AbstractExtendedAction {
+
+ private final StateManager stateManager;
+
+ @Inject
+ public OpenContentAction(final StateManager stateManager) {
+ this.stateManager = stateManager;
+ }
+
+ @Override
+ public void actionPerformed(final ActionEvent event) {
+ stateManager.gotoStateToken((StateToken) event.getTarget());
+ }
+
+ }
+
+ @Inject
+ public OpenContentMenuItem(final I18nTranslationService i18n, final OpenContentAction action, final NavResources res) {
+ super(action);
+ this.withText(i18n.t("Open")).withIcon(res.go()).in(MenuActionsGroup.class);
+ }
+
+}
Modified: trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPresenter.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPresenter.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -10,7 +10,7 @@
import cc.kune.core.shared.dto.StateContentDTO;
import cc.kune.docs.client.DocsClientTool;
import cc.kune.docs.client.actions.DocsClientActions;
-import cc.kune.gspace.client.actions.perspective.ViewPerspective;
+import cc.kune.gspace.client.actions.perspective.ViewActionsGroup;
import cc.kune.gspace.client.tool.ContentViewer;
import cc.kune.gspace.client.tool.ContentViewerSelector;
@@ -76,7 +76,7 @@
final StateContentDTO stateContent = (StateContentDTO) state;
final AccessRights rights = stateContent.getContentRights();
final GuiActionDescCollection actions = actionsRegistry.getCurrentActions(stateContent.getGroup(),
- stateContent.getTypeId(), session.isLogged(), rights, ViewPerspective.class);
+ stateContent.getTypeId(), session.isLogged(), rights, ViewActionsGroup.class);
getView().setActions(actions);
getView().setContent(stateContent);
}
Modified: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -3,7 +3,7 @@
import javax.annotation.Nonnull;
import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
-import cc.kune.common.client.notify.NotifyUser;
+import cc.kune.common.client.log.Log;
import cc.kune.core.client.actions.ActionRegistryByType;
import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
import cc.kune.core.client.registry.IconsRegistry;
@@ -23,8 +23,8 @@
import cc.kune.core.shared.i18n.I18nTranslationService;
import cc.kune.docs.client.DocsClientTool;
import cc.kune.docs.client.actions.DocsClientActions;
-import cc.kune.gspace.client.actions.perspective.MenuPerspective;
-import cc.kune.gspace.client.actions.perspective.ViewPerspective;
+import cc.kune.gspace.client.actions.perspective.MenuActionsGroup;
+import cc.kune.gspace.client.actions.perspective.ViewActionsGroup;
import cc.kune.gspace.client.tool.ContentViewer;
import cc.kune.gspace.client.tool.ContentViewerSelector;
@@ -94,16 +94,17 @@
private void addItem(final String title, final String contentTypeId, final BasicMimeTypeDTO mimeType,
final ContentStatus status, final StateToken stateToken, final StateToken parentStateToken,
final AccessRights rights) {
+ Log.info("Adding item: " + title);
final Object icon = getIcon(stateToken, contentTypeId, mimeType);
final String tooltip = getTooltip(stateToken, mimeType);
final FolderItemDescriptor item = new FolderItemDescriptor(genId(stateToken), genId(parentStateToken), icon,
title, tooltip, status, stateToken, capabilitiesRegistry.isDragable(contentTypeId)
&& rights.isAdministrable(), capabilitiesRegistry.isDropable(contentTypeId)
&& rights.isAdministrable(), actionsRegistry.getCurrentActions(stateToken, contentTypeId,
- session.isLogged(), rights, MenuPerspective.class));
+ session.isLogged(), rights, MenuActionsGroup.class));
if (status.equals(ContentStatus.inTheDustbin) && !session.getShowDeletedContent()) {
// Don't show
- NotifyUser.info("Deleted, don't show");
+ // NotifyUser.info("Deleted, don't show");
} else {
getView().addItem(item, new ClickHandler() {
@Override
@@ -168,6 +169,10 @@
}
}
+ public void refreshState() {
+ setContent((HasContent) session.getCurrentState());
+ }
+
@Override
protected void revealInParent() {
RevealRootContentEvent.fire(this, this);
@@ -175,12 +180,13 @@
@Override
public void setContent(@Nonnull final HasContent state) {
+ Log.info("Set content in FolderViewer");
getView().clear();
final StateContainerDTO stateContainer = (StateContainerDTO) state;
getView().setContainer(stateContainer);
final AccessRights rights = stateContainer.getContainerRights();
final GuiActionDescCollection actions = actionsRegistry.getCurrentActions(stateContainer.getGroup(),
- stateContainer.getTypeId(), session.isLogged(), rights, ViewPerspective.class);
+ stateContainer.getTypeId(), session.isLogged(), rights, ViewActionsGroup.class);
getView().setActions(actions);
createChildItems(stateContainer.getContainer(), stateContainer.getContainerRights());
// view.setEditable(rights.isEditable());
Deleted: trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ActionPerspective.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ActionPerspective.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ActionPerspective.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -1,8 +0,0 @@
-package cc.kune.gspace.client.actions.perspective;
-
-/**
- * An action that must be showed in some perspective (on edit, etc)
- */
-public interface ActionPerspective {
- String KEY = "actionperskey";
-}
Copied: trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ActionsGroup.java (from rev 1314, trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ActionPerspective.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ActionsGroup.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ActionsGroup.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -0,0 +1,9 @@
+package cc.kune.gspace.client.actions.perspective;
+
+/**
+ * A group of actions that must be grouped and showed in some perspective (on
+ * edit, etc)
+ */
+public interface ActionsGroup {
+ String KEY = "actiongroup";
+}
Copied: trunk/src/main/java/cc/kune/gspace/client/actions/perspective/EditActionsGroup.java (from rev 1314, trunk/src/main/java/cc/kune/gspace/client/actions/perspective/EditPerspective.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/perspective/EditActionsGroup.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/perspective/EditActionsGroup.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -0,0 +1,7 @@
+package cc.kune.gspace.client.actions.perspective;
+
+/**
+ * An action that must be showed when editing
+ */
+public interface EditActionsGroup extends ActionsGroup {
+}
Deleted: trunk/src/main/java/cc/kune/gspace/client/actions/perspective/EditPerspective.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/perspective/EditPerspective.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/perspective/EditPerspective.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -1,7 +0,0 @@
-package cc.kune.gspace.client.actions.perspective;
-
-/**
- * An action that must be showed when editing
- */
-public interface EditPerspective extends ActionPerspective {
-}
Copied: trunk/src/main/java/cc/kune/gspace/client/actions/perspective/MenuActionsGroup.java (from rev 1315, trunk/src/main/java/cc/kune/gspace/client/actions/perspective/MenuPerspective.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/perspective/MenuActionsGroup.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/perspective/MenuActionsGroup.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -0,0 +1,7 @@
+package cc.kune.gspace.client.actions.perspective;
+
+/**
+ * An action that must be showed in menu of docs/folder, etc
+ */
+public interface MenuActionsGroup extends ActionsGroup {
+}
Property changes on: trunk/src/main/java/cc/kune/gspace/client/actions/perspective/MenuActionsGroup.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Deleted: trunk/src/main/java/cc/kune/gspace/client/actions/perspective/MenuPerspective.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/perspective/MenuPerspective.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/perspective/MenuPerspective.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -1,7 +0,0 @@
-package cc.kune.gspace.client.actions.perspective;
-
-/**
- * An action that must be showed in menu of docs/folder, etc
- */
-public interface MenuPerspective extends ActionPerspective {
-}
Copied: trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ViewActionsGroup.java (from rev 1314, trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ViewPerspective.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ViewActionsGroup.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ViewActionsGroup.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -0,0 +1,7 @@
+package cc.kune.gspace.client.actions.perspective;
+
+/**
+ * An action that must be showed when viewing
+ */
+public interface ViewActionsGroup extends ActionsGroup {
+}
Deleted: trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ViewPerspective.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ViewPerspective.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ViewPerspective.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -1,7 +0,0 @@
-package cc.kune.gspace.client.actions.perspective;
-
-/**
- * An action that must be showed when editing
- */
-public interface ViewPerspective extends ActionPerspective {
-}
Modified: trunk/src/main/java/org/ourproject/kune/chat/client/ctx/room/AddRoomPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/client/ctx/room/AddRoomPresenter.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/chat/client/ctx/room/AddRoomPresenter.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -20,7 +20,7 @@
package org.ourproject.kune.chat.client.ctx.room;
import org.ourproject.kune.platf.client.View;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import cc.kune.core.client.rpcservices.AsyncCallbackSimple;
import cc.kune.core.client.rpcservices.ContentServiceAsync;
@@ -45,14 +45,14 @@
}
public void addRoom(String roomName) {
- NotifyUser.showProgressProcessing();
+ OldNotifyUser.showProgressProcessing();
final String groupShortName = session.getCurrentState().getGroup().getShortName();
contentServiceProvider.get().addRoom(session.getUserHash(),
session.getContainerState().getRootContainer().getStateToken(), groupShortName + "-" + roomName,
new AsyncCallbackSimple<StateContainerDTO>() {
public void onSuccess(final StateContainerDTO state) {
- stateManager.setRetrievedState(state);
- NotifyUser.hideProgress();
+ stateManager.setRetrievedStateAndGo(state);
+ OldNotifyUser.hideProgress();
}
});
}
Modified: trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionManager.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionManager.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionManager.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -19,7 +19,7 @@
\*/
package org.ourproject.kune.platf.client.actions;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import com.calclab.suco.client.events.Listener0;
@@ -32,7 +32,7 @@
final ActionDescriptor<?> action = actionItem.getAction();
final Object item = actionItem.getItem();
if (action.mustBeConfirmed()) {
- NotifyUser.askConfirmation(action.getConfirmationTitle(), action.getConfirmationText(), new Listener0() {
+ OldNotifyUser.askConfirmation(action.getConfirmationTitle(), action.getConfirmationText(), new Listener0() {
public void onEvent() {
fire(action, item);
}
Modified: trunk/src/main/java/org/ourproject/kune/platf/client/services/PlatformModule.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/services/PlatformModule.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/services/PlatformModule.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -26,7 +26,7 @@
import org.ourproject.kune.platf.client.i18n.Resources;
import org.ourproject.kune.platf.client.shortcuts.GlobalShortcutRegister;
import org.ourproject.kune.platf.client.ui.QuickTipsHelper;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import org.ourproject.kune.platf.client.ui.palette.ColorWebSafePalette;
import org.ourproject.kune.platf.client.ui.palette.ColorWebSafePalettePanel;
import org.ourproject.kune.platf.client.ui.palette.ColorWebSafePalettePresenter;
@@ -292,10 +292,10 @@
}
});
- register(ApplicationComponentGroup.class, new Factory<NotifyUser>(NotifyUser.class) {
+ register(ApplicationComponentGroup.class, new Factory<OldNotifyUser>(OldNotifyUser.class) {
@Override
- public NotifyUser create() {
- return new NotifyUser(i(I18nTranslationService.class), i(Images.class));
+ public OldNotifyUser create() {
+ return new OldNotifyUser(i(I18nTranslationService.class), i(Images.class));
}
});
Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/dialogs/WizardDialog.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/dialogs/WizardDialog.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/dialogs/WizardDialog.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -20,7 +20,7 @@
package org.ourproject.kune.platf.client.ui.dialogs;
import org.ourproject.kune.platf.client.View;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import cc.kune.core.shared.i18n.I18nTranslationService;
@@ -240,7 +240,7 @@
dialog.add(mainPanel);
doLayoutIfNeeded();
} else {
- NotifyUser.error("Widget not found in deck of WizardDialog");
+ OldNotifyUser.error("Widget not found in deck of WizardDialog");
}
}
@@ -272,7 +272,7 @@
} else if (view instanceof DefaultForm) {
return ((DefaultForm) view).getFormPanel();
} else {
- NotifyUser.error("Trying to add a unknown element in WizardDialog");
+ OldNotifyUser.error("Trying to add a unknown element in WizardDialog");
return null;
}
}
Deleted: trunk/src/main/java/org/ourproject/kune/platf/client/ui/noti/NotifyUser.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/noti/NotifyUser.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/noti/NotifyUser.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -1,178 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2011 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.ui.noti;
-
-import org.ourproject.kune.platf.client.services.Images;
-
-import cc.kune.core.client.notify.msgs.UserNotifyEvent;
-import cc.kune.core.shared.i18n.I18nTranslationService;
-
-import com.calclab.suco.client.events.Listener;
-import com.calclab.suco.client.events.Listener0;
-import com.calclab.suco.client.events.Listener2;
-import com.google.gwt.event.shared.EventBus;
-import com.google.gwt.user.client.ui.AbstractImagePrototype;
-
-/**
- * Use {@link EventBus} and {@link UserNotifyEvent} instead
- *
- */
-@Deprecated
-public class NotifyUser {
-
- public enum Level {
- error, important, info, veryImportant,
- }
-
- private static I18nTranslationService i18n;
- private static Images images;
-
- // private static final Event2<String, String> ON_ALERT = new Event2<String,
- // String>("onAlert");
- // private static final Event<ConfirmationAsk> ON_CONFIRMATION_ASK = new
- // Event<ConfirmationAsk>("onConfirmationAsk");
- // private static final Event0 ON_HIDE_PROGRESS = new
- // Event0("onHideProgress");
-
- // private static final Event2<Level, String> ON_NOTIFY = new Event2<Level,
- // String>("onNotify");
-
- // private static final Event<String> ON_PROGRESS = new
- // Event<String>("onProgress");
-
- public static void askConfirmation(final String confirmationTitle, final String confirmationText,
- final Listener0 onConfirm) {
- // ON_CONFIRMATION_ASK.fire(new ConfirmationAsk(confirmationTitle,
- // confirmationText, onConfirm, new Listener0() {
- // @Override
- // public void onEvent() {
- // // Do nothing
- // }
- // }));
- }
-
- public static void askConfirmation(final String confirmationTitle, final String confirmationText,
- final Listener0 onConfirm, final Listener0 onCancel) {
- // ON_CONFIRMATION_ASK.fire(new ConfirmationAsk(confirmationTitle,
- // confirmationText, onConfirm, onCancel));
- }
-
- public static void error(final String message) {
- // ON_NOTIFY.fire(Level.error, message);
- }
-
- public static String getCls(final Level level) {
- switch (level) {
- case info:
- return "k-stm-info-icon";
- case important:
- return "k-stm-imp-icon";
- case veryImportant:
- return "k-stm-verimp-icon";
- case error:
- default:
- return "k-stm-error-icon";
- }
- }
-
- public static AbstractImagePrototype getImage(final Level level) {
- switch (level) {
- case info:
- return images.info();
- case important:
- return images.important();
- case veryImportant:
- return images.alert();
- case error:
- default:
- return images.error();
- }
- }
-
- public static void hideProgress() {
- // ON_HIDE_PROGRESS.fire();
- }
-
- public static void important(final String message) {
- // ON_NOTIFY.fire(Level.important, message);
- }
-
- public static void info(final String message) {
- // ON_NOTIFY.fire(Level.info, message);
- }
-
- public static void showAlertMessage(final String title, final String message) {
- // ON_ALERT.fire(title, message);
- }
-
- public static void showProgress(final String text) {
- // ON_PROGRESS.fire(text);
- }
-
- public static void showProgressLoading() {
- // ON_PROGRESS.fire(i18n.t("Loading"));
- }
-
- public static void showProgressProcessing() {
- // ON_PROGRESS.fire(i18n.t("Processing"));
- }
-
- public static void showProgressSaving() {
- // ON_PROGRESS.fire(i18n.t("Saving"));
- }
-
- public static void showProgressStarting() {
- // ON_PROGRESS.fire(i18n.t("Starting"));
- }
-
- public static void veryImportant(final String message) {
- // ON_NOTIFY.fire(Level.veryImportant, message);
- }
-
- private NotifyUser() {
- }
-
- public NotifyUser(final I18nTranslationService i18n, final Images images) {
- this();
- NotifyUser.i18n = i18n;
- NotifyUser.images = images;
- }
-
- public void addAlerter(final Listener2<String, String> listener) {
- // ON_ALERT.add(listener);
- }
-
- public void addConfirmationAsker(final Listener<ConfirmationAsk> listener) {
- // ON_CONFIRMATION_ASK.add(listener);
- }
-
- public void addHideProgressNotifier(final Listener0 listener) {
- // ON_HIDE_PROGRESS.add(listener);
- }
-
- public void addNotifier(final Listener2<Level, String> listener) {
- // ON_NOTIFY.add(listener);
- }
-
- public void addProgressNotifier(final Listener<String> listener) {
- // ON_PROGRESS.add(listener);
- }
-
-}
Copied: trunk/src/main/java/org/ourproject/kune/platf/client/ui/noti/OldNotifyUser.java (from rev 1313, trunk/src/main/java/org/ourproject/kune/platf/client/ui/noti/NotifyUser.java)
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/noti/OldNotifyUser.java (rev 0)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/noti/OldNotifyUser.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -0,0 +1,178 @@
+/*
+ *
+ * Copyright (C) 2007-2011 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.ui.noti;
+
+import org.ourproject.kune.platf.client.services.Images;
+
+import cc.kune.core.client.notify.msgs.UserNotifyEvent;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+
+import com.calclab.suco.client.events.Listener;
+import com.calclab.suco.client.events.Listener0;
+import com.calclab.suco.client.events.Listener2;
+import com.google.gwt.event.shared.EventBus;
+import com.google.gwt.user.client.ui.AbstractImagePrototype;
+
+/**
+ * Use {@link EventBus} and {@link UserNotifyEvent} instead
+ *
+ */
+@Deprecated
+public class OldNotifyUser {
+
+ public enum Level {
+ error, important, info, veryImportant,
+ }
+
+ private static I18nTranslationService i18n;
+ private static Images images;
+
+ // private static final Event2<String, String> ON_ALERT = new Event2<String,
+ // String>("onAlert");
+ // private static final Event<ConfirmationAsk> ON_CONFIRMATION_ASK = new
+ // Event<ConfirmationAsk>("onConfirmationAsk");
+ // private static final Event0 ON_HIDE_PROGRESS = new
+ // Event0("onHideProgress");
+
+ // private static final Event2<Level, String> ON_NOTIFY = new Event2<Level,
+ // String>("onNotify");
+
+ // private static final Event<String> ON_PROGRESS = new
+ // Event<String>("onProgress");
+
+ public static void askConfirmation(final String confirmationTitle, final String confirmationText,
+ final Listener0 onConfirm) {
+ // ON_CONFIRMATION_ASK.fire(new ConfirmationAsk(confirmationTitle,
+ // confirmationText, onConfirm, new Listener0() {
+ // @Override
+ // public void onEvent() {
+ // // Do nothing
+ // }
+ // }));
+ }
+
+ public static void askConfirmation(final String confirmationTitle, final String confirmationText,
+ final Listener0 onConfirm, final Listener0 onCancel) {
+ // ON_CONFIRMATION_ASK.fire(new ConfirmationAsk(confirmationTitle,
+ // confirmationText, onConfirm, onCancel));
+ }
+
+ public static void error(final String message) {
+ // ON_NOTIFY.fire(Level.error, message);
+ }
+
+ public static String getCls(final Level level) {
+ switch (level) {
+ case info:
+ return "k-stm-info-icon";
+ case important:
+ return "k-stm-imp-icon";
+ case veryImportant:
+ return "k-stm-verimp-icon";
+ case error:
+ default:
+ return "k-stm-error-icon";
+ }
+ }
+
+ public static AbstractImagePrototype getImage(final Level level) {
+ switch (level) {
+ case info:
+ return images.info();
+ case important:
+ return images.important();
+ case veryImportant:
+ return images.alert();
+ case error:
+ default:
+ return images.error();
+ }
+ }
+
+ public static void hideProgress() {
+ // ON_HIDE_PROGRESS.fire();
+ }
+
+ public static void important(final String message) {
+ // ON_NOTIFY.fire(Level.important, message);
+ }
+
+ public static void info(final String message) {
+ // ON_NOTIFY.fire(Level.info, message);
+ }
+
+ public static void showAlertMessage(final String title, final String message) {
+ // ON_ALERT.fire(title, message);
+ }
+
+ public static void showProgress(final String text) {
+ // ON_PROGRESS.fire(text);
+ }
+
+ public static void showProgressLoading() {
+ // ON_PROGRESS.fire(i18n.t("Loading"));
+ }
+
+ public static void showProgressProcessing() {
+ // ON_PROGRESS.fire(i18n.t("Processing"));
+ }
+
+ public static void showProgressSaving() {
+ // ON_PROGRESS.fire(i18n.t("Saving"));
+ }
+
+ public static void showProgressStarting() {
+ // ON_PROGRESS.fire(i18n.t("Starting"));
+ }
+
+ public static void veryImportant(final String message) {
+ // ON_NOTIFY.fire(Level.veryImportant, message);
+ }
+
+ private OldNotifyUser() {
+ }
+
+ public OldNotifyUser(final I18nTranslationService i18n, final Images images) {
+ this();
+ OldNotifyUser.i18n = i18n;
+ OldNotifyUser.images = images;
+ }
+
+ public void addAlerter(final Listener2<String, String> listener) {
+ // ON_ALERT.add(listener);
+ }
+
+ public void addConfirmationAsker(final Listener<ConfirmationAsk> listener) {
+ // ON_CONFIRMATION_ASK.add(listener);
+ }
+
+ public void addHideProgressNotifier(final Listener0 listener) {
+ // ON_HIDE_PROGRESS.add(listener);
+ }
+
+ public void addNotifier(final Listener2<Level, String> listener) {
+ // ON_NOTIFY.add(listener);
+ }
+
+ public void addProgressNotifier(final Listener<String> listener) {
+ // ON_PROGRESS.add(listener);
+ }
+
+}
Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/rte/basic/RTEditorPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/rte/basic/RTEditorPanel.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/rte/basic/RTEditorPanel.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -31,7 +31,7 @@
import org.ourproject.kune.platf.client.actions.ui.GuiBindingsRegister;
import org.ourproject.kune.platf.client.actions.ui.OldGuiActionDescrip;
import org.ourproject.kune.platf.client.shortcuts.GlobalShortcutRegister;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import org.ourproject.kune.platf.client.ui.rte.RichTextArea;
import org.ourproject.kune.platf.client.ui.rte.RichTextArea.FontSize;
import org.ourproject.kune.platf.client.ui.rte.RichTextArea.Formatter;
@@ -173,7 +173,7 @@
// + selection.getRangeAt(0).toHTML();
// NotifyUser.info(info);
final String info = "range count: " + getFstRange().getCommonAncestorContainer().getFirstChild().getNodeName();
- NotifyUser.info(info);
+ OldNotifyUser.info(info);
}
public String getSelectionText() {
Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/rte/basic/RTEditorPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/rte/basic/RTEditorPresenter.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/rte/basic/RTEditorPresenter.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -47,7 +47,7 @@
import org.ourproject.kune.platf.client.actions.ui.PushButtonDescriptor;
import org.ourproject.kune.platf.client.actions.ui.ToolbarSeparatorDescriptor;
import org.ourproject.kune.platf.client.actions.ui.ToolbarSeparatorDescriptor.Type;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import org.ourproject.kune.platf.client.ui.palette.ColorWebSafePalette;
import org.ourproject.kune.platf.client.ui.rte.RichTextArea;
import org.ourproject.kune.platf.client.ui.rte.edithtml.EditHtmlDialog;
@@ -135,7 +135,7 @@
final String author = session.isLogged() ? session.getCurrentUser().getShortName()
: i18n.t("anonymous user");
if (view.isAnythingSelected()) {
- NotifyUser.askConfirmation(i18n.t("Insert a comment"),
+ OldNotifyUser.askConfirmation(i18n.t("Insert a comment"),
i18n.t("Include the selected text in the comment?"), new Listener0() {
@Override
public void onEvent() {
@@ -453,7 +453,7 @@
@Override
public void actionPerformed(final ActionEvent actionEvent) {
- NotifyUser.showProgressLoading();
+ OldNotifyUser.showProgressLoading();
if (insCharListener == null) {
insCharListener = new Listener<String>() {
@Override
@@ -468,7 +468,7 @@
insCharDialog.setOnInsertSpecialChar(insCharListener);
insCharDialog.show();
hideLinkCtxMenu();
- NotifyUser.hideProgress();
+ OldNotifyUser.hideProgress();
}
}
Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/rte/saving/RTESavingEditorPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/rte/saving/RTESavingEditorPanel.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/rte/saving/RTESavingEditorPanel.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -21,7 +21,7 @@
import org.ourproject.kune.platf.client.actions.ui.GuiBindingsRegister;
import org.ourproject.kune.platf.client.shortcuts.GlobalShortcutRegister;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import org.ourproject.kune.platf.client.ui.rte.basic.RTEditorPanel;
import org.ourproject.kune.platf.client.ui.rte.basic.RTEditorPresenter;
@@ -38,7 +38,7 @@
public void askConfirmation(final String confirmationTitle, final String confirmationText,
final Listener0 onConfirm, final Listener0 onCancel) {
- NotifyUser.askConfirmation(confirmationTitle, confirmationText, onConfirm, onCancel);
+ OldNotifyUser.askConfirmation(confirmationTitle, confirmationText, onConfirm, onCancel);
}
}
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/OldAbstractFoldableContentActions.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/OldAbstractFoldableContentActions.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/OldAbstractFoldableContentActions.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -31,7 +31,7 @@
import org.ourproject.kune.platf.client.actions.ActionToolbarMenuRadioDescriptor;
import org.ourproject.kune.platf.client.actions.ActionToolbarPosition;
import org.ourproject.kune.platf.client.actions.RadioMustBeChecked;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import org.ourproject.kune.workspace.client.ctxnav.ContextNavigator;
import org.ourproject.kune.workspace.client.cxt.ContextActionRegistry;
import org.ourproject.kune.workspace.client.cxt.ContextPropEditor;
@@ -172,7 +172,7 @@
AccessRolDTO.Administrator, CONTENT_TOPBAR, new Listener<StateToken>() {
@Override
public void onEvent(final StateToken token) {
- NotifyUser.info("Sorry, in development");
+ OldNotifyUser.info("Sorry, in development");
}
});
delContainer.setParentMenuTitle(parentMenuTitle);
@@ -245,7 +245,7 @@
AccessRolDTO.Editor, CONTENT_TOPBAR, new Listener<StateToken>() {
@Override
public void onEvent(final StateToken stateToken) {
- NotifyUser.showProgressProcessing();
+ OldNotifyUser.showProgressProcessing();
session.check(new AsyncCallbackSimple<Void>() {
@Override
public void onSuccess(final Void result) {
@@ -256,16 +256,16 @@
editor.edit(session.getContentState().getContent(), new Listener<String>() {
@Override
public void onEvent(final String html) {
- NotifyUser.showProgressSaving();
+ OldNotifyUser.showProgressSaving();
contentServiceProvider.get().save(session.getUserHash(), stateToken, html,
new AsyncCallback<Void>() {
@Override
public void onFailure(final Throwable caught) {
- NotifyUser.hideProgress();
+ OldNotifyUser.hideProgress();
if (caught instanceof SessionExpiredException) {
errorHandler.doSessionExpired();
} else {
- NotifyUser.error(i18n.t("Error saving document. Retrying..."));
+ OldNotifyUser.error(i18n.t("Error saving document. Retrying..."));
errorHandler.process(caught);
editor.onSaveFailed();
}
@@ -273,7 +273,7 @@
@Override
public void onSuccess(final Void param) {
- NotifyUser.hideProgress();
+ OldNotifyUser.hideProgress();
session.getContentState().setContent(html);
editor.onSavedSuccessful();
}
@@ -298,7 +298,7 @@
}
});
editor.setFileMenuTitle(fileMenuTitle);
- NotifyUser.hideProgress();
+ OldNotifyUser.hideProgress();
}
});
}
@@ -356,13 +356,13 @@
new Listener<StateToken>() {
@Override
public void onEvent(final StateToken stateToken) {
- NotifyUser.showProgressProcessing();
+ OldNotifyUser.showProgressProcessing();
contentServiceProvider.get().addFolder(session.getUserHash(), stateToken, defaultName,
contentTypeId, new AsyncCallbackSimple<StateContainerDTO>() {
@Override
public void onSuccess(final StateContainerDTO state) {
contextNavigator.setEditOnNextStateChange(true);
- stateManager.setRetrievedState(state);
+ stateManager.setRetrievedStateAndGo(state);
}
});
}
@@ -381,14 +381,14 @@
AccessRolDTO.Editor, CONTEXT_TOPBAR, new Listener0() {
@Override
public void onEvent() {
- NotifyUser.showProgressProcessing();
+ OldNotifyUser.showProgressProcessing();
contentServiceProvider.get().addContent(session.getUserHash(),
session.getCurrentState().getStateToken(), description, typeId,
new AsyncCallbackSimple<StateContentDTO>() {
@Override
public void onSuccess(final StateContentDTO state) {
contextNavigator.setEditOnNextStateChange(true);
- stateManager.setRetrievedState(state);
+ stateManager.setRetrievedStateAndGo(state);
}
});
}
@@ -461,14 +461,14 @@
new Listener<StateToken>() {
@Override
public void onEvent(final StateToken token) {
- NotifyUser.showProgressProcessing();
+ OldNotifyUser.showProgressProcessing();
contentServiceProvider.get().setAsDefaultContent(session.getUserHash(), token,
new AsyncCallbackSimple<ContentSimpleDTO>() {
@Override
public void onSuccess(final ContentSimpleDTO defContent) {
session.getCurrentState().getGroup().setDefaultContent(defContent);
- NotifyUser.hideProgress();
- NotifyUser.info(i18n.t("Content selected as the group homepage"));
+ OldNotifyUser.hideProgress();
+ OldNotifyUser.info(i18n.t("Content selected as the group homepage"));
}
});
}
@@ -569,7 +569,7 @@
AccessRolDTO.Editor, CONTENT_TOPBAR, new Listener<StateToken>() {
@Override
public void onEvent(final StateToken stateToken) {
- NotifyUser.important(i18n.t("Sorry, this functionality is currently in development"));
+ OldNotifyUser.important(i18n.t("Sorry, this functionality is currently in development"));
}
});
translateContent.setParentMenuTitle(fileMenuTitle);
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/ctxnav/ContextNavigatorPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/ctxnav/ContextNavigatorPanel.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/ctxnav/ContextNavigatorPanel.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -22,7 +22,7 @@
import org.ourproject.kune.platf.client.actions.ActionItem;
import org.ourproject.kune.platf.client.actions.ActionManager;
import org.ourproject.kune.platf.client.actions.MenuItemsContainer;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton;
import cc.kune.core.shared.domain.ContentStatus;
@@ -244,7 +244,7 @@
public boolean doBeforeNodeDrop(final TreePanel treePanel, final TreeNode target, final DragData dragData,
final String point, final DragDrop source, final TreeNode dropNode,
final DropNodeCallback dropNodeCallback) {
- NotifyUser.info("Drag & drop of contents in development");
+ OldNotifyUser.info("Drag & drop of contents in development");
return false;
}
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/ContextPropEditorPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/ContextPropEditorPresenter.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/cxt/ContextPropEditorPresenter.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -22,7 +22,7 @@
import java.util.Date;
import java.util.List;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import org.ourproject.kune.workspace.client.title.EntitySubTitle;
import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
@@ -62,12 +62,12 @@
}
public void addAuthor(final String authorShortName) {
- NotifyUser.showProgressProcessing();
+ OldNotifyUser.showProgressProcessing();
final StateContainerDTO currentState = session.getContentState();
contentServiceProvider.get().addAuthor(session.getUserHash(), currentState.getStateToken(), authorShortName,
new AsyncCallbackSimple<Void>() {
public void onSuccess(final Void result) {
- NotifyUser.hideProgress();
+ OldNotifyUser.hideProgress();
stateManager.reload();
}
});
@@ -82,12 +82,12 @@
}
public void delAuthor(final String authorShortName) {
- NotifyUser.showProgressProcessing();
+ OldNotifyUser.showProgressProcessing();
final StateContainerDTO currentState = session.getContentState();
contentServiceProvider.get().removeAuthor(session.getUserHash(), currentState.getStateToken(), authorShortName,
new AsyncCallbackSimple<Void>() {
public void onSuccess(final Void result) {
- NotifyUser.hideProgress();
+ OldNotifyUser.hideProgress();
stateManager.reload();
}
});
@@ -98,12 +98,12 @@
}
public void doChangeLanguage(final String langCode) {
- NotifyUser.showProgressProcessing();
+ OldNotifyUser.showProgressProcessing();
final StateContainerDTO currentState = session.getContentState();
contentServiceProvider.get().setLanguage(session.getUserHash(), currentState.getStateToken(), langCode,
new AsyncCallbackSimple<I18nLanguageDTO>() {
public void onSuccess(final I18nLanguageDTO lang) {
- NotifyUser.hideProgress();
+ OldNotifyUser.hideProgress();
}
});
}
@@ -113,12 +113,12 @@
}
public void setPublishedOn(final Date publishedOn) {
- NotifyUser.showProgressProcessing();
+ OldNotifyUser.showProgressProcessing();
final StateContainerDTO currentState = session.getContentState();
contentServiceProvider.get().setPublishedOn(session.getUserHash(), currentState.getStateToken(), publishedOn,
new AsyncCallbackSimple<Void>() {
public void onSuccess(final Void result) {
- NotifyUser.hideProgress();
+ OldNotifyUser.hideProgress();
entitySubTitle.setContentDate(publishedOn);
}
});
@@ -179,13 +179,13 @@
}
public void setTags(final String tagsString) {
- NotifyUser.showProgressProcessing();
+ OldNotifyUser.showProgressProcessing();
final StateContainerDTO currentState = session.getContentState();
contentServiceProvider.get().setTags(session.getUserHash(), currentState.getStateToken(), tagsString,
new AsyncCallbackSimple<TagCloudResult>() {
public void onSuccess(final TagCloudResult result) {
tagsSummaryProvider.get().setGroupTags(result);
- NotifyUser.hideProgress();
+ OldNotifyUser.hideProgress();
}
});
}
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/hello/HelloWorldModule.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/hello/HelloWorldModule.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/hello/HelloWorldModule.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -33,7 +33,7 @@
import org.ourproject.kune.platf.client.actions.ui.PushButtonDescriptor;
import org.ourproject.kune.platf.client.services.AbstractExtendedModule;
import org.ourproject.kune.platf.client.shortcuts.GlobalShortcutRegister;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import org.ourproject.kune.workspace.client.editor.ContentEditor;
import org.ourproject.kune.workspace.client.hello.HelloWorldModule.HelloWorldPanel.HelloWorldPresenter;
import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton;
@@ -194,7 +194,7 @@
public void showMessage() {
// i18n use with parameters
- NotifyUser.info(i18n.t("Hello [%s]!", "world"));
+ OldNotifyUser.info(i18n.t("Hello [%s]!", "world"));
}
}
@@ -216,9 +216,9 @@
public void actionPerformed(final ActionEvent actionEvent) {
if (actionEvent.getEvent().getCtrlKey()) {
- NotifyUser.info("Hello world action fired with ctrl key pressed");
+ OldNotifyUser.info("Hello world action fired with ctrl key pressed");
} else {
- NotifyUser.info("Hello world action fired");
+ OldNotifyUser.info("Hello world action fired");
}
}
}
@@ -298,7 +298,7 @@
i(GlobalShortcutRegister.class).put(Shortcut.getShortcut(true, Character.valueOf('S')),
new AbstractExtendedAction() {
public void actionPerformed(final ActionEvent event) {
- NotifyUser.info("Global Ctrl+S pressed");
+ OldNotifyUser.info("Global Ctrl+S pressed");
}
});
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/I18nTranslatorPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/I18nTranslatorPanel.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/I18nTranslatorPanel.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -22,7 +22,7 @@
import org.ourproject.kune.platf.client.services.Images;
import org.ourproject.kune.platf.client.ui.AbstractSearcherPanel;
import org.ourproject.kune.platf.client.ui.dialogs.BasicDialog;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import org.ourproject.kune.workspace.client.search.SiteBottomTrayButton;
import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton;
@@ -309,10 +309,10 @@
}
private void setLanguage(final String language) {
- NotifyUser.showProgressLoading();
+ OldNotifyUser.showProgressLoading();
query(unTransStore, unTransGrid, language);
query(transStore, transGrid, language);
- NotifyUser.hideProgress();
+ OldNotifyUser.hideProgress();
}
private String[] splitNT(final String textWithNT) {
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/I18nTranslatorPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/I18nTranslatorPresenter.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/i18n/I18nTranslatorPresenter.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -20,7 +20,7 @@
package org.ourproject.kune.workspace.client.i18n;
import org.ourproject.kune.platf.client.View;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import cc.kune.core.client.i18n.I18nUITranslationService;
import cc.kune.core.client.rpcservices.I18nServiceAsync;
@@ -53,25 +53,25 @@
}
public void doShowTranslator() {
- NotifyUser.showProgressLoading();
+ OldNotifyUser.showProgressLoading();
if (session.isLogged()) {
view.show();
} else {
- NotifyUser.info(i18n.t("Sign in or register to help with the translation"));
+ OldNotifyUser.info(i18n.t("Sign in or register to help with the translation"));
}
- NotifyUser.hideProgress();
+ OldNotifyUser.hideProgress();
}
public void doTranslation(final String id, final String trKey, final String translation) {
- NotifyUser.showProgressSaving();
+ OldNotifyUser.showProgressSaving();
i18nService.setTranslation(session.getUserHash(), id, translation, new AsyncCallback<String>() {
public void onFailure(final Throwable caught) {
- NotifyUser.hideProgress();
- NotifyUser.error(i18n.t("Server error saving the translation"));
+ OldNotifyUser.hideProgress();
+ OldNotifyUser.error(i18n.t("Server error saving the translation"));
}
public void onSuccess(final String result) {
- NotifyUser.hideProgress();
+ OldNotifyUser.hideProgress();
i18n.setTranslationAfterSave(trKey, result);
}
});
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/licensewizard/LicenseChangeAction.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/licensewizard/LicenseChangeAction.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/licensewizard/LicenseChangeAction.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -19,7 +19,7 @@
*/
package org.ourproject.kune.workspace.client.licensewizard;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import cc.kune.core.client.rpcservices.GroupServiceAsync;
import cc.kune.core.client.state.Session;
@@ -47,11 +47,11 @@
}
public void changeLicense(final StateToken token, final LicenseDTO license, final Listener0 onSuccess) {
- NotifyUser.showProgressProcessing();
+ OldNotifyUser.showProgressProcessing();
groupService.get().changeDefLicense(session.getUserHash(), token, license, new AsyncCallback<Void>() {
public void onFailure(final Throwable caught) {
- NotifyUser.hideProgress();
- NotifyUser.error(i18n.t("Error changing default group license"));
+ OldNotifyUser.hideProgress();
+ OldNotifyUser.error(i18n.t("Error changing default group license"));
}
public void onSuccess(final Void result) {
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/licensewizard/LicenseWizardPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/licensewizard/LicenseWizardPresenter.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/licensewizard/LicenseWizardPresenter.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -22,7 +22,7 @@
import java.util.List;
import org.ourproject.kune.platf.client.View;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import org.ourproject.kune.workspace.client.licensewizard.pages.LicenseWizardFirstFormView;
import org.ourproject.kune.workspace.client.licensewizard.pages.LicenseWizardFrdFormView;
import org.ourproject.kune.workspace.client.licensewizard.pages.LicenseWizardSndFormView;
@@ -120,7 +120,7 @@
}
} else if (in(sndForm)) {
licenseShortName = "by-sa" + ccVers;
- NotifyUser.error("Programatic error in LicenseWizardPresenter");
+ OldNotifyUser.error("Programatic error in LicenseWizardPresenter");
} else {
licenseShortName = frdForm.getSelectedLicense();
}
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/oldsn/other/AddAsBuddieHeaderButton.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/oldsn/other/AddAsBuddieHeaderButton.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/oldsn/other/AddAsBuddieHeaderButton.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -27,7 +27,7 @@
import org.ourproject.kune.platf.client.actions.PropertyChangeEvent;
import org.ourproject.kune.platf.client.actions.PropertyChangeListener;
import org.ourproject.kune.platf.client.actions.ui.ButtonDescriptor;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import org.ourproject.kune.workspace.client.entityheader.EntityHeader;
import cc.kune.core.client.resources.icons.IconConstants;
@@ -68,7 +68,7 @@
public void actionPerformed(final ActionEvent event) {
chatEngine.get().addNewBuddie(session.getCurrentState().getGroup().getShortName());
- NotifyUser.info("Added as buddie. Waiting buddie response");
+ OldNotifyUser.info("Added as buddie. Waiting buddie response");
setEnabled(false);
}
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/options/logo/EntityOptionsLogoPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/options/logo/EntityOptionsLogoPanel.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/options/logo/EntityOptionsLogoPanel.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -20,7 +20,7 @@
package org.ourproject.kune.workspace.client.options.logo;
import org.ourproject.kune.platf.client.ui.dialogs.DefaultFormUtils;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import org.ourproject.kune.workspace.client.options.EntityOptionsView;
import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton;
@@ -101,7 +101,7 @@
final FieldListenerAdapter changeListener = new FieldListenerAdapter() {
@Override
public void onChange(final Field field, final Object newVal, final Object oldVal) {
- NotifyUser.info("change");
+ OldNotifyUser.info("change");
// setEnableFileField();
}
};
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/options/logo/EntityOptionsLogoPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/options/logo/EntityOptionsLogoPresenter.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/options/logo/EntityOptionsLogoPresenter.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -21,7 +21,7 @@
import org.ourproject.kune.chat.client.ChatEngine;
import org.ourproject.kune.platf.client.View;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import org.ourproject.kune.workspace.client.entityheader.EntityHeader;
import org.ourproject.kune.workspace.client.options.EntityOptions;
@@ -64,7 +64,7 @@
}
public void onSubmitFailed(final int httpStatus, final String responseText) {
- NotifyUser.error("Error setting the logo: " + responseText);
+ OldNotifyUser.error("Error setting the logo: " + responseText);
}
protected abstract void setState();
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/options/pscape/EntityOptionsPublicSpaceConfPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/options/pscape/EntityOptionsPublicSpaceConfPanel.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/options/pscape/EntityOptionsPublicSpaceConfPanel.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -19,7 +19,7 @@
*/
package org.ourproject.kune.workspace.client.options.pscape;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import org.ourproject.kune.workspace.client.options.EntityOptionsView;
import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton;
import org.ourproject.kune.workspace.client.themes.WsThemeSelector;
@@ -96,7 +96,7 @@
final Panel stylesPanel = new Panel();
final ClickHandler clickHandler = new ClickHandler() {
public void onClick(final ClickEvent event) {
- NotifyUser.info(TextUtils.IN_DEVELOPMENT_P);
+ OldNotifyUser.info(TextUtils.IN_DEVELOPMENT_P);
}
};
for (int i = 1; i <= 6; i++) {
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/rate/RateItPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/rate/RateItPresenter.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/rate/RateItPresenter.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -19,7 +19,7 @@
*/
package org.ourproject.kune.workspace.client.rate;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
import cc.kune.core.client.rpcservices.AsyncCallbackSimple;
@@ -94,12 +94,12 @@
isRating = true;
final Double newValue = Math.abs(starClicked + 1d - currentRate) < 0.01 ? currentRate - 0.5d : starClicked + 1d;
setRatePanel(newValue);
- NotifyUser.showProgressProcessing();
+ OldNotifyUser.showProgressProcessing();
final StateAbstractDTO currentState = session.getCurrentState();
contentServiceProvider.get().rateContent(session.getUserHash(), currentState.getStateToken(), newValue,
new AsyncCallbackSimple<RateResult>() {
public void onSuccess(final RateResult result) {
- NotifyUser.hideProgress();
+ OldNotifyUser.hideProgress();
// NotifyUser.info(i18n.t("Content rated"));
if (currentState.getStateToken().equals(session.getCurrentStateToken())) {
session.getContentState().setRate(result);
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/search/SiteSearcherPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/search/SiteSearcherPresenter.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/search/SiteSearcherPresenter.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -22,7 +22,7 @@
import java.util.HashMap;
import org.ourproject.kune.platf.client.View;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import cc.kune.core.client.state.StateManager;
@@ -59,11 +59,11 @@
}
public void doSearch(final String text) {
- NotifyUser.showProgressLoading();
+ OldNotifyUser.showProgressLoading();
searchHistory.put(text, null);
view.search(text, currentSearch);
view.show();
- NotifyUser.hideProgress();
+ OldNotifyUser.hideProgress();
}
public void doSearchOfType(final String text, final SiteSearcherType typeOfSearch) {
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/site/WorkspaceNotifyUser.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/site/WorkspaceNotifyUser.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/site/WorkspaceNotifyUser.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -20,8 +20,8 @@
package org.ourproject.kune.workspace.client.site;
import org.ourproject.kune.platf.client.ui.noti.ConfirmationAsk;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser.Level;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser.Level;
import org.ourproject.kune.workspace.client.site.msg.ToastMessage;
import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton;
@@ -34,7 +34,7 @@
public class WorkspaceNotifyUser {
- public WorkspaceNotifyUser(final NotifyUser notifyUser, final I18nTranslationService i18n,
+ public WorkspaceNotifyUser(final OldNotifyUser notifyUser, final I18nTranslationService i18n,
final Provider<ToastMessage> toaster, final Provider<WorkspaceSkeleton> ws) {
notifyUser.addProgressNotifier(new Listener<String>() {
@Override
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/ToastMessage.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/ToastMessage.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/ToastMessage.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -19,7 +19,7 @@
*/
package org.ourproject.kune.workspace.client.site.msg;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser.Level;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser.Level;
public interface ToastMessage {
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/ToastMessagePanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/ToastMessagePanel.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/ToastMessagePanel.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -19,8 +19,8 @@
*/
package org.ourproject.kune.workspace.client.site.msg;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser.Level;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser.Level;
import com.google.gwt.user.client.ui.HTML;
import com.gwtextux.client.widgets.window.ToastWindow;
@@ -34,7 +34,7 @@
HTML html = new HTML(message);
html.addStyleName("kune-Margin-Medium-trbl");
ToastWindow toastWindow = new ToastWindow(title, html.toString());
- String iconCls = NotifyUser.getCls(level);
+ String iconCls = OldNotifyUser.getCls(level);
toastWindow.setIconCls(iconCls);
toastWindow.show();
}
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/ToastMessagePresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/ToastMessagePresenter.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/ToastMessagePresenter.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -20,7 +20,7 @@
package org.ourproject.kune.workspace.client.site.msg;
import org.ourproject.kune.platf.client.View;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser.Level;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser.Level;
public class ToastMessagePresenter implements ToastMessage {
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/ToastMessageView.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/ToastMessageView.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/site/msg/ToastMessageView.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -20,7 +20,7 @@
package org.ourproject.kune.workspace.client.site.msg;
import org.ourproject.kune.platf.client.View;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser.Level;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser.Level;
public interface ToastMessageView extends View {
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesearch/SiteSearchPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesearch/SiteSearchPanel.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/sitebar/sitesearch/SiteSearchPanel.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -21,7 +21,7 @@
import org.ourproject.kune.platf.client.services.Images;
import org.ourproject.kune.platf.client.ui.AbstractToolbar;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton;
import com.google.gwt.event.dom.client.BlurEvent;
@@ -72,7 +72,7 @@
});
searchButton.addClickHandler(new ClickHandler() {
public void onClick(final ClickEvent event) {
- NotifyUser.showProgressProcessing();
+ OldNotifyUser.showProgressProcessing();
presenter.doSearch(searchTextBox.getText());
}
});
@@ -80,7 +80,7 @@
public void onKeyUp(final KeyUpEvent event) {
if (event.getNativeKeyCode() == KeyCodes.KEY_ENTER) {
if (searchTextBox.getText().length() > 0) {
- NotifyUser.showProgressProcessing();
+ OldNotifyUser.showProgressProcessing();
presenter.doSearch(searchTextBox.getText());
}
}
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsThemeManager.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsThemeManager.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsThemeManager.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -19,7 +19,7 @@
\*/
package org.ourproject.kune.workspace.client.themes;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import cc.kune.core.client.rpcservices.AsyncCallbackSimple;
import cc.kune.core.client.rpcservices.GroupServiceAsync;
@@ -66,7 +66,7 @@
}
public void changeTheme(final StateToken token, final WsTheme newTheme) {
- NotifyUser.showProgressProcessing();
+ OldNotifyUser.showProgressProcessing();
groupServiceProvider.get().changeGroupWsTheme(session.getUserHash(), token, newTheme.getName(),
new AsyncCallbackSimple<Void>() {
@Override
@@ -74,19 +74,19 @@
if (session.getCurrentState().getStateToken().getGroup().equals(token.getGroup())) {
setTheme(newTheme);
}
- NotifyUser.hideProgress();
+ OldNotifyUser.hideProgress();
}
});
}
protected void onChangeGroupWsTheme(final WsTheme newTheme) {
- NotifyUser.showProgressProcessing();
+ OldNotifyUser.showProgressProcessing();
groupServiceProvider.get().changeGroupWsTheme(session.getUserHash(), session.getCurrentState().getStateToken(),
newTheme.getName(), new AsyncCallbackSimple<Void>() {
@Override
public void onSuccess(final Void result) {
setTheme(newTheme);
- NotifyUser.hideProgress();
+ OldNotifyUser.hideProgress();
}
});
}
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/title/RenameAction.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/title/RenameAction.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/title/RenameAction.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -19,7 +19,7 @@
*/
package org.ourproject.kune.workspace.client.title;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import cc.kune.core.client.errors.NameInUseException;
import cc.kune.core.client.errors.NameNotPermittedException;
@@ -60,26 +60,26 @@
public void rename(final StateToken token, final String oldName, final String newName) {
if (!newName.equals(oldName)) {
- NotifyUser.showProgress(i18n.t("Renaming"));
+ OldNotifyUser.showProgress(i18n.t("Renaming"));
final AsyncCallback<StateAbstractDTO> asyncCallback = new AsyncCallback<StateAbstractDTO>() {
@Override
public void onFailure(final Throwable caught) {
- NotifyUser.hideProgress();
+ OldNotifyUser.hideProgress();
if (caught instanceof NameInUseException) {
- NotifyUser.error(i18n.tWithNT("This name already exists",
+ OldNotifyUser.error(i18n.tWithNT("This name already exists",
"It is used when a file or a folder with the same name already exists"));
} else if (caught instanceof NameNotPermittedException) {
- NotifyUser.error(i18n.tWithNT("This name is not permitted",
+ OldNotifyUser.error(i18n.tWithNT("This name is not permitted",
"It is used when a file or a folder does not have a permitted name"));
} else {
- NotifyUser.error(i18n.t("Error renaming"));
+ OldNotifyUser.error(i18n.t("Error renaming"));
}
// onFail.fire(token, oldName);
}
@Override
public void onSuccess(final StateAbstractDTO state) {
- NotifyUser.hideProgress();
+ OldNotifyUser.hideProgress();
session.setCurrentState(state);
// onSuccess.fire(token, state.getTitle());
}
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/upload/FileUploaderDialog.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/upload/FileUploaderDialog.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/upload/FileUploaderDialog.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -19,7 +19,7 @@
\*/
package org.ourproject.kune.workspace.client.upload;
-import org.ourproject.kune.platf.client.ui.noti.NotifyUser;
+import org.ourproject.kune.platf.client.ui.noti.OldNotifyUser;
import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton;
import cc.kune.common.client.utils.TextUtils;
@@ -59,7 +59,7 @@
public void destroy() {
if (hasUploadingFiles()) {
dialog.stopUpload();
- NotifyUser.important(i18n.t("Upload cancelled after signing out"));
+ OldNotifyUser.important(i18n.t("Upload cancelled after signing out"));
}
if (dialog != null) {
dialog.destroy();
@@ -138,7 +138,7 @@
public boolean onBeforeAdd(final UploadDialog source, final String filename) {
final boolean mustAdd = presenter.checkFolderChange();
if (!mustAdd) {
- NotifyUser.important(i18n.t("Please, wait until current uploads are finished to upload new files into another location"));
+ OldNotifyUser.important(i18n.t("Please, wait until current uploads are finished to upload new files into another location"));
}
return mustAdd;
}
@@ -151,7 +151,7 @@
@Override
public void onUploadComplete(final UploadDialog source) {
if (!dialog.isVisible()) {
- NotifyUser.info(i18n.t("Upload completed"));
+ OldNotifyUser.info(i18n.t("Upload completed"));
traybarButton.destroy();
traybarButton = null;
}
@@ -170,7 +170,7 @@
private void showError() {
if (!dialog.isVisible()) {
- NotifyUser.veryImportant(i18n.t("Error uploading"));
+ OldNotifyUser.veryImportant(i18n.t("Error uploading"));
}
}
Modified: trunk/src/test/java/cc/kune/core/client/actions/ActionRegistryByTypeTest.java
===================================================================
--- trunk/src/test/java/cc/kune/core/client/actions/ActionRegistryByTypeTest.java 2011-04-25 17:07:00 UTC (rev 1318)
+++ trunk/src/test/java/cc/kune/core/client/actions/ActionRegistryByTypeTest.java 2011-04-26 09:28:16 UTC (rev 1319)
@@ -8,9 +8,9 @@
import cc.kune.common.client.actions.ui.descrip.GuiActionDescrip;
import cc.kune.core.shared.domain.utils.AccessRights;
-import cc.kune.gspace.client.actions.perspective.ActionPerspective;
-import cc.kune.gspace.client.actions.perspective.EditPerspective;
-import cc.kune.gspace.client.actions.perspective.ViewPerspective;
+import cc.kune.gspace.client.actions.perspective.ActionsGroup;
+import cc.kune.gspace.client.actions.perspective.EditActionsGroup;
+import cc.kune.gspace.client.actions.perspective.ViewActionsGroup;
import com.google.inject.Provider;
@@ -37,19 +37,19 @@
@Test
public void testDontGetCurrentActionsOfOtherPerspective() {
- Mockito.when(action.getValue(ActionPerspective.KEY)).thenReturn(ViewPerspective.class);
- assertEquals(0, actionRegistryByType.getCurrentActions(null, false, allRights, EditPerspective.class).size());
+ Mockito.when(action.getValue(ActionsGroup.KEY)).thenReturn(ViewActionsGroup.class);
+ assertEquals(0, actionRegistryByType.getCurrentActions(null, false, allRights, EditActionsGroup.class).size());
}
@Test
public void testGetCurrentActions() {
- Mockito.when(action.getValue(ActionPerspective.KEY)).thenReturn(null);
+ Mockito.when(action.getValue(ActionsGroup.KEY)).thenReturn(null);
assertEquals(1, actionRegistryByType.getCurrentActions(null, false, allRights, null).size());
}
@Test
public void testGetCurrentActionsOfPerspective() {
- Mockito.when(action.getValue(ActionPerspective.KEY)).thenReturn(EditPerspective.class);
- assertEquals(1, actionRegistryByType.getCurrentActions(null, false, allRights, EditPerspective.class).size());
+ Mockito.when(action.getValue(ActionsGroup.KEY)).thenReturn(EditActionsGroup.class);
+ assertEquals(1, actionRegistryByType.getCurrentActions(null, false, allRights, EditActionsGroup.class).size());
}
}
1
0
r1318 - in trunk/src/main/java/cc/kune: chat/client chat/client/snd core/client/state core/public docs/client docs/client/viewers
by Vicente J. Ruiz Jurado 25 Apr '11
by Vicente J. Ruiz Jurado 25 Apr '11
25 Apr '11
Author: vjrj_
Date: 2011-04-25 19:07:00 +0200 (Mon, 25 Apr 2011)
New Revision: 1318
Added:
trunk/src/main/java/cc/kune/chat/client/snd/SndClickEvent.java
trunk/src/main/java/cc/kune/docs/client/viewers/AbstractFolderViewerPanel.java
trunk/src/main/java/cc/kune/docs/client/viewers/FolderItemWidget.java
trunk/src/main/java/cc/kune/docs/client/viewers/FolderItemWidget.ui.xml
trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsFlowPanel.java
trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsFlowPanel.ui.xml
trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsTablePanel.java
trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsTablePanel.ui.xml
Removed:
trunk/src/main/java/cc/kune/chat/client/snd/ClickEvent.java
trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.java
trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.ui.xml
Modified:
trunk/src/main/java/cc/kune/chat/client/KuneUnattendedPresenter.java
trunk/src/main/java/cc/kune/chat/client/snd/KuneSoundManager.java
trunk/src/main/java/cc/kune/core/client/state/ContentCacheDefault.java
trunk/src/main/java/cc/kune/core/public/ws.css
trunk/src/main/java/cc/kune/docs/client/DocsGinModule.java
trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java
Log:
FolderViewer as Table
Modified: trunk/src/main/java/cc/kune/chat/client/KuneUnattendedPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/chat/client/KuneUnattendedPresenter.java 2011-04-18 17:25:02 UTC (rev 1317)
+++ trunk/src/main/java/cc/kune/chat/client/KuneUnattendedPresenter.java 2011-04-25 17:07:00 UTC (rev 1318)
@@ -20,7 +20,7 @@
package cc.kune.chat.client;
import cc.kune.chat.client.ChatClientDefault.ChatClientAction;
-import cc.kune.chat.client.snd.ClickEvent;
+import cc.kune.chat.client.snd.SndClickEvent;
import com.calclab.hablar.core.client.mvp.HablarEventBus;
import com.calclab.hablar.signals.client.SignalPreferences;
@@ -45,7 +45,7 @@
final int unattendedChatsCount = unattendedManager.getSize();
if (unattendedChatsCount > 0 && active == false) {
active = true;
- ClickEvent.fire(eventBus);
+ SndClickEvent.fire(eventBus);
action.setBlink(true);
} else if (unattendedChatsCount == 0 && active == true) {
Deleted: trunk/src/main/java/cc/kune/chat/client/snd/ClickEvent.java
===================================================================
--- trunk/src/main/java/cc/kune/chat/client/snd/ClickEvent.java 2011-04-18 17:25:02 UTC (rev 1317)
+++ trunk/src/main/java/cc/kune/chat/client/snd/ClickEvent.java 2011-04-25 17:07:00 UTC (rev 1318)
@@ -1,58 +0,0 @@
-package cc.kune.chat.client.snd;
-
-import com.google.gwt.event.shared.EventHandler;
-import com.google.gwt.event.shared.GwtEvent;
-import com.google.gwt.event.shared.HandlerRegistration;
-
-import com.google.gwt.event.shared.HasHandlers;
-
-public class ClickEvent extends GwtEvent<ClickEvent.ClickHandler> {
-
- public interface HasClickHandlers extends HasHandlers {
- HandlerRegistration addClickHandler(ClickHandler handler);
- }
-
- public interface ClickHandler extends EventHandler {
- public void onClick(ClickEvent event);
- }
-
- private static final Type<ClickHandler> TYPE = new Type<ClickHandler>();
-
- public static void fire(HasHandlers source) {
- source.fireEvent(new ClickEvent());
- }
-
- public static Type<ClickHandler> getType() {
- return TYPE;
- }
-
-
- public ClickEvent() {
- }
-
- @Override
- public Type<ClickHandler> getAssociatedType() {
- return TYPE;
- }
-
- @Override
- protected void dispatch(ClickHandler handler) {
- handler.onClick(this);
- }
-
- @Override
- public boolean equals(Object obj) {
- return super.equals(obj);
- }
-
- @Override
- public int hashCode() {
- return super.hashCode();
- }
-
- @Override
- public String toString() {
- return "ClickEvent["
- + "]";
- }
-}
Modified: trunk/src/main/java/cc/kune/chat/client/snd/KuneSoundManager.java
===================================================================
--- trunk/src/main/java/cc/kune/chat/client/snd/KuneSoundManager.java 2011-04-18 17:25:02 UTC (rev 1317)
+++ trunk/src/main/java/cc/kune/chat/client/snd/KuneSoundManager.java 2011-04-25 17:07:00 UTC (rev 1318)
@@ -10,9 +10,9 @@
public KuneSoundManager(final EventBus eventBus, final SoundSignalsConfig soundConfig) {
this.soundConfig = soundConfig;
- eventBus.addHandler(ClickEvent.getType(), new ClickEvent.ClickHandler() {
+ eventBus.addHandler(SndClickEvent.getType(), new SndClickEvent.SndClickHandler() {
@Override
- public void onClick(final ClickEvent event) {
+ public void onClick(final SndClickEvent event) {
createSoundManagerIfNeeded();
soundManager.play();
}
Copied: trunk/src/main/java/cc/kune/chat/client/snd/SndClickEvent.java (from rev 1313, trunk/src/main/java/cc/kune/chat/client/snd/ClickEvent.java)
===================================================================
--- trunk/src/main/java/cc/kune/chat/client/snd/SndClickEvent.java (rev 0)
+++ trunk/src/main/java/cc/kune/chat/client/snd/SndClickEvent.java 2011-04-25 17:07:00 UTC (rev 1318)
@@ -0,0 +1,55 @@
+package cc.kune.chat.client.snd;
+
+import com.google.gwt.event.shared.EventHandler;
+import com.google.gwt.event.shared.GwtEvent;
+import com.google.gwt.event.shared.HandlerRegistration;
+import com.google.gwt.event.shared.HasHandlers;
+
+public class SndClickEvent extends GwtEvent<SndClickEvent.SndClickHandler> {
+
+ public interface HasClickHandlers extends HasHandlers {
+ HandlerRegistration addSndClickHandler(SndClickHandler handler);
+ }
+
+ public interface SndClickHandler extends EventHandler {
+ public void onClick(SndClickEvent event);
+ }
+
+ private static final Type<SndClickHandler> TYPE = new Type<SndClickHandler>();
+
+ public static void fire(final HasHandlers source) {
+ source.fireEvent(new SndClickEvent());
+ }
+
+ public static Type<SndClickHandler> getType() {
+ return TYPE;
+ }
+
+ public SndClickEvent() {
+ }
+
+ @Override
+ protected void dispatch(final SndClickHandler handler) {
+ handler.onClick(this);
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ return super.equals(obj);
+ }
+
+ @Override
+ public Type<SndClickHandler> getAssociatedType() {
+ return TYPE;
+ }
+
+ @Override
+ public int hashCode() {
+ return super.hashCode();
+ }
+
+ @Override
+ public String toString() {
+ return "SndClickEvent[" + "]";
+ }
+}
Modified: trunk/src/main/java/cc/kune/core/client/state/ContentCacheDefault.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/state/ContentCacheDefault.java 2011-04-18 17:25:02 UTC (rev 1317)
+++ trunk/src/main/java/cc/kune/core/client/state/ContentCacheDefault.java 2011-04-25 17:07:00 UTC (rev 1318)
@@ -42,7 +42,7 @@
this.server = server;
this.eventBus = eventBus;
this.cacheMap = new HashMap<StateToken, StateAbstractDTO>();
- useCache = false;
+ useCache = true;
}
@Override
Modified: trunk/src/main/java/cc/kune/core/public/ws.css
===================================================================
--- trunk/src/main/java/cc/kune/core/public/ws.css 2011-04-18 17:25:02 UTC (rev 1317)
+++ trunk/src/main/java/cc/kune/core/public/ws.css 2011-04-25 17:07:00 UTC (rev 1318)
@@ -844,7 +844,7 @@
white-space: nowrap;
}
*/
-.k-sn-mainpanel .x-btn button,.k-sn-mainpanel button, button.k-button {
+.k-sn-mainpanel .x-btn button,.k-sn-mainpanel button,button.k-button {
font: 13px 'Ubuntu', arial;
border: 2px solid #CCCCCC;
cursor: pointer;
@@ -867,13 +867,14 @@
padding-left: 25px !important; */
}
-.k-sn-mainpanel .x-btn button:hover,.k-sn-mainpanel button:hover, .k-button button:hover {
+.k-sn-mainpanel .x-btn button:hover,.k-sn-mainpanel button:hover,.k-button button:hover
+ {
border: 2px orange solid;
background: #f0f0f0;
color: #855585;
}
-.k-sn-mainpanel .x-btn button:active,.k-sn-mainpanel button:active, .k-button
+.k-sn-mainpanel .x-btn button:active,.k-sn-mainpanel button:active,.k-button
button:active {
border-top-color: #ffffff;
background: #ffffff;
@@ -1107,4 +1108,4 @@
.k-def-docbtn span {
font-size: 13px !important;
-}
\ No newline at end of file
+}
Modified: trunk/src/main/java/cc/kune/docs/client/DocsGinModule.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocsGinModule.java 2011-04-18 17:25:02 UTC (rev 1317)
+++ trunk/src/main/java/cc/kune/docs/client/DocsGinModule.java 2011-04-25 17:07:00 UTC (rev 1318)
@@ -3,7 +3,7 @@
import cc.kune.docs.client.actions.DocsClientActions;
import cc.kune.docs.client.viewers.DocViewerPanel;
import cc.kune.docs.client.viewers.DocViewerPresenter;
-import cc.kune.docs.client.viewers.FolderViewerPanel;
+import cc.kune.docs.client.viewers.FolderViewerAsTablePanel;
import cc.kune.docs.client.viewers.FolderViewerPresenter;
import com.google.inject.Singleton;
@@ -18,7 +18,7 @@
bindPresenter(DocViewerPresenter.class, DocViewerPresenter.DocViewerView.class, DocViewerPanel.class,
DocViewerPresenter.DocViewerProxy.class);
bindPresenter(FolderViewerPresenter.class, FolderViewerPresenter.FolderViewerView.class,
- FolderViewerPanel.class, FolderViewerPresenter.FolderViewerProxy.class);
+ FolderViewerAsTablePanel.class, FolderViewerPresenter.FolderViewerProxy.class);
}
}
Added: trunk/src/main/java/cc/kune/docs/client/viewers/AbstractFolderViewerPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/AbstractFolderViewerPanel.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/AbstractFolderViewerPanel.java 2011-04-25 17:07:00 UTC (rev 1318)
@@ -0,0 +1,55 @@
+package cc.kune.docs.client.viewers;
+
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
+import cc.kune.common.client.ui.UiUtils;
+import cc.kune.core.shared.dto.StateContainerDTO;
+import cc.kune.docs.client.viewers.FolderViewerPresenter.FolderViewerView;
+import cc.kune.gspace.client.GSpaceArmor;
+
+import com.google.gwt.user.client.ui.InlineLabel;
+import com.google.gwt.user.client.ui.InsertPanel.ForIsWidget;
+import com.google.gwt.user.client.ui.Widget;
+import com.gwtplatform.mvp.client.ViewImpl;
+
+public abstract class AbstractFolderViewerPanel extends ViewImpl implements FolderViewerView {
+ protected final GSpaceArmor gsArmor;
+ protected Widget widget;
+
+ public AbstractFolderViewerPanel(final GSpaceArmor gsArmor) {
+ this.gsArmor = gsArmor;
+ }
+
+ @Override
+ public Widget asWidget() {
+ return widget;
+ }
+
+ @Override
+ public void attach() {
+ final ForIsWidget docContainer = gsArmor.getDocContainer();
+ docContainer.add(widget);
+ }
+
+ @Override
+ public void clear() {
+ gsArmor.getSubheaderToolbar().clear();
+ UiUtils.clear(gsArmor.getDocContainer());
+ UiUtils.clear(gsArmor.getDocHeader());
+ }
+
+ @Override
+ public void detach() {
+ clear();
+ }
+
+ @Override
+ public void setActions(final GuiActionDescCollection actions) {
+ gsArmor.getSubheaderToolbar().clear();
+ gsArmor.getSubheaderToolbar().addAll(actions);
+ }
+
+ @Override
+ public void setContainer(final StateContainerDTO state) {
+ gsArmor.getDocHeader().add(new InlineLabel(state.getTitle()));
+ }
+}
Property changes on: trunk/src/main/java/cc/kune/docs/client/viewers/AbstractFolderViewerPanel.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/docs/client/viewers/FolderItemWidget.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderItemWidget.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/FolderItemWidget.java 2011-04-25 17:07:00 UTC (rev 1318)
@@ -0,0 +1,116 @@
+package cc.kune.docs.client.viewers;
+
+import cc.kune.common.client.actions.ui.ActionSimplePanel;
+
+import com.google.gwt.core.client.GWT;
+import com.google.gwt.event.dom.client.BlurEvent;
+import com.google.gwt.event.dom.client.FocusEvent;
+import com.google.gwt.event.dom.client.HasAllFocusHandlers;
+import com.google.gwt.event.dom.client.HasAllMouseHandlers;
+import com.google.gwt.event.dom.client.HasClickHandlers;
+import com.google.gwt.event.dom.client.HasDoubleClickHandlers;
+import com.google.gwt.event.dom.client.MouseOutEvent;
+import com.google.gwt.event.dom.client.MouseOverEvent;
+import com.google.gwt.resources.client.ImageResource;
+import com.google.gwt.uibinder.client.UiBinder;
+import com.google.gwt.uibinder.client.UiField;
+import com.google.gwt.uibinder.client.UiHandler;
+import com.google.gwt.user.client.ui.Composite;
+import com.google.gwt.user.client.ui.FlowPanel;
+import com.google.gwt.user.client.ui.FocusPanel;
+import com.google.gwt.user.client.ui.HasText;
+import com.google.gwt.user.client.ui.Image;
+import com.google.gwt.user.client.ui.InlineLabel;
+import com.google.gwt.user.client.ui.SimplePanel;
+import com.google.gwt.user.client.ui.Widget;
+
+public class FolderItemWidget extends Composite implements HasText {
+
+ interface FolderItemWidgetUiBinder extends UiBinder<Widget, FolderItemWidget> {
+ }
+
+ private static FolderItemWidgetUiBinder uiBinder = GWT.create(FolderItemWidgetUiBinder.class);
+
+ @UiField
+ FlowPanel flow;
+ @UiField
+ FocusPanel focusPanel;
+ @UiField
+ Image icon;
+ @UiField
+ SimplePanel menu;
+ @UiField
+ InlineLabel title;
+
+ public FolderItemWidget(final ImageResource iconResource, final String title) {
+ initWidget(uiBinder.createAndBindUi(this));
+ this.title.setText(title);
+ icon.setResource(iconResource);
+ }
+
+ private void clearFocusStyles() {
+ focusPanel.removeStyleDependentName("nofocused");
+ focusPanel.removeStyleDependentName("focused");
+ }
+
+ HasClickHandlers getRowClick() {
+ return focusPanel;
+ }
+
+ HasDoubleClickHandlers getRowDoubleClick() {
+ return focusPanel;
+ }
+
+ HasAllFocusHandlers getRowFocus() {
+ return focusPanel;
+ }
+
+ HasAllMouseHandlers getRowMouse() {
+ return focusPanel;
+ }
+
+ @Override
+ public String getText() {
+ return title.getText();
+ }
+
+ @UiHandler("focusPanel")
+ public void onBlur(final BlurEvent event) {
+ clearFocusStyles();
+ focusPanel.addStyleDependentName("nofocused");
+ }
+
+ @UiHandler("focusPanel")
+ public void onFocus(final FocusEvent event) {
+ clearFocusStyles();
+ focusPanel.addStyleDependentName("focused");
+ }
+
+ @UiHandler("focusPanel")
+ public void onOut(final MouseOutEvent event) {
+ clearFocusStyles();
+ focusPanel.addStyleDependentName("nofocused");
+ }
+
+ @UiHandler("focusPanel")
+ public void onOver(final MouseOverEvent event) {
+ clearFocusStyles();
+ focusPanel.addStyleDependentName("focused");
+ }
+
+ public void setMenu(final ActionSimplePanel toolbar) {
+ menu.add(toolbar);
+ }
+
+ public void setSelect(final boolean selected) {
+ clearFocusStyles();
+ focusPanel.removeStyleDependentName(selected ? "noselected" : "selected");
+ focusPanel.addStyleDependentName(selected ? "selected" : "noselected");
+ }
+
+ @Override
+ public void setText(final String text) {
+ title.setText(text);
+ }
+
+}
Property changes on: trunk/src/main/java/cc/kune/docs/client/viewers/FolderItemWidget.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/docs/client/viewers/FolderItemWidget.ui.xml
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderItemWidget.ui.xml (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/FolderItemWidget.ui.xml 2011-04-25 17:07:00 UTC (rev 1318)
@@ -0,0 +1,56 @@
+<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
+<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
+ xmlns:co="urn:ui:cc.kune.core.client" xmlns:g="urn:import:com.google.gwt.user.client.ui">
+ <ui:style>
+ @external .k-folderitem-focus;
+ @external .k-folderitem-focus-focused;
+ @external .k-folderitem-focus-selected;
+ @external .k-folderitem-focus-noselected;
+ @external .k-folderitem-focus-nofocused;
+ .k-folderitem-focus {
+ background-color: none;
+ }
+
+ .k-folderitem-focus-focused {
+ background-color: #F2F5FD;
+ }
+
+ .k-folderitem-focus-selected {
+ background-color: #E3E9FF;
+ }
+
+ .k-folderitem-focus-noselected {
+ }
+
+ .k-folderitem-focus-nofocused {
+
+ }
+
+ .flow {
+ cursor: pointer;
+ border-bottom: 1px solid #F3F3F3;
+ line-height: 1.3em;
+ height: 28px;
+ }
+
+ .title {
+ font-size: 16px;
+ margin-left: 5px;
+ }
+
+ .icon {
+ margin: 5px;
+ }
+
+ .menu {
+ float: right;
+ }
+ </ui:style>
+ <g:FocusPanel ui:field="focusPanel" styleName="{style.k-folderitem-focus}">
+ <g:FlowPanel styleName="{style.flow}" ui:field="flow">
+ <g:Image styleName="{style.icon}" ui:field="icon" />
+ <g:InlineLabel styleName="{style.title}" ui:field="title" />
+ <g:SimplePanel styleName="{style.menu}" ui:field="menu" />
+ </g:FlowPanel>
+ </g:FocusPanel>
+</ui:UiBinder>
\ No newline at end of file
Property changes on: trunk/src/main/java/cc/kune/docs/client/viewers/FolderItemWidget.ui.xml
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Copied: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsFlowPanel.java (from rev 1316, trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.java)
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsFlowPanel.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsFlowPanel.java 2011-04-25 17:07:00 UTC (rev 1318)
@@ -0,0 +1,83 @@
+package cc.kune.docs.client.viewers;
+
+import cc.kune.common.client.actions.gxtui.AbstractGxtMenuGui;
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescrip;
+import cc.kune.common.client.actions.ui.descrip.MenuDescriptor;
+import cc.kune.common.client.ui.BasicThumb;
+import cc.kune.core.shared.dto.StateContainerDTO;
+import cc.kune.gspace.client.GSpaceArmor;
+
+import com.google.gwt.core.client.GWT;
+import com.google.gwt.event.dom.client.ClickEvent;
+import com.google.gwt.event.dom.client.ClickHandler;
+import com.google.gwt.event.dom.client.DoubleClickHandler;
+import com.google.gwt.uibinder.client.UiBinder;
+import com.google.gwt.uibinder.client.UiField;
+import com.google.gwt.user.client.ui.FlowPanel;
+import com.google.gwt.user.client.ui.HTML;
+import com.google.gwt.user.client.ui.Widget;
+import com.google.inject.Inject;
+
+public class FolderViewerAsFlowPanel extends AbstractFolderViewerPanel {
+ interface FolderViewerAsFlowPanelUiBinder extends UiBinder<Widget, FolderViewerAsFlowPanel> {
+ }
+ private static FolderViewerAsFlowPanelUiBinder uiBinder = GWT.create(FolderViewerAsFlowPanelUiBinder.class);
+
+ @UiField
+ FlowPanel flow;
+ int ICONLABELMAXSIZE = 20;
+ int ICONSIZE = 100;
+
+ @Inject
+ public FolderViewerAsFlowPanel(final GSpaceArmor gsArmor) {
+ super(gsArmor);
+ widget = uiBinder.createAndBindUi(this);
+ }
+
+ @Override
+ public void addItem(final FolderItemDescriptor item, final ClickHandler clickHandler,
+ final DoubleClickHandler doubleClickHandler) {
+ // In this viewer we don't use the clickHandler from the presenter
+ flow.add(createThumb(item.getText(), item.getIcon(), item.getTooltip(), "", item.getActionCollection(),
+ doubleClickHandler));
+ }
+
+ @Override
+ public void clear() {
+ flow.clear();
+ super.clear();
+ }
+
+ public BasicThumb createThumb(final String text, final Object icon, final String tooltip,
+ final String tooltipTitle, final GuiActionDescCollection menuitems,
+ final DoubleClickHandler doubleClickHandler) {
+ final BasicThumb thumb = new BasicThumb(icon, ICONSIZE, text, ICONLABELMAXSIZE, false);
+ final MenuDescriptor menu = new MenuDescriptor();
+ menu.setStandalone(true);
+ menu.putValue(AbstractGxtMenuGui.MENU_POSITION, AbstractGxtMenuGui.MenuPosition.bl);
+ for (final GuiActionDescrip item : menuitems) {
+ item.setParent(menu);
+ }
+ final ClickHandler clickHand = new ClickHandler() {
+ @Override
+ public void onClick(final ClickEvent event) {
+ menu.show(thumb);
+ }
+ };
+ thumb.addClickHandler(clickHand);
+ thumb.addDoubleClickHandler(doubleClickHandler);
+ gsArmor.getSubheaderToolbar().add(menu);
+ gsArmor.getSubheaderToolbar().addAll(menuitems);
+ thumb.setTooltip(tooltipTitle, tooltip);
+ thumb.setLabelVisible(true);
+ return thumb;
+ }
+
+ @Override
+ public void setContainer(final StateContainerDTO state) {
+ super.setContainer(state);
+ gsArmor.getDocContainer().add(new HTML("<b>Note:</b> This GUI is provisional<br/>"));
+ }
+
+}
Property changes on: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsFlowPanel.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Copied: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsFlowPanel.ui.xml (from rev 1315, trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.ui.xml)
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsFlowPanel.ui.xml (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsFlowPanel.ui.xml 2011-04-25 17:07:00 UTC (rev 1318)
@@ -0,0 +1,8 @@
+<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
+<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
+ xmlns:g='urn:import:com.google.gwt.user.client.ui'>
+ <ui:style>
+ </ui:style>
+ <g:FlowPanel ui:field="flow" width="100%" height="100%">
+ </g:FlowPanel>
+</ui:UiBinder>
\ No newline at end of file
Property changes on: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsFlowPanel.ui.xml
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsTablePanel.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsTablePanel.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsTablePanel.java 2011-04-25 17:07:00 UTC (rev 1318)
@@ -0,0 +1,107 @@
+package cc.kune.docs.client.viewers;
+
+import cc.kune.common.client.actions.ui.ActionSimplePanel;
+import cc.kune.common.client.actions.ui.bind.GuiProvider;
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescrip;
+import cc.kune.common.client.actions.ui.descrip.MenuDescriptor;
+import cc.kune.core.client.resources.CoreResources;
+import cc.kune.core.shared.dto.StateContainerDTO;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.gspace.client.GSpaceArmor;
+
+import com.google.gwt.core.client.GWT;
+import com.google.gwt.event.dom.client.ClickEvent;
+import com.google.gwt.event.dom.client.ClickHandler;
+import com.google.gwt.event.dom.client.DoubleClickHandler;
+import com.google.gwt.event.dom.client.MouseOutEvent;
+import com.google.gwt.event.dom.client.MouseOutHandler;
+import com.google.gwt.event.dom.client.MouseOverEvent;
+import com.google.gwt.event.dom.client.MouseOverHandler;
+import com.google.gwt.resources.client.ImageResource;
+import com.google.gwt.uibinder.client.UiBinder;
+import com.google.gwt.uibinder.client.UiField;
+import com.google.gwt.user.client.ui.FlexTable;
+import com.google.gwt.user.client.ui.Widget;
+import com.google.inject.Inject;
+
+public class FolderViewerAsTablePanel extends AbstractFolderViewerPanel {
+
+ interface FolderViewerAsTablePanelUiBinder extends UiBinder<Widget, FolderViewerAsTablePanel> {
+ }
+
+ private static FolderViewerAsTablePanelUiBinder uiBinder = GWT.create(FolderViewerAsTablePanelUiBinder.class);
+
+ @UiField
+ FlexTable flex;
+
+ private final GuiProvider guiProvider;
+ private final I18nTranslationService i18n;
+ private final CoreResources res;
+ protected FolderItemWidget selected;
+
+ @Inject
+ public FolderViewerAsTablePanel(final GSpaceArmor gsArmor, final I18nTranslationService i18n,
+ final GuiProvider guiProvider, final CoreResources res) {
+ super(gsArmor);
+ this.i18n = i18n;
+ this.guiProvider = guiProvider;
+ this.res = res;
+ widget = uiBinder.createAndBindUi(this);
+ }
+
+ @Override
+ public void addItem(final FolderItemDescriptor item, final ClickHandler clickHandler,
+ final DoubleClickHandler doubleClickHandler) {
+ final int rowCount = flex.getRowCount();
+ final FolderItemWidget itemWidget = new FolderItemWidget((ImageResource) item.getIcon(), item.getText());
+ final ActionSimplePanel toolbar = new ActionSimplePanel(guiProvider);
+ itemWidget.setMenu(toolbar);
+ // Tooltip.to(itemWidget, item.getTooltip());
+ final MenuDescriptor menu = new MenuDescriptor(i18n.t("Actions"));
+ menu.withIcon(res.arrowdown()).withStyles("k-def-docbtn, k-btn, k-button");
+ menu.setStandalone(false);
+ menu.setVisible(false);
+ toolbar.add(menu);
+ for (final GuiActionDescrip menuItem : item.getActionCollection()) {
+ menuItem.setParent(menu);
+ toolbar.add(menuItem);
+ }
+ itemWidget.getRowClick().addClickHandler(new ClickHandler() {
+ @Override
+ public void onClick(final ClickEvent event) {
+ if (selected != null) {
+ selected.setSelect(false);
+ }
+ itemWidget.setSelect(true);
+ selected = itemWidget;
+ }
+ });
+ itemWidget.getRowDoubleClick().addDoubleClickHandler(doubleClickHandler);
+ itemWidget.getRowMouse().addMouseOutHandler(new MouseOutHandler() {
+ @Override
+ public void onMouseOut(final MouseOutEvent event) {
+ menu.setVisible(false);
+ // itemWidget.setSelect(false);
+ // menu.hide();
+ }
+ });
+ itemWidget.getRowMouse().addMouseOverHandler(new MouseOverHandler() {
+ @Override
+ public void onMouseOver(final MouseOverEvent event) {
+ menu.setVisible(true);
+ }
+ });
+ flex.setWidget(rowCount + 1, 0, itemWidget);
+ }
+
+ @Override
+ public void clear() {
+ flex.clear();
+ super.clear();
+ }
+
+ @Override
+ public void setContainer(final StateContainerDTO state) {
+ super.setContainer(state);
+ }
+}
Property changes on: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsTablePanel.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsTablePanel.ui.xml
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsTablePanel.ui.xml (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsTablePanel.ui.xml 2011-04-25 17:07:00 UTC (rev 1318)
@@ -0,0 +1,8 @@
+<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
+<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
+ xmlns:g="urn:import:com.google.gwt.user.client.ui">
+ <ui:style>
+ </ui:style>
+ <g:FlexTable ui:field="flex" width="100%" height="100%">
+ </g:FlexTable>
+</ui:UiBinder>
\ No newline at end of file
Property changes on: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerAsTablePanel.ui.xml
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Deleted: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.java 2011-04-18 17:25:02 UTC (rev 1317)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.java 2011-04-25 17:07:00 UTC (rev 1318)
@@ -1,115 +0,0 @@
-package cc.kune.docs.client.viewers;
-
-import cc.kune.common.client.actions.gxtui.AbstractGxtMenuGui;
-import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
-import cc.kune.common.client.actions.ui.descrip.GuiActionDescrip;
-import cc.kune.common.client.actions.ui.descrip.MenuDescriptor;
-import cc.kune.common.client.ui.BasicThumb;
-import cc.kune.common.client.ui.UiUtils;
-import cc.kune.core.shared.dto.StateContainerDTO;
-import cc.kune.docs.client.viewers.FolderViewerPresenter.FolderViewerView;
-import cc.kune.gspace.client.GSpaceArmor;
-
-import com.google.gwt.core.client.GWT;
-import com.google.gwt.event.dom.client.ClickEvent;
-import com.google.gwt.event.dom.client.ClickHandler;
-import com.google.gwt.event.dom.client.DoubleClickHandler;
-import com.google.gwt.uibinder.client.UiBinder;
-import com.google.gwt.uibinder.client.UiField;
-import com.google.gwt.user.client.ui.FlowPanel;
-import com.google.gwt.user.client.ui.HTML;
-import com.google.gwt.user.client.ui.InlineLabel;
-import com.google.gwt.user.client.ui.InsertPanel.ForIsWidget;
-import com.google.gwt.user.client.ui.Widget;
-import com.google.inject.Inject;
-import com.gwtplatform.mvp.client.ViewImpl;
-
-public class FolderViewerPanel extends ViewImpl implements FolderViewerView {
- interface FolderViewerPanelUiBinder extends UiBinder<Widget, FolderViewerPanel> {
- }
- private static FolderViewerPanelUiBinder uiBinder = GWT.create(FolderViewerPanelUiBinder.class);
-
- @UiField
- FlowPanel flow;
-
- private final GSpaceArmor gsArmor;
-
- int ICONLABELMAXSIZE = 20;
- int ICONSIZE = 100;
- private final Widget widget;
-
- @Inject
- public FolderViewerPanel(final GSpaceArmor wsArmor) {
- this.gsArmor = wsArmor;
- widget = uiBinder.createAndBindUi(this);
- }
-
- @Override
- public void addItem(final FolderItemDescriptor item, final DoubleClickHandler doubleClickHandler) {
- flow.add(createThumb(item.getText(), item.getIcon(), item.getTooltip(), "", item.getActionCollection(),
- doubleClickHandler));
- }
-
- @Override
- public Widget asWidget() {
- return widget;
- }
-
- @Override
- public void attach() {
- final ForIsWidget docContainer = gsArmor.getDocContainer();
- docContainer.add(widget);
- }
-
- @Override
- public void clear() {
- flow.clear();
- gsArmor.getSubheaderToolbar().clear();
- UiUtils.clear(gsArmor.getDocContainer());
- UiUtils.clear(gsArmor.getDocHeader());
- }
-
- public BasicThumb createThumb(final String text, final Object icon, final String tooltip,
- final String tooltipTitle, final GuiActionDescCollection menuitems,
- final DoubleClickHandler doubleClickHandler) {
- final BasicThumb thumb = new BasicThumb(icon, ICONSIZE, text, ICONLABELMAXSIZE, false);
- final MenuDescriptor menu = new MenuDescriptor();
- menu.setStandalone(true);
- menu.putValue(AbstractGxtMenuGui.MENU_POSITION, AbstractGxtMenuGui.MenuPosition.bl);
- for (final GuiActionDescrip item : menuitems) {
- item.setParent(menu);
- }
- final ClickHandler clickHand = new ClickHandler() {
- @Override
- public void onClick(final ClickEvent event) {
- menu.show(thumb);
- }
- };
-
- thumb.addClickHandler(clickHand);
- thumb.addDoubleClickHandler(doubleClickHandler);
- gsArmor.getSubheaderToolbar().add(menu);
- gsArmor.getSubheaderToolbar().addAll(menuitems);
- thumb.setTooltip(tooltipTitle, tooltip);
- thumb.setLabelVisible(true);
- return thumb;
- }
-
- @Override
- public void detach() {
- clear();
- }
-
- @Override
- public void setActions(final GuiActionDescCollection actions) {
- gsArmor.getSubheaderToolbar().clear();
- gsArmor.getSubheaderToolbar().addAll(actions);
- }
-
- @Override
- public void setContainer(final StateContainerDTO state) {
- gsArmor.getDocContainer().add(new HTML("<b>Note:</b> This GUI is provisional<br/>"));
- gsArmor.getDocHeader().add(new InlineLabel(state.getTitle()));
- }
-
-}
Deleted: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.ui.xml
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.ui.xml 2011-04-18 17:25:02 UTC (rev 1317)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.ui.xml 2011-04-25 17:07:00 UTC (rev 1318)
@@ -1,20 +0,0 @@
-<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
-<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
- xmlns:g='urn:import:com.google.gwt.user.client.ui' xmlns:f='urn:import:org.waveprotocol.box.webclient.widget.frame'
- xmlns:w='urn:import:org.waveprotocol.wave.client.widget.common'>
- <ui:style>
- .wavePanel {
- margin: 0 0 0 0;
- }
-
- .waveHolder {
- position: absolute;
- top: 0;
- bottom: 0;
- left: 0;
- right: 0;
- }
- </ui:style>
- <g:FlowPanel ui:field="flow" width="100%" height="100%">
- </g:FlowPanel>
-</ui:UiBinder>
\ No newline at end of file
Modified: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java 2011-04-18 17:25:02 UTC (rev 1317)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java 2011-04-25 17:07:00 UTC (rev 1318)
@@ -28,6 +28,8 @@
import cc.kune.gspace.client.tool.ContentViewer;
import cc.kune.gspace.client.tool.ContentViewerSelector;
+import com.google.gwt.event.dom.client.ClickEvent;
+import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.event.dom.client.DoubleClickEvent;
import com.google.gwt.event.dom.client.DoubleClickHandler;
import com.google.gwt.event.shared.EventBus;
@@ -49,7 +51,7 @@
public interface FolderViewerView extends View {
- void addItem(FolderItemDescriptor item, DoubleClickHandler handler);
+ void addItem(FolderItemDescriptor item, ClickHandler clickHandler, DoubleClickHandler doubleClickHandler);
void attach();
@@ -103,8 +105,13 @@
// Don't show
NotifyUser.info("Deleted, don't show");
} else {
- getView().addItem(item, new DoubleClickHandler() {
+ getView().addItem(item, new ClickHandler() {
@Override
+ public void onClick(final ClickEvent event) {
+ stateManager.gotoStateToken(stateToken);
+ }
+ }, new DoubleClickHandler() {
+ @Override
public void onDoubleClick(final DoubleClickEvent event) {
stateManager.gotoStateToken(stateToken);
}
@@ -121,15 +128,17 @@
if (container.getContents().size() + container.getChilds().size() == 0) {
// FIXME
} else {
- for (final ContentSimpleDTO content : container.getContents()) {
- addItem(content.getTitle(), content.getTypeId(), content.getMimeType(), content.getStatus(),
- content.getStateToken(), content.getStateToken().copy().clearDocument(), content.getRights());
- }
+ // Folders
for (final ContainerSimpleDTO childFolder : container.getChilds()) {
addItem(childFolder.getName(), childFolder.getTypeId(), null, ContentStatus.publishedOnline,
childFolder.getStateToken(),
childFolder.getStateToken().copy().setFolder(childFolder.getParentFolderId()), containerRights);
}
+ // Other contents (docs, etc)
+ for (final ContentSimpleDTO content : container.getContents()) {
+ addItem(content.getTitle(), content.getTypeId(), content.getMimeType(), content.getStatus(),
+ content.getStateToken(), content.getStateToken().copy().clearDocument(), content.getRights());
+ }
}
}
@@ -155,7 +164,7 @@
// Used for previews
return null;
} else {
- return null; // i18n.t("Double click to open");
+ return i18n.t("Double click to open");
}
}
1
0
r1317 - in trunk/src/main/java/cc/kune: common common/client/actions/gwtui common/public core/client/sitebar core/client/state core/public docs/client/viewers domain msgs wave
by Vicente J. Ruiz Jurado 18 Apr '11
by Vicente J. Ruiz Jurado 18 Apr '11
18 Apr '11
Author: vjrj_
Date: 2011-04-18 19:25:02 +0200 (Mon, 18 Apr 2011)
New Revision: 1317
Modified:
trunk/src/main/java/cc/kune/common/KuneCommon.gwt.xml
trunk/src/main/java/cc/kune/common/client/actions/gwtui/AbstractGwtButtonGui.java
trunk/src/main/java/cc/kune/common/public/kune-common.css
trunk/src/main/java/cc/kune/core/client/sitebar/SitebarNewGroupLink.java
trunk/src/main/java/cc/kune/core/client/sitebar/SitebarSignInLink.java
trunk/src/main/java/cc/kune/core/client/sitebar/SitebarSignOutLink.java
trunk/src/main/java/cc/kune/core/client/state/ContentCacheDefault.java
trunk/src/main/java/cc/kune/core/public/ws.css
trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.java
trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.ui.xml
trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java
trunk/src/main/java/cc/kune/domain/Comment.java
trunk/src/main/java/cc/kune/domain/Container.java
trunk/src/main/java/cc/kune/domain/Content.java
trunk/src/main/java/cc/kune/msgs/KuneMsgs.gwt.xml
trunk/src/main/java/cc/kune/wave/KuneWave.gwt.xml
Log:
More work in docs
Modified: trunk/src/main/java/cc/kune/common/KuneCommon.gwt.xml
===================================================================
--- trunk/src/main/java/cc/kune/common/KuneCommon.gwt.xml 2011-04-18 11:45:11 UTC (rev 1316)
+++ trunk/src/main/java/cc/kune/common/KuneCommon.gwt.xml 2011-04-18 17:25:02 UTC (rev 1317)
@@ -2,12 +2,6 @@
<module>
<!-- Inherit the core Web Toolkit stuff. -->
<inherits name='com.google.gwt.user.User' />
- <!-- Inherit the default GWT style sheet. You can change -->
- <!-- the theme of your GWT application by uncommenting -->
- <!-- any one of the following lines. -->
- <!-- <inherits name='com.google.gwt.user.theme.standard.Standard'/> -->
- <!-- <inherits name='com.google.gwt.user.theme.chrome.Chrome'/> -->
- <!-- <inherits name='com.google.gwt.user.theme.dark.Dark'/> -->
<!-- Other module inherits -->
<!-- Specify the app entry point class. -->
<!-- <entry-point class='cc.kune.msgs.client.KuneMessagesSampleEntryPoint'
Modified: trunk/src/main/java/cc/kune/common/client/actions/gwtui/AbstractGwtButtonGui.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/gwtui/AbstractGwtButtonGui.java 2011-04-18 11:45:11 UTC (rev 1316)
+++ trunk/src/main/java/cc/kune/common/client/actions/gwtui/AbstractGwtButtonGui.java 2011-04-18 17:25:02 UTC (rev 1317)
@@ -73,7 +73,7 @@
} else {
button = new Button();
}
- button.addStyleName("oc-button");
+ button.addStyleName("k-button");
button.addStyleName("k-btn");
button.addStyleName("k-5corners");
layout();
Modified: trunk/src/main/java/cc/kune/common/public/kune-common.css
===================================================================
--- trunk/src/main/java/cc/kune/common/public/kune-common.css 2011-04-18 11:45:11 UTC (rev 1316)
+++ trunk/src/main/java/cc/kune/common/public/kune-common.css 2011-04-18 17:25:02 UTC (rev 1317)
@@ -160,7 +160,7 @@
margin: 5px;
}
-.k-dialog-btn,.k-btn {
+.k-dialog-btn {
text-shadow: 1px 1px 1px #FFFFFF;
font-weight: bold;
-moz-user-select: none;
Modified: trunk/src/main/java/cc/kune/core/client/sitebar/SitebarNewGroupLink.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sitebar/SitebarNewGroupLink.java 2011-04-18 11:45:11 UTC (rev 1316)
+++ trunk/src/main/java/cc/kune/core/client/sitebar/SitebarNewGroupLink.java 2011-04-18 17:25:02 UTC (rev 1317)
@@ -52,7 +52,7 @@
@Inject
public SitebarNewGroupLink(final SitebarNewGroupAction action) {
super(action);
- setStyles("k-no-backimage, k-btn-sitebar, k-fl");
+ setStyles("k-no-backimage, k-btn-sitebar, k-fl, k-noborder, k-nobackcolor");
setParent(SitebarActionsPresenter.RIGHT_TOOLBAR);
}
}
Modified: trunk/src/main/java/cc/kune/core/client/sitebar/SitebarSignInLink.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sitebar/SitebarSignInLink.java 2011-04-18 11:45:11 UTC (rev 1316)
+++ trunk/src/main/java/cc/kune/core/client/sitebar/SitebarSignInLink.java 2011-04-18 17:25:02 UTC (rev 1317)
@@ -63,7 +63,7 @@
// setParent(SitebarActionsPresenter.RIGHT_TOOLBAR);
setId(SITE_SIGN_IN);
setVisible(!session.isLogged());
- setStyles("k-no-backimage, k-btn-sitebar, k-fl");
+ setStyles("k-no-backimage, k-btn-sitebar, k-fl, k-noborder, k-nobackcolor");
setParent(SitebarActionsPresenter.RIGHT_TOOLBAR);
session.onUserSignIn(true, new UserSignInHandler() {
@Override
Modified: trunk/src/main/java/cc/kune/core/client/sitebar/SitebarSignOutLink.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sitebar/SitebarSignOutLink.java 2011-04-18 11:45:11 UTC (rev 1316)
+++ trunk/src/main/java/cc/kune/core/client/sitebar/SitebarSignOutLink.java 2011-04-18 17:25:02 UTC (rev 1317)
@@ -135,7 +135,7 @@
setId(SITE_SIGN_OUT);
setParent(SitebarActionsPresenter.RIGHT_TOOLBAR);
setVisible(session.isLogged());
- setStyles("k-no-backimage, k-btn-sitebar, k-fl");
+ setStyles("k-no-backimage, k-btn-sitebar, k-fl, k-noborder, k-nobackcolor");
session.onUserSignIn(true, new UserSignInHandler() {
@Override
public void onUserSignIn(final UserSignInEvent event) {
Modified: trunk/src/main/java/cc/kune/core/client/state/ContentCacheDefault.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/state/ContentCacheDefault.java 2011-04-18 11:45:11 UTC (rev 1316)
+++ trunk/src/main/java/cc/kune/core/client/state/ContentCacheDefault.java 2011-04-18 17:25:02 UTC (rev 1317)
@@ -42,7 +42,7 @@
this.server = server;
this.eventBus = eventBus;
this.cacheMap = new HashMap<StateToken, StateAbstractDTO>();
- useCache = true;
+ useCache = false;
}
@Override
Modified: trunk/src/main/java/cc/kune/core/public/ws.css
===================================================================
--- trunk/src/main/java/cc/kune/core/public/ws.css 2011-04-18 11:45:11 UTC (rev 1316)
+++ trunk/src/main/java/cc/kune/core/public/ws.css 2011-04-18 17:25:02 UTC (rev 1317)
@@ -844,7 +844,7 @@
white-space: nowrap;
}
*/
-.k-sn-mainpanel .x-btn button,.k-sn-mainpanel button {
+.k-sn-mainpanel .x-btn button,.k-sn-mainpanel button, button.k-button {
font: 13px 'Ubuntu', arial;
border: 2px solid #CCCCCC;
cursor: pointer;
@@ -858,7 +858,7 @@
border-radius: 6px;
vertical-align: middle;
line-height: 2em !important;
- height: 26px !important;
+ /* height: 26px !important; */
font-weight: bold;
/*
font-size:small;
@@ -867,13 +867,14 @@
padding-left: 25px !important; */
}
-.k-sn-mainpanel .x-btn button:hover,.k-sn-mainpanel button:hover {
+.k-sn-mainpanel .x-btn button:hover,.k-sn-mainpanel button:hover, .k-button button:hover {
border: 2px orange solid;
background: #f0f0f0;
color: #855585;
}
-.k-sn-mainpanel .x-btn button:active,.k-sn-mainpanel button:active {
+.k-sn-mainpanel .x-btn button:active,.k-sn-mainpanel button:active, .k-button
+ button:active {
border-top-color: #ffffff;
background: #ffffff;
}
Modified: trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.java 2011-04-18 11:45:11 UTC (rev 1316)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.java 2011-04-18 17:25:02 UTC (rev 1317)
@@ -1,43 +1,20 @@
package cc.kune.docs.client.viewers;
-import org.waveprotocol.box.webclient.client.ClientIdGenerator;
-import org.waveprotocol.box.webclient.client.RemoteViewServiceMultiplexer;
-import org.waveprotocol.box.webclient.client.Session;
-import org.waveprotocol.box.webclient.client.SimpleWaveStore;
-import org.waveprotocol.box.webclient.client.StagesProvider;
-import org.waveprotocol.box.webclient.client.WaveWebSocketClient;
-import org.waveprotocol.box.webclient.search.WaveStore;
-import org.waveprotocol.box.webclient.widget.loading.LoadingIndicator;
-import org.waveprotocol.wave.client.account.ProfileManager;
-import org.waveprotocol.wave.client.account.impl.ProfileManagerImpl;
-import org.waveprotocol.wave.client.widget.common.ImplPanel;
-import org.waveprotocol.wave.model.id.IdGenerator;
-import org.waveprotocol.wave.model.wave.ParticipantId;
-import org.waveprotocol.wave.model.waveref.InvalidWaveRefException;
-import org.waveprotocol.wave.model.waveref.WaveRef;
-import org.waveprotocol.wave.util.escapers.GwtWaverefEncoder;
-
import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
-import cc.kune.common.client.errors.UIException;
import cc.kune.common.client.ui.UiUtils;
import cc.kune.core.shared.dto.StateContentDTO;
import cc.kune.docs.client.viewers.DocViewerPresenter.DocViewerView;
import cc.kune.gspace.client.GSpaceArmor;
import cc.kune.wave.client.WaveClientManager;
-import cc.kune.wave.client.WebClient;
import com.google.gwt.core.client.GWT;
-import com.google.gwt.dom.client.Document;
-import com.google.gwt.dom.client.Element;
import com.google.gwt.safehtml.shared.SafeHtmlUtils;
import com.google.gwt.uibinder.client.UiBinder;
import com.google.gwt.uibinder.client.UiField;
-import com.google.gwt.user.client.Command;
import com.google.gwt.user.client.ui.DeckPanel;
import com.google.gwt.user.client.ui.InlineHTML;
import com.google.gwt.user.client.ui.InlineLabel;
import com.google.gwt.user.client.ui.InsertPanel.ForIsWidget;
-import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.Widget;
import com.google.inject.Inject;
import com.gwtplatform.mvp.client.ViewImpl;
@@ -48,29 +25,29 @@
private static DocsViewerPanelUiBinder uiBinder = GWT.create(DocsViewerPanelUiBinder.class);
- private RemoteViewServiceMultiplexer channel;
+ // private RemoteViewServiceMultiplexer channel;
@UiField
DeckPanel deck;
private final GSpaceArmor gsArmor;
- private IdGenerator idGenerator;
- private final Element loading = new LoadingIndicator().getElement();
+ // private IdGenerator idGenerator;
+ // private final Element loading = new LoadingIndicator().getElement();
@UiField
InlineHTML onlyViewPanel;
- private ProfileManager profiles;
+ // private ProfileManager profiles;
/** The wave panel, if a wave is open. */
- private StagesProvider wave;
- private final WaveClientManager waveClientManager;
+ // private StagesProvider wave;
+ // private final WaveClientManager waveClientManager;
// @UiField
// FramedPanel waveFrame;
- @UiField
- ImplPanel waveHolder;
- private final WaveStore waveStore = new SimpleWaveStore();
+ // @UiField
+ // ImplPanel waveHolder;
+ // private final WaveStore waveStore = new SimpleWaveStore();
private final Widget widget;
@Inject
public DocViewerPanel(final GSpaceArmor wsArmor, final WaveClientManager waveClientManager) {
this.gsArmor = wsArmor;
- this.waveClientManager = waveClientManager;
+ // this.waveClientManager = waveClientManager;
widget = uiBinder.createAndBindUi(this);
}
@@ -85,6 +62,7 @@
docContainer.add(widget);
}
+ @Override
public void clear() {
onlyViewPanel.setHTML("");
gsArmor.getSubheaderToolbar().clear();
@@ -97,26 +75,27 @@
clear();
}
- private WaveRef getWaveRef(final String waveRefS) {
- try {
- return GwtWaverefEncoder.decodeWaveRefFromPath(waveRefS);
- } catch (final InvalidWaveRefException e) {
- throw new UIException("Invalid waveref: " + waveRefS);
- }
- }
+ // private WaveRef getWaveRef(final String waveRefS) {
+ // try {
+ // return GwtWaverefEncoder.decodeWaveRefFromPath(waveRefS);
+ // } catch (final InvalidWaveRefException e) {
+ // throw new UIException("Invalid waveref: " + waveRefS);
+ // }
+ // }
+ //
+ // private void initWaveClientIfNeeded() {
+ // if (channel == null) {
+ // final WaveWebSocketClient webSocket = new
+ // WaveWebSocketClient(WebClient.useSocketIO(),
+ // WebClient.getWebSocketBaseUrl(GWT.getModuleBaseURL()));
+ // webSocket.connect();
+ // channel = new RemoteViewServiceMultiplexer(webSocket,
+ // new ParticipantId(Session.get().getAddress()).getAddress());
+ // profiles = new ProfileManagerImpl();
+ // idGenerator = ClientIdGenerator.create();
+ // }
+ // }
- private void initWaveClientIfNeeded() {
- if (channel == null) {
- final WaveWebSocketClient webSocket = new WaveWebSocketClient(WebClient.useSocketIO(),
- WebClient.getWebSocketBaseUrl(GWT.getModuleBaseURL()));
- webSocket.connect();
- channel = new RemoteViewServiceMultiplexer(webSocket,
- new ParticipantId(Session.get().getAddress()).getAddress());
- profiles = new ProfileManagerImpl();
- idGenerator = ClientIdGenerator.create();
- }
- }
-
@Override
public void setActions(final GuiActionDescCollection actions) {
gsArmor.getSubheaderToolbar().clear();
@@ -132,35 +111,40 @@
if (editable) {
// initWaveClientIfNeeded();
// setEditableWaveContent(state.getWaveRef(), false);
- waveHolder.clear();
- waveHolder.add(new Label(state.getContent() + " (but here goes the Wave editor -we are testing it-)"));
+ // waveHolder.clear();
+ // waveHolder.add(new Label(state.getContent() +
+ // " (but here goes the Wave editor -we are testing it-)"));
onlyViewPanel.setHTML(SafeHtmlUtils.fromTrustedString(state.getContent()));
} else {
onlyViewPanel.setHTML(SafeHtmlUtils.fromTrustedString(state.getContent()));
}
- deck.showWidget(editable ? 0 : 1);
+ // deck.showWidget(editable ? 0 : 1);
+ deck.showWidget(1);
}
-
- public void setEditableWaveContent(final String waveRefS, final boolean isNewWave) {
- final WaveRef waveRef = getWaveRef(waveRefS);
-
- if (wave != null) {
- wave.destroy();
- wave = null;
- }
-
- // Release the display:none.
- // UIObject.setVisible(waveFrame.getElement(), true);
- waveHolder.getElement().appendChild(loading);
- final Element holder = waveHolder.getElement().appendChild(Document.get().createDivElement());
- final StagesProvider wave = new StagesProvider(holder, waveHolder, waveRef, channel, idGenerator, profiles,
- waveStore, isNewWave);
- this.wave = wave;
- wave.load(new Command() {
- @Override
- public void execute() {
- loading.removeFromParent();
- }
- });
- }
+ //
+ // private void setEditableWaveContent(final String waveRefS, final boolean
+ // isNewWave) {
+ // final WaveRef waveRef = getWaveRef(waveRefS);
+ //
+ // if (wave != null) {
+ // wave.destroy();
+ // wave = null;
+ // }
+ //
+ // // Release the display:none.
+ // // UIObject.setVisible(waveFrame.getElement(), true);
+ // waveHolder.getElement().appendChild(loading);
+ // final Element holder =
+ // waveHolder.getElement().appendChild(Document.get().createDivElement());
+ // final StagesProvider wave = new StagesProvider(holder, waveHolder,
+ // waveRef, channel, idGenerator, profiles,
+ // waveStore, isNewWave);
+ // this.wave = wave;
+ // wave.load(new Command() {
+ // @Override
+ // public void execute() {
+ // loading.removeFromParent();
+ // }
+ // });
+ // }
}
Modified: trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.ui.xml
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.ui.xml 2011-04-18 11:45:11 UTC (rev 1316)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.ui.xml 2011-04-18 17:25:02 UTC (rev 1317)
@@ -6,6 +6,7 @@
.wavePanel {
margin: 0 0 0 0;
}
+
.waveHolder {
position: absolute;
top: 0;
@@ -15,11 +16,13 @@
}
</ui:style>
<g:HTMLPanel width="100%" height="100%">
- <g:DeckPanel ui:field="deck" addStyleNames="k-doc-content-deck">
-<!-- <f:FramedPanel ui:field="waveFrame" addStyleNames="{style.wavePanel}"> -->
-<!-- </f:FramedPanel> -->
- <w:ImplPanel ui:field="waveHolder" addStyleNames="{style.waveHolder}" />
- <g:InlineHTML ui:field="onlyViewPanel" />
- </g:DeckPanel>
+ <g:DeckPanel ui:field="deck" addStyleNames="k-doc-content-deck">
+ <!-- <f:FramedPanel ui:field="waveFrame" addStyleNames="{style.wavePanel}"> -->
+ <!-- </f:FramedPanel> -->
+ <!-- <w:ImplPanel ui:field="waveHolder" addStyleNames="{style.waveHolder}"
+ /> -->
+ <g:InlineHTML ui:field="delete" />
+ <g:InlineHTML ui:field="onlyViewPanel" />
+ </g:DeckPanel>
</g:HTMLPanel>
</ui:UiBinder>
\ No newline at end of file
Modified: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java 2011-04-18 11:45:11 UTC (rev 1316)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java 2011-04-18 17:25:02 UTC (rev 1317)
@@ -118,16 +118,19 @@
}
private void createChildItems(final ContainerDTO container, final AccessRights containerRights) {
- NotifyUser.info("Size: " + container.getContents().size() + " siblings: " + container.getChilds().size());
- for (final ContentSimpleDTO content : container.getContents()) {
- addItem(content.getTitle(), content.getTypeId(), content.getMimeType(), content.getStatus(),
- content.getStateToken(), content.getStateToken().copy().clearDocument(), content.getRights());
+ if (container.getContents().size() + container.getChilds().size() == 0) {
+ // FIXME
+ } else {
+ for (final ContentSimpleDTO content : container.getContents()) {
+ addItem(content.getTitle(), content.getTypeId(), content.getMimeType(), content.getStatus(),
+ content.getStateToken(), content.getStateToken().copy().clearDocument(), content.getRights());
+ }
+ for (final ContainerSimpleDTO childFolder : container.getChilds()) {
+ addItem(childFolder.getName(), childFolder.getTypeId(), null, ContentStatus.publishedOnline,
+ childFolder.getStateToken(),
+ childFolder.getStateToken().copy().setFolder(childFolder.getParentFolderId()), containerRights);
+ }
}
- for (final ContainerSimpleDTO siblingFolder : container.getChilds()) {
- addItem(siblingFolder.getName(), siblingFolder.getTypeId(), null, ContentStatus.publishedOnline,
- siblingFolder.getStateToken(),
- siblingFolder.getStateToken().copy().setFolder(siblingFolder.getParentFolderId()), containerRights);
- }
}
@Override
Modified: trunk/src/main/java/cc/kune/domain/Comment.java
===================================================================
--- trunk/src/main/java/cc/kune/domain/Comment.java 2011-04-18 11:45:11 UTC (rev 1316)
+++ trunk/src/main/java/cc/kune/domain/Comment.java 2011-04-18 17:25:02 UTC (rev 1317)
@@ -38,6 +38,8 @@
import javax.persistence.Table;
import javax.persistence.Transient;
+import org.hibernate.annotations.Fetch;
+import org.hibernate.annotations.FetchMode;
import org.hibernate.search.annotations.DocumentId;
import org.hibernate.search.annotations.Field;
import org.hibernate.search.annotations.Index;
@@ -48,22 +50,31 @@
@Table(name = "comment")
public class Comment {
- @Id
- @GeneratedValue
- @DocumentId
- private Long id;
+ @IndexedEmbedded
+ @ManyToMany(cascade = { CascadeType.PERSIST, CascadeType.MERGE })
+ private List<User> abuseInformers;
+ @IndexedEmbedded
+ @OneToOne(cascade = { CascadeType.PERSIST, CascadeType.MERGE })
+ private User author;
+
+ @Fetch(FetchMode.JOIN)
+ @OneToMany(mappedBy = "parent", cascade = CascadeType.ALL, fetch = FetchType.EAGER)
+ private Set<Comment> childs;
+
@ManyToOne
@JoinColumn
@IndexedEmbedded
private Content content;
- @Basic(optional = false)
- private Long publishedOn;
+ @Id
+ @GeneratedValue
+ @DocumentId
+ private Long id;
@IndexedEmbedded
- @OneToOne(cascade = { CascadeType.PERSIST, CascadeType.MERGE })
- private User author;
+ @ManyToMany(cascade = { CascadeType.PERSIST, CascadeType.MERGE })
+ private List<User> negativeVoters;
// Parent/Child pattern:
// http://www.hibernate.org/hib_docs/reference/en/html/example-parentchild.html
@@ -72,21 +83,13 @@
@JoinColumn
private Comment parent;
- @OneToMany(mappedBy = "parent", cascade = CascadeType.ALL, fetch = FetchType.EAGER)
- private Set<Comment> childs;
-
@IndexedEmbedded
@ManyToMany(cascade = { CascadeType.PERSIST, CascadeType.MERGE })
private List<User> positiveVoters;
- @IndexedEmbedded
- @ManyToMany(cascade = { CascadeType.PERSIST, CascadeType.MERGE })
- private List<User> negativeVoters;
+ @Basic(optional = false)
+ private Long publishedOn;
- @IndexedEmbedded
- @ManyToMany(cascade = { CascadeType.PERSIST, CascadeType.MERGE })
- private List<User> abuseInformers;
-
@Field(index = Index.TOKENIZED, store = Store.NO)
private String text;
Modified: trunk/src/main/java/cc/kune/domain/Container.java
===================================================================
--- trunk/src/main/java/cc/kune/domain/Container.java 2011-04-18 11:45:11 UTC (rev 1316)
+++ trunk/src/main/java/cc/kune/domain/Container.java 2011-04-18 17:25:02 UTC (rev 1317)
@@ -41,6 +41,8 @@
import javax.persistence.Table;
import javax.persistence.Transient;
+import org.hibernate.annotations.Fetch;
+import org.hibernate.annotations.FetchMode;
import org.hibernate.search.annotations.ContainedIn;
import org.hibernate.search.annotations.DocumentId;
import org.hibernate.search.annotations.Field;
@@ -63,6 +65,7 @@
@OneToOne(cascade = CascadeType.ALL)
private AccessLists accessLists;
+ @Fetch(FetchMode.JOIN)
@OrderBy("createdOn DESC")
@OneToMany(mappedBy = "parent", cascade = CascadeType.ALL, fetch = FetchType.EAGER)
private Set<Container> childs;
@@ -70,6 +73,7 @@
@OneToMany(cascade = CascadeType.ALL)
private List<ContainerTranslation> containerTranslations;
+ @Fetch(FetchMode.JOIN)
@ContainedIn
@OrderBy("createdOn DESC")
@OneToMany(mappedBy = "container", cascade = CascadeType.ALL, fetch = FetchType.EAGER)
Modified: trunk/src/main/java/cc/kune/domain/Content.java
===================================================================
--- trunk/src/main/java/cc/kune/domain/Content.java 2011-04-18 11:45:11 UTC (rev 1316)
+++ trunk/src/main/java/cc/kune/domain/Content.java 2011-04-18 17:25:02 UTC (rev 1317)
@@ -46,6 +46,8 @@
import javax.persistence.Transient;
import javax.persistence.Version;
+import org.hibernate.annotations.Fetch;
+import org.hibernate.annotations.FetchMode;
import org.hibernate.search.annotations.ContainedIn;
import org.hibernate.search.annotations.DocumentId;
import org.hibernate.search.annotations.Indexed;
@@ -74,6 +76,7 @@
@ManyToMany(cascade = { CascadeType.PERSIST, CascadeType.MERGE })
private List<User> authors;
+ @Fetch(FetchMode.JOIN)
@ContainedIn
@OneToMany(mappedBy = "content", cascade = CascadeType.ALL, fetch = FetchType.EAGER)
private Set<Comment> comments;
Modified: trunk/src/main/java/cc/kune/msgs/KuneMsgs.gwt.xml
===================================================================
--- trunk/src/main/java/cc/kune/msgs/KuneMsgs.gwt.xml 2011-04-18 11:45:11 UTC (rev 1316)
+++ trunk/src/main/java/cc/kune/msgs/KuneMsgs.gwt.xml 2011-04-18 17:25:02 UTC (rev 1317)
@@ -2,17 +2,11 @@
<module>
<!-- Inherit the core Web Toolkit stuff. -->
<inherits name='com.google.gwt.user.User' />
- <inherits name="org.adamtacy.GWTEffects"></inherits>
+ <inherits name="org.adamtacy.GWTEffects" />
<inherits name="cc.kune.common.KuneCommon" />
- <!-- Inherit the default GWT style sheet. You can change -->
- <!-- the theme of your GWT application by uncommenting -->
- <!-- any one of the following lines. -->
- <!-- <inherits name='com.google.gwt.user.theme.standard.Standard'/> -->
- <!-- <inherits name='com.google.gwt.user.theme.chrome.Chrome'/> -->
- <!-- <inherits name='com.google.gwt.user.theme.dark.Dark'/> -->
<!-- Other module inherits -->
<!-- Specify the app entry point class. -->
- <!-- <entry-point class='cc.kune.msgs.client.KuneMessagesSampleEntryPoint'
+ <!-- <entry-point class='cc.kune.msgs.client.KuneMessagesSampleEntryPoint'
/> -->
<!-- Specify the paths for translatable code -->
<source path='client' />
Modified: trunk/src/main/java/cc/kune/wave/KuneWave.gwt.xml
===================================================================
--- trunk/src/main/java/cc/kune/wave/KuneWave.gwt.xml 2011-04-18 11:45:11 UTC (rev 1316)
+++ trunk/src/main/java/cc/kune/wave/KuneWave.gwt.xml 2011-04-18 17:25:02 UTC (rev 1317)
@@ -1,7 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<module>
<inherits name='org.waveprotocol.box.webclient.WebClient' />
+ <!-- Stack emulation is too slow to use in production. -->
+ <set-property name="compiler.emulatedStack" value="false" />
+ <!-- Turn off logging, because it's really slow. -->
+ <!-- <set-property name="loglevel" value="none" /> -->
+
<source path="client" />
<public path="public" />
</module>
1
0
r1316 - in trunk/src/main/java/cc/kune: common/client/actions/ui/descrip common/client/tooltip common/client/ui common/public core/client core/client/rpcservices core/public core/server/rpc core/server/utils docs/client/actions docs/client/viewers gspace/client gspace/client/tool wave/client wave/server
by Vicente J. Ruiz Jurado 18 Apr '11
by Vicente J. Ruiz Jurado 18 Apr '11
18 Apr '11
Author: vjrj_
Date: 2011-04-18 13:45:11 +0200 (Mon, 18 Apr 2011)
New Revision: 1316
Added:
trunk/src/main/java/cc/kune/common/client/ui/UiUtils.java
trunk/src/main/java/cc/kune/docs/client/actions/FolderGoUpBtn.java
trunk/src/main/java/cc/kune/docs/client/actions/NewDocBtn.java
trunk/src/main/java/cc/kune/docs/client/actions/NewFolderBtn.java
trunk/src/main/java/cc/kune/docs/client/actions/OpenContentBtn.java
Removed:
trunk/src/main/java/cc/kune/docs/client/actions/DocsGoUpBtn.java
Modified:
trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/AbstractGuiActionDescrip.java
trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescrip.java
trunk/src/main/java/cc/kune/common/client/tooltip/Tooltip.java
trunk/src/main/java/cc/kune/common/client/ui/BasicThumb.java
trunk/src/main/java/cc/kune/common/public/kune-common.css
trunk/src/main/java/cc/kune/core/client/CoreGinModule.java
trunk/src/main/java/cc/kune/core/client/rpcservices/ContentService.java
trunk/src/main/java/cc/kune/core/client/rpcservices/ContentServiceAsync.java
trunk/src/main/java/cc/kune/core/public/ws.css
trunk/src/main/java/cc/kune/core/server/rpc/ContentRPC.java
trunk/src/main/java/cc/kune/core/server/utils/FilenameUtils.java
trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java
trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.java
trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPresenter.java
trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.java
trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java
trunk/src/main/java/cc/kune/gspace/client/GSpaceGinModule.java
trunk/src/main/java/cc/kune/gspace/client/tool/ContentViewerSelector.java
trunk/src/main/java/cc/kune/wave/client/WebClient.java
trunk/src/main/java/cc/kune/wave/server/CustomUserRegistrationServlet.java
trunk/src/main/java/cc/kune/wave/server/WaveMain.java
Log:
New docs actions
Modified: trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/AbstractGuiActionDescrip.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/AbstractGuiActionDescrip.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/AbstractGuiActionDescrip.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -26,6 +26,7 @@
import cc.kune.common.client.actions.Action;
import cc.kune.common.client.actions.ActionEvent;
import cc.kune.common.client.actions.ChangeableObject;
+import cc.kune.common.client.actions.KeyStroke;
import cc.kune.gspace.client.actions.perspective.ActionPerspective;
/**
@@ -52,7 +53,7 @@
/**
* Instantiates a new abstract ui action descriptor. This is used for
* describe UI button, menus, menu items and so on
- *
+ *
* @param action
* the action
*/
@@ -88,7 +89,7 @@
/**
* Gets the location, a string used to group actions with locations (top
* bar, bottom bar, user bar...).
- *
+ *
* @return the location
*/
@Override
@@ -103,7 +104,7 @@
/**
* Gets the position.
- *
+ *
* @return the position
*/
@Override
@@ -138,13 +139,14 @@
}
@Override
- public boolean isChild() {
- return !parent.equals(NO_PARENT);
+ public GuiActionDescrip in(final Class<? extends ActionPerspective> clazz) {
+ putValue(ActionPerspective.KEY, clazz);
+ return this;
}
@Override
- public void in(Class<? extends ActionPerspective> clazz) {
- putValue(ActionPerspective.KEY, clazz);
+ public boolean isChild() {
+ return !parent.equals(NO_PARENT);
}
@Override
@@ -182,7 +184,7 @@
* If we have several toolbars, we can group with the "location" string key
* actions that must be in the same location (ex: top bar, bottom bar, and
* so on).
- *
+ *
* @param location
* the new location
*/
@@ -199,7 +201,7 @@
/**
* Sets the position (where the UI element will be positioned, for instance
* in a toolbar or in a menu).
- *
+ *
* @param position
* the new position
*/
@@ -250,6 +252,12 @@
}
@Override
+ public GuiActionDescrip withShortcut(final KeyStroke shortcut) {
+ putValue(Action.ACCELERATOR_KEY, shortcut);
+ return this;
+ }
+
+ @Override
public GuiActionDescrip withStyles(final String styles) {
setStyles(styles);
return this;
Modified: trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescrip.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescrip.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescrip.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -2,6 +2,7 @@
import cc.kune.common.client.actions.AbstractAction;
import cc.kune.common.client.actions.ActionEvent;
+import cc.kune.common.client.actions.KeyStroke;
import cc.kune.common.client.actions.PropertyChangeListener;
import cc.kune.gspace.client.actions.perspective.ActionPerspective;
@@ -48,7 +49,7 @@
boolean hasTarget();
- void in(Class<? extends ActionPerspective> clazz);
+ GuiActionDescrip in(Class<? extends ActionPerspective> clazz);
boolean isChild();
@@ -84,6 +85,8 @@
GuiActionDescrip withParent(GuiActionDescrip parent);
+ GuiActionDescrip withShortcut(KeyStroke keystroke);
+
GuiActionDescrip withStyles(String styles);
GuiActionDescrip withText(String text);
Modified: trunk/src/main/java/cc/kune/common/client/tooltip/Tooltip.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/tooltip/Tooltip.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/common/client/tooltip/Tooltip.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -107,7 +107,7 @@
@Override
public void show() {
- if (!Tooltip.this.isShowing()) {
+ if (!Tooltip.this.isShowing() && ofWidget.isVisible()) {
Tooltip.super.show();
Tooltip.this.showAt(TooltipPositionCalculator.calculate(Window.getClientWidth(), Window.getClientHeight(),
ofWidget.getAbsoluteLeft(), ofWidget.getAbsoluteTop(), ofWidget.getOffsetWidth(),
Modified: trunk/src/main/java/cc/kune/common/client/ui/BasicThumb.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/ui/BasicThumb.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/common/client/ui/BasicThumb.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -23,7 +23,9 @@
import cc.kune.common.client.tooltip.Tooltip;
import cc.kune.common.client.utils.TextUtils;
+import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
+import com.google.gwt.event.dom.client.DoubleClickEvent;
import com.google.gwt.event.dom.client.DoubleClickHandler;
import com.google.gwt.event.dom.client.MouseOutEvent;
import com.google.gwt.event.dom.client.MouseOutHandler;
@@ -43,6 +45,7 @@
private final Image image;
private final Label label;
private boolean onOverLabel;
+ private final VerticalPanel panel;
public BasicThumb(final Object imageRef, final int imgSize, final String text, final int textMaxLenght,
final boolean crop) {
@@ -63,7 +66,7 @@
final boolean crop, final ClickHandler clickHandler) {
super();
onOverLabel = false;
- final VerticalPanel vpanel = new VerticalPanel();
+ panel = new VerticalPanel();
if (imageRef instanceof String) {
final String imageUrl = (String) imageRef;
if (imgSize == NOSIZE) {
@@ -78,21 +81,23 @@
}
} else if (imageRef instanceof ImageResource) {
image = new Image((ImageResource) imageRef);
+ image.setPixelSize(imgSize, imgSize);
} else {
// This should not happen
image = new Image();
+ image.setPixelSize(imgSize, imgSize);
Log.info("Unrecognized icon of BasicThumb: " + imageRef);
}
final String title = textMaxLenght == NOSIZE ? text : TextUtils.ellipsis(text, textMaxLenght);
label = new Label(title);
- vpanel.add(image);
- vpanel.add(label);
- vpanel.addStyleName("k-basic-thumb");
- vpanel.addStyleName("kune-Margin-Mini-trbl");
- vpanel.addStyleName("k-pointer");
- vpanel.addStyleName("k-floatleft");
- vpanel.setCellHorizontalAlignment(label, VerticalPanel.ALIGN_CENTER);
- if (clickHandler instanceof ClickHandler) {
+ panel.add(image);
+ panel.add(label);
+ panel.addStyleName("k-basic-thumb");
+ panel.addStyleName("kune-Margin-Mini-trbl");
+ panel.addStyleName("k-pointer");
+ panel.addStyleName("k-floatleft");
+ panel.setCellHorizontalAlignment(label, VerticalPanel.ALIGN_CENTER);
+ if (clickHandler != null) {
addClickHandlerImpl(clickHandler);
}
image.addMouseOverHandler(new MouseOverHandler() {
@@ -113,7 +118,7 @@
}
}
});
- initWidget(vpanel);
+ initWidget(panel);
}
public BasicThumb(final Object imageRef, final String thumText, final ClickHandler clickHandler) {
@@ -129,8 +134,7 @@
}
private void addClickHandlerImpl(final ClickHandler clickHandler) {
- label.addClickHandler(clickHandler);
- image.addClickHandler(clickHandler);
+ panel.addDomHandler(clickHandler, ClickEvent.getType());
}
public void addDoubleClickHandler(final DoubleClickHandler clickHandler) {
@@ -138,8 +142,7 @@
}
private void addDoubleClickHandlerImpl(final DoubleClickHandler clickHandler) {
- label.addDoubleClickHandler(clickHandler);
- image.addDoubleClickHandler(clickHandler);
+ panel.addDomHandler(clickHandler, DoubleClickEvent.getType());
}
public void setLabelVisible(final boolean visible) {
Added: trunk/src/main/java/cc/kune/common/client/ui/UiUtils.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/ui/UiUtils.java (rev 0)
+++ trunk/src/main/java/cc/kune/common/client/ui/UiUtils.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -0,0 +1,17 @@
+package cc.kune.common.client.ui;
+
+import com.google.gwt.user.client.ui.InsertPanel.ForIsWidget;
+import com.google.gwt.user.client.ui.Panel;
+
+public class UiUtils {
+
+ public static void clear(final ForIsWidget widget) {
+ final Panel panel = (Panel) widget;
+ panel.clear();
+ // final int widgetCount = panel.getWidgetCount();
+ // for (int i = 0; i < widgetCount && widgetCount > 0; i++) {
+ // panel.remove(i);
+ // }
+ }
+
+}
Modified: trunk/src/main/java/cc/kune/common/public/kune-common.css
===================================================================
--- trunk/src/main/java/cc/kune/common/public/kune-common.css 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/common/public/kune-common.css 2011-04-18 11:45:11 UTC (rev 1316)
@@ -319,6 +319,7 @@
vertical-align: middle;
background-color: #F2F2F2;
white-space: nowrap;
+ margin-right: 3px;
}
.oc-button:hover {
Modified: trunk/src/main/java/cc/kune/core/client/CoreGinModule.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/CoreGinModule.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/core/client/CoreGinModule.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -100,12 +100,6 @@
import cc.kune.core.client.ws.entheader.EntityHeaderPanel;
import cc.kune.core.client.ws.entheader.EntityHeaderPresenter;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.GSpaceArmor;
-import cc.kune.gspace.client.GSpaceArmorImpl;
-import cc.kune.gspace.client.tags.TagsSummaryPanel;
-import cc.kune.gspace.client.tags.TagsSummaryPresenter;
-import cc.kune.gspace.client.ui.footer.license.EntityLicensePanel;
-import cc.kune.gspace.client.ui.footer.license.EntityLicensePresenter;
import cc.kune.msgs.client.UserMessagesPanel;
import cc.kune.msgs.client.UserMessagesPresenter;
@@ -155,8 +149,6 @@
GroupSNPresenter.GroupSNProxy.class);
bindPresenter(UserSNPresenter.class, UserSNPresenter.UserSNView.class, UserSNPanel.class,
UserSNPresenter.UserSNProxy.class);
- bindPresenter(EntityLicensePresenter.class, EntityLicensePresenter.EntityLicenseView.class,
- EntityLicensePanel.class, EntityLicensePresenter.EntityLicenseProxy.class);
bindPresenter(EntityHeaderPresenter.class, EntityHeaderPresenter.EntityHeaderView.class,
EntityHeaderPanel.class, EntityHeaderPresenter.EntityHeaderProxy.class);
bindPresenter(SignInPresenter.class, SignInView.class, SignInPanel.class, SignInPresenter.SignInProxy.class);
@@ -164,8 +156,6 @@
RegisterPresenter.RegisterProxy.class);
bindPresenter(UserConfirmPresenter.class, UserConfirmPresenter.UserConfirmView.class, UserConfirmPanel.class,
UserConfirmPresenter.UserConfirmProxy.class);
- bindPresenter(TagsSummaryPresenter.class, TagsSummaryPresenter.TagsSummaryView.class, TagsSummaryPanel.class,
- TagsSummaryPresenter.TagsSummaryProxy.class);
bind(UserPassAutocompleteManager.class).to(UserPassAutocompleteManagerImpl.class).in(Singleton.class);
bind(SignIn.class).to(SignInPresenter.class).in(Singleton.class);
@@ -178,8 +168,6 @@
// bind(MessagePanelView.class).to(MessagePanel.class);
// UI
- s(GSpaceArmorImpl.class);
- bind(GSpaceArmor.class).to(GSpaceArmorImpl.class).in(Singleton.class);
bind(GuiProvider.class).to(DefaultGuiProvider.class).in(Singleton.class);
s(GxtGuiProvider.class);
s(GwtGuiProvider.class);
Modified: trunk/src/main/java/cc/kune/core/client/rpcservices/ContentService.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/rpcservices/ContentService.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/core/client/rpcservices/ContentService.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -53,8 +53,6 @@
StateContainerDTO addRoom(String user, StateToken parentToken, String name) throws DefaultException;
- StateContentDTO addWave(String userHash, StateToken parentToken, String waveFileType, String waveId);
-
StateContentDTO delContent(String userHash, StateToken token) throws DefaultException;
StateAbstractDTO getContent(String userHash, StateToken token) throws DefaultException;
Modified: trunk/src/main/java/cc/kune/core/client/rpcservices/ContentServiceAsync.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/rpcservices/ContentServiceAsync.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/core/client/rpcservices/ContentServiceAsync.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -51,9 +51,6 @@
void addRoom(String user, StateToken parentToken, String name, AsyncCallback<StateContainerDTO> callback);
- void addWave(String userHash, StateToken parentToken, String waveFileType, String waveId,
- AsyncCallback<StateContentDTO> asyncCallbackSimple);
-
void delContent(String userHash, StateToken token, AsyncCallback<StateContentDTO> asyncCallback);
void getContent(String user, StateToken newState, AsyncCallback<StateAbstractDTO> callback);
Modified: trunk/src/main/java/cc/kune/core/public/ws.css
===================================================================
--- trunk/src/main/java/cc/kune/core/public/ws.css 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/core/public/ws.css 2011-04-18 11:45:11 UTC (rev 1316)
@@ -1102,4 +1102,8 @@
.k-tool-item-notselected {
background-color: inherits;
+}
+
+.k-def-docbtn span {
+ font-size: 13px !important;
}
\ No newline at end of file
Modified: trunk/src/main/java/cc/kune/core/server/rpc/ContentRPC.java
===================================================================
--- trunk/src/main/java/cc/kune/core/server/rpc/ContentRPC.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/core/server/rpc/ContentRPC.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -23,6 +23,8 @@
import javax.persistence.NoResultException;
+import org.waveprotocol.wave.model.waveref.WaveRef;
+import org.waveprotocol.wave.util.escapers.jvm.JavaWaverefEncoder;
import cc.kune.core.client.errors.AccessViolationException;
import cc.kune.core.client.errors.ContentNotFoundException;
@@ -68,6 +70,7 @@
import cc.kune.domain.Content;
import cc.kune.domain.Group;
import cc.kune.domain.User;
+import cc.kune.wave.server.KuneWaveManager;
import com.google.inject.Inject;
import com.google.inject.Provider;
@@ -83,6 +86,7 @@
private final CreationService creationService;
private final FinderService finderService;
private final GroupManager groupManager;
+ private final KuneWaveManager kuneWaveManager;
private final Mapper mapper;
private final AccessRightsService rightsService;
private final StateService stateService;
@@ -96,7 +100,7 @@
final StateService stateService, final CreationService creationService, final GroupManager groupManager,
final XmppManager xmppManager, final ContentManager contentManager,
final ContainerManager containerManager, final TagUserContentManager tagManager,
- final CommentManager commentManager, final Mapper mapper) {
+ final CommentManager commentManager, final Mapper mapper, final KuneWaveManager kuneWaveManager) {
this.finderService = finderService;
this.userSessionProvider = userSessionProvider;
this.accessService = accessService;
@@ -110,6 +114,7 @@
this.tagManager = tagManager;
this.commentManager = commentManager;
this.mapper = mapper;
+ this.kuneWaveManager = kuneWaveManager;
}
@Override
@@ -154,7 +159,8 @@
public StateContentDTO addContent(final String userHash, final StateToken parentToken, final String title,
final String typeId) throws DefaultException {
final String body = "";
- return createContent(parentToken, title, typeId, body);
+ final WaveRef waveRef = kuneWaveManager.createWave(body, getCurrentUser().getShortName());
+ return createContent(parentToken, title, typeId, JavaWaverefEncoder.encodeToUriPathSegment(waveRef));
}
@Override
@@ -201,15 +207,6 @@
return null;
}
- @Override
- @Authenticated
- @Authorizated(actionLevel = ActionLevel.container, accessRolRequired = AccessRol.Editor, mustCheckMembership = false)
- @Transactional
- public StateContentDTO addWave(final String userHash, final StateToken parentToken, final String typeId,
- final String waveId) throws DefaultException {
- return createContent(parentToken, "Wave embeded test", typeId, waveId);
- }
-
private StateContentDTO createContent(final StateToken parentToken, final String title, final String typeId,
final String body) {
final User user = getCurrentUser();
Modified: trunk/src/main/java/cc/kune/core/server/utils/FilenameUtils.java
===================================================================
--- trunk/src/main/java/cc/kune/core/server/utils/FilenameUtils.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/core/server/utils/FilenameUtils.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -30,13 +30,13 @@
*
* @param filename
*/
- public static void checkBasicFilename(String filename) {
- if (filename.length() == 0 || filename.equals(".") || filename.equals("..")) {
+ public static void checkBasicFilename(final String filename) {
+ if (filename == null || filename.length() == 0 || filename.equals(".") || filename.equals("..")) {
throw new NameNotPermittedException();
}
}
- public static String chomp(String filename) {
+ public static String chomp(final String filename) {
return StringUtils.chomp(filename);
}
}
Modified: trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -36,20 +36,23 @@
public class DocsClientActions extends AbstractFoldableContentActions {
final String[] all = { TYPE_ROOT, TYPE_FOLDER, TYPE_DOCUMENT, TYPE_UPLOADEDFILE };
-
- final String[] containers = { TYPE_ROOT, TYPE_FOLDER, };
+ final String[] containers = { TYPE_ROOT, TYPE_FOLDER };
final String[] containersNoRoot = { TYPE_FOLDER };
final String[] contents = { TYPE_DOCUMENT, TYPE_UPLOADEDFILE, TYPE_WAVE };
final String[] contentsModerated = { TYPE_DOCUMENT, TYPE_UPLOADEDFILE };
- private final Provider<DocsGoUpBtn> docsGoUp;
-
@Inject
public DocsClientActions(final I18nUITranslationService i18n, final Session session,
final StateManager stateManager, final ActionRegistryByType registry, final CoreResources res,
- final Provider<DocsGoUpBtn> docsGoUp) {
+ final Provider<FolderGoUpBtn> folderGoUp, final Provider<NewDocBtn> newDocBtn,
+ final Provider<NewFolderBtn> newFolderBtn, final Provider<OpenContentBtn> openContentBtn) {
super(session, stateManager, i18n, registry);
- this.docsGoUp = docsGoUp;
+ actionsRegistry.addAction(folderGoUp, contents);
+ actionsRegistry.addAction(folderGoUp, containersNoRoot);
+ actionsRegistry.addAction(newDocBtn, containers);
+ actionsRegistry.addAction(newFolderBtn, containers);
+ actionsRegistry.addAction(openContentBtn, contents);
+ actionsRegistry.addAction(openContentBtn, containersNoRoot);
}
@Override
@@ -103,7 +106,5 @@
@Override
protected void createPostSessionInitActions() {
// super.createUploadMediaAction(TYPE_GALLERY);
- actionsRegistry.addAction(docsGoUp, contents);
- actionsRegistry.addAction(docsGoUp, containersNoRoot);
}
}
Deleted: trunk/src/main/java/cc/kune/docs/client/actions/DocsGoUpBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/DocsGoUpBtn.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/docs/client/actions/DocsGoUpBtn.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -1,42 +0,0 @@
-package cc.kune.docs.client.actions;
-
-import cc.kune.common.client.actions.AbstractExtendedAction;
-import cc.kune.common.client.actions.ActionEvent;
-import cc.kune.common.client.actions.ui.descrip.ButtonDescriptor;
-import cc.kune.core.client.resources.CoreResources;
-import cc.kune.core.client.state.Session;
-import cc.kune.core.client.state.StateManager;
-import cc.kune.core.shared.dto.HasContent;
-import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.actions.perspective.ViewPerspective;
-
-import com.google.inject.Inject;
-
-public class DocsGoUpBtn extends ButtonDescriptor {
-
- public static class DocsGoUpAction extends AbstractExtendedAction {
-
- private final Session session;
- private final StateManager stateManager;
-
- @Inject
- public DocsGoUpAction(final Session session, final StateManager stateManager) {
- this.session = session;
- this.stateManager = stateManager;
- }
-
- @Override
- public void actionPerformed(final ActionEvent event) {
- stateManager.gotoStateToken(((HasContent) session.getCurrentState()).getContainer().getStateToken());
- }
-
- }
-
- @Inject
- public DocsGoUpBtn(final I18nTranslationService i18n, final DocsGoUpAction action, final CoreResources res) {
- super(action);
- this.withToolTip(i18n.t("Go up: Open the container folder")).withIcon(res.folderGoUp()).in(
- ViewPerspective.class);
- }
-
-}
Copied: trunk/src/main/java/cc/kune/docs/client/actions/FolderGoUpBtn.java (from rev 1315, trunk/src/main/java/cc/kune/docs/client/actions/DocsGoUpBtn.java)
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/FolderGoUpBtn.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/actions/FolderGoUpBtn.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -0,0 +1,54 @@
+package cc.kune.docs.client.actions;
+
+import cc.kune.common.client.actions.AbstractExtendedAction;
+import cc.kune.common.client.actions.ActionEvent;
+import cc.kune.common.client.actions.ui.descrip.ButtonDescriptor;
+import cc.kune.core.client.resources.CoreResources;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.client.state.StateManager;
+import cc.kune.core.shared.domain.utils.StateToken;
+import cc.kune.core.shared.dto.ContainerDTO;
+import cc.kune.core.shared.dto.StateAbstractDTO;
+import cc.kune.core.shared.dto.StateContainerDTO;
+import cc.kune.core.shared.dto.StateContentDTO;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.gspace.client.actions.perspective.ViewPerspective;
+
+import com.google.inject.Inject;
+
+public class FolderGoUpBtn extends ButtonDescriptor {
+
+ public static class FolderGoUpAction extends AbstractExtendedAction {
+
+ private final Session session;
+ private final StateManager stateManager;
+
+ @Inject
+ public FolderGoUpAction(final Session session, final StateManager stateManager) {
+ this.session = session;
+ this.stateManager = stateManager;
+ }
+
+ @Override
+ public void actionPerformed(final ActionEvent event) {
+ StateToken stateToken;
+ final StateAbstractDTO state = session.getCurrentState();
+ if (state instanceof StateContentDTO) {
+ stateToken = ((StateContentDTO) state).getContainer().getStateToken();
+ } else {
+ final ContainerDTO container = ((StateContainerDTO) state).getContainer();
+ stateToken = container.getStateToken().copy().setFolder(container.getParentFolderId());
+ }
+ stateManager.gotoStateToken(stateToken);
+ }
+
+ }
+
+ @Inject
+ public FolderGoUpBtn(final I18nTranslationService i18n, final FolderGoUpAction action, final CoreResources res) {
+ super(action);
+ this.withToolTip(i18n.t("Go up: Open the container folder")).withIcon(res.folderGoUp()).in(
+ ViewPerspective.class);
+ }
+
+}
Added: trunk/src/main/java/cc/kune/docs/client/actions/NewDocBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/NewDocBtn.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/actions/NewDocBtn.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -0,0 +1,74 @@
+package cc.kune.docs.client.actions;
+
+import cc.kune.common.client.actions.ActionEvent;
+import cc.kune.common.client.actions.KeyStroke;
+import cc.kune.common.client.actions.Shortcut;
+import cc.kune.common.client.actions.ui.descrip.ButtonDescriptor;
+import cc.kune.common.client.notify.NotifyUser;
+import cc.kune.common.client.shortcuts.GlobalShortcutRegister;
+import cc.kune.core.client.actions.RolAction;
+import cc.kune.core.client.resources.nav.NavResources;
+import cc.kune.core.client.rpcservices.AsyncCallbackSimple;
+import cc.kune.core.client.rpcservices.ContentServiceAsync;
+import cc.kune.core.client.state.ContentCache;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.client.state.StateManager;
+import cc.kune.core.shared.dto.AccessRolDTO;
+import cc.kune.core.shared.dto.HasContent;
+import cc.kune.core.shared.dto.StateContentDTO;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.docs.client.DocsClientTool;
+import cc.kune.gspace.client.actions.perspective.ViewPerspective;
+
+import com.google.inject.Inject;
+import com.google.inject.Provider;
+
+public class NewDocBtn extends ButtonDescriptor {
+
+ public static class NewDocAction extends RolAction {
+
+ private final ContentCache cache;
+ private final Provider<ContentServiceAsync> contentService;
+ private final I18nTranslationService i18n;
+ private final Session session;
+ private final StateManager stateManager;
+
+ @Inject
+ public NewDocAction(final Session session, final StateManager stateManager, final I18nTranslationService i18n,
+ final Provider<ContentServiceAsync> contentService, final ContentCache cache) {
+ super(AccessRolDTO.Editor, true);
+ this.session = session;
+ this.stateManager = stateManager;
+ this.i18n = i18n;
+ this.contentService = contentService;
+ this.cache = cache;
+ }
+
+ @Override
+ public void actionPerformed(final ActionEvent event) {
+ stateManager.gotoStateToken(((HasContent) session.getCurrentState()).getContainer().getStateToken());
+ NotifyUser.showProgressProcessing();
+ contentService.get().addContent(session.getUserHash(), session.getCurrentStateToken(),
+ i18n.t("New document"), DocsClientTool.TYPE_WAVE, new AsyncCallbackSimple<StateContentDTO>() {
+ @Override
+ public void onSuccess(final StateContentDTO state) {
+ // contextNavigator.setEditOnNextStateChange(true);
+ stateManager.setRetrievedState(state);
+ }
+ });
+ cache.removeContent(session.getCurrentStateToken());
+ }
+ }
+
+ @Inject
+ public NewDocBtn(final I18nTranslationService i18n, final NewDocAction action, final NavResources res,
+ final GlobalShortcutRegister shorcutReg) {
+ super(action);
+ final KeyStroke shortcut = Shortcut.getShortcut(false, true, false, false, Character.valueOf('N'));
+ shorcutReg.put(shortcut, action);
+ this.withText(i18n.t("New document")).withToolTip(
+ "Create a New Document here. This document will be a new 'Page' in the public web if you publish it").withIcon(
+ res.pageAdd()).in(ViewPerspective.class).withShortcut(shortcut).withStyles("k-def-docbtn");
+ }
+
+}
Added: trunk/src/main/java/cc/kune/docs/client/actions/NewFolderBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/NewFolderBtn.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/actions/NewFolderBtn.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -0,0 +1,68 @@
+package cc.kune.docs.client.actions;
+
+import cc.kune.common.client.actions.ActionEvent;
+import cc.kune.common.client.actions.ui.descrip.ButtonDescriptor;
+import cc.kune.common.client.notify.NotifyUser;
+import cc.kune.core.client.actions.RolAction;
+import cc.kune.core.client.resources.nav.NavResources;
+import cc.kune.core.client.rpcservices.AsyncCallbackSimple;
+import cc.kune.core.client.rpcservices.ContentServiceAsync;
+import cc.kune.core.client.state.ContentCache;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.client.state.StateManager;
+import cc.kune.core.shared.dto.AccessRolDTO;
+import cc.kune.core.shared.dto.HasContent;
+import cc.kune.core.shared.dto.StateContainerDTO;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.docs.client.DocsClientTool;
+import cc.kune.gspace.client.actions.perspective.ViewPerspective;
+
+import com.google.inject.Inject;
+import com.google.inject.Provider;
+
+public class NewFolderBtn extends ButtonDescriptor {
+
+ public static class NewDocAction extends RolAction {
+
+ private final ContentCache cache;
+ private final Provider<ContentServiceAsync> contentService;
+ private final I18nTranslationService i18n;
+ private final Session session;
+ private final StateManager stateManager;
+
+ @Inject
+ public NewDocAction(final Session session, final StateManager stateManager, final I18nTranslationService i18n,
+ final Provider<ContentServiceAsync> contentService, final ContentCache cache) {
+ super(AccessRolDTO.Editor, true);
+ this.session = session;
+ this.stateManager = stateManager;
+ this.i18n = i18n;
+ this.contentService = contentService;
+ this.cache = cache;
+ }
+
+ @Override
+ public void actionPerformed(final ActionEvent event) {
+ stateManager.gotoStateToken(((HasContent) session.getCurrentState()).getContainer().getStateToken());
+ NotifyUser.showProgressProcessing();
+ contentService.get().addFolder(session.getUserHash(), session.getCurrentStateToken(), i18n.t("New folder"),
+ DocsClientTool.TYPE_FOLDER, new AsyncCallbackSimple<StateContainerDTO>() {
+ @Override
+ public void onSuccess(final StateContainerDTO state) {
+ // contextNavigator.setEditOnNextStateChange(true);
+ stateManager.setRetrievedState(state);
+ }
+ });
+ cache.removeContent(session.getCurrentStateToken());
+ }
+
+ }
+
+ @Inject
+ public NewFolderBtn(final I18nTranslationService i18n, final NewDocAction action, final NavResources res) {
+ super(action);
+ this.withText(i18n.t("New folder")).withToolTip(
+ i18n.t("Create a new folder here. A folder will be a 'section' in the public web")).withIcon(
+ res.folderAdd()).in(ViewPerspective.class).withStyles("k-def-docbtn");
+ }
+}
Added: trunk/src/main/java/cc/kune/docs/client/actions/OpenContentBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/OpenContentBtn.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/actions/OpenContentBtn.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -0,0 +1,38 @@
+package cc.kune.docs.client.actions;
+
+import cc.kune.common.client.actions.AbstractExtendedAction;
+import cc.kune.common.client.actions.ActionEvent;
+import cc.kune.common.client.actions.ui.descrip.MenuItemDescriptor;
+import cc.kune.core.client.resources.CoreResources;
+import cc.kune.core.client.state.StateManager;
+import cc.kune.core.shared.domain.utils.StateToken;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.gspace.client.actions.perspective.MenuPerspective;
+
+import com.google.inject.Inject;
+
+public class OpenContentBtn extends MenuItemDescriptor {
+
+ public static class OpenContentAction extends AbstractExtendedAction {
+
+ private final StateManager stateManager;
+
+ @Inject
+ public OpenContentAction(final StateManager stateManager) {
+ this.stateManager = stateManager;
+ }
+
+ @Override
+ public void actionPerformed(final ActionEvent event) {
+ stateManager.gotoStateToken((StateToken) event.getTarget());
+ }
+
+ }
+
+ @Inject
+ public OpenContentBtn(final I18nTranslationService i18n, final OpenContentAction action, final CoreResources res) {
+ super(action);
+ this.withText(i18n.t("Open")).withIcon(res.arrowRightGreen()).in(MenuPerspective.class);
+ }
+
+}
Modified: trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -19,6 +19,7 @@
import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
import cc.kune.common.client.errors.UIException;
+import cc.kune.common.client.ui.UiUtils;
import cc.kune.core.shared.dto.StateContentDTO;
import cc.kune.docs.client.viewers.DocViewerPresenter.DocViewerView;
import cc.kune.gspace.client.GSpaceArmor;
@@ -34,6 +35,7 @@
import com.google.gwt.user.client.Command;
import com.google.gwt.user.client.ui.DeckPanel;
import com.google.gwt.user.client.ui.InlineHTML;
+import com.google.gwt.user.client.ui.InlineLabel;
import com.google.gwt.user.client.ui.InsertPanel.ForIsWidget;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.Widget;
@@ -49,6 +51,7 @@
private RemoteViewServiceMultiplexer channel;
@UiField
DeckPanel deck;
+ private final GSpaceArmor gsArmor;
private IdGenerator idGenerator;
private final Element loading = new LoadingIndicator().getElement();
@UiField
@@ -63,11 +66,10 @@
ImplPanel waveHolder;
private final WaveStore waveStore = new SimpleWaveStore();
private final Widget widget;
- private final GSpaceArmor wsArmor;
@Inject
public DocViewerPanel(final GSpaceArmor wsArmor, final WaveClientManager waveClientManager) {
- this.wsArmor = wsArmor;
+ this.gsArmor = wsArmor;
this.waveClientManager = waveClientManager;
widget = uiBinder.createAndBindUi(this);
}
@@ -79,17 +81,20 @@
@Override
public void attach() {
- final ForIsWidget docContainer = wsArmor.getDocContainer();
- final int widgetCount = docContainer.getWidgetCount();
- for (int i = 0; i < widgetCount; i++) {
- docContainer.remove(i);
- }
+ final ForIsWidget docContainer = gsArmor.getDocContainer();
docContainer.add(widget);
}
+ public void clear() {
+ onlyViewPanel.setHTML("");
+ gsArmor.getSubheaderToolbar().clear();
+ UiUtils.clear(gsArmor.getDocContainer());
+ UiUtils.clear(gsArmor.getDocHeader());
+ }
+
@Override
public void detach() {
- widget.removeFromParent();
+ clear();
}
private WaveRef getWaveRef(final String waveRefS) {
@@ -114,12 +119,15 @@
@Override
public void setActions(final GuiActionDescCollection actions) {
- wsArmor.getSubheaderToolbar().clear();
- wsArmor.getSubheaderToolbar().addAll(actions);
+ gsArmor.getSubheaderToolbar().clear();
+ gsArmor.getSubheaderToolbar().addAll(actions);
}
@Override
public void setContent(final StateContentDTO state) {
+ final ForIsWidget docHeader = gsArmor.getDocHeader();
+ UiUtils.clear(docHeader);
+ docHeader.add(new InlineLabel(state.getTitle()));
final boolean editable = state.getContentRights().isEditable();
if (editable) {
// initWaveClientIfNeeded();
Modified: trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPresenter.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPresenter.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -10,6 +10,7 @@
import cc.kune.core.shared.dto.StateContentDTO;
import cc.kune.docs.client.DocsClientTool;
import cc.kune.docs.client.actions.DocsClientActions;
+import cc.kune.gspace.client.actions.perspective.ViewPerspective;
import cc.kune.gspace.client.tool.ContentViewer;
import cc.kune.gspace.client.tool.ContentViewerSelector;
@@ -32,6 +33,8 @@
void attach();
+ void clear();
+
void detach();
void setActions(GuiActionDescCollection actions);
@@ -69,10 +72,11 @@
@Override
public void setContent(@Nonnull final HasContent state) {
+ getView().clear();
final StateContentDTO stateContent = (StateContentDTO) state;
final AccessRights rights = stateContent.getContentRights();
final GuiActionDescCollection actions = actionsRegistry.getCurrentActions(stateContent.getGroup(),
- stateContent.getTypeId(), session.isLogged(), rights);
+ stateContent.getTypeId(), session.isLogged(), rights, ViewPerspective.class);
getView().setActions(actions);
getView().setContent(stateContent);
}
Modified: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -5,6 +5,7 @@
import cc.kune.common.client.actions.ui.descrip.GuiActionDescrip;
import cc.kune.common.client.actions.ui.descrip.MenuDescriptor;
import cc.kune.common.client.ui.BasicThumb;
+import cc.kune.common.client.ui.UiUtils;
import cc.kune.core.shared.dto.StateContainerDTO;
import cc.kune.docs.client.viewers.FolderViewerPresenter.FolderViewerView;
import cc.kune.gspace.client.GSpaceArmor;
@@ -16,6 +17,8 @@
import com.google.gwt.uibinder.client.UiBinder;
import com.google.gwt.uibinder.client.UiField;
import com.google.gwt.user.client.ui.FlowPanel;
+import com.google.gwt.user.client.ui.HTML;
+import com.google.gwt.user.client.ui.InlineLabel;
import com.google.gwt.user.client.ui.InsertPanel.ForIsWidget;
import com.google.gwt.user.client.ui.Widget;
import com.google.inject.Inject;
@@ -31,8 +34,8 @@
private final GSpaceArmor gsArmor;
- int ICONLABELMAXSIZE = 10;
- int ICONSIZE = 40;
+ int ICONLABELMAXSIZE = 20;
+ int ICONSIZE = 100;
private final Widget widget;
@Inject
@@ -54,12 +57,7 @@
@Override
public void attach() {
- // Duplicate code in DocViewerPanel
final ForIsWidget docContainer = gsArmor.getDocContainer();
- final int widgetCount = docContainer.getWidgetCount();
- for (int i = 0; i < widgetCount; i++) {
- docContainer.remove(i);
- }
docContainer.add(widget);
}
@@ -67,6 +65,8 @@
public void clear() {
flow.clear();
gsArmor.getSubheaderToolbar().clear();
+ UiUtils.clear(gsArmor.getDocContainer());
+ UiUtils.clear(gsArmor.getDocHeader());
}
public BasicThumb createThumb(final String text, final Object icon, final String tooltip,
@@ -97,7 +97,6 @@
@Override
public void detach() {
- widget.removeFromParent();
clear();
}
@@ -109,6 +108,8 @@
@Override
public void setContainer(final StateContainerDTO state) {
+ gsArmor.getDocContainer().add(new HTML("<b>Note:</b> This GUI is provisional<br/>"));
+ gsArmor.getDocHeader().add(new InlineLabel(state.getTitle()));
}
}
Modified: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -3,6 +3,7 @@
import javax.annotation.Nonnull;
import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
+import cc.kune.common.client.notify.NotifyUser;
import cc.kune.core.client.actions.ActionRegistryByType;
import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
import cc.kune.core.client.registry.IconsRegistry;
@@ -23,6 +24,7 @@
import cc.kune.docs.client.DocsClientTool;
import cc.kune.docs.client.actions.DocsClientActions;
import cc.kune.gspace.client.actions.perspective.MenuPerspective;
+import cc.kune.gspace.client.actions.perspective.ViewPerspective;
import cc.kune.gspace.client.tool.ContentViewer;
import cc.kune.gspace.client.tool.ContentViewerSelector;
@@ -89,7 +91,7 @@
private void addItem(final String title, final String contentTypeId, final BasicMimeTypeDTO mimeType,
final ContentStatus status, final StateToken stateToken, final StateToken parentStateToken,
- final AccessRights rights, final boolean isNodeSelected) {
+ final AccessRights rights) {
final Object icon = getIcon(stateToken, contentTypeId, mimeType);
final String tooltip = getTooltip(stateToken, mimeType);
final FolderItemDescriptor item = new FolderItemDescriptor(genId(stateToken), genId(parentStateToken), icon,
@@ -99,9 +101,9 @@
session.isLogged(), rights, MenuPerspective.class));
if (status.equals(ContentStatus.inTheDustbin) && !session.getShowDeletedContent()) {
// Don't show
+ NotifyUser.info("Deleted, don't show");
} else {
getView().addItem(item, new DoubleClickHandler() {
-
@Override
public void onDoubleClick(final DoubleClickEvent event) {
stateManager.gotoStateToken(stateToken);
@@ -116,18 +118,16 @@
}
private void createChildItems(final ContainerDTO container, final AccessRights containerRights) {
+ NotifyUser.info("Size: " + container.getContents().size() + " siblings: " + container.getChilds().size());
+ for (final ContentSimpleDTO content : container.getContents()) {
+ addItem(content.getTitle(), content.getTypeId(), content.getMimeType(), content.getStatus(),
+ content.getStateToken(), content.getStateToken().copy().clearDocument(), content.getRights());
+ }
for (final ContainerSimpleDTO siblingFolder : container.getChilds()) {
addItem(siblingFolder.getName(), siblingFolder.getTypeId(), null, ContentStatus.publishedOnline,
siblingFolder.getStateToken(),
- siblingFolder.getStateToken().copy().setFolder(siblingFolder.getParentFolderId()), containerRights,
- false);
+ siblingFolder.getStateToken().copy().setFolder(siblingFolder.getParentFolderId()), containerRights);
}
- for (final ContentSimpleDTO content : container.getContents()) {
- // content.getTitle()
- addItem(content.getStateToken().toString(), content.getTypeId(), content.getMimeType(),
- content.getStatus(), content.getStateToken(), content.getStateToken().copy().clearDocument(),
- content.getRights(), false);
- }
}
@Override
@@ -140,9 +140,7 @@
}
private Object getIcon(final StateToken token, final String contentTypeId, final BasicMimeTypeDTO mimeType) {
- if (contentTypeId.equals(DocsClientTool.TYPE_FOLDER)) {
- return null;
- } else if (!useGenericImageIcon && mimeType != null && mimeType.getType().equals("image")) {
+ if (!useGenericImageIcon && mimeType != null && mimeType.getType().equals("image")) {
return downloadUtilsProvider.get().getImageResizedUrl(token, ImageSize.ico);
} else {
return iconsRegistry.getContentTypeIcon(contentTypeId, mimeType);
@@ -154,7 +152,7 @@
// Used for previews
return null;
} else {
- return i18n.t("Double click to open");
+ return null; // i18n.t("Double click to open");
}
}
@@ -167,11 +165,11 @@
public void setContent(@Nonnull final HasContent state) {
getView().clear();
final StateContainerDTO stateContainer = (StateContainerDTO) state;
+ getView().setContainer(stateContainer);
final AccessRights rights = stateContainer.getContainerRights();
final GuiActionDescCollection actions = actionsRegistry.getCurrentActions(stateContainer.getGroup(),
- stateContainer.getTypeId(), session.isLogged(), rights);
+ stateContainer.getTypeId(), session.isLogged(), rights, ViewPerspective.class);
getView().setActions(actions);
- getView().setContainer(stateContainer);
createChildItems(stateContainer.getContainer(), stateContainer.getContainerRights());
// view.setEditable(rights.isEditable());
}
Modified: trunk/src/main/java/cc/kune/gspace/client/GSpaceGinModule.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/GSpaceGinModule.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/gspace/client/GSpaceGinModule.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -19,9 +19,13 @@
*/
package cc.kune.gspace.client;
+import cc.kune.gspace.client.tags.TagsSummaryPanel;
+import cc.kune.gspace.client.tags.TagsSummaryPresenter;
import cc.kune.gspace.client.tool.selector.ToolSelector;
import cc.kune.gspace.client.tool.selector.ToolSelectorPanel;
import cc.kune.gspace.client.tool.selector.ToolSelectorPresenter;
+import cc.kune.gspace.client.ui.footer.license.EntityLicensePanel;
+import cc.kune.gspace.client.ui.footer.license.EntityLicensePresenter;
import com.google.inject.Singleton;
import com.gwtplatform.mvp.client.gin.AbstractPresenterModule;
@@ -35,6 +39,12 @@
*/
@Override
protected void configure() {
+ bindPresenter(EntityLicensePresenter.class, EntityLicensePresenter.EntityLicenseView.class,
+ EntityLicensePanel.class, EntityLicensePresenter.EntityLicenseProxy.class);
+ bindPresenter(TagsSummaryPresenter.class, TagsSummaryPresenter.TagsSummaryView.class, TagsSummaryPanel.class,
+ TagsSummaryPresenter.TagsSummaryProxy.class);
+ bind(GSpaceArmorImpl.class).in(Singleton.class);
+ bind(GSpaceArmor.class).to(GSpaceArmorImpl.class).in(Singleton.class);
bind(GSpaceParts.class).asEagerSingleton();
bindPresenter(ToolSelectorPresenter.class, ToolSelectorPresenter.ToolSelectorView.class,
ToolSelectorPanel.class, ToolSelectorPresenter.ToolSelectorProxy.class);
Modified: trunk/src/main/java/cc/kune/gspace/client/tool/ContentViewerSelector.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/ContentViewerSelector.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/ContentViewerSelector.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -25,6 +25,7 @@
@Singleton
public class ContentViewerSelector {
+ private ContentViewer currentView;
private final HashMap<String, ContentViewer> defViewsRegister;
private final Session session;
private final StateManager stateManager;
@@ -38,6 +39,12 @@
defViewsRegister = new HashMap<String, ContentViewer>();
}
+ private void detachCurrent() {
+ if (currentView != null) {
+ currentView.detach();
+ }
+ }
+
public void init() {
session.onAppStart(true, new AppStartHandler() {
@Override
@@ -50,6 +57,7 @@
setContent((HasContent) state);
} else {
// NoContent
+ detachCurrent();
}
}
});
@@ -78,8 +86,10 @@
}
private void setContent(final ContentViewer view, final HasContent state) {
+ detachCurrent();
view.setContent(state);
view.attach();
+ currentView = view;
}
public void setContent(@Nonnull final HasContent state) {
Modified: trunk/src/main/java/cc/kune/wave/client/WebClient.java
===================================================================
--- trunk/src/main/java/cc/kune/wave/client/WebClient.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/wave/client/WebClient.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -215,7 +215,7 @@
}
};
Search search = SimpleSearch.create(RemoteSearchService.create(), waveStore);
- SearchPresenter searchUi = SearchPresenter.create(search, searchPanel, selectHandler);
+ SearchPresenter.create(search, searchPanel, selectHandler);
}
private void setupWavePanel() {
Modified: trunk/src/main/java/cc/kune/wave/server/CustomUserRegistrationServlet.java
===================================================================
--- trunk/src/main/java/cc/kune/wave/server/CustomUserRegistrationServlet.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/wave/server/CustomUserRegistrationServlet.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -44,7 +44,7 @@
/**
* The user registration servlet allows new users to register accounts.
- *
+ *
* @author josephg(a)gmail.com (Joseph Gentle)
*/
@Singleton
Modified: trunk/src/main/java/cc/kune/wave/server/WaveMain.java
===================================================================
--- trunk/src/main/java/cc/kune/wave/server/WaveMain.java 2011-04-18 00:41:28 UTC (rev 1315)
+++ trunk/src/main/java/cc/kune/wave/server/WaveMain.java 2011-04-18 11:45:11 UTC (rev 1316)
@@ -114,7 +114,7 @@
ServerRpcProvider server = injector.getInstance(ServerRpcProvider.class);
WaveBus waveBus = injector.getInstance(WaveBus.class);
-
+
String domain =
injector.getInstance(Key.get(String.class, Names.named(CoreSettings.WAVE_SERVER_DOMAIN)));
if (!ParticipantIdUtil.isDomainAddress(ParticipantIdUtil.makeDomainAddress(domain))) {
@@ -168,7 +168,7 @@
server.addServlet("/auth/register", injector.getInstance(UserRegistrationServlet.class));
server.addServlet("/fetch/*", injector.getInstance(FetchServlet.class));
-
+
server.addServlet("/search/*", injector.getInstance(SearchServlet.class));
server.addServlet("/robot/dataapi", injector.getInstance(DataApiServlet.class));
@@ -189,7 +189,7 @@
gadgetServerPath);
ServletHolder proxyServletHolder = server.addServlet("/gadgets/*", proxyServlet);
proxyServletHolder.setInitParameter("HostHeader", gadgetServerHostname);
-
+
server.addServlet("/webclient/remote_logging",
injector.getInstance(RemoteLoggingServiceImpl.class));
// server.addServlet("/", injector.getInstance(WaveClientServlet.class));
@@ -203,7 +203,7 @@
private static void initializeFrontend(Injector injector, ServerRpcProvider server,
WaveBus waveBus, String waveDomain) throws WaveServerException {
HashedVersionFactory hashFactory = injector.getInstance(HashedVersionFactory.class);
-
+
WaveletProvider provider = injector.getInstance(WaveletProvider.class);
ClientFrontend frontend =
ClientFrontendImpl.create(hashFactory, provider, waveBus, waveDomain);
1
0
Author: vjrj_
Date: 2011-04-18 02:41:28 +0200 (Mon, 18 Apr 2011)
New Revision: 1315
Added:
trunk/src/main/java/cc/kune/core/client/registry/IconsRegistry.java
trunk/src/main/java/cc/kune/core/client/resources/nav/NavResources.java
trunk/src/main/java/cc/kune/docs/client/DocsClientTool.java
trunk/src/main/java/cc/kune/docs/client/DocsGinModule.java
trunk/src/main/java/cc/kune/docs/client/actions/
trunk/src/main/java/cc/kune/docs/client/actions/AbstractFoldableContentActions.java
trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java
trunk/src/main/java/cc/kune/docs/client/actions/DocsGoUpBtn.java
trunk/src/main/java/cc/kune/docs/client/viewers/
trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.java
trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.ui.xml
trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPresenter.java
trunk/src/main/java/cc/kune/docs/client/viewers/FolderItemDescriptor.java
trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.java
trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.ui.xml
trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java
trunk/src/main/java/cc/kune/gspace/client/GSpaceArmor.java
trunk/src/main/java/cc/kune/gspace/client/GSpaceArmorEntryPoint.java
trunk/src/main/java/cc/kune/gspace/client/GSpaceArmorImpl.java
trunk/src/main/java/cc/kune/gspace/client/GSpaceArmorImpl.ui.xml
trunk/src/main/java/cc/kune/gspace/client/actions/perspective/MenuPerspective.java
trunk/src/test/java/org/ourproject/kune/platf/client/actions/IconsRegistryTest.java
Removed:
trunk/src/main/java/cc/kune/core/client/actions/ActionRegistries.java
trunk/src/main/java/cc/kune/core/client/registry/ContentIconsRegistry.java
trunk/src/main/java/cc/kune/docs/client/AbstractFoldableContentActions.java
trunk/src/main/java/cc/kune/docs/client/ContentRenameAction.java
trunk/src/main/java/cc/kune/docs/client/DocsGoUpBtn.java
trunk/src/main/java/cc/kune/docs/client/DocsViewerPanel.java
trunk/src/main/java/cc/kune/docs/client/DocsViewerPanel.ui.xml
trunk/src/main/java/cc/kune/docs/client/DocsViewerPresenter.java
trunk/src/main/java/cc/kune/docs/client/DocumentClientActions.java
trunk/src/main/java/cc/kune/docs/client/DocumentClientTool.java
trunk/src/main/java/cc/kune/docs/client/DocumentGinModule.java
trunk/src/main/java/cc/kune/docs/client/cnt/
trunk/src/main/java/cc/kune/docs/client/ctx/
trunk/src/main/java/cc/kune/gspace/client/WsArmor.java
trunk/src/main/java/cc/kune/gspace/client/WsArmorEntryPoint.java
trunk/src/main/java/cc/kune/gspace/client/WsArmorImpl.java
trunk/src/main/java/cc/kune/gspace/client/WsArmorImpl.ui.xml
trunk/src/test/java/org/ourproject/kune/platf/client/actions/ContentIconsRegistryTest.java
Modified:
trunk/src/main/java/cc/kune/client/KuneGinjector.java
trunk/src/main/java/cc/kune/client/OnAppStartFactory.java
trunk/src/main/java/cc/kune/common/client/actions/gwtui/GwtSimpleGuiItem.java
trunk/src/main/java/cc/kune/common/client/actions/ui/AbstractComposedGuiItem.java
trunk/src/main/java/cc/kune/common/client/actions/ui/ActionFlowPanel.java
trunk/src/main/java/cc/kune/common/client/actions/ui/ActionSimplePanel.java
trunk/src/main/java/cc/kune/common/client/actions/ui/IsActionExtensible.java
trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescProviderCollection.java
trunk/src/main/java/cc/kune/common/client/ui/BasicThumb.java
trunk/src/main/java/cc/kune/core/client/CoreGinModule.java
trunk/src/main/java/cc/kune/core/client/actions/ActionRegistryByType.java
trunk/src/main/java/cc/kune/core/client/auth/WaveClientSimpleAuthenticator.java
trunk/src/main/java/cc/kune/core/client/cnt/AbstractContentPanel.java
trunk/src/main/java/cc/kune/core/client/cnt/ActionContentToolbarImpl.java
trunk/src/main/java/cc/kune/core/client/cnt/FoldableContentPanel.java
trunk/src/main/java/cc/kune/core/client/registry/ContentCapabilitiesRegistry.java
trunk/src/main/java/cc/kune/core/client/resources/generateMainImageBundle.sh
trunk/src/main/java/cc/kune/core/client/sitebar/SitebarActionsPanel.java
trunk/src/main/java/cc/kune/core/client/sitebar/logo/SiteLogoViewImpl.java
trunk/src/main/java/cc/kune/core/client/sitebar/spaces/SpaceSelectorPresenter.java
trunk/src/main/java/cc/kune/core/client/sitebar/spaces/SpaceSelectorViewImpl.java
trunk/src/main/java/cc/kune/core/client/sn/AbstractSNPanel.java
trunk/src/main/java/cc/kune/core/client/sn/GroupSNPanel.java
trunk/src/main/java/cc/kune/core/client/sn/UserSNPanel.java
trunk/src/main/java/cc/kune/core/client/sn/actions/registry/AbstractSNActionsRegistry.java
trunk/src/main/java/cc/kune/core/client/sn/actions/registry/AbstractSNMembersActionsRegistry.java
trunk/src/main/java/cc/kune/core/client/ws/CoreViewImpl.java
trunk/src/main/java/cc/kune/core/client/ws/entheader/EntityHeaderPanel.java
trunk/src/main/java/cc/kune/core/shared/dto/HasContent.java
trunk/src/main/java/cc/kune/docs/client/DocsGinjector.java
trunk/src/main/java/cc/kune/docs/client/DocsParts.java
trunk/src/main/java/cc/kune/gspace/client/tags/TagsSummaryPanel.java
trunk/src/main/java/cc/kune/gspace/client/tool/ContentViewerSelector.java
trunk/src/main/java/cc/kune/gspace/client/tool/old/FoldableAbstractClientTool.java
trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorPanel.java
trunk/src/main/java/cc/kune/gspace/client/ui/footer/license/EntityLicensePanel.java
trunk/src/main/java/cc/kune/pspace/client/PSpacePanel.java
trunk/src/main/java/cc/kune/wave/client/WaveClientManager.java
trunk/src/main/java/org/ourproject/kune/blogs/client/cnt/BlogFolderContentPanel.java
trunk/src/main/java/org/ourproject/kune/blogs/client/cnt/BlogViewerPanel.java
trunk/src/main/java/org/ourproject/kune/chat/client/cnt/ChatRoomPanel.java
trunk/src/main/java/org/ourproject/kune/gallery/client/cnt/GalleryFolderContentPanel.java
trunk/src/main/java/org/ourproject/kune/gallery/client/cnt/GalleryViewerPanel.java
trunk/src/main/java/org/ourproject/kune/wiki/client/cnt/WikiFolderContentPanel.java
trunk/src/main/java/org/ourproject/kune/wiki/client/cnt/WikiViewerPanel.java
trunk/src/main/java/org/ourproject/kune/workspace/client/RegistryModule.java
trunk/src/main/java/org/ourproject/kune/workspace/client/ctxnav/ContextNavigatorPresenter.java
trunk/src/main/java/org/ourproject/kune/workspace/client/title/EntityTitlePresenter.java
trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceAddTest.java
trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceVariousTest.java
trunk/src/test/java/cc/kune/docs/DocumentToolTest.java
trunk/src/test/java/org/ourproject/kune/platf/client/ui/dialogs/upload/FileUploaderPresenterTest.java
Log:
Folder Viewer
Modified: trunk/src/main/java/cc/kune/client/KuneGinjector.java
===================================================================
--- trunk/src/main/java/cc/kune/client/KuneGinjector.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/client/KuneGinjector.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -49,7 +49,7 @@
import cc.kune.core.client.ws.entheader.EntityHeaderPresenter;
import cc.kune.core.shared.i18n.I18nTranslationService;
import cc.kune.docs.client.DocsGinjector;
-import cc.kune.docs.client.DocumentGinModule;
+import cc.kune.docs.client.DocsGinModule;
import cc.kune.gspace.client.GSpaceGinModule;
import cc.kune.gspace.client.GSpaceGinjector;
import cc.kune.pspace.client.PSpaceGinModule;
@@ -66,7 +66,7 @@
import com.gwtplatform.mvp.client.proxy.ProxyFailureHandler;
@GinModules({ KuneGinModule.class, CoreGinModule.class, ChatGinModule.class, WaveGinModule.class,
- PSpaceGinModule.class, GSpaceGinModule.class, DocumentGinModule.class })
+ PSpaceGinModule.class, GSpaceGinModule.class, DocsGinModule.class })
public interface KuneGinjector extends Ginjector, GSpaceGinjector, DocsGinjector {
/*
Modified: trunk/src/main/java/cc/kune/client/OnAppStartFactory.java
===================================================================
--- trunk/src/main/java/cc/kune/client/OnAppStartFactory.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/client/OnAppStartFactory.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -3,7 +3,7 @@
import cc.kune.core.client.init.AppStartEvent;
import cc.kune.core.client.init.AppStartEvent.AppStartHandler;
import cc.kune.core.client.state.Session;
-import cc.kune.docs.client.DocumentClientTool;
+import cc.kune.docs.client.DocsClientTool;
import com.google.inject.Inject;
import com.google.inject.Provider;
@@ -11,7 +11,7 @@
public class OnAppStartFactory {
@Inject
- public OnAppStartFactory(final Session session, final Provider<DocumentClientTool> docClientTool) {
+ public OnAppStartFactory(final Session session, final Provider<DocsClientTool> docClientTool) {
session.onAppStart(true, new AppStartHandler() {
@Override
public void onAppStart(final AppStartEvent event) {
Modified: trunk/src/main/java/cc/kune/common/client/actions/gwtui/GwtSimpleGuiItem.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/gwtui/GwtSimpleGuiItem.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/common/client/actions/gwtui/GwtSimpleGuiItem.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -41,8 +41,14 @@
}
@Override
+ public void clear() {
+ super.clear();
+ bar.clear();
+ }
+
+ @Override
protected void insertWidget(final AbstractGuiItem item, final int position) {
- int count = bar.getWidgetCount();
+ final int count = bar.getWidgetCount();
bar.insert(item, count < position ? count : position);
}
Modified: trunk/src/main/java/cc/kune/common/client/actions/ui/AbstractComposedGuiItem.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/ui/AbstractComposedGuiItem.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/common/client/actions/ui/AbstractComposedGuiItem.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -78,9 +78,7 @@
if (binding == null) {
throw new UIException("Unknown binding for: " + descrip);
} else {
- // Log.debug("Creating: " + descrip);
final AbstractGuiItem item = binding.create(descrip);
- // Log.debug("Adding: " + descrip);
if (binding.shouldBeAdded()) {
if (descrip.getPosition() == GuiActionDescrip.NO_POSITION) {
addWidget(item);
@@ -92,6 +90,11 @@
}
}
+ @Override
+ public void clear() {
+ getGuiItems().clear();
+ }
+
public GuiActionDescCollection getGuiItems() {
if (guiItems == null) {
guiItems = new GuiActionDescCollection();
Modified: trunk/src/main/java/cc/kune/common/client/actions/ui/ActionFlowPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/ui/ActionFlowPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/common/client/actions/ui/ActionFlowPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -41,8 +41,14 @@
}
@Override
+ public void clear() {
+ super.clear();
+ bar.clear();
+ }
+
+ @Override
protected void insertWidget(final AbstractGuiItem item, final int position) {
final int count = bar.getWidgetCount();
bar.insert(item, count < position ? count : position);
}
-}
+}
\ No newline at end of file
Modified: trunk/src/main/java/cc/kune/common/client/actions/ui/ActionSimplePanel.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/ui/ActionSimplePanel.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/common/client/actions/ui/ActionSimplePanel.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -40,7 +40,9 @@
bar.add(item);
}
+ @Override
public void clear() {
+ super.clear();
bar.clear();
}
Modified: trunk/src/main/java/cc/kune/common/client/actions/ui/IsActionExtensible.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/ui/IsActionExtensible.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/common/client/actions/ui/IsActionExtensible.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -35,17 +35,19 @@
/**
* Adds some action descriptions
*
- * @param actions
- * the actions
+ * @param action
+ * the action
*/
- void addAll(GuiActionDescCollection actions);
+ void add(GuiActionDescrip... actions);
/**
* Adds some action descriptions
*
- * @param action
- * the action
+ * @param actions
+ * the actions
*/
- void add(GuiActionDescrip... actions);
+ void addAll(GuiActionDescCollection actions);
+ void clear();
+
}
Modified: trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescProviderCollection.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescProviderCollection.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescProviderCollection.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -23,12 +23,12 @@
import com.google.inject.Provider;
-public class GuiActionDescProviderCollection extends ArrayList<Provider<GuiActionDescrip>> {
+public class GuiActionDescProviderCollection extends ArrayList<Provider<? extends GuiActionDescrip>> {
private static final long serialVersionUID = -7933642706229301169L;
- public void add(final Provider<GuiActionDescrip>... descriptors) {
- for (final Provider<GuiActionDescrip> descriptor : descriptors) {
+ public void add(final Provider<? extends GuiActionDescrip>... descriptors) {
+ for (final Provider<? extends GuiActionDescrip> descriptor : descriptors) {
super.add(descriptor);
}
}
Modified: trunk/src/main/java/cc/kune/common/client/ui/BasicThumb.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/ui/BasicThumb.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/common/client/ui/BasicThumb.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -19,14 +19,17 @@
*/
package cc.kune.common.client.ui;
+import cc.kune.common.client.log.Log;
import cc.kune.common.client.tooltip.Tooltip;
import cc.kune.common.client.utils.TextUtils;
import com.google.gwt.event.dom.client.ClickHandler;
+import com.google.gwt.event.dom.client.DoubleClickHandler;
import com.google.gwt.event.dom.client.MouseOutEvent;
import com.google.gwt.event.dom.client.MouseOutHandler;
import com.google.gwt.event.dom.client.MouseOverEvent;
import com.google.gwt.event.dom.client.MouseOverHandler;
+import com.google.gwt.resources.client.ImageResource;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.Image;
import com.google.gwt.user.client.ui.Label;
@@ -41,25 +44,44 @@
private final Label label;
private boolean onOverLabel;
- public BasicThumb(final String imageUrl, final int imgSize, final String text, final int textMaxLenght,
+ public BasicThumb(final Object imageRef, final int imgSize, final String text, final int textMaxLenght,
final boolean crop) {
- this(imageUrl, imgSize, text, textMaxLenght, crop, null);
+ this(imageRef, imgSize, text, textMaxLenght, crop, null);
}
- public BasicThumb(final String imageUrl, final int imgSize, final String text, final int textMaxLenght,
+ /**
+ *
+ * @param imageRef
+ * This can be a ImageResource or a String Url
+ * @param imgSize
+ * @param text
+ * @param textMaxLenght
+ * @param crop
+ * @param clickHandler
+ */
+ public BasicThumb(final Object imageRef, final int imgSize, final String text, final int textMaxLenght,
final boolean crop, final ClickHandler clickHandler) {
super();
onOverLabel = false;
final VerticalPanel vpanel = new VerticalPanel();
- if (imgSize == NOSIZE) {
- image = new Image(imageUrl);
- } else {
- if (crop) {
- image = new Image(imageUrl, 0, 0, imgSize, imgSize);
+ if (imageRef instanceof String) {
+ final String imageUrl = (String) imageRef;
+ if (imgSize == NOSIZE) {
+ image = new Image(imageUrl);
} else {
- image = new Image(imageUrl);
- image.setPixelSize(imgSize, imgSize);
+ if (crop) {
+ image = new Image(imageUrl, 0, 0, imgSize, imgSize);
+ } else {
+ image = new Image(imageUrl);
+ image.setPixelSize(imgSize, imgSize);
+ }
}
+ } else if (imageRef instanceof ImageResource) {
+ image = new Image((ImageResource) imageRef);
+ } else {
+ // This should not happen
+ image = new Image();
+ Log.info("Unrecognized icon of BasicThumb: " + imageRef);
}
final String title = textMaxLenght == NOSIZE ? text : TextUtils.ellipsis(text, textMaxLenght);
label = new Label(title);
@@ -94,12 +116,12 @@
initWidget(vpanel);
}
- public BasicThumb(final String imageUrl, final String thumText, final ClickHandler clickHandler) {
- this(imageUrl, NOSIZE, thumText, NOSIZE, false, clickHandler);
+ public BasicThumb(final Object imageRef, final String thumText, final ClickHandler clickHandler) {
+ this(imageRef, NOSIZE, thumText, NOSIZE, false, clickHandler);
}
- public BasicThumb(final String imageUrl, final String text, final int textMaxLenght, final ClickHandler clickHandler) {
- this(imageUrl, NOSIZE, text, textMaxLenght, false, clickHandler);
+ public BasicThumb(final Object imageRef, final String text, final int textMaxLenght, final ClickHandler clickHandler) {
+ this(imageRef, NOSIZE, text, textMaxLenght, false, clickHandler);
}
public void addClickHandler(final ClickHandler clickHandler) {
@@ -111,6 +133,15 @@
image.addClickHandler(clickHandler);
}
+ public void addDoubleClickHandler(final DoubleClickHandler clickHandler) {
+ addDoubleClickHandlerImpl(clickHandler);
+ }
+
+ private void addDoubleClickHandlerImpl(final DoubleClickHandler clickHandler) {
+ label.addDoubleClickHandler(clickHandler);
+ image.addDoubleClickHandler(clickHandler);
+ }
+
public void setLabelVisible(final boolean visible) {
label.setVisible(visible);
}
@@ -128,11 +159,8 @@
}
public void setTooltip(final String tip) {
- // DOM.setElementAttribute(thumbImg.getElement(), "qtip", tip);
- image.setTitle(tip);
- label.setTitle(tip);
- // KuneUiUtils.setQuickTip(thumbImg, tip);
- // KuneUiUtils.setQuickTip(thumbLabel, tip);
+ Tooltip.to(image, tip);
+ Tooltip.to(label, tip);
}
public void setTooltip(final String tipTitle, final String tip) {
Modified: trunk/src/main/java/cc/kune/core/client/CoreGinModule.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/CoreGinModule.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/core/client/CoreGinModule.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -28,7 +28,7 @@
import cc.kune.common.client.shortcuts.GlobalShortcutRegister;
import cc.kune.common.client.ui.MaskWidget;
import cc.kune.common.client.ui.MaskWidgetView;
-import cc.kune.core.client.actions.ActionRegistries;
+import cc.kune.core.client.actions.ActionRegistryByType;
import cc.kune.core.client.auth.Register;
import cc.kune.core.client.auth.RegisterPanel;
import cc.kune.core.client.auth.RegisterPresenter;
@@ -57,6 +57,7 @@
import cc.kune.core.client.notify.msgs.UserNotifierViewImpl;
import cc.kune.core.client.notify.spiner.SpinerPresenter;
import cc.kune.core.client.notify.spiner.SpinerViewImpl;
+import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
import cc.kune.core.client.sitebar.SiteUserOptions;
import cc.kune.core.client.sitebar.SiteUserOptionsPresenter;
import cc.kune.core.client.sitebar.SitebarActions;
@@ -99,8 +100,8 @@
import cc.kune.core.client.ws.entheader.EntityHeaderPanel;
import cc.kune.core.client.ws.entheader.EntityHeaderPresenter;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.WsArmor;
-import cc.kune.gspace.client.WsArmorImpl;
+import cc.kune.gspace.client.GSpaceArmor;
+import cc.kune.gspace.client.GSpaceArmorImpl;
import cc.kune.gspace.client.tags.TagsSummaryPanel;
import cc.kune.gspace.client.tags.TagsSummaryPresenter;
import cc.kune.gspace.client.ui.footer.license.EntityLicensePanel;
@@ -174,12 +175,11 @@
s(UserMessagesPresenter.class);
s(UserMessagesPanel.class);
-
// bind(MessagePanelView.class).to(MessagePanel.class);
// UI
- s(WsArmorImpl.class);
- bind(WsArmor.class).to(WsArmorImpl.class).in(Singleton.class);
+ s(GSpaceArmorImpl.class);
+ bind(GSpaceArmor.class).to(GSpaceArmorImpl.class).in(Singleton.class);
bind(GuiProvider.class).to(DefaultGuiProvider.class).in(Singleton.class);
s(GxtGuiProvider.class);
s(GwtGuiProvider.class);
@@ -202,7 +202,8 @@
s(SiteTokens.class);
s(ReservedWordsRegistry.class);
eagle(TokenMatcher.class);
- s(ActionRegistries.class);
+ s(ActionRegistryByType.class);
+ s(ContentCapabilitiesRegistry.class);
eagle(CoreParts.class);
// SN
Deleted: trunk/src/main/java/cc/kune/core/client/actions/ActionRegistries.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/actions/ActionRegistries.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/core/client/actions/ActionRegistries.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -1,18 +0,0 @@
-package cc.kune.core.client.actions;
-
-
-public class ActionRegistries {
-
- ActionRegistryByType contentFooterActions;
- ActionRegistryByType contentHeaderActions;
- ActionRegistryByType contentItemMenu;
- ActionRegistryByType contentSubHeaderActions;
-
- public ActionRegistries() {
- contentSubHeaderActions = new ActionRegistryByType();
- contentHeaderActions = new ActionRegistryByType();
- contentFooterActions = new ActionRegistryByType();
- contentItemMenu = new ActionRegistryByType();
- }
-
-}
Modified: trunk/src/main/java/cc/kune/core/client/actions/ActionRegistryByType.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/actions/ActionRegistryByType.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/core/client/actions/ActionRegistryByType.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -31,11 +31,11 @@
collection.add(descrip);
}
- public void addAction(final Provider<GuiActionDescrip> action) {
+ public void addAction(final Provider<? extends GuiActionDescrip> action) {
addAction(action, GENERIC);
}
- public void addAction(final Provider<GuiActionDescrip> action, final String... typeIds) {
+ public void addAction(final Provider<? extends GuiActionDescrip> action, final String... typeIds) {
assert action != null;
for (final String typeId : typeIds) {
final GuiActionDescProviderCollection actionColl = getActions(typeId);
@@ -70,7 +70,7 @@
public GuiActionDescCollection getCurrentActions(final Object targetItem, final String typeId,
final boolean isLogged, final AccessRights rights, @Nullable final Class<?> clazz) {
final GuiActionDescCollection collection = new GuiActionDescCollection();
- for (final Provider<GuiActionDescrip> descripProv : getActions(typeId)) {
+ for (final Provider<? extends GuiActionDescrip> descripProv : getActions(typeId)) {
final GuiActionDescrip descrip = descripProv.get();
final AbstractAction action = descrip.getAction();
final Object perspective = descrip.getValue(ActionPerspective.KEY);
Modified: trunk/src/main/java/cc/kune/core/client/auth/WaveClientSimpleAuthenticator.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/auth/WaveClientSimpleAuthenticator.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/core/client/auth/WaveClientSimpleAuthenticator.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -2,7 +2,7 @@
import cc.kune.common.client.log.Log;
import cc.kune.common.client.notify.NotifyUser;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import com.google.gwt.http.client.Request;
import com.google.gwt.http.client.RequestBuilder;
@@ -16,10 +16,10 @@
public class WaveClientSimpleAuthenticator {
- private final WsArmor wsArmor;
+ private final GSpaceArmor wsArmor;
@Inject
- public WaveClientSimpleAuthenticator(final WsArmor wsArmor) {
+ public WaveClientSimpleAuthenticator(final GSpaceArmor wsArmor) {
this.wsArmor = wsArmor;
}
Modified: trunk/src/main/java/cc/kune/core/client/cnt/AbstractContentPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/cnt/AbstractContentPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/core/client/cnt/AbstractContentPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -19,7 +19,7 @@
*/
package cc.kune.core.client.cnt;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import com.google.gwt.user.client.ui.InsertPanel.ForIsWidget;
import com.google.gwt.user.client.ui.Widget;
@@ -28,7 +28,7 @@
private Widget widget;
private final ForIsWidget ws;
- public AbstractContentPanel(final WsArmor ws) {
+ public AbstractContentPanel(final GSpaceArmor ws) {
this.ws = ws.getDocContainer();
}
Modified: trunk/src/main/java/cc/kune/core/client/cnt/ActionContentToolbarImpl.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/cnt/ActionContentToolbarImpl.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/core/client/cnt/ActionContentToolbarImpl.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -21,7 +21,7 @@
import cc.kune.common.client.actions.ui.ActionFlowPanel;
import cc.kune.common.client.actions.ui.bind.GuiProvider;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import com.google.gwt.user.client.ui.InsertPanel.ForIsWidget;
import com.google.inject.Inject;
@@ -31,7 +31,7 @@
private final ForIsWidget wsToolbar;
@Inject
- public ActionContentToolbarImpl(final GuiProvider guiProvider, final WsArmor wsArmor) {
+ public ActionContentToolbarImpl(final GuiProvider guiProvider, final GSpaceArmor wsArmor) {
super(guiProvider);
this.wsToolbar = wsArmor.getDocSubheader();
}
Modified: trunk/src/main/java/cc/kune/core/client/cnt/FoldableContentPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/cnt/FoldableContentPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/core/client/cnt/FoldableContentPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -24,7 +24,7 @@
import cc.kune.common.client.ui.IconLabel;
import cc.kune.core.client.resources.CoreResources;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import cc.kune.wave.client.WaveClientManager;
import com.google.gwt.event.dom.client.ClickEvent;
@@ -44,7 +44,7 @@
private final IconLabel messageLabel;
private final FlowPanel messagePanel;
- public FoldableContentPanel(final WsArmor ws, final I18nTranslationService i18n, final CoreResources res,
+ public FoldableContentPanel(final GSpaceArmor ws, final I18nTranslationService i18n, final CoreResources res,
final WaveClientManager waveClientManager) {
super(ws);
this.i18n = i18n;
Modified: trunk/src/main/java/cc/kune/core/client/registry/ContentCapabilitiesRegistry.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/registry/ContentCapabilitiesRegistry.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/core/client/registry/ContentCapabilitiesRegistry.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -30,7 +30,7 @@
private final DragableRegistry dragable;
private final DropableRegistry dropable;
private final EmailSubscribeAbleRegistry emailSubscribeAble;
- private final ContentIconsRegistry iconsRegistry;
+ private final IconsRegistry iconsRegistry;
private final LicensableRegistry licensable;
private final PublishModerableRegistry publishModerable;
private final RateableRegistry rateable;
@@ -43,7 +43,7 @@
@Inject
public ContentCapabilitiesRegistry(final AuthorableRegistry authorableRegistry,
- final AclEditableRegistry aclEditableRegistry, final ContentIconsRegistry iconsRegistry,
+ final AclEditableRegistry aclEditableRegistry, final IconsRegistry iconsRegistry,
final CanBeHomepageRegistry canBeHomepage, final ComentableRegistry comentable,
final DragableRegistry dragable, final DropableRegistry dropable,
final EmailSubscribeAbleRegistry emailSubscribeAble, final LicensableRegistry licensable,
@@ -102,7 +102,7 @@
return emailSubscribeAble;
}
- public ContentIconsRegistry getIconsRegistry() {
+ public IconsRegistry getIconsRegistry() {
return iconsRegistry;
}
Deleted: trunk/src/main/java/cc/kune/core/client/registry/ContentIconsRegistry.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/registry/ContentIconsRegistry.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/core/client/registry/ContentIconsRegistry.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -1,78 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2011 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 cc.kune.core.client.registry;
-
-import java.util.HashMap;
-
-import cc.kune.core.shared.dto.BasicMimeTypeDTO;
-
-public class ContentIconsRegistry {
- private final HashMap<String, String> contentTypesIcons;
-
- public ContentIconsRegistry() {
- contentTypesIcons = new HashMap<String, String>();
- }
-
- public String getContentTypeIcon(final String typeId) {
- final String icon = contentTypesIcons.get(typeId);
- return icon == null ? "" : icon;
- }
-
- /**
- * If there is a specific icon for a type/subtype pair or a generic type
- * icon in defect
- *
- * @param typeId
- * the kune typeId (see *ClientTool)
- * @param mimeType
- * @return
- */
- public String getContentTypeIcon(final String typeId, final BasicMimeTypeDTO mimeType) {
- String icon = getContentTypeIcon(concatenate(typeId, mimeType));
- if (icon.equals("")) {
- if (mimeType == null) {
- return getContentTypeIcon(typeId);
- }
- } else {
- return icon;
- }
- final String subtype = mimeType.getSubtype();
- if (subtype != null && subtype.length() > 0) {
- icon = getContentTypeIcon(typeId, new BasicMimeTypeDTO(mimeType.getType()));
- }
- return icon.equals("") ? getContentTypeIcon(typeId) : icon;
- }
-
- public void registerContentTypeIcon(final String typeId, final BasicMimeTypeDTO mimeType, final String iconUrl) {
- registerContentTypeIcon(concatenate(typeId, mimeType), iconUrl);
- }
-
- public void registerContentTypeIcon(final String contentTypeId, final String iconUrl) {
- contentTypesIcons.put(contentTypeId, iconUrl);
- }
-
- private String concatenate(final String typeId, final BasicMimeTypeDTO mimeType) {
- if (mimeType != null) {
- return typeId + "|" + mimeType;
- } else {
- return typeId;
- }
- }
-}
Added: trunk/src/main/java/cc/kune/core/client/registry/IconsRegistry.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/registry/IconsRegistry.java (rev 0)
+++ trunk/src/main/java/cc/kune/core/client/registry/IconsRegistry.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -0,0 +1,78 @@
+/*
+ *
+ * Copyright (C) 2007-2011 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 cc.kune.core.client.registry;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import cc.kune.core.shared.dto.BasicMimeTypeDTO;
+
+public class IconsRegistry {
+ private final Map<String, Object> contentTypesIcons;
+
+ public IconsRegistry() {
+ contentTypesIcons = new HashMap<String, Object>();
+ }
+
+ private String concatenate(final String typeId, final BasicMimeTypeDTO mimeType) {
+ if (mimeType != null) {
+ return typeId + "|" + mimeType;
+ } else {
+ return typeId;
+ }
+ }
+
+ public Object getContentTypeIcon(final String typeId) {
+ return contentTypesIcons.get(typeId);
+ }
+
+ /**
+ * If there is a specific icon for a type/subtype pair or a generic type
+ * icon in defect
+ *
+ * @param typeId
+ * the kune typeId (see *ClientTool)
+ * @param mimeType
+ * @return
+ */
+ public Object getContentTypeIcon(final String typeId, final BasicMimeTypeDTO mimeType) {
+ Object icon = getContentTypeIcon(concatenate(typeId, mimeType));
+ if (icon == null) {
+ if (mimeType == null) {
+ return getContentTypeIcon(typeId);
+ }
+ } else {
+ return icon;
+ }
+ final String subtype = mimeType.getSubtype();
+ if (subtype != null && subtype.length() > 0) {
+ icon = getContentTypeIcon(typeId, new BasicMimeTypeDTO(mimeType.getType()));
+ }
+ return icon == null ? getContentTypeIcon(typeId) : icon;
+ }
+
+ public void registerContentTypeIcon(final String typeId, final BasicMimeTypeDTO mimeType, final Object icon) {
+ registerContentTypeIcon(concatenate(typeId, mimeType), icon);
+ }
+
+ public void registerContentTypeIcon(final String contentTypeId, final Object icon) {
+ contentTypesIcons.put(contentTypeId, icon);
+ }
+}
Property changes on: trunk/src/main/java/cc/kune/core/client/registry/IconsRegistry.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/src/main/java/cc/kune/core/client/resources/generateMainImageBundle.sh
===================================================================
--- trunk/src/main/java/cc/kune/core/client/resources/generateMainImageBundle.sh 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/core/client/resources/generateMainImageBundle.sh 2011-04-18 00:41:28 UTC (rev 1315)
@@ -4,12 +4,12 @@
# @Resource("image")
# AbstractImagePrototype arrowDownWhite();
#
-
+PARAM=$*
cat << EOF
-import com.google.gwt.core.client.GWT;
-import com.google.gwt.user.client.ui.AbstractImagePrototype;
-import com.google.gwt.user.client.ui.ImageBundle;
+import com.google.gwt.resources.client.ClientBundle;
+import com.google.gwt.resources.client.ClientBundle.Source;
+import com.google.gwt.resources.client.ImageResource;
/**
*
@@ -18,7 +18,8 @@
*/
public interface XXXResources extends ClientBundle {
EOF
-for i in `ls -1 *png *gif 2> /dev/null`
+#for i in `ls -1 *png *gif 2> /dev/null`
+for i in `ls -1 $PARAM 2> /dev/null`
do
echo -e "\n@Source(\"$i\")\nImageResource" \
`echo ·$i |cut -d '.' -f 1 | sed 's/-/ /g' | sed 's/_/ /g' | perl -ne '@a=split;foreach (@a) {push @b,ucfirst};print "@b\n"' | sed 's/ //g' | sed 's/·//g'`"();"
Added: trunk/src/main/java/cc/kune/core/client/resources/nav/NavResources.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/resources/nav/NavResources.java (rev 0)
+++ trunk/src/main/java/cc/kune/core/client/resources/nav/NavResources.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -0,0 +1,94 @@
+package cc.kune.core.client.resources.nav;
+
+import com.google.gwt.resources.client.ClientBundle;
+import com.google.gwt.resources.client.ImageResource;
+
+public interface NavResources extends ClientBundle {
+
+ @Source("blog.png")
+ ImageResource blog();
+
+ @Source("blog_add.png")
+ ImageResource blogAdd();
+
+ @Source("download.png")
+ ImageResource download();
+
+ @Source("film.png")
+ ImageResource film();
+
+ @Source("folder.png")
+ ImageResource folder();
+
+ @Source("folder_add.png")
+ ImageResource folderAdd();
+
+ @Source("gallery.png")
+ ImageResource gallery();
+
+ @Source("gallery_add.png")
+ ImageResource galleryAdd();
+
+ @Source("go.png")
+ ImageResource go();
+
+ @Source("music.png")
+ ImageResource music();
+
+ @Source("page.png")
+ ImageResource page();
+
+ @Source("page_add.png")
+ ImageResource pageAdd();
+
+ @Source("page_excel.png")
+ ImageResource pageExcel();
+
+ @Source("page_pdf.png")
+ ImageResource pagePdf();
+
+ @Source("page_pps.png")
+ ImageResource pagePps();
+
+ @Source("page_text.png")
+ ImageResource pageText();
+
+ @Source("page_word.png")
+ ImageResource pageWord();
+
+ @Source("page_zip.png")
+ ImageResource pageZip();
+
+ @Source("picture.png")
+ ImageResource picture();
+
+ @Source("post.png")
+ ImageResource post();
+
+ @Source("post_add.png")
+ ImageResource postAdd();
+
+ @Source("refresh.png")
+ ImageResource refresh();
+
+ @Source("room.png")
+ ImageResource room();
+
+ @Source("room_add.png")
+ ImageResource roomAdd();
+
+ @Source("upload.png")
+ ImageResource upload();
+
+ @Source("wiki.png")
+ ImageResource wiki();
+
+ @Source("wiki_add.png")
+ ImageResource wikiAdd();
+
+ @Source("wikipage.png")
+ ImageResource wikipage();
+
+ @Source("wikipage_add.png")
+ ImageResource wikipageAdd();
+}
Property changes on: trunk/src/main/java/cc/kune/core/client/resources/nav/NavResources.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/src/main/java/cc/kune/core/client/sitebar/SitebarActionsPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sitebar/SitebarActionsPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/core/client/sitebar/SitebarActionsPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -23,7 +23,7 @@
import cc.kune.common.client.actions.ui.IsActionExtensible;
import cc.kune.core.client.sitebar.SitebarActionsPresenter.SitebarActionsView;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import com.google.gwt.user.client.ui.Widget;
import com.google.inject.Inject;
@@ -37,7 +37,7 @@
private final ActionSimplePanel toolbarRight;
@Inject
- public SitebarActionsPanel(final WsArmor armor, final ActionSimplePanel toolbarRight,
+ public SitebarActionsPanel(final GSpaceArmor armor, final ActionSimplePanel toolbarRight,
final ActionSimplePanel toolbarLeft, final I18nTranslationService i18n,
final Provider<AboutKuneDialog> aboutPanel) {
this.toolbarRight = toolbarRight;
Modified: trunk/src/main/java/cc/kune/core/client/sitebar/logo/SiteLogoViewImpl.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sitebar/logo/SiteLogoViewImpl.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/core/client/sitebar/logo/SiteLogoViewImpl.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -20,7 +20,7 @@
package cc.kune.core.client.sitebar.logo;
import cc.kune.core.client.sitebar.logo.SiteLogoPresenter.SiteLogoView;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import com.google.gwt.core.client.GWT;
import com.google.gwt.event.dom.client.ClickEvent;
@@ -43,7 +43,7 @@
Image logo;
@Inject
- public SiteLogoViewImpl(final WsArmor armor) {
+ public SiteLogoViewImpl(final GSpaceArmor armor) {
armor.getSitebar().insert(uiBinder.createAndBindUi(this), 0);
}
Modified: trunk/src/main/java/cc/kune/core/client/sitebar/spaces/SpaceSelectorPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sitebar/spaces/SpaceSelectorPresenter.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/core/client/sitebar/spaces/SpaceSelectorPresenter.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -26,7 +26,7 @@
import cc.kune.core.client.state.StateManager;
import cc.kune.core.client.state.TokenUtils;
import cc.kune.core.client.state.UserSignOutEvent;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
@@ -66,7 +66,7 @@
void setUserBtnDown(boolean down);
}
- private final WsArmor armor;
+ private final GSpaceArmor armor;
private Space currentSpace;
private String groupToken;
private String homeToken;
@@ -77,7 +77,7 @@
@Inject
public SpaceSelectorPresenter(final EventBus eventBus, final StateManager stateManager,
- final SpaceSelectorView view, final SpaceSelectorProxy proxy, final WsArmor armor, final Session session) {
+ final SpaceSelectorView view, final SpaceSelectorProxy proxy, final GSpaceArmor armor, final Session session) {
super(eventBus, view, proxy);
this.stateManager = stateManager;
this.armor = armor;
Modified: trunk/src/main/java/cc/kune/core/client/sitebar/spaces/SpaceSelectorViewImpl.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sitebar/spaces/SpaceSelectorViewImpl.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/core/client/sitebar/spaces/SpaceSelectorViewImpl.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -22,7 +22,7 @@
import cc.kune.common.client.tooltip.Tooltip;
import cc.kune.core.client.sitebar.spaces.SpaceSelectorPresenter.SpaceSelectorView;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import cc.kune.gspace.client.resources.WsArmorResources;
import com.google.gwt.core.client.GWT;
@@ -51,7 +51,7 @@
ToggleButton userButton;
@Inject
- public SpaceSelectorViewImpl(final WsArmor armor, final I18nTranslationService i18n, final WsArmorResources res) {
+ public SpaceSelectorViewImpl(final GSpaceArmor armor, final I18nTranslationService i18n, final WsArmorResources res) {
armor.getSitebar().insert(uiBinder.createAndBindUi(this), 0);
Tooltip.to(homeButton, i18n.t("Your home page in this site"));
Tooltip.to(userButton, i18n.t("User space: it shows a list of all your documents and contents "
Modified: trunk/src/main/java/cc/kune/core/client/sn/AbstractSNPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/AbstractSNPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/core/client/sn/AbstractSNPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -11,7 +11,7 @@
import cc.kune.common.client.tooltip.Tooltip;
import cc.kune.common.client.ui.BasicThumb;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import com.google.gwt.core.client.GWT;
import com.google.gwt.event.dom.client.ClickEvent;
@@ -83,7 +83,7 @@
ScrollPanel trdCategoryScroll;
protected final Widget widget;
- public AbstractSNPanel(final I18nTranslationService i18n, final GuiProvider guiProvider, final WsArmor armor) {
+ public AbstractSNPanel(final I18nTranslationService i18n, final GuiProvider guiProvider, final GSpaceArmor armor) {
widget = uiBinder.createAndBindUi(this);
actions = new ActionSimplePanel(guiProvider);
}
Modified: trunk/src/main/java/cc/kune/core/client/sn/GroupSNPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/GroupSNPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/core/client/sn/GroupSNPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -8,14 +8,14 @@
import cc.kune.core.client.sn.GroupSNPresenter.GroupSNView;
import cc.kune.core.shared.dto.GroupDTO;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import com.google.inject.Inject;
public class GroupSNPanel extends AbstractSNPanel implements GroupSNView {
@Inject
- public GroupSNPanel(final I18nTranslationService i18n, final GuiProvider guiProvider, final WsArmor armor) {
+ public GroupSNPanel(final I18nTranslationService i18n, final GuiProvider guiProvider, final GSpaceArmor armor) {
super(i18n, guiProvider, armor);
setVisible(false);
mainTitle.setText(i18n.t("Group members"));
Modified: trunk/src/main/java/cc/kune/core/client/sn/UserSNPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/UserSNPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/core/client/sn/UserSNPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -8,7 +8,7 @@
import cc.kune.core.shared.dto.GroupDTO;
import cc.kune.core.shared.dto.UserSimpleDTO;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import com.google.gwt.user.client.ui.Label;
import com.google.inject.Inject;
@@ -16,7 +16,7 @@
public class UserSNPanel extends AbstractSNPanel implements UserSNView {
@Inject
- public UserSNPanel(final I18nTranslationService i18n, final GuiProvider guiProvider, final WsArmor armor) {
+ public UserSNPanel(final I18nTranslationService i18n, final GuiProvider guiProvider, final GSpaceArmor armor) {
super(i18n, guiProvider, armor);
setVisible(false);
mainTitle.setText(i18n.t("His/her network:"));
Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/registry/AbstractSNActionsRegistry.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/actions/registry/AbstractSNActionsRegistry.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/core/client/sn/actions/registry/AbstractSNActionsRegistry.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -2,10 +2,6 @@
import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
-public abstract class AbstractSNActionsRegistry extends GuiActionDescCollection { // NOPMD
- // by
- // vjrj
- // on
- // 10/02/11
- // 3:19
+@SuppressWarnings("serial")
+public abstract class AbstractSNActionsRegistry extends GuiActionDescCollection {
}
\ No newline at end of file
Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/registry/AbstractSNMembersActionsRegistry.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/actions/registry/AbstractSNMembersActionsRegistry.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/core/client/sn/actions/registry/AbstractSNMembersActionsRegistry.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -6,5 +6,6 @@
import com.google.inject.Provider;
-public abstract class AbstractSNMembersActionsRegistry extends ArrayList<Provider<MenuItemDescriptor>> { // NOPMD by vjrj on 10/02/11 3:19
+@SuppressWarnings("serial")
+public abstract class AbstractSNMembersActionsRegistry extends ArrayList<Provider<MenuItemDescriptor>> {
}
\ No newline at end of file
Modified: trunk/src/main/java/cc/kune/core/client/ws/CoreViewImpl.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/ws/CoreViewImpl.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/core/client/ws/CoreViewImpl.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -21,7 +21,7 @@
import cc.kune.core.client.resources.CoreResources;
import cc.kune.core.client.state.StateManagerDefault;
-import cc.kune.gspace.client.WsArmorImpl;
+import cc.kune.gspace.client.GSpaceArmorImpl;
import cc.kune.gspace.client.resources.WsArmorResources;
import com.google.gwt.core.client.GWT;
@@ -35,7 +35,7 @@
*/
public class CoreViewImpl extends ViewImpl implements CorePresenter.CoreView {
- private final WsArmorImpl armor;
+ private final GSpaceArmorImpl armor;
/**
* Instantiates a new core view.
@@ -44,7 +44,7 @@
* the body
*/
@Inject
- public CoreViewImpl(final WsArmorImpl armor, final StateManagerDefault stateManager) {
+ public CoreViewImpl(final GSpaceArmorImpl armor, final StateManagerDefault stateManager) {
this.armor = armor;
GWT.<CoreResources> create(CoreResources.class).css().ensureInjected();
GWT.<WsArmorResources> create(WsArmorResources.class).style().ensureInjected();
Modified: trunk/src/main/java/cc/kune/core/client/ws/entheader/EntityHeaderPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/ws/entheader/EntityHeaderPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/core/client/ws/entheader/EntityHeaderPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -30,7 +30,7 @@
import cc.kune.core.client.ws.entheader.EntityHeaderPresenter.EntityHeaderView;
import cc.kune.core.shared.domain.utils.StateToken;
import cc.kune.core.shared.dto.GroupDTO;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import com.google.gwt.user.client.ui.AbstractImagePrototype;
import com.google.gwt.user.client.ui.HorizontalPanel;
@@ -53,7 +53,7 @@
@Inject
public EntityHeaderPanel(final Provider<FileDownloadUtils> downloadProvider, final CoreResources images,
- final GuiProvider bindings, final WsArmor armor) {
+ final GuiProvider bindings, final GSpaceArmor armor) {
mainPanel = new HorizontalPanel();
mainPanel.setWidth("100%");
this.downloadProvider = downloadProvider;
Modified: trunk/src/main/java/cc/kune/core/shared/dto/HasContent.java
===================================================================
--- trunk/src/main/java/cc/kune/core/shared/dto/HasContent.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/core/shared/dto/HasContent.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -1,7 +1,11 @@
package cc.kune.core.shared.dto;
public interface HasContent {
+
+ ContainerDTO getContainer();
+
String getTypeId();
void setTypeId(String typeId);
+
}
Deleted: trunk/src/main/java/cc/kune/docs/client/AbstractFoldableContentActions.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/AbstractFoldableContentActions.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/docs/client/AbstractFoldableContentActions.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -1,73 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2011 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 cc.kune.docs.client;
-
-import cc.kune.core.client.i18n.I18nUITranslationService;
-import cc.kune.core.client.init.AppStartEvent;
-import cc.kune.core.client.init.AppStartEvent.AppStartHandler;
-import cc.kune.core.client.state.Session;
-import cc.kune.core.client.state.StateManager;
-
-public abstract class AbstractFoldableContentActions {
-
- private static final String PUBLICATION_MENU = "Publication";
-
- protected final I18nUITranslationService i18n;
- protected final Session session;
- protected final StateManager stateManager;
-
- public AbstractFoldableContentActions(final Session session, final StateManager stateManager,
- final I18nUITranslationService i18n) {
- this.session = session;
- this.stateManager = stateManager;
- this.i18n = i18n;
- createActions();
- session.onAppStart(true, new AppStartHandler() {
- @Override
- public void onAppStart(final AppStartEvent event) {
- createPostSessionInitActions();
- }
- });
- }
-
- protected abstract void createActions();
-
- protected void createContentModeratedActions(final String parentMenuTitle, final String... contentsModerated) {
- }
-
- protected void createContentRenameAction(final String parentMenuTitle, final String textDescription,
- final String... registerInTypes) {
- }
-
- protected void createDelContainerAction(final String text, final String parentMenuTitle,
- final String... registerInTypes) {
- }
-
- protected void createDelContentAction(final String parentMenuTitle, final String textDescription,
- final String... registerInTypes) {
- }
-
- protected void createDownloadActions(final String typeUploadedfile) {
-
- }
-
- protected abstract void createPostSessionInitActions();
-
-}
Deleted: trunk/src/main/java/cc/kune/docs/client/ContentRenameAction.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/ContentRenameAction.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/docs/client/ContentRenameAction.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -1,20 +0,0 @@
-package cc.kune.docs.client;
-
-import cc.kune.common.client.actions.ActionEvent;
-import cc.kune.common.client.notify.NotifyUser;
-import cc.kune.common.client.utils.TextUtils;
-import cc.kune.core.client.actions.RolAction;
-import cc.kune.core.shared.dto.AccessRolDTO;
-
-public class ContentRenameAction extends RolAction {
-
- public ContentRenameAction() {
- super(AccessRolDTO.Editor, true);
- }
-
- @Override
- public void actionPerformed(final ActionEvent event) {
- NotifyUser.info(TextUtils.IN_DEVELOPMENT);
- }
-
-}
\ No newline at end of file
Copied: trunk/src/main/java/cc/kune/docs/client/DocsClientTool.java (from rev 1314, trunk/src/main/java/cc/kune/docs/client/DocumentClientTool.java)
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocsClientTool.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/DocsClientTool.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -0,0 +1,70 @@
+/*
+ *
+ * Copyright (C) 2007-2009 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 cc.kune.docs.client;
+
+import cc.kune.core.client.i18n.I18nUITranslationService;
+import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
+import cc.kune.core.client.resources.nav.NavResources;
+import cc.kune.gspace.client.tool.old.FoldableAbstractClientTool;
+import cc.kune.gspace.client.tool.selector.ToolSelector;
+
+import com.google.inject.Inject;
+
+public class DocsClientTool extends FoldableAbstractClientTool {
+ public static final String NAME = "docs";
+ public static final String TYPE_DOCUMENT = NAME + "." + "doc";
+ public static final String TYPE_FOLDER = NAME + "." + "folder";
+ public static final String TYPE_ROOT = NAME + "." + "root";
+ public static final String TYPE_UPLOADEDFILE = NAME + "." + FoldableAbstractClientTool.UPLOADEDFILE_SUFFIX;
+ public static final String TYPE_WAVE = NAME + "." + FoldableAbstractClientTool.WAVE_SUFFIX;
+ private final NavResources navResources;
+
+ @Inject
+ public DocsClientTool(final I18nUITranslationService i18n, final ToolSelector toolSelector,
+ final ContentCapabilitiesRegistry cntCapRegistry, final NavResources navResources) {
+ super(NAME, i18n.t("documents"), toolSelector, cntCapRegistry);
+ this.navResources = navResources;
+
+ // registerAclEditableTypes(TYPE_DOCUMENT, TYPE_UPLOADEDFILE);
+ registerAuthorableTypes(TYPE_DOCUMENT, TYPE_UPLOADEDFILE);
+ registerDragableTypes(TYPE_DOCUMENT, TYPE_FOLDER, TYPE_UPLOADEDFILE);
+ registerDropableTypes(TYPE_ROOT, TYPE_FOLDER);
+ registerPublishModerableTypes(TYPE_DOCUMENT, TYPE_UPLOADEDFILE);
+ registerRateableTypes(TYPE_DOCUMENT, TYPE_UPLOADEDFILE);
+ registerRenamableTypes(TYPE_DOCUMENT, TYPE_FOLDER, TYPE_UPLOADEDFILE);
+ registerTageableTypes(TYPE_DOCUMENT, TYPE_UPLOADEDFILE);
+ registerTranslatableTypes(TYPE_DOCUMENT, TYPE_FOLDER);
+
+ registerIcons();
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ private void registerIcons() {
+ registerContentTypeIcon(TYPE_FOLDER, navResources.folder());
+ registerContentTypeIcon(TYPE_DOCUMENT, navResources.page());
+ registerContentTypeIcon(TYPE_WAVE, navResources.page());
+ registerUploadTypesAndMimes(TYPE_UPLOADEDFILE);
+ }
+
+}
Copied: trunk/src/main/java/cc/kune/docs/client/DocsGinModule.java (from rev 1314, trunk/src/main/java/cc/kune/docs/client/DocumentGinModule.java)
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocsGinModule.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/DocsGinModule.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -0,0 +1,24 @@
+package cc.kune.docs.client;
+
+import cc.kune.docs.client.actions.DocsClientActions;
+import cc.kune.docs.client.viewers.DocViewerPanel;
+import cc.kune.docs.client.viewers.DocViewerPresenter;
+import cc.kune.docs.client.viewers.FolderViewerPanel;
+import cc.kune.docs.client.viewers.FolderViewerPresenter;
+
+import com.google.inject.Singleton;
+import com.gwtplatform.mvp.client.gin.AbstractPresenterModule;
+
+public class DocsGinModule extends AbstractPresenterModule {
+
+ @Override
+ protected void configure() {
+ bind(DocsClientTool.class).in(Singleton.class);
+ bind(DocsClientActions.class).in(Singleton.class);
+ bindPresenter(DocViewerPresenter.class, DocViewerPresenter.DocViewerView.class, DocViewerPanel.class,
+ DocViewerPresenter.DocViewerProxy.class);
+ bindPresenter(FolderViewerPresenter.class, FolderViewerPresenter.FolderViewerView.class,
+ FolderViewerPanel.class, FolderViewerPresenter.FolderViewerProxy.class);
+ }
+
+}
Property changes on: trunk/src/main/java/cc/kune/docs/client/DocsGinModule.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/src/main/java/cc/kune/docs/client/DocsGinjector.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocsGinjector.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/docs/client/DocsGinjector.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -1,5 +1,8 @@
package cc.kune.docs.client;
+import cc.kune.docs.client.viewers.DocViewerPresenter;
+import cc.kune.docs.client.viewers.FolderViewerPresenter;
+
import com.google.gwt.inject.client.AsyncProvider;
import com.google.gwt.inject.client.Ginjector;
@@ -7,6 +10,7 @@
DocsParts getDocsParts();
- AsyncProvider<DocsViewerPresenter> getDocsViewerPresenter();
+ AsyncProvider<DocViewerPresenter> getDocsViewerPresenter();
+ AsyncProvider<FolderViewerPresenter> getFolderViewerPresenter();
}
Deleted: trunk/src/main/java/cc/kune/docs/client/DocsGoUpBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocsGoUpBtn.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/docs/client/DocsGoUpBtn.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -1,32 +0,0 @@
-package cc.kune.docs.client;
-
-import cc.kune.common.client.actions.AbstractExtendedAction;
-import cc.kune.common.client.actions.ActionEvent;
-import cc.kune.common.client.actions.ui.descrip.ButtonDescriptor;
-import cc.kune.core.client.resources.CoreResources;
-import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.actions.perspective.ViewPerspective;
-
-import com.google.inject.Inject;
-
-public class DocsGoUpBtn extends ButtonDescriptor {
-
- public class DocNewAction extends AbstractExtendedAction {
-
- public DocNewAction() {
- }
-
- @Override
- public void actionPerformed(final ActionEvent event) {
- }
-
- }
-
- @Inject
- public DocsGoUpBtn(final I18nTranslationService i18n, final DocNewAction action, final CoreResources res) {
- super(action);
- this.withToolTip(i18n.t("Go up: Open the container folder")).withIcon(res.folderGoUp()).in(
- ViewPerspective.class);
- }
-
-}
Modified: trunk/src/main/java/cc/kune/docs/client/DocsParts.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocsParts.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/docs/client/DocsParts.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -1,6 +1,8 @@
package cc.kune.docs.client;
import cc.kune.core.client.state.Session;
+import cc.kune.docs.client.viewers.DocViewerPresenter;
+import cc.kune.docs.client.viewers.FolderViewerPresenter;
import com.google.inject.Inject;
import com.google.inject.Provider;
@@ -8,7 +10,10 @@
public class DocsParts {
@Inject
- public DocsParts(final Session session, final Provider<DocsViewerPresenter> docsViewer) {
+ public DocsParts(final Session session, final Provider<DocViewerPresenter> docsViewer,
+ final Provider<FolderViewerPresenter> folderViewer, final Provider<DocsClientTool> docsClientTool) {
+ docsClientTool.get();
docsViewer.get();
+ folderViewer.get();
}
}
\ No newline at end of file
Deleted: trunk/src/main/java/cc/kune/docs/client/DocsViewerPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocsViewerPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/docs/client/DocsViewerPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -1,156 +0,0 @@
-package cc.kune.docs.client;
-
-import org.waveprotocol.box.webclient.client.ClientIdGenerator;
-import org.waveprotocol.box.webclient.client.RemoteViewServiceMultiplexer;
-import org.waveprotocol.box.webclient.client.Session;
-import org.waveprotocol.box.webclient.client.SimpleWaveStore;
-import org.waveprotocol.box.webclient.client.StagesProvider;
-import org.waveprotocol.box.webclient.client.WaveWebSocketClient;
-import org.waveprotocol.box.webclient.search.WaveStore;
-import org.waveprotocol.box.webclient.widget.loading.LoadingIndicator;
-import org.waveprotocol.wave.client.account.ProfileManager;
-import org.waveprotocol.wave.client.account.impl.ProfileManagerImpl;
-import org.waveprotocol.wave.client.widget.common.ImplPanel;
-import org.waveprotocol.wave.model.id.IdGenerator;
-import org.waveprotocol.wave.model.wave.ParticipantId;
-import org.waveprotocol.wave.model.waveref.InvalidWaveRefException;
-import org.waveprotocol.wave.model.waveref.WaveRef;
-import org.waveprotocol.wave.util.escapers.GwtWaverefEncoder;
-
-import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
-import cc.kune.common.client.errors.UIException;
-import cc.kune.core.shared.dto.StateContentDTO;
-import cc.kune.docs.client.DocsViewerPresenter.DocsViewerView;
-import cc.kune.gspace.client.WsArmor;
-import cc.kune.wave.client.WaveClientManager;
-import cc.kune.wave.client.WebClient;
-
-import com.google.gwt.core.client.GWT;
-import com.google.gwt.dom.client.Document;
-import com.google.gwt.dom.client.Element;
-import com.google.gwt.safehtml.shared.SafeHtmlUtils;
-import com.google.gwt.uibinder.client.UiBinder;
-import com.google.gwt.uibinder.client.UiField;
-import com.google.gwt.user.client.Command;
-import com.google.gwt.user.client.ui.DeckPanel;
-import com.google.gwt.user.client.ui.InlineHTML;
-import com.google.gwt.user.client.ui.InsertPanel.ForIsWidget;
-import com.google.gwt.user.client.ui.Label;
-import com.google.gwt.user.client.ui.Widget;
-import com.google.inject.Inject;
-import com.gwtplatform.mvp.client.ViewImpl;
-
-public class DocsViewerPanel extends ViewImpl implements DocsViewerView {
- interface DocsViewerPanelUiBinder extends UiBinder<Widget, DocsViewerPanel> {
- }
-
- private static DocsViewerPanelUiBinder uiBinder = GWT.create(DocsViewerPanelUiBinder.class);
-
- private RemoteViewServiceMultiplexer channel;
- @UiField
- DeckPanel deck;
- private IdGenerator idGenerator;
- private final Element loading = new LoadingIndicator().getElement();
- @UiField
- InlineHTML onlyViewPanel;
- private ProfileManager profiles;
- /** The wave panel, if a wave is open. */
- private StagesProvider wave;
- private final WaveClientManager waveClientManager;
- // @UiField
- // FramedPanel waveFrame;
- @UiField
- ImplPanel waveHolder;
- private final WaveStore waveStore = new SimpleWaveStore();
- private final Widget widget;
- private final WsArmor wsArmor;
-
- @Inject
- public DocsViewerPanel(final WsArmor wsArmor, final WaveClientManager waveClientManager) {
- this.wsArmor = wsArmor;
- this.waveClientManager = waveClientManager;
- widget = uiBinder.createAndBindUi(this);
- }
-
- @Override
- public Widget asWidget() {
- return widget;
- }
-
- @Override
- public void attach() {
- final ForIsWidget docContainer = wsArmor.getDocContainer();
- final int widgetCount = docContainer.getWidgetCount();
- for (int i = 0; i < widgetCount; i++) {
- docContainer.remove(i);
- }
- docContainer.add(widget);
- }
-
- @Override
- public void detach() {
- widget.removeFromParent();
- }
-
- private WaveRef getWaveRef(final String waveRefS) {
- try {
- return GwtWaverefEncoder.decodeWaveRefFromPath(waveRefS);
- } catch (final InvalidWaveRefException e) {
- throw new UIException("Invalid waveref: " + waveRefS);
- }
- }
-
- private void initWaveClientIfNeeded() {
- if (channel == null) {
- final WaveWebSocketClient webSocket = new WaveWebSocketClient(WebClient.useSocketIO(),
- WebClient.getWebSocketBaseUrl(GWT.getModuleBaseURL()));
- webSocket.connect();
- channel = new RemoteViewServiceMultiplexer(webSocket,
- new ParticipantId(Session.get().getAddress()).getAddress());
- profiles = new ProfileManagerImpl();
- idGenerator = ClientIdGenerator.create();
- }
- }
-
- @Override
- public void setActions(final GuiActionDescCollection actions) {
- }
-
- @Override
- public void setContent(final StateContentDTO state) {
- final boolean editable = state.getContentRights().isEditable();
- if (editable) {
- // initWaveClientIfNeeded();
- // setEditableWaveContent(state.getWaveRef(), false);
- waveHolder.clear();
- waveHolder.add(new Label(state.getContent() + " (but here goes the Wave editor -we are testing it-)"));
- onlyViewPanel.setHTML(SafeHtmlUtils.fromTrustedString(state.getContent()));
- } else {
- onlyViewPanel.setHTML(SafeHtmlUtils.fromTrustedString(state.getContent()));
- }
- deck.showWidget(editable ? 0 : 1);
- }
-
- public void setEditableWaveContent(final String waveRefS, final boolean isNewWave) {
- final WaveRef waveRef = getWaveRef(waveRefS);
-
- if (wave != null) {
- wave.destroy();
- wave = null;
- }
-
- // Release the display:none.
- // UIObject.setVisible(waveFrame.getElement(), true);
- waveHolder.getElement().appendChild(loading);
- final Element holder = waveHolder.getElement().appendChild(Document.get().createDivElement());
- final StagesProvider wave = new StagesProvider(holder, waveHolder, waveRef, channel, idGenerator, profiles,
- waveStore, isNewWave);
- this.wave = wave;
- wave.load(new Command() {
- @Override
- public void execute() {
- loading.removeFromParent();
- }
- });
- }
-}
Deleted: trunk/src/main/java/cc/kune/docs/client/DocsViewerPanel.ui.xml
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocsViewerPanel.ui.xml 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/docs/client/DocsViewerPanel.ui.xml 2011-04-18 00:41:28 UTC (rev 1315)
@@ -1,25 +0,0 @@
-<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
-<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
- xmlns:g='urn:import:com.google.gwt.user.client.ui' xmlns:f='urn:import:org.waveprotocol.box.webclient.widget.frame'
- xmlns:w='urn:import:org.waveprotocol.wave.client.widget.common'>
- <ui:style>
- .wavePanel {
- margin: 0 0 0 0;
- }
- .waveHolder {
- position: absolute;
- top: 0;
- bottom: 0;
- left: 0;
- right: 0;
- }
- </ui:style>
- <g:HTMLPanel width="100%" height="100%">
- <g:DeckPanel ui:field="deck" addStyleNames="k-doc-content-deck">
-<!-- <f:FramedPanel ui:field="waveFrame" addStyleNames="{style.wavePanel}"> -->
-<!-- </f:FramedPanel> -->
- <w:ImplPanel ui:field="waveHolder" addStyleNames="{style.waveHolder}" />
- <g:InlineHTML ui:field="onlyViewPanel" />
- </g:DeckPanel>
- </g:HTMLPanel>
-</ui:UiBinder>
\ No newline at end of file
Deleted: trunk/src/main/java/cc/kune/docs/client/DocsViewerPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocsViewerPresenter.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/docs/client/DocsViewerPresenter.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -1,77 +0,0 @@
-package cc.kune.docs.client;
-
-import javax.annotation.Nonnull;
-
-import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
-import cc.kune.core.client.actions.ActionRegistryByType;
-import cc.kune.core.client.state.Session;
-import cc.kune.core.shared.domain.utils.AccessRights;
-import cc.kune.core.shared.dto.HasContent;
-import cc.kune.core.shared.dto.StateContentDTO;
-import cc.kune.gspace.client.tool.ContentViewer;
-import cc.kune.gspace.client.tool.ContentViewerSelector;
-
-import com.google.gwt.event.shared.EventBus;
-import com.google.inject.Inject;
-import com.gwtplatform.mvp.client.Presenter;
-import com.gwtplatform.mvp.client.View;
-import com.gwtplatform.mvp.client.annotations.ProxyCodeSplit;
-import com.gwtplatform.mvp.client.proxy.Proxy;
-import com.gwtplatform.mvp.client.proxy.RevealRootContentEvent;
-
-public class DocsViewerPresenter extends
- Presenter<DocsViewerPresenter.DocsViewerView, DocsViewerPresenter.DocsViewerProxy> implements ContentViewer {
-
- @ProxyCodeSplit
- public interface DocsViewerProxy extends Proxy<DocsViewerPresenter> {
- }
-
- public interface DocsViewerView extends View {
-
- void attach();
-
- void detach();
-
- void setActions(GuiActionDescCollection actions);
-
- void setContent(StateContentDTO state);
- }
-
- private final ActionRegistryByType actionsRegistry;
- private final Session session;
-
- @Inject
- public DocsViewerPresenter(final EventBus eventBus, final DocsViewerView view, final DocsViewerProxy proxy,
- final Session session, final ContentViewerSelector viewerSelector,
- final ActionRegistryByType actionsRegistry) {
- super(eventBus, view, proxy);
- this.session = session;
- this.actionsRegistry = actionsRegistry;
- viewerSelector.register(DocumentClientTool.TYPE_WAVE, this, true);
- }
-
- @Override
- public void attach() {
- getView().attach();
- }
-
- @Override
- public void detach() {
- getView().detach();
- }
-
- @Override
- protected void revealInParent() {
- RevealRootContentEvent.fire(this, this);
- }
-
- @Override
- public void setContent(@Nonnull final HasContent state) {
- final StateContentDTO stateContent = (StateContentDTO) state;
- final AccessRights rights = stateContent.getContentRights();
- final GuiActionDescCollection actions = actionsRegistry.getCurrentActions(stateContent.getGroup(),
- stateContent.getTypeId(), session.isLogged(), rights);
- getView().setActions(actions);
- getView().setContent(stateContent);
- }
-}
\ No newline at end of file
Deleted: trunk/src/main/java/cc/kune/docs/client/DocumentClientActions.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocumentClientActions.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/docs/client/DocumentClientActions.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -1,94 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2009 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 cc.kune.docs.client;
-
-import static cc.kune.docs.client.DocumentClientTool.TYPE_DOCUMENT;
-import static cc.kune.docs.client.DocumentClientTool.TYPE_FOLDER;
-import static cc.kune.docs.client.DocumentClientTool.TYPE_ROOT;
-import static cc.kune.docs.client.DocumentClientTool.TYPE_UPLOADEDFILE;
-import cc.kune.core.client.i18n.I18nUITranslationService;
-import cc.kune.core.client.state.Session;
-import cc.kune.core.client.state.StateManager;
-
-public class DocumentClientActions extends AbstractFoldableContentActions {
- public DocumentClientActions(final I18nUITranslationService i18n, final Session session,
- final StateManager stateManager) {
- super(session, stateManager, i18n);
- }
-
- @Override
- protected void createActions() {
- final String[] all = { TYPE_ROOT, TYPE_FOLDER, TYPE_DOCUMENT, TYPE_UPLOADEDFILE };
- final String[] containers = { TYPE_ROOT, TYPE_FOLDER, };
- final String[] contentsModerated = { TYPE_DOCUMENT, TYPE_UPLOADEDFILE };
- final String[] containersNoRoot = { TYPE_FOLDER };
- final String[] contents = { TYPE_DOCUMENT, TYPE_UPLOADEDFILE };
-
- // final String parentMenuTitle = i18n.t("File");
- // final String parentMenuTitleCtx = i18n.t("Folder");
- //
- // createNewContainerAction(TYPE_FOLDER, "images/nav/folder_add.png",
- // i18n.t("New folder"), parentMenuTitleCtx,
- // i18n.t("New"), i18n.t("New folder"), Position.ctx, TYPE_ROOT,
- // TYPE_FOLDER);
- //
- // createNewContentAction(TYPE_DOCUMENT, "images/nav/page_add.png",
- // i18n.t("New document"), parentMenuTitleCtx,
- // Position.ctx, TYPE_ROOT, TYPE_FOLDER);
- //
- // createTranslateAction(parentMenuTitle, TYPE_DOCUMENT, TYPE_FOLDER);
- // createContentRenameAction(parentMenuTitle, i18n.t("Rename"),
- // contents);
- // createEditAction(parentMenuTitle, TYPE_DOCUMENT);
- // createContentModeratedActions(parentMenuTitle, contentsModerated);
- // createRenameContentInCtxAction(parentMenuTitleCtx, i18n.t("Rename"),
- // containersNoRoot);
- //
- // // final ActionToolbarMenuDescriptor<StateToken> setAsDefGroupCxt =
- // // createSetAsDefContent(parentMenuTitleCtx);
- //
- // createRefreshCntAction(parentMenuTitle, contents);
- // createRefreshCxtAction(parentMenuTitleCtx, containers);
- //
- // createSetAsDefContent(parentMenuTitle, contents);
- //
- // createSetGroupBackImageAction(parentMenuTitle, TYPE_UPLOADEDFILE);
- //
- // createUploadAction(i18n.t("Upload file"), "images/nav/upload.png",
- // i18n.t("Upload files (images, PDFs...)"),
- // null, containers);
- //
- // createDownloadActions(TYPE_UPLOADEDFILE);
- //
- // createGoAction(all);
- //
- // createGoHomeAction(containers);
- //
- // createDelContainerAction("Delete folder", parentMenuTitleCtx,
- // containersNoRoot);
- // createDelContentAction(parentMenuTitle, i18n.t("Delete"), contents);
- // createShowDeletedItems(parentMenuTitleCtx, all);
- }
-
- @Override
- protected void createPostSessionInitActions() {
- // super.createUploadMediaAction(TYPE_GALLERY);
- }
-}
Deleted: trunk/src/main/java/cc/kune/docs/client/DocumentClientTool.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocumentClientTool.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/docs/client/DocumentClientTool.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -1,66 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2009 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 cc.kune.docs.client;
-
-import cc.kune.core.client.i18n.I18nUITranslationService;
-import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
-import cc.kune.gspace.client.tool.old.FoldableAbstractClientTool;
-import cc.kune.gspace.client.tool.selector.ToolSelector;
-
-import com.google.inject.Inject;
-
-public class DocumentClientTool extends FoldableAbstractClientTool {
- public static final String NAME = "docs";
- public static final String TYPE_DOCUMENT = NAME + "." + "doc";
- public static final String TYPE_FOLDER = NAME + "." + "folder";
- public static final String TYPE_ROOT = NAME + "." + "root";
- public static final String TYPE_UPLOADEDFILE = NAME + "." + FoldableAbstractClientTool.UPLOADEDFILE_SUFFIX;
- public static final String TYPE_WAVE = NAME + "." + FoldableAbstractClientTool.WAVE_SUFFIX;
-
- @Inject
- public DocumentClientTool(final I18nUITranslationService i18n, final ToolSelector toolSelector,
- final ContentCapabilitiesRegistry cntCapRegistry) {
- super(NAME, i18n.t("documents"), toolSelector, cntCapRegistry);
-
- // registerAclEditableTypes(TYPE_DOCUMENT, TYPE_UPLOADEDFILE);
- registerAuthorableTypes(TYPE_DOCUMENT, TYPE_UPLOADEDFILE);
- registerDragableTypes(TYPE_DOCUMENT, TYPE_FOLDER, TYPE_UPLOADEDFILE);
- registerDropableTypes(TYPE_ROOT, TYPE_FOLDER);
- registerPublishModerableTypes(TYPE_DOCUMENT, TYPE_UPLOADEDFILE);
- registerRateableTypes(TYPE_DOCUMENT, TYPE_UPLOADEDFILE);
- registerRenamableTypes(TYPE_DOCUMENT, TYPE_FOLDER, TYPE_UPLOADEDFILE);
- registerTageableTypes(TYPE_DOCUMENT, TYPE_UPLOADEDFILE);
- registerTranslatableTypes(TYPE_DOCUMENT, TYPE_FOLDER);
-
- registerIcons();
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- private void registerIcons() {
- registerContentTypeIcon(TYPE_FOLDER, "images/nav/folder.png");
- registerContentTypeIcon(TYPE_DOCUMENT, "images/nav/page.png");
- registerUploadTypesAndMimes(TYPE_UPLOADEDFILE);
- }
-
-}
Deleted: trunk/src/main/java/cc/kune/docs/client/DocumentGinModule.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocumentGinModule.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/docs/client/DocumentGinModule.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -1,15 +0,0 @@
-package cc.kune.docs.client;
-
-import com.google.inject.Singleton;
-import com.gwtplatform.mvp.client.gin.AbstractPresenterModule;
-
-public class DocumentGinModule extends AbstractPresenterModule {
-
- @Override
- protected void configure() {
- bind(DocumentClientTool.class).in(Singleton.class);
- bindPresenter(DocsViewerPresenter.class, DocsViewerPresenter.DocsViewerView.class, DocsViewerPanel.class,
- DocsViewerPresenter.DocsViewerProxy.class);
- }
-
-}
Copied: trunk/src/main/java/cc/kune/docs/client/actions/AbstractFoldableContentActions.java (from rev 1314, trunk/src/main/java/cc/kune/docs/client/AbstractFoldableContentActions.java)
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/AbstractFoldableContentActions.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/actions/AbstractFoldableContentActions.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -0,0 +1,76 @@
+/*
+ *
+ * Copyright (C) 2007-2011 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 cc.kune.docs.client.actions;
+
+import cc.kune.core.client.actions.ActionRegistryByType;
+import cc.kune.core.client.i18n.I18nUITranslationService;
+import cc.kune.core.client.init.AppStartEvent;
+import cc.kune.core.client.init.AppStartEvent.AppStartHandler;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.client.state.StateManager;
+
+public abstract class AbstractFoldableContentActions {
+
+ private static final String PUBLICATION_MENU = "Publication";
+
+ protected final ActionRegistryByType actionsRegistry;
+ protected final I18nUITranslationService i18n;
+ protected final Session session;
+ protected final StateManager stateManager;
+
+ public AbstractFoldableContentActions(final Session session, final StateManager stateManager,
+ final I18nUITranslationService i18n, final ActionRegistryByType actionsRegistry) {
+ this.session = session;
+ this.stateManager = stateManager;
+ this.i18n = i18n;
+ this.actionsRegistry = actionsRegistry;
+ createActions();
+ session.onAppStart(true, new AppStartHandler() {
+ @Override
+ public void onAppStart(final AppStartEvent event) {
+ createPostSessionInitActions();
+ }
+ });
+ }
+
+ protected abstract void createActions();
+
+ protected void createContentModeratedActions(final String parentMenuTitle, final String... contentsModerated) {
+ }
+
+ protected void createContentRenameAction(final String parentMenuTitle, final String textDescription,
+ final String... registerInTypes) {
+ }
+
+ protected void createDelContainerAction(final String text, final String parentMenuTitle,
+ final String... registerInTypes) {
+ }
+
+ protected void createDelContentAction(final String parentMenuTitle, final String textDescription,
+ final String... registerInTypes) {
+ }
+
+ protected void createDownloadActions(final String typeUploadedfile) {
+
+ }
+
+ protected abstract void createPostSessionInitActions();
+
+}
Property changes on: trunk/src/main/java/cc/kune/docs/client/actions/AbstractFoldableContentActions.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Copied: trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java (from rev 1314, trunk/src/main/java/cc/kune/docs/client/DocumentClientActions.java)
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/actions/DocsClientActions.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -0,0 +1,109 @@
+/*
+ *
+ * Copyright (C) 2007-2009 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 cc.kune.docs.client.actions;
+
+import static cc.kune.docs.client.DocsClientTool.TYPE_DOCUMENT;
+import static cc.kune.docs.client.DocsClientTool.TYPE_FOLDER;
+import static cc.kune.docs.client.DocsClientTool.TYPE_ROOT;
+import static cc.kune.docs.client.DocsClientTool.TYPE_UPLOADEDFILE;
+import static cc.kune.docs.client.DocsClientTool.TYPE_WAVE;
+import cc.kune.core.client.actions.ActionRegistryByType;
+import cc.kune.core.client.i18n.I18nUITranslationService;
+import cc.kune.core.client.resources.CoreResources;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.client.state.StateManager;
+
+import com.google.inject.Inject;
+import com.google.inject.Provider;
+
+public class DocsClientActions extends AbstractFoldableContentActions {
+
+ final String[] all = { TYPE_ROOT, TYPE_FOLDER, TYPE_DOCUMENT, TYPE_UPLOADEDFILE };
+
+ final String[] containers = { TYPE_ROOT, TYPE_FOLDER, };
+ final String[] containersNoRoot = { TYPE_FOLDER };
+ final String[] contents = { TYPE_DOCUMENT, TYPE_UPLOADEDFILE, TYPE_WAVE };
+ final String[] contentsModerated = { TYPE_DOCUMENT, TYPE_UPLOADEDFILE };
+
+ private final Provider<DocsGoUpBtn> docsGoUp;
+
+ @Inject
+ public DocsClientActions(final I18nUITranslationService i18n, final Session session,
+ final StateManager stateManager, final ActionRegistryByType registry, final CoreResources res,
+ final Provider<DocsGoUpBtn> docsGoUp) {
+ super(session, stateManager, i18n, registry);
+ this.docsGoUp = docsGoUp;
+ }
+
+ @Override
+ protected void createActions() {
+ // final String parentMenuTitle = i18n.t("File");
+ // final String parentMenuTitleCtx = i18n.t("Folder");
+ //
+ // createNewContainerAction(TYPE_FOLDER, "images/nav/folder_add.png",
+ // i18n.t("New folder"), parentMenuTitleCtx,
+ // i18n.t("New"), i18n.t("New folder"), Position.ctx, TYPE_ROOT,
+ // TYPE_FOLDER);
+ //
+ // createNewContentAction(TYPE_DOCUMENT, "images/nav/page_add.png",
+ // i18n.t("New document"), parentMenuTitleCtx,
+ // Position.ctx, TYPE_ROOT, TYPE_FOLDER);
+ //
+ // createTranslateAction(parentMenuTitle, TYPE_DOCUMENT, TYPE_FOLDER);
+ // createContentRenameAction(parentMenuTitle, i18n.t("Rename"),
+ // contents);
+ // createEditAction(parentMenuTitle, TYPE_DOCUMENT);
+ // createContentModeratedActions(parentMenuTitle, contentsModerated);
+ // createRenameContentInCtxAction(parentMenuTitleCtx, i18n.t("Rename"),
+ // containersNoRoot);
+ //
+ // // final ActionToolbarMenuDescriptor<StateToken> setAsDefGroupCxt =
+ // // createSetAsDefContent(parentMenuTitleCtx);
+ //
+ // createRefreshCntAction(parentMenuTitle, contents);
+ // createRefreshCxtAction(parentMenuTitleCtx, containers);
+ //
+ // createSetAsDefContent(parentMenuTitle, contents);
+ //
+ // createSetGroupBackImageAction(parentMenuTitle, TYPE_UPLOADEDFILE);
+ //
+ // createUploadAction(i18n.t("Upload file"), "images/nav/upload.png",
+ // i18n.t("Upload files (images, PDFs...)"),
+ // null, containers);
+ //
+ // createDownloadActions(TYPE_UPLOADEDFILE);
+ //
+ // createGoAction(all);
+ //
+ // createGoHomeAction(containers);
+ //
+ // createDelContainerAction("Delete folder", parentMenuTitleCtx,
+ // containersNoRoot);
+ // createDelContentAction(parentMenuTitle, i18n.t("Delete"), contents);
+ // createShowDeletedItems(parentMenuTitleCtx, all);
+ }
+
+ @Override
+ protected void createPostSessionInitActions() {
+ // super.createUploadMediaAction(TYPE_GALLERY);
+ actionsRegistry.addAction(docsGoUp, contents);
+ actionsRegistry.addAction(docsGoUp, containersNoRoot);
+ }
+}
Copied: trunk/src/main/java/cc/kune/docs/client/actions/DocsGoUpBtn.java (from rev 1314, trunk/src/main/java/cc/kune/docs/client/DocsGoUpBtn.java)
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/actions/DocsGoUpBtn.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/actions/DocsGoUpBtn.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -0,0 +1,42 @@
+package cc.kune.docs.client.actions;
+
+import cc.kune.common.client.actions.AbstractExtendedAction;
+import cc.kune.common.client.actions.ActionEvent;
+import cc.kune.common.client.actions.ui.descrip.ButtonDescriptor;
+import cc.kune.core.client.resources.CoreResources;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.client.state.StateManager;
+import cc.kune.core.shared.dto.HasContent;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.gspace.client.actions.perspective.ViewPerspective;
+
+import com.google.inject.Inject;
+
+public class DocsGoUpBtn extends ButtonDescriptor {
+
+ public static class DocsGoUpAction extends AbstractExtendedAction {
+
+ private final Session session;
+ private final StateManager stateManager;
+
+ @Inject
+ public DocsGoUpAction(final Session session, final StateManager stateManager) {
+ this.session = session;
+ this.stateManager = stateManager;
+ }
+
+ @Override
+ public void actionPerformed(final ActionEvent event) {
+ stateManager.gotoStateToken(((HasContent) session.getCurrentState()).getContainer().getStateToken());
+ }
+
+ }
+
+ @Inject
+ public DocsGoUpBtn(final I18nTranslationService i18n, final DocsGoUpAction action, final CoreResources res) {
+ super(action);
+ this.withToolTip(i18n.t("Go up: Open the container folder")).withIcon(res.folderGoUp()).in(
+ ViewPerspective.class);
+ }
+
+}
Copied: trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.java (from rev 1314, trunk/src/main/java/cc/kune/docs/client/DocsViewerPanel.java)
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -0,0 +1,158 @@
+package cc.kune.docs.client.viewers;
+
+import org.waveprotocol.box.webclient.client.ClientIdGenerator;
+import org.waveprotocol.box.webclient.client.RemoteViewServiceMultiplexer;
+import org.waveprotocol.box.webclient.client.Session;
+import org.waveprotocol.box.webclient.client.SimpleWaveStore;
+import org.waveprotocol.box.webclient.client.StagesProvider;
+import org.waveprotocol.box.webclient.client.WaveWebSocketClient;
+import org.waveprotocol.box.webclient.search.WaveStore;
+import org.waveprotocol.box.webclient.widget.loading.LoadingIndicator;
+import org.waveprotocol.wave.client.account.ProfileManager;
+import org.waveprotocol.wave.client.account.impl.ProfileManagerImpl;
+import org.waveprotocol.wave.client.widget.common.ImplPanel;
+import org.waveprotocol.wave.model.id.IdGenerator;
+import org.waveprotocol.wave.model.wave.ParticipantId;
+import org.waveprotocol.wave.model.waveref.InvalidWaveRefException;
+import org.waveprotocol.wave.model.waveref.WaveRef;
+import org.waveprotocol.wave.util.escapers.GwtWaverefEncoder;
+
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
+import cc.kune.common.client.errors.UIException;
+import cc.kune.core.shared.dto.StateContentDTO;
+import cc.kune.docs.client.viewers.DocViewerPresenter.DocViewerView;
+import cc.kune.gspace.client.GSpaceArmor;
+import cc.kune.wave.client.WaveClientManager;
+import cc.kune.wave.client.WebClient;
+
+import com.google.gwt.core.client.GWT;
+import com.google.gwt.dom.client.Document;
+import com.google.gwt.dom.client.Element;
+import com.google.gwt.safehtml.shared.SafeHtmlUtils;
+import com.google.gwt.uibinder.client.UiBinder;
+import com.google.gwt.uibinder.client.UiField;
+import com.google.gwt.user.client.Command;
+import com.google.gwt.user.client.ui.DeckPanel;
+import com.google.gwt.user.client.ui.InlineHTML;
+import com.google.gwt.user.client.ui.InsertPanel.ForIsWidget;
+import com.google.gwt.user.client.ui.Label;
+import com.google.gwt.user.client.ui.Widget;
+import com.google.inject.Inject;
+import com.gwtplatform.mvp.client.ViewImpl;
+
+public class DocViewerPanel extends ViewImpl implements DocViewerView {
+ interface DocsViewerPanelUiBinder extends UiBinder<Widget, DocViewerPanel> {
+ }
+
+ private static DocsViewerPanelUiBinder uiBinder = GWT.create(DocsViewerPanelUiBinder.class);
+
+ private RemoteViewServiceMultiplexer channel;
+ @UiField
+ DeckPanel deck;
+ private IdGenerator idGenerator;
+ private final Element loading = new LoadingIndicator().getElement();
+ @UiField
+ InlineHTML onlyViewPanel;
+ private ProfileManager profiles;
+ /** The wave panel, if a wave is open. */
+ private StagesProvider wave;
+ private final WaveClientManager waveClientManager;
+ // @UiField
+ // FramedPanel waveFrame;
+ @UiField
+ ImplPanel waveHolder;
+ private final WaveStore waveStore = new SimpleWaveStore();
+ private final Widget widget;
+ private final GSpaceArmor wsArmor;
+
+ @Inject
+ public DocViewerPanel(final GSpaceArmor wsArmor, final WaveClientManager waveClientManager) {
+ this.wsArmor = wsArmor;
+ this.waveClientManager = waveClientManager;
+ widget = uiBinder.createAndBindUi(this);
+ }
+
+ @Override
+ public Widget asWidget() {
+ return widget;
+ }
+
+ @Override
+ public void attach() {
+ final ForIsWidget docContainer = wsArmor.getDocContainer();
+ final int widgetCount = docContainer.getWidgetCount();
+ for (int i = 0; i < widgetCount; i++) {
+ docContainer.remove(i);
+ }
+ docContainer.add(widget);
+ }
+
+ @Override
+ public void detach() {
+ widget.removeFromParent();
+ }
+
+ private WaveRef getWaveRef(final String waveRefS) {
+ try {
+ return GwtWaverefEncoder.decodeWaveRefFromPath(waveRefS);
+ } catch (final InvalidWaveRefException e) {
+ throw new UIException("Invalid waveref: " + waveRefS);
+ }
+ }
+
+ private void initWaveClientIfNeeded() {
+ if (channel == null) {
+ final WaveWebSocketClient webSocket = new WaveWebSocketClient(WebClient.useSocketIO(),
+ WebClient.getWebSocketBaseUrl(GWT.getModuleBaseURL()));
+ webSocket.connect();
+ channel = new RemoteViewServiceMultiplexer(webSocket,
+ new ParticipantId(Session.get().getAddress()).getAddress());
+ profiles = new ProfileManagerImpl();
+ idGenerator = ClientIdGenerator.create();
+ }
+ }
+
+ @Override
+ public void setActions(final GuiActionDescCollection actions) {
+ wsArmor.getSubheaderToolbar().clear();
+ wsArmor.getSubheaderToolbar().addAll(actions);
+ }
+
+ @Override
+ public void setContent(final StateContentDTO state) {
+ final boolean editable = state.getContentRights().isEditable();
+ if (editable) {
+ // initWaveClientIfNeeded();
+ // setEditableWaveContent(state.getWaveRef(), false);
+ waveHolder.clear();
+ waveHolder.add(new Label(state.getContent() + " (but here goes the Wave editor -we are testing it-)"));
+ onlyViewPanel.setHTML(SafeHtmlUtils.fromTrustedString(state.getContent()));
+ } else {
+ onlyViewPanel.setHTML(SafeHtmlUtils.fromTrustedString(state.getContent()));
+ }
+ deck.showWidget(editable ? 0 : 1);
+ }
+
+ public void setEditableWaveContent(final String waveRefS, final boolean isNewWave) {
+ final WaveRef waveRef = getWaveRef(waveRefS);
+
+ if (wave != null) {
+ wave.destroy();
+ wave = null;
+ }
+
+ // Release the display:none.
+ // UIObject.setVisible(waveFrame.getElement(), true);
+ waveHolder.getElement().appendChild(loading);
+ final Element holder = waveHolder.getElement().appendChild(Document.get().createDivElement());
+ final StagesProvider wave = new StagesProvider(holder, waveHolder, waveRef, channel, idGenerator, profiles,
+ waveStore, isNewWave);
+ this.wave = wave;
+ wave.load(new Command() {
+ @Override
+ public void execute() {
+ loading.removeFromParent();
+ }
+ });
+ }
+}
Copied: trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.ui.xml (from rev 1314, trunk/src/main/java/cc/kune/docs/client/DocsViewerPanel.ui.xml)
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.ui.xml (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPanel.ui.xml 2011-04-18 00:41:28 UTC (rev 1315)
@@ -0,0 +1,25 @@
+<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
+<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
+ xmlns:g='urn:import:com.google.gwt.user.client.ui' xmlns:f='urn:import:org.waveprotocol.box.webclient.widget.frame'
+ xmlns:w='urn:import:org.waveprotocol.wave.client.widget.common'>
+ <ui:style>
+ .wavePanel {
+ margin: 0 0 0 0;
+ }
+ .waveHolder {
+ position: absolute;
+ top: 0;
+ bottom: 0;
+ left: 0;
+ right: 0;
+ }
+ </ui:style>
+ <g:HTMLPanel width="100%" height="100%">
+ <g:DeckPanel ui:field="deck" addStyleNames="k-doc-content-deck">
+<!-- <f:FramedPanel ui:field="waveFrame" addStyleNames="{style.wavePanel}"> -->
+<!-- </f:FramedPanel> -->
+ <w:ImplPanel ui:field="waveHolder" addStyleNames="{style.waveHolder}" />
+ <g:InlineHTML ui:field="onlyViewPanel" />
+ </g:DeckPanel>
+ </g:HTMLPanel>
+</ui:UiBinder>
\ No newline at end of file
Copied: trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPresenter.java (from rev 1314, trunk/src/main/java/cc/kune/docs/client/DocsViewerPresenter.java)
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPresenter.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/DocViewerPresenter.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -0,0 +1,79 @@
+package cc.kune.docs.client.viewers;
+
+import javax.annotation.Nonnull;
+
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
+import cc.kune.core.client.actions.ActionRegistryByType;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.shared.domain.utils.AccessRights;
+import cc.kune.core.shared.dto.HasContent;
+import cc.kune.core.shared.dto.StateContentDTO;
+import cc.kune.docs.client.DocsClientTool;
+import cc.kune.docs.client.actions.DocsClientActions;
+import cc.kune.gspace.client.tool.ContentViewer;
+import cc.kune.gspace.client.tool.ContentViewerSelector;
+
+import com.google.gwt.event.shared.EventBus;
+import com.google.inject.Inject;
+import com.gwtplatform.mvp.client.Presenter;
+import com.gwtplatform.mvp.client.View;
+import com.gwtplatform.mvp.client.annotations.ProxyCodeSplit;
+import com.gwtplatform.mvp.client.proxy.Proxy;
+import com.gwtplatform.mvp.client.proxy.RevealRootContentEvent;
+
+public class DocViewerPresenter extends Presenter<DocViewerPresenter.DocViewerView, DocViewerPresenter.DocViewerProxy>
+ implements ContentViewer {
+
+ @ProxyCodeSplit
+ public interface DocViewerProxy extends Proxy<DocViewerPresenter> {
+ }
+
+ public interface DocViewerView extends View {
+
+ void attach();
+
+ void detach();
+
+ void setActions(GuiActionDescCollection actions);
+
+ void setContent(StateContentDTO state);
+ }
+
+ private final ActionRegistryByType actionsRegistry;
+ private final Session session;
+
+ @Inject
+ public DocViewerPresenter(final EventBus eventBus, final DocViewerView view, final DocViewerProxy proxy,
+ final Session session, final ContentViewerSelector viewerSelector,
+ final ActionRegistryByType actionsRegistry, final DocsClientActions actions) {
+ super(eventBus, view, proxy);
+ this.session = session;
+ this.actionsRegistry = actionsRegistry;
+ viewerSelector.register(this, true, DocsClientTool.TYPE_WAVE);
+ }
+
+ @Override
+ public void attach() {
+ getView().attach();
+ }
+
+ @Override
+ public void detach() {
+ getView().detach();
+ }
+
+ @Override
+ protected void revealInParent() {
+ RevealRootContentEvent.fire(this, this);
+ }
+
+ @Override
+ public void setContent(@Nonnull final HasContent state) {
+ final StateContentDTO stateContent = (StateContentDTO) state;
+ final AccessRights rights = stateContent.getContentRights();
+ final GuiActionDescCollection actions = actionsRegistry.getCurrentActions(stateContent.getGroup(),
+ stateContent.getTypeId(), session.isLogged(), rights);
+ getView().setActions(actions);
+ getView().setContent(stateContent);
+ }
+}
\ No newline at end of file
Added: trunk/src/main/java/cc/kune/docs/client/viewers/FolderItemDescriptor.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderItemDescriptor.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/FolderItemDescriptor.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -0,0 +1,93 @@
+/*
+ *
+ * Copyright (C) 2007-2011 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 cc.kune.docs.client.viewers;
+
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
+import cc.kune.core.shared.domain.ContentStatus;
+import cc.kune.core.shared.domain.utils.StateToken;
+
+public class FolderItemDescriptor {
+ private final GuiActionDescCollection actionCollection;
+ private final boolean allowDrag;
+ private final boolean allowDrop;
+ private final ContentStatus contentStatus;
+ private final Object icon;
+ private final String id;
+ private final String parentId;
+ private final String text;
+ private final StateToken token;
+ private final String tooltip;
+
+ public FolderItemDescriptor(final String id, final String parentId, final Object icon, final String text,
+ final String tooltip, final ContentStatus contentStatus, final StateToken token, final boolean allowDrag,
+ final boolean allowDrop, final GuiActionDescCollection actionCollection) {
+ this.id = id;
+ this.parentId = parentId;
+ this.icon = icon;
+ this.text = text;
+ this.tooltip = tooltip;
+ this.contentStatus = contentStatus;
+ this.token = token;
+ this.allowDrag = allowDrag;
+ this.allowDrop = allowDrop;
+ this.actionCollection = actionCollection;
+ }
+
+ public GuiActionDescCollection getActionCollection() {
+ return actionCollection;
+ }
+
+ public ContentStatus getContentStatus() {
+ return contentStatus;
+ }
+
+ public Object getIcon() {
+ return icon;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public String getParentId() {
+ return parentId;
+ }
+
+ public StateToken getStateToken() {
+ return token;
+ }
+
+ public String getText() {
+ return text;
+ }
+
+ public String getTooltip() {
+ return tooltip;
+ }
+
+ public boolean isDraggable() {
+ return allowDrag;
+ }
+
+ public boolean isDroppable() {
+ return allowDrop;
+ }
+
+}
Property changes on: trunk/src/main/java/cc/kune/docs/client/viewers/FolderItemDescriptor.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -0,0 +1,114 @@
+package cc.kune.docs.client.viewers;
+
+import cc.kune.common.client.actions.gxtui.AbstractGxtMenuGui;
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescrip;
+import cc.kune.common.client.actions.ui.descrip.MenuDescriptor;
+import cc.kune.common.client.ui.BasicThumb;
+import cc.kune.core.shared.dto.StateContainerDTO;
+import cc.kune.docs.client.viewers.FolderViewerPresenter.FolderViewerView;
+import cc.kune.gspace.client.GSpaceArmor;
+
+import com.google.gwt.core.client.GWT;
+import com.google.gwt.event.dom.client.ClickEvent;
+import com.google.gwt.event.dom.client.ClickHandler;
+import com.google.gwt.event.dom.client.DoubleClickHandler;
+import com.google.gwt.uibinder.client.UiBinder;
+import com.google.gwt.uibinder.client.UiField;
+import com.google.gwt.user.client.ui.FlowPanel;
+import com.google.gwt.user.client.ui.InsertPanel.ForIsWidget;
+import com.google.gwt.user.client.ui.Widget;
+import com.google.inject.Inject;
+import com.gwtplatform.mvp.client.ViewImpl;
+
+public class FolderViewerPanel extends ViewImpl implements FolderViewerView {
+ interface FolderViewerPanelUiBinder extends UiBinder<Widget, FolderViewerPanel> {
+ }
+ private static FolderViewerPanelUiBinder uiBinder = GWT.create(FolderViewerPanelUiBinder.class);
+
+ @UiField
+ FlowPanel flow;
+
+ private final GSpaceArmor gsArmor;
+
+ int ICONLABELMAXSIZE = 10;
+ int ICONSIZE = 40;
+ private final Widget widget;
+
+ @Inject
+ public FolderViewerPanel(final GSpaceArmor wsArmor) {
+ this.gsArmor = wsArmor;
+ widget = uiBinder.createAndBindUi(this);
+ }
+
+ @Override
+ public void addItem(final FolderItemDescriptor item, final DoubleClickHandler doubleClickHandler) {
+ flow.add(createThumb(item.getText(), item.getIcon(), item.getTooltip(), "", item.getActionCollection(),
+ doubleClickHandler));
+ }
+
+ @Override
+ public Widget asWidget() {
+ return widget;
+ }
+
+ @Override
+ public void attach() {
+ // Duplicate code in DocViewerPanel
+ final ForIsWidget docContainer = gsArmor.getDocContainer();
+ final int widgetCount = docContainer.getWidgetCount();
+ for (int i = 0; i < widgetCount; i++) {
+ docContainer.remove(i);
+ }
+ docContainer.add(widget);
+ }
+
+ @Override
+ public void clear() {
+ flow.clear();
+ gsArmor.getSubheaderToolbar().clear();
+ }
+
+ public BasicThumb createThumb(final String text, final Object icon, final String tooltip,
+ final String tooltipTitle, final GuiActionDescCollection menuitems,
+ final DoubleClickHandler doubleClickHandler) {
+ final BasicThumb thumb = new BasicThumb(icon, ICONSIZE, text, ICONLABELMAXSIZE, false);
+ final MenuDescriptor menu = new MenuDescriptor();
+ menu.setStandalone(true);
+ menu.putValue(AbstractGxtMenuGui.MENU_POSITION, AbstractGxtMenuGui.MenuPosition.bl);
+ for (final GuiActionDescrip item : menuitems) {
+ item.setParent(menu);
+ }
+ final ClickHandler clickHand = new ClickHandler() {
+ @Override
+ public void onClick(final ClickEvent event) {
+ menu.show(thumb);
+ }
+ };
+
+ thumb.addClickHandler(clickHand);
+ thumb.addDoubleClickHandler(doubleClickHandler);
+ gsArmor.getSubheaderToolbar().add(menu);
+ gsArmor.getSubheaderToolbar().addAll(menuitems);
+ thumb.setTooltip(tooltipTitle, tooltip);
+ thumb.setLabelVisible(true);
+ return thumb;
+ }
+
+ @Override
+ public void detach() {
+ widget.removeFromParent();
+ clear();
+ }
+
+ @Override
+ public void setActions(final GuiActionDescCollection actions) {
+ gsArmor.getSubheaderToolbar().clear();
+ gsArmor.getSubheaderToolbar().addAll(actions);
+ }
+
+ @Override
+ public void setContainer(final StateContainerDTO state) {
+ }
+
+}
Property changes on: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.ui.xml
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.ui.xml (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.ui.xml 2011-04-18 00:41:28 UTC (rev 1315)
@@ -0,0 +1,20 @@
+<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
+<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
+ xmlns:g='urn:import:com.google.gwt.user.client.ui' xmlns:f='urn:import:org.waveprotocol.box.webclient.widget.frame'
+ xmlns:w='urn:import:org.waveprotocol.wave.client.widget.common'>
+ <ui:style>
+ .wavePanel {
+ margin: 0 0 0 0;
+ }
+
+ .waveHolder {
+ position: absolute;
+ top: 0;
+ bottom: 0;
+ left: 0;
+ right: 0;
+ }
+ </ui:style>
+ <g:FlowPanel ui:field="flow" width="100%" height="100%">
+ </g:FlowPanel>
+</ui:UiBinder>
\ No newline at end of file
Property changes on: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPanel.ui.xml
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -0,0 +1,178 @@
+package cc.kune.docs.client.viewers;
+
+import javax.annotation.Nonnull;
+
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
+import cc.kune.core.client.actions.ActionRegistryByType;
+import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
+import cc.kune.core.client.registry.IconsRegistry;
+import cc.kune.core.client.services.FileDownloadUtils;
+import cc.kune.core.client.services.ImageSize;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.client.state.StateManager;
+import cc.kune.core.shared.domain.ContentStatus;
+import cc.kune.core.shared.domain.utils.AccessRights;
+import cc.kune.core.shared.domain.utils.StateToken;
+import cc.kune.core.shared.dto.BasicMimeTypeDTO;
+import cc.kune.core.shared.dto.ContainerDTO;
+import cc.kune.core.shared.dto.ContainerSimpleDTO;
+import cc.kune.core.shared.dto.ContentSimpleDTO;
+import cc.kune.core.shared.dto.HasContent;
+import cc.kune.core.shared.dto.StateContainerDTO;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.docs.client.DocsClientTool;
+import cc.kune.docs.client.actions.DocsClientActions;
+import cc.kune.gspace.client.actions.perspective.MenuPerspective;
+import cc.kune.gspace.client.tool.ContentViewer;
+import cc.kune.gspace.client.tool.ContentViewerSelector;
+
+import com.google.gwt.event.dom.client.DoubleClickEvent;
+import com.google.gwt.event.dom.client.DoubleClickHandler;
+import com.google.gwt.event.shared.EventBus;
+import com.google.inject.Inject;
+import com.google.inject.Provider;
+import com.gwtplatform.mvp.client.Presenter;
+import com.gwtplatform.mvp.client.View;
+import com.gwtplatform.mvp.client.annotations.ProxyCodeSplit;
+import com.gwtplatform.mvp.client.proxy.Proxy;
+import com.gwtplatform.mvp.client.proxy.RevealRootContentEvent;
+
+public class FolderViewerPresenter extends
+ Presenter<FolderViewerPresenter.FolderViewerView, FolderViewerPresenter.FolderViewerProxy> implements
+ ContentViewer {
+
+ @ProxyCodeSplit
+ public interface FolderViewerProxy extends Proxy<FolderViewerPresenter> {
+ }
+
+ public interface FolderViewerView extends View {
+
+ void addItem(FolderItemDescriptor item, DoubleClickHandler handler);
+
+ void attach();
+
+ void clear();
+
+ void detach();
+
+ void setActions(GuiActionDescCollection actions);
+
+ void setContainer(StateContainerDTO state);
+ }
+
+ private final ActionRegistryByType actionsRegistry;
+ private final ContentCapabilitiesRegistry capabilitiesRegistry;
+ private final Provider<FileDownloadUtils> downloadUtilsProvider;
+ private final I18nTranslationService i18n;
+ private final IconsRegistry iconsRegistry;
+ private final Session session;
+ private final StateManager stateManager;
+ private final boolean useGenericImageIcon;
+
+ @Inject
+ public FolderViewerPresenter(final EventBus eventBus, final FolderViewerView view, final FolderViewerProxy proxy,
+ final Session session, final StateManager stateManager, final I18nTranslationService i18n,
+ final ContentViewerSelector viewerSelector, final ActionRegistryByType actionsRegistry,
+ final DocsClientActions actions, final Provider<FileDownloadUtils> downloadUtilsProvider,
+ final ContentCapabilitiesRegistry capabilitiesRegistry) {
+ super(eventBus, view, proxy);
+ this.session = session;
+ this.stateManager = stateManager;
+ this.i18n = i18n;
+ this.actionsRegistry = actionsRegistry;
+ this.downloadUtilsProvider = downloadUtilsProvider;
+ this.capabilitiesRegistry = capabilitiesRegistry;
+ iconsRegistry = capabilitiesRegistry.getIconsRegistry();
+ viewerSelector.register(this, true, DocsClientTool.TYPE_ROOT, DocsClientTool.TYPE_FOLDER);
+ useGenericImageIcon = false;
+ }
+
+ private void addItem(final String title, final String contentTypeId, final BasicMimeTypeDTO mimeType,
+ final ContentStatus status, final StateToken stateToken, final StateToken parentStateToken,
+ final AccessRights rights, final boolean isNodeSelected) {
+ final Object icon = getIcon(stateToken, contentTypeId, mimeType);
+ final String tooltip = getTooltip(stateToken, mimeType);
+ final FolderItemDescriptor item = new FolderItemDescriptor(genId(stateToken), genId(parentStateToken), icon,
+ title, tooltip, status, stateToken, capabilitiesRegistry.isDragable(contentTypeId)
+ && rights.isAdministrable(), capabilitiesRegistry.isDropable(contentTypeId)
+ && rights.isAdministrable(), actionsRegistry.getCurrentActions(stateToken, contentTypeId,
+ session.isLogged(), rights, MenuPerspective.class));
+ if (status.equals(ContentStatus.inTheDustbin) && !session.getShowDeletedContent()) {
+ // Don't show
+ } else {
+ getView().addItem(item, new DoubleClickHandler() {
+
+ @Override
+ public void onDoubleClick(final DoubleClickEvent event) {
+ stateManager.gotoStateToken(stateToken);
+ }
+ });
+ }
+ }
+
+ @Override
+ public void attach() {
+ getView().attach();
+ }
+
+ private void createChildItems(final ContainerDTO container, final AccessRights containerRights) {
+ for (final ContainerSimpleDTO siblingFolder : container.getChilds()) {
+ addItem(siblingFolder.getName(), siblingFolder.getTypeId(), null, ContentStatus.publishedOnline,
+ siblingFolder.getStateToken(),
+ siblingFolder.getStateToken().copy().setFolder(siblingFolder.getParentFolderId()), containerRights,
+ false);
+ }
+ for (final ContentSimpleDTO content : container.getContents()) {
+ // content.getTitle()
+ addItem(content.getStateToken().toString(), content.getTypeId(), content.getMimeType(),
+ content.getStatus(), content.getStateToken(), content.getStateToken().copy().clearDocument(),
+ content.getRights(), false);
+ }
+ }
+
+ @Override
+ public void detach() {
+ getView().detach();
+ }
+
+ private String genId(final StateToken token) {
+ return "k-cnav-" + token.toString().replace(StateToken.SEPARATOR, "-");
+ }
+
+ private Object getIcon(final StateToken token, final String contentTypeId, final BasicMimeTypeDTO mimeType) {
+ if (contentTypeId.equals(DocsClientTool.TYPE_FOLDER)) {
+ return null;
+ } else if (!useGenericImageIcon && mimeType != null && mimeType.getType().equals("image")) {
+ return downloadUtilsProvider.get().getImageResizedUrl(token, ImageSize.ico);
+ } else {
+ return iconsRegistry.getContentTypeIcon(contentTypeId, mimeType);
+ }
+ }
+
+ private String getTooltip(final StateToken token, final BasicMimeTypeDTO mimeType) {
+ if (mimeType != null && (mimeType.isImage() || mimeType.isPdf())) {
+ // Used for previews
+ return null;
+ } else {
+ return i18n.t("Double click to open");
+ }
+ }
+
+ @Override
+ protected void revealInParent() {
+ RevealRootContentEvent.fire(this, this);
+ }
+
+ @Override
+ public void setContent(@Nonnull final HasContent state) {
+ getView().clear();
+ final StateContainerDTO stateContainer = (StateContainerDTO) state;
+ final AccessRights rights = stateContainer.getContainerRights();
+ final GuiActionDescCollection actions = actionsRegistry.getCurrentActions(stateContainer.getGroup(),
+ stateContainer.getTypeId(), session.isLogged(), rights);
+ getView().setActions(actions);
+ getView().setContainer(stateContainer);
+ createChildItems(stateContainer.getContainer(), stateContainer.getContainerRights());
+ // view.setEditable(rights.isEditable());
+ }
+}
\ No newline at end of file
Property changes on: trunk/src/main/java/cc/kune/docs/client/viewers/FolderViewerPresenter.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Copied: trunk/src/main/java/cc/kune/gspace/client/GSpaceArmor.java (from rev 1313, trunk/src/main/java/cc/kune/gspace/client/WsArmor.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/GSpaceArmor.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/GSpaceArmor.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -0,0 +1,66 @@
+/*
+ *
+ * Copyright (C) 2007-2011 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 cc.kune.gspace.client;
+
+import cc.kune.common.client.actions.ui.IsActionExtensible;
+
+import com.google.gwt.user.client.ui.InsertPanel.ForIsWidget;
+import com.google.gwt.user.client.ui.SimplePanel;
+
+public interface GSpaceArmor {
+
+ ForIsWidget getDocContainer();
+
+ ForIsWidget getDocFooter();
+
+ ForIsWidget getDocHeader();
+
+ ForIsWidget getDocSubheader();
+
+ ForIsWidget getEntityFooter();
+
+ ForIsWidget getEntityHeader();
+
+ ForIsWidget getEntityToolsCenter();
+
+ ForIsWidget getEntityToolsNorth();
+
+ ForIsWidget getEntityToolsSouth();
+
+ IsActionExtensible getFooterToolbar();
+
+ IsActionExtensible getHeaderToolbar();
+
+ SimplePanel getPublicSpace();
+
+ ForIsWidget getSitebar();
+
+ IsActionExtensible getSubheaderToolbar();
+
+ ForIsWidget getUserSpace();
+
+ void selectGroupSpace();
+
+ void selectHomeSpace();
+
+ void selectPublicSpace();
+
+ void selectUserSpace();
+}
\ No newline at end of file
Copied: trunk/src/main/java/cc/kune/gspace/client/GSpaceArmorEntryPoint.java (from rev 1313, trunk/src/main/java/cc/kune/gspace/client/WsArmorEntryPoint.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/GSpaceArmorEntryPoint.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/GSpaceArmorEntryPoint.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -0,0 +1,60 @@
+/*
+ *
+ * Copyright (C) 2007-2011 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 cc.kune.gspace.client;
+
+import cc.kune.gspace.client.resources.WsArmorResources;
+
+import com.google.gwt.core.client.EntryPoint;
+import com.google.gwt.core.client.GWT;
+import com.google.gwt.user.client.ui.InlineLabel;
+import com.google.gwt.user.client.ui.RootLayoutPanel;
+
+@Deprecated
+public class GSpaceArmorEntryPoint implements EntryPoint {
+ @Override
+ public void onModuleLoad() {
+ final WsArmorResources resources = GWT.create(WsArmorResources.class);
+ resources.style().ensureInjected();
+
+ final RootLayoutPanel rootPanel = RootLayoutPanel.get();
+ final GSpaceArmorImpl armor = new GSpaceArmorImpl(null);
+ final InlineLabel icons = new InlineLabel("Icons");
+ final InlineLabel login = new InlineLabel("Login");
+ final InlineLabel logo = new InlineLabel("Logo");
+ icons.setStyleName(resources.style().floatLeft());
+ login.setStyleName(resources.style().floatRight());
+ logo.setStyleName(resources.style().floatRight());
+ armor.getSitebar().add(icons);
+ armor.getSitebar().add(logo);
+ armor.getSitebar().add(login);
+ armor.getEntityToolsNorth().add(new InlineLabel("Group members"));
+ armor.getEntityToolsCenter().add(new InlineLabel("Documents"));
+ armor.getEntityToolsSouth().add(new InlineLabel("Group tags"));
+ armor.getEntityHeader().add(new InlineLabel("Name of the Initiative"));
+ armor.getDocHeader().add(new InlineLabel("Some doc title"));
+ final InlineLabel editors = new InlineLabel("Editors:");
+ editors.addStyleName(resources.style().docSubheaderLeft());
+ armor.getDocSubheader().add(editors);
+ armor.getDocFooter().add(new InlineLabel("Tags:"));
+ armor.getEntityFooter().add(new InlineLabel("Rate it:"));
+ rootPanel.add(armor);
+ }
+
+}
Copied: trunk/src/main/java/cc/kune/gspace/client/GSpaceArmorImpl.java (from rev 1313, trunk/src/main/java/cc/kune/gspace/client/WsArmorImpl.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/GSpaceArmorImpl.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/GSpaceArmorImpl.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -0,0 +1,200 @@
+/*
+ *
+ * Copyright (C) 2007-2011 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 cc.kune.gspace.client;
+
+import cc.kune.common.client.actions.ui.ActionFlowPanel;
+import cc.kune.common.client.actions.ui.IsActionExtensible;
+
+import com.google.gwt.core.client.GWT;
+import com.google.gwt.uibinder.client.UiBinder;
+import com.google.gwt.uibinder.client.UiField;
+import com.google.gwt.user.client.DOM;
+import com.google.gwt.user.client.Element;
+import com.google.gwt.user.client.ui.Composite;
+import com.google.gwt.user.client.ui.DockLayoutPanel;
+import com.google.gwt.user.client.ui.FlowPanel;
+import com.google.gwt.user.client.ui.InsertPanel.ForIsWidget;
+import com.google.gwt.user.client.ui.RootPanel;
+import com.google.gwt.user.client.ui.SimplePanel;
+import com.google.gwt.user.client.ui.SplitLayoutPanel;
+import com.google.gwt.user.client.ui.TabLayoutPanel;
+import com.google.gwt.user.client.ui.VerticalPanel;
+import com.google.gwt.user.client.ui.Widget;
+import com.google.inject.Inject;
+import com.google.inject.Provider;
+
+public class GSpaceArmorImpl extends Composite implements GSpaceArmor {
+
+ interface WsArmorImplUiBinder extends UiBinder<Widget, GSpaceArmorImpl> {
+ }
+
+ private static WsArmorImplUiBinder uiBinder = GWT.create(WsArmorImplUiBinder.class);
+
+ @UiField
+ VerticalPanel docContainer;
+ @UiField
+ FlowPanel docFooter;
+ @UiField
+ FlowPanel docHeader;
+ @UiField
+ FlowPanel docSubheader;
+ @UiField
+ FlowPanel entityFooter;
+ @UiField
+ FlowPanel entityHeader;
+ @UiField
+ VerticalPanel entityToolsCenter;
+ @UiField
+ VerticalPanel entityToolsNorth;
+ @UiField
+ VerticalPanel entityToolsSouth;
+ private final ActionFlowPanel footerToolbar;
+ @UiField
+ SplitLayoutPanel groupSpace;
+ private final ActionFlowPanel headerToolbar;
+ @UiField
+ SimplePanel homeSpace;
+ @UiField
+ DockLayoutPanel mainpanel;
+ @UiField
+ SimplePanel publicSpace;
+ @UiField
+ FlowPanel sitebar;
+ @UiField
+ DockLayoutPanel splitCenter;
+ @UiField
+ DockLayoutPanel splitEast;
+ private final ActionFlowPanel subheaderToolbar;
+ @UiField
+ TabLayoutPanel tabs;
+ @UiField
+ FlowPanel userSpace;
+
+ @Inject
+ public GSpaceArmorImpl(final Provider<ActionFlowPanel> toolbarProv) {
+ initWidget(uiBinder.createAndBindUi(this));
+ groupSpace.setWidgetMinSize(splitEast, 150);
+ tabs.setStyleName("k-spaces");
+ homeSpace.add(RootPanel.get("k-home-wrapper"));
+ DOM.setStyleAttribute((Element) groupSpace.getWidgetContainerElement(splitEast), "overflow", "visible");
+ DOM.setStyleAttribute((Element) splitEast.getWidgetContainerElement(entityToolsCenter), "overflow", "visible");
+ footerToolbar = toolbarProv.get();
+ headerToolbar = toolbarProv.get();
+ subheaderToolbar = toolbarProv.get();
+ getDocHeader().add(headerToolbar);
+ getDocSubheader().add(subheaderToolbar);
+ getDocFooter().add(footerToolbar);
+ }
+
+ @Override
+ public ForIsWidget getDocContainer() {
+ return docContainer;
+ }
+
+ @Override
+ public ForIsWidget getDocFooter() {
+ return docFooter;
+ }
+
+ @Override
+ public ForIsWidget getDocHeader() {
+ return docHeader;
+ }
+
+ @Override
+ public ForIsWidget getDocSubheader() {
+ return docSubheader;
+ }
+
+ @Override
+ public ForIsWidget getEntityFooter() {
+ return entityFooter;
+ }
+
+ @Override
+ public ForIsWidget getEntityHeader() {
+ return entityHeader;
+ }
+
+ @Override
+ public ForIsWidget getEntityToolsCenter() {
+ return entityToolsCenter;
+ }
+
+ @Override
+ public ForIsWidget getEntityToolsNorth() {
+ return entityToolsNorth;
+ }
+
+ @Override
+ public ForIsWidget getEntityToolsSouth() {
+ return entityToolsSouth;
+ }
+
+ @Override
+ public IsActionExtensible getFooterToolbar() {
+ return footerToolbar;
+ }
+
+ @Override
+ public IsActionExtensible getHeaderToolbar() {
+ return headerToolbar;
+ }
+
+ @Override
+ public SimplePanel getPublicSpace() {
+ return publicSpace;
+ }
+
+ @Override
+ public ForIsWidget getSitebar() {
+ return sitebar;
+ }
+
+ @Override
+ public IsActionExtensible getSubheaderToolbar() {
+ return subheaderToolbar;
+ }
+
+ @Override
+ public ForIsWidget getUserSpace() {
+ return userSpace;
+ }
+
+ @Override
+ public void selectGroupSpace() {
+ tabs.selectTab(groupSpace);
+ }
+
+ @Override
+ public void selectHomeSpace() {
+ tabs.selectTab(homeSpace);
+ }
+
+ @Override
+ public void selectPublicSpace() {
+ tabs.selectTab(publicSpace);
+ }
+
+ @Override
+ public void selectUserSpace() {
+ tabs.selectTab(userSpace);
+ }
+}
Copied: trunk/src/main/java/cc/kune/gspace/client/GSpaceArmorImpl.ui.xml (from rev 1313, trunk/src/main/java/cc/kune/gspace/client/WsArmorImpl.ui.xml)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/GSpaceArmorImpl.ui.xml (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/GSpaceArmorImpl.ui.xml 2011-04-18 00:41:28 UTC (rev 1315)
@@ -0,0 +1,117 @@
+<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
+<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
+xmlns:co="urn:import:cc.kune.core.client"
+ xmlns:kp="urn:import:cc.kune.pspace.client" xmlns:g="urn:import:com.google.gwt.user.client.ui">
+ <ui:with field='res'
+ type='cc.kune.gspace.client.resources.WsArmorResources' />
+ <ui:style>
+ .frame {
+ border: 0px;
+ margin: 0px;
+ }
+ </ui:style>
+ <g:DockLayoutPanel ui:field="mainpanel" styleName='{res.style.mainPanel}'
+ unit="PX">
+ <g:north size="22">
+ <g:FlowPanel ui:field="sitebar" height="22px"
+ styleName='{res.style.siteBar}'>
+ </g:FlowPanel>
+ </g:north>
+ <g:center>
+ <g:TabLayoutPanel width="100%" height="100%"
+ barUnit='PX' barHeight='0' ui:field="tabs">
+ <g:tab>
+ <g:header size='0' />
+ <g:SimplePanel ui:field="homeSpace" width="100%"
+ height="100%"></g:SimplePanel>
+ </g:tab>
+ <g:tab>
+ <g:header size='0' />
+ <g:FlowPanel ui:field="userSpace" width="100%"
+ height="100%">
+<!-- <g:Frame url="/" styleName="{style.frame}"-->
+<!-- ui:field="frame" width="100%" height="100%" />-->
+ </g:FlowPanel>
+ </g:tab>
+ <g:tab>
+ <g:header size='0' />
+ <g:SplitLayoutPanel width="100%" height="100%"
+ ui:field="groupSpace">
+ <g:center size="1.0">
+ <g:DockLayoutPanel unit="PX" ui:field="splitCenter">
+ <g:north size="168">
+ <g:VerticalPanel width="100%" height="168px">
+ <g:FlowPanel height="70px" width="100%"
+ styleName="{res.style.entityHeader}" ui:field="entityHeader">
+ <!--<g:RichTextArea width="100%" height="70px" /> -->
+ </g:FlowPanel>
+ <g:FlowPanel width="100%" height="38px"
+ styleName="{res.style.docHeader}" ui:field="docHeader">
+ </g:FlowPanel>
+ <g:FlowPanel width="100%" height="60px"
+ styleName="{res.style.docSubheader}" ui:field="docSubheader">
+ <g:HTMLPanel ui:field="arrow" styleName="{res.style.docSubheaderArrow}" />
+ </g:FlowPanel>
+ </g:VerticalPanel>
+ </g:north>
+ <g:center>
+ <g:DockLayoutPanel unit="PX"
+ styleName="{res.style.docEditorMargin}">
+ <g:west size="10">
+ <g:SimplePanel />
+ </g:west>
+ <g:east size="15">
+ <g:SimplePanel />
+ </g:east>
+ <g:center>
+ <g:ScrollPanel styleName="{res.style.docEditor}">
+ <g:VerticalPanel width="100%"
+ height="100%" ui:field="docContainer"></g:VerticalPanel>
+ </g:ScrollPanel>
+ </g:center>
+ <g:south size="33.0">
+ <g:VerticalPanel height="33px"
+ width="100%" styleName="{res.style.docFooter}">
+ <g:FlowPanel width="100%" height="33"
+ ui:field="docFooter">
+ </g:FlowPanel>
+ </g:VerticalPanel>
+ </g:south>
+ </g:DockLayoutPanel>
+ </g:center>
+ <g:south size="36">
+ <g:FlowPanel height="36px" width="100%"
+ styleName="{res.style.entityFooter}" ui:field="entityFooter">
+ </g:FlowPanel>
+ </g:south>
+ </g:DockLayoutPanel>
+ </g:center>
+ <g:west size="200.0">
+ <g:DockLayoutPanel unit="PX"
+ styleName="{res.style.entityTools}" ui:field="splitEast">
+ <g:north size="305">
+ <g:VerticalPanel width="100%"
+ ui:field="entityToolsNorth" styleName="{res.style.entityToolsNorth}"></g:VerticalPanel>
+ </g:north>
+ <g:center>
+ <g:VerticalPanel width="100%"
+ ui:field="entityToolsCenter" styleName="{res.style.entityToolsCenter}">
+ </g:VerticalPanel>
+ </g:center>
+ <g:south size="98">
+ <g:VerticalPanel width="100%"
+ styleName="{res.style.entityToolsSouth}" ui:field="entityToolsSouth"></g:VerticalPanel>
+ </g:south>
+ </g:DockLayoutPanel>
+ </g:west>
+ </g:SplitLayoutPanel>
+ </g:tab>
+ <g:tab>
+ <g:header size='0' />
+ <g:SimplePanel ui:field="publicSpace" width="100%"
+ height="100%"></g:SimplePanel>
+ </g:tab>
+ </g:TabLayoutPanel>
+ </g:center>
+ </g:DockLayoutPanel>
+</ui:UiBinder>
\ No newline at end of file
Deleted: trunk/src/main/java/cc/kune/gspace/client/WsArmor.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/WsArmor.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/gspace/client/WsArmor.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -1,58 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2011 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 cc.kune.gspace.client;
-
-import com.google.gwt.user.client.ui.InsertPanel.ForIsWidget;
-import com.google.gwt.user.client.ui.SimplePanel;
-
-public interface WsArmor {
-
- ForIsWidget getDocContainer();
-
- ForIsWidget getDocFooter();
-
- ForIsWidget getDocHeader();
-
- ForIsWidget getDocSubheader();
-
- ForIsWidget getEntityFooter();
-
- ForIsWidget getEntityHeader();
-
- ForIsWidget getEntityToolsCenter();
-
- ForIsWidget getEntityToolsNorth();
-
- ForIsWidget getEntityToolsSouth();
-
- SimplePanel getPublicSpace();
-
- ForIsWidget getSitebar();
-
- ForIsWidget getUserSpace();
-
- void selectGroupSpace();
-
- void selectHomeSpace();
-
- void selectPublicSpace();
-
- void selectUserSpace();
-}
\ No newline at end of file
Deleted: trunk/src/main/java/cc/kune/gspace/client/WsArmorEntryPoint.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/WsArmorEntryPoint.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/gspace/client/WsArmorEntryPoint.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -1,61 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2011 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 cc.kune.gspace.client;
-
-import cc.kune.gspace.client.resources.WsArmorResources;
-
-import com.google.gwt.core.client.EntryPoint;
-import com.google.gwt.core.client.GWT;
-import com.google.gwt.user.client.ui.InlineLabel;
-import com.google.gwt.user.client.ui.RootLayoutPanel;
-
-@Deprecated
-public class WsArmorEntryPoint implements EntryPoint {
- @Override
- public void onModuleLoad() {
- final WsArmorResources resources = GWT.create(WsArmorResources.class);
- resources.style().ensureInjected();
-
- final RootLayoutPanel rootPanel = RootLayoutPanel.get();
- final WsArmorImpl armor = new WsArmorImpl();
- final InlineLabel icons = new InlineLabel("Icons");
- final InlineLabel login = new InlineLabel("Login");
- final InlineLabel logo = new InlineLabel("Logo");
- icons.setStyleName(resources.style().floatLeft());
- login.setStyleName(resources.style().floatRight());
- logo.setStyleName(resources.style().floatRight());
- armor.getSitebar().add(icons);
- armor.getSitebar().add(logo);
- armor.getSitebar().add(login);
- armor.getEntityToolsNorth().add(new InlineLabel("Group members"));
- armor.getEntityToolsCenter().add(new InlineLabel("Documents"));
- armor.getEntityToolsSouth().add(new InlineLabel("Group tags"));
- armor.getEntityHeader().add(new InlineLabel("Name of the Initiative"));
- armor.getDocHeader().add(new InlineLabel("Some doc title"));
- final InlineLabel editors = new InlineLabel("Editors:");
- editors.addStyleName(resources.style().docSubheaderLeft());
- armor.getDocSubheader().add(editors);
- armor.getDocFooter().add(new InlineLabel("Tags:"));
- armor.getEntityFooter().add(new InlineLabel("Rate it:"));
- rootPanel.add(armor);
-
- }
-
-}
Deleted: trunk/src/main/java/cc/kune/gspace/client/WsArmorImpl.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/WsArmorImpl.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/gspace/client/WsArmorImpl.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -1,179 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2011 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 cc.kune.gspace.client;
-
-import com.google.gwt.core.client.GWT;
-import com.google.gwt.uibinder.client.UiBinder;
-import com.google.gwt.uibinder.client.UiField;
-import com.google.gwt.user.client.DOM;
-import com.google.gwt.user.client.Element;
-import com.google.gwt.user.client.ui.Composite;
-import com.google.gwt.user.client.ui.DockLayoutPanel;
-import com.google.gwt.user.client.ui.FlowPanel;
-import com.google.gwt.user.client.ui.InsertPanel.ForIsWidget;
-import com.google.gwt.user.client.ui.RootPanel;
-import com.google.gwt.user.client.ui.SimplePanel;
-import com.google.gwt.user.client.ui.SplitLayoutPanel;
-import com.google.gwt.user.client.ui.TabLayoutPanel;
-import com.google.gwt.user.client.ui.VerticalPanel;
-import com.google.gwt.user.client.ui.Widget;
-
-public class WsArmorImpl extends Composite implements WsArmor {
-
- interface WsArmorImplUiBinder extends UiBinder<Widget, WsArmorImpl> {
- }
-
- private static WsArmorImplUiBinder uiBinder = GWT.create(WsArmorImplUiBinder.class);
-
- @UiField
- VerticalPanel docContainer;
- @UiField
- FlowPanel docFooter;
- @UiField
- FlowPanel docHeader;
- @UiField
- FlowPanel docSubheader;
- @UiField
- FlowPanel entityFooter;
- @UiField
- FlowPanel entityHeader;
- @UiField
- VerticalPanel entityToolsCenter;
- @UiField
- VerticalPanel entityToolsNorth;
- @UiField
- VerticalPanel entityToolsSouth;
- @UiField
- SplitLayoutPanel groupSpace;
- @UiField
- SimplePanel homeSpace;
- @UiField
- DockLayoutPanel mainpanel;
- @UiField
- SimplePanel publicSpace;
- @UiField
- FlowPanel sitebar;
- @UiField
- DockLayoutPanel splitCenter;
- @UiField
- DockLayoutPanel splitEast;
- @UiField
- TabLayoutPanel tabs;
- @UiField
- FlowPanel userSpace;
-
- public WsArmorImpl() {
- initWidget(uiBinder.createAndBindUi(this));
- groupSpace.setWidgetMinSize(splitEast, 150);
- tabs.setStyleName("k-spaces");
- homeSpace.add(RootPanel.get("k-home-wrapper"));
- // mainpanel.getWidgetContainerElement(splitEast).setAttribute("overflow",
- // "visible");
- // splitEast.getWidgetContainerElement(entityToolsCenter).setPropertyString("overflow",
- // "visible !important");
- // entityToolsCenter.getParent().setStyleName("k-nooverflow");
- // groupSpace.getWidgetContainerElement(splitEast).setPropertyString("overflow",
- // "visible !important");
-
- DOM.setStyleAttribute((Element) groupSpace.getWidgetContainerElement(splitEast), "overflow", "visible");
- DOM.setStyleAttribute((Element) splitEast.getWidgetContainerElement(entityToolsCenter), "overflow", "visible");
-
- }
-
- @Override
- public ForIsWidget getDocContainer() {
- return docContainer;
- }
-
- @Override
- public ForIsWidget getDocFooter() {
- return docFooter;
- }
-
- @Override
- public ForIsWidget getDocHeader() {
- return docHeader;
- }
-
- @Override
- public ForIsWidget getDocSubheader() {
- return docSubheader;
- }
-
- @Override
- public ForIsWidget getEntityFooter() {
- return entityFooter;
- }
-
- @Override
- public ForIsWidget getEntityHeader() {
- return entityHeader;
- }
-
- @Override
- public ForIsWidget getEntityToolsCenter() {
- return entityToolsCenter;
- }
-
- @Override
- public ForIsWidget getEntityToolsNorth() {
- return entityToolsNorth;
- }
-
- @Override
- public ForIsWidget getEntityToolsSouth() {
- return entityToolsSouth;
- }
-
- @Override
- public SimplePanel getPublicSpace() {
- return publicSpace;
- }
-
- @Override
- public ForIsWidget getSitebar() {
- return sitebar;
- }
-
- @Override
- public ForIsWidget getUserSpace() {
- return userSpace;
- }
-
- @Override
- public void selectGroupSpace() {
- tabs.selectTab(groupSpace);
- }
-
- @Override
- public void selectHomeSpace() {
- tabs.selectTab(homeSpace);
- }
-
- @Override
- public void selectPublicSpace() {
- tabs.selectTab(publicSpace);
- }
-
- @Override
- public void selectUserSpace() {
- tabs.selectTab(userSpace);
- }
-}
Deleted: trunk/src/main/java/cc/kune/gspace/client/WsArmorImpl.ui.xml
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/WsArmorImpl.ui.xml 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/gspace/client/WsArmorImpl.ui.xml 2011-04-18 00:41:28 UTC (rev 1315)
@@ -1,116 +0,0 @@
-<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
-<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
- xmlns:kp="urn:import:cc.kune.pspace.client" xmlns:g="urn:import:com.google.gwt.user.client.ui">
- <ui:with field='res'
- type='cc.kune.gspace.client.resources.WsArmorResources' />
- <ui:style>
- .frame {
- border: 0px;
- margin: 0px;
- }
- </ui:style>
- <g:DockLayoutPanel ui:field="mainpanel" styleName='{res.style.mainPanel}'
- unit="PX">
- <g:north size="22">
- <g:FlowPanel ui:field="sitebar" height="22px"
- styleName='{res.style.siteBar}'>
- </g:FlowPanel>
- </g:north>
- <g:center>
- <g:TabLayoutPanel width="100%" height="100%"
- barUnit='PX' barHeight='0' ui:field="tabs">
- <g:tab>
- <g:header size='0' />
- <g:SimplePanel ui:field="homeSpace" width="100%"
- height="100%"></g:SimplePanel>
- </g:tab>
- <g:tab>
- <g:header size='0' />
- <g:FlowPanel ui:field="userSpace" width="100%"
- height="100%">
-<!-- <g:Frame url="/" styleName="{style.frame}"-->
-<!-- ui:field="frame" width="100%" height="100%" />-->
- </g:FlowPanel>
- </g:tab>
- <g:tab>
- <g:header size='0' />
- <g:SplitLayoutPanel width="100%" height="100%"
- ui:field="groupSpace">
- <g:center size="1.0">
- <g:DockLayoutPanel unit="PX" ui:field="splitCenter">
- <g:north size="168">
- <g:VerticalPanel width="100%" height="168px">
- <g:FlowPanel height="70px" width="100%"
- styleName="{res.style.entityHeader}" ui:field="entityHeader">
- <!--<g:RichTextArea width="100%" height="70px" /> -->
- </g:FlowPanel>
- <g:FlowPanel width="100%" height="38px"
- styleName="{res.style.docHeader}" ui:field="docHeader">
- </g:FlowPanel>
- <g:FlowPanel width="100%" height="60px"
- styleName="{res.style.docSubheader}" ui:field="docSubheader">
- <g:HTMLPanel ui:field="arrow" styleName="{res.style.docSubheaderArrow}" />
- </g:FlowPanel>
- </g:VerticalPanel>
- </g:north>
- <g:center>
- <g:DockLayoutPanel unit="PX"
- styleName="{res.style.docEditorMargin}">
- <g:west size="10">
- <g:SimplePanel />
- </g:west>
- <g:east size="15">
- <g:SimplePanel />
- </g:east>
- <g:center>
- <g:ScrollPanel styleName="{res.style.docEditor}">
- <g:VerticalPanel width="100%"
- height="100%" ui:field="docContainer"></g:VerticalPanel>
- </g:ScrollPanel>
- </g:center>
- <g:south size="33.0">
- <g:VerticalPanel height="33px"
- width="100%" styleName="{res.style.docFooter}">
- <g:FlowPanel width="100%" height="33"
- ui:field="docFooter">
- </g:FlowPanel>
- </g:VerticalPanel>
- </g:south>
- </g:DockLayoutPanel>
- </g:center>
- <g:south size="36">
- <g:FlowPanel height="36px" width="100%"
- styleName="{res.style.entityFooter}" ui:field="entityFooter">
- </g:FlowPanel>
- </g:south>
- </g:DockLayoutPanel>
- </g:center>
- <g:west size="200.0">
- <g:DockLayoutPanel unit="PX"
- styleName="{res.style.entityTools}" ui:field="splitEast">
- <g:north size="305">
- <g:VerticalPanel width="100%"
- ui:field="entityToolsNorth" styleName="{res.style.entityToolsNorth}"></g:VerticalPanel>
- </g:north>
- <g:center>
- <g:VerticalPanel width="100%"
- ui:field="entityToolsCenter" styleName="{res.style.entityToolsCenter}">
- </g:VerticalPanel>
- </g:center>
- <g:south size="98">
- <g:VerticalPanel width="100%"
- styleName="{res.style.entityToolsSouth}" ui:field="entityToolsSouth"></g:VerticalPanel>
- </g:south>
- </g:DockLayoutPanel>
- </g:west>
- </g:SplitLayoutPanel>
- </g:tab>
- <g:tab>
- <g:header size='0' />
- <g:SimplePanel ui:field="publicSpace" width="100%"
- height="100%"></g:SimplePanel>
- </g:tab>
- </g:TabLayoutPanel>
- </g:center>
- </g:DockLayoutPanel>
-</ui:UiBinder>
\ No newline at end of file
Added: trunk/src/main/java/cc/kune/gspace/client/actions/perspective/MenuPerspective.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/perspective/MenuPerspective.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/perspective/MenuPerspective.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -0,0 +1,7 @@
+package cc.kune.gspace.client.actions.perspective;
+
+/**
+ * An action that must be showed in menu of docs/folder, etc
+ */
+public interface MenuPerspective extends ActionPerspective {
+}
Property changes on: trunk/src/main/java/cc/kune/gspace/client/actions/perspective/MenuPerspective.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/src/main/java/cc/kune/gspace/client/tags/TagsSummaryPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tags/TagsSummaryPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/gspace/client/tags/TagsSummaryPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -20,7 +20,7 @@
package cc.kune.gspace.client.tags;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import cc.kune.gspace.client.tags.TagsSummaryPresenter.TagsSummaryView;
import com.google.gwt.event.dom.client.ClickHandler;
@@ -37,7 +37,7 @@
private FlowPanel mainPanel;
@Inject
- public TagsSummaryPanel(final I18nTranslationService i18n, final WsArmor ws) {
+ public TagsSummaryPanel(final I18nTranslationService i18n, final GSpaceArmor ws) {
this.i18n = i18n;
mainPanel = new FlowPanel();
flowPanel = new FlowPanel();
Modified: trunk/src/main/java/cc/kune/gspace/client/tool/ContentViewerSelector.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/ContentViewerSelector.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/ContentViewerSelector.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -6,8 +6,8 @@
import javax.annotation.Nonnull;
-import cc.kune.common.client.errors.UIException;
import cc.kune.common.client.log.Log;
+import cc.kune.common.client.notify.NotifyUser;
import cc.kune.core.client.init.AppStartEvent;
import cc.kune.core.client.init.AppStartEvent.AppStartHandler;
import cc.kune.core.client.state.Session;
@@ -57,24 +57,26 @@
});
}
+ public void register(@Nonnull final ContentViewer view, final boolean isDefault, @Nonnull final String... typeIds) {
+ for (final String typeId : typeIds) {
+ List<ContentViewer> list = viewsRegister.get(typeId);
+ if (list == null) {
+ list = new ArrayList<ContentViewer>();
+ }
+ if (!list.contains(view)) {
+ list.add(view);
+ }
+ if (isDefault) {
+ defViewsRegister.put(typeId, view);
+ }
+ }
+ }
+
public void register(final String typeId, final ContentViewer view) {
Log.info("Registered " + typeId + " with class " + ContentViewer.class);
- register(typeId, view, false);
+ register(view, false, typeId);
}
- public void register(@Nonnull final String typeId, @Nonnull final ContentViewer view, final boolean isDefault) {
- List<ContentViewer> list = viewsRegister.get(typeId);
- if (list == null) {
- list = new ArrayList<ContentViewer>();
- }
- if (!list.contains(view)) {
- list.add(view);
- }
- if (isDefault) {
- defViewsRegister.put(typeId, view);
- }
- }
-
private void setContent(final ContentViewer view, final HasContent state) {
view.setContent(state);
view.attach();
@@ -89,7 +91,7 @@
if (viewsList != null && !viewsList.isEmpty()) {
setContent(viewsList.get(0), state);
} else {
- throw new UIException("Unsupported typeId: " + typeId);
+ NotifyUser.error("Unsupported typeId: " + typeId);
}
} else {
setContent(defView, state);
Modified: trunk/src/main/java/cc/kune/gspace/client/tool/old/FoldableAbstractClientTool.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/old/FoldableAbstractClientTool.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/old/FoldableAbstractClientTool.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -19,7 +19,6 @@
*/
package cc.kune.gspace.client.tool.old;
-
import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
import cc.kune.core.shared.dto.BasicMimeTypeDTO;
import cc.kune.gspace.client.tool.selector.ToolSelector;
@@ -52,8 +51,8 @@
contentCapabilitiesRegistry.getIconsRegistry().registerContentTypeIcon(typeId, mimeType, iconUrl);
}
- public void registerContentTypeIcon(final String contentTypeId, final String iconUrl) {
- contentCapabilitiesRegistry.getIconsRegistry().registerContentTypeIcon(contentTypeId, iconUrl);
+ public void registerContentTypeIcon(final String contentTypeId, final Object icon) {
+ contentCapabilitiesRegistry.getIconsRegistry().registerContentTypeIcon(contentTypeId, icon);
}
protected void registerDragableTypes(final String... typeIds) {
Modified: trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -1,6 +1,6 @@
package cc.kune.gspace.client.tool.selector;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import cc.kune.gspace.client.tool.selector.ToolSelectorItemPresenter.ToolSelectorItemView;
import cc.kune.gspace.client.tool.selector.ToolSelectorPresenter.ToolSelectorView;
@@ -23,7 +23,7 @@
FlowPanel flow;
@Inject
- public ToolSelectorPanel(final WsArmor wsArmor) {
+ public ToolSelectorPanel(final GSpaceArmor wsArmor) {
wsArmor.getEntityToolsCenter().add(uiBinder.createAndBindUi(this));
}
Modified: trunk/src/main/java/cc/kune/gspace/client/ui/footer/license/EntityLicensePanel.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/ui/footer/license/EntityLicensePanel.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/gspace/client/ui/footer/license/EntityLicensePanel.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -23,7 +23,7 @@
import cc.kune.common.client.ui.KuneWindowUtils;
import cc.kune.core.shared.dto.LicenseDTO;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import cc.kune.gspace.client.ui.footer.license.EntityLicensePresenter.EntityLicenseView;
import com.google.gwt.event.dom.client.HasClickHandlers;
@@ -41,7 +41,7 @@
private final Tooltip tooltip;
@Inject
- public EntityLicensePanel(final I18nTranslationService i18n, final WsArmor armor) {
+ public EntityLicensePanel(final I18nTranslationService i18n, final GSpaceArmor armor) {
this.i18n = i18n;
licenseImage = new Image();
Modified: trunk/src/main/java/cc/kune/pspace/client/PSpacePanel.java
===================================================================
--- trunk/src/main/java/cc/kune/pspace/client/PSpacePanel.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/pspace/client/PSpacePanel.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -23,7 +23,7 @@
import cc.kune.common.client.actions.ui.IsActionExtensible;
import cc.kune.common.client.actions.ui.bind.GuiProvider;
import cc.kune.core.client.resources.CoreResources;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import cc.kune.pspace.client.PSpacePresenter.PSpaceView;
import com.google.gwt.core.client.GWT;
@@ -65,7 +65,7 @@
private final Widget widget;
@Inject
- public PSpacePanel(final GuiProvider guiProvider, final CoreResources res, final WsArmor wsArmor) {
+ public PSpacePanel(final GuiProvider guiProvider, final CoreResources res, final GSpaceArmor wsArmor) {
widget = uiBinder.createAndBindUi(this);
actionPanel = new ActionFlowPanel(guiProvider);
actionPanelContainer.add(actionPanel);
Modified: trunk/src/main/java/cc/kune/wave/client/WaveClientManager.java
===================================================================
--- trunk/src/main/java/cc/kune/wave/client/WaveClientManager.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/cc/kune/wave/client/WaveClientManager.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -9,7 +9,7 @@
import cc.kune.core.client.state.UserSignOutEvent;
import cc.kune.core.client.state.UserSignOutEvent.UserSignOutHandler;
import cc.kune.core.shared.dto.WaveClientParams;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import com.google.gwt.core.client.JavaScriptObject;
import com.google.gwt.core.client.JsonUtils;
@@ -22,7 +22,7 @@
@Inject
public WaveClientManager(final Session session, final StateManager stateManager, final EventBus eventBus,
- final UserServiceAsync userService, final WsArmor wsArmor) {
+ final UserServiceAsync userService, final GSpaceArmor wsArmor) {
session.onUserSignIn(true, new UserSignInHandler() {
@Override
public void onUserSignIn(final UserSignInEvent event) {
Modified: trunk/src/main/java/org/ourproject/kune/blogs/client/cnt/BlogFolderContentPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/blogs/client/cnt/BlogFolderContentPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/org/ourproject/kune/blogs/client/cnt/BlogFolderContentPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -22,7 +22,7 @@
import cc.kune.core.client.cnt.FoldableContentPanel;
import cc.kune.core.client.resources.CoreResources;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import cc.kune.wave.client.WaveClientManager;
import com.google.inject.Inject;
@@ -30,7 +30,7 @@
public class BlogFolderContentPanel extends FoldableContentPanel implements BlogFolderContentView {
@Inject
- public BlogFolderContentPanel(final WsArmor ws, final I18nTranslationService i18n, final CoreResources res,
+ public BlogFolderContentPanel(final GSpaceArmor ws, final I18nTranslationService i18n, final CoreResources res,
final WaveClientManager waveClientManager) {
super(ws, i18n, res, waveClientManager);
}
Modified: trunk/src/main/java/org/ourproject/kune/blogs/client/cnt/BlogViewerPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/blogs/client/cnt/BlogViewerPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/org/ourproject/kune/blogs/client/cnt/BlogViewerPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -22,14 +22,14 @@
import cc.kune.core.client.cnt.FoldableContentPanel;
import cc.kune.core.client.resources.CoreResources;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import cc.kune.wave.client.WaveClientManager;
import com.google.inject.Inject;
public class BlogViewerPanel extends FoldableContentPanel implements BlogViewerView {
@Inject
- public BlogViewerPanel(final WsArmor ws, final I18nTranslationService i18n, final CoreResources res,
+ public BlogViewerPanel(final GSpaceArmor ws, final I18nTranslationService i18n, final CoreResources res,
final WaveClientManager waveClientManager) {
super(ws, i18n, res, waveClientManager);
}
Modified: trunk/src/main/java/org/ourproject/kune/chat/client/cnt/ChatRoomPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/client/cnt/ChatRoomPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/org/ourproject/kune/chat/client/cnt/ChatRoomPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -22,7 +22,7 @@
import cc.kune.core.client.cnt.FoldableContentPanel;
import cc.kune.core.client.resources.CoreResources;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import cc.kune.wave.client.WaveClientManager;
import com.google.inject.Inject;
@@ -30,7 +30,7 @@
public class ChatRoomPanel extends FoldableContentPanel implements ChatRoomView {
@Inject
- public ChatRoomPanel(final WsArmor ws, final I18nTranslationService i18n, final CoreResources res,
+ public ChatRoomPanel(final GSpaceArmor ws, final I18nTranslationService i18n, final CoreResources res,
final WaveClientManager waveClientManager) {
super(ws, i18n, res, waveClientManager);
}
Modified: trunk/src/main/java/org/ourproject/kune/gallery/client/cnt/GalleryFolderContentPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/gallery/client/cnt/GalleryFolderContentPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/org/ourproject/kune/gallery/client/cnt/GalleryFolderContentPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -26,7 +26,7 @@
import cc.kune.core.client.state.StateManager;
import cc.kune.core.shared.domain.utils.StateToken;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import cc.kune.wave.client.WaveClientManager;
import com.google.gwt.core.client.Scheduler;
@@ -44,7 +44,7 @@
private final StateManager stateManager;
@Inject
- public GalleryFolderContentPanel(final WsArmor ws, final I18nTranslationService i18n, final CoreResources res,
+ public GalleryFolderContentPanel(final GSpaceArmor ws, final I18nTranslationService i18n, final CoreResources res,
final StateManager stateManager, final Session session, final WaveClientManager waveClientManager) {
super(ws, i18n, res, waveClientManager);
this.stateManager = stateManager;
Modified: trunk/src/main/java/org/ourproject/kune/gallery/client/cnt/GalleryViewerPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/gallery/client/cnt/GalleryViewerPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/org/ourproject/kune/gallery/client/cnt/GalleryViewerPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -22,7 +22,7 @@
import cc.kune.core.client.cnt.FoldableContentPanel;
import cc.kune.core.client.resources.CoreResources;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import cc.kune.wave.client.WaveClientManager;
import com.google.inject.Inject;
@@ -30,7 +30,7 @@
public class GalleryViewerPanel extends FoldableContentPanel implements GalleryViewerView {
@Inject
- public GalleryViewerPanel(final WsArmor ws, final I18nTranslationService i18n, final CoreResources res,
+ public GalleryViewerPanel(final GSpaceArmor ws, final I18nTranslationService i18n, final CoreResources res,
final WaveClientManager waveClientManager) {
super(ws, i18n, res, waveClientManager);
}
Modified: trunk/src/main/java/org/ourproject/kune/wiki/client/cnt/WikiFolderContentPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/wiki/client/cnt/WikiFolderContentPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/org/ourproject/kune/wiki/client/cnt/WikiFolderContentPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -22,7 +22,7 @@
import cc.kune.core.client.cnt.FoldableContentPanel;
import cc.kune.core.client.resources.CoreResources;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import cc.kune.wave.client.WaveClientManager;
import com.google.inject.Inject;
@@ -30,7 +30,7 @@
public class WikiFolderContentPanel extends FoldableContentPanel implements WikiFolderContentView {
@Inject
- public WikiFolderContentPanel(final WsArmor ws, final I18nTranslationService i18n, final CoreResources res,
+ public WikiFolderContentPanel(final GSpaceArmor ws, final I18nTranslationService i18n, final CoreResources res,
final WaveClientManager waveClientManager) {
super(ws, i18n, res, waveClientManager);
super.setLabel("");
Modified: trunk/src/main/java/org/ourproject/kune/wiki/client/cnt/WikiViewerPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/wiki/client/cnt/WikiViewerPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/org/ourproject/kune/wiki/client/cnt/WikiViewerPanel.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -22,14 +22,14 @@
import cc.kune.core.client.cnt.FoldableContentPanel;
import cc.kune.core.client.resources.CoreResources;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.GSpaceArmor;
import cc.kune.wave.client.WaveClientManager;
import com.google.inject.Inject;
public class WikiViewerPanel extends FoldableContentPanel implements WikiViewerView {
@Inject
- public WikiViewerPanel(final WsArmor ws, final I18nTranslationService i18n, final CoreResources res,
+ public WikiViewerPanel(final GSpaceArmor ws, final I18nTranslationService i18n, final CoreResources res,
final WaveClientManager waveClientManager) {
super(ws, i18n, res, waveClientManager);
}
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/RegistryModule.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/RegistryModule.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/RegistryModule.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -29,8 +29,6 @@
import cc.kune.core.client.registry.AuthorableRegistry;
import cc.kune.core.client.registry.CanBeHomepageRegistry;
import cc.kune.core.client.registry.ComentableRegistry;
-import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
-import cc.kune.core.client.registry.ContentIconsRegistry;
import cc.kune.core.client.registry.DragableRegistry;
import cc.kune.core.client.registry.DropableRegistry;
import cc.kune.core.client.registry.EmailSubscribeAbleRegistry;
@@ -162,25 +160,33 @@
}
});
- register(Singleton.class, new Factory<ContentIconsRegistry>(ContentIconsRegistry.class) {
- @Override
- public ContentIconsRegistry create() {
- return new ContentIconsRegistry();
- }
- });
+ // register(Singleton.class, new
+ // Factory<IconsRegistry>(IconsRegistry.class) {
+ // @Override
+ // public IconsRegistry create() {
+ // return new IconsRegistry();
+ // }
+ // });
- register(Singleton.class, new Factory<ContentCapabilitiesRegistry>(ContentCapabilitiesRegistry.class) {
- @Override
- public ContentCapabilitiesRegistry create() {
- return new ContentCapabilitiesRegistry(i(AuthorableRegistry.class), i(AclEditableRegistry.class),
- i(ContentIconsRegistry.class), i(CanBeHomepageRegistry.class), i(ComentableRegistry.class),
- i(DragableRegistry.class), i(DropableRegistry.class), i(EmailSubscribeAbleRegistry.class),
- i(LicensableRegistry.class), i(PublishModerableRegistry.class), i(RateableRegistry.class),
- i(TageableRegistry.class), i(RenamableRegistry.class), i(TranslatableRegistry.class),
- i(VersionableRegistry.class), i(XmppComentableRegistry.class),
- i(XmppNotifyCapableRegistry.class));
- }
- });
+ // register(Singleton.class, new
+ // Factory<ContentCapabilitiesRegistry>(ContentCapabilitiesRegistry.class)
+ // {
+ // @Override
+ // public ContentCapabilitiesRegistry create() {
+ // return new ContentCapabilitiesRegistry(i(AuthorableRegistry.class),
+ // i(AclEditableRegistry.class),
+ // i(OldIconsRegistry.class), i(CanBeHomepageRegistry.class),
+ // i(ComentableRegistry.class),
+ // i(DragableRegistry.class), i(DropableRegistry.class),
+ // i(EmailSubscribeAbleRegistry.class),
+ // i(LicensableRegistry.class), i(PublishModerableRegistry.class),
+ // i(RateableRegistry.class),
+ // i(TageableRegistry.class), i(RenamableRegistry.class),
+ // i(TranslatableRegistry.class),
+ // i(VersionableRegistry.class), i(XmppComentableRegistry.class),
+ // i(XmppNotifyCapableRegistry.class));
+ // }
+ // });
register(Singleton.class, new Factory<ContextActionRegistry>(ContextActionRegistry.class) {
@Override
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/ctxnav/ContextNavigatorPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/ctxnav/ContextNavigatorPresenter.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/ctxnav/ContextNavigatorPresenter.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -19,7 +19,7 @@
*/
package org.ourproject.kune.workspace.client.ctxnav;
-import static cc.kune.docs.client.DocumentClientTool.TYPE_FOLDER;
+import static cc.kune.docs.client.DocsClientTool.TYPE_FOLDER;
import java.util.HashMap;
@@ -33,7 +33,7 @@
import org.ourproject.kune.workspace.client.upload.FileUploader;
import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
-import cc.kune.core.client.registry.ContentIconsRegistry;
+import cc.kune.core.client.registry.IconsRegistry;
import cc.kune.core.client.services.FileDownloadUtils;
import cc.kune.core.client.services.ImageSize;
import cc.kune.core.client.state.Session;
@@ -58,23 +58,23 @@
public class ContextNavigatorPresenter implements ContextNavigator {
- private ContextNavigatorView view;
- private final StateManager stateManager;
- private final Session session;
- private final I18nTranslationService i18n;
+ private final ActionRegistry<StateToken> actionRegistry;
private final HashMap<StateToken, ActionItemCollection<StateToken>> actionsByItem;
+ private final ActionContextBottomToolbar bottomToolbar;
+ private final ContentCapabilitiesRegistry capabilitiesRegistry;
+ private final IconsRegistry contentIconsRegistry;
+ private final Provider<FileDownloadUtils> downloadUtilsProvider;
private boolean editOnNextStateChange;
- private final ContentIconsRegistry contentIconsRegistry;
- private final ActionRegistry<StateToken> actionRegistry;
+ private final I18nTranslationService i18n;
+ private final RenameAction renameAction;
+ private final Session session;
+ private final StateManager stateManager;
private final ActionToolbar<StateToken> topToolbar;
- private final Provider<FileDownloadUtils> downloadUtilsProvider;
private final boolean useGenericImageIcon;
- private final ContentCapabilitiesRegistry capabilitiesRegistry;
- private final RenameAction renameAction;
- private final ActionContextBottomToolbar bottomToolbar;
+ private ContextNavigatorView view;
public ContextNavigatorPresenter(final StateManager stateManager, final Session session,
- final I18nTranslationService i18n, final ContentIconsRegistry contentIconsRegistry,
+ final I18nTranslationService i18n, final IconsRegistry contentIconsRegistry,
final ContentCapabilitiesRegistry capabilitiesRegistry, final ActionToolbar<StateToken> toolbar,
final ActionContextBottomToolbar bottomToolbar, final ActionRegistry<StateToken> actionRegistry,
final Provider<FileDownloadUtils> downloadUtilsProvider, final boolean useGenericImageIcon,
@@ -107,87 +107,6 @@
});
}
- @Override
- public void attach() {
- // FIXME At the moment detach (removeFromParent) destroy the gwt-ext
- // TreePanel and the widget must be recreated (cannot be attached again
- // like in gwt)
- topToolbar.attach();
- bottomToolbar.attach();
- }
-
- @Override
- public void clear() {
- topToolbar.clear();
- bottomToolbar.clear();
- view.clear();
- actionsByItem.clear();
- }
-
- @Override
- public void detach() {
- view.detach();
- topToolbar.detach();
- bottomToolbar.detach();
- }
-
- @Override
- public void editItem(final StateToken stateToken) {
- view.editItem(genId(stateToken));
- }
-
- public void init(final ContextNavigatorView view) {
- this.view = view;
- addListeners();
- }
-
- @Override
- public boolean isSelected(final StateToken stateToken) {
- return view.isSelected(genId(stateToken));
- }
-
- @Override
- public void refreshState() {
- final StateAbstractDTO currentState = session.getCurrentState();
- if (currentState instanceof StateContainerDTO) {
- setState((StateContainerDTO) currentState, true);
- }
- }
-
- @Override
- public void selectItem(final StateToken stateToken) {
- view.selectItem(genId(stateToken));
- topToolbar.disableMenusAndClearButtons();
- bottomToolbar.disableMenusAndClearButtons();
- final ActionItemCollection<StateToken> itemCollection = actionsByItem.get(stateToken);
- topToolbar.addActions(itemCollection, OldAbstractFoldableContentActions.CONTEXT_TOPBAR);
- bottomToolbar.addActions(itemCollection, OldAbstractFoldableContentActions.CONTEXT_BOTTOMBAR);
- }
-
- @Override
- public void setEditOnNextStateChange(final boolean edit) {
- editOnNextStateChange = edit;
- }
-
- @Override
- public void setItemStatus(final StateToken stateToken, final ContentStatus status) {
- clear();
- refreshState();
- }
-
- @Override
- public void setState(final StateContainerDTO state, final boolean select) {
- setStateContainer(state, select);
- }
-
- protected void gotoToken(final String token) {
- stateManager.gotoHistoryToken(token);
- }
-
- protected void onItemRename(final String token, final String newName, final String oldName) {
- renameAction.rename(new StateToken(token), oldName, newName);
- }
-
private ActionItemCollection<StateToken> addItem(final String title, final String contentTypeId,
final BasicMimeTypeDTO mimeType, final ContentStatus status, final StateToken stateToken,
final StateToken parentStateToken, final AccessRights rights, final boolean isNodeSelected) {
@@ -241,6 +160,23 @@
renameAction.onFail(onFail);
}
+ @Override
+ public void attach() {
+ // FIXME At the moment detach (removeFromParent) destroy the gwt-ext
+ // TreePanel and the widget must be recreated (cannot be attached again
+ // like in gwt)
+ topToolbar.attach();
+ bottomToolbar.attach();
+ }
+
+ @Override
+ public void clear() {
+ topToolbar.clear();
+ bottomToolbar.clear();
+ view.clear();
+ actionsByItem.clear();
+ }
+
private void createChildItems(final ContainerDTO container, final AccessRights containerRights) {
for (final ContainerSimpleDTO siblingFolder : container.getChilds()) {
addItem(siblingFolder.getName(), siblingFolder.getTypeId(), null, ContentStatus.publishedOnline,
@@ -269,6 +205,18 @@
}
}
+ @Override
+ public void detach() {
+ view.detach();
+ topToolbar.detach();
+ bottomToolbar.detach();
+ }
+
+ @Override
+ public void editItem(final StateToken stateToken) {
+ view.editItem(genId(stateToken));
+ }
+
private String genId(final StateToken token) {
return "k-cnav-" + token.toString().replace(StateToken.SEPARATOR, "-");
}
@@ -279,7 +227,7 @@
} else if (!useGenericImageIcon && mimeType != null && mimeType.getType().equals("image")) {
return downloadUtilsProvider.get().getImageResizedUrl(token, ImageSize.ico);
} else {
- return contentIconsRegistry.getContentTypeIcon(contentTypeId, mimeType);
+ return (String) contentIconsRegistry.getContentTypeIcon(contentTypeId, mimeType);
}
}
@@ -292,6 +240,42 @@
}
}
+ protected void gotoToken(final String token) {
+ stateManager.gotoHistoryToken(token);
+ }
+
+ public void init(final ContextNavigatorView view) {
+ this.view = view;
+ addListeners();
+ }
+
+ @Override
+ public boolean isSelected(final StateToken stateToken) {
+ return view.isSelected(genId(stateToken));
+ }
+
+ protected void onItemRename(final String token, final String newName, final String oldName) {
+ renameAction.rename(new StateToken(token), oldName, newName);
+ }
+
+ @Override
+ public void refreshState() {
+ final StateAbstractDTO currentState = session.getCurrentState();
+ if (currentState instanceof StateContainerDTO) {
+ setState((StateContainerDTO) currentState, true);
+ }
+ }
+
+ @Override
+ public void selectItem(final StateToken stateToken) {
+ view.selectItem(genId(stateToken));
+ topToolbar.disableMenusAndClearButtons();
+ bottomToolbar.disableMenusAndClearButtons();
+ final ActionItemCollection<StateToken> itemCollection = actionsByItem.get(stateToken);
+ topToolbar.addActions(itemCollection, OldAbstractFoldableContentActions.CONTEXT_TOPBAR);
+ bottomToolbar.addActions(itemCollection, OldAbstractFoldableContentActions.CONTEXT_BOTTOMBAR);
+ }
+
private void selectOrEditNode(final boolean select, final StateToken stateToken) {
// Finaly
if (editOnNextStateChange) {
@@ -306,12 +290,28 @@
}
}
+ @Override
+ public void setEditOnNextStateChange(final boolean edit) {
+ editOnNextStateChange = edit;
+ }
+
+ @Override
+ public void setItemStatus(final StateToken stateToken, final ContentStatus status) {
+ clear();
+ refreshState();
+ }
+
private void setItemText(final StateToken stateToken, final String name) {
if (view.isAttached()) {
view.setItemText(genId(stateToken), name);
}
}
+ @Override
+ public void setState(final StateContainerDTO state, final boolean select) {
+ setStateContainer(state, select);
+ }
+
private void setStateContainer(final StateContainerDTO state, final boolean select) {
final StateToken stateToken = state.getStateToken();
final boolean isContent = state instanceof StateContentDTO;
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/title/EntityTitlePresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/title/EntityTitlePresenter.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/title/EntityTitlePresenter.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -21,7 +21,7 @@
import org.ourproject.kune.platf.client.View;
-import cc.kune.core.client.registry.ContentIconsRegistry;
+import cc.kune.core.client.registry.IconsRegistry;
import cc.kune.core.client.registry.RenamableRegistry;
import cc.kune.core.client.state.Session;
import cc.kune.core.client.state.StateManager;
@@ -35,20 +35,21 @@
public class EntityTitlePresenter implements EntityTitle {
- private EntityTitleView view;
- private final Session session;
- private final ContentIconsRegistry iconsRegistry;
+ private final IconsRegistry iconsRegistry;
private final RenamableRegistry renamableContentRegistry;
private final RenameAction renameAction;
+ private final Session session;
+ private EntityTitleView view;
public EntityTitlePresenter(final StateManager stateManager, final Session session,
- final ContentIconsRegistry iconsRegistry, RenamableRegistry renamableContentRegistry,
- RenameAction renameAction) {
+ final IconsRegistry iconsRegistry, final RenamableRegistry renamableContentRegistry,
+ final RenameAction renameAction) {
this.session = session;
this.iconsRegistry = iconsRegistry;
this.renamableContentRegistry = renamableContentRegistry;
this.renameAction = renameAction;
stateManager.onStateChanged(new Listener<StateAbstractDTO>() {
+ @Override
public void onEvent(final StateAbstractDTO state) {
if (state instanceof StateContentDTO) {
setState((StateContentDTO) state);
@@ -63,6 +64,24 @@
addRenameListeners();
}
+ private void addRenameListeners() {
+ final Listener2<StateToken, String> onSuccess = new Listener2<StateToken, String>() {
+ @Override
+ public void onEvent(final StateToken token, final String newName) {
+ view.setContentTitle(newName);
+ }
+ };
+ final Listener2<StateToken, String> onFail = new Listener2<StateToken, String>() {
+ @Override
+ public void onEvent(final StateToken token, final String oldName) {
+ view.setContentTitle(oldName);
+ }
+ };
+ renameAction.onSuccess(onSuccess);
+ renameAction.onFail(onFail);
+ }
+
+ @Override
public void edit() {
view.edit();
}
@@ -75,34 +94,20 @@
this.view = view;
}
+ protected void onTitleRename(final String oldName, final String newName) {
+ final StateToken token = session.getCurrentState().getStateToken();
+ renameAction.rename(token, oldName, newName);
+ }
+
/**
* Used renaming from context
*/
+ @Override
public void setContentTitle(final String title) {
view.setContentTitle(title);
view.setContentTitleVisible(true);
}
- protected void onTitleRename(final String oldName, final String newName) {
- final StateToken token = session.getCurrentState().getStateToken();
- renameAction.rename(token, oldName, newName);
- }
-
- private void addRenameListeners() {
- Listener2<StateToken, String> onSuccess = new Listener2<StateToken, String>() {
- public void onEvent(StateToken token, String newName) {
- view.setContentTitle(newName);
- }
- };
- Listener2<StateToken, String> onFail = new Listener2<StateToken, String>() {
- public void onEvent(StateToken token, String oldName) {
- view.setContentTitle(oldName);
- }
- };
- renameAction.onSuccess(onSuccess);
- renameAction.onFail(onFail);
- }
-
private void setContentTitle(final String title, final boolean editable) {
setContentTitle(title);
view.setContentTitleEditable(editable);
@@ -119,17 +124,19 @@
}
private void setState(final StateContainerDTO state) {
- setContentTitle(state.getTitle(), state.getContainerRights().isEditable()
- && renamableContentRegistry.contains(state.getContainer().getTypeId()));
- final String contentTypeIcon = iconsRegistry.getContentTypeIcon(state.getTypeId(), null);
+ setContentTitle(
+ state.getTitle(),
+ state.getContainerRights().isEditable()
+ && renamableContentRegistry.contains(state.getContainer().getTypeId()));
+ final String contentTypeIcon = (String) iconsRegistry.getContentTypeIcon(state.getTypeId(), null);
setIcon(contentTypeIcon);
view.setContentTitleVisible(true);
}
private void setState(final StateContentDTO state) {
- setContentTitle(state.getTitle(), state.getContentRights().isEditable()
- && renamableContentRegistry.contains(state.getTypeId()));
- final String contentTypeIcon = iconsRegistry.getContentTypeIcon(state.getTypeId(), state.getMimeType());
+ setContentTitle(state.getTitle(),
+ state.getContentRights().isEditable() && renamableContentRegistry.contains(state.getTypeId()));
+ final String contentTypeIcon = (String) iconsRegistry.getContentTypeIcon(state.getTypeId(), state.getMimeType());
setIcon(contentTypeIcon);
view.setContentTitleVisible(true);
}
Modified: trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceAddTest.java
===================================================================
--- trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceAddTest.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceAddTest.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -38,7 +38,7 @@
import cc.kune.core.shared.dto.ContentSimpleDTO;
import cc.kune.core.shared.dto.StateContainerDTO;
import cc.kune.core.shared.dto.StateContentDTO;
-import cc.kune.docs.client.DocumentClientTool;
+import cc.kune.docs.client.DocsClientTool;
import cc.kune.docs.server.DocumentServerTool;
public class ContentServiceAddTest extends ContentServiceIntegrationTest {
@@ -93,7 +93,7 @@
final ContainerDTO parent = defaultContent.getContainer();
final String title = "folder name";
final StateContainerDTO newState = contentService.addFolder(session.getHash(), parent.getStateToken(), title,
- DocumentClientTool.TYPE_FOLDER);
+ DocsClientTool.TYPE_FOLDER);
assertNotNull(newState);
assertNotNull(newState.getGroupMembers());
assertNotNull(newState.getParticipation());
@@ -127,11 +127,11 @@
final ContainerDTO parent = defaultContent.getContainer();
final String title = "folder name";
final StateContainerDTO newState = contentService.addFolder(session.getHash(), parent.getStateToken(), title,
- DocumentClientTool.TYPE_FOLDER);
+ DocsClientTool.TYPE_FOLDER);
assertNotNull(newState);
final StateContainerDTO newState2 = contentService.addFolder(session.getHash(), parent.getStateToken(), title,
- DocumentClientTool.TYPE_FOLDER);
+ DocsClientTool.TYPE_FOLDER);
assertNotNull(newState2);
final ContainerDTO parentAgain = getSiteDefaultContent().getContainer();
Modified: trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceVariousTest.java
===================================================================
--- trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceVariousTest.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/test/java/cc/kune/core/server/integration/content/ContentServiceVariousTest.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -41,7 +41,7 @@
import cc.kune.core.shared.dto.StateContainerDTO;
import cc.kune.core.shared.dto.StateContentDTO;
import cc.kune.core.shared.dto.UserSimpleDTO;
-import cc.kune.docs.client.DocumentClientTool;
+import cc.kune.docs.client.DocsClientTool;
import cc.kune.docs.server.DocumentServerTool;
public class ContentServiceVariousTest extends ContentServiceIntegrationTest {
@@ -102,7 +102,7 @@
final String oldTitle = "some title";
String newTitle = "folder new name";
final StateContainerDTO newState = contentService.addFolder(session.getHash(), defaultContent.getStateToken(),
- oldTitle, DocumentClientTool.TYPE_FOLDER);
+ oldTitle, DocsClientTool.TYPE_FOLDER);
final ContainerDTO newFolder = newState.getContainer();
@@ -207,7 +207,7 @@
final String oldTitle = "some title";
String newTitle = "folder new name";
final StateContainerDTO newState = contentService.addFolder(session.getHash(), folder.getStateToken(),
- oldTitle, DocumentClientTool.TYPE_FOLDER);
+ oldTitle, DocsClientTool.TYPE_FOLDER);
final ContainerDTO newFolder = newState.getContainer();
Modified: trunk/src/test/java/cc/kune/docs/DocumentToolTest.java
===================================================================
--- trunk/src/test/java/cc/kune/docs/DocumentToolTest.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/test/java/cc/kune/docs/DocumentToolTest.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -23,16 +23,16 @@
import org.junit.Test;
-import cc.kune.docs.client.DocumentClientTool;
+import cc.kune.docs.client.DocsClientTool;
import cc.kune.docs.server.DocumentServerTool;
public class DocumentToolTest {
@Test
public void clientAndServerSync() {
- assertEquals(DocumentServerTool.NAME, DocumentClientTool.NAME);
- assertEquals(DocumentServerTool.TYPE_ROOT, DocumentClientTool.TYPE_ROOT);
- assertEquals(DocumentServerTool.TYPE_FOLDER, DocumentClientTool.TYPE_FOLDER);
- assertEquals(DocumentServerTool.TYPE_DOCUMENT, DocumentClientTool.TYPE_DOCUMENT);
+ assertEquals(DocumentServerTool.NAME, DocsClientTool.NAME);
+ assertEquals(DocumentServerTool.TYPE_ROOT, DocsClientTool.TYPE_ROOT);
+ assertEquals(DocumentServerTool.TYPE_FOLDER, DocsClientTool.TYPE_FOLDER);
+ assertEquals(DocumentServerTool.TYPE_DOCUMENT, DocsClientTool.TYPE_DOCUMENT);
}
}
Deleted: trunk/src/test/java/org/ourproject/kune/platf/client/actions/ContentIconsRegistryTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/client/actions/ContentIconsRegistryTest.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/test/java/org/ourproject/kune/platf/client/actions/ContentIconsRegistryTest.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -1,102 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2011 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;
-
-import static org.junit.Assert.assertEquals;
-
-import org.junit.Before;
-import org.junit.Test;
-
-import cc.kune.core.client.registry.ContentIconsRegistry;
-import cc.kune.core.shared.dto.BasicMimeTypeDTO;
-
-public class ContentIconsRegistryTest {
-
- private static final String CONTENT_TYPE_TEST = "somecontenttype";
- private static final String ICON = "someicon";
- private static final String OTHERICON = "othericon";
- private static final String JUSTANOTHERICON = "justanothericon";
-
- private ContentIconsRegistry reg;
-
- @Before
- public void before() {
- reg = new ContentIconsRegistry();
- }
-
- @Test
- public void testBasic() {
- reg.registerContentTypeIcon(CONTENT_TYPE_TEST, ICON);
- assertEquals(ICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST));
- }
-
- @Test
- public void testBasicMimeType() {
- final BasicMimeTypeDTO mimeType = new BasicMimeTypeDTO("image/png");
- reg.registerContentTypeIcon(CONTENT_TYPE_TEST, mimeType, ICON);
- assertEquals(ICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, mimeType));
- assertEquals("", reg.getContentTypeIcon(CONTENT_TYPE_TEST));
- }
-
- @Test
- public void testBasicMimeTypeWithDef() {
- final BasicMimeTypeDTO mimeType = new BasicMimeTypeDTO("image/png");
- reg.registerContentTypeIcon(CONTENT_TYPE_TEST, mimeType, ICON);
- reg.registerContentTypeIcon(CONTENT_TYPE_TEST, OTHERICON);
- assertEquals(ICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, mimeType));
- assertEquals(OTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST));
- }
-
- @Test
- public void testBasicMimeTypeWithDefType() {
- final BasicMimeTypeDTO mimeType = new BasicMimeTypeDTO("image/png");
- final BasicMimeTypeDTO genericMimeType = new BasicMimeTypeDTO("image");
- reg.registerContentTypeIcon(CONTENT_TYPE_TEST, mimeType, ICON);
- reg.registerContentTypeIcon(CONTENT_TYPE_TEST, genericMimeType, OTHERICON);
- reg.registerContentTypeIcon(CONTENT_TYPE_TEST, JUSTANOTHERICON);
- assertEquals(ICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, mimeType));
- assertEquals(OTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, genericMimeType));
- assertEquals(JUSTANOTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST));
- }
-
- @Test
- public void testBasicMimeTypeWithOnlyDefType() {
- final BasicMimeTypeDTO mimeType = new BasicMimeTypeDTO("image/png");
- final BasicMimeTypeDTO genericMimeType = new BasicMimeTypeDTO("image");
- reg.registerContentTypeIcon(CONTENT_TYPE_TEST, genericMimeType, OTHERICON);
- reg.registerContentTypeIcon(CONTENT_TYPE_TEST, JUSTANOTHERICON);
- assertEquals(OTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, mimeType));
- assertEquals(OTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, genericMimeType));
- assertEquals(JUSTANOTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST));
- }
-
- @Test
- public void testNoResult() {
- reg.registerContentTypeIcon(CONTENT_TYPE_TEST, new BasicMimeTypeDTO("text", "plain"), ICON);
- assertEquals("", reg.getContentTypeIcon(CONTENT_TYPE_TEST, new BasicMimeTypeDTO("text", "rtf")));
- }
-
- @Test
- public void testNullBasicMimeType() {
- final BasicMimeTypeDTO mimeType = null;
- reg.registerContentTypeIcon(CONTENT_TYPE_TEST, ICON);
- assertEquals(ICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, mimeType));
- }
-}
Copied: trunk/src/test/java/org/ourproject/kune/platf/client/actions/IconsRegistryTest.java (from rev 1313, trunk/src/test/java/org/ourproject/kune/platf/client/actions/ContentIconsRegistryTest.java)
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/client/actions/IconsRegistryTest.java (rev 0)
+++ trunk/src/test/java/org/ourproject/kune/platf/client/actions/IconsRegistryTest.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -0,0 +1,102 @@
+/*
+ *
+ * Copyright (C) 2007-2011 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;
+
+import static org.junit.Assert.assertEquals;
+
+import org.junit.Before;
+import org.junit.Test;
+
+import cc.kune.core.client.registry.IconsRegistry;
+import cc.kune.core.shared.dto.BasicMimeTypeDTO;
+
+public class IconsRegistryTest {
+
+ private static final String CONTENT_TYPE_TEST = "somecontenttype";
+ private static final String ICON = "someicon";
+ private static final String JUSTANOTHERICON = "justanothericon";
+ private static final String OTHERICON = "othericon";
+
+ private IconsRegistry reg;
+
+ @Before
+ public void before() {
+ reg = new IconsRegistry();
+ }
+
+ @Test
+ public void testBasic() {
+ reg.registerContentTypeIcon(CONTENT_TYPE_TEST, ICON);
+ assertEquals(ICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST));
+ }
+
+ @Test
+ public void testBasicMimeType() {
+ final BasicMimeTypeDTO mimeType = new BasicMimeTypeDTO("image/png");
+ reg.registerContentTypeIcon(CONTENT_TYPE_TEST, mimeType, ICON);
+ assertEquals(ICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, mimeType));
+ assertEquals(null, reg.getContentTypeIcon(CONTENT_TYPE_TEST));
+ }
+
+ @Test
+ public void testBasicMimeTypeWithDef() {
+ final BasicMimeTypeDTO mimeType = new BasicMimeTypeDTO("image/png");
+ reg.registerContentTypeIcon(CONTENT_TYPE_TEST, mimeType, ICON);
+ reg.registerContentTypeIcon(CONTENT_TYPE_TEST, OTHERICON);
+ assertEquals(ICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, mimeType));
+ assertEquals(OTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST));
+ }
+
+ @Test
+ public void testBasicMimeTypeWithDefType() {
+ final BasicMimeTypeDTO mimeType = new BasicMimeTypeDTO("image/png");
+ final BasicMimeTypeDTO genericMimeType = new BasicMimeTypeDTO("image");
+ reg.registerContentTypeIcon(CONTENT_TYPE_TEST, mimeType, ICON);
+ reg.registerContentTypeIcon(CONTENT_TYPE_TEST, genericMimeType, OTHERICON);
+ reg.registerContentTypeIcon(CONTENT_TYPE_TEST, JUSTANOTHERICON);
+ assertEquals(ICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, mimeType));
+ assertEquals(OTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, genericMimeType));
+ assertEquals(JUSTANOTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST));
+ }
+
+ @Test
+ public void testBasicMimeTypeWithOnlyDefType() {
+ final BasicMimeTypeDTO mimeType = new BasicMimeTypeDTO("image/png");
+ final BasicMimeTypeDTO genericMimeType = new BasicMimeTypeDTO("image");
+ reg.registerContentTypeIcon(CONTENT_TYPE_TEST, genericMimeType, OTHERICON);
+ reg.registerContentTypeIcon(CONTENT_TYPE_TEST, JUSTANOTHERICON);
+ assertEquals(OTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, mimeType));
+ assertEquals(OTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, genericMimeType));
+ assertEquals(JUSTANOTHERICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST));
+ }
+
+ @Test
+ public void testNoResult() {
+ reg.registerContentTypeIcon(CONTENT_TYPE_TEST, new BasicMimeTypeDTO("text", "plain"), ICON);
+ assertEquals(null, reg.getContentTypeIcon(CONTENT_TYPE_TEST, new BasicMimeTypeDTO("text", "rtf")));
+ }
+
+ @Test
+ public void testNullBasicMimeType() {
+ final BasicMimeTypeDTO mimeType = null;
+ reg.registerContentTypeIcon(CONTENT_TYPE_TEST, ICON);
+ assertEquals(ICON, reg.getContentTypeIcon(CONTENT_TYPE_TEST, mimeType));
+ }
+}
Modified: trunk/src/test/java/org/ourproject/kune/platf/client/ui/dialogs/upload/FileUploaderPresenterTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/client/ui/dialogs/upload/FileUploaderPresenterTest.java 2011-04-17 19:25:13 UTC (rev 1314)
+++ trunk/src/test/java/org/ourproject/kune/platf/client/ui/dialogs/upload/FileUploaderPresenterTest.java 2011-04-18 00:41:28 UTC (rev 1315)
@@ -30,7 +30,7 @@
import cc.kune.core.client.state.Session;
import cc.kune.core.shared.domain.utils.StateToken;
-import cc.kune.docs.client.DocumentClientTool;
+import cc.kune.docs.client.DocsClientTool;
public class FileUploaderPresenterTest {
@@ -53,7 +53,7 @@
Mockito.when(session.getCurrentStateToken()).thenReturn(new StateToken("group.docs.1.1"));
assertTrue(presenter.checkFolderChange());
Mockito.verify(view, Mockito.times(1)).setUploadParams(SOMEUSER_HASH, "group.docs.1",
- DocumentClientTool.TYPE_UPLOADEDFILE);
+ DocsClientTool.TYPE_UPLOADEDFILE);
}
@Test
@@ -61,7 +61,7 @@
Mockito.when(session.getCurrentStateToken()).thenReturn(new StateToken("group.docs.1"));
assertTrue(presenter.checkFolderChange());
Mockito.verify(view, Mockito.times(1)).setUploadParams(SOMEUSER_HASH, "group.docs.1",
- DocumentClientTool.TYPE_UPLOADEDFILE);
+ DocsClientTool.TYPE_UPLOADEDFILE);
}
@Test
@@ -72,9 +72,9 @@
Mockito.when(session.getCurrentStateToken()).thenReturn(new StateToken("group.docs.2"));
assertTrue(presenter.checkFolderChange());
Mockito.verify(view, Mockito.times(1)).setUploadParams(SOMEUSER_HASH, "group.docs.1",
- DocumentClientTool.TYPE_UPLOADEDFILE);
+ DocsClientTool.TYPE_UPLOADEDFILE);
Mockito.verify(view, Mockito.times(1)).setUploadParams(SOMEUSER_HASH, "group.docs.2",
- DocumentClientTool.TYPE_UPLOADEDFILE);
+ DocsClientTool.TYPE_UPLOADEDFILE);
}
@Test
@@ -85,9 +85,9 @@
Mockito.when(session.getCurrentStateToken()).thenReturn(new StateToken("group.docs.2"));
assertFalse(presenter.checkFolderChange());
Mockito.verify(view, Mockito.times(1)).setUploadParams(SOMEUSER_HASH, "group.docs.1",
- DocumentClientTool.TYPE_UPLOADEDFILE);
+ DocsClientTool.TYPE_UPLOADEDFILE);
Mockito.verify(view, Mockito.never()).setUploadParams(SOMEUSER_HASH, "group.docs.2",
- DocumentClientTool.TYPE_UPLOADEDFILE);
+ DocsClientTool.TYPE_UPLOADEDFILE);
}
@Test
@@ -97,6 +97,6 @@
Mockito.when(session.getCurrentStateToken()).thenReturn(new StateToken("group.docs.1"));
assertTrue(presenter.checkFolderChange());
Mockito.verify(view, Mockito.times(2)).setUploadParams(SOMEUSER_HASH, "group.docs.1",
- DocumentClientTool.TYPE_UPLOADEDFILE);
+ DocsClientTool.TYPE_UPLOADEDFILE);
}
}
1
0
Author: vjrj_
Date: 2011-04-17 21:25:13 +0200 (Sun, 17 Apr 2011)
New Revision: 1314
Added:
trunk/src/main/java/cc/kune/core/client/resources/arrowdown.png
trunk/src/main/java/cc/kune/core/client/resources/arrowdownsquarewhite.gif
trunk/src/main/java/cc/kune/core/client/resources/charfontname.png
trunk/src/main/java/cc/kune/core/client/resources/content_edit.png
trunk/src/main/java/cc/kune/core/client/resources/emite-room.png
trunk/src/main/java/cc/kune/core/client/resources/folder-go-up.gif
trunk/src/main/java/cc/kune/core/client/resources/folderpathmenu.gif
trunk/src/main/java/cc/kune/core/client/resources/fontheight.png
trunk/src/main/java/cc/kune/core/client/resources/generateMainImageBundle.sh
trunk/src/main/java/cc/kune/core/client/resources/kuneicon16.gif
trunk/src/main/java/cc/kune/core/client/resources/nav/
trunk/src/main/java/cc/kune/core/client/resources/persons/
trunk/src/main/java/cc/kune/core/client/resources/prefs.png
trunk/src/main/java/cc/kune/core/shared/dto/HasContent.java
trunk/src/main/java/cc/kune/docs/client/DocsGinjector.java
trunk/src/main/java/cc/kune/docs/client/DocsGoUpBtn.java
trunk/src/main/java/cc/kune/docs/client/DocsParts.java
trunk/src/main/java/cc/kune/docs/client/DocsViewerPanel.java
trunk/src/main/java/cc/kune/docs/client/DocsViewerPanel.ui.xml
trunk/src/main/java/cc/kune/docs/client/DocsViewerPresenter.java
trunk/src/main/java/cc/kune/gspace/client/GSpaceGinModule.java
trunk/src/main/java/cc/kune/gspace/client/GSpaceGinjector.java
trunk/src/main/java/cc/kune/gspace/client/GSpaceParts.java
trunk/src/main/java/cc/kune/gspace/client/actions/
trunk/src/main/java/cc/kune/gspace/client/actions/perspective/
trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ActionPerspective.java
trunk/src/main/java/cc/kune/gspace/client/actions/perspective/EditPerspective.java
trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ViewPerspective.java
trunk/src/main/java/cc/kune/gspace/client/tool/ContentViewer.java
trunk/src/main/java/cc/kune/gspace/client/tool/ContentViewerSelector.java
trunk/src/main/java/cc/kune/gspace/client/tool/old/
trunk/src/main/java/cc/kune/gspace/client/tool/old/AbstractClientTool.java
trunk/src/main/java/cc/kune/gspace/client/tool/old/FoldableAbstractClientTool.java
trunk/src/main/java/cc/kune/gspace/client/tool/selector/
trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolResources.java
trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelector.java
trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorItem.java
trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorItemPanel.java
trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorItemPanel.ui.xml
trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorItemPresenter.java
trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorPanel.java
trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorPanel.ui.xml
trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorPresenter.java
trunk/src/main/java/cc/kune/gspace/client/tool/selector/tool-arrowdown-def.png
trunk/src/main/java/cc/kune/gspace/client/tool/selector/tool-arrowleft-def.png
trunk/src/main/java/cc/kune/gspace/client/tool/selector/tool-arrowright-def.png
trunk/src/main/java/cc/kune/gspace/client/tool/selector/tool-arrowup-def.png
trunk/src/test/java/cc/kune/core/client/actions/
trunk/src/test/java/cc/kune/core/client/actions/ActionRegistryByTypeTest.java
trunk/src/test/java/cc/kune/gspace/client/tool/selector/
trunk/src/test/java/cc/kune/gspace/client/tool/selector/ToolSelectorPresenterTest.java
Removed:
trunk/src/main/java/cc/kune/core/client/resources/arrowdown.gif
trunk/src/main/java/cc/kune/gspace/client/tool/AbstractClientTool.java
trunk/src/main/java/cc/kune/gspace/client/tool/FoldableAbstractClientTool.java
trunk/src/main/java/cc/kune/gspace/client/tool/ToolResources.java
trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelector.java
trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItem.java
trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItemPanel.java
trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItemPanel.ui.xml
trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItemPresenter.java
trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorPanel.java
trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorPanel.ui.xml
trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorPresenter.java
trunk/src/main/java/cc/kune/gspace/client/tool/tool-arrowdown-def.png
trunk/src/main/java/cc/kune/gspace/client/tool/tool-arrowleft-def.png
trunk/src/main/java/cc/kune/gspace/client/tool/tool-arrowright-def.png
trunk/src/main/java/cc/kune/gspace/client/tool/tool-arrowup-def.png
trunk/src/main/java/cc/ourproject/
trunk/src/main/java/org/ourproject/kune/platf/public/images/
trunk/src/test/java/cc/kune/gspace/client/tool/ToolSelectorPresenterTest.java
Modified:
trunk/src/main/java/cc/kune/chat/client/ChatClientDefault.java
trunk/src/main/java/cc/kune/client/KuneEntryPoint.java
trunk/src/main/java/cc/kune/client/KuneGinjector.java
trunk/src/main/java/cc/kune/common/client/SampleEntryPoint.java
trunk/src/main/java/cc/kune/common/client/actions/ui/AbstractActionExtensiblePresenter.java
trunk/src/main/java/cc/kune/common/client/actions/ui/AbstractComposedGuiItem.java
trunk/src/main/java/cc/kune/common/client/actions/ui/ActionExtensibleView.java
trunk/src/main/java/cc/kune/common/client/actions/ui/IsActionExtensible.java
trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/AbstractGuiActionDescrip.java
trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/ButtonDescriptor.java
trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescrip.java
trunk/src/main/java/cc/kune/common/client/tooltip/Tooltip.java
trunk/src/main/java/cc/kune/common/client/ui/MaskWidget.ui.xml
trunk/src/main/java/cc/kune/core/client/CoreGinModule.java
trunk/src/main/java/cc/kune/core/client/CoreParts.java
trunk/src/main/java/cc/kune/core/client/actions/ActionRegistryByType.java
trunk/src/main/java/cc/kune/core/client/cnt/FoldableContentPanel.java
trunk/src/main/java/cc/kune/core/client/cnt/FoldableContentPresenter.java
trunk/src/main/java/cc/kune/core/client/notify/spiner/SpinerViewImpl.java
trunk/src/main/java/cc/kune/core/client/resources/CoreResources.java
trunk/src/main/java/cc/kune/core/client/services/ImageUtils.java
trunk/src/main/java/cc/kune/core/client/sitebar/SiteUserOptionsPresenter.java
trunk/src/main/java/cc/kune/core/client/sitebar/SitebarActionsPresenter.java
trunk/src/main/java/cc/kune/core/client/sn/GroupSNPresenter.java
trunk/src/main/java/cc/kune/core/client/sn/UserSNPresenter.java
trunk/src/main/java/cc/kune/core/client/sn/actions/registry/GroupSNConfActions.java
trunk/src/main/java/cc/kune/core/client/sn/actions/registry/UserSNConfActions.java
trunk/src/main/java/cc/kune/core/client/ws/CoreViewImpl.java
trunk/src/main/java/cc/kune/core/client/ws/entheader/EntityHeaderPanel.java
trunk/src/main/java/cc/kune/core/shared/dto/StateContainerDTO.java
trunk/src/main/java/cc/kune/core/shared/dto/StateContentDTO.java
trunk/src/main/java/cc/kune/docs/client/AbstractFoldableContentActions.java
trunk/src/main/java/cc/kune/docs/client/DocumentClientActions.java
trunk/src/main/java/cc/kune/docs/client/DocumentClientTool.java
trunk/src/main/java/cc/kune/docs/client/DocumentGinModule.java
trunk/src/main/java/cc/kune/wave/client/WaveStatusIndicator.java
trunk/src/main/java/cc/kune/wave/client/WebClient.java
trunk/src/main/java/com/example/client/HelloWorldActions.java
trunk/src/main/java/org/ourproject/kune/blogs/client/BlogClientTool.java
trunk/src/main/java/org/ourproject/kune/chat/client/ChatClientTool.java
trunk/src/main/java/org/ourproject/kune/gallery/client/GalleryClientTool.java
trunk/src/main/java/org/ourproject/kune/wiki/client/WikiClientTool.java
trunk/src/main/java/org/ourproject/kune/workspace/client/tool/OldAbstractClientTool.java
trunk/src/main/java/org/ourproject/kune/workspace/client/tool/OldFoldableAbstractClientTool.java
trunk/src/test/java/cc/kune/core/server/integration/DatabaseInitializerTest.java
Log:
Doc viewer
Modified: trunk/src/main/java/cc/kune/chat/client/ChatClientDefault.java
===================================================================
--- trunk/src/main/java/cc/kune/chat/client/ChatClientDefault.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/chat/client/ChatClientDefault.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -226,13 +226,13 @@
shorcutRegister.put(shortcut, action);
action.setShortcut(shortcut);
chatIcon.setVisible(session.isLogged());
- siteActions.getLeftToolbar().addAction(
+ siteActions.getLeftToolbar().add(
new ToolbarSeparatorDescriptor(Type.spacer, SitebarActionsPresenter.LEFT_TOOLBAR));
- siteActions.getLeftToolbar().addAction(
+ siteActions.getLeftToolbar().add(
new ToolbarSeparatorDescriptor(Type.spacer, SitebarActionsPresenter.LEFT_TOOLBAR));
- siteActions.getLeftToolbar().addAction(
+ siteActions.getLeftToolbar().add(
new ToolbarSeparatorDescriptor(Type.spacer, SitebarActionsPresenter.LEFT_TOOLBAR));
- siteActions.getLeftToolbar().addAction(chatIcon);
+ siteActions.getLeftToolbar().add(chatIcon);
}
}
Modified: trunk/src/main/java/cc/kune/client/KuneEntryPoint.java
===================================================================
--- trunk/src/main/java/cc/kune/client/KuneEntryPoint.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/client/KuneEntryPoint.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -76,10 +76,13 @@
ginjector.getUserNotifierPresenter();
ginjector.getSpinerPresenter();
ginjector.getGroupMembersPresenter();
+ ginjector.getDocsParts();
ginjector.getSiteLogoPresenter();
ginjector.getSpacesTabPresenter();
ginjector.getChatClient();
ginjector.getCoreParts();
+ ginjector.getGSpaceParts();
ginjector.getPSpaceParts();
+ ginjector.getContentViewerSelector().init();
}
}
Modified: trunk/src/main/java/cc/kune/client/KuneGinjector.java
===================================================================
--- trunk/src/main/java/cc/kune/client/KuneGinjector.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/client/KuneGinjector.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -48,10 +48,10 @@
import cc.kune.core.client.ws.CorePresenter;
import cc.kune.core.client.ws.entheader.EntityHeaderPresenter;
import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.docs.client.DocsGinjector;
import cc.kune.docs.client.DocumentGinModule;
-import cc.kune.gspace.client.tags.TagsSummaryPresenter;
-import cc.kune.gspace.client.tool.ToolSelectorPresenter;
-import cc.kune.gspace.client.ui.footer.license.EntityLicensePresenter;
+import cc.kune.gspace.client.GSpaceGinModule;
+import cc.kune.gspace.client.GSpaceGinjector;
import cc.kune.pspace.client.PSpaceGinModule;
import cc.kune.pspace.client.PSpaceParts;
import cc.kune.pspace.client.PSpacePresenter;
@@ -66,8 +66,8 @@
import com.gwtplatform.mvp.client.proxy.ProxyFailureHandler;
@GinModules({ KuneGinModule.class, CoreGinModule.class, ChatGinModule.class, WaveGinModule.class,
- PSpaceGinModule.class, DocumentGinModule.class })
-public interface KuneGinjector extends Ginjector {
+ PSpaceGinModule.class, GSpaceGinModule.class, DocumentGinModule.class })
+public interface KuneGinjector extends Ginjector, GSpaceGinjector, DocsGinjector {
/*
* You have to add here all the GWTPresenters (as Provider or AsyncProvider)
@@ -88,8 +88,6 @@
AsyncProvider<EntityHeaderPresenter> getEntityHeaderPresenter();
- AsyncProvider<EntityLicensePresenter> getEntityLicensePresenter();
-
ErrorHandler getErrorHandler();
EventBus getEventBus();
@@ -134,12 +132,8 @@
StateManager getStateManager();
- AsyncProvider<TagsSummaryPresenter> getTagsSummaryPresenter();
-
TokenMatcher getTokenMatcher();
- AsyncProvider<ToolSelectorPresenter> getToolSelectorPresenter();
-
AsyncProvider<UserConfirmPresenter> getUserConfirmPresenter();
AsyncProvider<UserNotifierPresenter> getUserNotifierPresenter();
Modified: trunk/src/main/java/cc/kune/common/client/SampleEntryPoint.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/SampleEntryPoint.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/common/client/SampleEntryPoint.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -132,7 +132,7 @@
menuItem2, menuItem, iconLabelDescr, submenu, menuItem3, menuItem4, menu2, iconLabelNoAct, menuItem5);
final ActionFlowPanel view = new ActionFlowPanel(ginjector.getGuiProvider());
- view.addActions(actions);
+ view.addAll(actions);
final IconLabel simpleIconLabel = new IconLabel("IconLabel (no action)");
simpleIconLabel.setRightIcon("oc-testico");
Modified: trunk/src/main/java/cc/kune/common/client/actions/ui/AbstractActionExtensiblePresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/ui/AbstractActionExtensiblePresenter.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/common/client/actions/ui/AbstractActionExtensiblePresenter.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -25,18 +25,18 @@
public abstract class AbstractActionExtensiblePresenter implements IsActionExtensible {
@Override
- public abstract void addAction(final GuiActionDescrip descriptor);
+ public abstract void add(final GuiActionDescrip descriptor);
public void addActionCollection(final GuiActionDescCollection descriptors) {
for (final GuiActionDescrip descriptor : descriptors) {
- addAction(descriptor);
+ add(descriptor);
}
}
@Override
- public void addActions(final GuiActionDescrip... descriptors) {
+ public void add(final GuiActionDescrip... descriptors) {
for (final GuiActionDescrip descriptor : descriptors) {
- addAction(descriptor);
+ add(descriptor);
}
}
Modified: trunk/src/main/java/cc/kune/common/client/actions/ui/AbstractComposedGuiItem.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/ui/AbstractComposedGuiItem.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/common/client/actions/ui/AbstractComposedGuiItem.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -40,42 +40,36 @@
public void add(final GuiActionDescCollection descriptors) {
for (final GuiActionDescrip descriptor : descriptors) {
- addAction(descriptor);
+ add(descriptor);
}
}
+ @Override
public void add(final GuiActionDescrip... descriptors) {
for (final GuiActionDescrip descriptor : descriptors) {
- addAction(descriptor);
+ add(descriptor);
}
}
@Override
- public void addAction(final GuiActionDescrip descriptor) {
+ public void add(final GuiActionDescrip descriptor) {
getGuiItems().add(descriptor);
beforeAddWidget(descriptor);
}
- @Override
- public void addActions(final GuiActionDescCollection descriptors) {
+ public void addActions(final List<GuiActionDescrip> descriptors) {
for (final GuiActionDescrip descriptor : descriptors) {
- addAction(descriptor);
+ add(descriptor);
}
}
@Override
- public void addActions(final GuiActionDescrip... descriptors) {
+ public void addAll(final GuiActionDescCollection descriptors) {
for (final GuiActionDescrip descriptor : descriptors) {
- addAction(descriptor);
+ add(descriptor);
}
}
- public void addActions(final List<GuiActionDescrip> descriptors) {
- for (final GuiActionDescrip descriptor : descriptors) {
- addAction(descriptor);
- }
- }
-
protected abstract void addWidget(AbstractGuiItem item);
protected void beforeAddWidget(final GuiActionDescrip descrip) {
Modified: trunk/src/main/java/cc/kune/common/client/actions/ui/ActionExtensibleView.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/ui/ActionExtensibleView.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/common/client/actions/ui/ActionExtensibleView.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -25,6 +25,6 @@
public interface ActionExtensibleView extends IsWidget {
- void addAction(GuiActionDescrip descriptor);
+ void add(GuiActionDescrip descriptor);
}
Modified: trunk/src/main/java/cc/kune/common/client/actions/ui/IsActionExtensible.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/ui/IsActionExtensible.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/common/client/actions/ui/IsActionExtensible.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -30,7 +30,7 @@
* @param action
* the action
*/
- void addAction(GuiActionDescrip action);
+ void add(GuiActionDescrip action);
/**
* Adds some action descriptions
@@ -38,7 +38,7 @@
* @param actions
* the actions
*/
- void addActions(GuiActionDescCollection actions);
+ void addAll(GuiActionDescCollection actions);
/**
* Adds some action descriptions
@@ -46,6 +46,6 @@
* @param action
* the action
*/
- void addActions(GuiActionDescrip... actions);
+ void add(GuiActionDescrip... actions);
}
Modified: trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/AbstractGuiActionDescrip.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/AbstractGuiActionDescrip.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/AbstractGuiActionDescrip.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -26,6 +26,7 @@
import cc.kune.common.client.actions.Action;
import cc.kune.common.client.actions.ActionEvent;
import cc.kune.common.client.actions.ChangeableObject;
+import cc.kune.gspace.client.actions.perspective.ActionPerspective;
/**
* The Class AbstractUIActionDescriptor.
@@ -51,7 +52,7 @@
/**
* Instantiates a new abstract ui action descriptor. This is used for
* describe UI button, menus, menu items and so on
- *
+ *
* @param action
* the action
*/
@@ -87,7 +88,7 @@
/**
* Gets the location, a string used to group actions with locations (top
* bar, bottom bar, user bar...).
- *
+ *
* @return the location
*/
@Override
@@ -102,7 +103,7 @@
/**
* Gets the position.
- *
+ *
* @return the position
*/
@Override
@@ -142,6 +143,11 @@
}
@Override
+ public void in(Class<? extends ActionPerspective> clazz) {
+ putValue(ActionPerspective.KEY, clazz);
+ }
+
+ @Override
public boolean isEnabled() {
return (Boolean) getValue(Action.ENABLED);
}
@@ -176,7 +182,7 @@
* If we have several toolbars, we can group with the "location" string key
* actions that must be in the same location (ex: top bar, bottom bar, and
* so on).
- *
+ *
* @param location
* the new location
*/
@@ -193,7 +199,7 @@
/**
* Sets the position (where the UI element will be positioned, for instance
* in a toolbar or in a menu).
- *
+ *
* @param position
* the new position
*/
Modified: trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/ButtonDescriptor.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/ButtonDescriptor.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/ButtonDescriptor.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -20,6 +20,7 @@
package cc.kune.common.client.actions.ui.descrip;
import cc.kune.common.client.actions.AbstractAction;
+import cc.kune.common.client.actions.Action;
public class ButtonDescriptor extends AbstractGuiActionDescrip {
@@ -27,6 +28,11 @@
super(action);
}
+ public ButtonDescriptor(final String text, final AbstractAction action) {
+ this(action);
+ putValue(Action.NAME, text);
+ }
+
@Override
public Class<?> getType() {
return ButtonDescriptor.class;
Modified: trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescrip.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescrip.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/common/client/actions/ui/descrip/GuiActionDescrip.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -3,6 +3,7 @@
import cc.kune.common.client.actions.AbstractAction;
import cc.kune.common.client.actions.ActionEvent;
import cc.kune.common.client.actions.PropertyChangeListener;
+import cc.kune.gspace.client.actions.perspective.ActionPerspective;
public interface GuiActionDescrip {
@@ -47,6 +48,8 @@
boolean hasTarget();
+ void in(Class<? extends ActionPerspective> clazz);
+
boolean isChild();
boolean isEnabled();
Modified: trunk/src/main/java/cc/kune/common/client/tooltip/Tooltip.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/tooltip/Tooltip.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/common/client/tooltip/Tooltip.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -161,7 +161,7 @@
ofWidget.addDomHandler(new FocusHandler() {
@Override
public void onFocus(final FocusEvent event) {
- // timers.onOver();
+ timers.onOut();
}
}, FocusEvent.getType());
ofWidget.addDomHandler(new BlurHandler() {
Modified: trunk/src/main/java/cc/kune/common/client/ui/MaskWidget.ui.xml
===================================================================
--- trunk/src/main/java/cc/kune/common/client/ui/MaskWidget.ui.xml 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/common/client/ui/MaskWidget.ui.xml 2011-04-17 19:25:13 UTC (rev 1314)
@@ -4,43 +4,43 @@
<ui:with field='img' type='cc.kune.core.client.resources.CoreResources' />
<ui:style>
.main {
-
+
}
-
+
.flow {
- position: absolute;
- /* left: 40%;
- top: 40%;
- height: auto; */
- border: solid 1px #ccc;
- -moz-border-radius: 10px;
- -webkit-border-radius: 10px;
- border-radius: 10px;
- background-color: white;
- padding: 3px;
+ position: absolute;
+ /* left: 40%;
+ top: 40%;
+ height: auto; */
+ border: solid 1px #ccc;
+ -moz-border-radius: 10px;
+ -webkit-border-radius: 10px;
+ border-radius: 10px;
+ background-color: white;
+ padding: 3px;
}
-
+
.icon {
- width: 35px;
- height: 35px;
- margin-right: 3px;
- float: left;
- vertical-align: top;
+ width: 35px;
+ height: 35px;
+ margin-right: 3px;
+ float: left;
+ vertical-align: top;
}
-
+
.label {
- float: left;
- font-size: 16px;
- color: #808080;
- line-height: 1.9em;
- padding: 0 5px 0 1px;
+ float: left;
+ font-size: 16px;
+ color: #808080;
+ line-height: 1.9em;
+ padding: 0 5px 0 1px;
}
</ui:style>
<g:SimplePanel ui:field="mainPanel" styleName='{style.main}'>
<g:FlowPanel ui:field="flow" styleName='{style.flow}'>
<g:Image ui:field="icon" styleName='{style.icon}'
- resource="{img.kuneAnimGray}" />
+ resource="{img.kuneAnimG}" />
<g:Label ui:field="label" styleName='{style.label}' />
</g:FlowPanel>
</g:SimplePanel>
-</ui:UiBinder>
\ No newline at end of file
+</ui:UiBinder>
\ No newline at end of file
Modified: trunk/src/main/java/cc/kune/core/client/CoreGinModule.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/CoreGinModule.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/core/client/CoreGinModule.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -103,9 +103,6 @@
import cc.kune.gspace.client.WsArmorImpl;
import cc.kune.gspace.client.tags.TagsSummaryPanel;
import cc.kune.gspace.client.tags.TagsSummaryPresenter;
-import cc.kune.gspace.client.tool.ToolSelector;
-import cc.kune.gspace.client.tool.ToolSelectorPanel;
-import cc.kune.gspace.client.tool.ToolSelectorPresenter;
import cc.kune.gspace.client.ui.footer.license.EntityLicensePanel;
import cc.kune.gspace.client.ui.footer.license.EntityLicensePresenter;
import cc.kune.msgs.client.UserMessagesPanel;
@@ -168,9 +165,6 @@
UserConfirmPresenter.UserConfirmProxy.class);
bindPresenter(TagsSummaryPresenter.class, TagsSummaryPresenter.TagsSummaryView.class, TagsSummaryPanel.class,
TagsSummaryPresenter.TagsSummaryProxy.class);
- bindPresenter(ToolSelectorPresenter.class, ToolSelectorPresenter.ToolSelectorView.class,
- ToolSelectorPanel.class, ToolSelectorPresenter.ToolSelectorProxy.class);
- bind(ToolSelector.class).to(ToolSelectorPresenter.class).in(Singleton.class);
bind(UserPassAutocompleteManager.class).to(UserPassAutocompleteManagerImpl.class).in(Singleton.class);
bind(SignIn.class).to(SignInPresenter.class).in(Singleton.class);
Modified: trunk/src/main/java/cc/kune/core/client/CoreParts.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/CoreParts.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/core/client/CoreParts.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -8,9 +8,6 @@
import cc.kune.core.client.sn.actions.registry.GroupSNConfActions;
import cc.kune.core.client.sn.actions.registry.UserSNConfActions;
import cc.kune.core.client.state.Session;
-import cc.kune.gspace.client.tags.TagsSummaryPresenter;
-import cc.kune.gspace.client.tool.ToolSelector;
-import cc.kune.gspace.client.ui.footer.license.EntityLicensePresenter;
import com.google.inject.Inject;
import com.google.inject.Provider;
@@ -21,9 +18,7 @@
public CoreParts(final Session session, final Provider<GroupSNPresenter> groupMembersPresenter,
final Provider<UserSNPresenter> buddiesAndParticipationPresenter,
final Provider<GroupSNConfActions> groupMembersConfActions,
- final Provider<UserSNConfActions> userSNConfActions, final Provider<SiteUserOptionsPresenter> userOptions,
- final Provider<EntityLicensePresenter> licenseFooter, final Provider<TagsSummaryPresenter> tagsPresenter,
- final Provider<ToolSelector> toolSelector) {
+ final Provider<UserSNConfActions> userSNConfActions, final Provider<SiteUserOptionsPresenter> userOptions) {
session.onAppStart(true, new AppStartHandler() {
@Override
public void onAppStart(final AppStartEvent event) {
@@ -32,9 +27,6 @@
groupMembersPresenter.get();
buddiesAndParticipationPresenter.get();
userOptions.get();
- licenseFooter.get();
- tagsPresenter.get();
- toolSelector.get();
}
});
}
Modified: trunk/src/main/java/cc/kune/core/client/actions/ActionRegistryByType.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/actions/ActionRegistryByType.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/core/client/actions/ActionRegistryByType.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -2,11 +2,14 @@
import java.util.HashMap;
+import javax.annotation.Nullable;
+
import cc.kune.common.client.actions.AbstractAction;
import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
import cc.kune.common.client.actions.ui.descrip.GuiActionDescProviderCollection;
import cc.kune.common.client.actions.ui.descrip.GuiActionDescrip;
import cc.kune.core.shared.domain.utils.AccessRights;
+import cc.kune.gspace.client.actions.perspective.ActionPerspective;
import com.google.inject.Provider;
@@ -49,19 +52,39 @@
return actionColl;
}
+ public GuiActionDescCollection getCurrentActions(final Object targetItem, final boolean isLogged,
+ final AccessRights rights) {
+ return getCurrentActions(targetItem, GENERIC, isLogged, rights, null);
+ }
+
+ public GuiActionDescCollection getCurrentActions(final Object targetItem, final boolean isLogged,
+ final AccessRights rights, @Nullable final Class<?> clazz) {
+ return getCurrentActions(targetItem, GENERIC, isLogged, rights, clazz);
+ }
+
public GuiActionDescCollection getCurrentActions(final Object targetItem, final String typeId,
final boolean isLogged, final AccessRights rights) {
+ return getCurrentActions(targetItem, typeId, isLogged, rights, null);
+ }
+
+ public GuiActionDescCollection getCurrentActions(final Object targetItem, final String typeId,
+ final boolean isLogged, final AccessRights rights, @Nullable final Class<?> clazz) {
final GuiActionDescCollection collection = new GuiActionDescCollection();
-
for (final Provider<GuiActionDescrip> descripProv : getActions(typeId)) {
final GuiActionDescrip descrip = descripProv.get();
final AbstractAction action = descrip.getAction();
- if (action instanceof RolAction) {
- if (mustAdd((RolAction) action, isLogged, rights)) {
+ final Object perspective = descrip.getValue(ActionPerspective.KEY);
+ if (clazz != null && clazz != perspective) {
+ // Not this perspective, then don't add this action
+ } else {
+ // Any perspective it's ok (==null) or same perspective -> add
+ if (action instanceof RolAction) {
+ if (mustAdd((RolAction) action, isLogged, rights)) {
+ add(collection, descrip, targetItem);
+ }
+ } else {
add(collection, descrip, targetItem);
}
- } else {
- add(collection, descrip, targetItem);
}
}
return collection;
Modified: trunk/src/main/java/cc/kune/core/client/cnt/FoldableContentPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/cnt/FoldableContentPanel.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/core/client/cnt/FoldableContentPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -19,53 +19,30 @@
*/
package cc.kune.core.client.cnt;
-import org.waveprotocol.box.webclient.client.RemoteViewServiceMultiplexer;
-import org.waveprotocol.box.webclient.client.SimpleWaveStore;
-import org.waveprotocol.box.webclient.client.StagesProvider;
-import org.waveprotocol.box.webclient.search.WaveStore;
-import org.waveprotocol.box.webclient.widget.frame.FramedPanel;
-import org.waveprotocol.box.webclient.widget.loading.LoadingIndicator;
-import org.waveprotocol.wave.client.account.ProfileManager;
-import org.waveprotocol.wave.client.widget.common.ImplPanel;
-import org.waveprotocol.wave.model.id.IdGenerator;
import org.waveprotocol.wave.model.waveref.WaveRef;
-import cc.kune.common.client.log.Log;
import cc.kune.common.client.ui.IconLabel;
import cc.kune.core.client.resources.CoreResources;
import cc.kune.core.shared.i18n.I18nTranslationService;
import cc.kune.gspace.client.WsArmor;
import cc.kune.wave.client.WaveClientManager;
-import cc.kune.wave.client.WebClient;
-import com.google.gwt.dom.client.Document;
-import com.google.gwt.dom.client.Element;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
-import com.google.gwt.user.client.Command;
import com.google.gwt.user.client.ui.FlowPanel;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.Image;
import com.google.gwt.user.client.ui.Label;
-import com.google.gwt.user.client.ui.UIObject;
import com.google.gwt.user.client.ui.VerticalPanel;
import com.google.gwt.user.client.ui.Widget;
+@Deprecated
public abstract class FoldableContentPanel extends AbstractContentPanel implements AbstractContentView {
private static final String DEF_CONTENT_MARGINS_STYLE = "kune-Margin-7-trbl";
- private final RemoteViewServiceMultiplexer channel;
private final I18nTranslationService i18n;
- private final IdGenerator idGenerator;
- private final Element loading = new LoadingIndicator().getElement();
private final IconLabel messageLabel;
private final FlowPanel messagePanel;
- private final ProfileManager profiles;
- /** The wave panel, if a wave is open. */
- private StagesProvider wave;
- private final FramedPanel waveFrame;
- private final ImplPanel waveHolder;
- private final WaveStore waveStore = new SimpleWaveStore();
public FoldableContentPanel(final WsArmor ws, final I18nTranslationService i18n, final CoreResources res,
final WaveClientManager waveClientManager) {
@@ -78,13 +55,6 @@
messagePanel.add(messageLabel);
messagePanel.addStyleName("k-preview-msg");
messagePanel.addStyleName("kune-Margin-7-b");
- waveFrame = new FramedPanel();
- waveHolder = new ImplPanel("");
- waveFrame.add(waveHolder);
- final WebClient webClient = waveClientManager.getWebClient();
- channel = webClient.getChannel();
- profiles = webClient.getProfiles();
- idGenerator = webClient.getIdGenerator();
}
private VerticalPanel createMessageVp(final boolean showMsg) {
@@ -119,8 +89,7 @@
}
@Override
- public void setInfo(final String info) {
- setLabel(info);
+ public void setEditableWaveContent(final WaveRef waveRef, final boolean isNewWave) {
}
// public void setWave(final String waveId, final Listener0 onLoaded) {
@@ -141,6 +110,11 @@
// }
@Override
+ public void setInfo(final String info) {
+ setLabel(info);
+ }
+
+ @Override
public void setInfoMessage(final String text) {
final VerticalPanel vp = createMessageVp(true);
messageLabel.setText(text);
@@ -172,31 +146,6 @@
}
@Override
- public void setEditableWaveContent(final WaveRef waveRef, final boolean isNewWave) {
- Log.info("FCPanel.setWave()");
-
- if (wave != null) {
- wave.destroy();
- wave = null;
- }
-
- // Release the display:none.
- UIObject.setVisible(waveFrame.getElement(), true);
- waveHolder.getElement().appendChild(loading);
- final Element holder = waveHolder.getElement().appendChild(Document.get().createDivElement());
- final StagesProvider wave = new StagesProvider(holder, waveHolder, waveRef, channel, idGenerator, profiles,
- waveStore, isNewWave);
- this.wave = wave;
- wave.load(new Command() {
- @Override
- public void execute() {
- loading.removeFromParent();
- }
- });
- setWidgetAsContent(waveFrame, false);
- }
-
- @Override
public void setWidgetAsContent(final Widget widget, final boolean setDefMargins) {
if (setDefMargins) {
widget.addStyleName(DEF_CONTENT_MARGINS_STYLE);
Modified: trunk/src/main/java/cc/kune/core/client/cnt/FoldableContentPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/cnt/FoldableContentPresenter.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/core/client/cnt/FoldableContentPresenter.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -146,7 +146,7 @@
private void setToolbar(final GuiActionDescCollection collection) {
// toolbar.disableMenusAndClearButtons();
- toolbar.addActions(collection);
+ toolbar.addAll(collection);
toolbar.attach();
}
Modified: trunk/src/main/java/cc/kune/core/client/notify/spiner/SpinerViewImpl.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/notify/spiner/SpinerViewImpl.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/core/client/notify/spiner/SpinerViewImpl.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -58,7 +58,7 @@
widget = uiBinder.createAndBindUi(this);
popup = new PopupPanel(false, false);
popup.add(widget);
- popup.setPopupPosition(200, 0);
+ popup.setPopupPosition(190, 0);
popup.setStyleName("k-spiner-popup");
popup.show();
}
Modified: trunk/src/main/java/cc/kune/core/client/resources/CoreResources.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/resources/CoreResources.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/core/client/resources/CoreResources.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -43,6 +43,9 @@
@Source("anybody.png")
ImageResource anybody();
+ @Source("arrowdown.png")
+ ImageResource arrowdown();
+
@Source("arrow-down-black.gif")
ImageResource arrowDownBlack();
@@ -50,8 +53,11 @@
ImageResource arrowDownGreen();
@Source("arrowdownsitebar.gif")
- ImageResource arrowDownSitebar();
+ ImageResource arrowdownsitebar();
+ @Source("arrowdownsquarewhite.gif")
+ ImageResource arrowdownsquarewhite();
+
@Source("arrow-down-white.gif")
ImageResource arrowDownWhite();
@@ -142,9 +148,6 @@
@Source("button15rblue.png")
ImageResource button15rblue();
- @Source("wave-icon.png")
- ImageResource waveIcon();
-
@Source("button15rdark.png")
ImageResource button15rdark();
@@ -238,9 +241,6 @@
@Source("button-help-light.png")
ImageResource buttonHelpLight();
- @Source("arrowdown.gif")
- ImageResource buttonSitebarArrowDown();
-
@Source("by80x15.png")
ImageResource by80x15();
@@ -265,9 +265,15 @@
@Source("cancel-32.png")
ImageResource cancel32();
+ @Source("charfontname.png")
+ ImageResource charfontname();
+
@Source("clear.png")
ImageResource clear();
+ @Source("content_edit.png")
+ ImageResource contentEdit();
+
@Source("copyleft.png")
ImageResource copyleft();
@@ -289,21 +295,27 @@
@Source("emblem-system.png")
ImageResource emblemSystem();
+ @Source("emite-room.png")
+ ImageResource emiteRoom();
+
@Source("error.png")
ImageResource error();
@Source("everybody.png")
ImageResource everybody();
+ @Source("folder-go-up.gif")
+ ImageResource folderGoUp();
+
+ @Source("folderpathmenu.gif")
+ ImageResource folderpathmenu();
+
+ @Source("fontheight.png")
+ ImageResource fontheight();
+
@Source("fullscreen.png")
ImageResource fullscreen();
- @Source("loading_gadget.gif")
- ImageResource gadgetLoading();
-
- @Source("loading_gadget_small.gif")
- ImageResource gadgetLoadingSmall();
-
@Source("gnu-fdl.gif")
ImageResource gnuFdl();
@@ -329,7 +341,7 @@
ImageResource kuneAnim();
@Source("kune-anim-g.gif")
- ImageResource kuneAnimGray();
+ ImageResource kuneAnimG();
@Source("kune-close.png")
ImageResource kuneClose();
@@ -340,6 +352,9 @@
@Source("kune-help-translation-icon.png")
ImageResource kuneHelpTranslationIcon();
+ @Source("kuneicon16.gif")
+ ImageResource kuneicon16();
+
@Source("kune-icon16.png")
ImageResource kuneIcon16();
@@ -358,6 +373,12 @@
@Source("language.png")
ImageResource language();
+ @Source("loading_gadget.gif")
+ ImageResource loadingGadget();
+
+ @Source("loading_gadget_small.gif")
+ ImageResource loadingGadgetSmall();
+
@Source("loading-spiner.gif")
ImageResource loadingSpiner();
@@ -376,12 +397,15 @@
@Source("opentriangle.gif")
ImageResource opentriangle();
- @Source("unknown-60.png")
- ImageResource personAvatarDef();
+ @Source("person2-60.png")
+ ImageResource person260();
@Source("person-def.png")
ImageResource personDef();
+ @Source("prefs.png")
+ ImageResource prefs();
+
@Source("remove.png")
ImageResource remove();
@@ -456,4 +480,11 @@
@Source("triangle.gif")
ImageResource triangle();
+
+ @Source("unknown-60.png")
+ ImageResource unknown60();
+
+ @Source("wave-icon.png")
+ ImageResource waveIcon();
+
}
Deleted: trunk/src/main/java/cc/kune/core/client/resources/arrowdown.gif
===================================================================
(Binary files differ)
Added: trunk/src/main/java/cc/kune/core/client/resources/arrowdown.png
===================================================================
(Binary files differ)
Property changes on: trunk/src/main/java/cc/kune/core/client/resources/arrowdown.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Copied: trunk/src/main/java/cc/kune/core/client/resources/arrowdownsquarewhite.gif (from rev 1306, trunk/src/main/java/cc/kune/core/client/resources/arrowdown.gif)
===================================================================
(Binary files differ)
Added: trunk/src/main/java/cc/kune/core/client/resources/charfontname.png
===================================================================
(Binary files differ)
Property changes on: trunk/src/main/java/cc/kune/core/client/resources/charfontname.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/src/main/java/cc/kune/core/client/resources/content_edit.png
===================================================================
(Binary files differ)
Property changes on: trunk/src/main/java/cc/kune/core/client/resources/content_edit.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/src/main/java/cc/kune/core/client/resources/emite-room.png
===================================================================
(Binary files differ)
Property changes on: trunk/src/main/java/cc/kune/core/client/resources/emite-room.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/src/main/java/cc/kune/core/client/resources/folder-go-up.gif
===================================================================
(Binary files differ)
Property changes on: trunk/src/main/java/cc/kune/core/client/resources/folder-go-up.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/src/main/java/cc/kune/core/client/resources/folderpathmenu.gif
===================================================================
(Binary files differ)
Property changes on: trunk/src/main/java/cc/kune/core/client/resources/folderpathmenu.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/src/main/java/cc/kune/core/client/resources/fontheight.png
===================================================================
(Binary files differ)
Property changes on: trunk/src/main/java/cc/kune/core/client/resources/fontheight.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/src/main/java/cc/kune/core/client/resources/generateMainImageBundle.sh
===================================================================
--- trunk/src/main/java/cc/kune/core/client/resources/generateMainImageBundle.sh (rev 0)
+++ trunk/src/main/java/cc/kune/core/client/resources/generateMainImageBundle.sh 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,26 @@
+#
+# Generates methods AbstractImagePrototype with the content of the directory:
+#
+# @Resource("image")
+# AbstractImagePrototype arrowDownWhite();
+#
+
+cat << EOF
+
+import com.google.gwt.core.client.GWT;
+import com.google.gwt.user.client.ui.AbstractImagePrototype;
+import com.google.gwt.user.client.ui.ImageBundle;
+
+/**
+ *
+ * http://code.google.com/p/google-web-toolkit/wiki/ImageBundleDesign
+ *
+ */
+public interface XXXResources extends ClientBundle {
+EOF
+for i in `ls -1 *png *gif 2> /dev/null`
+do
+ echo -e "\n@Source(\"$i\")\nImageResource" \
+ `echo ·$i |cut -d '.' -f 1 | sed 's/-/ /g' | sed 's/_/ /g' | perl -ne '@a=split;foreach (@a) {push @b,ucfirst};print "@b\n"' | sed 's/ //g' | sed 's/·//g'`"();"
+done
+echo "}"
Property changes on: trunk/src/main/java/cc/kune/core/client/resources/generateMainImageBundle.sh
___________________________________________________________________
Name: svn:executable
+ *
Added: trunk/src/main/java/cc/kune/core/client/resources/kuneicon16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/src/main/java/cc/kune/core/client/resources/kuneicon16.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Copied: trunk/src/main/java/cc/kune/core/client/resources/nav (from rev 1306, trunk/src/main/java/org/ourproject/kune/platf/public/images/nav)
Copied: trunk/src/main/java/cc/kune/core/client/resources/persons (from rev 1306, trunk/src/main/java/org/ourproject/kune/platf/public/images/persons)
Added: trunk/src/main/java/cc/kune/core/client/resources/prefs.png
===================================================================
(Binary files differ)
Property changes on: trunk/src/main/java/cc/kune/core/client/resources/prefs.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Modified: trunk/src/main/java/cc/kune/core/client/services/ImageUtils.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/services/ImageUtils.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/core/client/services/ImageUtils.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -232,7 +232,7 @@
return img.buttonHelpLight();
}
case buttonSitebarArrowDown: {
- return img.buttonSitebarArrowDown();
+ return img.arrowdownsquarewhite();
}
case by80x15: {
return img.by80x15();
Modified: trunk/src/main/java/cc/kune/core/client/sitebar/SiteUserOptionsPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sitebar/SiteUserOptionsPresenter.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/core/client/sitebar/SiteUserOptionsPresenter.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -99,7 +99,7 @@
private void addActionImpl(final GuiActionDescrip descriptor) {
descriptor.setParent(LOGGED_USER_MENU);
- siteOptions.getRightToolbar().addAction(descriptor);
+ siteOptions.getRightToolbar().add(descriptor);
}
private void addPartipation(final GroupDTO group) {
@@ -110,16 +110,16 @@
participant.putValue(Action.NAME, group.getLongName());
participant.putValue(Action.SMALL_ICON, logoImageUrl);
participant.setParent(partiMenu);
- siteOptions.getRightToolbar().addAction(participant);
+ siteOptions.getRightToolbar().add(participant);
}
private void createActions() {
LOGGED_USER_MENU.setId(LOGGED_USER_MENU_ID);
LOGGED_USER_MENU.setParent(SitebarActionsPresenter.RIGHT_TOOLBAR);
LOGGED_USER_MENU.setStyles("k-no-backimage, k-btn-sitebar, k-fl");
- siteOptions.getRightToolbar().addAction(LOGGED_USER_MENU);
+ siteOptions.getRightToolbar().add(LOGGED_USER_MENU);
separator = new ToolbarSeparatorDescriptor(Type.separator, SitebarActionsPresenter.RIGHT_TOOLBAR);
- siteOptions.getRightToolbar().addAction(separator);
+ siteOptions.getRightToolbar().add(separator);
partiMenu = new SubMenuDescriptor(i18n.t("Your groups"));
addActionImpl(partiMenu);
Modified: trunk/src/main/java/cc/kune/core/client/sitebar/SitebarActionsPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sitebar/SitebarActionsPresenter.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/core/client/sitebar/SitebarActionsPresenter.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -90,6 +90,7 @@
init();
}
+ @Override
public IsActionExtensible getLeftToolbar() {
return getView().getLeftBar();
}
@@ -98,20 +99,21 @@
return OPTIONS_MENU;
}
+ @Override
public IsActionExtensible getRightToolbar() {
return getView().getRightBar();
}
private void init() {
- getView().getLeftBar().addAction(LEFT_TOOLBAR);
- getView().getRightBar().addAction(RIGHT_TOOLBAR);
+ getView().getLeftBar().add(LEFT_TOOLBAR);
+ getView().getRightBar().add(RIGHT_TOOLBAR);
}
@ProxyEvent
public void onAppStart(final AppStartEvent event) {
final IsActionExtensible right = getView().getRightBar();
OPTIONS_MENU.putValue(Action.NAME, i18n.t("Options"));
- OPTIONS_MENU.putValue(Action.SMALL_ICON, res.arrowDownSitebar());
+ OPTIONS_MENU.putValue(Action.SMALL_ICON, res.arrowdownsitebar());
OPTIONS_MENU.setParent(RIGHT_TOOLBAR);
OPTIONS_MENU.setStyles("k-no-backimage, k-btn-sitebar, k-fl");
OPTIONS_MENU.putValue(AbstractGxtMenuGui.MENU_POSITION, AbstractGxtMenuGui.MenuPosition.bl);
@@ -161,17 +163,17 @@
// aboutAction.setShortcut(shortcut);
// shortcutReg.put(shortcut, aboutAction);
- right.addAction(signInLink.get());
- right.addAction(signOutLink.get());
- right.addAction(separator2);
- right.addAction(newGroupLink.get());
- right.addAction(separator);
- right.addAction(OPTIONS_MENU);
- right.addAction(gotoKuneDevSite);
- right.addAction(reportBugs);
- right.addAction(new MenuItemDescriptor(OPTIONS_MENU, aboutAction));
- right.addAction(menuSeparator);
- right.addAction(new MenuItemDescriptor(OPTIONS_MENU, wavePowered));
+ right.add(signInLink.get());
+ right.add(signOutLink.get());
+ right.add(separator2);
+ right.add(newGroupLink.get());
+ right.add(separator);
+ right.add(OPTIONS_MENU);
+ right.add(gotoKuneDevSite);
+ right.add(reportBugs);
+ right.add(new MenuItemDescriptor(OPTIONS_MENU, aboutAction));
+ right.add(menuSeparator);
+ right.add(new MenuItemDescriptor(OPTIONS_MENU, wavePowered));
}
Modified: trunk/src/main/java/cc/kune/core/client/sn/GroupSNPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/GroupSNPresenter.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/core/client/sn/GroupSNPresenter.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -117,7 +117,7 @@
}
private void createActions() {
- getView().getBottomToolbar().addActions(actionsRegistry);
+ getView().getBottomToolbar().addAll(actionsRegistry);
}
@Override
Modified: trunk/src/main/java/cc/kune/core/client/sn/UserSNPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/UserSNPresenter.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/core/client/sn/UserSNPresenter.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -108,7 +108,7 @@
}
private void createActions() {
- getView().getBottomToolbar().addActions(confActionsRegistry);
+ getView().getBottomToolbar().addAll(confActionsRegistry);
}
@Override
Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/registry/GroupSNConfActions.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/actions/registry/GroupSNConfActions.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/core/client/sn/actions/registry/GroupSNConfActions.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -39,7 +39,7 @@
final Provider<MembersModerationMenuItem> membersModeration, final CoreResources res,
final IsLoggedCondition isLoggedCondition, final JoinGroupAction joinGroupAction,
final IsGroupCondition isGroupCondition, final UnJoinGroupAction unJoinGroupAction) {
- OPTIONS_MENU.withToolTip(i18n.t("Options")).withIcon(res.arrowDownSitebar()).withStyles(
+ OPTIONS_MENU.withToolTip(i18n.t("Options")).withIcon(res.arrowdownsitebar()).withStyles(
"k-sn-options-menu, k-noborder, k-nobackcolor");
final GuiActionDescrip optionsTitle = new MenuTitleItemDescriptor(i18n.t("Options")).withParent(OPTIONS_MENU);
final MenuRadioItemDescriptor anyoneItem = membersVisibility.get().withVisibility(
Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/registry/UserSNConfActions.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/actions/registry/UserSNConfActions.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/core/client/sn/actions/registry/UserSNConfActions.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -29,7 +29,7 @@
public UserSNConfActions(final Session session, final StateManager stateManager, final I18nTranslationService i18n,
final Provider<UserSNVisibilityMenuItem> userBuddiesVisibility, final CoreResources res,
final IsGroupCondition isGroupCondition, final AddNewBuddiesAction addNewBuddiesAction) {
- OPTIONS_MENU.withToolTip(i18n.t("Options")).withIcon(res.arrowDownSitebar()).withStyles(
+ OPTIONS_MENU.withToolTip(i18n.t("Options")).withIcon(res.arrowdownsitebar()).withStyles(
"k-sn-options-menu, k-noborder, k-nobackcolor");
final MenuRadioItemDescriptor anyoneItem = userBuddiesVisibility.get().withVisibility(UserSNetVisibility.anyone);
final MenuRadioItemDescriptor onlyYourBuddiesItem = userBuddiesVisibility.get().withVisibility(
Modified: trunk/src/main/java/cc/kune/core/client/ws/CoreViewImpl.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/ws/CoreViewImpl.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/core/client/ws/CoreViewImpl.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -44,7 +44,7 @@
* the body
*/
@Inject
- public CoreViewImpl(final WsArmorImpl armor, StateManagerDefault stateManager) {
+ public CoreViewImpl(final WsArmorImpl armor, final StateManagerDefault stateManager) {
this.armor = armor;
GWT.<CoreResources> create(CoreResources.class).css().ensureInjected();
GWT.<WsArmorResources> create(WsArmorResources.class).style().ensureInjected();
Modified: trunk/src/main/java/cc/kune/core/client/ws/entheader/EntityHeaderPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/ws/entheader/EntityHeaderPanel.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/core/client/ws/entheader/EntityHeaderPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -147,6 +147,6 @@
@Override
public void showDefUserLogo() {
- entityTextLogo.setLogoImage(AbstractImagePrototype.create(images.personAvatarDef()));
+ entityTextLogo.setLogoImage(AbstractImagePrototype.create(images.unknown60()));
}
}
Added: trunk/src/main/java/cc/kune/core/shared/dto/HasContent.java
===================================================================
--- trunk/src/main/java/cc/kune/core/shared/dto/HasContent.java (rev 0)
+++ trunk/src/main/java/cc/kune/core/shared/dto/HasContent.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,7 @@
+package cc.kune.core.shared.dto;
+
+public interface HasContent {
+ String getTypeId();
+
+ void setTypeId(String typeId);
+}
Modified: trunk/src/main/java/cc/kune/core/shared/dto/StateContainerDTO.java
===================================================================
--- trunk/src/main/java/cc/kune/core/shared/dto/StateContainerDTO.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/core/shared/dto/StateContainerDTO.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -24,17 +24,17 @@
import com.google.gwt.user.client.rpc.IsSerializable;
-public class StateContainerDTO extends StateAbstractDTO implements IsSerializable {
+public class StateContainerDTO extends StateAbstractDTO implements IsSerializable, HasContent {
- private I18nLanguageDTO language;
- private String typeId;
- private String toolName;
+ private AccessListsDTO accessLists;
private ContainerDTO container;
- private ContainerDTO rootContainer;
private AccessRights containerRights;
+ private I18nLanguageDTO language;
private LicenseDTO license;
+ private ContainerDTO rootContainer;
private TagCloudResult tagCloudResult;
- private AccessListsDTO accessLists;
+ private String toolName;
+ private String typeId;
public StateContainerDTO() {
}
@@ -71,6 +71,7 @@
return toolName;
}
+ @Override
public String getTypeId() {
return typeId;
}
@@ -111,6 +112,7 @@
this.toolName = toolName;
}
+ @Override
public void setTypeId(final String typeId) {
this.typeId = typeId;
}
Modified: trunk/src/main/java/cc/kune/core/shared/dto/StateContentDTO.java
===================================================================
--- trunk/src/main/java/cc/kune/core/shared/dto/StateContentDTO.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/core/shared/dto/StateContentDTO.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -28,7 +28,7 @@
import com.google.gwt.user.client.rpc.IsSerializable;
-public class StateContentDTO extends StateContainerDTO implements IsSerializable {
+public class StateContentDTO extends StateContainerDTO implements IsSerializable, HasContent {
private List<UserSimpleDTO> authors;
private String content;
Modified: trunk/src/main/java/cc/kune/docs/client/AbstractFoldableContentActions.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/AbstractFoldableContentActions.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/docs/client/AbstractFoldableContentActions.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -19,54 +19,25 @@
*/
package cc.kune.docs.client;
-import cc.kune.common.client.actions.ui.descrip.ToolbarDescriptor;
-import cc.kune.common.client.utils.SchedulerManager;
-import cc.kune.core.client.cnt.FoldableContent;
-import cc.kune.core.client.errors.ErrorHandler;
import cc.kune.core.client.i18n.I18nUITranslationService;
import cc.kune.core.client.init.AppStartEvent;
import cc.kune.core.client.init.AppStartEvent.AppStartHandler;
-import cc.kune.core.client.rpcservices.ContentServiceAsync;
-import cc.kune.core.client.rpcservices.GroupServiceAsync;
-import cc.kune.core.client.services.FileDownloadUtils;
import cc.kune.core.client.state.Session;
import cc.kune.core.client.state.StateManager;
-import com.google.inject.Provider;
-
public abstract class AbstractFoldableContentActions {
- public static final ToolbarDescriptor CONTENT_BOTTOMBAR = new ToolbarDescriptor();
- public static final ToolbarDescriptor CONTENT_TOPBAR = new ToolbarDescriptor();
- public static final ToolbarDescriptor CONTEXT_BOTTOMBAR = new ToolbarDescriptor();
- public static final ToolbarDescriptor CONTEXT_TOPBAR = new ToolbarDescriptor();
-
private static final String PUBLICATION_MENU = "Publication";
- protected final Provider<ContentServiceAsync> contentServiceProvider;
- protected final SchedulerManager deferredCommandWrapper;
- protected final ErrorHandler errorHandler;
- protected final Provider<FileDownloadUtils> fileDownloadProvider;
- protected final FoldableContent foldableContent;
- protected final Provider<GroupServiceAsync> groupServiceProvider;
protected final I18nUITranslationService i18n;
protected final Session session;
protected final StateManager stateManager;
public AbstractFoldableContentActions(final Session session, final StateManager stateManager,
- final I18nUITranslationService i18n, final ErrorHandler errorHandler,
- final SchedulerManager deferredCommandWrapper, final Provider<GroupServiceAsync> groupServiceProvider,
- final Provider<ContentServiceAsync> contentServiceProvider,
- final Provider<FileDownloadUtils> fileDownloadProvider, final FoldableContent foldableContent) {
+ final I18nUITranslationService i18n) {
this.session = session;
this.stateManager = stateManager;
this.i18n = i18n;
- this.errorHandler = errorHandler;
- this.deferredCommandWrapper = deferredCommandWrapper;
- this.groupServiceProvider = groupServiceProvider;
- this.contentServiceProvider = contentServiceProvider;
- this.fileDownloadProvider = fileDownloadProvider;
- this.foldableContent = foldableContent;
createActions();
session.onAppStart(true, new AppStartHandler() {
@Override
Added: trunk/src/main/java/cc/kune/docs/client/DocsGinjector.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocsGinjector.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/DocsGinjector.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,12 @@
+package cc.kune.docs.client;
+
+import com.google.gwt.inject.client.AsyncProvider;
+import com.google.gwt.inject.client.Ginjector;
+
+public interface DocsGinjector extends Ginjector {
+
+ DocsParts getDocsParts();
+
+ AsyncProvider<DocsViewerPresenter> getDocsViewerPresenter();
+
+}
Added: trunk/src/main/java/cc/kune/docs/client/DocsGoUpBtn.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocsGoUpBtn.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/DocsGoUpBtn.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,32 @@
+package cc.kune.docs.client;
+
+import cc.kune.common.client.actions.AbstractExtendedAction;
+import cc.kune.common.client.actions.ActionEvent;
+import cc.kune.common.client.actions.ui.descrip.ButtonDescriptor;
+import cc.kune.core.client.resources.CoreResources;
+import cc.kune.core.shared.i18n.I18nTranslationService;
+import cc.kune.gspace.client.actions.perspective.ViewPerspective;
+
+import com.google.inject.Inject;
+
+public class DocsGoUpBtn extends ButtonDescriptor {
+
+ public class DocNewAction extends AbstractExtendedAction {
+
+ public DocNewAction() {
+ }
+
+ @Override
+ public void actionPerformed(final ActionEvent event) {
+ }
+
+ }
+
+ @Inject
+ public DocsGoUpBtn(final I18nTranslationService i18n, final DocNewAction action, final CoreResources res) {
+ super(action);
+ this.withToolTip(i18n.t("Go up: Open the container folder")).withIcon(res.folderGoUp()).in(
+ ViewPerspective.class);
+ }
+
+}
Added: trunk/src/main/java/cc/kune/docs/client/DocsParts.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocsParts.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/DocsParts.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,14 @@
+package cc.kune.docs.client;
+
+import cc.kune.core.client.state.Session;
+
+import com.google.inject.Inject;
+import com.google.inject.Provider;
+
+public class DocsParts {
+
+ @Inject
+ public DocsParts(final Session session, final Provider<DocsViewerPresenter> docsViewer) {
+ docsViewer.get();
+ }
+}
\ No newline at end of file
Added: trunk/src/main/java/cc/kune/docs/client/DocsViewerPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocsViewerPanel.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/DocsViewerPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,156 @@
+package cc.kune.docs.client;
+
+import org.waveprotocol.box.webclient.client.ClientIdGenerator;
+import org.waveprotocol.box.webclient.client.RemoteViewServiceMultiplexer;
+import org.waveprotocol.box.webclient.client.Session;
+import org.waveprotocol.box.webclient.client.SimpleWaveStore;
+import org.waveprotocol.box.webclient.client.StagesProvider;
+import org.waveprotocol.box.webclient.client.WaveWebSocketClient;
+import org.waveprotocol.box.webclient.search.WaveStore;
+import org.waveprotocol.box.webclient.widget.loading.LoadingIndicator;
+import org.waveprotocol.wave.client.account.ProfileManager;
+import org.waveprotocol.wave.client.account.impl.ProfileManagerImpl;
+import org.waveprotocol.wave.client.widget.common.ImplPanel;
+import org.waveprotocol.wave.model.id.IdGenerator;
+import org.waveprotocol.wave.model.wave.ParticipantId;
+import org.waveprotocol.wave.model.waveref.InvalidWaveRefException;
+import org.waveprotocol.wave.model.waveref.WaveRef;
+import org.waveprotocol.wave.util.escapers.GwtWaverefEncoder;
+
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
+import cc.kune.common.client.errors.UIException;
+import cc.kune.core.shared.dto.StateContentDTO;
+import cc.kune.docs.client.DocsViewerPresenter.DocsViewerView;
+import cc.kune.gspace.client.WsArmor;
+import cc.kune.wave.client.WaveClientManager;
+import cc.kune.wave.client.WebClient;
+
+import com.google.gwt.core.client.GWT;
+import com.google.gwt.dom.client.Document;
+import com.google.gwt.dom.client.Element;
+import com.google.gwt.safehtml.shared.SafeHtmlUtils;
+import com.google.gwt.uibinder.client.UiBinder;
+import com.google.gwt.uibinder.client.UiField;
+import com.google.gwt.user.client.Command;
+import com.google.gwt.user.client.ui.DeckPanel;
+import com.google.gwt.user.client.ui.InlineHTML;
+import com.google.gwt.user.client.ui.InsertPanel.ForIsWidget;
+import com.google.gwt.user.client.ui.Label;
+import com.google.gwt.user.client.ui.Widget;
+import com.google.inject.Inject;
+import com.gwtplatform.mvp.client.ViewImpl;
+
+public class DocsViewerPanel extends ViewImpl implements DocsViewerView {
+ interface DocsViewerPanelUiBinder extends UiBinder<Widget, DocsViewerPanel> {
+ }
+
+ private static DocsViewerPanelUiBinder uiBinder = GWT.create(DocsViewerPanelUiBinder.class);
+
+ private RemoteViewServiceMultiplexer channel;
+ @UiField
+ DeckPanel deck;
+ private IdGenerator idGenerator;
+ private final Element loading = new LoadingIndicator().getElement();
+ @UiField
+ InlineHTML onlyViewPanel;
+ private ProfileManager profiles;
+ /** The wave panel, if a wave is open. */
+ private StagesProvider wave;
+ private final WaveClientManager waveClientManager;
+ // @UiField
+ // FramedPanel waveFrame;
+ @UiField
+ ImplPanel waveHolder;
+ private final WaveStore waveStore = new SimpleWaveStore();
+ private final Widget widget;
+ private final WsArmor wsArmor;
+
+ @Inject
+ public DocsViewerPanel(final WsArmor wsArmor, final WaveClientManager waveClientManager) {
+ this.wsArmor = wsArmor;
+ this.waveClientManager = waveClientManager;
+ widget = uiBinder.createAndBindUi(this);
+ }
+
+ @Override
+ public Widget asWidget() {
+ return widget;
+ }
+
+ @Override
+ public void attach() {
+ final ForIsWidget docContainer = wsArmor.getDocContainer();
+ final int widgetCount = docContainer.getWidgetCount();
+ for (int i = 0; i < widgetCount; i++) {
+ docContainer.remove(i);
+ }
+ docContainer.add(widget);
+ }
+
+ @Override
+ public void detach() {
+ widget.removeFromParent();
+ }
+
+ private WaveRef getWaveRef(final String waveRefS) {
+ try {
+ return GwtWaverefEncoder.decodeWaveRefFromPath(waveRefS);
+ } catch (final InvalidWaveRefException e) {
+ throw new UIException("Invalid waveref: " + waveRefS);
+ }
+ }
+
+ private void initWaveClientIfNeeded() {
+ if (channel == null) {
+ final WaveWebSocketClient webSocket = new WaveWebSocketClient(WebClient.useSocketIO(),
+ WebClient.getWebSocketBaseUrl(GWT.getModuleBaseURL()));
+ webSocket.connect();
+ channel = new RemoteViewServiceMultiplexer(webSocket,
+ new ParticipantId(Session.get().getAddress()).getAddress());
+ profiles = new ProfileManagerImpl();
+ idGenerator = ClientIdGenerator.create();
+ }
+ }
+
+ @Override
+ public void setActions(final GuiActionDescCollection actions) {
+ }
+
+ @Override
+ public void setContent(final StateContentDTO state) {
+ final boolean editable = state.getContentRights().isEditable();
+ if (editable) {
+ // initWaveClientIfNeeded();
+ // setEditableWaveContent(state.getWaveRef(), false);
+ waveHolder.clear();
+ waveHolder.add(new Label(state.getContent() + " (but here goes the Wave editor -we are testing it-)"));
+ onlyViewPanel.setHTML(SafeHtmlUtils.fromTrustedString(state.getContent()));
+ } else {
+ onlyViewPanel.setHTML(SafeHtmlUtils.fromTrustedString(state.getContent()));
+ }
+ deck.showWidget(editable ? 0 : 1);
+ }
+
+ public void setEditableWaveContent(final String waveRefS, final boolean isNewWave) {
+ final WaveRef waveRef = getWaveRef(waveRefS);
+
+ if (wave != null) {
+ wave.destroy();
+ wave = null;
+ }
+
+ // Release the display:none.
+ // UIObject.setVisible(waveFrame.getElement(), true);
+ waveHolder.getElement().appendChild(loading);
+ final Element holder = waveHolder.getElement().appendChild(Document.get().createDivElement());
+ final StagesProvider wave = new StagesProvider(holder, waveHolder, waveRef, channel, idGenerator, profiles,
+ waveStore, isNewWave);
+ this.wave = wave;
+ wave.load(new Command() {
+ @Override
+ public void execute() {
+ loading.removeFromParent();
+ }
+ });
+ }
+}
Added: trunk/src/main/java/cc/kune/docs/client/DocsViewerPanel.ui.xml
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocsViewerPanel.ui.xml (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/DocsViewerPanel.ui.xml 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,25 @@
+<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
+<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
+ xmlns:g='urn:import:com.google.gwt.user.client.ui' xmlns:f='urn:import:org.waveprotocol.box.webclient.widget.frame'
+ xmlns:w='urn:import:org.waveprotocol.wave.client.widget.common'>
+ <ui:style>
+ .wavePanel {
+ margin: 0 0 0 0;
+ }
+ .waveHolder {
+ position: absolute;
+ top: 0;
+ bottom: 0;
+ left: 0;
+ right: 0;
+ }
+ </ui:style>
+ <g:HTMLPanel width="100%" height="100%">
+ <g:DeckPanel ui:field="deck" addStyleNames="k-doc-content-deck">
+<!-- <f:FramedPanel ui:field="waveFrame" addStyleNames="{style.wavePanel}"> -->
+<!-- </f:FramedPanel> -->
+ <w:ImplPanel ui:field="waveHolder" addStyleNames="{style.waveHolder}" />
+ <g:InlineHTML ui:field="onlyViewPanel" />
+ </g:DeckPanel>
+ </g:HTMLPanel>
+</ui:UiBinder>
\ No newline at end of file
Added: trunk/src/main/java/cc/kune/docs/client/DocsViewerPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocsViewerPresenter.java (rev 0)
+++ trunk/src/main/java/cc/kune/docs/client/DocsViewerPresenter.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,77 @@
+package cc.kune.docs.client;
+
+import javax.annotation.Nonnull;
+
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescCollection;
+import cc.kune.core.client.actions.ActionRegistryByType;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.shared.domain.utils.AccessRights;
+import cc.kune.core.shared.dto.HasContent;
+import cc.kune.core.shared.dto.StateContentDTO;
+import cc.kune.gspace.client.tool.ContentViewer;
+import cc.kune.gspace.client.tool.ContentViewerSelector;
+
+import com.google.gwt.event.shared.EventBus;
+import com.google.inject.Inject;
+import com.gwtplatform.mvp.client.Presenter;
+import com.gwtplatform.mvp.client.View;
+import com.gwtplatform.mvp.client.annotations.ProxyCodeSplit;
+import com.gwtplatform.mvp.client.proxy.Proxy;
+import com.gwtplatform.mvp.client.proxy.RevealRootContentEvent;
+
+public class DocsViewerPresenter extends
+ Presenter<DocsViewerPresenter.DocsViewerView, DocsViewerPresenter.DocsViewerProxy> implements ContentViewer {
+
+ @ProxyCodeSplit
+ public interface DocsViewerProxy extends Proxy<DocsViewerPresenter> {
+ }
+
+ public interface DocsViewerView extends View {
+
+ void attach();
+
+ void detach();
+
+ void setActions(GuiActionDescCollection actions);
+
+ void setContent(StateContentDTO state);
+ }
+
+ private final ActionRegistryByType actionsRegistry;
+ private final Session session;
+
+ @Inject
+ public DocsViewerPresenter(final EventBus eventBus, final DocsViewerView view, final DocsViewerProxy proxy,
+ final Session session, final ContentViewerSelector viewerSelector,
+ final ActionRegistryByType actionsRegistry) {
+ super(eventBus, view, proxy);
+ this.session = session;
+ this.actionsRegistry = actionsRegistry;
+ viewerSelector.register(DocumentClientTool.TYPE_WAVE, this, true);
+ }
+
+ @Override
+ public void attach() {
+ getView().attach();
+ }
+
+ @Override
+ public void detach() {
+ getView().detach();
+ }
+
+ @Override
+ protected void revealInParent() {
+ RevealRootContentEvent.fire(this, this);
+ }
+
+ @Override
+ public void setContent(@Nonnull final HasContent state) {
+ final StateContentDTO stateContent = (StateContentDTO) state;
+ final AccessRights rights = stateContent.getContentRights();
+ final GuiActionDescCollection actions = actionsRegistry.getCurrentActions(stateContent.getGroup(),
+ stateContent.getTypeId(), session.isLogged(), rights);
+ getView().setActions(actions);
+ getView().setContent(stateContent);
+ }
+}
\ No newline at end of file
Modified: trunk/src/main/java/cc/kune/docs/client/DocumentClientActions.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocumentClientActions.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/docs/client/DocumentClientActions.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -23,30 +23,14 @@
import static cc.kune.docs.client.DocumentClientTool.TYPE_FOLDER;
import static cc.kune.docs.client.DocumentClientTool.TYPE_ROOT;
import static cc.kune.docs.client.DocumentClientTool.TYPE_UPLOADEDFILE;
-
-
-import cc.kune.common.client.utils.SchedulerManager;
-import cc.kune.core.client.cnt.ContentActionRegistry;
-import cc.kune.core.client.errors.ErrorHandler;
import cc.kune.core.client.i18n.I18nUITranslationService;
-import cc.kune.core.client.rpcservices.ContentServiceAsync;
-import cc.kune.core.client.rpcservices.GroupServiceAsync;
-import cc.kune.core.client.services.FileDownloadUtils;
import cc.kune.core.client.state.Session;
import cc.kune.core.client.state.StateManager;
-import cc.kune.docs.client.cnt.DocumentViewer;
-import com.google.inject.Provider;
-
public class DocumentClientActions extends AbstractFoldableContentActions {
public DocumentClientActions(final I18nUITranslationService i18n, final Session session,
- final StateManager stateManager, final SchedulerManager deferredCommandWrapper,
- final Provider<ContentServiceAsync> contentServiceProvider,
- final Provider<GroupServiceAsync> groupServiceProvider, final ContentActionRegistry contentActionRegistry,
- final Provider<FileDownloadUtils> fileDownloadProvider, final DocumentViewer docViewer,
- final ErrorHandler errorHandler) {
- super(session, stateManager, i18n, errorHandler, deferredCommandWrapper, groupServiceProvider,
- contentServiceProvider, fileDownloadProvider, docViewer);
+ final StateManager stateManager) {
+ super(session, stateManager, i18n);
}
@Override
Modified: trunk/src/main/java/cc/kune/docs/client/DocumentClientTool.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocumentClientTool.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/docs/client/DocumentClientTool.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -21,8 +21,8 @@
import cc.kune.core.client.i18n.I18nUITranslationService;
import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
-import cc.kune.gspace.client.tool.FoldableAbstractClientTool;
-import cc.kune.gspace.client.tool.ToolSelector;
+import cc.kune.gspace.client.tool.old.FoldableAbstractClientTool;
+import cc.kune.gspace.client.tool.selector.ToolSelector;
import com.google.inject.Inject;
Modified: trunk/src/main/java/cc/kune/docs/client/DocumentGinModule.java
===================================================================
--- trunk/src/main/java/cc/kune/docs/client/DocumentGinModule.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/docs/client/DocumentGinModule.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -8,6 +8,8 @@
@Override
protected void configure() {
bind(DocumentClientTool.class).in(Singleton.class);
+ bindPresenter(DocsViewerPresenter.class, DocsViewerPresenter.DocsViewerView.class, DocsViewerPanel.class,
+ DocsViewerPresenter.DocsViewerProxy.class);
}
}
Added: trunk/src/main/java/cc/kune/gspace/client/GSpaceGinModule.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/GSpaceGinModule.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/GSpaceGinModule.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,44 @@
+/*
+ *
+ * Copyright (C) 2007-2011 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 cc.kune.gspace.client;
+
+import cc.kune.gspace.client.tool.selector.ToolSelector;
+import cc.kune.gspace.client.tool.selector.ToolSelectorPanel;
+import cc.kune.gspace.client.tool.selector.ToolSelectorPresenter;
+
+import com.google.inject.Singleton;
+import com.gwtplatform.mvp.client.gin.AbstractPresenterModule;
+
+public class GSpaceGinModule extends AbstractPresenterModule {
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see com.google.gwt.inject.client.AbstractGinModule#configure()
+ */
+ @Override
+ protected void configure() {
+ bind(GSpaceParts.class).asEagerSingleton();
+ bindPresenter(ToolSelectorPresenter.class, ToolSelectorPresenter.ToolSelectorView.class,
+ ToolSelectorPanel.class, ToolSelectorPresenter.ToolSelectorProxy.class);
+ bind(ToolSelector.class).to(ToolSelectorPresenter.class).in(Singleton.class);
+ }
+
+}
\ No newline at end of file
Added: trunk/src/main/java/cc/kune/gspace/client/GSpaceGinjector.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/GSpaceGinjector.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/GSpaceGinjector.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,22 @@
+package cc.kune.gspace.client;
+
+import cc.kune.gspace.client.tags.TagsSummaryPresenter;
+import cc.kune.gspace.client.tool.ContentViewerSelector;
+import cc.kune.gspace.client.tool.selector.ToolSelectorPresenter;
+import cc.kune.gspace.client.ui.footer.license.EntityLicensePresenter;
+
+import com.google.gwt.inject.client.AsyncProvider;
+import com.google.gwt.inject.client.Ginjector;
+
+public interface GSpaceGinjector extends Ginjector {
+
+ ContentViewerSelector getContentViewerSelector();
+
+ AsyncProvider<EntityLicensePresenter> getEntityLicensePresenter();
+
+ GSpaceParts getGSpaceParts();
+
+ AsyncProvider<TagsSummaryPresenter> getTagsSummaryPresenter();
+
+ AsyncProvider<ToolSelectorPresenter> getToolSelectorPresenter();
+}
Added: trunk/src/main/java/cc/kune/gspace/client/GSpaceParts.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/GSpaceParts.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/GSpaceParts.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,27 @@
+package cc.kune.gspace.client;
+
+import cc.kune.core.client.init.AppStartEvent;
+import cc.kune.core.client.init.AppStartEvent.AppStartHandler;
+import cc.kune.core.client.state.Session;
+import cc.kune.gspace.client.tags.TagsSummaryPresenter;
+import cc.kune.gspace.client.tool.selector.ToolSelector;
+import cc.kune.gspace.client.ui.footer.license.EntityLicensePresenter;
+
+import com.google.inject.Inject;
+import com.google.inject.Provider;
+
+public class GSpaceParts {
+
+ @Inject
+ public GSpaceParts(final Session session, final Provider<EntityLicensePresenter> licenseFooter,
+ final Provider<TagsSummaryPresenter> tagsPresenter, final Provider<ToolSelector> toolSelector) {
+ session.onAppStart(true, new AppStartHandler() {
+ @Override
+ public void onAppStart(final AppStartEvent event) {
+ licenseFooter.get();
+ tagsPresenter.get();
+ toolSelector.get();
+ }
+ });
+ }
+}
Added: trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ActionPerspective.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ActionPerspective.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ActionPerspective.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,8 @@
+package cc.kune.gspace.client.actions.perspective;
+
+/**
+ * An action that must be showed in some perspective (on edit, etc)
+ */
+public interface ActionPerspective {
+ String KEY = "actionperskey";
+}
Added: trunk/src/main/java/cc/kune/gspace/client/actions/perspective/EditPerspective.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/perspective/EditPerspective.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/perspective/EditPerspective.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,7 @@
+package cc.kune.gspace.client.actions.perspective;
+
+/**
+ * An action that must be showed when editing
+ */
+public interface EditPerspective extends ActionPerspective {
+}
Added: trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ViewPerspective.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ViewPerspective.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/actions/perspective/ViewPerspective.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,7 @@
+package cc.kune.gspace.client.actions.perspective;
+
+/**
+ * An action that must be showed when editing
+ */
+public interface ViewPerspective extends ActionPerspective {
+}
Deleted: trunk/src/main/java/cc/kune/gspace/client/tool/AbstractClientTool.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/AbstractClientTool.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/AbstractClientTool.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -1,31 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2011 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 cc.kune.gspace.client.tool;
-
-public abstract class AbstractClientTool {
-
- public AbstractClientTool(final String shortName, final String longName, final ToolSelector toolSelector) {
- final ToolSelectorItemPresenter presenter = new ToolSelectorItemPresenter(shortName, longName, toolSelector);
- final ToolSelectorItemPanel panel = new ToolSelectorItemPanel();
- presenter.init(panel);
- }
-
- public abstract String getName();
-}
Added: trunk/src/main/java/cc/kune/gspace/client/tool/ContentViewer.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/ContentViewer.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/ContentViewer.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,12 @@
+package cc.kune.gspace.client.tool;
+
+import cc.kune.core.shared.dto.HasContent;
+
+public interface ContentViewer {
+
+ void attach();
+
+ void detach();
+
+ void setContent(HasContent state);
+}
Added: trunk/src/main/java/cc/kune/gspace/client/tool/ContentViewerSelector.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/ContentViewerSelector.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/ContentViewerSelector.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,98 @@
+package cc.kune.gspace.client.tool;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+
+import javax.annotation.Nonnull;
+
+import cc.kune.common.client.errors.UIException;
+import cc.kune.common.client.log.Log;
+import cc.kune.core.client.init.AppStartEvent;
+import cc.kune.core.client.init.AppStartEvent.AppStartHandler;
+import cc.kune.core.client.state.Session;
+import cc.kune.core.client.state.StateChangedEvent;
+import cc.kune.core.client.state.StateChangedEvent.StateChangedHandler;
+import cc.kune.core.client.state.StateManager;
+import cc.kune.core.shared.dto.HasContent;
+import cc.kune.core.shared.dto.StateAbstractDTO;
+import cc.kune.core.shared.dto.StateContainerDTO;
+import cc.kune.core.shared.dto.StateContentDTO;
+
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+
+@Singleton
+public class ContentViewerSelector {
+
+ private final HashMap<String, ContentViewer> defViewsRegister;
+ private final Session session;
+ private final StateManager stateManager;
+ private final HashMap<String, List<ContentViewer>> viewsRegister;
+
+ @Inject
+ public ContentViewerSelector(final StateManager stateManager, final Session session) {
+ this.stateManager = stateManager;
+ this.session = session;
+ viewsRegister = new HashMap<String, List<ContentViewer>>();
+ defViewsRegister = new HashMap<String, ContentViewer>();
+ }
+
+ public void init() {
+ session.onAppStart(true, new AppStartHandler() {
+ @Override
+ public void onAppStart(final AppStartEvent event) {
+ stateManager.onStateChanged(true, new StateChangedHandler() {
+ @Override
+ public void onStateChanged(final StateChangedEvent event) {
+ final StateAbstractDTO state = event.getState();
+ if (state instanceof StateContentDTO || state instanceof StateContainerDTO) {
+ setContent((HasContent) state);
+ } else {
+ // NoContent
+ }
+ }
+ });
+ }
+ });
+ }
+
+ public void register(final String typeId, final ContentViewer view) {
+ Log.info("Registered " + typeId + " with class " + ContentViewer.class);
+ register(typeId, view, false);
+ }
+
+ public void register(@Nonnull final String typeId, @Nonnull final ContentViewer view, final boolean isDefault) {
+ List<ContentViewer> list = viewsRegister.get(typeId);
+ if (list == null) {
+ list = new ArrayList<ContentViewer>();
+ }
+ if (!list.contains(view)) {
+ list.add(view);
+ }
+ if (isDefault) {
+ defViewsRegister.put(typeId, view);
+ }
+ }
+
+ private void setContent(final ContentViewer view, final HasContent state) {
+ view.setContent(state);
+ view.attach();
+ }
+
+ public void setContent(@Nonnull final HasContent state) {
+ final String typeId = state.getTypeId();
+ assert typeId != null;
+ final ContentViewer defView = defViewsRegister.get(typeId);
+ if (defView == null) {
+ final List<ContentViewer> viewsList = viewsRegister.get(typeId);
+ if (viewsList != null && !viewsList.isEmpty()) {
+ setContent(viewsList.get(0), state);
+ } else {
+ throw new UIException("Unsupported typeId: " + typeId);
+ }
+ } else {
+ setContent(defView, state);
+ }
+ }
+}
Deleted: trunk/src/main/java/cc/kune/gspace/client/tool/FoldableAbstractClientTool.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/FoldableAbstractClientTool.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/FoldableAbstractClientTool.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -1,122 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2011 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 cc.kune.gspace.client.tool;
-
-
-import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
-import cc.kune.core.shared.dto.BasicMimeTypeDTO;
-
-public abstract class FoldableAbstractClientTool extends AbstractClientTool {
- public static final String UPLOADEDFILE_SUFFIX = "uploaded";
- public static final String WAVE_SUFFIX = "wave";
-
- protected final ContentCapabilitiesRegistry contentCapabilitiesRegistry;
-
- public FoldableAbstractClientTool(final String shortName, final String longName, final ToolSelector toolSelector,
- final ContentCapabilitiesRegistry contentCapabilitiesRegistry) {
- super(shortName, longName, toolSelector);
- this.contentCapabilitiesRegistry = contentCapabilitiesRegistry;
- }
-
- protected void registerAclEditableTypes(final String... typeIds) {
- contentCapabilitiesRegistry.getAclEditable().register(typeIds);
- }
-
- protected void registerAuthorableTypes(final String... typeIds) {
- contentCapabilitiesRegistry.getAuthorable().register(typeIds);
- }
-
- protected void registerComentableTypes(final String... typeIds) {
- contentCapabilitiesRegistry.getComentable().register(typeIds);
- }
-
- public void registerContentTypeIcon(final String typeId, final BasicMimeTypeDTO mimeType, final String iconUrl) {
- contentCapabilitiesRegistry.getIconsRegistry().registerContentTypeIcon(typeId, mimeType, iconUrl);
- }
-
- public void registerContentTypeIcon(final String contentTypeId, final String iconUrl) {
- contentCapabilitiesRegistry.getIconsRegistry().registerContentTypeIcon(contentTypeId, iconUrl);
- }
-
- protected void registerDragableTypes(final String... typeIds) {
- contentCapabilitiesRegistry.getDragable().register(typeIds);
- }
-
- protected void registerDropableTypes(final String... typeIds) {
- contentCapabilitiesRegistry.getDropable().register(typeIds);
- }
-
- protected void registerEmailSubscribeAbleTypes(final String... typeIds) {
- contentCapabilitiesRegistry.getEmailSubscribeAble().register(typeIds);
- }
-
- protected void registerLicensableTypes(final String... typeIds) {
- contentCapabilitiesRegistry.getLicensable().register(typeIds);
- }
-
- protected void registerPublishModerableTypes(final String... typeIds) {
- contentCapabilitiesRegistry.getPublishModerable().register(typeIds);
- }
-
- protected void registerRateableTypes(final String... typeIds) {
- contentCapabilitiesRegistry.getRateable().register(typeIds);
- }
-
- protected void registerRenamableTypes(final String... typeIds) {
- contentCapabilitiesRegistry.getRenamable().register(typeIds);
- }
-
- protected void registerTageableTypes(final String... typeIds) {
- contentCapabilitiesRegistry.getTageable().register(typeIds);
- }
-
- protected void registerTranslatableTypes(final String... typeIds) {
- contentCapabilitiesRegistry.getTranslatable().register(typeIds);
- }
-
- protected void registerUploadTypesAndMimes(final String typeUploadedfile) {
- registerContentTypeIcon(typeUploadedfile, new BasicMimeTypeDTO("image"), "images/nav/picture.png");
- registerContentTypeIcon(typeUploadedfile, new BasicMimeTypeDTO("video"), "images/nav/film.png");
- registerContentTypeIcon(typeUploadedfile, new BasicMimeTypeDTO("audio"), "images/nav/music.png");
- registerContentTypeIcon(typeUploadedfile, new BasicMimeTypeDTO("application", "pdf"), "images/nav/page_pdf.png");
- registerContentTypeIcon(typeUploadedfile, new BasicMimeTypeDTO("application", "zip"), "images/nav/page_zip.png");
- registerContentTypeIcon(typeUploadedfile, new BasicMimeTypeDTO("application", "zip"), "images/nav/page_zip.png");
- registerContentTypeIcon(typeUploadedfile, new BasicMimeTypeDTO("text"), "images/nav/page_text.png");
- registerContentTypeIcon(typeUploadedfile, new BasicMimeTypeDTO("application", "msword"),
- "images/nav/page_word.png");
- registerContentTypeIcon(typeUploadedfile, new BasicMimeTypeDTO("application", "excel"),
- "images/nav/page_excel.png");
- registerContentTypeIcon(typeUploadedfile, new BasicMimeTypeDTO("application", "mspowerpoint"),
- "images/nav/page_pps.png");
- registerContentTypeIcon(typeUploadedfile, "images/nav/page.png");
- }
-
- protected void registerVersionableTypes(final String... typeIds) {
- contentCapabilitiesRegistry.getVersionable().register(typeIds);
- }
-
- protected void registerXmppComentableTypes(final String... typeIds) {
- contentCapabilitiesRegistry.getXmppComentable().register(typeIds);
- }
-
- protected void registerXmppNotifyCapableTypes(final String... typeIds) {
- contentCapabilitiesRegistry.getXmppNotificyCapable().register(typeIds);
- }
-}
Deleted: trunk/src/main/java/cc/kune/gspace/client/tool/ToolResources.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/ToolResources.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/ToolResources.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -1,20 +0,0 @@
-package cc.kune.gspace.client.tool;
-
-import com.google.gwt.resources.client.ClientBundle;
-import com.google.gwt.resources.client.ImageResource;
-
-public interface ToolResources extends ClientBundle {
-
- @Source("tool-arrowdown-def.png")
- ImageResource arrowDownDef();
-
- @Source("tool-arrowleft-def.png")
- ImageResource arrowLeftDef();
-
- @Source("tool-arrowright-def.png")
- ImageResource arrowRightDef();
-
- @Source("tool-arrowup-def.png")
- ImageResource arrowUpDef();
-
-}
Deleted: trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelector.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelector.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelector.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -1,26 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2011 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 cc.kune.gspace.client.tool;
-
-public interface ToolSelector {
-
- void addTool(ToolSelectorItem item);
-
-}
Deleted: trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItem.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItem.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItem.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -1,36 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2011 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 cc.kune.gspace.client.tool;
-
-import cc.kune.gspace.client.tool.ToolSelectorItemPresenter.ToolSelectorItemView;
-
-public interface ToolSelectorItem {
-
- String getShortName();
-
- ToolSelectorItemView getView();
-
- void setGroupShortName(String groupShortName);
-
- void setSelected(boolean selected);
-
- void setVisible(boolean visible);
-
-}
Deleted: trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItemPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItemPanel.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItemPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -1,101 +0,0 @@
-package cc.kune.gspace.client.tool;
-
-import cc.kune.gspace.client.tool.ToolSelectorItemPresenter.ToolSelectorItemView;
-
-import com.google.gwt.core.client.GWT;
-import com.google.gwt.event.dom.client.HasClickHandlers;
-import com.google.gwt.event.dom.client.MouseOutEvent;
-import com.google.gwt.event.dom.client.MouseOverEvent;
-import com.google.gwt.uibinder.client.UiBinder;
-import com.google.gwt.uibinder.client.UiField;
-import com.google.gwt.uibinder.client.UiHandler;
-import com.google.gwt.user.client.ui.Composite;
-import com.google.gwt.user.client.ui.FocusPanel;
-import com.google.gwt.user.client.ui.HasText;
-import com.google.gwt.user.client.ui.Image;
-import com.google.gwt.user.client.ui.InlineLabel;
-import com.google.gwt.user.client.ui.Widget;
-
-public class ToolSelectorItemPanel extends Composite implements ToolSelectorItemView {
-
- interface ToolSelectorItemPanelUiBinder extends UiBinder<Widget, ToolSelectorItemPanel> {
- }
-
- private static ToolSelectorItemPanelUiBinder uiBinder = GWT.create(ToolSelectorItemPanelUiBinder.class);
-
- @UiField
- Image iconLeft;
- @UiField
- Image iconRight;
- @UiField
- InlineLabel label;
- @UiField
- FocusPanel self;
-
- public ToolSelectorItemPanel() {
- initWidget(uiBinder.createAndBindUi(this));
- }
-
- @Override
- public Widget asWidget() {
- return this;
- }
-
- private void focus() {
- self.addStyleDependentName("focus");
- self.removeStyleDependentName("nofocus");
- }
-
- @Override
- public HasClickHandlers getFocus() {
- return self;
- }
-
- @Override
- public HasText getLabel() {
- return label;
- }
-
- @UiHandler("self")
- void onSelfMouseOut(final MouseOutEvent event) {
- unfocus();
- }
-
- // public void setTheme(final WsTheme oldTheme, final WsTheme newTheme) {
- // if (oldTheme != null) {
- // final String oldName = oldTheme.getName();
- // hl.removeStyleDependentName(oldName);
- // }
- // final String newName = newTheme.getName();
- // hl.addStyleDependentName(newName);
- // super.setCornerStyleName(hl.getStyleName());
- // }
-
- @UiHandler("self")
- void onSelfMouseOver(final MouseOverEvent event) {
- focus();
- }
-
- @Override
- public void setSelected(final boolean selected) {
- if (selected) {
- self.addStyleDependentName("selected");
- self.removeStyleDependentName("notselected");
- iconRight.setVisible(true);
- } else {
- self.addStyleDependentName("notselected");
- self.removeStyleDependentName("selected");
- iconRight.setVisible(false);
- }
- }
-
- @Override
- public void setVisible(final boolean visible) {
- self.setVisible(visible);
- }
-
- private void unfocus() {
- self.addStyleDependentName("nofocus");
- self.removeStyleDependentName("focus");
- }
-}
Deleted: trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItemPanel.ui.xml
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItemPanel.ui.xml 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItemPanel.ui.xml 2011-04-17 19:25:13 UTC (rev 1314)
@@ -1,46 +0,0 @@
-<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
-<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
- xmlns:g="urn:import:com.google.gwt.user.client.ui">
- <ui:style>
- .label {
- text-decoration: none;
- font-size: 22px;
- color: white; /*
- text-shadow: 1px 1px 6px grey;
- */
- }
-
- .link a:link {
- text-decoration: none;
- }
-
- .self {
-
- }
-
- .flow {
- min-height: 30px;
- padding: 5px 10px;
- }
-
- .iconLeft {
-
- }
-
- .iconRight {
- float: right;
- position: relative;
- right: -17px;
- top: -6px;
- }
- </ui:style>
- <ui:with field='res' type='cc.kune.gspace.client.tool.ToolResources' />
- <g:FocusPanel ui:field="self" stylePrimaryName="k-tool-item">
- <g:FlowPanel styleName="{style.flow}" ui:field="flow">
- <g:Image ui:field="iconLeft" styleName="{style.iconLeft}" />
- <g:Image ui:field="iconRight" styleName="{style.iconRight}"
- resource='{res.arrowRightDef}' />
- <g:InlineLabel ui:field="label" styleName="{style.label}" />
- </g:FlowPanel>
- </g:FocusPanel>
-</ui:UiBinder>
\ No newline at end of file
Deleted: trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItemPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItemPresenter.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItemPresenter.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -1,104 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2011 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 cc.kune.gspace.client.tool;
-
-import cc.kune.core.shared.domain.utils.StateToken;
-
-import com.google.gwt.event.dom.client.ClickEvent;
-import com.google.gwt.event.dom.client.ClickHandler;
-import com.google.gwt.event.dom.client.HasClickHandlers;
-import com.google.gwt.user.client.History;
-import com.google.gwt.user.client.ui.HasText;
-import com.google.gwt.user.client.ui.IsWidget;
-
-public class ToolSelectorItemPresenter implements ToolSelectorItem {
- public interface ToolSelectorItemView extends IsWidget {
-
- HasClickHandlers getFocus();
-
- HasText getLabel();
-
- // void setTheme(WsTheme oldTheme, WsTheme newTheme);
-
- void setSelected(boolean selected);
-
- void setVisible(boolean visible);
- }
-
- private final String longName;
- // private final WsThemeManager wsThemePresenter;
- private final String shortName;
- private StateToken token;
- private final ToolSelector toolSelector;
- private ToolSelectorItemView view;
-
- public ToolSelectorItemPresenter(final String shortName, final String longName, final ToolSelector toolSelector) {
- this.shortName = shortName;
- this.longName = longName;
- this.toolSelector = toolSelector;
- // this.wsThemePresenter = wsThemePresenter;
- }
-
- @Override
- public String getShortName() {
- return shortName;
- }
-
- public ToolSelectorItemView getView() {
- return view;
- }
-
- public void init(final ToolSelectorItemView view) {
- this.view = view;
- toolSelector.addTool(this);
- view.getFocus().addClickHandler(new ClickHandler() {
- @Override
- public void onClick(final ClickEvent event) {
- History.newItem(token.toString());
- }
- });
- view.getLabel().setText(longName);
- // wsThemePresenter.addOnThemeChanged(new Listener2<WsTheme, WsTheme>()
- // {
- // public void onEvent(final WsTheme oldTheme, final WsTheme newTheme) {
- // setTheme(oldTheme, newTheme);
- // }
- // });
- }
-
- @Override
- public void setGroupShortName(final String groupShortName) {
- token = new StateToken(groupShortName, getShortName(), null, null);
- }
-
- @Override
- public void setSelected(final boolean selected) {
- view.setSelected(selected);
- }
-
- // private void setTheme(final WsTheme oldTheme, final WsTheme newTheme) {
- // view.setTheme(oldTheme, newTheme);
- // }
-
- @Override
- public void setVisible(final boolean visible) {
- view.setVisible(visible);
- }
-}
Deleted: trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorPanel.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -1,40 +0,0 @@
-package cc.kune.gspace.client.tool;
-
-import cc.kune.gspace.client.WsArmor;
-import cc.kune.gspace.client.tool.ToolSelectorItemPresenter.ToolSelectorItemView;
-import cc.kune.gspace.client.tool.ToolSelectorPresenter.ToolSelectorView;
-
-import com.google.gwt.core.client.GWT;
-import com.google.gwt.uibinder.client.UiBinder;
-import com.google.gwt.uibinder.client.UiField;
-import com.google.gwt.user.client.ui.FlowPanel;
-import com.google.gwt.user.client.ui.Widget;
-import com.google.inject.Inject;
-import com.gwtplatform.mvp.client.ViewImpl;
-
-public class ToolSelectorPanel extends ViewImpl implements ToolSelectorView {
-
- interface ToolSelectorPanelUiBinder extends UiBinder<Widget, ToolSelectorPanel> {
- }
-
- private static ToolSelectorPanelUiBinder uiBinder = GWT.create(ToolSelectorPanelUiBinder.class);
-
- @UiField
- FlowPanel flow;
-
- @Inject
- public ToolSelectorPanel(final WsArmor wsArmor) {
- wsArmor.getEntityToolsCenter().add(uiBinder.createAndBindUi(this));
- }
-
- @Override
- public void addItem(final ToolSelectorItemView item) {
- flow.add(item.asWidget());
- }
-
- @Override
- public Widget asWidget() {
- return flow;
- }
-
-}
Deleted: trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorPanel.ui.xml
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorPanel.ui.xml 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorPanel.ui.xml 2011-04-17 19:25:13 UTC (rev 1314)
@@ -1,5 +0,0 @@
-<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
-<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
- xmlns:g="urn:import:com.google.gwt.user.client.ui">
- <g:FlowPanel styleName="k-tool-panel" ui:field="flow" />
-</ui:UiBinder>
\ No newline at end of file
Deleted: trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorPresenter.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorPresenter.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -1,135 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2011 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 cc.kune.gspace.client.tool;
-
-import java.util.HashMap;
-import java.util.List;
-
-import cc.kune.common.client.errors.UIException;
-import cc.kune.common.client.log.Log;
-import cc.kune.core.client.state.GroupChangedEvent;
-import cc.kune.core.client.state.GroupChangedEvent.GroupChangedHandler;
-import cc.kune.core.client.state.StateChangedEvent;
-import cc.kune.core.client.state.StateChangedEvent.StateChangedHandler;
-import cc.kune.core.client.state.StateManager;
-import cc.kune.core.client.state.ToolChangedEvent;
-import cc.kune.core.client.state.ToolChangedEvent.ToolChangedHandler;
-import cc.kune.gspace.client.tool.ToolSelectorItemPresenter.ToolSelectorItemView;
-
-import com.google.gwt.event.shared.EventBus;
-import com.google.inject.Inject;
-import com.gwtplatform.mvp.client.Presenter;
-import com.gwtplatform.mvp.client.View;
-import com.gwtplatform.mvp.client.annotations.ProxyCodeSplit;
-import com.gwtplatform.mvp.client.proxy.Proxy;
-import com.gwtplatform.mvp.client.proxy.RevealRootContentEvent;
-
-public class ToolSelectorPresenter extends
- Presenter<ToolSelectorPresenter.ToolSelectorView, ToolSelectorPresenter.ToolSelectorProxy> implements
- ToolSelector {
-
- @ProxyCodeSplit
- public interface ToolSelectorProxy extends Proxy<ToolSelectorPresenter> {
- }
-
- public interface ToolSelectorView extends View {
- void addItem(ToolSelectorItemView item);
- }
-
- private final HashMap<String, ToolSelectorItem> tools;
-
- @Inject
- public ToolSelectorPresenter(final EventBus eventBus, final ToolSelectorView view, final ToolSelectorProxy proxy,
- final StateManager stateManager) {
- super(eventBus, view, proxy);
- tools = new HashMap<String, ToolSelectorItem>();
- stateManager.onStateChanged(true, new StateChangedHandler() {
- @Override
- public void onStateChanged(final StateChangedEvent event) {
- for (final String tool : tools.keySet()) {
- final List<String> enabledTools = event.getState().getEnabledTools();
- if (enabledTools != null && enabledTools.contains(tool)) {
- tools.get(tool).setVisible(true);
- } else {
- tools.get(tool).setVisible(false);
- }
- }
- }
- });
- stateManager.onGroupChanged(true, new GroupChangedHandler() {
- @Override
- public void onGroupChanged(final GroupChangedEvent event) {
- ToolSelectorPresenter.this.onGroupChanged(event.getNewGroup());
- }
- });
- stateManager.onToolChanged(false, new ToolChangedHandler() {
- @Override
- public void onToolChanged(final ToolChangedEvent event) {
- ToolSelectorPresenter.this.onToolChanged(event.getPreviousTool(), event.getNewTool());
- }
- });
- }
-
- @Override
- public void addTool(final ToolSelectorItem item) {
- final String name = item.getShortName();
- if (name == null) {
- throw new UIException("You cannot add a tool without a name");
- }
- if (tools.get(name) != null) {
- throw new UIException("A tool with the same name already added");
- }
- tools.put(name, item);
- item.setSelected(false);
- getView().addItem(item.getView());
- }
-
- private void checkTool(final ToolSelectorItem tool) {
- if (tool == null) {
- throw new UIException("Trying to activate an unregistered tool in client");
- }
-
- }
-
- void onGroupChanged(final String newGroupName) {
- for (final String name : tools.keySet()) {
- tools.get(name).setGroupShortName(newGroupName);
- }
- }
-
- void onToolChanged(final String oldTool, final String newTool) {
- Log.debug("Registered tools: " + tools.keySet().toString());
- if (oldTool != null && !oldTool.equals("")) {
- final ToolSelectorItem tool = tools.get(oldTool);
- checkTool(tool);
- tool.setSelected(false);
- }
- if (!newTool.equals("")) {
- final ToolSelectorItem tool = tools.get(newTool);
- checkTool(tool);
- tool.setSelected(true);
- }
- }
-
- @Override
- protected void revealInParent() {
- RevealRootContentEvent.fire(this, this);
- }
-}
Copied: trunk/src/main/java/cc/kune/gspace/client/tool/old/AbstractClientTool.java (from rev 1306, trunk/src/main/java/cc/kune/gspace/client/tool/AbstractClientTool.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/old/AbstractClientTool.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/old/AbstractClientTool.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,35 @@
+/*
+ *
+ * Copyright (C) 2007-2011 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 cc.kune.gspace.client.tool.old;
+
+import cc.kune.gspace.client.tool.selector.ToolSelector;
+import cc.kune.gspace.client.tool.selector.ToolSelectorItemPanel;
+import cc.kune.gspace.client.tool.selector.ToolSelectorItemPresenter;
+
+public abstract class AbstractClientTool {
+
+ public AbstractClientTool(final String shortName, final String longName, final ToolSelector toolSelector) {
+ final ToolSelectorItemPresenter presenter = new ToolSelectorItemPresenter(shortName, longName, toolSelector);
+ final ToolSelectorItemPanel panel = new ToolSelectorItemPanel();
+ presenter.init(panel);
+ }
+
+ public abstract String getName();
+}
Copied: trunk/src/main/java/cc/kune/gspace/client/tool/old/FoldableAbstractClientTool.java (from rev 1306, trunk/src/main/java/cc/kune/gspace/client/tool/FoldableAbstractClientTool.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/old/FoldableAbstractClientTool.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/old/FoldableAbstractClientTool.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,123 @@
+/*
+ *
+ * Copyright (C) 2007-2011 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 cc.kune.gspace.client.tool.old;
+
+
+import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
+import cc.kune.core.shared.dto.BasicMimeTypeDTO;
+import cc.kune.gspace.client.tool.selector.ToolSelector;
+
+public abstract class FoldableAbstractClientTool extends AbstractClientTool {
+ public static final String UPLOADEDFILE_SUFFIX = "uploaded";
+ public static final String WAVE_SUFFIX = "wave";
+
+ protected final ContentCapabilitiesRegistry contentCapabilitiesRegistry;
+
+ public FoldableAbstractClientTool(final String shortName, final String longName, final ToolSelector toolSelector,
+ final ContentCapabilitiesRegistry contentCapabilitiesRegistry) {
+ super(shortName, longName, toolSelector);
+ this.contentCapabilitiesRegistry = contentCapabilitiesRegistry;
+ }
+
+ protected void registerAclEditableTypes(final String... typeIds) {
+ contentCapabilitiesRegistry.getAclEditable().register(typeIds);
+ }
+
+ protected void registerAuthorableTypes(final String... typeIds) {
+ contentCapabilitiesRegistry.getAuthorable().register(typeIds);
+ }
+
+ protected void registerComentableTypes(final String... typeIds) {
+ contentCapabilitiesRegistry.getComentable().register(typeIds);
+ }
+
+ public void registerContentTypeIcon(final String typeId, final BasicMimeTypeDTO mimeType, final String iconUrl) {
+ contentCapabilitiesRegistry.getIconsRegistry().registerContentTypeIcon(typeId, mimeType, iconUrl);
+ }
+
+ public void registerContentTypeIcon(final String contentTypeId, final String iconUrl) {
+ contentCapabilitiesRegistry.getIconsRegistry().registerContentTypeIcon(contentTypeId, iconUrl);
+ }
+
+ protected void registerDragableTypes(final String... typeIds) {
+ contentCapabilitiesRegistry.getDragable().register(typeIds);
+ }
+
+ protected void registerDropableTypes(final String... typeIds) {
+ contentCapabilitiesRegistry.getDropable().register(typeIds);
+ }
+
+ protected void registerEmailSubscribeAbleTypes(final String... typeIds) {
+ contentCapabilitiesRegistry.getEmailSubscribeAble().register(typeIds);
+ }
+
+ protected void registerLicensableTypes(final String... typeIds) {
+ contentCapabilitiesRegistry.getLicensable().register(typeIds);
+ }
+
+ protected void registerPublishModerableTypes(final String... typeIds) {
+ contentCapabilitiesRegistry.getPublishModerable().register(typeIds);
+ }
+
+ protected void registerRateableTypes(final String... typeIds) {
+ contentCapabilitiesRegistry.getRateable().register(typeIds);
+ }
+
+ protected void registerRenamableTypes(final String... typeIds) {
+ contentCapabilitiesRegistry.getRenamable().register(typeIds);
+ }
+
+ protected void registerTageableTypes(final String... typeIds) {
+ contentCapabilitiesRegistry.getTageable().register(typeIds);
+ }
+
+ protected void registerTranslatableTypes(final String... typeIds) {
+ contentCapabilitiesRegistry.getTranslatable().register(typeIds);
+ }
+
+ protected void registerUploadTypesAndMimes(final String typeUploadedfile) {
+ registerContentTypeIcon(typeUploadedfile, new BasicMimeTypeDTO("image"), "images/nav/picture.png");
+ registerContentTypeIcon(typeUploadedfile, new BasicMimeTypeDTO("video"), "images/nav/film.png");
+ registerContentTypeIcon(typeUploadedfile, new BasicMimeTypeDTO("audio"), "images/nav/music.png");
+ registerContentTypeIcon(typeUploadedfile, new BasicMimeTypeDTO("application", "pdf"), "images/nav/page_pdf.png");
+ registerContentTypeIcon(typeUploadedfile, new BasicMimeTypeDTO("application", "zip"), "images/nav/page_zip.png");
+ registerContentTypeIcon(typeUploadedfile, new BasicMimeTypeDTO("application", "zip"), "images/nav/page_zip.png");
+ registerContentTypeIcon(typeUploadedfile, new BasicMimeTypeDTO("text"), "images/nav/page_text.png");
+ registerContentTypeIcon(typeUploadedfile, new BasicMimeTypeDTO("application", "msword"),
+ "images/nav/page_word.png");
+ registerContentTypeIcon(typeUploadedfile, new BasicMimeTypeDTO("application", "excel"),
+ "images/nav/page_excel.png");
+ registerContentTypeIcon(typeUploadedfile, new BasicMimeTypeDTO("application", "mspowerpoint"),
+ "images/nav/page_pps.png");
+ registerContentTypeIcon(typeUploadedfile, "images/nav/page.png");
+ }
+
+ protected void registerVersionableTypes(final String... typeIds) {
+ contentCapabilitiesRegistry.getVersionable().register(typeIds);
+ }
+
+ protected void registerXmppComentableTypes(final String... typeIds) {
+ contentCapabilitiesRegistry.getXmppComentable().register(typeIds);
+ }
+
+ protected void registerXmppNotifyCapableTypes(final String... typeIds) {
+ contentCapabilitiesRegistry.getXmppNotificyCapable().register(typeIds);
+ }
+}
Copied: trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolResources.java (from rev 1306, trunk/src/main/java/cc/kune/gspace/client/tool/ToolResources.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolResources.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolResources.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,20 @@
+package cc.kune.gspace.client.tool.selector;
+
+import com.google.gwt.resources.client.ClientBundle;
+import com.google.gwt.resources.client.ImageResource;
+
+public interface ToolResources extends ClientBundle {
+
+ @Source("tool-arrowdown-def.png")
+ ImageResource arrowDownDef();
+
+ @Source("tool-arrowleft-def.png")
+ ImageResource arrowLeftDef();
+
+ @Source("tool-arrowright-def.png")
+ ImageResource arrowRightDef();
+
+ @Source("tool-arrowup-def.png")
+ ImageResource arrowUpDef();
+
+}
Copied: trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelector.java (from rev 1306, trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelector.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelector.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelector.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,26 @@
+/*
+ *
+ * Copyright (C) 2007-2011 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 cc.kune.gspace.client.tool.selector;
+
+public interface ToolSelector {
+
+ void addTool(ToolSelectorItem item);
+
+}
Copied: trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorItem.java (from rev 1306, trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItem.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorItem.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorItem.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,36 @@
+/*
+ *
+ * Copyright (C) 2007-2011 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 cc.kune.gspace.client.tool.selector;
+
+import cc.kune.gspace.client.tool.selector.ToolSelectorItemPresenter.ToolSelectorItemView;
+
+public interface ToolSelectorItem {
+
+ String getShortName();
+
+ ToolSelectorItemView getView();
+
+ void setGroupShortName(String groupShortName);
+
+ void setSelected(boolean selected);
+
+ void setVisible(boolean visible);
+
+}
Copied: trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorItemPanel.java (from rev 1306, trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItemPanel.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorItemPanel.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorItemPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,101 @@
+package cc.kune.gspace.client.tool.selector;
+
+import cc.kune.gspace.client.tool.selector.ToolSelectorItemPresenter.ToolSelectorItemView;
+
+import com.google.gwt.core.client.GWT;
+import com.google.gwt.event.dom.client.HasClickHandlers;
+import com.google.gwt.event.dom.client.MouseOutEvent;
+import com.google.gwt.event.dom.client.MouseOverEvent;
+import com.google.gwt.uibinder.client.UiBinder;
+import com.google.gwt.uibinder.client.UiField;
+import com.google.gwt.uibinder.client.UiHandler;
+import com.google.gwt.user.client.ui.Composite;
+import com.google.gwt.user.client.ui.FocusPanel;
+import com.google.gwt.user.client.ui.HasText;
+import com.google.gwt.user.client.ui.Image;
+import com.google.gwt.user.client.ui.InlineLabel;
+import com.google.gwt.user.client.ui.Widget;
+
+public class ToolSelectorItemPanel extends Composite implements ToolSelectorItemView {
+
+ interface ToolSelectorItemPanelUiBinder extends UiBinder<Widget, ToolSelectorItemPanel> {
+ }
+
+ private static ToolSelectorItemPanelUiBinder uiBinder = GWT.create(ToolSelectorItemPanelUiBinder.class);
+
+ @UiField
+ Image iconLeft;
+ @UiField
+ Image iconRight;
+ @UiField
+ InlineLabel label;
+ @UiField
+ FocusPanel self;
+
+ public ToolSelectorItemPanel() {
+ initWidget(uiBinder.createAndBindUi(this));
+ }
+
+ @Override
+ public Widget asWidget() {
+ return this;
+ }
+
+ private void focus() {
+ self.addStyleDependentName("focus");
+ self.removeStyleDependentName("nofocus");
+ }
+
+ @Override
+ public HasClickHandlers getFocus() {
+ return self;
+ }
+
+ @Override
+ public HasText getLabel() {
+ return label;
+ }
+
+ @UiHandler("self")
+ void onSelfMouseOut(final MouseOutEvent event) {
+ unfocus();
+ }
+
+ // public void setTheme(final WsTheme oldTheme, final WsTheme newTheme) {
+ // if (oldTheme != null) {
+ // final String oldName = oldTheme.getName();
+ // hl.removeStyleDependentName(oldName);
+ // }
+ // final String newName = newTheme.getName();
+ // hl.addStyleDependentName(newName);
+ // super.setCornerStyleName(hl.getStyleName());
+ // }
+
+ @UiHandler("self")
+ void onSelfMouseOver(final MouseOverEvent event) {
+ focus();
+ }
+
+ @Override
+ public void setSelected(final boolean selected) {
+ if (selected) {
+ self.addStyleDependentName("selected");
+ self.removeStyleDependentName("notselected");
+ iconRight.setVisible(true);
+ } else {
+ self.addStyleDependentName("notselected");
+ self.removeStyleDependentName("selected");
+ iconRight.setVisible(false);
+ }
+ }
+
+ @Override
+ public void setVisible(final boolean visible) {
+ self.setVisible(visible);
+ }
+
+ private void unfocus() {
+ self.addStyleDependentName("nofocus");
+ self.removeStyleDependentName("focus");
+ }
+}
Copied: trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorItemPanel.ui.xml (from rev 1306, trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItemPanel.ui.xml)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorItemPanel.ui.xml (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorItemPanel.ui.xml 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,46 @@
+<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
+<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
+ xmlns:g="urn:import:com.google.gwt.user.client.ui">
+ <ui:style>
+ .label {
+ text-decoration: none;
+ font-size: 22px;
+ color: white; /*
+ text-shadow: 1px 1px 6px grey;
+ */
+ }
+
+ .link a:link {
+ text-decoration: none;
+ }
+
+ .self {
+
+ }
+
+ .flow {
+ min-height: 30px;
+ padding: 5px 10px;
+ }
+
+ .iconLeft {
+
+ }
+
+ .iconRight {
+ float: right;
+ position: relative;
+ right: -17px;
+ top: -6px;
+ }
+ </ui:style>
+ <ui:with field='res' type='cc.kune.gspace.client.tool.selector.ToolResources' />
+ <g:FocusPanel ui:field="self" stylePrimaryName="k-tool-item">
+ <g:FlowPanel styleName="{style.flow}" ui:field="flow">
+ <g:Image ui:field="iconLeft" styleName="{style.iconLeft}" />
+ <g:Image ui:field="iconRight" styleName="{style.iconRight}"
+ resource='{res.arrowRightDef}' />
+ <g:InlineLabel ui:field="label" styleName="{style.label}" />
+ </g:FlowPanel>
+ </g:FocusPanel>
+</ui:UiBinder>
\ No newline at end of file
Copied: trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorItemPresenter.java (from rev 1306, trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorItemPresenter.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorItemPresenter.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorItemPresenter.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,104 @@
+/*
+ *
+ * Copyright (C) 2007-2011 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 cc.kune.gspace.client.tool.selector;
+
+import cc.kune.core.shared.domain.utils.StateToken;
+
+import com.google.gwt.event.dom.client.ClickEvent;
+import com.google.gwt.event.dom.client.ClickHandler;
+import com.google.gwt.event.dom.client.HasClickHandlers;
+import com.google.gwt.user.client.History;
+import com.google.gwt.user.client.ui.HasText;
+import com.google.gwt.user.client.ui.IsWidget;
+
+public class ToolSelectorItemPresenter implements ToolSelectorItem {
+ public interface ToolSelectorItemView extends IsWidget {
+
+ HasClickHandlers getFocus();
+
+ HasText getLabel();
+
+ // void setTheme(WsTheme oldTheme, WsTheme newTheme);
+
+ void setSelected(boolean selected);
+
+ void setVisible(boolean visible);
+ }
+
+ private final String longName;
+ // private final WsThemeManager wsThemePresenter;
+ private final String shortName;
+ private StateToken token;
+ private final ToolSelector toolSelector;
+ private ToolSelectorItemView view;
+
+ public ToolSelectorItemPresenter(final String shortName, final String longName, final ToolSelector toolSelector) {
+ this.shortName = shortName;
+ this.longName = longName;
+ this.toolSelector = toolSelector;
+ // this.wsThemePresenter = wsThemePresenter;
+ }
+
+ @Override
+ public String getShortName() {
+ return shortName;
+ }
+
+ public ToolSelectorItemView getView() {
+ return view;
+ }
+
+ public void init(final ToolSelectorItemView view) {
+ this.view = view;
+ toolSelector.addTool(this);
+ view.getFocus().addClickHandler(new ClickHandler() {
+ @Override
+ public void onClick(final ClickEvent event) {
+ History.newItem(token.toString());
+ }
+ });
+ view.getLabel().setText(longName);
+ // wsThemePresenter.addOnThemeChanged(new Listener2<WsTheme, WsTheme>()
+ // {
+ // public void onEvent(final WsTheme oldTheme, final WsTheme newTheme) {
+ // setTheme(oldTheme, newTheme);
+ // }
+ // });
+ }
+
+ @Override
+ public void setGroupShortName(final String groupShortName) {
+ token = new StateToken(groupShortName, getShortName(), null, null);
+ }
+
+ @Override
+ public void setSelected(final boolean selected) {
+ view.setSelected(selected);
+ }
+
+ // private void setTheme(final WsTheme oldTheme, final WsTheme newTheme) {
+ // view.setTheme(oldTheme, newTheme);
+ // }
+
+ @Override
+ public void setVisible(final boolean visible) {
+ view.setVisible(visible);
+ }
+}
Copied: trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorPanel.java (from rev 1306, trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorPanel.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorPanel.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorPanel.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,40 @@
+package cc.kune.gspace.client.tool.selector;
+
+import cc.kune.gspace.client.WsArmor;
+import cc.kune.gspace.client.tool.selector.ToolSelectorItemPresenter.ToolSelectorItemView;
+import cc.kune.gspace.client.tool.selector.ToolSelectorPresenter.ToolSelectorView;
+
+import com.google.gwt.core.client.GWT;
+import com.google.gwt.uibinder.client.UiBinder;
+import com.google.gwt.uibinder.client.UiField;
+import com.google.gwt.user.client.ui.FlowPanel;
+import com.google.gwt.user.client.ui.Widget;
+import com.google.inject.Inject;
+import com.gwtplatform.mvp.client.ViewImpl;
+
+public class ToolSelectorPanel extends ViewImpl implements ToolSelectorView {
+
+ interface ToolSelectorPanelUiBinder extends UiBinder<Widget, ToolSelectorPanel> {
+ }
+
+ private static ToolSelectorPanelUiBinder uiBinder = GWT.create(ToolSelectorPanelUiBinder.class);
+
+ @UiField
+ FlowPanel flow;
+
+ @Inject
+ public ToolSelectorPanel(final WsArmor wsArmor) {
+ wsArmor.getEntityToolsCenter().add(uiBinder.createAndBindUi(this));
+ }
+
+ @Override
+ public void addItem(final ToolSelectorItemView item) {
+ flow.add(item.asWidget());
+ }
+
+ @Override
+ public Widget asWidget() {
+ return flow;
+ }
+
+}
Copied: trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorPanel.ui.xml (from rev 1306, trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorPanel.ui.xml)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorPanel.ui.xml (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorPanel.ui.xml 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,5 @@
+<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
+<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
+ xmlns:g="urn:import:com.google.gwt.user.client.ui">
+ <g:FlowPanel styleName="k-tool-panel" ui:field="flow" />
+</ui:UiBinder>
\ No newline at end of file
Copied: trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorPresenter.java (from rev 1306, trunk/src/main/java/cc/kune/gspace/client/tool/ToolSelectorPresenter.java)
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorPresenter.java (rev 0)
+++ trunk/src/main/java/cc/kune/gspace/client/tool/selector/ToolSelectorPresenter.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,135 @@
+/*
+ *
+ * Copyright (C) 2007-2011 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 cc.kune.gspace.client.tool.selector;
+
+import java.util.HashMap;
+import java.util.List;
+
+import cc.kune.common.client.errors.UIException;
+import cc.kune.common.client.log.Log;
+import cc.kune.core.client.state.GroupChangedEvent;
+import cc.kune.core.client.state.GroupChangedEvent.GroupChangedHandler;
+import cc.kune.core.client.state.StateChangedEvent;
+import cc.kune.core.client.state.StateChangedEvent.StateChangedHandler;
+import cc.kune.core.client.state.StateManager;
+import cc.kune.core.client.state.ToolChangedEvent;
+import cc.kune.core.client.state.ToolChangedEvent.ToolChangedHandler;
+import cc.kune.gspace.client.tool.selector.ToolSelectorItemPresenter.ToolSelectorItemView;
+
+import com.google.gwt.event.shared.EventBus;
+import com.google.inject.Inject;
+import com.gwtplatform.mvp.client.Presenter;
+import com.gwtplatform.mvp.client.View;
+import com.gwtplatform.mvp.client.annotations.ProxyCodeSplit;
+import com.gwtplatform.mvp.client.proxy.Proxy;
+import com.gwtplatform.mvp.client.proxy.RevealRootContentEvent;
+
+public class ToolSelectorPresenter extends
+ Presenter<ToolSelectorPresenter.ToolSelectorView, ToolSelectorPresenter.ToolSelectorProxy> implements
+ ToolSelector {
+
+ @ProxyCodeSplit
+ public interface ToolSelectorProxy extends Proxy<ToolSelectorPresenter> {
+ }
+
+ public interface ToolSelectorView extends View {
+ void addItem(ToolSelectorItemView item);
+ }
+
+ private final HashMap<String, ToolSelectorItem> tools;
+
+ @Inject
+ public ToolSelectorPresenter(final EventBus eventBus, final ToolSelectorView view, final ToolSelectorProxy proxy,
+ final StateManager stateManager) {
+ super(eventBus, view, proxy);
+ tools = new HashMap<String, ToolSelectorItem>();
+ stateManager.onStateChanged(true, new StateChangedHandler() {
+ @Override
+ public void onStateChanged(final StateChangedEvent event) {
+ for (final String tool : tools.keySet()) {
+ final List<String> enabledTools = event.getState().getEnabledTools();
+ if (enabledTools != null && enabledTools.contains(tool)) {
+ tools.get(tool).setVisible(true);
+ } else {
+ tools.get(tool).setVisible(false);
+ }
+ }
+ }
+ });
+ stateManager.onGroupChanged(true, new GroupChangedHandler() {
+ @Override
+ public void onGroupChanged(final GroupChangedEvent event) {
+ ToolSelectorPresenter.this.onGroupChanged(event.getNewGroup());
+ }
+ });
+ stateManager.onToolChanged(false, new ToolChangedHandler() {
+ @Override
+ public void onToolChanged(final ToolChangedEvent event) {
+ ToolSelectorPresenter.this.onToolChanged(event.getPreviousTool(), event.getNewTool());
+ }
+ });
+ }
+
+ @Override
+ public void addTool(final ToolSelectorItem item) {
+ final String name = item.getShortName();
+ if (name == null) {
+ throw new UIException("You cannot add a tool without a name");
+ }
+ if (tools.get(name) != null) {
+ throw new UIException("A tool with the same name already added");
+ }
+ tools.put(name, item);
+ item.setSelected(false);
+ getView().addItem(item.getView());
+ }
+
+ private void checkTool(final ToolSelectorItem tool) {
+ if (tool == null) {
+ throw new UIException("Trying to activate an unregistered tool in client");
+ }
+
+ }
+
+ void onGroupChanged(final String newGroupName) {
+ for (final String name : tools.keySet()) {
+ tools.get(name).setGroupShortName(newGroupName);
+ }
+ }
+
+ void onToolChanged(final String oldTool, final String newTool) {
+ Log.debug("Registered tools: " + tools.keySet().toString());
+ if (oldTool != null && !oldTool.equals("")) {
+ final ToolSelectorItem tool = tools.get(oldTool);
+ checkTool(tool);
+ tool.setSelected(false);
+ }
+ if (!newTool.equals("")) {
+ final ToolSelectorItem tool = tools.get(newTool);
+ checkTool(tool);
+ tool.setSelected(true);
+ }
+ }
+
+ @Override
+ protected void revealInParent() {
+ RevealRootContentEvent.fire(this, this);
+ }
+}
Copied: trunk/src/main/java/cc/kune/gspace/client/tool/selector/tool-arrowdown-def.png (from rev 1306, trunk/src/main/java/cc/kune/gspace/client/tool/tool-arrowdown-def.png)
===================================================================
(Binary files differ)
Property changes on: trunk/src/main/java/cc/kune/gspace/client/tool/selector/tool-arrowdown-def.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Copied: trunk/src/main/java/cc/kune/gspace/client/tool/selector/tool-arrowleft-def.png (from rev 1306, trunk/src/main/java/cc/kune/gspace/client/tool/tool-arrowleft-def.png)
===================================================================
(Binary files differ)
Property changes on: trunk/src/main/java/cc/kune/gspace/client/tool/selector/tool-arrowleft-def.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Copied: trunk/src/main/java/cc/kune/gspace/client/tool/selector/tool-arrowright-def.png (from rev 1306, trunk/src/main/java/cc/kune/gspace/client/tool/tool-arrowright-def.png)
===================================================================
(Binary files differ)
Property changes on: trunk/src/main/java/cc/kune/gspace/client/tool/selector/tool-arrowright-def.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Copied: trunk/src/main/java/cc/kune/gspace/client/tool/selector/tool-arrowup-def.png (from rev 1306, trunk/src/main/java/cc/kune/gspace/client/tool/tool-arrowup-def.png)
===================================================================
(Binary files differ)
Property changes on: trunk/src/main/java/cc/kune/gspace/client/tool/selector/tool-arrowup-def.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Deleted: trunk/src/main/java/cc/kune/gspace/client/tool/tool-arrowdown-def.png
===================================================================
(Binary files differ)
Deleted: trunk/src/main/java/cc/kune/gspace/client/tool/tool-arrowleft-def.png
===================================================================
(Binary files differ)
Deleted: trunk/src/main/java/cc/kune/gspace/client/tool/tool-arrowright-def.png
===================================================================
(Binary files differ)
Deleted: trunk/src/main/java/cc/kune/gspace/client/tool/tool-arrowup-def.png
===================================================================
(Binary files differ)
Modified: trunk/src/main/java/cc/kune/wave/client/WaveStatusIndicator.java
===================================================================
--- trunk/src/main/java/cc/kune/wave/client/WaveStatusIndicator.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/wave/client/WaveStatusIndicator.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -55,6 +55,6 @@
public WaveStatusIndicator(final SitebarActionsPresenter sitebar, final WaveStatusAction action) {
final IconLabelDescriptor status = new IconLabelDescriptor(action);
status.setPosition(0);
- sitebar.getRightToolbar().addAction(status);
+ sitebar.getRightToolbar().add(status);
}
}
Modified: trunk/src/main/java/cc/kune/wave/client/WebClient.java
===================================================================
--- trunk/src/main/java/cc/kune/wave/client/WebClient.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/cc/kune/wave/client/WebClient.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -139,18 +139,6 @@
private RemoteViewServiceMultiplexer channel;
- public RemoteViewServiceMultiplexer getChannel() {
- return channel;
-}
-
- public IdGenerator getIdGenerator() {
- return idGenerator;
-}
-
- public ProfileManager getProfiles() {
- return profiles;
-}
-
private final EventBus eventBus;
/**
@@ -273,11 +261,11 @@
* Returns <code>ws://yourhost[:port]/</code>.
*/
// XXX check formatting wrt GPE
- private native String getWebSocketBaseUrl(String moduleBase) /*-{
+ public native static String getWebSocketBaseUrl(String moduleBase) /*-{
return "ws" + /:\/\/[^\/]+/.exec(moduleBase)[0] + "/";
}-*/;
- private native boolean useSocketIO() /*-{
+ public native static boolean useSocketIO() /*-{
return !!$wnd.__useSocketIO
}-*/;
Modified: trunk/src/main/java/com/example/client/HelloWorldActions.java
===================================================================
--- trunk/src/main/java/com/example/client/HelloWorldActions.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/com/example/client/HelloWorldActions.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -34,7 +34,7 @@
final ButtonDescriptor siteBarBtn = new ButtonDescriptor(sharedAction);
siteBarBtn.withText("HWorld!").withIcon(coreResources.info());
// FIXME setParent as in siteUsOp
- sitebarActions.getLeftToolbar().addAction(siteBarBtn);
+ sitebarActions.getLeftToolbar().add(siteBarBtn);
// Other action in the sitebar options menu
Modified: trunk/src/main/java/org/ourproject/kune/blogs/client/BlogClientTool.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/blogs/client/BlogClientTool.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/org/ourproject/kune/blogs/client/BlogClientTool.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -25,7 +25,7 @@
import cc.kune.core.client.i18n.I18nUITranslationService;
import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
-import cc.kune.gspace.client.tool.ToolSelector;
+import cc.kune.gspace.client.tool.selector.ToolSelector;
public class BlogClientTool extends OldFoldableAbstractClientTool {
public static final String NAME = "blogs";
Modified: trunk/src/main/java/org/ourproject/kune/chat/client/ChatClientTool.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/chat/client/ChatClientTool.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/org/ourproject/kune/chat/client/ChatClientTool.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -25,7 +25,7 @@
import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
import cc.kune.core.shared.i18n.I18nTranslationService;
-import cc.kune.gspace.client.tool.ToolSelector;
+import cc.kune.gspace.client.tool.selector.ToolSelector;
public class ChatClientTool extends OldFoldableAbstractClientTool {
public static final String NAME = "chats";
Modified: trunk/src/main/java/org/ourproject/kune/gallery/client/GalleryClientTool.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/gallery/client/GalleryClientTool.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/org/ourproject/kune/gallery/client/GalleryClientTool.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -25,7 +25,7 @@
import cc.kune.core.client.i18n.I18nUITranslationService;
import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
-import cc.kune.gspace.client.tool.ToolSelector;
+import cc.kune.gspace.client.tool.selector.ToolSelector;
public class GalleryClientTool extends OldFoldableAbstractClientTool {
public static final String NAME = "gallery";
Modified: trunk/src/main/java/org/ourproject/kune/wiki/client/WikiClientTool.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/wiki/client/WikiClientTool.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/org/ourproject/kune/wiki/client/WikiClientTool.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -25,7 +25,7 @@
import cc.kune.core.client.i18n.I18nUITranslationService;
import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
-import cc.kune.gspace.client.tool.ToolSelector;
+import cc.kune.gspace.client.tool.selector.ToolSelector;
public class WikiClientTool extends OldFoldableAbstractClientTool {
public static final String NAME = "wiki";
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/tool/OldAbstractClientTool.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/tool/OldAbstractClientTool.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/tool/OldAbstractClientTool.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -22,9 +22,9 @@
import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton;
import org.ourproject.kune.workspace.client.themes.WsThemeManager;
-import cc.kune.gspace.client.tool.ToolSelector;
-import cc.kune.gspace.client.tool.ToolSelectorItemPanel;
-import cc.kune.gspace.client.tool.ToolSelectorItemPresenter;
+import cc.kune.gspace.client.tool.selector.ToolSelector;
+import cc.kune.gspace.client.tool.selector.ToolSelectorItemPanel;
+import cc.kune.gspace.client.tool.selector.ToolSelectorItemPresenter;
public abstract class OldAbstractClientTool implements OldClientTool {
Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/tool/OldFoldableAbstractClientTool.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/tool/OldFoldableAbstractClientTool.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/tool/OldFoldableAbstractClientTool.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -24,7 +24,7 @@
import cc.kune.core.client.registry.ContentCapabilitiesRegistry;
import cc.kune.core.shared.dto.BasicMimeTypeDTO;
-import cc.kune.gspace.client.tool.ToolSelector;
+import cc.kune.gspace.client.tool.selector.ToolSelector;
public abstract class OldFoldableAbstractClientTool extends OldAbstractClientTool {
public static final String UPLOADEDFILE_SUFFIX = "uploaded";
Added: trunk/src/test/java/cc/kune/core/client/actions/ActionRegistryByTypeTest.java
===================================================================
--- trunk/src/test/java/cc/kune/core/client/actions/ActionRegistryByTypeTest.java (rev 0)
+++ trunk/src/test/java/cc/kune/core/client/actions/ActionRegistryByTypeTest.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,55 @@
+package cc.kune.core.client.actions;
+
+import static org.junit.Assert.assertEquals;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.Mockito;
+
+import cc.kune.common.client.actions.ui.descrip.GuiActionDescrip;
+import cc.kune.core.shared.domain.utils.AccessRights;
+import cc.kune.gspace.client.actions.perspective.ActionPerspective;
+import cc.kune.gspace.client.actions.perspective.EditPerspective;
+import cc.kune.gspace.client.actions.perspective.ViewPerspective;
+
+import com.google.inject.Provider;
+
+public class ActionRegistryByTypeTest {
+
+ private GuiActionDescrip action;
+ private ActionRegistryByType actionRegistryByType;
+ private AccessRights allRights;
+
+ @SuppressWarnings({ "unchecked", "rawtypes" })
+ @Before
+ public void before() {
+ actionRegistryByType = new ActionRegistryByType();
+ action = Mockito.mock(GuiActionDescrip.class);
+ allRights = new AccessRights(true, true, true);
+ actionRegistryByType.addAction(new Provider() {
+
+ @Override
+ public Object get() {
+ return action;
+ }
+ });
+ }
+
+ @Test
+ public void testDontGetCurrentActionsOfOtherPerspective() {
+ Mockito.when(action.getValue(ActionPerspective.KEY)).thenReturn(ViewPerspective.class);
+ assertEquals(0, actionRegistryByType.getCurrentActions(null, false, allRights, EditPerspective.class).size());
+ }
+
+ @Test
+ public void testGetCurrentActions() {
+ Mockito.when(action.getValue(ActionPerspective.KEY)).thenReturn(null);
+ assertEquals(1, actionRegistryByType.getCurrentActions(null, false, allRights, null).size());
+ }
+
+ @Test
+ public void testGetCurrentActionsOfPerspective() {
+ Mockito.when(action.getValue(ActionPerspective.KEY)).thenReturn(EditPerspective.class);
+ assertEquals(1, actionRegistryByType.getCurrentActions(null, false, allRights, EditPerspective.class).size());
+ }
+}
Modified: trunk/src/test/java/cc/kune/core/server/integration/DatabaseInitializerTest.java
===================================================================
--- trunk/src/test/java/cc/kune/core/server/integration/DatabaseInitializerTest.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/test/java/cc/kune/core/server/integration/DatabaseInitializerTest.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -80,7 +80,7 @@
@Test
public void testDefaultDocumentContent() {
final Content content = defaultGroup.getDefaultContent();
- assertEquals(DocumentServerTool.TYPE_DOCUMENT, content.getTypeId());
+ assertEquals(DocumentServerTool.TYPE_WAVE, content.getTypeId());
final Container rootDocFolder = content.getContainer();
assertEquals(true, rootDocFolder.isRoot());
}
Deleted: trunk/src/test/java/cc/kune/gspace/client/tool/ToolSelectorPresenterTest.java
===================================================================
--- trunk/src/test/java/cc/kune/gspace/client/tool/ToolSelectorPresenterTest.java 2011-04-16 10:50:40 UTC (rev 1313)
+++ trunk/src/test/java/cc/kune/gspace/client/tool/ToolSelectorPresenterTest.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -1,129 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2011 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 cc.kune.gspace.client.tool;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.mockito.Mockito;
-
-import cc.kune.core.client.state.EventBusTester;
-import cc.kune.core.client.state.StateManager;
-import cc.kune.gspace.client.tool.ToolSelectorItem;
-import cc.kune.gspace.client.tool.ToolSelectorPresenter;
-import cc.kune.gspace.client.tool.ToolSelectorPresenter.ToolSelectorProxy;
-import cc.kune.gspace.client.tool.ToolSelectorPresenter.ToolSelectorView;
-
-public class ToolSelectorPresenterTest {
-
- private static final String GROUP1_NAME = "group1";
- private static final String TOOL1_NAME = "tool1";
- private static final String TOOL2_NAME = "tool2";
- private ToolSelectorPresenter toolSelector;
- private ToolSelectorItem toolSelectorItem1;
- private ToolSelectorItem toolSelectorItem2;
-
- @Test
- public void addFirstToolMustNotSelect() {
- setToolNames();
- toolSelector.addTool(toolSelectorItem1);
- Mockito.verify(toolSelectorItem1).setSelected(false);
- }
-
- @Test(expected = RuntimeException.class)
- public void addToolWithoutNameMustGiveException() {
- toolSelector.addTool(toolSelectorItem1);
- }
-
- @Test
- public void addTwoToolsMustSelectNothing() {
- setToolNames();
- toolSelector.addTool(toolSelectorItem1);
- toolSelector.addTool(toolSelectorItem2);
- Mockito.verify(toolSelectorItem1).setSelected(false);
- Mockito.verify(toolSelectorItem2).setSelected(false);
- }
-
- @Test(expected = RuntimeException.class)
- public void addTwoToolsWithSameNameMustGiveException() {
- setToolNames();
- final ToolSelectorItem toolSelectorItemCopy = Mockito.mock(ToolSelectorItem.class);
- Mockito.when(toolSelectorItemCopy.getShortName()).thenReturn(TOOL1_NAME);
- toolSelector.addTool(toolSelectorItem1);
- toolSelector.addTool(toolSelectorItemCopy);
- }
-
- @Before
- public void begin() {
- final StateManager stateManager = Mockito.mock(StateManager.class);
- // final WsThemeManager themePresenter =
- // Mockito.mock(WsThemeManager.class);
- toolSelector = new ToolSelectorPresenter(new EventBusTester(), Mockito.mock(ToolSelectorView.class),
- Mockito.mock(ToolSelectorProxy.class), stateManager);
- toolSelectorItem1 = Mockito.mock(ToolSelectorItem.class);
- toolSelectorItem2 = Mockito.mock(ToolSelectorItem.class);
- }
-
- @Test
- public void setStateFirstMustSelect() {
- setToolNames();
- toolSelector.addTool(toolSelectorItem1);
- toolSelector.onToolChanged("", TOOL1_NAME);
- Mockito.verify(toolSelectorItem1, Mockito.times(1)).setSelected(false);
- Mockito.verify(toolSelectorItem1, Mockito.times(1)).setSelected(true);
- }
-
- @Test
- public void setStateWithADifferentGroupMustSetLink() {
- setToolNames();
- toolSelector.addTool(toolSelectorItem1);
- toolSelector.addTool(toolSelectorItem2);
- toolSelector.onGroupChanged(GROUP1_NAME);
- Mockito.verify(toolSelectorItem1, Mockito.times(1)).setGroupShortName(GROUP1_NAME);
- Mockito.verify(toolSelectorItem2, Mockito.times(1)).setGroupShortName(GROUP1_NAME);
- }
-
- @Test
- public void setStateWithADifferentToolNameMustSelectAndUnSelectTheOlder() {
- setToolNames();
- toolSelector.addTool(toolSelectorItem1);
- toolSelector.addTool(toolSelectorItem2);
- toolSelector.onToolChanged(TOOL1_NAME, TOOL2_NAME);
- Mockito.verify(toolSelectorItem2, Mockito.times(1)).setSelected(false);
- Mockito.verify(toolSelectorItem1, Mockito.times(2)).setSelected(false);
- Mockito.verify(toolSelectorItem2, Mockito.times(1)).setSelected(true);
- }
-
- @Test
- public void setStateWithNoToolNameMustUnSelectTheOlder() {
- setToolNames();
- toolSelector.addTool(toolSelectorItem1);
- toolSelector.addTool(toolSelectorItem2);
- toolSelector.onToolChanged(TOOL1_NAME, "");
- Mockito.verify(toolSelectorItem2, Mockito.times(1)).setSelected(false);
- Mockito.verify(toolSelectorItem1, Mockito.times(2)).setSelected(false);
- Mockito.verify(toolSelectorItem2, Mockito.never()).setSelected(true);
- }
-
- public void setToolNames() {
- Mockito.when(toolSelectorItem1.getShortName()).thenReturn(TOOL1_NAME);
- Mockito.when(toolSelectorItem2.getShortName()).thenReturn(TOOL2_NAME);
- }
-
-}
Copied: trunk/src/test/java/cc/kune/gspace/client/tool/selector/ToolSelectorPresenterTest.java (from rev 1306, trunk/src/test/java/cc/kune/gspace/client/tool/ToolSelectorPresenterTest.java)
===================================================================
--- trunk/src/test/java/cc/kune/gspace/client/tool/selector/ToolSelectorPresenterTest.java (rev 0)
+++ trunk/src/test/java/cc/kune/gspace/client/tool/selector/ToolSelectorPresenterTest.java 2011-04-17 19:25:13 UTC (rev 1314)
@@ -0,0 +1,129 @@
+/*
+ *
+ * Copyright (C) 2007-2011 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 cc.kune.gspace.client.tool.selector;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.Mockito;
+
+import cc.kune.core.client.state.EventBusTester;
+import cc.kune.core.client.state.StateManager;
+import cc.kune.gspace.client.tool.selector.ToolSelectorItem;
+import cc.kune.gspace.client.tool.selector.ToolSelectorPresenter;
+import cc.kune.gspace.client.tool.selector.ToolSelectorPresenter.ToolSelectorProxy;
+import cc.kune.gspace.client.tool.selector.ToolSelectorPresenter.ToolSelectorView;
+
+public class ToolSelectorPresenterTest {
+
+ private static final String GROUP1_NAME = "group1";
+ private static final String TOOL1_NAME = "tool1";
+ private static final String TOOL2_NAME = "tool2";
+ private ToolSelectorPresenter toolSelector;
+ private ToolSelectorItem toolSelectorItem1;
+ private ToolSelectorItem toolSelectorItem2;
+
+ @Test
+ public void addFirstToolMustNotSelect() {
+ setToolNames();
+ toolSelector.addTool(toolSelectorItem1);
+ Mockito.verify(toolSelectorItem1).setSelected(false);
+ }
+
+ @Test(expected = RuntimeException.class)
+ public void addToolWithoutNameMustGiveException() {
+ toolSelector.addTool(toolSelectorItem1);
+ }
+
+ @Test
+ public void addTwoToolsMustSelectNothing() {
+ setToolNames();
+ toolSelector.addTool(toolSelectorItem1);
+ toolSelector.addTool(toolSelectorItem2);
+ Mockito.verify(toolSelectorItem1).setSelected(false);
+ Mockito.verify(toolSelectorItem2).setSelected(false);
+ }
+
+ @Test(expected = RuntimeException.class)
+ public void addTwoToolsWithSameNameMustGiveException() {
+ setToolNames();
+ final ToolSelectorItem toolSelectorItemCopy = Mockito.mock(ToolSelectorItem.class);
+ Mockito.when(toolSelectorItemCopy.getShortName()).thenReturn(TOOL1_NAME);
+ toolSelector.addTool(toolSelectorItem1);
+ toolSelector.addTool(toolSelectorItemCopy);
+ }
+
+ @Before
+ public void begin() {
+ final StateManager stateManager = Mockito.mock(StateManager.class);
+ // final WsThemeManager themePresenter =
+ // Mockito.mock(WsThemeManager.class);
+ toolSelector = new ToolSelectorPresenter(new EventBusTester(), Mockito.mock(ToolSelectorView.class),
+ Mockito.mock(ToolSelectorProxy.class), stateManager);
+ toolSelectorItem1 = Mockito.mock(ToolSelectorItem.class);
+ toolSelectorItem2 = Mockito.mock(ToolSelectorItem.class);
+ }
+
+ @Test
+ public void setStateFirstMustSelect() {
+ setToolNames();
+ toolSelector.addTool(toolSelectorItem1);
+ toolSelector.onToolChanged("", TOOL1_NAME);
+ Mockito.verify(toolSelectorItem1, Mockito.times(1)).setSelected(false);
+ Mockito.verify(toolSelectorItem1, Mockito.times(1)).setSelected(true);
+ }
+
+ @Test
+ public void setStateWithADifferentGroupMustSetLink() {
+ setToolNames();
+ toolSelector.addTool(toolSelectorItem1);
+ toolSelector.addTool(toolSelectorItem2);
+ toolSelector.onGroupChanged(GROUP1_NAME);
+ Mockito.verify(toolSelectorItem1, Mockito.times(1)).setGroupShortName(GROUP1_NAME);
+ Mockito.verify(toolSelectorItem2, Mockito.times(1)).setGroupShortName(GROUP1_NAME);
+ }
+
+ @Test
+ public void setStateWithADifferentToolNameMustSelectAndUnSelectTheOlder() {
+ setToolNames();
+ toolSelector.addTool(toolSelectorItem1);
+ toolSelector.addTool(toolSelectorItem2);
+ toolSelector.onToolChanged(TOOL1_NAME, TOOL2_NAME);
+ Mockito.verify(toolSelectorItem2, Mockito.times(1)).setSelected(false);
+ Mockito.verify(toolSelectorItem1, Mockito.times(2)).setSelected(false);
+ Mockito.verify(toolSelectorItem2, Mockito.times(1)).setSelected(true);
+ }
+
+ @Test
+ public void setStateWithNoToolNameMustUnSelectTheOlder() {
+ setToolNames();
+ toolSelector.addTool(toolSelectorItem1);
+ toolSelector.addTool(toolSelectorItem2);
+ toolSelector.onToolChanged(TOOL1_NAME, "");
+ Mockito.verify(toolSelectorItem2, Mockito.times(1)).setSelected(false);
+ Mockito.verify(toolSelectorItem1, Mockito.times(2)).setSelected(false);
+ Mockito.verify(toolSelectorItem2, Mockito.never()).setSelected(true);
+ }
+
+ public void setToolNames() {
+ Mockito.when(toolSelectorItem1.getShortName()).thenReturn(TOOL1_NAME);
+ Mockito.when(toolSelectorItem2.getShortName()).thenReturn(TOOL2_NAME);
+ }
+
+}
1
0