Skip to content

Commit 48ee2cb

Browse files
committed
реализовано создание файлов для PostFilterViewer
исправлены ошибки при вращении камеры в редакторе материалов
1 parent e72b2d2 commit 48ee2cb

File tree

4 files changed

+78
-1
lines changed

4 files changed

+78
-1
lines changed

src/com/ss/editor/Editor.java

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import com.jme3.environment.EnvironmentCamera;
88
import com.jme3.environment.LightProbeFactory;
99
import com.jme3.environment.generation.JobProgressAdapter;
10+
import com.jme3.input.InputManager;
1011
import com.jme3.light.LightProbe;
1112
import com.jme3.math.Vector3f;
1213
import com.jme3.post.FilterPostProcessor;
@@ -36,6 +37,7 @@
3637
import java.nio.file.Paths;
3738
import java.util.concurrent.locks.StampedLock;
3839

40+
import javafx.scene.Parent;
3941
import rlib.concurrent.atomic.AtomicInteger;
4042
import rlib.logging.Logger;
4143
import rlib.logging.LoggerLevel;
@@ -284,6 +286,17 @@ public long trySyncLock() {
284286
@Override
285287
public void update() {
286288

289+
final ExecutorManager executorManager = ExecutorManager.getInstance();
290+
final InputManager inputManager = getInputManager();
291+
final EditorFXScene scene = getScene();
292+
final Parent root = scene.getRoot();
293+
294+
if(inputManager.isCursorVisible() && root.isMouseTransparent()) {
295+
executorManager.addFXTask(() -> root.setMouseTransparent(false));
296+
} else if(!inputManager.isCursorVisible() && !root.isMouseTransparent()) {
297+
executorManager.addFXTask(() -> root.setMouseTransparent(true));
298+
}
299+
287300
final JmeFxContainer fxContainer = getFxContainer();
288301

289302
final long stamp = syncLock();
@@ -343,7 +356,7 @@ private void createProbe() {
343356
* Обновить пробу окружения.
344357
*/
345358
public void updateProbe(final JobProgressAdapter<LightProbe> progressAdapter) {
346-
LightProbeFactory.updateProbe(lightProbe, environmentCamera, rootNode, progressAdapter);
359+
LightProbeFactory.updateProbe(getLightProbe(), getEnvironmentCamera(), rootNode, progressAdapter);
347360
}
348361

349362
/**

src/com/ss/editor/Messages.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,9 @@ public class Messages {
6767
public static final String MATERIAL_FILE_CREATOR_MATERIAL_TYPE_LABEL;
6868
public static final String MATERIAL_FILE_CREATOR_FILE_DESCRIPTION;
6969

70+
public static final String POST_FILTER_VIEW_FILE_CREATOR_TITLE;
71+
public static final String POST_FILTER_VIEW_FILE_CREATOR_FILE_DESCRIPTION;
72+
7073
static {
7174

7275
final ResourceBundle bundle = ResourceBundle.getBundle(BUNDLE_NAME, ResourceControl.getInstance());
@@ -126,5 +129,8 @@ public class Messages {
126129
MATERIAL_FILE_CREATOR_TITLE = bundle.getString("MaterialFileCreatorTitle");
127130
MATERIAL_FILE_CREATOR_MATERIAL_TYPE_LABEL = bundle.getString("MaterialFileCreatorMaterialTypeLabel");
128131
MATERIAL_FILE_CREATOR_FILE_DESCRIPTION = bundle.getString("MaterialFileCreatorFileDescription");
132+
133+
POST_FILTER_VIEW_FILE_CREATOR_TITLE = bundle.getString("PostFilterViewFileCreatorTitle");
134+
POST_FILTER_VIEW_FILE_CREATOR_FILE_DESCRIPTION = bundle.getString("PostFilterViewFileCreatorFileDescription");
129135
}
130136
}

src/com/ss/editor/ui/component/creator/FileCreatorRegistry.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.ss.editor.ui.component.creator;
22

33
import com.ss.editor.ui.component.creator.impl.MaterialFileCreator;
4+
import com.ss.editor.ui.component.creator.impl.PostFilterViewFileCreator;
45

56
import java.nio.file.Path;
67
import java.util.concurrent.Callable;
@@ -33,6 +34,7 @@ public static FileCreatorRegistry getInstance() {
3334
public FileCreatorRegistry() {
3435
this.descriptions = ArrayFactory.newArray(FileCreatorDescription.class);
3536
addDescription(MaterialFileCreator.DESCRIPTION);
37+
addDescription(PostFilterViewFileCreator.DESCRIPTION);
3638
}
3739

3840
/**
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
package com.ss.editor.ui.component.creator.impl;
2+
3+
import com.ss.editor.FileExtensions;
4+
import com.ss.editor.ui.component.creator.FileCreatorDescription;
5+
6+
import java.io.IOException;
7+
import java.io.PrintWriter;
8+
import java.nio.file.Files;
9+
import java.nio.file.Path;
10+
11+
import static com.ss.editor.Messages.POST_FILTER_VIEW_FILE_CREATOR_FILE_DESCRIPTION;
12+
import static com.ss.editor.Messages.POST_FILTER_VIEW_FILE_CREATOR_TITLE;
13+
14+
/**
15+
* Реализация создателя новых файлов для PostFilterView.
16+
*
17+
* @author Ronn
18+
*/
19+
public class PostFilterViewFileCreator extends AbstractFileCreator {
20+
21+
public static final FileCreatorDescription DESCRIPTION = new FileCreatorDescription();
22+
23+
static {
24+
DESCRIPTION.setFileDescription(POST_FILTER_VIEW_FILE_CREATOR_FILE_DESCRIPTION);
25+
DESCRIPTION.setConstructor(PostFilterViewFileCreator::new);
26+
}
27+
28+
public PostFilterViewFileCreator() {
29+
}
30+
31+
@Override
32+
protected String getTitleText() {
33+
return POST_FILTER_VIEW_FILE_CREATOR_TITLE;
34+
}
35+
36+
@Override
37+
protected String getFileExtension() {
38+
return FileExtensions.POST_FILTER_VIEW;
39+
}
40+
41+
@Override
42+
protected void processCreate() {
43+
super.processCreate();
44+
45+
final String materialContent = "";
46+
final Path fileToCreate = getFileToCreate();
47+
48+
try (final PrintWriter out = new PrintWriter(Files.newOutputStream(fileToCreate))) {
49+
out.print(materialContent);
50+
} catch (final IOException e) {
51+
LOGGER.warning(this, e);
52+
}
53+
54+
notifyFileCreated(fileToCreate, true);
55+
}
56+
}

0 commit comments

Comments
 (0)