Skip to content

Commit 9fceae8

Browse files
committed
Finish IDEA_integration
2 parents 860e731 + ab85926 commit 9fceae8

32 files changed

+861
-261
lines changed

build-native.xml

Lines changed: 82 additions & 96 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,8 @@
11
<?xml version="1.0" encoding="UTF-8"?>
2-
<project name="jMonkeyBuilder" default="do-deploy" basedir="native-build"
2+
<project name="NativeBuild" default="buildNativeBundle" basedir="native-build"
33
xmlns:fx="javafx:com.sun.javafx.tools.ant">
44

5-
<property name="editor.version" value="1.4.0"/>
6-
<property environment="env"/>
7-
8-
<condition property="gradle.executable" value="${basedir}/../gradlew.bat"
9-
else="${basedir}/../gradlew">
10-
<os family="windows"/>
11-
</condition>
12-
13-
<target name="prepare-dependences">
14-
<exec executable="${gradle.executable}" dir="../">
15-
<arg value="copyToLib"/>
16-
</exec>
17-
</target>
18-
19-
<target name="init-fx-tasks">
5+
<target name="initFXAntTasks">
206
<path id="fxant">
217
<filelist>
228
<file name="${java.home}/../lib/ant-javafx.jar"/>
@@ -30,184 +16,184 @@
3016
classpathref="fxant"/>
3117
</target>
3218

33-
<target name="setup-staging-area" depends="prepare-dependences">
34-
<delete dir="externalLibs"/>
35-
<delete dir="project"/>
36-
<delete dir="licenses"/>
37-
<delete dir="projectRefs"/>
38-
<delete dir="deploy"/>
39-
<delete dir="dist"/>
40-
<delete dir="embedded-plugins"/>
19+
<target name="prepareNativeBuild" depends="prepareDependencies">
20+
<delete dir="${basedir}/externalLibs"/>
21+
<delete dir="${basedir}/project"/>
22+
<delete dir="${basedir}/licenses"/>
23+
<delete dir="${basedir}/projectRefs"/>
24+
<delete dir="${basedir}/deploy"/>
25+
<delete dir="${basedir}/dist"/>
26+
<delete dir="${basedir}/embedded-plugins"/>
4127

42-
<mkdir dir="externalLibs"/>
28+
<mkdir dir="${basedir}/externalLibs"/>
4329

44-
<copy todir="externalLibs">
45-
<fileset dir="../build/dependences" />
30+
<copy todir="${basedir}/externalLibs">
31+
<fileset dir="${basedir}/../build/dependencies" />
4632
</copy>
4733

48-
<mkdir dir="project"/>
49-
<copy todir="project">
50-
<fileset dir="../src/main/">
34+
<mkdir dir="${basedir}/project"/>
35+
<copy todir="${basedir}/project">
36+
<fileset dir="${basedir}/../src/main/">
5137
<include name="java/**"/>
5238
<include name="resources/**"/>
5339
</fileset>
5440
</copy>
5541

56-
<mkdir dir="licenses"/>
57-
<mkdir dir="licenses/libraries-licenses"/>
58-
<copy todir="licenses">
59-
<fileset dir="../">
42+
<mkdir dir="${basedir}/licenses"/>
43+
<mkdir dir="${basedir}/licenses/libraries-licenses"/>
44+
<copy todir="${basedir}/licenses">
45+
<fileset dir="${basedir}/../">
6046
<include name="LICENSE"/>
6147
</fileset>
6248
</copy>
63-
<copy todir="licenses/libraries-licenses">
64-
<fileset dir="../libraries-licenses">
49+
<copy todir="${basedir}/licenses/libraries-licenses">
50+
<fileset dir="${basedir}/../libraries-licenses">
6551
<include name="*"/>
6652
</fileset>
6753
</copy>
6854

69-
<mkdir dir="embedded-plugins"/>
70-
<copy todir="embedded-plugins">
71-
<fileset dir="../embedded-plugins" />
55+
<mkdir dir="${basedir}/embedded-plugins"/>
56+
<copy todir="${basedir}/embedded-plugins">
57+
<fileset dir="${basedir}/../embedded-plugins" />
7258
</copy>
7359

74-
<mkdir dir="projectRefs"/>
60+
<mkdir dir="${basedir}/projectRefs"/>
7561
</target>
7662

