Revision: 2460
http://sourceforge.net/p/swingme/code/2460
Author: yuranet
Date: 2021-06-22 10:33:32 +0000 (Tue, 22 Jun 2021)
Log Message:
-----------
get main class from plist
Modified Paths:
--------------
iOSME/src/javax/microedition/lcdui/Display.java
iOSME/src/javax/microedition/midlet/MIDlet.java
iOSME/src/net/yura/ios/BundleConnection.java
iOSME/src/net/yura/ios/SwingMEiOSApplication.java
Modified: iOSME/src/javax/microedition/lcdui/Display.java
===================================================================
--- iOSME/src/javax/microedition/lcdui/Display.java 2021-06-21 18:08:33 UTC (rev 2459)
+++ iOSME/src/javax/microedition/lcdui/Display.java 2021-06-22 10:33:32 UTC (rev 2460)
@@ -200,8 +200,12 @@
});
}
- public void vibrate(int duration) {
+ /**
+ * @return true if the vibrator can be controlled by the application and this display is in the foreground, false otherwise
+ */
+ public boolean vibrate(int duration) {
// TODO vibrate
+ return true;
}
public void flashBacklight(int duration) {
Modified: iOSME/src/javax/microedition/midlet/MIDlet.java
===================================================================
--- iOSME/src/javax/microedition/midlet/MIDlet.java 2021-06-21 18:08:33 UTC (rev 2459)
+++ iOSME/src/javax/microedition/midlet/MIDlet.java 2021-06-22 10:33:32 UTC (rev 2460)
@@ -4,6 +4,8 @@
import java.util.Properties;
import javax.microedition.io.ConnectionNotFoundException;
+import apple.uikit.UIApplication;
+
public abstract class MIDlet {
public static final String PROTOCOL_HTTP = "http://";
public static final String PROTOCOL_HTTPS = "https://";
@@ -166,6 +168,7 @@
}
else {
// TODO handle opening Urls
+ //UIApplication.openURL()
}
} catch (Throwable e) {
//#debug debug
Modified: iOSME/src/net/yura/ios/BundleConnection.java
===================================================================
--- iOSME/src/net/yura/ios/BundleConnection.java 2021-06-21 18:08:33 UTC (rev 2459)
+++ iOSME/src/net/yura/ios/BundleConnection.java 2021-06-22 10:33:32 UTC (rev 2460)
@@ -109,15 +109,20 @@
return path.lastModified();
}
+ /**
+ * @return hidden files are not returned, Directories are denoted with a trailing slash "/" in their returned name.
+ */
@Override
public Enumeration list() throws IOException {
String[] list = path.list();
+ // TODO add trailing "/" to directories
+ // TODO do not return hidden files
return Collections.enumeration(Arrays.asList(list));
}
@Override
public Enumeration list(String filter, boolean includeHidden) throws IOException {
- return null;
+ throw new UnsupportedOperationException();
}
@Override
Modified: iOSME/src/net/yura/ios/SwingMEiOSApplication.java
===================================================================
--- iOSME/src/net/yura/ios/SwingMEiOSApplication.java 2021-06-21 18:08:33 UTC (rev 2459)
+++ iOSME/src/net/yura/ios/SwingMEiOSApplication.java 2021-06-22 10:33:32 UTC (rev 2460)
@@ -11,6 +11,7 @@
import apple.NSObject;
import apple.coregraphics.struct.CGRect;
import apple.foundation.NSArray;
+import apple.foundation.NSBundle;
import apple.foundation.NSDictionary;
import apple.foundation.c.Foundation;
import apple.foundation.enums.NSSearchPathDirectory;
@@ -79,8 +80,15 @@
setupSystemProperties();
- startSwingMEApp("net.yura.domination.mobile.flashgui.DominationMain");
+ NSBundle mainBundle = NSBundle.mainBundle();
+ String mainClass = (String)mainBundle.objectForInfoDictionaryKey("SwingME.Main.Class");
+ if (mainClass == null) {
+ throw new IllegalStateException("'SwingME.Main.Class' not set in app 'info.plist'");
+ }
+
+ startSwingMEApp(mainClass);
+
return true;
}
@@ -88,9 +96,14 @@
NSArray paths = Foundation.NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.UserDomainMask, true);
String documentsDirectory = (String)paths.objectAtIndex(0);
-
System.setProperty("user.home", documentsDirectory);
+ NSBundle mainBundle = NSBundle.mainBundle();
+ String versionName = (String)mainBundle.objectForInfoDictionaryKey("CFBundleShortVersionString");
+ String versionCode = (String)mainBundle.objectForInfoDictionaryKey("CFBundleVersion");
+ System.setProperty("versionName", versionName);
+ System.setProperty("versionCode", versionCode);
+
//System.out.println("user.home=" + System.getProperty("user.home"));
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|