package createtable.actions;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.lang.reflect.InvocationTargetException;
import javax.swing.Timer;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.dialogs.ProgressMonitorDialog;
import org.eclipse.jface.operation.IRunnableWithProgress;
import org.eclipse.swt.layout.RowLayout;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.ui.IWorkbenchWindow;
//import org.eclipse.jface.window.Window;
public class Monitor implements IRunnableWithProgress{
/**
* @param args
*/
private int i=0;
private IProgressMonitor monitor;
//private Timer timer = new Timer(1000,(ActionListener) this);
public Monitor(){
}
public void run(IProgressMonitor monitor) throws InvocationTargetException,
InterruptedException
{
this.monitor=monitor;
monitor.beginTask("�������ɣ�",20);
while(true){
if(i<20){
Thread.sleep(10);
monitor.worked(1);
i++;
}
if(i>=20&&i<25){
monitor.beginTask("�������ɣ�",20);
i=0;
}
if(i>=25&&i<30){
Thread.sleep(7000);
}
if(i>=30){
this.monitor.worked(20);
return;
}
}
}
public void timerStop(String compname){
this.i=28;
}
public void timerStart(){
i=0;
}
public void monitorCancel(){
this.i=35;
}
}