77-
<target name='do-compile'>
78-
<delete dir="build"/>
79-
<mkdir dir="build/src"/>
80-
<mkdir dir="build/libs"/>
81-
<mkdir dir="build/classes"/>
63+
<target name="compileClassesForNativeBuild">
64+
<delete dir="${basedir}/build"/>
65+
<mkdir dir="${basedir}/build/src"/>
66+
<mkdir dir="${basedir}/build/libs"/>
67+
<mkdir dir="${basedir}/build/classes"/>
8268

8369
<!-- Copy project-libs references -->
84-
<copy todir="build/libs">
85-
<fileset dir="externalLibs"/>
70+
<copy todir="${basedir}/build/libs">
71+
<fileset dir="${basedir}/externalLibs"/>
8672
</copy>
8773

8874
<!-- Copy project references -->
8975

9076
<!-- Copy project sources itself -->
91-
<copy todir="build/src">
92-
<fileset dir="project/java">
77+
<copy todir="${basedir}/build/src">
78+
<fileset dir="${basedir}/project/java">
9379
<include name="**/*"/>
9480
</fileset>
95-
<fileset dir="project/resources">
81+
<fileset dir="${basedir}/project/resources">
9682
<include name="**/*"/>
9783
</fileset>
9884
</copy>
9985

100-
<javac includeantruntime="false" source="1.8" target="1.8" srcdir="build/src" destdir="build/classes"
101-
encoding="UTF-8">
86+
<javac includeantruntime="false" source="${javaSourceVersion}" target="${javaTargetVersion}"
87+
srcdir="${basedir}/build/src" destdir="${basedir}/build/classes"
88+
encoding="UTF-8" debug="true">
10289
<classpath>
103-
<fileset dir="build/libs">
90+
<fileset dir="${basedir}/build/libs">
10491
<include name="*"/>
10592
</fileset>
10693
</classpath>
10794
</javac>
10895

10996
<!-- Copy over none Java-Files -->
110-
<copy todir="build/classes">
111-
<fileset dir="project/java">
97+
<copy todir="${basedir}/build/classes">
98+
<fileset dir="${basedir}/project/java">
11299
<exclude name="**/*.java"/>
113100
</fileset>
114-
<fileset dir="project/resources">
101+
<fileset dir="${basedir}/project/resources">
115102
<include name="**/*"/>
116103
</fileset>
117104
</copy>
118105
</target>
119106

120-
<target name="do-deploy" depends="setup-staging-area, do-compile, init-fx-tasks">
121-
<delete file="dist"/>
122-
<delete file="deploy"/>
107+
<target name="buildNativeBundle" depends="prepareNativeBuild, compileClassesForNativeBuild, initFXAntTasks">
108+
<delete file="${basedir}/dist"/>
109+
<delete file="${basedir}/deploy"/>
123110

124-
<mkdir dir="dist"/>
125-
<mkdir dir="dist/libs"/>
126-
<mkdir dir="dist/licenses"/>
127-
<mkdir dir="dist/embedded-plugins"/>
111+
<mkdir dir="${basedir}/dist"/>
112+
<mkdir dir="${basedir}/dist/libs"/>
113+
<mkdir dir="${basedir}/dist/licenses"/>
114+
<mkdir dir="${basedir}/dist/embedded-plugins"/>
128115

129-
<copy todir="dist/licenses">
130-
<fileset dir="licenses">
116+
<copy todir="${basedir}/dist/licenses">
117+
<fileset dir="${basedir}/licenses">
131118
<include name="*"/>
132119
</fileset>
133120
</copy>
134121

135-
<copy todir="dist/licenses/libraries-licenses">
136-
<fileset dir="licenses/libraries-licenses">
122+
<copy todir="${basedir}/dist/licenses/libraries-licenses">
123+
<fileset dir="${basedir}/licenses/libraries-licenses">
137124
<include name="*"/>
138125
</fileset>
139126
</copy>
140127

141-
<copy todir="dist/embedded-plugins">
142-
<fileset dir="embedded-plugins" />
128+
<copy todir="${basedir}/dist/embedded-plugins">
129+
<fileset dir="${basedir}/embedded-plugins" />
143130
</copy>
144131

145-
<copy todir="dist/libs">
146-
<fileset dir="externalLibs">
132+
<copy todir="${basedir}/dist/libs">
133+
<fileset dir="${basedir}/externalLibs">
147134
<include name="*"/>
148135
</fileset>
149136
</copy>
150137

