summaryrefslogtreecommitdiffstats
path: root/src/com.gluster.storage.management.console/src
diff options
context:
space:
mode:
authorSelvasundaram <selvam@gluster.com>2011-11-10 08:29:49 +0530
committerSelvasundaram <selvam@gluster.com>2011-11-10 08:34:42 +0530
commit5db18d827c55d4452b55e8215721b86fbfa49c92 (patch)
tree680661201773a7b78776f9313fcb640cf555715d /src/com.gluster.storage.management.console/src
parenta7d564e78889cc2ce4950579e09d755be19ee63a (diff)
Story#65 Task#189 Double click on volume log row will show in a popup dialog
Diffstat (limited to 'src/com.gluster.storage.management.console/src')
-rw-r--r--src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/views/VolumeLogsView.java24
-rw-r--r--src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/views/pages/VolumeLogsPage.java5
2 files changed, 28 insertions, 1 deletions
diff --git a/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/views/VolumeLogsView.java b/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/views/VolumeLogsView.java
index 7f35d332..2790869f 100644
--- a/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/views/VolumeLogsView.java
+++ b/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/views/VolumeLogsView.java
@@ -1,14 +1,22 @@
package com.gluster.storage.management.console.views;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.jface.viewers.DoubleClickEvent;
+import org.eclipse.jface.viewers.IDoubleClickListener;
+import org.eclipse.jface.viewers.StructuredSelection;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Shell;
import org.eclipse.ui.part.ViewPart;
import com.gluster.storage.management.console.utils.GUIHelper;
import com.gluster.storage.management.console.views.pages.VolumeLogsPage;
+import com.gluster.storage.management.core.constants.CoreConstants;
import com.gluster.storage.management.core.model.Volume;
+import com.gluster.storage.management.core.model.VolumeLogMessage;
+import com.gluster.storage.management.core.utils.DateUtil;
-public class VolumeLogsView extends ViewPart {
+public class VolumeLogsView extends ViewPart implements IDoubleClickListener {
VolumeLogsPage logsPage;
public static final String ID = VolumeLogsView.class.getName();
private static final GUIHelper guiHelper = GUIHelper.getInstance();
@@ -25,6 +33,8 @@ public class VolumeLogsView extends ViewPart {
private void createPage(Composite parent) {
logsPage = new VolumeLogsPage(parent, SWT.NONE, volume);
+ logsPage.addDoubleClickListener(this);
+
parent.layout(); // IMP: lays out the form properly
}
@@ -32,4 +42,16 @@ public class VolumeLogsView extends ViewPart {
public void setFocus() {
logsPage.setFocus();
}
+
+ @Override
+ public void doubleClick(DoubleClickEvent event) {
+ VolumeLogMessage volumeLogMessage = (VolumeLogMessage) ((StructuredSelection) event.getSelection())
+ .getFirstElement();
+ String message = DateUtil.formatDate(volumeLogMessage.getTimestamp()) + " "
+ + DateUtil.formatTime(volumeLogMessage.getTimestamp()) + " [" + volumeLogMessage.getSeverity() + "]"
+ + CoreConstants.NEWLINE + CoreConstants.NEWLINE + volumeLogMessage.getMessage();
+
+ new MessageDialog(getSite().getShell(), "Log message from " + volumeLogMessage.getBrick(), GUIHelper
+ .getInstance().getImage(""), message, MessageDialog.NONE, new String[] { "Close" }, 0).open();
+ }
} \ No newline at end of file
diff --git a/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/views/pages/VolumeLogsPage.java b/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/views/pages/VolumeLogsPage.java
index e573229c..162160f8 100644
--- a/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/views/pages/VolumeLogsPage.java
+++ b/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/views/pages/VolumeLogsPage.java
@@ -26,6 +26,7 @@ import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.layout.TableColumnLayout;
import org.eclipse.jface.viewers.ArrayContentProvider;
import org.eclipse.jface.viewers.ColumnWeightData;
+import org.eclipse.jface.viewers.IDoubleClickListener;
import org.eclipse.jface.viewers.TableViewer;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.DisposeEvent;
@@ -423,4 +424,8 @@ public class VolumeLogsPage extends Composite {
calendar.set(Calendar.SECOND, time.getSeconds());
return calendar.getTime();
}
+
+ public void addDoubleClickListener(IDoubleClickListener listener) {
+ tableViewer.addDoubleClickListener(listener);
+ }
}