Source 1
package com.remainsoftware.queuemonitor;
import java.util.Calendar;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Combo;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Group;
import org.eclipse.swt.widgets.Spinner;
import org.eclipse.swt.widgets.Text;
import org.eclipse.ui.part.ViewPart;
public class MessageMonitorView extends ViewPart {
private Text text;
public MessageMonitorView() {}
public void createPartControl(Composite parent) {
parent.setLayout(new org.eclipse.swt.layout.GridLayout(1, false));
final Combo combo =
new Combo(parent, SWT.READ_ONLY | SWT.DROP_DOWN);
combo.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
combo.setItems(new String[] { "Me", "QSYSOPR" });
combo.setText("Me");
combo.addSelectionListener(new SelectionAdapter() {public void widgetSelected(SelectionEvent e) {
StringBuffer buffer = new StringBuffer();
buffer.append(Calendar.getInstance().getTime().toString());
buffer.append("\t");
buffer.append(combo.getText());
buffer.append("\n");
buffer.append(text.getText());
text.setText(buffer.toString());
}});
Group group = new Group(parent, SWT.NONE);
group.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));
group.setLayout(new GridLayout(2, false));final Button button = new Button(group, SWT.CHECK);
button.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false));
button.setText("Alert when new messages arrive with severity higher or equal to ");final Spinner severity = new Spinner(group, SWT.BORDER);
severity.setMinimum(0);
severity.setMaximum(90);
severity.setSelection(30);
severity.setIncrement(10);
severity.setPageIncrement(10);
button.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
StringBuffer buffer = new StringBuffer();
buffer.append(Calendar.getInstance().getTime().toString());
buffer.append("\t ");
buffer.append(button.getText());
buffer.append(": ");
buffer.append(button.getSelection());
buffer.append("\n");
buffer.append(text.getText());
text.setText(buffer.toString());
}});
text = new Text(parent, SWT.MULTI | SWT.LEAD | SWT.BORDER);
text.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
text.setEditable(false);
text.setText("Messages go here");
}
@Override
public void setFocus() {}
Source 2
package com.remainsoftware.queuemonitor;
import java.util.Calendar;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Combo;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Group;
import org.eclipse.swt.widgets.Spinner;
import org.eclipse.swt.widgets.Text;
import org.eclipse.ui.part.ViewPart;
public class MessageMonitorView extends ViewPart {
private Text text;
public MessageMonitorView() {}
public void createPartControl(Composite parent) {
parent.setLayout(new org.eclipse.swt.layout.GridLayout(1, false));
final Combo combo =
new Combo(parent, SWT.READ_ONLY | SWT.DROP_DOWN);
combo.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
combo.setItems(new String[] { "Me", "QSYSOPR" });
combo.setText("Me");
combo.addSelectionListener(new SelectionAdapter() {public void widgetSelected(SelectionEvent e) {
StringBuffer buffer = new StringBuffer();
buffer.append(Calendar.getInstance().getTime().toString());
buffer.append("\t");
buffer.append(combo.getText());
buffer.append("\n");
buffer.append(text.getText());
text.setText(buffer.toString());
}});
Group group = new Group(parent, SWT.NONE);
group.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));
group.setLayout(new GridLayout(2, false));final Button button = new Button(group, SWT.CHECK);
button.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false));
button.setText("Alert when new messages arrive with severity higher or equal to ");final Spinner severity = new Spinner(group, SWT.BORDER);
severity.setMinimum(0);
severity.setMaximum(90);
severity.setSelection(30);
severity.setIncrement(10);
severity.setPageIncrement(10);
button.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
StringBuffer buffer = new StringBuffer();
buffer.append(Calendar.getInstance().getTime().toString());
buffer.append("\t ");
buffer.append(button.getText());
buffer.append(": ");
buffer.append(button.getSelection());
buffer.append("\n");
buffer.append(text.getText());
text.setText(buffer.toString());
}});
text = new Text(parent, SWT.MULTI | SWT.LEAD | SWT.BORDER);
text.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
text.setEditable(false);
text.setText("Messages go here");
}
@Override
public void setFocus() {}
public void selectionChanged(IWorkbenchPart part, ISelection selection) {
if(part == this)
return;
if(selection instanceof IStructuredSelection){
IStructuredSelection struct = (IStructuredSelection) selection;
Object object = struct.getFirstElement();
StringBuffer buffer = new StringBuffer();
buffer.append(Calendar.getInstance().getTime().toString());
buffer.append("\t ");
buffer.append("Number of objects selected: ");
buffer.append(struct.size());
buffer.append("\n");
buffer.append(Calendar.getInstance().getTime().toString());
buffer.append("\t ");
buffer.append("Selected object is of class: ");
buffer.append(object.getClass().getName());
buffer.append("\n");
buffer.append(Calendar.getInstance().getTime().toString());
buffer.append("\t ");
buffer.append("Selected object toString is: ");
buffer.append(object.toString());
buffer.append("\n");
buffer.append(text.getText());
text.setText(buffer.toString());
}
}@Override
public void dispose() {
getSite().getWorkbenchWindow().getSelectionService()
.removePostSelectionListener(this);
super.dispose();
}
target file
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde version="3.8"?><target name="rcp42" sequenceNumber="9">
<locations>
<location configuration="/C:/Users/jongw/.eclipse/org.eclipse.platform_4.4.2_1869064566_win32_win32_x86_64/configuration/" path="${eclipse_home}" type="Profile"/>
<location includeAllPlatforms="false" includeConfigurePhase="true" includeMode="planner" includeSource="true" type="InstallableUnit">
<unit id="org.eclipse.rcp.feature.group" version="4.2.2.v20130129-152330-7IARAABrMQkGSvMgQnUlz-DQz00h"/>
<unit id="org.eclipse.rcp.source.feature.group" version="4.2.2.v20130129-152330-7IARAABrMQkGSvMgQnUlz-DQz00h"/>
<repository location="http://download.eclipse.org/eclipse/updates/4.2"/>
</location>
</locations>
<environment>
<os>win32</os>
<ws>win32</ws>
<arch>x86_64</arch>
<nl>en_US</nl>
</environment>
<launcherArgs>
<vmArgs>-Dvmjdk/jre/bin/javaw.exe -Xquickstart -Xms100m -Xmx1024m -Xgcpolicy:gencon -Xscmx96m -Xshareclasses:name=IBMSDP_%u -XX:MaxPermSize=512M -Xcompressedrefs -Dcom.ibm.ws.management.event.max_polling_interval=1000 -DXmnx64m -Xss2m</vmArgs>
</launcherArgs>
</target>