X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.document.swt.core%2Fsrc%2Forg%2Fsimantics%2Fdocument%2Fswt%2Fcore%2Fwidget%2FBrowserWidget.java;fp=bundles%2Forg.simantics.document.swt.core%2Fsrc%2Forg%2Fsimantics%2Fdocument%2Fswt%2Fcore%2Fwidget%2FBrowserWidget.java;h=a6e159cad629a0b09ea8fd6e7d8f517e392896eb;hb=969bd23cab98a79ca9101af33334000879fb60c5;hp=0000000000000000000000000000000000000000;hpb=866dba5cd5a3929bbeae85991796acb212338a08;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.document.swt.core/src/org/simantics/document/swt/core/widget/BrowserWidget.java b/bundles/org.simantics.document.swt.core/src/org/simantics/document/swt/core/widget/BrowserWidget.java new file mode 100644 index 000000000..a6e159cad --- /dev/null +++ b/bundles/org.simantics.document.swt.core/src/org/simantics/document/swt/core/widget/BrowserWidget.java @@ -0,0 +1,44 @@ +package org.simantics.document.swt.core.widget; + +import org.eclipse.swt.SWT; +import org.eclipse.swt.browser.Browser; +import org.eclipse.swt.events.PaintEvent; +import org.eclipse.swt.events.PaintListener; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Event; +import org.eclipse.swt.widgets.Listener; +import org.simantics.document.server.JSONObject; +import org.simantics.document.swt.core.SWTDocument; +import org.simantics.document.swt.core.base.LeafWidgetManager; + +public class BrowserWidget extends LeafWidgetManager { + + @Override + protected void doUpdateProperties(SWTDocument document, Browser control, JSONObject object) { + if(control.isDisposed()) return; + } + + @Override + protected Browser doCreateControl(SWTDocument document, Composite parent, JSONObject object) { + Browser browser = new Browser(parent, SWT.NONE); + + String url = object.getJSONField("url"); + if(url == null) + url = "www.google.fi"; + + System.out.println("add listener"); + parent.addListener(SWT.Paint, new Listener() { + + @Override + public void handleEvent(Event event) { + System.out.println("Show " + event.widget); + + } + }); + + browser.setUrl(url); + + return browser; + } + +}