151138
<fx:resources id="appRes" >
152-
<fx:fileset dir="dist" includes="jmonkeybuilder.jar"/>
153-
<fx:fileset dir="dist" includes="licenses/*"/>
154-
<fx:fileset dir="dist" includes="licenses/libraries-licenses/*"/>
155-
<fx:fileset dir="dist" includes="libs/*"/>
156-
<fx:fileset dir="dist" includes="embedded-plugins/*/*"/>
157-
<fx:fileset dir="dist" includes="embedded-plugins/*/*/*"/>
158-
<fx:fileset dir="package"/>
139+
<fx:fileset dir="${basedir}/dist" includes="jmonkeybuilder.jar"/>
140+
<fx:fileset dir="${basedir}/dist" includes="licenses/*"/>
141+
<fx:fileset dir="${basedir}/dist" includes="licenses/libraries-licenses/*"/>
142+
<fx:fileset dir="${basedir}/dist" includes="libs/*"/>
143+
<fx:fileset dir="${basedir}/dist" includes="embedded-plugins/*/*"/>
144+
<fx:fileset dir="${basedir}/dist" includes="embedded-plugins/*/*/*"/>
145+
<fx:fileset dir="${basedir}/package"/>
159146
</fx:resources>
160147

161148
<fx:application id="fxApplication"
162-
name="jMonkeyBuilder"
163-
mainClass="com.ss.editor.JFXApplication"
149+
name="${applicationTitle}"
150+
mainClass="${applicationMainClass}"
164151
toolkit="fx"
165-
version="${editor.version}"/>
152+
version="${applicationVersion}"/>
166153

167-
<mkdir dir="build/classes/META-INF"/>
154+
<mkdir dir="${basedir}/build/classes/META-INF"/>
168155

169-
<fx:jar destfile="dist/jmonkeybuilder.jar">
156+
<fx:jar destfile="${basedir}/dist/jmonkeybuilder.jar">
170157
<fx:application refid="fxApplication"/>
171-
<fileset dir="build/classes"/>
158+
<fileset dir="${basedir}/build/classes"/>
172159
<fx:resources refid="appRes"/>
173-
174160
<manifest>
175-
<attribute name="Implementation-Vendor" value="[email protected]"/>
176-
<attribute name="Implementation-Title" value="jMonkeyBuilder"/>
177-
<attribute name="Implementation-Version" value="${editor.version}"/>
161+
<attribute name="Implementation-Vendor" value="${applicationVendor}"/>
162+
<attribute name="Implementation-Title" value="${applicationTitle}"/>
163+
<attribute name="Implementation-Version" value="${applicationVersion}"/>
178164
</manifest>
179165
</fx:jar>
180166

181-
<replace file="package/linux/control" token="@version@" value="${editor.version}"/>
182-
<replace file="package/windows/jMonkeyBuilder.wxs" token="@version@" value="${editor.version}"/>
167+
<replace file="${basedir}/package/linux/control" token="@version@" value="${applicationVersion}"/>
168+
<replace file="${basedir}/package/windows/jMonkeyBuilder.wxs" token="@version@" value="${applicationVersion}"/>
183169

184-
<mkdir dir="deploy"/>
170+
<mkdir dir="${basedir}/deploy"/>
185171
<!-- Need to use ${basedir} because somehow the ant task is calculating the directory differently -->
186172
<fx:deploy
187173
embedJNLP="false"
188174
extension="false"
189175
includeDT="false"
190176
offlineAllowed="true"
191177
outdir="${basedir}/deploy"
192-
outfile="jMonkeyBuilder" nativeBundles="all"
178+
outfile="${applicationTitle}" nativeBundles="all"
193179
updatemode="background" verbose="true">
194180

195181
<fx:platform>
196182
<fx:jvmarg value="-XX:+UseParallelGC"/>
197-
<!--<fx:jvmarg value="-agentlib:jdwp=transport=dt_socket,server=n,address=192.168.94.210:6005,suspend=y"/>-->
183+
<!--<fx:jvmarg value="-agentlib:jdwp=transport=dt_socket,server=n,address=javasabr-NB:6005,suspend=y"/>-->
198184
</fx:platform>
199185

200186
<preferences shortcut="true" menu="true" install="false"/>
201187

202188
<info category="graphics"
203189
description="The 3D Editor for jMonkeyEngine 3.2"
204-
email="[email protected]" license="Freeware" title="jMonkeyBuilder" vendor="[email protected]"/>
190+
email="[email protected]" license="Freeware" title="${applicationTitle}" vendor="${applicationVendor}"/>
205191

206192
<application refId="fxApplication"/>
207193
<resources refid="appRes"/>
208194
</fx:deploy>
209195

