2003/09/08 20:00:11
[org.ibex.core.git] / src / org / xwt / Platform.java
index 6ee700e..78b5e16 100644 (file)
@@ -57,7 +57,7 @@ public class Platform {
             String os_version = System.getProperty("os.version", "");
             String platform_class = null;
             
-            if (os_name.startsWith("Darwin")) platform_class = "Carbon";
+            if (os_name.startsWith("Darwin")) platform_class = "Darwin";
             else if (vendor.startsWith("Free Software Foundation")) {
                 if (os_name.startsWith("Window")) platform_class = "Win32";
                 else platform_class = "X11";
@@ -65,8 +65,10 @@ public class Platform {
             else if (version.startsWith("1.1") && vendor.startsWith("Microsoft")) platform_class = "Microsoft";
             else if (!version.startsWith("1.0") && !version.startsWith("1.1")) platform_class = "Java2";
 
+            /*
         // Disable 2d hardware acceleration on Jaguar
         if (os_name.equals("Mac OS X") && os_version.equals("10.2"))
+            */
         System.setProperty("com.apple.hwaccel", "false");
 
             if (platform_class != null) {
@@ -209,7 +211,15 @@ public class Platform {
 
     /** returns an InputStream to the builtin xwar */
     protected InputStream _getBuiltinInputStream() {
-        return Platform.class.getClassLoader().getResourceAsStream("org/xwt/builtin.xwar");
+       try {
+           Class c = Class.forName("org.xwt.Builtin");
+           Field f = c.getField("encoded");
+           Object o = f.get(null);
+           return new ByteArrayInputStream(org.bouncycastle.util.encoders.Base64.decode((String)o));
+       } catch (Exception e) {
+           Log.log(this, e);
+           return null;
+       }
     }
 
     /** returns the value of the environment variable key, or null if no such key exists */
@@ -371,25 +381,25 @@ public class Platform {
     public static Surface createSurface(Box b, boolean framed, boolean refreshable) {
         Surface ret = platform._createSurface(b, framed);
         ret.setInvisible(b.invisible);
-        b.set(Box.size, 0, b.size(0) < Surface.scarPicture.getWidth() ? Surface.scarPicture.getWidth() : b.size(0));
-        b.set(Box.size, 1, b.size(1) < Surface.scarPicture.getHeight() ? Surface.scarPicture.getHeight() : b.size(1));
+        b.width = b.height < Surface.scarPicture.getWidth() ? Surface.scarPicture.getWidth() : b.width;
+        b.height = b.height < Surface.scarPicture.getHeight() ? Surface.scarPicture.getHeight() : b.height;
 
         Object titlebar = b.get("titlebar", true);
         if (titlebar != null) ret.setTitleBarText(titlebar.toString());
 
         Object icon = b.get("icon", true);
         if (icon != null && !"".equals(icon)) {
-            Picture pic = Box.getPicture(icon.toString());
+            Picture pic = ImageDecoder.getPicture(icon.toString());
             if (pic != null) ret.setIcon(pic);
             else if (Log.on) Log.log(Platform.class, "unable to load icon " + icon);
         }
 
-        ret.setLimits(b.dmin(0), b.dmin(1), b.dmax(0), b.dmax(1));
+        ret.setLimits(b.minwidth, b.minheight, b.maxwidth, b.maxheight);
 
         if (refreshable) {
             Surface.refreshableSurfaceWasCreated = true;
             Surface.allSurfaces.addElement(ret);
-            ret.dirty(0, 0, ret.width, ret.height);
+            ret.dirty(0, 0, b.width, b.height);
             ret.Refresh();
         }
         return ret;