Introduce Entity framework.
[gpl/argeo-suite.git] / org.argeo.suite.e4 / src / org / argeo / suite / e4 / parts / DefaultDashboardEditor.java
index 5fd2f562bd901d591183c07e90744d8d6dbcf67c..dd1c2b084732003422bc110d68220a7f92c9d0af 100644 (file)
@@ -18,8 +18,9 @@ import org.argeo.activities.ActivitiesNames;
 import org.argeo.activities.ActivitiesService;
 import org.argeo.activities.ActivitiesTypes;
 import org.argeo.activities.ui.TaskViewerContextMenu;
+import org.argeo.api.NodeUtils;
 import org.argeo.cms.auth.CurrentUser;
-import org.argeo.cms.util.CmsUtils;
+import org.argeo.cms.ui.util.CmsUiUtils;
 import org.argeo.connect.ConnectException;
 import org.argeo.connect.ConnectNames;
 import org.argeo.connect.ui.ConnectWorkbenchUtils;
@@ -27,7 +28,7 @@ import org.argeo.connect.ui.Refreshable;
 import org.argeo.connect.util.ConnectJcrUtils;
 import org.argeo.eclipse.ui.EclipseUiUtils;
 import org.argeo.jcr.JcrUtils;
-import org.argeo.node.NodeUtils;
+import org.argeo.suite.e4.SuiteMsg;
 import org.argeo.tracker.TrackerNames;
 import org.argeo.tracker.TrackerService;
 import org.argeo.tracker.core.TrackerUtils;
