Use better icons for task context menu
authorbsinou <bsinou@argeo.org>
Sat, 8 Apr 2017 10:29:55 +0000 (12:29 +0200)
committerbsinou <bsinou@argeo.org>
Sat, 8 Apr 2017 10:29:55 +0000 (12:29 +0200)
org.argeo.suite.apps/theme/argeo-classic/icons/activities/cancel.gif [new file with mode: 0644]
org.argeo.suite.apps/theme/argeo-classic/icons/activities/done.png [new file with mode: 0644]
org.argeo.suite.apps/theme/argeo-classic/workbench-ext.css
org.argeo.suite.workbench.rap/plugin.xml
org.argeo.suite.workbench.rap/src/org/argeo/suite/workbench/parts/DefaultDashboardEditor.java

diff --git a/org.argeo.suite.apps/theme/argeo-classic/icons/activities/cancel.gif b/org.argeo.suite.apps/theme/argeo-classic/icons/activities/cancel.gif
new file mode 100644 (file)
index 0000000..2b88506
Binary files /dev/null and b/org.argeo.suite.apps/theme/argeo-classic/icons/activities/cancel.gif differ
diff --git a/org.argeo.suite.apps/theme/argeo-classic/icons/activities/done.png b/org.argeo.suite.apps/theme/argeo-classic/icons/activities/done.png
new file mode 100644 (file)
index 0000000..a9925a0
Binary files /dev/null and b/org.argeo.suite.apps/theme/argeo-classic/icons/activities/done.png differ
index 4d94db0e518d7043240c1220ffdf929d94cc28d8..c2bfdb58955d44ace344393d48db9c564bc57890 100644 (file)
@@ -268,14 +268,14 @@ Button[PUSH][FLAT].createFolder_btn:pressed, Button[PUSH][FLAT].shareFolder_btn:
        background-color: #fde2d5;
 }
 
-/**  PEOPLE  **/
+/**  ACTIVITIES  **/
 
 Button[PUSH][FLAT].markAsDone_btn {
-       background-image: url( theme/argeo-classic/icons/fs/open.png);
+       background-image: url( theme/argeo-classic/icons/activities/done.png);
 }
 
 Button[PUSH][FLAT].cancel_btn {
-       background-image: url( theme/argeo-classic/icons/fs/open.png);
+       background-image: url( theme/argeo-classic/icons/activities/cancel.gif);
 }
 
 Button[PUSH][FLAT].cancel_btn,
@@ -301,6 +301,8 @@ Button[PUSH][FLAT].markAsDone_btn:pressed {
        background-color: #fde2d5;
 }
 
+/**  PEOPLE  **/
+
 Button[PUSH][FLAT].small_delete_btn{
        background-image: url( theme/argeo-classic/icons/actions/deleteSmall.gif);
        background-repeat: no-repeat;
index a2a9829234c22f68065953f72b76af2a01021a0b..d41dc87345504b30ddf651e5f866fca1068897f4 100644 (file)
@@ -24,7 +24,7 @@
                        id="org.argeo.suite.workbench.rap.defaultDashboardEditor"
                        class="org.argeo.eclipse.spring.SpringExtensionFactory"
                        icon="theme/argeo-classic/icons/dashboard.gif"
-                       name="My Dashboard">
+                       name="Dashboard">
                </editor>
        </extension>
        
index eb7c569301726da948b6192c59d0e6ae3c4eff9a..82591e554ff47f9503b1cf8246ba1da20fd80cb6 100644 (file)
@@ -14,6 +14,7 @@ import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.argeo.activities.ActivitiesNames;
 import org.argeo.activities.ActivitiesService;
+import org.argeo.activities.workbench.parts.TaskViewerContextMenu;
 import org.argeo.cms.auth.CurrentUser;
 import org.argeo.cms.ui.workbench.util.CommandUtils;
 import org.argeo.cms.util.CmsUtils;
@@ -34,10 +35,15 @@ import org.argeo.tracker.core.TrackerUtils;
 import org.argeo.tracker.ui.TaskListLabelProvider;
 import org.argeo.tracker.ui.TaskVirtualListComposite;
 import org.eclipse.jface.viewers.ColumnLabelProvider;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.TableViewer;
 import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.MouseAdapter;
+import org.eclipse.swt.events.MouseEvent;
 import org.eclipse.swt.events.SelectionAdapter;
 import org.eclipse.swt.events.SelectionEvent;
 import org.eclipse.swt.graphics.Color;
+import org.eclipse.swt.graphics.Point;
 import org.eclipse.swt.layout.GridData;
 import org.eclipse.swt.layout.GridLayout;
 import org.eclipse.swt.layout.RowLayout;
@@ -122,7 +128,38 @@ public class DefaultDashboardEditor extends AbstractSuiteDashboard implements Re
                        TaskListLabelProvider labelProvider = new TaskListLabelProvider(trackerService);
                        tvlc = new TaskVirtualListComposite(parent, SWT.NO_FOCUS, labelProvider, 54);
                        tvlc.setLayoutData(EclipseUiUtils.fillAll());
-                       tvlc.getTableViewer().setInput(JcrUtils.nodeIteratorToList(nit).toArray());
+                       final TableViewer viewer = tvlc.getTableViewer();
+                       viewer.setInput(JcrUtils.nodeIteratorToList(nit).toArray());
+                       final TaskViewerContextMenu contextMenu = new TaskViewerContextMenu(viewer, getSession(),
+                                       activitiesService) {
+                               private static final long serialVersionUID = 1640863021424194303L;
+
+                               @Override
+                               public boolean performAction(String actionId) {
+                                       boolean hasChanged = super.performAction(actionId);
+                                       if (hasChanged) {
+                                               viewer.getTable().setFocus();
+                                               forceRefresh(null);
+                                               // NodeIterator nit =
+                                               // activitiesService.getMyTasks(getSession(), true);
+                                               // viewer.setInput(JcrUtils.nodeIteratorToList(nit).toArray());
+                                       }
+                                       return hasChanged;
+                               }
+                       };
+                       viewer.getTable().addMouseListener(new MouseAdapter() {
+                               private static final long serialVersionUID = 6737579410648595940L;
+
+                               @Override
+                               public void mouseDown(MouseEvent e) {
+                                       if (e.button == 3) {
+                                               // contextMenu.setCurrFolderPath(currDisplayedFolder);
+                                               contextMenu.show(viewer.getTable(), new Point(e.x, e.y),
+                                                               (IStructuredSelection) viewer.getSelection());
+                                       }
+                               }
+                       });
+
                }
        }