210-
<replace file="package/linux/control" token="${editor.version}" value="@version@"/>
211-
<replace file="package/windows/jMonkeyBuilder.wxs" token="${editor.version}" value="@version@"/>
196+
<replace file="${basedir}/package/linux/control" token="${applicationVersion}" value="@version@"/>
197+
<replace file="${basedir}/package/windows/jMonkeyBuilder.wxs" token="${applicationVersion}" value="@version@"/>
212198
</target>
213199
</project>

build.gradle

Lines changed: 19 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ apply plugin: 'idea'
1313
apply plugin: 'org.junit.platform.gradle.plugin'
1414

1515
group = 'com.spaceshift'
16-
version = '1.4.0'
16+
version = '1.5.0'
1717

1818
sourceCompatibility = 1.8
1919
targetCompatibility = 1.8
@@ -24,6 +24,9 @@ compileTestJava {
2424
options.compilerArgs += '-parameters'
2525
}
2626

27+
ext.applicationMainClass = "com.ss.editor.JFXApplication"
28+
ext.applicationVendor = "[email protected]"
29+
ext.applicationTitle = "jMonkeyBuilder"
2730
ext.jmeVersion = "3.3_branch-SNAPSHOT"
2831
ext.jme3_xbuf_version = '0.9.1'
2932
ext.lwjglVersion = "3.1.5"
@@ -151,17 +154,28 @@ dependencies {
151154
testCompile "org.junit.platform:junit-platform-launcher:$junitPlatformVersion"
152155
}
153156

154-
task copyToLib(type: Copy) {
157+
ant.importBuild('build-native.xml')
158+
ant.basedir = new File(buildDir.getParentFile(), "native-build")
159+
ant.properties.javaSourceVersion = sourceCompatibility
160+
ant.properties.javaTargetVersion = targetCompatibility
161+
ant.properties.applicationJarName = name + ".jar"
162+
ant.properties.applicationMainClass = ext.applicationMainClass
163+
ant.properties.applicationVendor = ext.applicationVendor
164+
ant.properties.applicationTitle = ext.applicationTitle
165+
ant.properties.applicationVersion = version
166+
167+
task prepareDependencies(type: Copy) {
155168

156169
doFirst {
157-
println("delete " + "$buildDir/dependences")
158-
GFileUtils.deleteDirectory(new File("$buildDir/dependences"))
170+
println("delete " + "$buildDir/dependencies")
171+
GFileUtils.deleteDirectory(new File("$buildDir/dependencies"))
159172
}
160173

161-
into "$buildDir/dependences"
174+
into "$buildDir/dependencies"
162175
from configurations.runtime
163176
}
164177

178+
165179
task sourcesJar(type: Jar, dependsOn: classes) {
166180
classifier = 'sources'
167181
from sourceSets.main.allSource

src/main/java/com/ss/editor/Editor.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,6 @@
4040
import com.ss.editor.executor.impl.JMEThreadExecutor;
4141
import com.ss.editor.extension.loader.SceneLoader;
4242
import com.ss.editor.manager.ExecutorManager;
43-
import com.ss.editor.manager.InitializationManager;
4443
import com.ss.editor.manager.WorkspaceManager;
4544
import com.ss.editor.ui.event.FXEventManager;
4645
import com.ss.editor.ui.event.impl.WindowChangeFocusEvent;
@@ -336,9 +335,6 @@ public void simpleInitApp() {
336335
createLightProbes();
337336
stateManager.detach(stateManager.getState(DebugKeysAppState.class));
338337

339-
final InitializationManager initializationManager = InitializationManager.getInstance();
340-
initializationManager.onAfterCreateJMEContext();
341-
342338
new EditorThread(new ThreadGroup("JavaFX"), JFXApplication::start, "JavaFX Launch").start();
343339
}
344340

src/main/java/com/ss/editor/JFXApplication.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -153,6 +153,7 @@ public static void main(final String[] args) {
153153
InitializeManager.register(FileIconManager.class);
154154
InitializeManager.register(WorkspaceManager.class);
155155
InitializeManager.register(PluginManager.class);
156+
InitializeManager.register(RemoteControlManager.class);
156157
InitializeManager.initialize();
157158

158159
new EditorThread(new ThreadGroup("LWJGL"),
@@ -263,6 +264,13 @@ public JFXApplication() {
263264
this.openedWindows = ArrayFactory.newConcurrentStampedLockArray(Window.class);
264265
}
265266

267+
/**
268+
* Request focus of this window.
269+
*/
270+
public void requestFocus() {
271+
notNull(stage).requestFocus();
272+
}
273+
266274
/**
267275
* Add the new opened window.
268276
*

0 commit comments

Comments
 (0)