@@ -93,10 +94,10 @@ public class DefaultDashboardEditor extends AbstractSuiteDashboard implements Re
 
        @Override
        public void forceRefresh(Object object) {
-               CmsUtils.clear(headerCmp);
-               populateHeaderPart(headerCmp, NodeUtils.getUserHome(getSession()));
+               CmsUiUtils.clear(headerCmp);
+               populateHeaderPart(headerCmp, NodeUtils.getUserHome(getHomeSession()));
 
-               CmsUtils.clear(taskListCmp);
+               CmsUiUtils.clear(taskListCmp);
                populateTaskListCmp(taskListCmp);
 
                headerCmp.getParent().layout(true, true);
@@ -104,7 +105,7 @@ public class DefaultDashboardEditor extends AbstractSuiteDashboard implements Re
 
        private void populateTaskListCmp(Composite parent) {
                parent.setLayout(EclipseUiUtils.noSpaceGridLayout());
-               NodeIterator nit = activitiesService.getMyTasks(getSession(), true);
+               NodeIterator nit = activitiesService.getMyTasks(getMainSession(), true);
                if (!nit.hasNext()) {
                        Composite noTaskCmp = new Composite(parent, SWT.NO_FOCUS);
                        noTaskCmp.setLayoutData(EclipseUiUtils.fillAll());
@@ -112,7 +113,7 @@ public class DefaultDashboardEditor extends AbstractSuiteDashboard implements Re
 
                        // Label noTaskLbl = new Label(noTaskCmp, SWT.CENTER);
                        // noTaskLbl.setText("<i> <big> You have no pending Task. </big> </i>");
-                       // CmsUtils.markup(noTaskLbl);
+                       // CmsUiUtils.markup(noTaskLbl);
                        // noTaskLbl.setLayoutData(new GridData(SWT.CENTER, SWT.BOTTOM, true, true));
 
                } else {
@@ -121,7 +122,7 @@ public class DefaultDashboardEditor extends AbstractSuiteDashboard implements Re
                        tvlc.setLayoutData(EclipseUiUtils.fillAll());
                        final TableViewer viewer = tvlc.getTableViewer();
                        viewer.setInput(JcrUtils.nodeIteratorToList(nit).toArray());
-                       final TaskViewerContextMenu contextMenu = new TaskViewerContextMenu(viewer, getSession(),
+                       final TaskViewerContextMenu contextMenu = new TaskViewerContextMenu(viewer, getHomeSession(),
                                        activitiesService) {
                                @Override
                                public boolean performAction(String actionId) {
@@ -181,7 +182,7 @@ public class DefaultDashboardEditor extends AbstractSuiteDashboard implements Re
 
                // Title
                Label titleLbl = new Label(leftCmp, SWT.WRAP | SWT.LEAD);
-               CmsUtils.markup(titleLbl);
+               CmsUiUtils.markup(titleLbl);
                String titleStr = "<big><b>" + CurrentUser.getDisplayName() + "</b></big>";
                titleLbl.setText(titleStr);
                GridData gd = new GridData(SWT.BEGINNING, SWT.TOP, false, false);
@@ -190,7 +191,8 @@ public class DefaultDashboardEditor extends AbstractSuiteDashboard implements Re
                titleLbl.setLayoutData(gd);
 
                final Link createTaskLk = new Link(leftCmp, SWT.CENTER);
-               createTaskLk.setText("<a>Create a task</a>");
+               // createTaskLk.setText("<a>Create a task</a>");
+               createTaskLk.setText("<a>" + SuiteMsg.newTodo.lead() + "</a>");
                gd = new GridData(SWT.BEGINNING, SWT.TOP, false, false);
                // gd.verticalIndent = 5;
                gd.horizontalIndent = 10;
@@ -204,13 +206,13 @@ public class DefaultDashboardEditor extends AbstractSuiteDashboard implements Re
                                // String mainMixin = TrackerTypes.TRACKER_TASK;
                                String mainMixin = ActivitiesTypes.ACTIVITIES_TASK;
                                String pathCreated = ConnectWorkbenchUtils.createAndConfigureEntity(createTaskLk.getShell(),
-                                               getSession(), getSystemAppService(), getSystemWorkbenchService(), mainMixin);
+                                               getHomeSession(), getSystemAppService(), getSystemWorkbenchService(), mainMixin);
                                if (EclipseUiUtils.notEmpty(pathCreated))
                                        forceRefresh(null);
                        }
                });
 
-               NodeIterator nit = activitiesService.getMyTasks(getSession(), true);
+               NodeIterator nit = activitiesService.getMyTasks(getHomeSession(), true);
                if (nit.hasNext()) {
                        List<Node> overdueTasks = new ArrayList<>();
                        while (nit.hasNext()) {
@@ -227,7 +229,7 @@ public class DefaultDashboardEditor extends AbstractSuiteDashboard implements Re
                }
 
                if (trackerService != null) {
-                       nit = trackerService.getMyMilestones(getSession(), true);
+                       nit = trackerService.getMyMilestones(getHomeSession(), true);
                        List<Node> openMilestones = new ArrayList<>();
 
                        if (nit.hasNext()) {
@@ -248,7 +250,7 @@ public class DefaultDashboardEditor extends AbstractSuiteDashboard implements Re
                        }
 
                        // My projects
-                       List<Node> openProjects = JcrUtils.nodeIteratorToList(trackerService.getMyProjects(getSession(), true));
+                       List<Node> openProjects = JcrUtils.nodeIteratorToList(trackerService.getMyProjects(getHomeSession(), true));
                        if (!openProjects.isEmpty()) {
                                Group myProjectsGp = new Group(rightCmp, SWT.NO_FOCUS);
                                myProjectsGp.setText("My open projects");
@@ -379,7 +381,7 @@ public class DefaultDashboardEditor extends AbstractSuiteDashboard implements Re
        // LOCAL HELPERS
        private void populateMuliValueClickableList(Composite parent, Node[] nodes, ColumnLabelProvider lp,
                        String listLabel) {
-               CmsUtils.clear(parent);
+               CmsUiUtils.clear(parent);
                RowLayout rl = new RowLayout(SWT.HORIZONTAL | SWT.WRAP);
                rl.wrap = true;
                rl.marginLeft = rl.marginTop = rl.marginBottom = 0;
@@ -395,7 +397,7 @@ public class DefaultDashboardEditor extends AbstractSuiteDashboard implements Re
                int i = 1;
                for (Node node : nodes) {
                        Link link = new Link(parent, SWT.NONE);
-                       CmsUtils.markup(link);
+                       CmsUiUtils.markup(link);
                        link.setText(lp.getText(node) + (i != nodes.length ? ", " : ""));
                        i++;
                        // Color fc = lp.getForeground(node);