2003/11/03 06:32:55
[org.ibex.core.git] / src / org / xwt / builtin / splash.xwt
index 9d6ef80..f6737ed 100644 (file)
@@ -1,18 +1,21 @@
 <xwt>
 
-    <template thisbox="window" orient="vertical" width="394" height="276">
+    <template orient="vertical" width="394" height="276" color="white">
 
         KeyPressed += function(k) { if (k == "escape") thisbox = null; }
 
         var progress = function(n, d) {
-            $innerbar.width = $bar.width * n / d;
-            xwt.yield();
+            $innerbar.width = $bar.width * n / d + 1;
+            $text.text = "downloaded " + (xwt.math.ceil(100 * n/d)) + "%";
         }
 
         xwt.thread = function() {
-            var img = xwt.org.xwt.builtin["splash.png"];
-            fill = img;
-            xwt.yield();
+//            $text.font = xwt.fonts.vera["Vera.ttf"];
+            $text.font = xwt.uncab(xwt.load("http://master.dist.xwt.org/msfonts/arial32.exe"))["Arial.TTF"];
+            $text.fontsize = 18;
+            $text.text = "downloading...";
+            fill = xwt.org.xwt.builtin["splash.png"];
+            xwt.frame = thisbox;
             x = (xwt.screenWidth - width) / 2;
             y = (xwt.screenHeight - height) / 2;
             var origin = xwt.origin;
             xwt.println("origin is " + origin);
             var new_rr = xwt.unzip(xwt.watchProgress(xwt.load(origin), progress));
             var new_xwt = xwt.clone(new_rr);
-            new_xwt.apply(xwt.box, new_xwt["main.xwt"]);
+
+            xwt.thread = function() {
+for(var i=0; 100>i; i++) {
+progress(i, 100);
+xwt.yield();
+}
+                new_xwt.apply(xwt.box, new_xwt["main.xwt"]);
+                thisbox = null;
+            }
         }
 
-        <box packed="false" id="bar" x="20" y="236" width="354" height="18" align="left">
+        <box height="233" align="bottomleft" packed="false" x="20" y="0">
+            <box textcolor="white" id="text" shrink="true"/>
+        </box>
+        <box packed="false" id="bar" x="20" y="236" width="354" height="20" align="left">
             <box id="innerbar" fill="blue" width="10"/>
         </box>