X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=LogicUI%2Fsrc%2Fera%2Fmi%2Fgui%2FLogicUIStandalone.java;h=1df22beb36215481d94b738f0c30d0978043643d;hb=6fc37993a726bfa7ec8e0725c85417ce80cbeb5d;hp=3b3c740f87544eb73a9110a15a48532cae5c5827;hpb=6c67a9ff8361cd9fc082f40e2676f2c8b5911fe4;p=Mograsim.git diff --git a/LogicUI/src/era/mi/gui/LogicUIStandalone.java b/LogicUI/src/era/mi/gui/LogicUIStandalone.java index 3b3c740f..1df22beb 100644 --- a/LogicUI/src/era/mi/gui/LogicUIStandalone.java +++ b/LogicUI/src/era/mi/gui/LogicUIStandalone.java @@ -7,6 +7,9 @@ import org.eclipse.swt.layout.FillLayout; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Shell; +import era.mi.gui.model.ViewModel; +import era.mi.gui.modeladapter.LogicModelParameters; +import era.mi.gui.modeladapter.ViewLogicModelAdapter; import era.mi.logic.timeline.Timeline; import net.haspamelodica.swt.helper.zoomablecanvas.helper.ZoomableCanvasOverlay; import net.haspamelodica.swt.helper.zoomablecanvas.helper.ZoomableCanvasUserInput; @@ -18,24 +21,32 @@ import net.haspamelodica.swt.helper.zoomablecanvas.helper.ZoomableCanvasUserInpu */ public class LogicUIStandalone { + private ViewModel model; + private Timeline timeline; + private final Display display; private final Shell shell; private final LogicUICanvas ui; - private Timeline timeline; - public LogicUIStandalone(Timeline timeline) + public LogicUIStandalone(ViewModel model) { - this.timeline = timeline; + this.model = model; display = new Display(); shell = new Shell(display); shell.setLayout(new FillLayout()); - ui = new LogicUICanvas(shell, SWT.NONE); + ui = new LogicUICanvas(shell, SWT.NONE, model); ZoomableCanvasUserInput userInput = new ZoomableCanvasUserInput(ui); userInput.buttonDrag = 3; userInput.buttonZoom = 2; userInput.enableUserInput(); new ZoomableCanvasOverlay(ui, null).enableScale(); + + // TODO don't do this here + LogicModelParameters params = new LogicModelParameters(); + params.gateProcessTime = 50; + params.wireTravelTime = 10; + timeline = ViewLogicModelAdapter.convert(model, params); } public LogicUICanvas getLogicUICanvas() @@ -82,6 +93,6 @@ public class LogicUIStandalone if (!display.readAndDispatch()) display.sleep(); running.set(false); - simulationThread.interrupt(); +// simulationThread.interrupt(); } } \ No newline at end of file