- allow setting BlenderKey options for models supported via blender importer

git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10288 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
3.0
nor..67 12 years ago
parent f5b5f2f2a3
commit ee92e5f229
  1. 22
      sdk/jme3-blender/src/com/jme3/gde/blender/filetypes/AbstractBlenderImportDataObject.java

@ -4,14 +4,15 @@
*/
package com.jme3.gde.blender.filetypes;
import com.jme3.asset.BlenderKey;
import com.jme3.asset.ModelKey;
import com.jme3.gde.blender.BlenderTool;
import com.jme3.gde.core.assets.ProjectAssetManager;
import com.jme3.gde.core.assets.SpatialAssetDataObject;
import com.jme3.gde.core.util.Beans;
import com.jme3.scene.Spatial;
import com.jme3.scene.plugins.ogre.OgreMeshKey;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.logging.Level;
import org.openide.DialogDisplayer;
import org.openide.NotifyDescriptor;
@ -63,12 +64,14 @@ public abstract class AbstractBlenderImportDataObject extends SpatialAssetDataOb
i++;
blend1File = FileUtil.findBrother(mainFile, BlenderTool.TEMP_SUFFIX + i);
}
String assetKey = mgr.getRelativeAssetPath(outFile.getPath());
String assetKeyName = mgr.getRelativeAssetPath(outFile.getPath());
BlenderKey key = new BlenderKey(assetKeyName);
Beans.copyProperties(key, getAssetKey());
FileLock lock = null;
try {
lock = getPrimaryFile().lock();
listListener.start();
Spatial spatial = mgr.loadModel(assetKey);
Spatial spatial = mgr.loadModel(assetKeyName);
replaceFiles();
listListener.stop();
savable = spatial;
@ -89,6 +92,15 @@ public abstract class AbstractBlenderImportDataObject extends SpatialAssetDataOb
return null;
}
@Override
public synchronized ModelKey getAssetKey() {
if(super.getAssetKey() instanceof BlenderKey){
return (BlenderKey)assetKey;
}
assetKey = new BlenderKey(super.getAssetKey().getName());
return (BlenderKey)assetKey;
}
protected void replaceFiles() {
for (int i = 0; i < assetList.size(); i++) {
FileObject fileObject = assetList.get(i);

Loading…
Cancel
Save