From c476415bfceed23370c59ec8caacab697562bdff Mon Sep 17 00:00:00 2001 From: drdev Date: Tue, 18 Feb 2014 03:51:03 +0000 Subject: [PATCH] Create symbolic links to allow asset files to be shared amongst gui projects --- forge-m-android/.classpath | 1 + forge-m-android/.project | 7 ++++++ forge-m-base/src/forge/ForgeGame.java | 2 +- forge-m-base/src/forge/gui/toolbox/FSkin.java | 24 ++++++++++++------- forge-m-desktop/.project | 2 +- 5 files changed, 26 insertions(+), 10 deletions(-) diff --git a/forge-m-android/.classpath b/forge-m-android/.classpath index 6fde4d3047b..fbd40a5ba9d 100644 --- a/forge-m-android/.classpath +++ b/forge-m-android/.classpath @@ -1,6 +1,7 @@ + diff --git a/forge-m-android/.project b/forge-m-android/.project index b7fcb4158b3..616ba75dd38 100644 --- a/forge-m-android/.project +++ b/forge-m-android/.project @@ -30,4 +30,11 @@ com.android.ide.eclipse.adt.AndroidNature org.eclipse.jdt.core.javanature + + + assets + 2 + PARENT-1-PROJECT_LOC/forge-gui/res + + diff --git a/forge-m-base/src/forge/ForgeGame.java b/forge-m-base/src/forge/ForgeGame.java index 8669cc96280..429dc29987c 100644 --- a/forge-m-base/src/forge/ForgeGame.java +++ b/forge-m-base/src/forge/ForgeGame.java @@ -8,7 +8,7 @@ public class ForgeGame implements ApplicationListener { @Override public void create () { FSkin.loadLight("default", true); - FSkin.loadFull(true); + //FSkin.loadFull(true); } @Override diff --git a/forge-m-base/src/forge/gui/toolbox/FSkin.java b/forge-m-base/src/forge/gui/toolbox/FSkin.java index a4fe2093861..b1d06513319 100644 --- a/forge-m-base/src/forge/gui/toolbox/FSkin.java +++ b/forge-m-base/src/forge/gui/toolbox/FSkin.java @@ -10,6 +10,7 @@ import java.util.Map; import javax.imageio.ImageIO; +import com.badlogic.gdx.Application.ApplicationType; import com.badlogic.gdx.Gdx; import com.badlogic.gdx.files.FileHandle; import com.badlogic.gdx.graphics.Texture; @@ -1051,15 +1052,22 @@ public class FSkin { public static ArrayList getSkinDirectoryNames() { final ArrayList mySkins = new ArrayList(); - final FileHandle dir = Gdx.files.internal(FILE_SKINS_DIR); - final String[] children = dir.file().list(); - if (children == null) { + final FileHandle dir; + if (Gdx.app.getType() == ApplicationType.Desktop) { + dir = Gdx.files.internal("./bin/" + FILE_SKINS_DIR); //needed to iterate over directory for Desktop + } + else { + dir = Gdx.files.internal(FILE_SKINS_DIR); + } + if (!dir.exists() || !dir.isDirectory()) { System.err.println("FSkin > can't find skins directory!"); - } else { - for (int i = 0; i < children.length; i++) { - if (children[i].equalsIgnoreCase(".svn")) { continue; } - if (children[i].equalsIgnoreCase(".DS_Store")) { continue; } - mySkins.add(children[i]); + } + else { + for (FileHandle skinFile : dir.list()) { + String skinName = skinFile.name(); + if (skinName.equalsIgnoreCase(".svn")) { continue; } + if (skinName.equalsIgnoreCase(".DS_Store")) { continue; } + mySkins.add(skinName); } } diff --git a/forge-m-desktop/.project b/forge-m-desktop/.project index 168b56f18f8..de0eb872891 100644 --- a/forge-m-desktop/.project +++ b/forge-m-desktop/.project @@ -18,7 +18,7 @@ assets 2 - PARENT-1-PROJECT_LOC/forge-m-android/assets + PARENT-1-PROJECT_LOC/forge-gui/res