[kune-commits] r915 - in trunk: . src/main/java/org/ourproject/kune/docs/client src/main/java/org/ourproject/kune/platf/client/app src/main/java/org/ourproject/kune/platf/client/services src/main/java/org/ourproject/kune/platf/client/state src/main/java/org/ourproject/kune/platf/client/ui src/main/java/org/ourproject/kune/platf/client/ui/gridmenu src/main/java/org/ourproject/kune/platf/server/manager/impl src/main/java/org/ourproject/kune/workspace/client/skel src/main/java/org/ourproject/kune/workspace/client/socialnet src/main/java/org/ourproject/kune/workspace/client/themes

vjrj vjrj at ourproject.org
Thu Oct 16 23:41:44 CEST 2008


Author: vjrj
Date: 2008-10-16 23:41:42 +0200 (Thu, 16 Oct 2008)
New Revision: 915

Modified:
   trunk/INSTALL
   trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientActions.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/SessionDefault.java
   trunk/src/main/java/org/ourproject/kune/platf/client/state/StateManagerDefault.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/MenuItem.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridDropConfiguration.java
   trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridMenuPanel.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/UserManagerDefault.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/skel/EntitySummary.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPanel.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPresenter.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsThemePresenter.java
Log:
Incomplete - task User buddies SocialNetwork part

Complete - task emite and suco updated

Modified: trunk/INSTALL
===================================================================
--- trunk/INSTALL	2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/INSTALL	2008-10-16 21:41:42 UTC (rev 915)
@@ -110,6 +110,10 @@
   See emite (our xmpp software) Server Compatibility: http://code.google.com/p/emite/wiki/ServerCompatibility
 - Configure the 'Server Name' (during installation of openfire, or after editing 'Server Settings') with "localhost" initially (See kune.chat.roomHost in kune.properties if you want to use other values).
 - Configure the 'Group chat service' (in Group chat tab) with "rooms" instead of "conference".
+- Change in 'System Properties':
+  provider.auth.className to org.jivesoftware.openfire.auth.JDBCAuthProvider
+  provider.user.className to org.jivesoftware.openfire.user.JDBCUserProvider 
+
 - Enable "HTTP Bind Settings" and check the port is not used by other service in your machine.
 - Edit the openfire.xml
   In debian (with a .deb installation) you can to edit the configuration in /etc/openfire...

