From: Tuukka Lehtonen Date: Mon, 29 Aug 2016 10:25:38 +0000 (+0300) Subject: Sync git svn branch with SVN repository r33153. X-Git-Tag: v1.25.0~145^2 X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=commitdiff_plain;h=25b6c25959c1fb3c60bb41cd0e1f0808e7fc3769 Sync git svn branch with SVN repository r33153. refs #6475 --- diff --git a/bundles/org.simantics.databoard/build.properties b/bundles/org.simantics.databoard/build.properties index 46daf3633..8a9330607 100644 --- a/bundles/org.simantics.databoard/build.properties +++ b/bundles/org.simantics.databoard/build.properties @@ -11,4 +11,4 @@ src.includes = src/org/simantics/databoard/baseUnits.txt,\ src/org/simantics/databoard/standardTypes.dbt,\ examples/,\ testcases/,\ - doc-isv/ + src-isv/ diff --git a/bundles/org.simantics.desktop.product/src/.keep b/bundles/org.simantics.desktop.product/src/.keep new file mode 100644 index 000000000..e69de29bb diff --git a/bundles/org.simantics.desktop.ui.ontology/src/.keep b/bundles/org.simantics.desktop.ui.ontology/src/.keep new file mode 100644 index 000000000..e69de29bb diff --git a/bundles/org.simantics.document.server/build.properties b/bundles/org.simantics.document.server/build.properties index 34f26f886..5a15a6576 100644 --- a/bundles/org.simantics.document.server/build.properties +++ b/bundles/org.simantics.document.server/build.properties @@ -4,6 +4,6 @@ bin.includes = META-INF/,\ .,\ plugin.xml,\ webdefault.xml,\ - scl/,\ + scl/ src.includes = scl/ diff --git a/bundles/org.simantics.document.ui.ontology/graph.tg b/bundles/org.simantics.document.ui.ontology/graph.tg index 0501da805..a32cf12e7 100644 Binary files a/bundles/org.simantics.document.ui.ontology/graph.tg and b/bundles/org.simantics.document.ui.ontology/graph.tg differ diff --git a/bundles/org.simantics.document.ui.ontology/graph/DocumentUI.pgraph b/bundles/org.simantics.document.ui.ontology/graph/DocumentUI.pgraph index 914bdca44..cb7cd6498 100644 --- a/bundles/org.simantics.document.ui.ontology/graph/DocumentUI.pgraph +++ b/bundles/org.simantics.document.ui.ontology/graph/DocumentUI.pgraph @@ -38,8 +38,12 @@ UI.WikitextContribution.View : VIEWS.Composite SG.Node.children _ : L0.List @L0.list _ : VIEWS.Composite - VIEWS.Composite.layout _ : VIEWS.GridLayout - VIEWS.GridLayout.columnCount 19 + VIEWS.Composite.layout _ : VIEWS.RowLayout + //VIEWS.RowLayout.type VIEWS.Control.Style.Constant.Horizontal + //VIEWS.RowLayout.spacing 0 + //VIEWS.RowLayout.justify true + //VIEWS.RowLayout.pack true + //VIEWS.RowLayout.wrap true VIEWS.Control.layoutData _ : VIEWS.GridLayout.GridData VIEWS.GridLayout.GridData.horizontalGrab true SG.Node.children _ : L0.List @@ -49,135 +53,102 @@ UI.WikitextContribution.View : VIEWS.Composite VIEWS.Button.tooltip "Makes selection bold or inserts some bold text at cursor" VIEWS.Button.modifier UI.Functions.boldModifier : L0.Function VIEWS.Button.image SILK.text_bold - VIEWS.Control.layoutData _ : VIEWS.GridLayout.GridData - VIEWS.GridLayout.GridData.horizontalAlignment VIEWS.GridLayout.GridData.BEGINNING - VIEWS.GridLayout.GridData.verticalAlignment VIEWS.GridLayout.GridData.BEGINNING + VIEWS.Control.layoutData _ : VIEWS.RowLayout.RowData _ : VIEWS.Button VIEWS.Button.tooltip "Makes selection italic or inserts some italic text at cursor" VIEWS.Button.modifier UI.Functions.italicModifier : L0.Function VIEWS.Button.image SILK.text_italic - VIEWS.Control.layoutData _ : VIEWS.GridLayout.GridData - VIEWS.GridLayout.GridData.horizontalAlignment VIEWS.GridLayout.GridData.BEGINNING - VIEWS.GridLayout.GridData.verticalAlignment VIEWS.GridLayout.GridData.BEGINNING + VIEWS.Control.layoutData _ : VIEWS.RowLayout.RowData _ : VIEWS.Button VIEWS.Button.tooltip "Makes selection strikethrough or inserts some strikethrough text at cursor" VIEWS.Button.modifier UI.Functions.strikethroughModifier : L0.Function VIEWS.Button.image SILK.text_strikethrough - VIEWS.Control.layoutData _ : VIEWS.GridLayout.GridData - VIEWS.GridLayout.GridData.horizontalAlignment VIEWS.GridLayout.GridData.BEGINNING - VIEWS.GridLayout.GridData.verticalAlignment VIEWS.GridLayout.GridData.BEGINNING + VIEWS.Control.layoutData _ : VIEWS.RowLayout.RowData _ : VIEWS.Button VIEWS.Button.tooltip "Makes selection underlined or inserts some underlined text at cursor" VIEWS.Button.modifier UI.Functions.underlineModifier : L0.Function VIEWS.Button.image SILK.text_underline - VIEWS.Control.layoutData _ : VIEWS.GridLayout.GridData - VIEWS.GridLayout.GridData.horizontalAlignment VIEWS.GridLayout.GridData.BEGINNING - VIEWS.GridLayout.GridData.verticalAlignment VIEWS.GridLayout.GridData.BEGINNING + VIEWS.Control.layoutData _ : VIEWS.RowLayout.RowData _ : VIEWS.Button VIEWS.Button.tooltip "Inserts a horizontal ruler at cursor" VIEWS.Button.modifier UI.Functions.horizontalRulerModifier : L0.Function VIEWS.Button.image SILK.text_horizontalrule - VIEWS.Control.layoutData _ : VIEWS.GridLayout.GridData - VIEWS.GridLayout.GridData.horizontalAlignment VIEWS.GridLayout.GridData.BEGINNING - VIEWS.GridLayout.GridData.verticalAlignment VIEWS.GridLayout.GridData.BEGINNING + VIEWS.Control.layoutData _ : VIEWS.RowLayout.RowData _ : VIEWS.Button VIEWS.Button.tooltip "Indents text" VIEWS.Button.modifier UI.Functions.indentModifier : L0.Function VIEWS.Button.image SILK.text_indent - VIEWS.Control.layoutData _ : VIEWS.GridLayout.GridData - VIEWS.GridLayout.GridData.horizontalAlignment VIEWS.GridLayout.GridData.BEGINNING - VIEWS.GridLayout.GridData.verticalAlignment VIEWS.GridLayout.GridData.BEGINNING + VIEWS.Control.layoutData _ : VIEWS.RowLayout.RowData _ : VIEWS.Button VIEWS.Button.tooltip "Modifies selection font or inserts text with font settings" VIEWS.Button.modifier UI.Functions.fontModifier : L0.Function VIEWS.Button.image SILK.font - VIEWS.Control.layoutData _ : VIEWS.GridLayout.GridData - VIEWS.GridLayout.GridData.horizontalAlignment VIEWS.GridLayout.GridData.BEGINNING - VIEWS.GridLayout.GridData.verticalAlignment VIEWS.GridLayout.GridData.BEGINNING + VIEWS.Control.layoutData _ : VIEWS.RowLayout.RowData _ : VIEWS.Button VIEWS.Button.tooltip "Inserts an image" VIEWS.Button.modifier UI.Functions.imageModifier : L0.Function VIEWS.Button.image SILK.image - VIEWS.Control.layoutData _ : VIEWS.GridLayout.GridData - VIEWS.GridLayout.GridData.horizontalAlignment VIEWS.GridLayout.GridData.BEGINNING - VIEWS.GridLayout.GridData.verticalAlignment VIEWS.GridLayout.GridData.BEGINNING + VIEWS.Control.layoutData _ : VIEWS.RowLayout.RowData + _ : VIEWS.Button + VIEWS.Button.tooltip "Inserts an internal model-specific document link" + VIEWS.Button.modifier UI.Functions.internalLinkModifier : L0.Function + VIEWS.Button.image SILK.database_link + VIEWS.Control.layoutData _ : VIEWS.RowLayout.RowData + _ : VIEWS.Button + VIEWS.Button.tooltip "Inserts an external website link" + VIEWS.Button.modifier UI.Functions.linkModifier : L0.Function + VIEWS.Button.image SILK.world_link + VIEWS.Control.layoutData _ : VIEWS.RowLayout.RowData _ : VIEWS.Button VIEWS.Button.tooltip "Inserts a 1st level header" VIEWS.Button.modifier UI.Functions.header1Modifier : L0.Function VIEWS.Button.image SILK.text_heading_1 - VIEWS.Control.layoutData _ : VIEWS.GridLayout.GridData - VIEWS.GridLayout.GridData.horizontalAlignment VIEWS.GridLayout.GridData.BEGINNING - VIEWS.GridLayout.GridData.verticalAlignment VIEWS.GridLayout.GridData.BEGINNING + VIEWS.Control.layoutData _ : VIEWS.RowLayout.RowData _ : VIEWS.Button VIEWS.Button.tooltip "Inserts a 2nd level header" VIEWS.Button.modifier UI.Functions.header2Modifier : L0.Function VIEWS.Button.image SILK.text_heading_2 - VIEWS.Control.layoutData _ : VIEWS.GridLayout.GridData - VIEWS.GridLayout.GridData.horizontalAlignment VIEWS.GridLayout.GridData.BEGINNING - VIEWS.GridLayout.GridData.verticalAlignment VIEWS.GridLayout.GridData.BEGINNING + VIEWS.Control.layoutData _ : VIEWS.RowLayout.RowData _ : VIEWS.Button VIEWS.Button.tooltip "Inserts a 3rd level header" VIEWS.Button.modifier UI.Functions.header3Modifier : L0.Function VIEWS.Button.image SILK.text_heading_3 - VIEWS.Control.layoutData _ : VIEWS.GridLayout.GridData - VIEWS.GridLayout.GridData.horizontalAlignment VIEWS.GridLayout.GridData.BEGINNING - VIEWS.GridLayout.GridData.verticalAlignment VIEWS.GridLayout.GridData.BEGINNING + VIEWS.Control.layoutData _ : VIEWS.RowLayout.RowData _ : VIEWS.Button VIEWS.Button.tooltip "Inserts a 4th level header" VIEWS.Button.modifier UI.Functions.header4Modifier : L0.Function VIEWS.Button.image SILK.text_heading_4 - VIEWS.Control.layoutData _ : VIEWS.GridLayout.GridData - VIEWS.GridLayout.GridData.horizontalAlignment VIEWS.GridLayout.GridData.BEGINNING - VIEWS.GridLayout.GridData.verticalAlignment VIEWS.GridLayout.GridData.BEGINNING + VIEWS.Control.layoutData _ : VIEWS.RowLayout.RowData _ : VIEWS.Button VIEWS.Button.tooltip "Inserts a numbered list" VIEWS.Button.modifier UI.Functions.numberedListModifier : L0.Function VIEWS.Button.image SILK.text_list_numbers - VIEWS.Control.layoutData _ : VIEWS.GridLayout.GridData - VIEWS.GridLayout.GridData.horizontalAlignment VIEWS.GridLayout.GridData.BEGINNING - VIEWS.GridLayout.GridData.verticalAlignment VIEWS.GridLayout.GridData.BEGINNING + VIEWS.Control.layoutData _ : VIEWS.RowLayout.RowData _ : VIEWS.Button VIEWS.Button.tooltip "Inserts a bullet list" VIEWS.Button.modifier UI.Functions.bulletListModifier : L0.Function VIEWS.Button.image SILK.text_list_bullets - VIEWS.Control.layoutData _ : VIEWS.GridLayout.GridData - VIEWS.GridLayout.GridData.horizontalAlignment VIEWS.GridLayout.GridData.BEGINNING - VIEWS.GridLayout.GridData.verticalAlignment VIEWS.GridLayout.GridData.BEGINNING + VIEWS.Control.layoutData _ : VIEWS.RowLayout.RowData _ : VIEWS.Button VIEWS.Button.tooltip "Inserts a table" VIEWS.Button.modifier UI.Functions.tableModifier : L0.Function VIEWS.Button.image SILK.table - VIEWS.Control.layoutData _ : VIEWS.GridLayout.GridData - VIEWS.GridLayout.GridData.horizontalAlignment VIEWS.GridLayout.GridData.BEGINNING - VIEWS.GridLayout.GridData.verticalAlignment VIEWS.GridLayout.GridData.BEGINNING - _ : VIEWS.Button - VIEWS.Button.tooltip "Inserts an external website link" - VIEWS.Button.modifier UI.Functions.linkModifier : L0.Function - VIEWS.Button.image SILK.link - VIEWS.Control.layoutData _ : VIEWS.GridLayout.GridData - VIEWS.GridLayout.GridData.horizontalAlignment VIEWS.GridLayout.GridData.BEGINNING - VIEWS.GridLayout.GridData.verticalAlignment VIEWS.GridLayout.GridData.BEGINNING + VIEWS.Control.layoutData _ : VIEWS.RowLayout.RowData _ : VIEWS.Button VIEWS.Button.text "&Styles" VIEWS.Button.tooltip "Edits document styles" VIEWS.Button.modifier UI.Functions.styleModifier : L0.Function - VIEWS.Control.layoutData _ : VIEWS.GridLayout.GridData - VIEWS.GridLayout.GridData.horizontalAlignment VIEWS.GridLayout.GridData.BEGINNING - VIEWS.GridLayout.GridData.verticalAlignment VIEWS.GridLayout.GridData.BEGINNING + VIEWS.Control.layoutData _ : VIEWS.RowLayout.RowData _ : VIEWS.Button VIEWS.Button.text "&Apply changes" VIEWS.Button.tooltip "Applies any changes in the wiki markup into the document" VIEWS.Button.modifier UI.Functions.wikitextModifier : L0.Function - VIEWS.Control.layoutData _ : VIEWS.GridLayout.GridData - VIEWS.GridLayout.GridData.horizontalAlignment VIEWS.GridLayout.GridData.BEGINNING - VIEWS.GridLayout.GridData.verticalAlignment VIEWS.GridLayout.GridData.BEGINNING + VIEWS.Control.layoutData _ : VIEWS.RowLayout.RowData _ : VIEWS.Button VIEWS.Button.text "Delete document" VIEWS.Button.tooltip "Deletes the document" VIEWS.Button.modifier UI.Functions.onDeleteDocumentButton : L0.Function - VIEWS.Control.layoutData _ : VIEWS.GridLayout.GridData - VIEWS.GridLayout.GridData.horizontalAlignment VIEWS.GridLayout.GridData.BEGINNING - VIEWS.GridLayout.GridData.verticalAlignment VIEWS.GridLayout.GridData.BEGINNING + VIEWS.Control.layoutData _ : VIEWS.RowLayout.RowData UI.WikitextContribution.View.TextContainer : VIEWS.Composite VIEWS.Control.layoutData _ : VIEWS.GridLayout.GridData @@ -242,6 +213,8 @@ UI.Sash : VIEWS.SashForm VIEWS.GridLayout.GridData.verticalGrab true VIEWS.Browser.variable DOC.Functions.documentationRootVariable VIEWS.Browser.document DOC.Functions.documentationText + VIEWS.Browser.locationChanging UI.Functions.locationChanging : L0.Function + L0.HasValueType "a -> Boolean" UI.WikitextContribution.View UI.NoDocument : VIEWS.Composite diff --git a/bundles/org.simantics.document.ui.ontology/src/org/simantics/document/ui/DocumentUIResource.java b/bundles/org.simantics.document.ui.ontology/src/org/simantics/document/ui/DocumentUIResource.java index 7c5b0f455..82375ae2a 100644 --- a/bundles/org.simantics.document.ui.ontology/src/org/simantics/document/ui/DocumentUIResource.java +++ b/bundles/org.simantics.document.ui.ontology/src/org/simantics/document/ui/DocumentUIResource.java @@ -34,9 +34,11 @@ public class DocumentUIResource { public final Resource Functions_horizontalRulerModifier; public final Resource Functions_imageModifier; public final Resource Functions_indentModifier; + public final Resource Functions_internalLinkModifier; public final Resource Functions_isWikitext; public final Resource Functions_italicModifier; public final Resource Functions_linkModifier; + public final Resource Functions_locationChanging; public final Resource Functions_noDocumentText; public final Resource Functions_numberedListModifier; public final Resource Functions_onCreateDocumentButton; @@ -83,9 +85,11 @@ public class DocumentUIResource { public static final String Functions_horizontalRulerModifier = "http://www.simantics.org/DocumentUI-1.1/Functions/horizontalRulerModifier"; public static final String Functions_imageModifier = "http://www.simantics.org/DocumentUI-1.1/Functions/imageModifier"; public static final String Functions_indentModifier = "http://www.simantics.org/DocumentUI-1.1/Functions/indentModifier"; + public static final String Functions_internalLinkModifier = "http://www.simantics.org/DocumentUI-1.1/Functions/internalLinkModifier"; public static final String Functions_isWikitext = "http://www.simantics.org/DocumentUI-1.1/Functions/isWikitext"; public static final String Functions_italicModifier = "http://www.simantics.org/DocumentUI-1.1/Functions/italicModifier"; public static final String Functions_linkModifier = "http://www.simantics.org/DocumentUI-1.1/Functions/linkModifier"; + public static final String Functions_locationChanging = "http://www.simantics.org/DocumentUI-1.1/Functions/locationChanging"; public static final String Functions_noDocumentText = "http://www.simantics.org/DocumentUI-1.1/Functions/noDocumentText"; public static final String Functions_numberedListModifier = "http://www.simantics.org/DocumentUI-1.1/Functions/numberedListModifier"; public static final String Functions_onCreateDocumentButton = "http://www.simantics.org/DocumentUI-1.1/Functions/onCreateDocumentButton"; @@ -142,9 +146,11 @@ public class DocumentUIResource { Functions_horizontalRulerModifier = getResourceOrNull(graph, URIs.Functions_horizontalRulerModifier); Functions_imageModifier = getResourceOrNull(graph, URIs.Functions_imageModifier); Functions_indentModifier = getResourceOrNull(graph, URIs.Functions_indentModifier); + Functions_internalLinkModifier = getResourceOrNull(graph, URIs.Functions_internalLinkModifier); Functions_isWikitext = getResourceOrNull(graph, URIs.Functions_isWikitext); Functions_italicModifier = getResourceOrNull(graph, URIs.Functions_italicModifier); Functions_linkModifier = getResourceOrNull(graph, URIs.Functions_linkModifier); + Functions_locationChanging = getResourceOrNull(graph, URIs.Functions_locationChanging); Functions_noDocumentText = getResourceOrNull(graph, URIs.Functions_noDocumentText); Functions_numberedListModifier = getResourceOrNull(graph, URIs.Functions_numberedListModifier); Functions_onCreateDocumentButton = getResourceOrNull(graph, URIs.Functions_onCreateDocumentButton); diff --git a/bundles/org.simantics.document.ui/src/org/simantics/document/ui/DocumentView.java b/bundles/org.simantics.document.ui/src/org/simantics/document/ui/DocumentView.java index ccbfbd508..025b88b08 100644 --- a/bundles/org.simantics.document.ui/src/org/simantics/document/ui/DocumentView.java +++ b/bundles/org.simantics.document.ui/src/org/simantics/document/ui/DocumentView.java @@ -11,7 +11,12 @@ *******************************************************************************/ package org.simantics.document.ui; +import org.eclipse.jface.action.Action; +import org.eclipse.jface.action.IAction; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.ui.IWorkbenchPart; import org.simantics.ui.workbench.IPropertyPage; +import org.simantics.utils.ui.BundleUtils; import org.simantics.views.swt.ModelledView; /** @@ -19,6 +24,8 @@ import org.simantics.views.swt.ModelledView; */ public class DocumentView extends ModelledView { + private boolean pinSelection = false; + @Override protected String configurationURI() { return DocumentUIResource.URIs.View; @@ -29,4 +36,32 @@ public class DocumentView extends ModelledView { return null; } + @Override + protected void inputChanged(IWorkbenchPart provider, Object input) { + if (pinSelection) + return; + super.inputChanged(provider, input); + } + + @Override + public void createPartControl(Composite parent) { + super.createPartControl(parent); + getViewSite().getActionBars().getToolBarManager().add(new PinSelection()); + } + + private class PinSelection extends Action { + public PinSelection() { + super("Pin Selection", IAction.AS_CHECK_BOX); + setImageDescriptor( + BundleUtils.getImageDescriptorFromPlugin( + "org.eclipse.ui", + "icons/full/etool16/pin_editor.png")); + } + + @Override + public void run() { + pinSelection = isChecked(); + } + } + } diff --git a/bundles/org.simantics.document.ui/src/org/simantics/document/ui/function/All.java b/bundles/org.simantics.document.ui/src/org/simantics/document/ui/function/All.java index 20b8d3d0e..e5f8b4392 100644 --- a/bundles/org.simantics.document.ui/src/org/simantics/document/ui/function/All.java +++ b/bundles/org.simantics.document.ui/src/org/simantics/document/ui/function/All.java @@ -13,8 +13,11 @@ package org.simantics.document.ui.function; import java.util.TreeMap; +import org.eclipse.core.runtime.IStatus; +import org.eclipse.core.runtime.Status; import org.eclipse.jface.viewers.ISelectionProvider; import org.eclipse.jface.viewers.StructuredSelection; +import org.eclipse.swt.browser.LocationEvent; import org.eclipse.swt.graphics.FontData; import org.eclipse.swt.graphics.Point; import org.eclipse.swt.graphics.RGB; @@ -30,19 +33,26 @@ import org.simantics.browsing.ui.NodeContext; import org.simantics.databoard.Bindings; import org.simantics.db.ReadGraph; import org.simantics.db.Resource; +import org.simantics.db.Session; import org.simantics.db.WriteGraph; import org.simantics.db.common.request.ReadRequest; +import org.simantics.db.common.request.UnaryRead; import org.simantics.db.common.request.WriteRequest; import org.simantics.db.common.utils.Logger; import org.simantics.db.common.utils.NameUtils; +import org.simantics.db.common.utils.RequestUtil; import org.simantics.db.exception.DatabaseException; import org.simantics.db.layer0.adapter.Instances; import org.simantics.db.layer0.request.PossibleModel; +import org.simantics.db.layer0.request.PossibleResource; import org.simantics.db.layer0.util.RemoverUtil; import org.simantics.db.layer0.variable.RVI; import org.simantics.db.layer0.variable.Variable; +import org.simantics.db.layer0.variable.Variables; +import org.simantics.document.DocumentDialect; import org.simantics.document.DocumentResource; import org.simantics.document.DocumentUtils; +import org.simantics.document.ui.Activator; import org.simantics.document.ui.CSSEditor; import org.simantics.layer0.Layer0; import org.simantics.scenegraph.INode; @@ -50,9 +60,12 @@ import org.simantics.scenegraph.loader.ScenegraphLoaderProcess; import org.simantics.scenegraph.loader.ScenegraphLoaderUtils; import org.simantics.scenegraph.loader.ScenegraphLoaderUtils.ScenegraphPropertyReference; import org.simantics.scl.reflection.annotations.SCLValue; +import org.simantics.scl.runtime.function.Function1; import org.simantics.scl.runtime.function.FunctionImpl1; import org.simantics.scl.runtime.function.FunctionImpl3; +import org.simantics.ui.SimanticsUI; import org.simantics.ui.workbench.ResourceEditorInput2; +import org.simantics.ui.workbench.action.DefaultActions; import org.simantics.utils.threads.SWTThread; import org.simantics.utils.ui.workbench.WorkbenchUtils; @@ -546,7 +559,7 @@ public class All { @Override void perform(String before, String selected, String after, Point selection) { - textReference.setValue(before + "[[Image:root://Library/image.png|100px]]" + selected + after); + textReference.setValue(before + "[[Image:root://Library/image.png|100px]]" + "\r\n" + selected + after); } @@ -683,6 +696,18 @@ public class All { } + @SCLValue(type = "ReadGraph -> Resource -> Variable -> b") + public static Object internalLinkModifier(ReadGraph graph, Resource resource, final Variable context) throws DatabaseException { + return new WikiButtonModifier(graph, context) { + @Override + void perform(String before, String selected, String after, Point selection) { + textReference.setValue(before + + "[[Media:root://Documents/Document.pdf|Link to a file within the model]]\r\n" + selected + after); + + } + }; + } + @SCLValue(type = "ReadGraph -> Resource -> Variable -> b") public static Object linkModifier(ReadGraph graph, Resource resource, final Variable context) throws DatabaseException { @@ -691,8 +716,8 @@ public class All { @Override void perform(String before, String selected, String after, Point selection) { - textReference.setValue(before + "\r\n" + - "[http://www.simantics.org External Website Link]\r\n" + selected + after); + textReference.setValue(before + + "[http://www.simantics.org External Website Link]\r\n" + selected + after); } @@ -815,5 +840,51 @@ public class All { return true; } - + + private static class ResolveURI extends UnaryRead { + public ResolveURI(String uri) { + super(uri); + } + @Override + public Object perform(ReadGraph graph) throws DatabaseException { + Object result = graph.syncRequest(new PossibleResource(parameter)); + if (result == null) + result = Variables.getPossibleVariable(graph, parameter); + return result; + } + } + + private static final Function1 PERFORM_DEFAULT_ACTION_FOR_URI_RESOURCE = new Function1() { + @Override + public Boolean apply(Object p0) { + LocationEvent le = (LocationEvent) p0; + if (le.location.startsWith(DocumentDialect.SIMANTICS_INTERNAL_URI_PREFIX)) { + // This is not a valid URL anyway so deny relocation. + le.doit = false; + + // Try to execute default action for the resource or variable + // that the URI represents. + String uri = le.location.substring(DocumentDialect.SIMANTICS_INTERNAL_URI_PREFIX.length()); + try { + Session s = Simantics.getSession(); + Object input = RequestUtil.trySyncRequest(s, + SimanticsUI.UI_THREAD_REQUEST_START_TIMEOUT, + SimanticsUI.UI_THREAD_REQUEST_EXECUTION_TIMEOUT, + new ResolveURI(uri)); + if (input != null) { + DefaultActions.asyncPerformDefaultAction(s, input, false, false, false); + } + } catch (DatabaseException | InterruptedException e) { + Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Failed to resolve URI to a database resource or variable: " + uri, e)); + } + } + return true; + } + }; + + @SCLValue(type = "ReadGraph -> Resource -> Variable -> b") + public static Function1 locationChanging(ReadGraph graph, Resource variable, Variable context) throws DatabaseException { + return PERFORM_DEFAULT_ACTION_FOR_URI_RESOURCE; + } + } diff --git a/bundles/org.simantics.document/src/org/simantics/document/DocumentDialect.java b/bundles/org.simantics.document/src/org/simantics/document/DocumentDialect.java index 9fc8e98a7..7cb6bbee0 100644 --- a/bundles/org.simantics.document/src/org/simantics/document/DocumentDialect.java +++ b/bundles/org.simantics.document/src/org/simantics/document/DocumentDialect.java @@ -11,9 +11,10 @@ *******************************************************************************/ package org.simantics.document; -import java.io.File; import java.io.IOException; import java.math.BigInteger; +import java.nio.file.Files; +import java.nio.file.Path; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.util.regex.Matcher; @@ -26,78 +27,109 @@ import org.simantics.db.Resource; import org.simantics.db.common.request.PossibleIndexRoot; import org.simantics.db.exception.DatabaseException; import org.simantics.image2.ontology.ImageResource; -import org.simantics.utils.FileUtils; - public class DocumentDialect { - - final Pattern imagePattern = Pattern.compile("\\[\\[Image(?::([^\\]]+))?\\]\\]"); final static public DocumentDialect INSTANCE = new DocumentDialect(); - public String transform(ReadGraph graph, Resource res, String options) { - + public static final String SIMANTICS_INTERNAL_URI_PREFIX = "http://simantics-internal/"; + + private static final String HTTP = "http://"; + private static final String ROOT = "root:/"; + private static final String IMAGE = "image"; + private static final String MEDIA = "media"; + + final Pattern imageOrMediaPattern = Pattern.compile("\\[\\[([Ii]mage|[Mm]edia)(?::([^\\]]+))?\\]\\]"); + + private static String digest(byte[] bytes) throws NoSuchAlgorithmException { + MessageDigest md = MessageDigest.getInstance("MD5"); + md.update(bytes); + BigInteger number = new BigInteger(1, md.digest()); + return number.toString(16); + } + + private static String imageExtension(ReadGraph graph, Resource image) throws DatabaseException { + ImageResource IMAGE = ImageResource.getInstance(graph); + if (graph.isInstanceOf(image, IMAGE.PngImage)) + return ".png"; + else if (graph.isInstanceOf(image, IMAGE.JpegImage)) + return ".jpg"; + return null; + } + + public String transform(ReadGraph graph, Resource res, String type, String options) { try { - String[] parts = options.split("\\|"); - if(parts.length > 0) { - + if (parts.length > 0) { String uri = parts[0]; + Resource indexRoot = graph.syncRequest(new PossibleIndexRoot(res)); - if(indexRoot == null) return null; + if (indexRoot == null) return null; String rootURI = graph.getURI(indexRoot); - uri = uri.replace("root:/", rootURI); - // (Apros #12268) For easier image linking, allow users to - // write white space as ' ' in the wiki-style image links. + + uri = uri.replace(ROOT, rootURI); + + // (Apros #12268) For more user-friendly linking, allow users to + // write white space as ' ' in the wiki-style image links instead + // of having to write %20. uri = uri.replace(" ", "%20"); - Resource image = graph.getPossibleResource(uri); - if(image == null) return null; - byte[] bytes = graph.getValue(image, Bindings.BYTE_ARRAY); - MessageDigest md; - md = MessageDigest.getInstance("MD5"); - md.update(bytes); - BigInteger number = new BigInteger(1, md.digest()); - String digest = number.toString(16); - File dir = Simantics.getTemporaryDirectory("documentImages"); - dir.mkdirs(); - - ImageResource IMAGE = ImageResource.getInstance(graph); - - String extension; - if(graph.isInstanceOf(image, IMAGE.PngImage)) extension = ".png"; - else if(graph.isInstanceOf(image, IMAGE.JpegImage)) extension = ".jpg"; - else return null; - - File f = new File(dir, digest + extension); - if(!f.exists()) - FileUtils.writeFile(f, bytes); - StringBuilder sb = new StringBuilder(); - sb.append("[[File: " + f.toURI()); - for(int i=1;i() { @Override diff --git a/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/componentTypeEditor/PGraphEditorDocumentProvider.java b/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/componentTypeEditor/PGraphEditorDocumentProvider.java index e59d3da0a..2bb8fbf76 100644 --- a/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/componentTypeEditor/PGraphEditorDocumentProvider.java +++ b/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/componentTypeEditor/PGraphEditorDocumentProvider.java @@ -2,7 +2,6 @@ package org.simantics.modeling.ui.componentTypeEditor; import java.io.PrintWriter; import java.io.StringWriter; -import java.util.Arrays; import java.util.Collections; import java.util.List; @@ -28,13 +27,7 @@ import org.simantics.db.exception.DatabaseException; import org.simantics.db.layer0.util.Layer0Utils; import org.simantics.layer0.Layer0; import org.simantics.scl.compiler.errors.CompilationError; -import org.simantics.scl.compiler.errors.Failable; -import org.simantics.scl.compiler.errors.Failure; import org.simantics.scl.compiler.errors.Locations; -import org.simantics.scl.compiler.module.Module; -import org.simantics.scl.compiler.module.repository.UpdateListener; -import org.simantics.scl.osgi.SCLOsgi; -import org.simantics.scl.runtime.SCLContext; import org.simantics.ui.workbench.ResourceEditorInput; import org.simantics.utils.logging.TimeLogger; @@ -69,31 +62,11 @@ public class PGraphEditorDocumentProvider extends AbstractDocumentProvider { } } - // While this editor is active we do not want that this listener gets collected - private UpdateListener listener = new UpdateListener() { - @Override - public void notifyAboutUpdate() { - updateAnnotations(); - } - }; - protected void updateAnnotations() { Simantics.getSession().asyncRequest(new ReadRequest() { @Override public void run(ReadGraph graph) throws DatabaseException { -// String moduleName = graph.getURI(resource); -// SCLContext context = SCLContext.getCurrent(); -// context.put("graph", graph); -// Failable result = SCLOsgi.MODULE_REPOSITORY.getModule(moduleName, listener); -// -// if(result instanceof Failure) { -// Failure failure = (Failure)result; -// setAnnotations(Arrays.asList(failure.errors)); -// } -// else { -// setAnnotations(Collections.emptyList()); -// } - setAnnotations(Collections.emptyList()); + setAnnotations(Collections.emptyList()); } }); } @@ -155,9 +128,4 @@ public class PGraphEditorDocumentProvider extends AbstractDocumentProvider { return errorHappened; } - @Override - public boolean canSaveDocument(Object element) { - return !errorHappened && !getDocument(element).get().equals(currentText); - } - } diff --git a/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/componentTypeEditor/SCLModuleEditorDocumentProvider.java b/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/componentTypeEditor/SCLModuleEditorDocumentProvider.java index 35265ce50..c634f89b3 100644 --- a/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/componentTypeEditor/SCLModuleEditorDocumentProvider.java +++ b/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/componentTypeEditor/SCLModuleEditorDocumentProvider.java @@ -36,6 +36,7 @@ import org.simantics.scl.compiler.module.repository.UpdateListener; import org.simantics.scl.osgi.SCLOsgi; import org.simantics.scl.runtime.SCLContext; import org.simantics.scl.ui.editor.SCLSourceViewerConfigurationNew; +import org.simantics.structural2.utils.StructuralUtils; import org.simantics.ui.workbench.ResourceEditorInput; import org.simantics.utils.logging.TimeLogger; @@ -43,6 +44,7 @@ public class SCLModuleEditorDocumentProvider extends AbstractDocumentProvider { protected Resource resource; protected String currentText; + protected boolean immutable; protected boolean errorHappened; protected AnnotationModel annotationModel = new AnnotationModel(); @@ -62,6 +64,7 @@ public class SCLModuleEditorDocumentProvider extends AbstractDocumentProvider { public Document perform(ReadGraph graph) throws DatabaseException { Layer0 L0 = Layer0.getInstance(graph); currentText = graph.getRelatedValue(resource, L0.SCLModule_definition, Bindings.STRING); + immutable = StructuralUtils.isImmutable(graph, resource); errorHappened = false; return new Document(currentText != null ? currentText : ""); } @@ -156,17 +159,12 @@ public class SCLModuleEditorDocumentProvider extends AbstractDocumentProvider { @Override public boolean isModifiable(Object element) { - return !errorHappened; + return !errorHappened && !immutable; } @Override public boolean isReadOnly(Object element) { - return errorHappened; - } - - @Override - public boolean canSaveDocument(Object element) { - return !errorHappened && !getDocument(element).get().equals(currentText); + return errorHappened || immutable; } } diff --git a/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/componentTypeEditor/SCLQueryEditorDocumentProvider.java b/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/componentTypeEditor/SCLQueryEditorDocumentProvider.java index 11dec0fcf..5064ba9e6 100644 --- a/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/componentTypeEditor/SCLQueryEditorDocumentProvider.java +++ b/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/componentTypeEditor/SCLQueryEditorDocumentProvider.java @@ -214,9 +214,4 @@ public class SCLQueryEditorDocumentProvider extends AbstractDocumentProvider { return errorHappened; } - @Override - public boolean canSaveDocument(Object element) { - return !errorHappened && !getDocument(element).get().equals(currentText); - } - } diff --git a/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/diagramEditor/DiagramViewerSelectionProvider.java b/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/diagramEditor/DiagramViewerSelectionProvider.java index c3070d9cc..4317f5979 100644 --- a/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/diagramEditor/DiagramViewerSelectionProvider.java +++ b/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/diagramEditor/DiagramViewerSelectionProvider.java @@ -62,6 +62,7 @@ public class DiagramViewerSelectionProvider extends WorkbenchSelectionProvider { public Variable perform(ReadGraph graph) throws DatabaseException { DiagramResource DIA = DiagramResource.getInstance(graph); + ModelingResources MOD = ModelingResources.getInstance(graph); String uri = graph.getPossibleRelatedValue(resource, DIA.RuntimeDiagram_HasVariable); if (uri == null) @@ -71,9 +72,20 @@ public class DiagramViewerSelectionProvider extends WorkbenchSelectionProvider { if (var == null) return null; - Resource config = graph.getPossibleObject(resource2, ModelingResources.getInstance(graph).ElementToComponent); - if (config == null) + Resource config = graph.getPossibleObject(resource2, MOD.ElementToComponent); + if (config == null) { + // Apros #9646: if resource2 is the diagram + // itself, return the diagram composite variable + // since it is generally more useful than the + // variable to the diagram. + Resource composite = graph.getPossibleObject(resource2, MOD.DiagramToComposite); + if (composite != null && composite.equals(var.getPossibleRepresents(graph))) { + //return Variables.getPossibleVariable(graph, resource2); + return var; + } + return null; + } return var.browsePossible(graph, config); diff --git a/bundles/org.simantics.modeling/src/org/simantics/modeling/scl/GraphModuleSourceRepository.java b/bundles/org.simantics.modeling/src/org/simantics/modeling/scl/GraphModuleSourceRepository.java index a61563411..3edc7bfea 100644 --- a/bundles/org.simantics.modeling/src/org/simantics/modeling/scl/GraphModuleSourceRepository.java +++ b/bundles/org.simantics.modeling/src/org/simantics/modeling/scl/GraphModuleSourceRepository.java @@ -19,6 +19,7 @@ import org.simantics.scl.compiler.source.ModuleSource; import org.simantics.scl.compiler.source.StringModuleSource; import org.simantics.scl.compiler.source.repository.ModuleSourceRepository; import org.simantics.scl.runtime.SCLContext; +import org.simantics.structural2.utils.StructuralUtils; import org.simantics.scl.runtime.tuple.Tuple0; import gnu.trove.procedure.TObjectProcedure; @@ -95,13 +96,16 @@ public enum GraphModuleSourceRepository implements ModuleSourceRepository { public static class GraphModuleSource extends StringModuleSource { - public GraphModuleSource(String moduleName, ClassLoader classLoader, String moduleText) { + private final boolean immutable; + + public GraphModuleSource(String moduleName, ClassLoader classLoader, String moduleText, boolean immutable) { super(moduleName, classLoader, moduleText); + this.immutable = immutable; } @Override public boolean isUpdateable() { - return true; + return !immutable; } @Override @@ -128,7 +132,8 @@ public enum GraphModuleSourceRepository implements ModuleSourceRepository { if(!graph.isInstanceOf(moduleResource, L0.SCLModule)) return null; String text = graph.getRelatedValue(moduleResource, L0.SCLModule_definition); - return new GraphModuleSource(parameter, getClass().getClassLoader(), text); + boolean immutable = StructuralUtils.isImmutable(graph, moduleResource); + return new GraphModuleSource(parameter, getClass().getClassLoader(), text, immutable); } } diff --git a/bundles/org.simantics.scl.data/build.properties b/bundles/org.simantics.scl.data/build.properties index 507256bd7..0a709036f 100644 --- a/bundles/org.simantics.scl.data/build.properties +++ b/bundles/org.simantics.scl.data/build.properties @@ -3,5 +3,4 @@ output.. = bin/ bin.includes = META-INF/,\ .,\ scl/ -src.includes = scl/,\ - jdom-2.0.6.jar +src.includes = scl/ diff --git a/bundles/org.simantics.scl.reflection/src/org/simantics/scl/reflection/internal/registry/Namespace.java b/bundles/org.simantics.scl.reflection/src/org/simantics/scl/reflection/internal/registry/Namespace.java index 73be05f6c..45db13070 100755 --- a/bundles/org.simantics.scl.reflection/src/org/simantics/scl/reflection/internal/registry/Namespace.java +++ b/bundles/org.simantics.scl.reflection/src/org/simantics/scl/reflection/internal/registry/Namespace.java @@ -181,7 +181,7 @@ public class Namespace { } else { Activator.logError("Method " + method.getName() + " in class " + - clazz.getCanonicalName() + " has incompantible SCL type in the SCLValue annotation." + clazz.getCanonicalName() + " has incompatible SCL type in the SCLValue annotation." ); ReflectionUtils.isCompatible(scheme, type, method); } @@ -215,7 +215,7 @@ public class Namespace { } else { Activator.logError("Constructor of " + - clazz.getCanonicalName() + " has incompantible SCL type in the SCLValue annotation." + clazz.getCanonicalName() + " has incompatible SCL type in the SCLValue annotation." ); } } catch (TypeNotFoundException e) { @@ -264,7 +264,7 @@ public class Namespace { } else { Activator.logError("Field " + field.getName() + " in class " + - clazz.getCanonicalName() + " has incompantible SCL type in the SCLValue annotation." + clazz.getCanonicalName() + " has incompatible SCL type in the SCLValue annotation." ); } } catch (TypeNotFoundException e) { diff --git a/bundles/org.simantics.scl.ui/plugin.xml b/bundles/org.simantics.scl.ui/plugin.xml index 3a852b367..2a2f3d934 100755 --- a/bundles/org.simantics.scl.ui/plugin.xml +++ b/bundles/org.simantics.scl.ui/plugin.xml @@ -75,10 +75,6 @@ style="push"> - - diff --git a/bundles/org.simantics.spreadsheet.graph/src/org/simantics/spreadsheet/graph/CellValueVisitor.java b/bundles/org.simantics.spreadsheet.graph/src/org/simantics/spreadsheet/graph/CellValueVisitor.java index b0abb61b1..385af9938 100644 --- a/bundles/org.simantics.spreadsheet.graph/src/org/simantics/spreadsheet/graph/CellValueVisitor.java +++ b/bundles/org.simantics.spreadsheet.graph/src/org/simantics/spreadsheet/graph/CellValueVisitor.java @@ -434,7 +434,8 @@ public class CellValueVisitor implements AstValueVisitor { @Override public Object visit(AstIdentifier id) { - throw new IllegalStateException(); + return FormulaError2.NAME.getString(); + //throw new IllegalStateException(); } @Override diff --git a/bundles/org.simantics.spreadsheet.graph/src/org/simantics/spreadsheet/graph/GraphUI.java b/bundles/org.simantics.spreadsheet.graph/src/org/simantics/spreadsheet/graph/GraphUI.java index 80e9656e3..9a3e87326 100644 --- a/bundles/org.simantics.spreadsheet.graph/src/org/simantics/spreadsheet/graph/GraphUI.java +++ b/bundles/org.simantics.spreadsheet.graph/src/org/simantics/spreadsheet/graph/GraphUI.java @@ -495,7 +495,13 @@ public class GraphUI implements Adaptable, ListenerSupport, AsyncListenerSupport public void edit(Transaction transaction, String location, String property, T value, Binding binding, Consumer callback) { if (ClientModel.ITERATION_ENABLED.equals(location)) { - + Simantics.getSession().asyncRequest(new ReadRequest() { + @Override + public void run(ReadGraph graph) throws DatabaseException { + getBook(graph).setIterationEnabled((boolean)value); + } + }); + return; } if (ClientModel.MODE.equals(location)) { diff --git a/bundles/org.simantics.spreadsheet.graph/src/org/simantics/spreadsheet/graph/SpreadsheetBook.java b/bundles/org.simantics.spreadsheet.graph/src/org/simantics/spreadsheet/graph/SpreadsheetBook.java index caf3cd984..e292fd918 100644 --- a/bundles/org.simantics.spreadsheet.graph/src/org/simantics/spreadsheet/graph/SpreadsheetBook.java +++ b/bundles/org.simantics.spreadsheet.graph/src/org/simantics/spreadsheet/graph/SpreadsheetBook.java @@ -57,6 +57,8 @@ public class SpreadsheetBook implements SpreadsheetElement children = new HashMap<>(); + private boolean iterationEnabled; + public int getNewId(SpreadsheetElement element) { int result = idCounter++; children.put(result, element); @@ -401,4 +403,12 @@ public class SpreadsheetBook implements SpreadsheetElement> functions = new HashMap<>(); public int iterationLimit = 100; - public boolean iterationEnabled = false; - public SpreadsheetEvaluationEnvironment(SpreadsheetBook book) { this.book = book; diff --git a/bundles/org.simantics.spreadsheet.ui/src/org/simantics/spreadsheet/ui/SpreadsheetModel.java b/bundles/org.simantics.spreadsheet.ui/src/org/simantics/spreadsheet/ui/SpreadsheetModel.java index 9b4ef34e3..d534c9488 100644 --- a/bundles/org.simantics.spreadsheet.ui/src/org/simantics/spreadsheet/ui/SpreadsheetModel.java +++ b/bundles/org.simantics.spreadsheet.ui/src/org/simantics/spreadsheet/ui/SpreadsheetModel.java @@ -753,6 +753,10 @@ public class SpreadsheetModel { @Override public void actionPerformed(ActionEvent e) { System.out.println("state is " + iterationEnabled.isSelected()); + CellEditor editor = serverInterface.getAdapter(CellEditor.class); + if(editor != null) { + editor.edit(null, ClientModel.ITERATION_ENABLED, ClientModel.ITERATION_ENABLED, iterationEnabled.isSelected(), null, null); + } } }); diff --git a/bundles/org.simantics.structural2/src/org/simantics/structural2/utils/StructuralUtils.java b/bundles/org.simantics.structural2/src/org/simantics/structural2/utils/StructuralUtils.java index 0b0214e61..d029f3ae7 100644 --- a/bundles/org.simantics.structural2/src/org/simantics/structural2/utils/StructuralUtils.java +++ b/bundles/org.simantics.structural2/src/org/simantics/structural2/utils/StructuralUtils.java @@ -16,6 +16,7 @@ import org.simantics.db.Statement; import org.simantics.db.WriteGraph; import org.simantics.db.common.CommentMetadata; import org.simantics.db.common.request.ObjectsWithType; +import org.simantics.db.common.request.PossibleTypedParent; import org.simantics.db.common.utils.NameUtils; import org.simantics.db.exception.DatabaseException; import org.simantics.db.layer0.exception.MissingVariableException; @@ -273,5 +274,17 @@ public class StructuralUtils { } return null; } - + + public static boolean isImmutable(ReadGraph graph, Resource r) throws DatabaseException { + StructuralResource2 STR = StructuralResource2.getInstance(graph); + Resource uc = graph.syncRequest(new PossibleTypedParent(r, STR.ComponentType)); + return graph.isImmutable(r) + // Anything under a published or locked user component is published as well + || (uc != null && (Layer0Utils.isPublished(graph, uc) + || graph.hasStatement(uc, STR.ComponentType_Locked))) + // Anything under a published container (shared library) is published as well + || Layer0Utils.isContainerPublished(graph, r) + ; + } + } diff --git a/bundles/org.simantics.utils.datastructures/build.properties b/bundles/org.simantics.utils.datastructures/build.properties index b088bf189..accbb69ba 100644 --- a/bundles/org.simantics.utils.datastructures/build.properties +++ b/bundles/org.simantics.utils.datastructures/build.properties @@ -12,4 +12,4 @@ source.. = src/ output.. = bin/ bin.includes = META-INF/,\ - . + . \ No newline at end of file diff --git a/bundles/org.simantics.views.ontology/graph.tg b/bundles/org.simantics.views.ontology/graph.tg index ea5e89791..a2ec73d89 100644 Binary files a/bundles/org.simantics.views.ontology/graph.tg and b/bundles/org.simantics.views.ontology/graph.tg differ diff --git a/bundles/org.simantics.views.ontology/graph/Views.pgraph b/bundles/org.simantics.views.ontology/graph/Views.pgraph index c91515096..65f9a4cbb 100644 --- a/bundles/org.simantics.views.ontology/graph/Views.pgraph +++ b/bundles/org.simantics.views.ontology/graph/Views.pgraph @@ -86,6 +86,8 @@ Views.Control.Style.Constant.Check = 32 : L0.Integer Views.Control.Style.Constant.Wrap = 64 : L0.Integer Views.Control.Style.Constant.HScroll = 256 : L0.Integer Views.Control.Style.Constant.VScroll = 512 : L0.Integer +Views.Control.Style.Constant.Horizontal = 256 : L0.Integer +Views.Control.Style.Constant.Vertical = 512 : L0.Integer Views.Control.Style.Constant.Border = 2048 : L0.Integer Views.Control.Style.Constant.FullSelection = 65536 : L0.Integer Views.Control.Style.Constant.NoFocus = 524288 : L0.Integer @@ -220,6 +222,7 @@ Views.Button -- Views.Browser.document ==> "String" -- Views.Browser.variable ==> "Variable" -- Views.Browser.locationChanging ==> "a -> Boolean" -- Views.WikiBrowser.document ==> "String" -- Views.RowLayout.type ==> "Integer" -- Views.RowLayout.spacing ==> "Integer" -- Views.RowLayout.center ==> "Boolean" -- Views.RowLayout.fill ==> "Boolean" -- Views.RowLayout.justify ==> "Boolean" -- Views.RowLayout.pack ==> "Boolean" -- Views.RowLayout.wrap ==> "Boolean" -- Views.RowLayout.extendedMargins ==> "a" -- Views.RowLayout.RowData.width ==> "Integer" -- Views.RowLayout.RowData.height ==> "Integer" extends SWTParentNode implements LoaderNode { @@ -36,7 +36,7 @@ abstract public class SingleSWTViewNode extends SWTParentNode private Map genericProperties = new HashMap(); public Function2 propertyCallback; - public GridDataBean layoutData; + public LayoutDataBean layoutData; public int style; public String text; public RGB.Integer background; @@ -292,8 +292,8 @@ abstract public class SingleSWTViewNode extends SWTParentNode final public void synchronizeStyle(int style) { } - final public void synchronizeLayoutData(GridDataBean layoutData) { - if(layoutData != null) control.setLayoutData(SWTViewUtils.toGridData(layoutData)); + final public void synchronizeLayoutData(LayoutDataBean layoutData) { + if(layoutData != null) control.setLayoutData(SWTViewUtils.toLayoutData(layoutData)); } } diff --git a/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTBrowser.java b/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTBrowser.java index 6df6bdaad..5c4d21269 100644 --- a/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTBrowser.java +++ b/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTBrowser.java @@ -3,8 +3,11 @@ package org.simantics.views.swt.client.impl; import org.eclipse.jface.layout.GridDataFactory; import org.eclipse.jface.layout.GridLayoutFactory; import org.eclipse.swt.browser.Browser; +import org.eclipse.swt.browser.LocationEvent; +import org.eclipse.swt.browser.LocationListener; import org.eclipse.swt.widgets.Composite; import org.simantics.db.layer0.variable.Variable; +import org.simantics.scl.runtime.function.Function1; import org.simantics.utils.datastructures.map.Tuple; import org.simantics.views.swt.client.base.SingleSWTViewNode; @@ -12,10 +15,11 @@ public class SWTBrowser extends SingleSWTViewNode { private static final long serialVersionUID = -2704760050046054447L; - public String document; - public Variable variable; + public String document; + public Variable variable; + public Function1 locationChanging; - private Tuple lastAppliedParametrization; + private Tuple lastAppliedParametrization; @Override public void reset() { @@ -32,6 +36,18 @@ public class SWTBrowser extends SingleSWTViewNode { control = new Browser(parent, style); GridDataFactory.fillDefaults().grab(true, true).applyTo(control); + control.addLocationListener(new LocationListener() { + @Override + public void changing(LocationEvent event) { + Function1 lc = locationChanging; + if (lc != null) + lc.apply(event); + } + @Override + public void changed(LocationEvent event) { + } + }); + setProperties(); } diff --git a/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTComposite.java b/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTComposite.java index 5fe825a96..a67d0abf9 100644 --- a/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTComposite.java +++ b/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTComposite.java @@ -1,7 +1,7 @@ package org.simantics.views.swt.client.impl; import org.eclipse.swt.widgets.Composite; -import org.simantics.views.ViewUtils.GridLayoutBean; +import org.simantics.views.ViewUtils.LayoutBean; import org.simantics.views.swt.client.base.SWTViewUtils; import org.simantics.views.swt.client.base.SingleSWTViewNode; @@ -9,7 +9,7 @@ public class SWTComposite extends SingleSWTViewNode { private static final long serialVersionUID = 7932335224632082902L; - public GridLayoutBean layout; + public LayoutBean layout; @Override public void createControls(org.eclipse.swt.widgets.Composite parent) { @@ -22,7 +22,7 @@ public class SWTComposite extends SingleSWTViewNode { } - final public void synchronizeLayout(GridLayoutBean layout) { + final public void synchronizeLayout(LayoutBean layout) { if(layout != null) control.setLayout(SWTViewUtils.toLayout(layout)); } diff --git a/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTExplorer.java b/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTExplorer.java index f448ebde4..3c0ce5a1f 100644 --- a/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTExplorer.java +++ b/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTExplorer.java @@ -23,7 +23,7 @@ import org.simantics.browsing.ui.swt.widgets.ModelBrowser; import org.simantics.browsing.ui.swt.widgets.impl.WidgetSupportImpl; import org.simantics.scl.runtime.function.Function1; import org.simantics.views.ViewUtils.ColumnBean; -import org.simantics.views.ViewUtils.GridLayoutBean; +import org.simantics.views.ViewUtils.LayoutBean; import org.simantics.views.swt.client.base.SWTViewUtils; import org.simantics.views.swt.client.base.SingleSWTViewNode; @@ -31,7 +31,7 @@ public class SWTExplorer extends SingleSWTViewNode { private static final long serialVersionUID = 7932335224632082902L; - public GridLayoutBean layout; + public LayoutBean layout; public String browseContext; public String contextMenuId; public String uiContext; @@ -189,7 +189,7 @@ public class SWTExplorer extends SingleSWTViewNode { } } - final public void synchronizeLayout(GridLayoutBean layout) { + final public void synchronizeLayout(LayoutBean layout) { } } diff --git a/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTSashForm.java b/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTSashForm.java index 5bc8b2366..af79bdc8d 100644 --- a/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTSashForm.java +++ b/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTSashForm.java @@ -3,7 +3,7 @@ package org.simantics.views.swt.client.impl; import org.eclipse.swt.custom.SashForm; import org.eclipse.swt.widgets.Control; import org.eclipse.swt.widgets.Sash; -import org.simantics.views.ViewUtils.GridLayoutBean; +import org.simantics.views.ViewUtils.LayoutBean; import org.simantics.views.swt.client.base.SWTViewUtils; import org.simantics.views.swt.client.base.SingleSWTViewNode; @@ -11,7 +11,7 @@ public class SWTSashForm extends SingleSWTViewNode { private static final long serialVersionUID = 7932335224632082902L; - public GridLayoutBean layout; + public LayoutBean layout; public int[] weights; public Integer orientation; @@ -26,7 +26,7 @@ public class SWTSashForm extends SingleSWTViewNode { } - final public void synchronizeLayout(GridLayoutBean layout) { + final public void synchronizeLayout(LayoutBean layout) { if(layout != null) control.setLayout(SWTViewUtils.toLayout(layout)); } diff --git a/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTScrolledComposite.java b/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTScrolledComposite.java index 421315f89..1bf86ca12 100644 --- a/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTScrolledComposite.java +++ b/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTScrolledComposite.java @@ -13,7 +13,7 @@ import org.eclipse.swt.widgets.Control; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Event; import org.eclipse.swt.widgets.Listener; -import org.simantics.views.ViewUtils.GridLayoutBean; +import org.simantics.views.ViewUtils.LayoutBean; import org.simantics.views.swt.client.base.SWTViewUtils; import org.simantics.views.swt.client.base.SingleSWTViewNode; @@ -23,7 +23,7 @@ public class SWTScrolledComposite extends SingleSWTViewNode { private static final long serialVersionUID = 7932335224632082902L; - public GridLayoutBean layout; + public LayoutBean layout; private int minSize = 100; @@ -124,7 +124,7 @@ public class SWTScrolledComposite extends SingleSWTViewNode { } - final public void synchronizeLayout(GridLayoutBean layout) { + final public void synchronizeLayout(LayoutBean layout) { if(layout != null) control.setLayout(SWTViewUtils.toLayout(layout)); } diff --git a/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTTabFolder.java b/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTTabFolder.java index b8aebe537..629f28285 100644 --- a/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTTabFolder.java +++ b/bundles/org.simantics.views.swt.client/src/org/simantics/views/swt/client/impl/SWTTabFolder.java @@ -14,7 +14,7 @@ import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.simantics.browsing.ui.swt.widgets.GraphExplorerComposite; import org.simantics.utils.ui.jface.BasePostSelectionProvider; -import org.simantics.views.ViewUtils.GridLayoutBean; +import org.simantics.views.ViewUtils.LayoutBean; import org.simantics.views.swt.client.base.ISWTViewNode; import org.simantics.views.swt.client.base.SingleSWTViewNode; @@ -24,7 +24,7 @@ public class SWTTabFolder extends SingleSWTViewNode { public List childNames; - public GridLayoutBean layout; + public LayoutBean layout; final BasePostSelectionProvider selectionProvider = new BasePostSelectionProvider(); @@ -119,7 +119,7 @@ public class SWTTabFolder extends SingleSWTViewNode { } - final public void synchronizeLayout(GridLayoutBean layout) { + final public void synchronizeLayout(LayoutBean layout) { } } diff --git a/bundles/org.simantics.views/src/org/simantics/views/All.java b/bundles/org.simantics.views/src/org/simantics/views/All.java index 941213f9c..6d26bb7f8 100644 --- a/bundles/org.simantics.views/src/org/simantics/views/All.java +++ b/bundles/org.simantics.views/src/org/simantics/views/All.java @@ -104,12 +104,22 @@ public class All { @SCLValue(type = "ReadGraph -> Resource -> Variable -> a") public static Object gridData(ReadGraph graph, Resource converter, Variable context) throws DatabaseException { - return ViewUtils.getGridData(graph, converter); + return ViewUtils.getGridData(graph, converter); } @SCLValue(type = "ReadGraph -> Resource -> Variable -> a") public static Object gridLayout(ReadGraph graph, Resource converter, Variable context) throws DatabaseException { - return ViewUtils.getLayout(graph, converter); + return ViewUtils.getLayout(graph, converter); + } + + @SCLValue(type = "ReadGraph -> Resource -> Variable -> a") + public static Object rowData(ReadGraph graph, Resource converter, Variable context) throws DatabaseException { + return ViewUtils.getRowData(graph, converter); + } + + @SCLValue(type = "ReadGraph -> Resource -> Variable -> a") + public static Object rowLayout(ReadGraph graph, Resource converter, Variable context) throws DatabaseException { + return ViewUtils.getRowLayout(graph, converter); } @SCLValue(type = "ReadGraph -> Resource -> Variable -> a") diff --git a/bundles/org.simantics.views/src/org/simantics/views/ViewUtils.java b/bundles/org.simantics.views/src/org/simantics/views/ViewUtils.java index f22e5ad83..749c2856e 100644 --- a/bundles/org.simantics.views/src/org/simantics/views/ViewUtils.java +++ b/bundles/org.simantics.views/src/org/simantics/views/ViewUtils.java @@ -32,20 +32,35 @@ public class ViewUtils { } public static final Binding EXTENDED_MARGINS_BINDING = Bindings.getBindingUnchecked(ExtendedMargins.class); - - public static class GridLayoutBean extends Bean { - - public int numColumns; - public int horizontalSpacing; - public int verticalSpacing; + + public static class LayoutBean extends Bean { public int marginLeft; public int marginRight; public int marginTop; public int marginBottom; + } + + public static class GridLayoutBean extends LayoutBean { + + public int numColumns; + public int horizontalSpacing; + public int verticalSpacing; } - - public static class GridDataBean extends Bean { + + public static class RowLayoutBean extends LayoutBean { + public int type; + public int spacing; + public boolean center; + public boolean fill; + public boolean justify; + public boolean pack; + public boolean wrap; + } + + public static class LayoutDataBean extends Bean {} + + public static class GridDataBean extends LayoutDataBean { public int horizontalSpan; public boolean grabExcessHorizontalSpace; @@ -56,7 +71,12 @@ public class ViewUtils { public int heightHint; } - + + public static class RowDataBean extends LayoutDataBean { + public int width; + public int height; + } + public static class ColumnBean extends Bean { public String key; @@ -128,6 +148,50 @@ public class ViewUtils { } + public static RowLayoutBean getRowLayout(RequestProcessor processor, Resource configuration) throws DatabaseException { + return processor.sync(new ResourceRead(configuration) { + @Override + public RowLayoutBean perform(ReadGraph graph) throws DatabaseException { + ViewsResources VIEW = ViewsResources.getInstance(graph); + Integer type = graph.getPossibleRelatedValue(resource, VIEW.RowLayout_type, Bindings.INTEGER); + Integer spacing = graph.getPossibleRelatedValue(resource, VIEW.RowLayout_spacing, Bindings.INTEGER); + Boolean center = graph.getPossibleRelatedValue(resource, VIEW.RowLayout_center, Bindings.BOOLEAN); + Boolean fill = graph.getPossibleRelatedValue(resource, VIEW.RowLayout_fill, Bindings.BOOLEAN); + Boolean justify = graph.getPossibleRelatedValue(resource, VIEW.RowLayout_justify, Bindings.BOOLEAN); + Boolean pack = graph.getPossibleRelatedValue(resource, VIEW.RowLayout_pack, Bindings.BOOLEAN); + Boolean wrap = graph.getPossibleRelatedValue(resource, VIEW.RowLayout_wrap, Bindings.BOOLEAN); + ExtendedMargins extendedMargins = graph.getPossibleRelatedValue(resource, VIEW.RowLayout_extendedMargins, EXTENDED_MARGINS_BINDING); + + RowLayoutBean layout = new RowLayoutBean(); + layout.type = type; + layout.spacing = spacing; + layout.center = center; + layout.fill = fill; + layout.justify = justify; + layout.pack = pack; + layout.wrap = wrap; + layout.marginLeft = extendedMargins.left; + layout.marginRight = extendedMargins.right; + layout.marginTop = extendedMargins.top; + layout.marginBottom = extendedMargins.bottom; + return layout; + } + }); + } + + public static RowDataBean getRowData(RequestProcessor processor, Resource configuration) throws DatabaseException { + return processor.sync(new ResourceRead(configuration) { + @Override + public RowDataBean perform(ReadGraph graph) throws DatabaseException { + ViewsResources VIEW = ViewsResources.getInstance(graph); + RowDataBean data = new RowDataBean(); + data.width = graph.getPossibleRelatedValue(resource, VIEW.GridLayout_GridData_preferredWidth, Bindings.INTEGER); + data.height = graph.getPossibleRelatedValue(resource, VIEW.GridLayout_GridData_preferredHeight, Bindings.INTEGER); + return data; + } + }); + } + public static int getStyle(RequestProcessor processor, Resource configuration) throws DatabaseException { return processor.sync(new ResourceRead(configuration) { @@ -188,6 +252,7 @@ public class ViewUtils { Simantics.getSession().async(new TernaryRead (configuration, context, relationURI) { + @SuppressWarnings("unchecked") @Override public T perform(ReadGraph graph) throws DatabaseException { Object value = graph.getRelatedValue2(parameter, graph.getResource(parameter3), parameter2); diff --git a/bundles/org.simantics/build.properties b/bundles/org.simantics/build.properties index b2e37f933..09aecee30 100644 --- a/bundles/org.simantics/build.properties +++ b/bundles/org.simantics/build.properties @@ -3,4 +3,3 @@ output.. = bin/ bin.includes = META-INF/,\ .,\ plugin.xml,\ - scl/ diff --git a/bundles/pom.xml b/bundles/pom.xml index aa1e3ebd1..4641096f8 100644 --- a/bundles/pom.xml +++ b/bundles/pom.xml @@ -13,6 +13,32 @@ 1.0.0-SNAPSHOT + + + + org.eclipse.tycho + tycho-compiler-plugin + ${tycho.version} + + -err:-forbidden + + + + org.eclipse.tycho + tycho-source-plugin + ${tycho.version} + + + plugin-source + + plugin-source + + + + + + + com.famfamfam.silk org.simantics @@ -174,4 +200,4 @@ org.simantics.workbench.search winterwell.markdown - \ No newline at end of file + diff --git a/bundles/winterwell.markdown/build.properties b/bundles/winterwell.markdown/build.properties index ccfe656ed..a836df1a4 100644 --- a/bundles/winterwell.markdown/build.properties +++ b/bundles/winterwell.markdown/build.properties @@ -5,8 +5,6 @@ bin.includes = META-INF/,\ .,\ lib/ src.includes = src/,\ - pom.xml,\ - plugin.xml,\ icons/,\ lib/,\ .project,\ diff --git a/features/org.simantics.eclipsec.launcher.feature/build.properties b/features/org.simantics.eclipsec.launcher.feature/build.properties index b91d19e0e..30e90c892 100644 --- a/features/org.simantics.eclipsec.launcher.feature/build.properties +++ b/features/org.simantics.eclipsec.launcher.feature/build.properties @@ -10,6 +10,6 @@ # VTT Technical Research Centre of Finland - initial API and implementation # Semantum Oy - update to Eclipse Mars.1 (4.5.1) ############################################################################### -bin.includes=features.xml +bin.includes=feature.xml root.win32.win32.x86=bin/win32/win32/x86 root.win32.win32.x86_64=bin/win32/win32/x86_64 \ No newline at end of file diff --git a/features/org.simantics.rcp.feature/feature.xml b/features/org.simantics.rcp.feature/feature.xml index 34ab3dbcf..a19e2c230 100644 --- a/features/org.simantics.rcp.feature/feature.xml +++ b/features/org.simantics.rcp.feature/feature.xml @@ -13,7 +13,7 @@ @@ -669,4 +669,11 @@ This Agreement is governed by the laws of the State of New York and the intellec install-size="0" version="0.0.0"/> + + diff --git a/features/pom.xml b/features/pom.xml index 9a61e3cc0..f935cf28e 100644 --- a/features/pom.xml +++ b/features/pom.xml @@ -13,9 +13,91 @@ 1.0.0-SNAPSHOT + + + + org.eclipse.tycho.extras + tycho-source-feature-plugin + ${tycho.extras.version} + + + source-feature + package + + source-feature + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + org.eclipse.tycho + tycho-p2-plugin + ${tycho.version} + + + attach-p2-metadata + package + + p2-metadata + + + + + + + com.lowagie.text.feature org.apache.lucene4.feature + org.jfree.feature org.simantics.browsing.ui.feature org.simantics.charts.feature org.simantics.data.feature @@ -55,4 +137,4 @@ org.simantics.wiki.ui.feature org.simantics.workbench.feature - \ No newline at end of file + diff --git a/releng/org.simantics.sdk.build.p2.site/README.md b/releng/org.simantics.sdk.build.p2.site/README.md new file mode 100644 index 000000000..8114468fb --- /dev/null +++ b/releng/org.simantics.sdk.build.p2.site/README.md @@ -0,0 +1 @@ +Run mvn p2:site to build the P2 repository of the external components listed in pom.xml. \ No newline at end of file diff --git a/releng/org.simantics.sdk.build.p2.site/pom.xml b/releng/org.simantics.sdk.build.p2.site/pom.xml index 2890fb24a..4e17e3765 100644 --- a/releng/org.simantics.sdk.build.p2.site/pom.xml +++ b/releng/org.simantics.sdk.build.p2.site/pom.xml @@ -6,10 +6,12 @@ org.simantics org.simantics.sdk.build.p2.site pom - 1.24.0 + 1.25.0 + 2.1.7.b1 4.9.0 + 4.9.0.b0003 org.apache.lucene4 @@ -107,6 +109,8 @@ true ${lucene.prefix}.core + ${lucene.version.actual} + *;version="${lucene.version}" @@ -114,6 +118,10 @@ true ${lucene.prefix}.queries + ${lucene.version.actual} + ${lucene.prefix}.core;bundle-version="${lucene.version}" + *;version="${lucene.version}" + !org.apache.lucene.*,*;resolution:=optional @@ -121,20 +129,32 @@ true ${lucene.prefix}.sandbox + ${lucene.version.actual} + ${lucene.prefix}.core;bundle-version="${lucene.version}" + *;version="${lucene.version}" + !org.apache.lucene.*,*;resolution:=optional - org.apache.lucene:lucene-queryparser:${lucene.version} + org.apache.lucene:lucene-analyzers-common:${lucene.version} true - ${lucene.prefix}.queryparser + ${lucene.prefix}.analyzers-common + ${lucene.version.actual} + ${lucene.prefix}.core;bundle-version="${lucene.version}" + *;version="${lucene.version}" + !org.apache.lucene.*,*;resolution:=optional - org.apache.lucene:lucene-analyzers-common:${lucene.version} + org.apache.lucene:lucene-queryparser:${lucene.version} true - ${lucene.prefix}.analyzers-common + ${lucene.prefix}.queryparser + ${lucene.version.actual} + ${lucene.prefix}.core;bundle-version="${lucene.version}",${lucene.prefix}.queries;bundle-version="${lucene.version}",${lucene.prefix}.sandbox;bundle-version="${lucene.version}" + *;version="${lucene.version}" + !org.apache.lucene.*,*;resolution:=optional @@ -197,6 +217,10 @@ org.apache.pdfbox:fontbox:2.0.2 true + + org.apache.pdfbox:xmpbox:2.0.2 + true + log4j:log4j:1.2.17 true @@ -218,7 +242,11 @@ org.eclipse.collections:eclipse-collections-api:7.1.0 + true true + + org.eclipse.collections.* + org.eclipse.collections:eclipse-collections:7.1.0 @@ -253,6 +281,7 @@ true com.lowagie.text + ${itext.version.actual} @@ -267,6 +296,14 @@ org.mozilla:rhino:1.7.7.1 true + + net.java.dev.jna:jna:4.2.2 + true + + + net.java.dev.jna:jna-platform:4.2.2 + true + @@ -285,7 +322,6 @@ - @@ -296,4 +332,4 @@ - \ No newline at end of file + diff --git a/releng/org.simantics.sdk.build.targetdefinition/org.simantics.sdk.build.targetdefinition.target b/releng/org.simantics.sdk.build.targetdefinition/org.simantics.sdk.build.targetdefinition.target index 3f8417100..34bfa95c2 100644 --- a/releng/org.simantics.sdk.build.targetdefinition/org.simantics.sdk.build.targetdefinition.target +++ b/releng/org.simantics.sdk.build.targetdefinition/org.simantics.sdk.build.targetdefinition.target @@ -16,7 +16,7 @@ - + @@ -75,9 +75,9 @@ - + - + @@ -91,20 +91,20 @@ - + - + - + - + @@ -121,12 +121,12 @@ - + - + @@ -134,12 +134,12 @@ - + - + @@ -156,13 +156,13 @@ - - - + + + - - + + @@ -180,7 +180,7 @@ - + diff --git a/releng/org.simantics.sdk.repository/category.xml b/releng/org.simantics.sdk.repository/category.xml index 647e31cb5..f97fc7574 100644 --- a/releng/org.simantics.sdk.repository/category.xml +++ b/releng/org.simantics.sdk.repository/category.xml @@ -1,6 +1,6 @@ - + diff --git a/releng/org.simantics.sdk.repository/pom.xml b/releng/org.simantics.sdk.repository/pom.xml index c25ad3ee7..5731d5fd6 100644 --- a/releng/org.simantics.sdk.repository/pom.xml +++ b/releng/org.simantics.sdk.repository/pom.xml @@ -2,7 +2,7 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 org.simantics.sdk.repository - 1.24.0-SNAPSHOT + 1.25.0-SNAPSHOT eclipse-repository @@ -69,4 +69,4 @@ - \ No newline at end of file + diff --git a/releng/org.simantics.tycho.configuration/pom.xml b/releng/org.simantics.tycho.configuration/pom.xml index 53b07f5e9..81bfafa92 100644 --- a/releng/org.simantics.tycho.configuration/pom.xml +++ b/releng/org.simantics.tycho.configuration/pom.xml @@ -9,6 +9,7 @@ 0.25.0 + 0.25.0 UTF-8 http://download.eclipse.org/releases/mars @@ -44,6 +45,7 @@ + win32 win32 @@ -64,14 +67,16 @@ win32 x86_64 + - \ No newline at end of file +