Javafx: Support application icon in JavaFX self-contained app deployment (IDEA-134616)

This commit is contained in:
Pavel Dolgov
2016-04-13 16:29:53 +03:00
parent 9d43d2f235
commit b947362002
12 changed files with 496 additions and 32 deletions

View File

@@ -31,6 +31,7 @@ import org.jetbrains.jps.model.java.JpsJavaSdkType;
import org.jetbrains.jps.model.library.sdk.JpsSdk;
import org.jetbrains.jps.model.library.sdk.JpsSdkType;
import org.jetbrains.plugins.javaFX.packaging.AbstractJavaFxPackager;
import org.jetbrains.plugins.javaFX.packaging.JavaFxApplicationIcons;
import org.jetbrains.plugins.javaFX.packaging.JavaFxManifestAttribute;
import org.jetbrains.plugins.javaFX.packaging.JavaFxPackagerConstants;
import org.jetbrains.plugins.javaFX.preloader.JpsJavaFxPreloaderArtifactProperties;
@@ -149,6 +150,11 @@ public class JpsJavaFxArtifactBuildTaskProvider extends ArtifactBuildTaskProvide
return myProperties.myState.getDescription();
}
@Override
protected JavaFxApplicationIcons getIcons() {
return myProperties.myState.getIcons();
}
@Override
protected String getWidth() {
return myProperties.myState.getWidth();

View File

@@ -2,6 +2,7 @@ package org.jetbrains.plugins.javaFX;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.jps.model.ex.JpsElementBase;
import org.jetbrains.plugins.javaFX.packaging.JavaFxApplicationIcons;
import org.jetbrains.plugins.javaFX.packaging.JavaFxManifestAttribute;
import org.jetbrains.plugins.javaFX.packaging.JavaFxPackagerConstants;
@@ -41,6 +42,7 @@ public class JpsJavaFxArtifactProperties extends JpsElementBase<JpsJavaFxArtifac
myState.setConvertCss2Bin(state.myConvertCss2Bin);
myState.setNativeBundle(state.myNativeBundle);
myState.setCustomManifestAttributes(state.myCustomManifestAttributes);
myState.setIcons(state.myIcons);
}
@NotNull
@@ -73,6 +75,7 @@ public class JpsJavaFxArtifactProperties extends JpsElementBase<JpsJavaFxArtifac
private boolean myConvertCss2Bin;
public JavaFxPackagerConstants.NativeBundles myNativeBundle = JavaFxPackagerConstants.NativeBundles.none;
private List<JavaFxManifestAttribute> myCustomManifestAttributes = new ArrayList<JavaFxManifestAttribute>();
private JavaFxApplicationIcons myIcons = new JavaFxApplicationIcons();
public String getTitle() {
return myTitle;
@@ -98,6 +101,14 @@ public class JpsJavaFxArtifactProperties extends JpsElementBase<JpsJavaFxArtifac
myDescription = description;
}
public JavaFxApplicationIcons getIcons() {
return myIcons;
}
public void setIcons(JavaFxApplicationIcons icons) {
myIcons = icons;
}
public String getAppClass() {
return myAppClass;
}