]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTWikiBrowser.java
(refs #7358) Initial 4.7 update commit
[simantics/platform.git] / bundles / org.simantics.views.swt.client / src / org / simantics / views / swt / client / impl / SWTWikiBrowser.java
index 9e7f938103653467f3a63a44a0ff5e9b3b2918f5..f8dd5895ec67b896e3a81db769df75b1f92d9707 100644 (file)
-package org.simantics.views.swt.client.impl;\r
-\r
-import java.io.IOException;\r
-\r
-import org.eclipse.jface.layout.GridDataFactory;\r
-import org.eclipse.jface.layout.GridLayoutFactory;\r
-import org.eclipse.mylyn.wikitext.core.parser.MarkupParser;\r
-import org.eclipse.swt.browser.Browser;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.simantics.Simantics;\r
-import org.simantics.browsing.ui.common.ErrorLogger;\r
-import org.simantics.db.ReadGraph;\r
-import org.simantics.db.exception.DatabaseException;\r
-import org.simantics.db.layer0.variable.Variable;\r
-import org.simantics.db.request.Read;\r
-import org.simantics.scl.runtime.function.Function1;\r
-import org.simantics.utils.FileUtils;\r
-import org.simantics.utils.datastructures.map.Tuple;\r
-import org.simantics.utils.ui.BundleUtils;\r
-import org.simantics.views.swt.client.base.SingleSWTViewNode;\r
-import org.simantics.wiki.ui.SimanticsDialect;\r
-import org.simantics.wiki.ui.language.MediaWikiLanguage;\r
-\r
-public class SWTWikiBrowser extends SingleSWTViewNode<Browser> {\r
-\r
-       private static final long serialVersionUID = 5826022972081217837L;\r
-       \r
-       public String                   document;\r
-       public Variable                 variable;\r
-       public Function1<String, Boolean> navigate;\r
-       public Variable                                 edited;\r
-\r
-       private Tuple                    lastAppliedParametrization;\r
-\r
-       @Override\r
-       public void reset() {\r
-               super.reset();\r
-               lastAppliedParametrization = null;\r
-       }\r
-       \r
-       @Override\r
-       public void createControls(Composite parent) {\r
-\r
-               GridDataFactory.fillDefaults().grab(true, true).applyTo(parent);\r
-               GridLayoutFactory.fillDefaults().applyTo(parent);\r
-\r
-               control = new Browser(parent, style);\r
-               GridDataFactory.fillDefaults().grab(true, true).applyTo(control);\r
-\r
-               setProperties();\r
-\r
-       }\r
-\r
-       public void synchronizeVariable(Variable variable) {\r
-               \r
-       }\r
-       \r
-       public void synchronizeEdited(Variable edited) {\r
-               propertyCallback.apply("edited", edited);\r
-       }\r
-\r
-       public void synchronizeDocument(final String document) {\r
-               \r
-               if(document != null) {\r
-                       \r
-                       final Variable variable = SWTWikiBrowser.this.variable;\r
-                       if (variable == null) {\r
-                               return;\r
-                       }\r
-\r
-                       Tuple checkParam = new Tuple(document, variable);\r
-                       if (checkParam.equals(lastAppliedParametrization))\r
-                               return;\r
-                       \r
-                       lastAppliedParametrization = checkParam;\r
-\r
-                       try {\r
-                               \r
-                               String markup = Simantics.getSession().syncRequest(new Read<String>() {\r
-                                       @Override\r
-                                       public String perform(ReadGraph graph) throws DatabaseException {\r
-                                               return SimanticsDialect.INSTANCE.apply(graph, variable, document);\r
-                                       }\r
-                               });\r
-\r
-                               MarkupParser markupParser = new MarkupParser();\r
-                               MediaWikiLanguage language = new MediaWikiLanguage();\r
-                               markupParser.setMarkupLanguage(language);\r
-                               String htmlContent = markupParser.parseToHtml(markup);\r
-                               if (htmlContent == null)\r
-                                       return;\r
-                       \r
-                               final Browser control = this.control;\r
-                               if (control == null)\r
-                                       return;\r
-                               control.setText(htmlContent);\r
-                               \r
-                       } catch (DatabaseException e) {\r
-                               ErrorLogger.defaultLogError(e);\r
-                       }                       \r
-                       \r
-               }\r
-       }\r
-\r
-}\r
+package org.simantics.views.swt.client.impl;
+
+import org.eclipse.jface.layout.GridDataFactory;
+import org.eclipse.jface.layout.GridLayoutFactory;
+import org.eclipse.mylyn.wikitext.parser.MarkupParser;
+import org.eclipse.swt.browser.Browser;
+import org.eclipse.swt.widgets.Composite;
+import org.simantics.Simantics;
+import org.simantics.browsing.ui.common.ErrorLogger;
+import org.simantics.db.ReadGraph;
+import org.simantics.db.exception.DatabaseException;
+import org.simantics.db.layer0.variable.Variable;
+import org.simantics.db.request.Read;
+import org.simantics.scl.runtime.function.Function1;
+import org.simantics.utils.datastructures.map.Tuple;
+import org.simantics.views.swt.client.base.SingleSWTViewNode;
+import org.simantics.wiki.ui.SimanticsDialect;
+import org.simantics.wiki.ui.language.MediaWikiLanguage;
+
+public class SWTWikiBrowser extends SingleSWTViewNode<Browser> {
+
+       private static final long serialVersionUID = 5826022972081217837L;
+       
+       public String                   document;
+       public Variable                 variable;
+       public Function1<String, Boolean> navigate;
+       public Variable                                 edited;
+
+       private Tuple                    lastAppliedParametrization;
+
+       @Override
+       public void reset() {
+               super.reset();
+               lastAppliedParametrization = null;
+       }
+       
+       @Override
+       public void createControls(Composite parent) {
+
+               GridDataFactory.fillDefaults().grab(true, true).applyTo(parent);
+               GridLayoutFactory.fillDefaults().applyTo(parent);
+
+               control = new Browser(parent, style);
+               GridDataFactory.fillDefaults().grab(true, true).applyTo(control);
+
+               setProperties();
+
+       }
+
+       public void synchronizeVariable(Variable variable) {
+               
+       }
+       
+       public void synchronizeEdited(Variable edited) {
+               propertyCallback.apply("edited", edited);
+       }
+
+       public void synchronizeDocument(final String document) {
+               
+               if(document != null) {
+                       
+                       final Variable variable = SWTWikiBrowser.this.variable;
+                       if (variable == null) {
+                               return;
+                       }
+
+                       Tuple checkParam = new Tuple(document, variable);
+                       if (checkParam.equals(lastAppliedParametrization))
+                               return;
+                       
+                       lastAppliedParametrization = checkParam;
+
+                       try {
+                               
+                               String markup = Simantics.getSession().syncRequest(new Read<String>() {
+                                       @Override
+                                       public String perform(ReadGraph graph) throws DatabaseException {
+                                               return SimanticsDialect.INSTANCE.apply(graph, variable, document);
+                                       }
+                               });
+
+                               MarkupParser markupParser = new MarkupParser();
+                               MediaWikiLanguage language = new MediaWikiLanguage();
+                               markupParser.setMarkupLanguage(language);
+                               String htmlContent = markupParser.parseToHtml(markup);
+                               if (htmlContent == null)
+                                       return;
+                       
+                               final Browser control = this.control;
+                               if (control == null)
+                                       return;
+                               control.setText(htmlContent);
+                               
+                       } catch (DatabaseException e) {
+                               ErrorLogger.defaultLogError(e);
+                       }                       
+                       
+               }
+       }
+
+}