Modified: trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientActions.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientActions.java	2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/docs/client/DocumentClientActions.java	2008-10-16 21:41:42 UTC (rev 915)
@@ -217,7 +217,6 @@
         final ActionToolbarMenuDescriptor<StateToken> refreshCtx = new ActionToolbarMenuDescriptor<StateToken>(
                 AccessRolDTO.Viewer, ActionToolbarPosition.topbar, new Listener<StateToken>() {
                     public void onEvent(final StateToken stateToken) {
-                        Site.important("Refresh with state token: " + stateToken);
                         stateManager.reload();
                         contextNavigator.selectItem(stateToken);
                     }

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-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/app/ApplicationDefault.java	2008-10-16 21:41:42 UTC (rev 915)
@@ -28,6 +28,7 @@
 import org.ourproject.kune.workspace.client.site.Site;
 
 import com.allen_sauer.gwt.log.client.Log;
+import com.calclab.suco.client.event.Events;
 import com.calclab.suco.client.listener.Event0;
 import com.calclab.suco.client.listener.Listener0;
 import com.google.gwt.user.client.Command;
@@ -44,62 +45,63 @@
     private final Event0 onApplicationStop;
 
     public ApplicationDefault(final Session session) {
-	this.session = session;
-	this.onApplicationStart = new Event0("onApplicationStart");
-	this.onApplicationStop = new Event0("onApplicationStop");
-	Window.addWindowCloseListener(new WindowCloseListener() {
-	    public void onWindowClosed() {
-	    }
+        this.session = session;
+        this.onApplicationStart = Events.create("onApplicationStart");
+        this.onApplicationStop = Events.create("onApplicationStop");
+        Window.addWindowCloseListener(new WindowCloseListener() {
+            public void onWindowClosed() {
+            }
 
-	    public String onWindowClosing() {
-		stop();
-		return null;
-	    }
-	});
+            public String onWindowClosing() {
+                stop();
+                return null;
+            }
+        });
     }
 
     public void onApplicationStart(final Listener0 listener) {
-	onApplicationStart.add(listener);
+        onApplicationStart.add(listener);
     }
 
     public void onApplicationStop(final Listener0 listener) {
-	onApplicationStop.add(listener);
+        onApplicationStop.add(listener);
     }
 
     public void start() {
-	onApplicationStart.fire();
-	PrefetchUtilities.preFetchImpImages();
-	getInitData();
-	final Timer prefetchTimer = new Timer() {
-	    public void run() {
-		PrefetchUtilities.doTasksDeferred();
-	    }
-	};
-	prefetchTimer.schedule(20000);
+        onApplicationStart.fire();
+        PrefetchUtilities.preFetchImpImages();
+        getInitData();
+        final Timer prefetchTimer = new Timer() {
+            @Override
+            public void run() {
+                PrefetchUtilities.doTasksDeferred();
+            }
+        };
+        prefetchTimer.schedule(20000);
     }
 
     private void getInitData() {
-	final SiteServiceAsync server = SiteService.App.getInstance();
-	server.getInitData(session.getUserHash(), new AsyncCallback<InitDataDTO>() {
-	    public void onFailure(final Throwable error) {
-		RootPanel.get("kuneinitialcurtain").setVisible(false);
-		Site.error("Error fetching initial data");
-		Log.debug(error.getMessage());
-	    }
+        final SiteServiceAsync server = SiteService.App.getInstance();
+        server.getInitData(session.getUserHash(), new AsyncCallback<InitDataDTO>() {
+            public void onFailure(final Throwable error) {
+                RootPanel.get("kuneinitialcurtain").setVisible(false);
+                Site.error("Error fetching initial data");
+                Log.debug(error.getMessage());
+            }
 
-	    public void onSuccess(final InitDataDTO initData) {
-		session.setInitData(initData);
-		session.setCurrentUserInfo(initData.getUserInfo());
-		DeferredCommand.addCommand(new Command() {
-		    public void execute() {
-			RootPanel.get("kuneinitialcurtain").setVisible(false);
-		    }
-		});
-	    }
-	});
+            public void onSuccess(final InitDataDTO initData) {
+                session.setInitData(initData);
+                session.setCurrentUserInfo(initData.getUserInfo());
+                DeferredCommand.addCommand(new Command() {
+                    public void execute() {
+                        RootPanel.get("kuneinitialcurtain").setVisible(false);
+                    }
+                });
+            }
+        });
     }
 
     private void stop() {
-	onApplicationStop.fire();
+        onApplicationStop.fire();
     }
 }

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-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneErrorHandler.java	2008-10-16 21:41:42 UTC (rev 915)
@@ -35,6 +35,7 @@
 import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton;
 
 import com.allen_sauer.gwt.log.client.Log;
+import com.calclab.suco.client.event.Events;
 import com.calclab.suco.client.ioc.Provider;
 import com.calclab.suco.client.listener.Event0;
 import com.calclab.suco.client.listener.Listener0;
@@ -54,7 +55,7 @@
         this.i18n = i18n;
         this.wsProvider = wsProvider;
         this.stateManagerProvider = stateManagerProvider;
-        this.onSessionExpired = new Event0("onSessionExpired");
+        this.onSessionExpired = Events.create("onSessionExpired");
     }
 
     public void doSessionExpired() {
@@ -82,6 +83,7 @@
             logException(e);
             doSessionExpired();
         } catch (final NoDefaultContentException e) {
+            Site.info("This user don't have a homepage");
             stateManagerProvider.get().restorePreviousState();
         } catch (final UserMustBeLoggedException e) {
             logException(e);

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-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/services/KuneModule.java	2008-10-16 21:41:42 UTC (rev 915)
@@ -77,6 +77,8 @@
 import org.ourproject.kune.workspace.client.themes.WsThemePresenter;
 import org.ourproject.kune.workspace.client.title.EntityTitle;
 
+import com.calclab.suco.client.event.DirectEventFactory;
+import com.calclab.suco.client.event.Events;
 import com.calclab.suco.client.ioc.decorator.Singleton;
 import com.calclab.suco.client.ioc.module.AbstractModule;
 import com.calclab.suco.client.ioc.module.Factory;
@@ -91,7 +93,7 @@
 
     @Override
     public void onInstall() {
-
+        Events.setEventFactory(new DirectEventFactory());
         register(Singleton.class, new Factory<Session>(Session.class) {
             @Override
             public Session create() {

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-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/state/SessionDefault.java	2008-10-16 21:41:42 UTC (rev 915)
@@ -60,8 +60,8 @@
         this.userServiceProvider = userServiceProvider;
         languagesArray = null;
         this.onInitDataReceived = Events.create(InitDataDTO.class, "initDataReceived");
-        this.onUserSignIn = new Event<UserInfoDTO>("onUserSignIn");
-        this.onUserSignOut = new Event0("onUserSignOut");
+        this.onUserSignIn = Events.create(UserInfoDTO.class, "onUserSignIn");
+        this.onUserSignOut = Events.create("onUserSignOut");
     }
 
     public void check(final AsyncCallbackSimple<?> callback) {

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-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/state/StateManagerDefault.java	2008-10-16 21:41:42 UTC (rev 915)
@@ -34,6 +34,7 @@
 import org.ourproject.kune.workspace.client.site.Site;
 
 import com.allen_sauer.gwt.log.client.Log;
+import com.calclab.suco.client.event.Events;
 import com.calclab.suco.client.listener.Event;
 import com.calclab.suco.client.listener.Event2;
 import com.calclab.suco.client.listener.Listener;
@@ -57,10 +58,10 @@
         this.session = session;
         this.history = history;
         this.oldState = null;
-        this.onStateChanged = new Event<StateDTO>("onStateChanged");
-        this.onGroupChanged = new Event2<GroupDTO, GroupDTO>("onGroupChanged");
-        this.onToolChanged = new Event2<String, String>("onToolChanged");
-        this.onSocialNetworkChanged = new Event<StateDTO>("onSocialNetworkChanged");
+        this.onStateChanged = Events.create(StateDTO.class, "onStateChanged");
+        this.onGroupChanged = Events.create(GroupDTO.class, GroupDTO.class, "onGroupChanged");
+        this.onToolChanged = Events.create(String.class, String.class, "onToolChanged");
+        this.onSocialNetworkChanged = Events.create(StateDTO.class, "onSocialNetworkChanged");
         session.onUserSignIn(new Listener<UserInfoDTO>() {
             public void onEvent(final UserInfoDTO parameter) {
                 if (oldState != null) {

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/MenuItem.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/MenuItem.java	2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/MenuItem.java	2008-10-16 21:41:42 UTC (rev 915)
@@ -1,34 +1,29 @@
 package org.ourproject.kune.platf.client.ui;
 
-import com.calclab.suco.client.listener.Event;
 import com.calclab.suco.client.listener.Listener;
 
 public class MenuItem<T> {
 
     final String icon;
     final String title;
-    private final Event<T> onClick;
+    private final Listener<T> listener;
 
     public MenuItem(final String icon, final String title, final Listener<T> listener) {
-	this.icon = icon;
-	this.title = title;
-	this.onClick = new Event<T>("onClick");
-	onClick(listener);
+        this.icon = icon;
+        this.title = title;
+        this.listener = listener;
+
     }
 
     public void fire(final T id) {
-	onClick.fire(id);
+        listener.onEvent(id);
     }
 
     public String getIcon() {
-	return icon;
+        return icon;
     }
 
     public String getTitle() {
-	return title;
+        return title;
     }
-
-    public void onClick(final Listener<T> listener) {
-	onClick.add(listener);
-    }
 }

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridDropConfiguration.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridDropConfiguration.java	2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridDropConfiguration.java	2008-10-16 21:41:42 UTC (rev 915)
@@ -21,6 +21,7 @@
  */
 package org.ourproject.kune.platf.client.ui.gridmenu;
 
+import com.calclab.suco.client.event.Events;
 import com.calclab.suco.client.listener.Event;
 import com.calclab.suco.client.listener.Listener;
 
@@ -31,7 +32,7 @@
 
     public GridDropConfiguration(final String ddGroupId, final Listener<String> listener) {
 	this.ddGroupId = ddGroupId;
-	this.onDrop = new Event<String>("onDrop");
+	this.onDrop = Events.create(String.class, "onDrop");
 	this.onDrop(listener);
     }
 

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridMenuPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridMenuPanel.java	2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/ui/gridmenu/GridMenuPanel.java	2008-10-16 21:41:42 UTC (rev 915)
@@ -4,6 +4,7 @@
 import java.util.HashMap;
 
 import com.allen_sauer.gwt.log.client.Log;
+import com.calclab.suco.client.event.Events;
 import com.calclab.suco.client.listener.Event;
 import com.calclab.suco.client.listener.Listener;
 import com.gwtext.client.core.EventObject;
@@ -92,8 +93,8 @@
     public GridMenuPanel(final String emptyText, final GridDragConfiguration gridDragConfiguration,
             final GridDropConfiguration gridDropConfiguration, final boolean grouped, final boolean withCounters,
             final boolean withTopBar, final boolean withBottomBar, final boolean withEndIcon) {
-        this.onClick = new Event<String>("onClick");
-        this.onDoubleClick = new Event<String>("onDoubleClick");
+        this.onClick = Events.create(String.class, "onClick");
+        this.onDoubleClick = Events.create(String.class, "onDoubleClick");
         this.grouped = grouped;
         this.withCounters = withCounters;
         this.withEndIcon = withEndIcon;

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/UserManagerDefault.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/UserManagerDefault.java	2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/UserManagerDefault.java	2008-10-16 21:41:42 UTC (rev 915)
@@ -103,8 +103,9 @@
         String domain = "@" + properties.getDomain();
         UserBuddiesData buddiesData = new UserBuddiesData();
         User user = finder.getByShortName(shortName);
-        ChatConnection connection = xmppManager.login(user.getShortName(), user.getPassword(), "kserver");
+        ChatConnection connection = xmppManager.login(user.getShortName() + domain, user.getPassword(), "kserver");
         Collection<RosterEntry> roster = xmppManager.getRoster(connection);
+        xmppManager.disconnect(connection);
         for (RosterEntry entry : roster) {
             switch (entry.getType()) {
             case both:

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/skel/EntitySummary.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/skel/EntitySummary.java	2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/skel/EntitySummary.java	2008-10-16 21:41:42 UTC (rev 915)
@@ -45,6 +45,7 @@
         // accordionLayout.setAnimate(true);
         // accordionLayout.setActiveOnTop(false);
         accordionLayout.setFill(true);
+        accordionLayout.setRenderHidden(true);
         // entitySummary.setAutoScroll(true);
         entitySummary.setLayout(accordionLayout);
         entitySummary.setCls(ENTITY_SUMMARY);

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPanel.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPanel.java	2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPanel.java	2008-10-16 21:41:42 UTC (rev 915)
@@ -5,11 +5,13 @@
 import org.ourproject.kune.workspace.client.skel.SummaryPanel;
 import org.ourproject.kune.workspace.client.skel.WorkspaceSkeleton;
 
+import com.google.gwt.user.client.ui.ClickListener;
 import com.google.gwt.user.client.ui.Composite;
 import com.google.gwt.user.client.ui.FlowPanel;
 import com.google.gwt.user.client.ui.Image;
 import com.google.gwt.user.client.ui.Label;
 import com.google.gwt.user.client.ui.VerticalPanel;
+import com.google.gwt.user.client.ui.Widget;
 
 public class BuddiesSummaryPanel extends SummaryPanel implements BuddiesSummaryView {
 
@@ -17,12 +19,16 @@
         private final Image icon;
         private final Label nick;
 
-        public BuddieWidget(String nickName) {
+        public BuddieWidget(String nickName, ClickListener clickListener) {
             VerticalPanel vp = new VerticalPanel();
             icon = new Image("images/persons/person2-32.png");
             nick = new Label(nickName);
             vp.add(icon);
             vp.add(nick);
+            vp.addStyleName("kune-Margin-Small-trbl");
+            vp.addStyleName("kune-pointer");
+            nick.addClickListener(clickListener);
+            icon.addClickListener(clickListener);
             initWidget(vp);
         }
 
@@ -37,10 +43,12 @@
     private final FlowPanel flowPanel;
     private final Label otherBuddiesLabel;
     private final I18nTranslationService i18n;
+    private final BuddiesSummaryPresenter presenter;
 
     public BuddiesSummaryPanel(final BuddiesSummaryPresenter presenter, final WorkspaceSkeleton ws,
             I18nTranslationService i18n) {
         super(i18n.t("Buddies"), i18n.t("Buddies of this user"), ws);
+        this.presenter = presenter;
         this.i18n = i18n;
         VerticalPanel vp = new VerticalPanel();
         flowPanel = new FlowPanel();
@@ -48,16 +56,24 @@
         vp.add(flowPanel);
         vp.add(otherBuddiesLabel);
         super.add(vp);
+        ws.addInSummary(this);
+        clear();
     }
 
-    public void addBuddie(UserSimpleDTO user) {
-        flowPanel.add(new BuddieWidget(user.getShortName()));
+    public void addBuddie(final UserSimpleDTO user) {
+        ClickListener listener = new ClickListener() {
+            public void onClick(Widget sender) {
+                presenter.onClick(user);
+            }
+        };
+        flowPanel.add(new BuddieWidget(user.getShortName(), listener));
     }
 
     @Override
     public void clear() {
         flowPanel.clear();
         otherBuddiesLabel.setText(i18n.t("This user has no buddies"));
+        super.doLayoutIfNeeded();
     }
 
     public void setOtherUsers(int otherExternalBuddies) {

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPresenter.java	2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/socialnet/BuddiesSummaryPresenter.java	2008-10-16 21:41:42 UTC (rev 915)
@@ -14,8 +14,10 @@
 public class BuddiesSummaryPresenter implements BuddiesSummary {
 
     private BuddiesSummaryView view;
+    private final StateManager stateManager;
 
     public BuddiesSummaryPresenter(StateManager stateManager, final Session session) {
+        this.stateManager = stateManager;
         stateManager.onGroupChanged(new Listener2<GroupDTO, GroupDTO>() {
             public void onEvent(GroupDTO param1, GroupDTO param2) {
                 setState(session.getCurrentState());
@@ -31,6 +33,10 @@
         this.view = view;
     }
 
+    public void onClick(UserSimpleDTO user) {
+        stateManager.gotoToken(user.getShortName());
+    }
+
     protected void setState(StateDTO state) {
         if (state.getGroup().getType().equals(GroupType.PERSONAL)) {
             view.clear();

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsThemePresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsThemePresenter.java	2008-10-16 19:57:50 UTC (rev 914)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/themes/WsThemePresenter.java	2008-10-16 21:41:42 UTC (rev 915)
@@ -8,6 +8,7 @@
 import org.ourproject.kune.platf.client.state.StateManager;
 import org.ourproject.kune.workspace.client.site.Site;
 
+import com.calclab.suco.client.event.Events;
 import com.calclab.suco.client.ioc.Provider;
 import com.calclab.suco.client.listener.Event2;
 import com.calclab.suco.client.listener.Listener;
@@ -22,56 +23,56 @@
     private final Session session;
 
     public WsThemePresenter(final Session session, final Provider<GroupServiceAsync> groupServiceProvider,
-	    final StateManager stateManager) {
-	this.session = session;
-	this.groupServiceProvider = groupServiceProvider;
-	this.onThemeChanged = new Event2<WsTheme, WsTheme>("onThemeChanged");
-	session.onInitDataReceived(new Listener<InitDataDTO>() {
-	    public void onEvent(final InitDataDTO initData) {
-		view.setThemes(initData.getWsThemes());
-		setTheme(new WsTheme(initData.getWsThemes()[0]));
-	    }
-	});
-	stateManager.onStateChanged(new Listener<StateDTO>() {
-	    public void onEvent(final StateDTO state) {
-		setState(state);
-	    }
-	});
+            final StateManager stateManager) {
+        this.session = session;
+        this.groupServiceProvider = groupServiceProvider;
+        this.onThemeChanged = Events.create(WsTheme.class, WsTheme.class, "onThemeChanged");
+        session.onInitDataReceived(new Listener<InitDataDTO>() {
+            public void onEvent(final InitDataDTO initData) {
+                view.setThemes(initData.getWsThemes());
+                setTheme(new WsTheme(initData.getWsThemes()[0]));
+            }
+        });
+        stateManager.onStateChanged(new Listener<StateDTO>() {
+            public void onEvent(final StateDTO state) {
+                setState(state);
+            }
+        });
     }
 
     public void init(final WsThemeView view) {
-	this.view = view;
+        this.view = view;
     }
 
     public void onThemeChanged(final Listener2<WsTheme, WsTheme> listener) {
-	onThemeChanged.add(listener);
+        onThemeChanged.add(listener);
     }
 
     protected void onChangeGroupWsTheme(final WsTheme newTheme) {
-	Site.showProgressProcessing();
-	groupServiceProvider.get().changeGroupWsTheme(session.getUserHash(), session.getCurrentState().getStateToken(),
-		newTheme.getName(), new AsyncCallbackSimple<Object>() {
-		    public void onSuccess(final Object result) {
-			setTheme(newTheme);
-			Site.hideProgress();
-		    }
-		});
+        Site.showProgressProcessing();
+        groupServiceProvider.get().changeGroupWsTheme(session.getUserHash(), session.getCurrentState().getStateToken(),
+                newTheme.getName(), new AsyncCallbackSimple<Object>() {
+                    public void onSuccess(final Object result) {
+                        setTheme(newTheme);
+                        Site.hideProgress();
+                    }
+                });
     }
 
     private void setState(final StateDTO state) {
-	setTheme(new WsTheme(state.getGroup().getWorkspaceTheme()));
-	if (state.getGroupRights().isAdministrable()) {
-	    view.setVisible(true);
-	} else {
-	    view.setVisible(false);
-	}
+        setTheme(new WsTheme(state.getGroup().getWorkspaceTheme()));
+        if (state.getGroupRights().isAdministrable()) {
+            view.setVisible(true);
+        } else {
+            view.setVisible(false);
+        }
     }
 
     private void setTheme(final WsTheme newTheme) {
-	if (previousTheme == null || !previousTheme.equals(newTheme)) {
-	    onThemeChanged.fire(previousTheme, newTheme);
-	}
-	previousTheme = newTheme;
+        if (previousTheme == null || !previousTheme.equals(newTheme)) {
+            onThemeChanged.fire(previousTheme, newTheme);
+        }
+        previousTheme = newTheme;
     }
 
 }




More information about the kune-commits mailing list