Newer
Older
import fucoin.supervisor.SuperVisorImpl;
import javax.swing.*;
import javax.swing.event.TableModelEvent;
import javax.swing.event.TableModelListener;
import java.awt.event.ItemEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class SuperVisorGuiControlImpl implements SuperVisorGuiControl {
private SuperVisorImpl superVisor;
private AmountTableModel amountTableModel;
private SuperVisorThreadGUI threadGUI;
private boolean logActive = false;
public SuperVisorGuiControlImpl(SuperVisorImpl sv) {
superVisor = sv;
init();
}
private void init() {
amountTableModel = new AmountTableModel();
threadGUI = new SuperVisorThreadGUI(this);
threadGUI.init();
}
public void guiTerminated() {
superVisor.exit();
}
@Override
public void onLeave() {
@Override
public void updateTable(String address, String name, int amount) {
this.amountTableModel.updateTable(address, name, amount);
}
private void log(LogMessage logMessage) {
if (logActive) {
threadGUI.log(logMessage);
}
@Override
public void addLogMsg(String msg) {
log(new LogMessage(msg));
}
@Override
public void addTransactionLogMessageSuccess(String message) {
log(new LogMessage(message, LogMessage.Context.TRANSACTION_SUCCESS));
}
@Override
public void addTransactionLogMessageFail(String message) {
log(new LogMessage(message, LogMessage.Context.TRANSACTION_FAIL));
}
public AmountTableModel getAmountTableModel() {
return amountTableModel;
}
public void setAmountTableModel(AmountTableModel amountTableModel) {
this.amountTableModel = amountTableModel;
}
public void activateLogging() {
this.logActive = true;
}
public void disableLogging() {
this.logActive = false;
}
public boolean isLogActive() {
return logActive;
}