SDK:
- fix asset completion for situations with getter brackets, e.g. new Material(getAssetManager(), " git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10106 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
This commit is contained in:
parent
20dce97f5d
commit
fc00c928ac
@ -36,6 +36,8 @@ import java.awt.Color;
|
||||
import java.awt.Font;
|
||||
import java.awt.Graphics;
|
||||
import java.awt.event.KeyEvent;
|
||||
import java.io.IOException;
|
||||
import java.io.StringReader;
|
||||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
import javax.swing.ImageIcon;
|
||||
@ -68,7 +70,6 @@ import org.openide.util.ImageUtilities;
|
||||
public class AssetCompletionProvider implements CompletionProvider {
|
||||
|
||||
private static final Logger logger = Logger.getLogger(AssetCompletionProvider.class.getName());
|
||||
|
||||
private static ImageIcon assetIcon =
|
||||
new ImageIcon(ImageUtilities.loadImage("com/jme3/gde/core/assets/nodes/icons/assets.gif"));
|
||||
private static ImageIcon modelIcon =
|
||||
@ -90,7 +91,7 @@ public class AssetCompletionProvider implements CompletionProvider {
|
||||
|
||||
Invalid, Model, Material, Filter, MatDef, Texture, Sound, Font, Xml, Asset
|
||||
}
|
||||
|
||||
|
||||
public AssetCompletionProvider() {
|
||||
}
|
||||
|
||||
@ -233,13 +234,39 @@ public class AssetCompletionProvider implements CompletionProvider {
|
||||
|
||||
private boolean hasLastCommand(String line, String command) {
|
||||
int idx = line.lastIndexOf(command);
|
||||
int brackState = 0;
|
||||
if (idx != -1) {
|
||||
int bIdx = line.indexOf(")", idx);
|
||||
if (bIdx == -1) {
|
||||
return true;
|
||||
StringReader reader = null;
|
||||
try {
|
||||
line = line.substring(idx + command.length());
|
||||
// logger.log(Level.INFO, "Search in command: {0}", line);
|
||||
reader = new StringReader(line);
|
||||
int in = reader.read();
|
||||
while (in != -1) {
|
||||
if (in == '(') {
|
||||
// logger.log(Level.INFO, "Found open bracket in command: {0}", line);
|
||||
brackState++;
|
||||
} else if (in == ')') {
|
||||
// logger.log(Level.INFO, "Found close bracket in command: {0}", line);
|
||||
brackState--;
|
||||
}
|
||||
in = reader.read();
|
||||
}
|
||||
} catch (IOException ex) {
|
||||
Exceptions.printStackTrace(ex);
|
||||
} finally {
|
||||
if (reader != null) {
|
||||
reader.close();
|
||||
}
|
||||
}
|
||||
} else {
|
||||
brackState = -1;
|
||||
}
|
||||
if (brackState == 0) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
private ProjectAssetManager getProjectAssetManager(Document doc) {
|
||||
@ -360,7 +387,7 @@ public class AssetCompletionProvider implements CompletionProvider {
|
||||
case Invalid:
|
||||
break;
|
||||
default:
|
||||
//icon = assetIcon;
|
||||
//icon = assetIcon;
|
||||
}
|
||||
CompletionUtilities.renderHtml(icon, text, null, g, defaultFont,
|
||||
(selected ? Color.white : fieldColor), width, height, selected);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user