Author: vjrj Date: 2008-09-08 02:55:39 +0200 (Mon, 08 Sep 2008) New Revision: 847 Removed: trunk/src/main/java/org/ourproject/kune/platf/client/dto/DoTranslationActionParams.java trunk/src/main/java/org/ourproject/kune/platf/client/dto/GetTranslationActionParams.java trunk/src/main/java/org/ourproject/kune/platf/client/dto/RenameTokenActionParams.java trunk/src/main/java/org/ourproject/kune/platf/client/dto/ShowSearcherActionParams.java trunk/src/main/java/org/ourproject/kune/platf/client/ui/gwtcustom/CustomHorizontalSplitPanel.java trunk/src/main/java/org/ourproject/kune/platf/client/ui/gwtcustom/CustomSplitPanel.java trunk/src/main/java/org/ourproject/kune/platf/client/ui/gwtcustom/CustomStackPanel.java trunk/src/main/java/org/ourproject/kune/platf/client/ui/gwtcustom/WidgetIterators.java Modified: trunk/src/main/java/org/ourproject/kune/platf/Kune-Platform.gwt.xml trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionManager.java trunk/src/main/java/org/ourproject/kune/platf/client/app/ApplicationDefault.java trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneErrorHandler.java trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneModule.java trunk/src/main/java/org/ourproject/kune/platf/client/state/ContentProviderDefault.java trunk/src/main/java/org/ourproject/kune/platf/client/state/SessionDefault.java trunk/src/main/java/org/ourproject/kune/platf/client/state/StateManagerDefault.java trunk/src/main/java/org/ourproject/kune/platf/client/tool/AbstractClientTool.java trunk/src/main/java/org/ourproject/kune/platf/client/tool/ToolSelectorItemPanel.java trunk/src/main/java/org/ourproject/kune/platf/client/tool/ToolSelectorItemPresenter.java trunk/src/main/java/org/ourproject/kune/platf/client/tool/ToolSelectorItemView.java trunk/src/main/java/org/ourproject/kune/platf/client/tool/ToolSelectorPresenter.java trunk/src/main/java/org/ourproject/kune/platf/client/ui/DropDownPanel.java trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateItPanel.java trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateItPresenter.java trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RatePanel.java trunk/src/main/java/org/ourproject/kune/platf/server/PlatformServerModule.java trunk/src/main/java/org/ourproject/kune/platf/server/rpc/UserRPC.java Log: Refactorization Modified: trunk/src/main/java/org/ourproject/kune/platf/Kune-Platform.gwt.xml =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/Kune-Platform.gwt.xml 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/Kune-Platform.gwt.xml 2008-09-08 00:55:39 UTC (rev 847) @@ -5,25 +5,5 @@ <inherits name="com.google.gwt.user.UserAgent" /> <public path="public" /> - - <replace-with - class="org.ourproject.kune.platf.client.ui.CustomHorizontalSplitPanel.Impl"> - <when-type-is - class="org.ourproject.kune.platf.client.ui.CustomHorizontalSplitPanel.Impl" /> - </replace-with> - <replace-with - class="org.ourproject.kune.platf.client.ui.CustomHorizontalSplitPanel.ImplIE6"> - <when-type-is - class="org.ourproject.kune.platf.client.ui.CustomHorizontalSplitPanel.Impl" /> - <when-property-is name="user.agent" value="ie6" /> - </replace-with> - - <replace-with - class="org.ourproject.kune.platf.client.ui.CustomHorizontalSplitPanel.ImplSafari"> - <when-type-is - class="org.ourproject.kune.platf.client.ui.CustomHorizontalSplitPanel.Impl" /> - <when-property-is name="user.agent" value="safari" /> - </replace-with> - </module> 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 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/actions/ActionManager.java 2008-09-08 00:55:39 UTC (rev 847) @@ -1,6 +1,6 @@ package org.ourproject.kune.platf.client.actions; -import org.ourproject.kune.workspace.client.ui.newtmp.skel.WorkspaceSkeleton; +import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton; import com.calclab.suco.client.signal.Slot0; Modified: trunk/src/main/java/org/ourproject/kune/platf/client/app/ApplicationDefault.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/app/ApplicationDefault.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/app/ApplicationDefault.java 2008-09-08 00:55:39 UTC (rev 847) @@ -25,11 +25,13 @@ import org.ourproject.kune.platf.client.rpc.SiteServiceAsync; import org.ourproject.kune.platf.client.state.Session; import org.ourproject.kune.platf.client.utils.PrefetchUtilities; -import org.ourproject.kune.workspace.client.sitebar.Site; +import org.ourproject.kune.workspace.client.site.Site; import com.allen_sauer.gwt.log.client.Log; import com.calclab.suco.client.signal.Signal0; import com.calclab.suco.client.signal.Slot0; +import com.google.gwt.user.client.Command; +import com.google.gwt.user.client.DeferredCommand; import com.google.gwt.user.client.Timer; import com.google.gwt.user.client.Window; import com.google.gwt.user.client.WindowCloseListener; @@ -88,7 +90,11 @@ public void onSuccess(final InitDataDTO initData) { session.setInitData(initData); session.setCurrentUserInfo(initData.getUserInfo()); - RootPanel.get("kuneinitialcurtain").setVisible(false); + DeferredCommand.addCommand(new Command() { + public void execute() { + RootPanel.get("kuneinitialcurtain").setVisible(false); + } + }); } }); } Deleted: trunk/src/main/java/org/ourproject/kune/platf/client/dto/DoTranslationActionParams.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/dto/DoTranslationActionParams.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/DoTranslationActionParams.java 2008-09-08 00:55:39 UTC (rev 847) @@ -1,46 +0,0 @@ -/* - * - * Copyright (C) 2007-2008 The kune development team (see CREDITS for details) - * This file is part of kune. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - */ -package org.ourproject.kune.platf.client.dto; - -public class DoTranslationActionParams { - - String id; - String trKey; - String text; - - public DoTranslationActionParams(final String id, final String trKey, final String text) { - this.id = id; - this.trKey = trKey; - this.text = text; - } - - public String getId() { - return id; - } - - public String getTrKey() { - return trKey; - } - - public String getText() { - return text; - } - -} Deleted: trunk/src/main/java/org/ourproject/kune/platf/client/dto/GetTranslationActionParams.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/dto/GetTranslationActionParams.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/GetTranslationActionParams.java 2008-09-08 00:55:39 UTC (rev 847) @@ -1,40 +0,0 @@ -/* - * - * Copyright (C) 2007-2008 The kune development team (see CREDITS for details) - * This file is part of kune. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - */ -package org.ourproject.kune.platf.client.dto; - -public class GetTranslationActionParams { - - private final String language; - private final String text; - - public GetTranslationActionParams(final String language, final String text) { - this.language = language; - this.text = text; - } - - public String getLanguage() { - return language; - } - - public String getText() { - return text; - } - -} Deleted: trunk/src/main/java/org/ourproject/kune/platf/client/dto/RenameTokenActionParams.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/dto/RenameTokenActionParams.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/RenameTokenActionParams.java 2008-09-08 00:55:39 UTC (rev 847) @@ -1,40 +0,0 @@ -/* - * - * Copyright (C) 2007-2008 The kune development team (see CREDITS for details) - * This file is part of kune. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - */ -package org.ourproject.kune.platf.client.dto; - -public class RenameTokenActionParams { - - private final String token; - private final String newName; - - public RenameTokenActionParams(final String token, final String newName) { - this.token = token; - this.newName = newName; - } - - public String getToken() { - return token; - } - - public String getNewName() { - return newName; - } - -} Deleted: trunk/src/main/java/org/ourproject/kune/platf/client/dto/ShowSearcherActionParams.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/dto/ShowSearcherActionParams.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/dto/ShowSearcherActionParams.java 2008-09-08 00:55:39 UTC (rev 847) @@ -1,40 +0,0 @@ -/* - * - * Copyright (C) 2007-2008 The kune development team (see CREDITS for details) - * This file is part of kune. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - */ -package org.ourproject.kune.platf.client.dto; - -public class ShowSearcherActionParams { - - private final String termToSearch; - private final int typeOfSearch; - - public ShowSearcherActionParams(final String termToSearch, final int typeOfSearch) { - this.termToSearch = termToSearch; - this.typeOfSearch = typeOfSearch; - } - - public int getTypeOfSearch() { - return typeOfSearch; - } - - public String getTermToSearch() { - return termToSearch; - } - -} Modified: trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneErrorHandler.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneErrorHandler.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneErrorHandler.java 2008-09-08 00:55:39 UTC (rev 847) @@ -29,8 +29,8 @@ import org.ourproject.kune.platf.client.errors.UserMustBeLoggedException; import org.ourproject.kune.platf.client.state.Session; import org.ourproject.kune.platf.client.state.StateManager; -import org.ourproject.kune.workspace.client.sitebar.Site; -import org.ourproject.kune.workspace.client.ui.newtmp.skel.WorkspaceSkeleton; +import org.ourproject.kune.workspace.client.site.Site; +import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton; import com.allen_sauer.gwt.log.client.Log; import com.calclab.suco.client.provider.Provider; Modified: trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneModule.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneModule.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneModule.java 2008-09-08 00:55:39 UTC (rev 847) @@ -34,6 +34,9 @@ import org.ourproject.kune.workspace.client.editor.TextEditor; import org.ourproject.kune.workspace.client.editor.TextEditorPanel; import org.ourproject.kune.workspace.client.editor.TextEditorPresenter; +import org.ourproject.kune.workspace.client.entitylogo.EntityLogo; +import org.ourproject.kune.workspace.client.entitylogo.EntityLogoPanel; +import org.ourproject.kune.workspace.client.entitylogo.EntityLogoPresenter; import org.ourproject.kune.workspace.client.i18n.I18nTranslator; import org.ourproject.kune.workspace.client.i18n.I18nTranslatorPresenter; import org.ourproject.kune.workspace.client.i18n.I18nTranslatorView; @@ -46,6 +49,8 @@ import org.ourproject.kune.workspace.client.licensechoose.LicenseChoose; import org.ourproject.kune.workspace.client.licensechoose.LicenseChoosePanel; import org.ourproject.kune.workspace.client.licensechoose.LicenseChoosePresenter; +import org.ourproject.kune.workspace.client.licensefoot.EntityLicensePanel; +import org.ourproject.kune.workspace.client.licensefoot.EntityLicensePresenter; import org.ourproject.kune.workspace.client.newgroup.NewGroup; import org.ourproject.kune.workspace.client.newgroup.NewGroupPanel; import org.ourproject.kune.workspace.client.newgroup.NewGroupPresenter; @@ -60,17 +65,18 @@ import org.ourproject.kune.workspace.client.search.UserLiveSearcher; import org.ourproject.kune.workspace.client.search.UserLiveSearcherPanel; import org.ourproject.kune.workspace.client.search.UserLiveSearcherPresenter; -import org.ourproject.kune.workspace.client.sitebar.Site; -import org.ourproject.kune.workspace.client.sitebar.SiteToken; -import org.ourproject.kune.workspace.client.sitebar.login.SignIn; -import org.ourproject.kune.workspace.client.sitebar.login.SignInPanel; -import org.ourproject.kune.workspace.client.sitebar.login.SignInPresenter; -import org.ourproject.kune.workspace.client.sitebar.msg.SiteMessage; -import org.ourproject.kune.workspace.client.sitebar.msg.SiteMessagePanel; -import org.ourproject.kune.workspace.client.sitebar.msg.SiteMessagePresenter; -import org.ourproject.kune.workspace.client.sitebar.msg.SiteMessageView; -import org.ourproject.kune.workspace.client.sitebar.rpc.UserService; -import org.ourproject.kune.workspace.client.sitebar.rpc.UserServiceAsync; +import org.ourproject.kune.workspace.client.signin.SignIn; +import org.ourproject.kune.workspace.client.signin.SignInPanel; +import org.ourproject.kune.workspace.client.signin.SignInPresenter; +import org.ourproject.kune.workspace.client.site.Site; +import org.ourproject.kune.workspace.client.site.SiteToken; +import org.ourproject.kune.workspace.client.site.msg.SiteMessage; +import org.ourproject.kune.workspace.client.site.msg.SiteMessagePanel; +import org.ourproject.kune.workspace.client.site.msg.SiteMessagePresenter; +import org.ourproject.kune.workspace.client.site.msg.SiteMessageView; +import org.ourproject.kune.workspace.client.site.rpc.UserService; +import org.ourproject.kune.workspace.client.site.rpc.UserServiceAsync; +import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton; import org.ourproject.kune.workspace.client.socialnet.GroupMembersSummary; import org.ourproject.kune.workspace.client.socialnet.GroupMembersSummaryPanel; import org.ourproject.kune.workspace.client.socialnet.GroupMembersSummaryPresenter; @@ -86,14 +92,15 @@ import org.ourproject.kune.workspace.client.tags.TagsSummary; import org.ourproject.kune.workspace.client.tags.TagsSummaryPanel; import org.ourproject.kune.workspace.client.tags.TagsSummaryPresenter; -import org.ourproject.kune.workspace.client.ui.ctx.items.ContextNavigator; -import org.ourproject.kune.workspace.client.ui.ctx.items.ContextNavigatorPanel; -import org.ourproject.kune.workspace.client.ui.ctx.items.ContextNavigatorPresenter; -import org.ourproject.kune.workspace.client.ui.newtmp.entitylogo.EntityLogo; -import org.ourproject.kune.workspace.client.ui.newtmp.entitylogo.EntityLogoPanel; -import org.ourproject.kune.workspace.client.ui.newtmp.entitylogo.EntityLogoPresenter; -import org.ourproject.kune.workspace.client.ui.newtmp.licensefoot.EntityLicensePanel; -import org.ourproject.kune.workspace.client.ui.newtmp.licensefoot.EntityLicensePresenter; +import org.ourproject.kune.workspace.client.themes.WsThemePanel; +import org.ourproject.kune.workspace.client.themes.WsThemePresenter; +import org.ourproject.kune.workspace.client.title.EntitySubTitlePanel; +import org.ourproject.kune.workspace.client.title.EntitySubTitlePresenter; +import org.ourproject.kune.workspace.client.title.EntityTitlePanel; +import org.ourproject.kune.workspace.client.title.EntityTitlePresenter; +import org.ourproject.kune.workspace.client.ui.ctx.nav.ContextNavigator; +import org.ourproject.kune.workspace.client.ui.ctx.nav.ContextNavigatorPanel; +import org.ourproject.kune.workspace.client.ui.ctx.nav.ContextNavigatorPresenter; import org.ourproject.kune.workspace.client.ui.newtmp.sitebar.sitelogo.SiteLogo; import org.ourproject.kune.workspace.client.ui.newtmp.sitebar.sitelogo.SiteLogoPanel; import org.ourproject.kune.workspace.client.ui.newtmp.sitebar.sitelogo.SiteLogoPresenter; @@ -121,13 +128,6 @@ import org.ourproject.kune.workspace.client.ui.newtmp.sitebar.siteusermenu.SiteUserMenu; import org.ourproject.kune.workspace.client.ui.newtmp.sitebar.siteusermenu.SiteUserMenuPanel; import org.ourproject.kune.workspace.client.ui.newtmp.sitebar.siteusermenu.SiteUserMenuPresenter; -import org.ourproject.kune.workspace.client.ui.newtmp.skel.WorkspaceSkeleton; -import org.ourproject.kune.workspace.client.ui.newtmp.themes.WsThemePanel; -import org.ourproject.kune.workspace.client.ui.newtmp.themes.WsThemePresenter; -import org.ourproject.kune.workspace.client.ui.newtmp.title.EntitySubTitlePanel; -import org.ourproject.kune.workspace.client.ui.newtmp.title.EntitySubTitlePresenter; -import org.ourproject.kune.workspace.client.ui.newtmp.title.EntityTitlePanel; -import org.ourproject.kune.workspace.client.ui.newtmp.title.EntityTitlePresenter; import com.calclab.emiteuimodule.client.EmiteUIModule; import com.calclab.suco.client.container.Container; Modified: trunk/src/main/java/org/ourproject/kune/platf/client/state/ContentProviderDefault.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/state/ContentProviderDefault.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/state/ContentProviderDefault.java 2008-09-08 00:55:39 UTC (rev 847) @@ -25,7 +25,7 @@ import org.ourproject.kune.platf.client.dto.StateDTO; import org.ourproject.kune.platf.client.dto.StateToken; import org.ourproject.kune.platf.client.rpc.ContentServiceAsync; -import org.ourproject.kune.workspace.client.sitebar.Site; +import org.ourproject.kune.workspace.client.site.Site; import com.google.gwt.user.client.rpc.AsyncCallback; Modified: trunk/src/main/java/org/ourproject/kune/platf/client/state/SessionDefault.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/state/SessionDefault.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/state/SessionDefault.java 2008-09-08 00:55:39 UTC (rev 847) @@ -31,7 +31,7 @@ import org.ourproject.kune.platf.client.dto.StateDTO; import org.ourproject.kune.platf.client.dto.UserInfoDTO; import org.ourproject.kune.platf.client.rpc.AsyncCallbackSimple; -import org.ourproject.kune.workspace.client.sitebar.rpc.UserServiceAsync; +import org.ourproject.kune.workspace.client.site.rpc.UserServiceAsync; import com.allen_sauer.gwt.log.client.Log; import com.calclab.suco.client.provider.Provider; Modified: trunk/src/main/java/org/ourproject/kune/platf/client/state/StateManagerDefault.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/state/StateManagerDefault.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/state/StateManagerDefault.java 2008-09-08 00:55:39 UTC (rev 847) @@ -30,7 +30,7 @@ import org.ourproject.kune.platf.client.dto.StateToken; import org.ourproject.kune.platf.client.dto.UserInfoDTO; import org.ourproject.kune.platf.client.rpc.AsyncCallbackSimple; -import org.ourproject.kune.workspace.client.sitebar.Site; +import org.ourproject.kune.workspace.client.site.Site; import com.allen_sauer.gwt.log.client.Log; import com.calclab.suco.client.signal.Signal; Modified: trunk/src/main/java/org/ourproject/kune/platf/client/tool/AbstractClientTool.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/tool/AbstractClientTool.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/tool/AbstractClientTool.java 2008-09-08 00:55:39 UTC (rev 847) @@ -20,8 +20,8 @@ package org.ourproject.kune.platf.client.tool; -import org.ourproject.kune.workspace.client.ui.newtmp.skel.WorkspaceSkeleton; -import org.ourproject.kune.workspace.client.ui.newtmp.themes.WsThemePresenter; +import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton; +import org.ourproject.kune.workspace.client.themes.WsThemePresenter; public abstract class AbstractClientTool implements ClientTool { Modified: trunk/src/main/java/org/ourproject/kune/platf/client/tool/ToolSelectorItemPanel.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/tool/ToolSelectorItemPanel.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/tool/ToolSelectorItemPanel.java 2008-09-08 00:55:39 UTC (rev 847) @@ -1,8 +1,8 @@ package org.ourproject.kune.platf.client.tool; import org.ourproject.kune.platf.client.ui.RoundedPanel; -import org.ourproject.kune.workspace.client.ui.newtmp.skel.WorkspaceSkeleton; -import org.ourproject.kune.workspace.client.ui.newtmp.themes.WsTheme; +import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton; +import org.ourproject.kune.workspace.client.themes.WsTheme; import com.google.gwt.user.client.Event; import com.google.gwt.user.client.ui.Hyperlink; Modified: trunk/src/main/java/org/ourproject/kune/platf/client/tool/ToolSelectorItemPresenter.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/tool/ToolSelectorItemPresenter.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/tool/ToolSelectorItemPresenter.java 2008-09-08 00:55:39 UTC (rev 847) @@ -2,8 +2,8 @@ import org.ourproject.kune.platf.client.View; import org.ourproject.kune.platf.client.dto.StateToken; -import org.ourproject.kune.workspace.client.ui.newtmp.themes.WsTheme; -import org.ourproject.kune.workspace.client.ui.newtmp.themes.WsThemePresenter; +import org.ourproject.kune.workspace.client.themes.WsTheme; +import org.ourproject.kune.workspace.client.themes.WsThemePresenter; import com.calclab.suco.client.signal.Slot2; Modified: trunk/src/main/java/org/ourproject/kune/platf/client/tool/ToolSelectorItemView.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/tool/ToolSelectorItemView.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/tool/ToolSelectorItemView.java 2008-09-08 00:55:39 UTC (rev 847) @@ -1,7 +1,7 @@ package org.ourproject.kune.platf.client.tool; import org.ourproject.kune.platf.client.View; -import org.ourproject.kune.workspace.client.ui.newtmp.themes.WsTheme; +import org.ourproject.kune.workspace.client.themes.WsTheme; public interface ToolSelectorItemView extends View { Modified: trunk/src/main/java/org/ourproject/kune/platf/client/tool/ToolSelectorPresenter.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/tool/ToolSelectorPresenter.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/tool/ToolSelectorPresenter.java 2008-09-08 00:55:39 UTC (rev 847) @@ -3,7 +3,7 @@ import java.util.HashMap; import org.ourproject.kune.platf.client.state.StateManager; -import org.ourproject.kune.workspace.client.ui.newtmp.themes.WsThemePresenter; +import org.ourproject.kune.workspace.client.themes.WsThemePresenter; import com.calclab.suco.client.signal.Slot2; Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/DropDownPanel.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/ui/DropDownPanel.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/DropDownPanel.java 2008-09-08 00:55:39 UTC (rev 847) @@ -20,7 +20,7 @@ package org.ourproject.kune.platf.client.ui; import org.ourproject.kune.platf.client.services.Images; -import org.ourproject.kune.workspace.client.ui.newtmp.themes.WsTheme; +import org.ourproject.kune.workspace.client.themes.WsTheme; import com.google.gwt.user.client.ui.ClickListener; import com.google.gwt.user.client.ui.Composite; Deleted: trunk/src/main/java/org/ourproject/kune/platf/client/ui/gwtcustom/CustomHorizontalSplitPanel.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/ui/gwtcustom/CustomHorizontalSplitPanel.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/gwtcustom/CustomHorizontalSplitPanel.java 2008-09-08 00:55:39 UTC (rev 847) @@ -1,433 +0,0 @@ -/* - * - * Copyright (C) 2007-2008 The kune development team (see CREDITS for details) - * This file is part of kune. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - */ -/* - * Copyright 2008 Google Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); you may not - * use this file except in compliance with the License. You may obtain a copy of - * the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the - * License for the specific language governing permissions and limitations under - * the License. - */ -package org.ourproject.kune.platf.client.ui.gwtcustom; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.user.client.Command; -import com.google.gwt.user.client.DOM; -import com.google.gwt.user.client.DeferredCommand; -import com.google.gwt.user.client.Element; -import com.google.gwt.user.client.Timer; -import com.google.gwt.user.client.ui.AbstractImagePrototype; -import com.google.gwt.user.client.ui.HorizontalSplitPanelImages; -import com.google.gwt.user.client.ui.UIObject; -import com.google.gwt.user.client.ui.Widget; - -/** - * A panel that arranges two widgets in a single horizontal row and allows the - * user to interactively change the proportion of the width dedicated to each of - * the two widgets. Widgets contained within a <code>HorizontalSplitPanel</code> - * will be automatically decorated with scrollbars when necessary. - * - * <p> - * <img class='gallery' src='HorizontalSplitPanel.png'/> - * </p> - * - * <h3>CSS Style Rules</h3> - * <ul class='css'> - * <li>.gwt-HorizontalSplitPanel { the panel itself }</li> - * <li>.gwt-HorizontalSplitPanel hsplitter { the splitter }</li> - * </ul> - */ -public class CustomHorizontalSplitPanel extends CustomSplitPanel { - - /** - * The standard implementation for horizontal split panels. - */ - private static class Impl { - private static void expandToFitParentHorizontally(final Element elem) { - addAbsolutePositoning(elem); - final String zeroSize = "0px"; - setTop(elem, zeroSize); - setBottom(elem, zeroSize); - } - - protected CustomHorizontalSplitPanel panel; - - public void init(final CustomHorizontalSplitPanel panel) { - this.panel = panel; - - DOM.setStyleAttribute(panel.getElement(), "position", "relative"); - - final Element rightElem = panel.getElement(RIGHT); - - expandToFitParentHorizontally(panel.getElement(LEFT)); - expandToFitParentHorizontally(rightElem); - expandToFitParentHorizontally(panel.getSplitElement()); - - expandToFitParentUsingCssOffsets(panel.container); - - // Snap the right wrapper to the right side. - setRight(rightElem, "0px"); - } - - public void onAttach() { - } - - public void onDetach() { - } - - public void onSplitResize(final int px) { - setSplitPosition(px); - } - - public void setSplitPosition(int px) { - final Element splitElem = panel.getSplitElement(); - - final int rootElemWidth = getOffsetWidth(panel.container); - final int splitElemWidth = getOffsetWidth(splitElem); - - // This represents an invalid state where layout is incomplete. This - // typically happens before DOM attachment, but I leave it here as a - // precaution because negative width/height style attributes produce - // errors on IE. - if (rootElemWidth < splitElemWidth) { - return; - } - - // Compute the new right side width. - int newRightWidth = rootElemWidth - px - splitElemWidth; - - // Constrain the dragging to the physical size of the panel. - if (px < 0) { - px = 0; - newRightWidth = rootElemWidth - splitElemWidth; - } else if (newRightWidth < 0) { - px = rootElemWidth - splitElemWidth; - newRightWidth = 0; - } - - final Element rightElem = panel.getElement(RIGHT); - - // Set the width of the left side. - setWidth(panel.getElement(LEFT), px + "px"); - - // Move the splitter to the right edge of the left element. - setLeft(splitElem, px + "px"); - - // Move the right element to the right of the splitter. - setLeft(rightElem, px + splitElemWidth + "px"); - - updateRightWidth(rightElem, newRightWidth); - } - - public void updateRightWidth(final Element rightElem, final int newRightWidth) { - // Update is handled by CSS. - } - } - - /** - * The IE6 implementation for horizontal split panels. - */ - @SuppressWarnings("unused") - private static class ImplIE6 extends Impl { - - private boolean isResizeInProgress = false; - - private int splitPosition = 0; - - @Override - public void init(final CustomHorizontalSplitPanel panel) { - this.panel = panel; - - final Element elem = panel.getElement(); - // Prevents inherited text-align settings from interfering with the - // panel's layout. - DOM.setStyleAttribute(elem, "textAlign", "left"); - DOM.setStyleAttribute(elem, "position", "relative"); - - /* - * Technically, these are snapped to the top and bottom, but IE - * doesn't provide a reliable way to make that happen, so a resize - * listener is wired up to control the height of these elements. - */ - addAbsolutePositoning(panel.getElement(LEFT)); - addAbsolutePositoning(panel.getElement(RIGHT)); - addAbsolutePositoning(panel.getSplitElement()); - - expandToFitParentUsingPercentages(panel.container); - } - - @Override - public void onAttach() { - addResizeListener(panel.container); - onResize(); - } - - @Override - public void onDetach() { - DOM.setElementAttribute(panel.container, "onresize", null); - } - - @Override - public void onSplitResize(final int px) { - final int resizeUpdatePeriod = 20; // ms - if (!isResizeInProgress) { - isResizeInProgress = true; - new Timer() { - @Override - public void run() { - setSplitPosition(splitPosition); - isResizeInProgress = false; - } - }.schedule(resizeUpdatePeriod); - } - splitPosition = px; - } - - @Override - public void updateRightWidth(final Element rightElem, final int newRightWidth) { - setWidth(rightElem, newRightWidth + "px"); - } - - private native void addResizeListener(Element container) /*-{ - var self = this; - container.onresize = function() { - [email protected]$ImplIE6::onResize()(); - }; - }-*/; - - private void onResize() { - final Element leftElem = panel.getElement(LEFT); - final Element rightElem = panel.getElement(RIGHT); - - final String height = getOffsetHeight(panel.container) + "px"; - setHeight(rightElem, height); - setHeight(panel.getSplitElement(), height); - setHeight(leftElem, height); - setSplitPosition(getOffsetWidth(leftElem)); - } - } - - /** - * The Safari implementation which owes its existence entirely to a single - * WebKit bug: http://bugs.webkit.org/show_bug.cgi?id=9137. - */ - @SuppressWarnings("unused") - private static class ImplSafari extends Impl { - @Override - public void init(final CustomHorizontalSplitPanel panel) { - this.panel = panel; - final String fullSize = "100%"; - super.init(panel); - setHeight(panel.container, fullSize); - setHeight(panel.getElement(LEFT), fullSize); - setHeight(panel.getElement(RIGHT), fullSize); - setHeight(panel.getSplitElement(), fullSize); - } - } - - /** - * Constant makes for readable calls to {@link #getElement(int)} and - * {@link #getWidget(int)}. - */ - private static final int LEFT = 0; - - /** - * Constant makes for readable calls to {@link #getElement(int)} and - * {@link #getWidget(int)}. - */ - private static final int RIGHT = 1; - - // A style-free element to serve as the root container. - private final Element container; - - private final Impl impl = GWT.create(Impl.class); - - /** - * If the split position is set while the split panel is not attached, save - * it here to be applied when the panel is attached to the document. - */ - private String lastSplitPosition = "50%"; - - private int initialThumbPos; - - private int initialLeftWidth; - - public CustomHorizontalSplitPanel() { - this(GWT.<HorizontalSplitPanelImages> create(HorizontalSplitPanelImages.class)); - } - - /** - * Creates an empty horizontal split panel. - */ - public CustomHorizontalSplitPanel(final HorizontalSplitPanelImages images) { - super(DOM.createDiv(), DOM.createDiv(), preventBoxStyles(DOM.createDiv()), preventBoxStyles(DOM.createDiv())); - - container = preventBoxStyles(DOM.createDiv()); - - buildDOM(images.horizontalSplitPanelThumb()); - - setStyleName("gwt-HorizontalSplitPanel"); - - impl.init(this); - - // By default, the panel will fill its parent vertically and - // horizontally. - // The horizontal case is covered by the fact that the top level div is - // block display. - setHeight("100%"); - } - - /** - * Gets the widget in the left side of the panel. - * - * @return the widget, <code>null</code> if there is not one. - */ - public final Widget getLeftWidget() { - return getWidget(LEFT); - } - - /** - * Gets the widget in the right side of the panel. - * - * @return the widget, <code>null</code> if there is not one. - */ - public final Widget getRightWidget() { - return getWidget(RIGHT); - } - - /** - * Sets the widget in the left side of the panel. - * - * @param w - * the widget - */ - public final void setLeftWidget(final Widget w) { - setWidget(LEFT, w); - } - - /** - * Sets the widget in the right side of the panel. - * - * @param w - * the widget - */ - public final void setRightWidget(final Widget w) { - setWidget(RIGHT, w); - } - - @Override - public final void setSplitPosition(final String pos) { - lastSplitPosition = pos; - final Element leftElem = getElement(LEFT); - setWidth(leftElem, pos); - impl.setSplitPosition(getOffsetWidth(leftElem)); - } - - public int getLeftWidgetAvailableWidth() { - return DOM.getAbsoluteLeft(getSplitElement()) - getAbsoluteLeft() - 1; - } - - public int getRightWidgetAvailableWidth() { - int splitRightEdge = getLeftWidgetAvailableWidth() - + DOM.getElementPropertyInt(getSplitElement(), "offsetWidth"); - return getOffsetWidth() - splitRightEdge - 1; - } - - /** - * <b>Affected Elements:</b> - * <ul> - * <li>-splitter = the container containing the splitter element.</li> - * <li>-right = the container on the right side of the splitter.</li> - * <li>-left = the container on the left side of the splitter.</li> - * </ul> - * - * @see UIObject#onEnsureDebugId(String) - */ - @Override - protected void onEnsureDebugId(final String baseID) { - super.onEnsureDebugId(baseID); - ensureDebugId(getElement(LEFT), baseID, "left"); - ensureDebugId(getElement(RIGHT), baseID, "right"); - } - - @Override - protected void onLoad() { - impl.onAttach(); - - /* - * If the split position has been changed while detached, apply the - * change. Set the position realizing that it might not work until after - * layout runs. This first call is simply to try to avoid a jitter - * effect if possible. - */ - setSplitPosition(lastSplitPosition); - DeferredCommand.addCommand(new Command() { - public void execute() { - setSplitPosition(lastSplitPosition); - } - }); - } - - @Override - protected void onUnload() { - impl.onDetach(); - } - - @Override - final void onSplitterResize(final int x, final int y) { - impl.onSplitResize(initialLeftWidth + x - initialThumbPos); - } - - @Override - final void onSplitterResizeStarted(final int x, final int y) { - initialThumbPos = x; - initialLeftWidth = getOffsetWidth(getElement(LEFT)); - } - - private void buildDOM(final AbstractImagePrototype thumbImage) { - final Element leftDiv = getElement(LEFT); - final Element rightDiv = getElement(RIGHT); - final Element splitDiv = getSplitElement(); - - DOM.appendChild(getElement(), container); - - DOM.appendChild(container, leftDiv); - DOM.appendChild(container, splitDiv); - DOM.appendChild(container, rightDiv); - - /* - * Sadly, this is the only way I've found to get vertical centering in - * this case. The usually CSS hacks (display: table-cell, - * vertical-align: middle) don't work in an absolute positioned DIV. - */ - DOM.setInnerHTML(splitDiv, "<table class='hsplitter' height='100%' cellpadding='0' " - + "cellspacing='0'><tr><td align='center' valign='middle'>" + thumbImage.getHTML()); - - addScrolling(leftDiv); - addScrolling(rightDiv); - } -} Deleted: trunk/src/main/java/org/ourproject/kune/platf/client/ui/gwtcustom/CustomSplitPanel.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/ui/gwtcustom/CustomSplitPanel.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/gwtcustom/CustomSplitPanel.java 2008-09-08 00:55:39 UTC (rev 847) @@ -1,514 +0,0 @@ -/* - * - * Copyright (C) 2007-2008 The kune development team (see CREDITS for details) - * This file is part of kune. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - */ -/* - * Copyright 2008 Google Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); you may not - * use this file except in compliance with the License. You may obtain a copy of - * the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the - * License for the specific language governing permissions and limitations under - * the License. - */ -package org.ourproject.kune.platf.client.ui.gwtcustom; - -import java.util.Iterator; - -import org.ourproject.kune.platf.client.ui.SplitterListener; -import org.ourproject.kune.platf.client.ui.SplitterListenerCollection; - -import com.google.gwt.user.client.DOM; -import com.google.gwt.user.client.Element; -import com.google.gwt.user.client.Event; -import com.google.gwt.user.client.ui.ChangeListener; -import com.google.gwt.user.client.ui.ChangeListenerCollection; -import com.google.gwt.user.client.ui.HorizontalSplitPanel; -import com.google.gwt.user.client.ui.Panel; -import com.google.gwt.user.client.ui.UIObject; -import com.google.gwt.user.client.ui.VerticalSplitPanel; -import com.google.gwt.user.client.ui.Widget; - -/** - * Abstract base class for {@link HorizontalSplitPanel} and - * {@link VerticalSplitPanel}. - */ -abstract class CustomSplitPanel extends Panel { - - /** - * Sets an elements positioning to absolute. - * - * @param elem - * the element - */ - static void addAbsolutePositoning(final Element elem) { - DOM.setStyleAttribute(elem, "position", "absolute"); - } - - /** - * Adds clipping to an element. - * - * @param elem - * the element - */ - static void addClipping(final Element elem) { - DOM.setStyleAttribute(elem, "overflow", "hidden"); - } - - /** - * Adds as-needed scrolling to an element. - * - * @param elem - * the element - */ - static void addScrolling(final Element elem) { - DOM.setStyleAttribute(elem, "overflow", "auto"); - } - - /** - * Sizes and element to consume the full area of its parent using the CSS - * properties left, right, top, and bottom. This method is used for all - * browsers except IE6/7. - * - * @param elem - * the element - */ - static void expandToFitParentUsingCssOffsets(final Element elem) { - String zeroSize = "0px"; - - addAbsolutePositoning(elem); - setLeft(elem, zeroSize); - setRight(elem, zeroSize); - setTop(elem, zeroSize); - setBottom(elem, zeroSize); - } - - /** - * Sizes an element to consume the full areas of its parent using 100% width - * and height. This method is used on IE6/7 where CSS offsets don't work - * reliably. - * - * @param elem - * the element - */ - static void expandToFitParentUsingPercentages(final Element elem) { - String zeroSize = "0px"; - String fullSize = "100%"; - - addAbsolutePositoning(elem); - setTop(elem, zeroSize); - setLeft(elem, zeroSize); - setWidth(elem, fullSize); - setHeight(elem, fullSize); - } - - /** - * Returns the offsetHeight element property. - * - * @param elem - * the element - * @return the offsetHeight property - */ - static int getOffsetHeight(final Element elem) { - return DOM.getElementPropertyInt(elem, "offsetHeight"); - } - - /** - * Returns the offsetWidth element property. - * - * @param elem - * the element - * @return the offsetWidth property - */ - static int getOffsetWidth(final Element elem) { - return DOM.getElementPropertyInt(elem, "offsetWidth"); - } - - /** - * Adds zero or none CSS values for padding, margin and border to prevent - * stylesheet overrides. Returns the element for convenience to support - * builder pattern. - * - * @param elem - * the element - * @return the element - */ - static Element preventBoxStyles(final Element elem) { - DOM.setIntStyleAttribute(elem, "padding", 0); - DOM.setIntStyleAttribute(elem, "margin", 0); - DOM.setStyleAttribute(elem, "border", "none"); - return elem; - } - - /** - * Convenience method to set bottom offset of an element. - * - * @param elem - * the element - * @param size - * a CSS length value for bottom - */ - static void setBottom(final Element elem, final String size) { - DOM.setStyleAttribute(elem, "bottom", size); - } - - /** - * Sets the elements css class name. - * - * @param elem - * the element - * @param className - * the class name - */ - static void setClassname(final Element elem, final String className) { - DOM.setElementProperty(elem, "className", className); - } - - /** - * Convenience method to set the height of an element. - * - * @param elem - * the element - * @param height - * a CSS length value for the height - */ - static void setHeight(final Element elem, final String height) { - DOM.setStyleAttribute(elem, "height", height); - } - - /** - * Convenience method to set the left offset of an element. - * - * @param elem - * the element - * @param left - * a CSS length value for left - */ - static void setLeft(final Element elem, final String left) { - DOM.setStyleAttribute(elem, "left", left); - } - - /** - * Convenience method to set the right offset of an element. - * - * @param elem - * the element - * @param right - * a CSS length value for right - */ - static void setRight(final Element elem, final String right) { - DOM.setStyleAttribute(elem, "right", right); - } - - /** - * Convenience method to set the top offset of an element. - * - * @param elem - * the element - * @param top - * a CSS length value for top - */ - static void setTop(final Element elem, final String top) { - DOM.setStyleAttribute(elem, "top", top); - } - - /** - * Convenience method to set the width of an element. - * - * @param elem - * the element - * @param width - * a CSS length value for the width - */ - static void setWidth(final Element elem, final String width) { - DOM.setStyleAttribute(elem, "width", width); - } - - // The enclosed widgets. - private final Widget[] widgets = new Widget[2]; - - // The elements containing the widgets. - private final Element[] elements = new Element[2]; - - // The element that acts as the splitter. - private final Element splitElem; - - // Indicates whether drag resizing is active. - private boolean isResizing = false; - - private ChangeListenerCollection changeListeners; - - private SplitterListenerCollection splitterListeners; - - /** - * Initializes the split panel. - * - * @param mainElem - * the root element for the split panel - * @param splitElem - * the element that acts as the splitter - * @param headElem - * the element to contain the top or left most widget - * @param tailElem - * the element to contain the bottom or right most widget - */ - CustomSplitPanel(final Element mainElem, final Element splitElem, final Element headElem, final Element tailElem) { - setElement(mainElem); - this.splitElem = splitElem; - elements[0] = headElem; - elements[1] = tailElem; - sinkEvents(Event.MOUSEEVENTS); - } - - @Override - public void add(final Widget w) { - if (getWidget(0) == null) { - setWidget(0, w); - } else if (getWidget(1) == null) { - setWidget(1, w); - } else { - throw new IllegalStateException("A Splitter can only contain two Widgets."); - } - } - - /** - * Indicates whether the split panel is being resized. - * - * @return <code>true</code> if the user is dragging the splitter, - * <code>false</code> otherwise - */ - public boolean isResizing() { - return isResizing; - } - - public Iterator<Widget> iterator() { - return WidgetIterators.createWidgetIterator(this, widgets); - } - - @Override - public void onBrowserEvent(final Event event) { - switch (DOM.eventGetType(event)) { - - case Event.ONMOUSEDOWN: { - Element target = DOM.eventGetTarget(event); - if (DOM.isOrHasChild(splitElem, target)) { - startResizingFrom(DOM.eventGetClientX(event) - getAbsoluteLeft(), DOM.eventGetClientY(event) - - getAbsoluteTop()); - DOM.setCapture(getElement()); - DOM.eventPreventDefault(event); - splitterListeners.fireStartResizing(this); - } - break; - } - - case Event.ONMOUSEUP: { - DOM.releaseCapture(getElement()); - if (isResizing) { - changeListeners.fireChange(this); - splitterListeners.fireStopResizing(this); - } - stopResizing(); - break; - } - - case Event.ONMOUSEMOVE: { - if (isResizing()) { - assert DOM.getCaptureElement() != null; - onSplitterResize(DOM.eventGetClientX(event) - getAbsoluteLeft(), DOM.eventGetClientY(event) - - getAbsoluteTop()); - DOM.eventPreventDefault(event); - changeListeners.fireChange(this); - } - break; - } - - } - } - - public void addChangeListener(final ChangeListener listener) { - if (changeListeners == null) { - changeListeners = new ChangeListenerCollection(); - } - changeListeners.add(listener); - } - - public void removeChangeListener(final ChangeListener listener) { - if (changeListeners != null) { - changeListeners.remove(listener); - } - } - - public void addSplitterListener(final SplitterListener listener) { - if (splitterListeners == null) { - splitterListeners = new SplitterListenerCollection(); - } - splitterListeners.add(listener); - } - - public void removeSplitterListener(final SplitterListener listener) { - if (splitterListeners != null) { - splitterListeners.remove(listener); - } - } - - @Override - public boolean remove(final Widget widget) { - if (widgets[0] == widget) { - setWidget(0, null); - return true; - } else if (widgets[1] == widget) { - setWidget(1, null); - return true; - } - return false; - } - - /** - * Moves the position of the splitter. - * - * @param size - * the new size of the left region in CSS units (e.g. "10px", - * "1em") - */ - public abstract void setSplitPosition(String size); - - /** - * Gets the content element for the given index. - * - * @param index - * the index of the element, only 0 and 1 are valid. - * @return the element - */ - protected Element getElement(final int index) { - return elements[index]; - } - - /** - * Gets the element that is acting as the splitter. - * - * @return the element - */ - protected Element getSplitElement() { - return splitElem; - } - - /** - * Gets one of the contained widgets. - * - * @param index - * the index of the widget, only 0 and 1 are valid. - * @return the widget - */ - protected Widget getWidget(final int index) { - return widgets[index]; - } - - /** - * <b>Affected Elements:</b> - * <ul> - * <li>-splitter = the container containing the splitter element.</li> - * </ul> - * - * @see UIObject#onEnsureDebugId(String) - */ - @Override - protected void onEnsureDebugId(final String baseID) { - super.onEnsureDebugId(baseID); - ensureDebugId(splitElem, baseID, "splitter"); - } - - /** - * Sets one of the contained widgets. - * - * @param index - * the index, only 0 and 1 are valid - * @param w - * the widget - */ - protected final void setWidget(final int index, final Widget w) { - Widget oldWidget = widgets[index]; - - // Validate. - if (oldWidget == w) { - return; - } - - // Detach the new child. - if (w != null) { - w.removeFromParent(); - } - - // Remove the old child. - if (oldWidget != null) { - // Orphan old. - orphan(oldWidget); - // Physical detach old. - DOM.removeChild(elements[index], oldWidget.getElement()); - } - - // Logical detach old / attach new. - widgets[index] = w; - - if (w != null) { - // Physical attach new. - DOM.appendChild(elements[index], w.getElement()); - - // Adopt new. - adopt(w); - } - } - - /** - * Called on each mouse drag event as the user is dragging the splitter. - * - * @param x - * the x coordinate of the mouse relative to the panel's - * extent - * @param y - * the y coordinate of the mosue relative to the panel's - * extent - */ - abstract void onSplitterResize(int x, int y); - - /** - * Called when the user starts dragging the splitter. - * - * @param x - * the x coordinate of the mouse relative to the panel's - * extent - * @param y - * the y coordinate of the mouse relative to the panel's - * extent - */ - abstract void onSplitterResizeStarted(int x, int y); - - private void startResizingFrom(final int x, final int y) { - isResizing = true; - onSplitterResizeStarted(x, y); - } - - private void stopResizing() { - isResizing = false; - } -} Deleted: trunk/src/main/java/org/ourproject/kune/platf/client/ui/gwtcustom/CustomStackPanel.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/ui/gwtcustom/CustomStackPanel.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/gwtcustom/CustomStackPanel.java 2008-09-08 00:55:39 UTC (rev 847) @@ -1,364 +0,0 @@ -/* - * - * Copyright (C) 2007-2008 The kune development team (see CREDITS for details) - * This file is part of kune. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - */ -/* - * Copyright 2007 Google Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); you may not - * use this file except in compliance with the License. You may obtain a copy of - * the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the - * License for the specific language governing permissions and limitations under - * the License. - * - * Modified by kune team, to permit also close the current stack item - * - */ -package org.ourproject.kune.platf.client.ui.gwtcustom; - -import com.google.gwt.user.client.DOM; -import com.google.gwt.user.client.Element; -import com.google.gwt.user.client.Event; -import com.google.gwt.user.client.ui.ComplexPanel; -import com.google.gwt.user.client.ui.UIObject; -import com.google.gwt.user.client.ui.Widget; - -/** - * A panel that stacks its children vertically, displaying only one at a time, - * with a header for each child which the user can click to display. - * <p> - * <img class='gallery' src='StackPanel.png'/> - * </p> - * <h3>CSS Style Rules</h3> - * <ul class='css'> - * <li>.gwt-StackPanel { the panel itself }</li> - * <li>.gwt-StackPanel .gwt-StackPanelItem { unselected items }</li> - * <li>.gwt-StackPanel .gwt-StackPanelItem-selected { selected items }</li> - * <li>.gwt-StackPanel .gwt-StackPanelContent { the wrapper around the contents - * of the item }</li> - * </ul> - * <p> - * <h3>Example</h3> - * {@example com.google.gwt.examples.StackPanelExample} - * </p> - */ -public class CustomStackPanel extends ComplexPanel { - - private final Element body; - private int visibleStack = -1; - private boolean isVisibleStack = true; - - /** - * Creates an empty stack panel. - */ - public CustomStackPanel() { - Element table = DOM.createTable(); - setElement(table); - - body = DOM.createTBody(); - DOM.appendChild(table, body); - DOM.setElementPropertyInt(table, "cellSpacing", 0); - DOM.setElementPropertyInt(table, "cellPadding", 0); - - DOM.sinkEvents(table, Event.ONCLICK); - setStyleName("gwt-StackPanel"); - } - - /** - * Adds a new child with the given widget. - * - * @param w - * the widget to be added - */ - @Override - public void add(final Widget w) { - insert(w, getWidgetCount()); - } - - /** - * Adds a new child with the given widget and header. - * - * @param w - * the widget to be added - * @param stackText - * the header text associated with this widget - */ - public void add(final Widget w, final String stackText) { - add(w, stackText, false); - } - - /** - * Adds a new child with the given widget and header, optionally - * interpreting the header as HTML. - * - * @param w - * the widget to be added - * @param stackText - * the header text associated with this widget - * @param asHTML - * <code>true</code> to treat the specified text as HTML - */ - public void add(final Widget w, final String stackText, final boolean asHTML) { - add(w); - setStackText(getWidgetCount() - 1, stackText, asHTML); - } - - /** - * Gets the currently selected child index. - * - * @return selected child - */ - public int getSelectedIndex() { - return visibleStack; - } - - /** - * Inserts a widget before the specified index. - * - * @param w - * the widget to be inserted - * @param beforeIndex - * the index before which it will be inserted - * @throws IndexOutOfBoundsException - * if <code>beforeIndex</code> is out of range - */ - public void insert(final Widget w, int beforeIndex) { - // header - Element trh = DOM.createTR(); - Element tdh = DOM.createTD(); - DOM.appendChild(trh, tdh); - - // body - Element trb = DOM.createTR(); - Element tdb = DOM.createTD(); - DOM.appendChild(trb, tdb); - - // DOM indices are 2x logical indices; 2 dom elements per stack item - beforeIndex = adjustIndex(w, beforeIndex); - int effectiveIndex = beforeIndex * 2; - - // this ordering puts the body below the header - DOM.insertChild(body, trb, effectiveIndex); - DOM.insertChild(body, trh, effectiveIndex); - - // header styling - setStyleName(tdh, "gwt-StackPanelItem", true); - DOM.setElementPropertyInt(tdh, "__owner", hashCode()); - DOM.setElementProperty(tdh, "height", "1px"); - - // body styling - setStyleName(tdb, "gwt-StackPanelContent", true); - DOM.setElementProperty(tdb, "height", "100%"); - DOM.setElementProperty(tdb, "vAlign", "top"); - - // Now that the DOM is connected, call insert (this ensures that - // onLoad() is - // not fired until the child widget is attached to the DOM). - super.insert(w, tdb, beforeIndex, false); - - // Update indices of all elements to the right. - updateIndicesFrom(beforeIndex); - - // Correct visible stack for new location. - if (visibleStack == -1) { - showStack(0); - } else { - setStackVisible(beforeIndex, false); - if (visibleStack >= beforeIndex) { - ++visibleStack; - } - } - } - - @Override - public void onBrowserEvent(final Event event) { - if (DOM.eventGetType(event) == Event.ONCLICK) { - Element target = DOM.eventGetTarget(event); - int index = findDividerIndex(target); - if (index != -1) { - showStack(index); - } - } - } - - @Override - public boolean remove(final int index) { - return remove(getWidget(index), index); - } - - @Override - public boolean remove(final Widget child) { - return remove(child, getWidgetIndex(child)); - } - - /** - * Sets the text associated with a child by its index. - * - * @param index - * the index of the child whose text is to be set - * @param text - * the text to be associated with it - */ - public void setStackText(final int index, final String text) { - setStackText(index, text, false); - } - - /** - * Sets the text associated with a child by its index. - * - * @param index - * the index of the child whose text is to be set - * @param text - * the text to be associated with it - * @param asHTML - * <code>true</code> to treat the specified text as HTML - */ - public void setStackText(final int index, final String text, final boolean asHTML) { - if (index >= getWidgetCount()) { - return; - } - - Element td = DOM.getChild(DOM.getChild(body, index * 2), 0); - if (asHTML) { - DOM.setInnerHTML(td, text); - } else { - DOM.setInnerText(td, text); - } - } - - /** - * Shows the widget at the specified child index. - * - * @param index - * the index of the child to be shown - */ - public void showStack(final int index) { - if (index >= getWidgetCount()) { - return; - } - - if (visibleStack != index) { - if (visibleStack >= 0) { - setStackVisible(visibleStack, false); - } - visibleStack = index; - setStackVisible(visibleStack, true); - isVisibleStack = true; - } else { - setStackVisible(visibleStack, !isVisibleStack); - isVisibleStack = !isVisibleStack; - } - } - - /** - * <b>Affected Elements:</b> - * <ul> - * <li>-text# = The element around the header at the specified index.</li> - * <li>-content# = The element around the body at the specified index.</li> - * </ul> - * - * @see UIObject#onEnsureDebugId(String) - */ - @Override - protected void onEnsureDebugId(final String baseID) { - super.onEnsureDebugId(baseID); - - int numHeaders = DOM.getChildCount(body) / 2; - for (int i = 0; i < numHeaders; i++) { - Element headerElem = DOM.getFirstChild(DOM.getChild(body, 2 * i)); - Element bodyElem = DOM.getFirstChild(DOM.getChild(body, 2 * i + 1)); - ensureDebugId(headerElem, baseID, "text" + i); - ensureDebugId(bodyElem, baseID, "content" + i); - } - } - - private int findDividerIndex(Element elem) { - while (elem != getElement()) { - String expando = DOM.getElementProperty(elem, "__index"); - if (expando != null) { - // Make sure it belongs to me! - int ownerHash = DOM.getElementPropertyInt(elem, "__owner"); - if (ownerHash == hashCode()) { - // Yes, it's mine. - return Integer.parseInt(expando); - } else { - // It must belong to some nested StackPanel. - return -1; - } - } - elem = DOM.getParent(elem); - } - return -1; - } - - private boolean remove(final Widget child, final int index) { - // Make sure to call this before disconnecting the DOM. - boolean removed = super.remove(child); - if (removed) { - // Calculate which internal table elements to remove. - int rowIndex = 2 * index; - Element tr = DOM.getChild(body, rowIndex); - DOM.removeChild(body, tr); - tr = DOM.getChild(body, rowIndex); - DOM.removeChild(body, tr); - - // Correct visible stack for new location. - if (visibleStack == index) { - visibleStack = -1; - } else if (visibleStack > index) { - --visibleStack; - } - - // Update indices of all elements to the right. - updateIndicesFrom(rowIndex); - } - return removed; - } - - private void setStackVisible(final int index, final boolean visible) { - // Get the first table row containing the widget's selector item. - Element tr = DOM.getChild(body, (index * 2)); - if (tr == null) { - return; - } - - // Style the stack selector item. - Element td = DOM.getFirstChild(tr); - setStyleName(td, "gwt-StackPanelItem-selected", visible); - - // Show/hide the contained widget. - tr = DOM.getChild(body, index * 2 + 1); - UIObject.setVisible(tr, visible); - getWidget(index).setVisible(visible); - } - - private void updateIndicesFrom(final int beforeIndex) { - for (int i = beforeIndex, c = getWidgetCount(); i < c; ++i) { - Element childTR = DOM.getChild(body, i * 2); - Element childTD = DOM.getFirstChild(childTR); - DOM.setElementPropertyInt(childTD, "__index", i); - } - } - -} Deleted: trunk/src/main/java/org/ourproject/kune/platf/client/ui/gwtcustom/WidgetIterators.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/ui/gwtcustom/WidgetIterators.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/gwtcustom/WidgetIterators.java 2008-09-08 00:55:39 UTC (rev 847) @@ -1,122 +0,0 @@ -/* - * - * Copyright (C) 2007-2008 The kune development team (see CREDITS for details) - * This file is part of kune. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - */ -/* - * Copyright 2007 Google Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); you may not - * use this file except in compliance with the License. You may obtain a copy of - * the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the - * License for the specific language governing permissions and limitations under - * the License. - */ - -package org.ourproject.kune.platf.client.ui.gwtcustom; - -import java.util.Iterator; -import java.util.NoSuchElementException; - -import com.google.gwt.user.client.ui.HasWidgets; -import com.google.gwt.user.client.ui.Widget; - -/** - * A collection of convenience factories for creating iterators for widgets. - * This mostly helps developers support {@link HasWidgets} without having to - * implement their own {@link Iterator}. - */ -class WidgetIterators { - - private static final Widget[] copyWidgetArray(final Widget[] widgets) { - final Widget[] clone = new Widget[widgets.length]; - for (int i = 0; i < widgets.length; i++) { - clone[i] = widgets[i]; - } - return clone; - } - - /** - * Wraps an array of widgets to be returned during iteration. - * <code>null</code> is allowed in the array and will be skipped during - * iteration. - * - * @param container the container of the widgets in <code>contained</code> - * @param contained the array of widgets - * @return the iterator - */ - static final Iterator<Widget> createWidgetIterator(final HasWidgets container, - final Widget[] contained) { - return new Iterator<Widget>() { - int index = -1, last = -1; - boolean widgetsWasCopied = false; - Widget[] widgets = contained; - - { - gotoNextIndex(); - } - - private void gotoNextIndex() { - ++index; - while (index < contained.length) { - if (contained[index] != null) { - return; - } - ++index; - } - } - - public boolean hasNext() { - return (index < contained.length); - } - - public Widget next() { - if (!hasNext()) { - throw new NoSuchElementException(); - } - last = index; - final Widget w = contained[index]; - gotoNextIndex(); - return w; - } - - public void remove() { - if (last < 0) { - throw new IllegalStateException(); - } - - if (!widgetsWasCopied) { - widgets = copyWidgetArray(widgets); - widgetsWasCopied = true; - } - - container.remove(contained[last]); - last = -1; - } - }; - } - - private WidgetIterators() { - // Not instantiable. - } -} Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateItPanel.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateItPanel.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateItPanel.java 2008-09-08 00:55:39 UTC (rev 847) @@ -21,7 +21,7 @@ import org.ourproject.kune.platf.client.services.I18nTranslationService; import org.ourproject.kune.platf.client.services.Images; -import org.ourproject.kune.workspace.client.ui.newtmp.skel.WorkspaceSkeleton; +import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton; import com.google.gwt.user.client.ui.ClickListener; import com.google.gwt.user.client.ui.Composite; Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateItPresenter.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateItPresenter.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RateItPresenter.java 2008-09-08 00:55:39 UTC (rev 847) @@ -25,7 +25,7 @@ import org.ourproject.kune.platf.client.services.I18nTranslationService; import org.ourproject.kune.platf.client.state.Session; import org.ourproject.kune.platf.client.state.StateManager; -import org.ourproject.kune.workspace.client.sitebar.Site; +import org.ourproject.kune.workspace.client.site.Site; import com.calclab.suco.client.provider.Provider; import com.calclab.suco.client.signal.Slot; Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RatePanel.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RatePanel.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/rate/RatePanel.java 2008-09-08 00:55:39 UTC (rev 847) @@ -20,8 +20,8 @@ package org.ourproject.kune.platf.client.ui.rate; import org.ourproject.kune.platf.client.services.I18nTranslationService; -import org.ourproject.kune.workspace.client.ui.newtmp.skel.Toolbar; -import org.ourproject.kune.workspace.client.ui.newtmp.skel.WorkspaceSkeleton; +import org.ourproject.kune.workspace.client.skel.Toolbar; +import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton; import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.Grid; Modified: trunk/src/main/java/org/ourproject/kune/platf/server/PlatformServerModule.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/server/PlatformServerModule.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/server/PlatformServerModule.java 2008-09-08 00:55:39 UTC (rev 847) @@ -89,7 +89,7 @@ import org.ourproject.kune.platf.server.tool.ToolRegistry; import org.ourproject.kune.platf.server.users.UserInfoService; import org.ourproject.kune.platf.server.users.UserInfoServiceDefault; -import org.ourproject.kune.workspace.client.sitebar.rpc.UserService; +import org.ourproject.kune.workspace.client.site.rpc.UserService; import com.google.inject.matcher.Matchers; import com.wideplay.warp.persist.PersistenceService; Modified: trunk/src/main/java/org/ourproject/kune/platf/server/rpc/UserRPC.java =================================================================== --- trunk/src/main/java/org/ourproject/kune/platf/server/rpc/UserRPC.java 2008-09-08 00:54:34 UTC (rev 846) +++ trunk/src/main/java/org/ourproject/kune/platf/server/rpc/UserRPC.java 2008-09-08 00:55:39 UTC (rev 847) @@ -35,7 +35,7 @@ import org.ourproject.kune.platf.server.mapper.Mapper; import org.ourproject.kune.platf.server.users.UserInfo; import org.ourproject.kune.platf.server.users.UserInfoService; -import org.ourproject.kune.workspace.client.sitebar.rpc.UserService; +import org.ourproject.kune.workspace.client.site.rpc.UserService; import com.google.inject.Inject; import com.google.inject.Provider;
participants (1)
-
vjrj