[Vexi-svn] SF.net SVN: vexi:[4901] branches/vexi3/org.vexi-library.js/src/main/jpp/org /ibex/js/JS.jpp

2016-11-18 Thread clrg
Revision: 4901
  http://sourceforge.net/p/vexi/code/4901
Author:   clrg
Date: 2016-11-18 12:45:45 + (Fri, 18 Nov 2016)
Log Message:
---
Disambiguate exception message.

Modified Paths:
--
branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JS.jpp

Modified: branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JS.jpp
===
--- branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JS.jpp  
2016-11-17 13:26:41 UTC (rev 4900)
+++ branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JS.jpp  
2016-11-18 12:45:45 UTC (rev 4901)
@@ -334,8 +334,8 @@
 public static class Immutable implements JS {
 public JS unclone() { return this; }
 
-public Keys keys() throws JSExn { throw new JSExn(type()+" has no key 
set"); }
-public Set keySet() throws JSExn { throw new JSExn(type()+" has no key 
set");  }
+public Keys keys() throws JSExn { throw new JSExn(type()+" has no 
KeySet"); }
+public Set keySet() throws JSExn { throw new JSExn(type()+" has no 
KeySet");  }
 public JS get(JS key) throws JSExn {
 //#noswitch - leave, needed for jsdoc
 /*@PAGE(varname=Immutable,humanname=Immutable JS Object)

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4899] trunk/org.vexi-build.jsdoc/parser_setup.xml

2016-11-09 Thread clrg
Revision: 4899
  http://sourceforge.net/p/vexi/code/4899
Author:   clrg
Date: 2016-11-09 12:47:16 + (Wed, 09 Nov 2016)
Log Message:
---
Bring in line with ebuild standards.

Modified Paths:
--
trunk/org.vexi-build.jsdoc/parser_setup.xml

Modified: trunk/org.vexi-build.jsdoc/parser_setup.xml
===
--- trunk/org.vexi-build.jsdoc/parser_setup.xml 2016-11-04 06:58:07 UTC (rev 
4898)
+++ trunk/org.vexi-build.jsdoc/parser_setup.xml 2016-11-09 12:47:16 UTC (rev 
4899)
@@ -1,13 +1,13 @@
 
+ NOTES: add gen/main/java to project build path after -->
 
 
 
 
-
+
 http://sdm.link/xeonphi
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4886] branches/vexi3/org.vexi-library.js/src/main/java/ org/ibex/js/Scheduler.java

2016-10-14 Thread clrg
Revision: 4886
  http://sourceforge.net/p/vexi/code/4886
Author:   clrg
Date: 2016-10-14 16:53:02 + (Fri, 14 Oct 2016)
Log Message:
---
Quit if something goes badly wrong instead of leaving an unresponsive window.

Modified Paths:
--
branches/vexi3/org.vexi-library.js/src/main/java/org/ibex/js/Scheduler.java

Modified: 
branches/vexi3/org.vexi-library.js/src/main/java/org/ibex/js/Scheduler.java
===
--- branches/vexi3/org.vexi-library.js/src/main/java/org/ibex/js/Scheduler.java 
2016-10-14 15:57:07 UTC (rev 4885)
+++ branches/vexi3/org.vexi-library.js/src/main/java/org/ibex/js/Scheduler.java 
2016-10-14 16:53:02 UTC (rev 4886)
@@ -112,27 +112,32 @@
 synchronized (this) {

 //Log.debug(Scheduler.class, "performing " + current);
-   run(current);
+   run(current);
 }
 renderAll();
 /*} catch (Stop e){
 Log.uInfo(Scheduler.class, "Scheduler halted: " + 
e.getMessage());
 return;*/
-} catch (Exception e) {
+} catch (Error err) {
+   logger.error(Scheduler.class, "Something has gone badly 
wrong!");
+   logger.error(Scheduler.class, err);
+   return new Exception("Encountered '"+err.getMessage());
+
+} catch(Exception e) {
 // REMARK for running tests, as we need to pass any
 // uncaught js/assertion exceptions out.
 if (quitOnExn) {
 return e;
 }
 
-if(current instanceof Thread){
+if (current instanceof Thread) {
 logger.error(Scheduler.class, "Vexiscript unhandled 
exception - "+((Thread)current).description()+":");
-}else{
+} else {
logger.error(Scheduler.class, "Background call 
unhandled exception:");
 }
-if(e instanceof JSExn){
+if (e instanceof JSExn) {
((JSExn)e).printStackTrace(Logger.ERROR, logger, 
Scheduler.class);
-}else{
+} else {
logger.error(Scheduler.class, e);
 }
 }

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4885] branches/vexi3/org.vexi-core.main/src/main/jpp/org/ vexi/core/Box.jpp

2016-10-14 Thread clrg
Revision: 4885
  http://sourceforge.net/p/vexi/code/4885
Author:   clrg
Date: 2016-10-14 15:57:07 + (Fri, 14 Oct 2016)
Log Message:
---
Fix stackoverflow when trying to change cursor during Move trap.

Modified Paths:
--
branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp

Modified: branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp
===
--- branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp
2016-09-30 20:01:38 UTC (rev 4884)
+++ branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp
2016-10-14 15:57:07 UTC (rev 4885)
@@ -2593,6 +2593,8 @@
 case "clear":   isReadOnly(name);
 case "mouse":   isReadOnly(name);
 case "cursor":
+   // avert stackoverflow caused by cursor put in Move invoking 
Move
+   if (get(name) == value) return;
 // only need to worry about updating the cursor if the
 // mouse is inside thisbox and it is part of a surface
 Surface s = test(DISPLAY|MOUSEINSIDE) ? getSurface() : null;

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4884] trunk/org.vexi-build.jsdoc/src/poke/java/vexi/jsdoc

2016-09-30 Thread clrg
Revision: 4884
  http://sourceforge.net/p/vexi/code/4884
Author:   clrg
Date: 2016-09-30 20:01:38 + (Fri, 30 Sep 2016)
Log Message:
---
Improve docs

Modified Paths:
--
branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Vexi.jpp
branches/vexi3/org.vexi-library.js/src/main/java/org/ibex/js/JSU.java
branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JS.jpp
branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JSArray.jpp
branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JSPrimitive.jpp
branches/vexi3/org.vexi-library.net/src/main/java/org/ibex/net/JreHTTP.java
trunk/org.vexi-build.jsdoc/parser_setup.xml
trunk/org.vexi-build.jsdoc/src/poke/java/vexi/jsdoc/RunOnVexi.java

Modified: branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Vexi.jpp
===
--- branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Vexi.jpp   
2016-09-29 14:09:31 UTC (rev 4883)
+++ branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Vexi.jpp   
2016-09-30 20:01:38 UTC (rev 4884)
@@ -122,16 +122,16 @@
  *
  *  
  *Charles Goodwin <mailto:charles\\@webenableit.co.uk";>charles\\@webenableit.com>
- *  Content author
+ *  Developer and principle content author
  *Michael Goodwin <mike\\@webenableit.com>
- *  Content author, Documentation tool author
+ *  Developer, content contributor, and documentation tool 
author
  *  
  *
  *AFT Inc. (http://www.aftinc.net/"; 
target="_top">www.aftinc.net)
  *
  *  
  *Adam Andrews
- *  Contains modified portions of the Vexi 1.0 Function Reference 
authored by Adam Andrews
+ *  Contains modified portions of the ‘Vexi 1.0 Function 
Reference’ authored by Adam Andrews
  *  
  *
  *Individuals
@@ -140,6 +140,10 @@
  *Adam Megacz (http://www.megacz.com"; 
target="_top">www.megacz.com)
  *  Inspired by and contains modified portions of the http://xwt.org/reference.html";>XWT
  *  Reference authored by Adam Megacz
+ *David Crawshaw (https://plus.google.com/+DavidCrawshaw"; target="_top">DavidCrawshaw 
(GooglePlus))
+ *  Key contributor to Vexi, and Ibex and XWT before it (notably the 
JS engine)
+ *Brian Alliet (http://www.brianweb.net/"; 
target="_top">www.brianweb.net/)
+ *  Key contributor to Vexi, and Ibex and XWT before it (notably 
NestedVM)
  *  
  *
  *  

Modified: branches/vexi3/org.vexi-library.js/src/main/java/org/ibex/js/JSU.java
===
--- branches/vexi3/org.vexi-library.js/src/main/java/org/ibex/js/JSU.java   
2016-09-29 14:09:31 UTC (rev 4883)
+++ branches/vexi3/org.vexi-library.js/src/main/java/org/ibex/js/JSU.java   
2016-09-30 20:01:38 UTC (rev 4884)
@@ -1,3 +1,7 @@
+// Copyright 2000-2016 the Contributors, as shown in the revision logs.
+// Licensed under the Apache Software License 2.0 ("the License").
+// You may not use this file except in compliance with the License.
+
 package org.ibex.js;
 
 import java.io.*;

Modified: branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JS.jpp
===
--- branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JS.jpp  
2016-09-29 14:09:31 UTC (rev 4883)
+++ branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JS.jpp  
2016-09-30 20:01:38 UTC (rev 4884)
@@ -60,12 +60,12 @@
  * Write Traps
  * 
  * A write trap is a js function with a single argument, which is the value 
being assigned to
- * the property.  It should contain either a return or put to the 
cascade keyword and
- * will produce a warning if neither is present.
+ * the property.  It should contain either return or 
cascade and will
+ * produce a warning if neither is present.
  * 
- * To put a value to the property at any point in the function, put to the 
cascade
- * keyword.  This may only be done once per execution of a write trap.  
Note that putting to
- * the property directly will re-invoke the write trap.
+ * Put to the cascade keyword to put a value to the property 
at any point in the
+ * function.  This may only be done once per execution of a write trap.  
Note that putting
+ * to the property directly will re-invoke the write trap.
  * 
  * To block a put - that is, cause the put to be ignored - simply 
return.
  * 
@@ -94,15 +94,15 @@
  * Trap Chains
  * 
  * When assigning multiple read or write traps to the same property on the 
same object, the
- * traps are stacked in order of assignment to create a trap chain.
+ * trap functions are stacked in order of assignment to create a trap 
chain.
  * 
  * There are two paths of execution in a trap chain, know

[Vexi-svn] SF.net SVN: vexi:[4883] branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/ widgets/colorpicker.t

2016-09-29 Thread clrg
Revision: 4883
  http://sourceforge.net/p/vexi/code/4883
Author:   clrg
Date: 2016-09-29 14:09:31 + (Thu, 29 Sep 2016)
Log Message:
---
Colorpicker poke.

Added Paths:
---
branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/widgets/colorpicker.t

Added: branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/widgets/colorpicker.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/widgets/colorpicker.t
(rev 0)
+++ branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/widgets/colorpicker.t
2016-09-29 14:09:31 UTC (rev 4883)
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
+
+$picker.value ++= function(v) {
+$output.text = v;
+}
+
+vexi.ui.frame = thisbox;
+
+
+

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4882] branches/vexi3/org.vexi-library.js/src/main/jpp/org /ibex/js/JS.jpp

2016-09-06 Thread clrg
Revision: 4882
  http://sourceforge.net/p/vexi/code/4882
Author:   clrg
Date: 2016-09-06 10:41:10 + (Tue, 06 Sep 2016)
Log Message:
---
Trivial doc fix.

Modified Paths:
--
branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JS.jpp

Modified: branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JS.jpp
===
--- branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JS.jpp  
2016-09-06 10:39:04 UTC (rev 4881)
+++ branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JS.jpp  
2016-09-06 10:41:10 UTC (rev 4882)
@@ -965,11 +965,11 @@
 /*@PAGE(varname=ProxyList,humanname=ProxyList Object)
  * 
  * The proxy list object is an alternative list object to 
the standard js array,
- * which supports a “range trap” 
lsquo;Elementsrsquo; to trap on the
- * access/assignment/removal of elements
+ * which supports a “range trap” 
‘Elements’ to trap on the
+ * access/assignment/removal of elements.
  * 
- * Whereas the Proxy object is very similar to the standard 
Object the ProxyList is not
- * similar to an array and so cannot be used as a drop in 
replacement.
+ * Whereas the Proxy object is very similar to the standard 
Object, the ProxyList
+ * is not similar to an array and so cannot be used as a drop 
in replacement.
  * 
  * Notably, ProxyList does not support most of the methods 
that arrays have, and
  * it is not sparse and cannot contain nulls. Putting null to 
a proxy list will remove

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4881] branches/vexi3/org.vexi-core.main/src/main/jpp/org/ vexi/core/Vexi.jpp

2016-09-06 Thread clrg
Revision: 4881
  http://sourceforge.net/p/vexi/code/4881
Author:   clrg
Date: 2016-09-06 10:39:04 + (Tue, 06 Sep 2016)
Log Message:
---
Fix setDefaultTimeout.

Modified Paths:
--
branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Vexi.jpp

Modified: branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Vexi.jpp
===
--- branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Vexi.jpp   
2016-09-06 10:37:08 UTC (rev 4880)
+++ branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Vexi.jpp   
2016-09-06 10:39:04 UTC (rev 4881)
@@ -405,13 +405,13 @@
  * @return(xmlrpc) */
 case "net.rpc.xml": return METHOD;
 
-/* Set how long in milliseconds Vexi will attempt an RPC call before 
it times out
+/* Get how long in milliseconds Vexi will attempt an RPC call before 
it times out
  * @param(ms) */
 case "net.getDefaultTimeout": return METHOD;
 
-/* Get how long in milliseconds Vexi will attempt an RPC call before 
it times out
+/* Set how long in milliseconds Vexi will attempt an RPC call before 
it times out
  * @return(number) */
-case "net.getDefaultTimeout": return METHOD;
+case "net.setDefaultTimeout": return METHOD;
 
 /* Paramaters passed into vexi when launched can read as properties 
on this object 
  * 

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4880] branches/vexi3/org.vexi-library.js/src/main/jpp/org /ibex/js/JSInstant.jpp

2016-09-06 Thread clrg
Revision: 4880
  http://sourceforge.net/p/vexi/code/4880
Author:   clrg
Date: 2016-09-06 10:37:08 + (Tue, 06 Sep 2016)
Log Message:
---
Docs for JSInstant.

Modified Paths:
--
branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JSInstant.jpp

Modified: 
branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JSInstant.jpp
===
--- branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JSInstant.jpp   
2016-08-12 09:24:15 UTC (rev 4879)
+++ branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JSInstant.jpp   
2016-09-06 10:37:08 UTC (rev 4880)
@@ -57,16 +57,27 @@
 
 public JS get(JS key) throws JSExn {
 //#switch(JSU.toString(key))
-case "timezone":
-   return JSU.S(getTimeZone().getID());
-   case "now":
-return new JSInstant(new Instant());
-case "compare": 
-return METHOD;
-case "tryParseTimestamp":
-   return METHOD;
-case "diffMillis":
-   return METHOD;  
+/*@PAGE(varname=Instant,humanname=Instant Object)
+ * 
+ * Represents a point in time.
+ * */
+
+/* The timezone for this Instant
+ * @type(String) */
+case "timezone": return JSU.S(getTimeZone().getID());
+/* An Instant representing the time right now
+ * @type(Instant) */
+   case "now": return new JSInstant(new Instant());
+/* Compares two Instants to each other, returning 0 if they are 
the same,
+ * 1 if ‘ins1’ is bigger or -1 if ‘ins2’ 
is bigger
+ * @param(ins1) @param(ins2) @return(Number) */
+case "compare": return METHOD;
+/* Returns the absolute value of ‘num’
+ * @param(str) @return(Number) */
+case "tryParseTimestamp": return METHOD;
+/* Returns the difference between two Instants in 
milliseconds
+ * @param(ins1) @param(ins2) @return(Number) */
+case "diffMillis": return METHOD;  
 //#end
 return super.get(key);
 }

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4872] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic/numfield.t

2016-06-28 Thread clrg
Revision: 4872
  http://sourceforge.net/p/vexi/code/4872
Author:   clrg
Date: 2016-06-28 16:46:33 + (Tue, 28 Jun 2016)
Log Message:
---
Fix numfield height setting - view/viewport mixed up.

Modified Paths:
--

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/numfield.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/numfield.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/numfield.t 
2016-06-20 23:41:53 UTC (rev 4871)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/numfield.t 
2016-06-28 16:46:33 UTC (rev 4872)
@@ -7,7 +7,7 @@
 
 
 
-
+
 
 
  
@@ -18,8 +18,8 @@
 thisbox.th_shadowtext = $shadow;
 thisbox.th_shadowwrap = $shadowpad;
 thisbox.th_minus = $minus;
-thisbox.th_view = $inset;
-thisbox.th_viewport = $content;
+thisbox.th_view = $content;
+thisbox.th_viewport = $inset;
 thisbox.v_init = static.init;
 
 

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4871] trunk/org.vexi-build.jsdoc/src/poke/java/vexi/jsdoc /RunOnVexi.java

2016-06-20 Thread clrg
Revision: 4871
  http://sourceforge.net/p/vexi/code/4871
Author:   clrg
Date: 2016-06-20 23:41:53 + (Mon, 20 Jun 2016)
Log Message:
---
Minor.

Modified Paths:
--
trunk/org.vexi-build.jsdoc/src/poke/java/vexi/jsdoc/RunOnVexi.java

Modified: trunk/org.vexi-build.jsdoc/src/poke/java/vexi/jsdoc/RunOnVexi.java
===
--- trunk/org.vexi-build.jsdoc/src/poke/java/vexi/jsdoc/RunOnVexi.java  
2016-06-20 23:36:23 UTC (rev 4870)
+++ trunk/org.vexi-build.jsdoc/src/poke/java/vexi/jsdoc/RunOnVexi.java  
2016-06-20 23:41:53 UTC (rev 4871)
@@ -1,6 +1,7 @@
 package vexi.jsdoc;
 
 import java.io.*;
+import java.util.Calendar;
 
 import org.vexi.build.jsdoc.*;
 import org.vexi.tools.autodoc.SourcePath;
@@ -8,8 +9,8 @@
 public class RunOnVexi {

// vexidoc options / defaults
-   static String version = "3.0 svn";
-   static String build = "Unknown";
+   static String version = "3.1";
+   static String build = "Dev";
static String docpath = "../";

static public void main(String[] args) throws Exception {
@@ -39,8 +40,8 @@

JSDoc jsdoc = new JSDoc(path, new File("vexi_jsdoc")){{
setName("Vexi");
-   setVersion("3.0");
-   setCopyRight("2011 The Vexi Project");
+   setVersion(RunOnVexi.version);
+   setCopyRight("Copyright 
"+Calendar.getInstance().get(Calendar.YEAR)+" The Vexi Project");
setProjectWWW("vexi.sourceforge.net");

addLibraryRoot("vexi", "org.vexi.core.Vexi");

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4870] trunk/org.vexi-build.jsdoc/parser_setup.xml

2016-06-20 Thread clrg
Revision: 4870
  http://sourceforge.net/p/vexi/code/4870
Author:   clrg
Date: 2016-06-20 23:36:23 + (Mon, 20 Jun 2016)
Log Message:
---
Temporary autodoc prep ant file in lieu of ebuild-based approach.

Added Paths:
---
trunk/org.vexi-build.jsdoc/parser_setup.xml

Added: trunk/org.vexi-build.jsdoc/parser_setup.xml
===
--- trunk/org.vexi-build.jsdoc/parser_setup.xml (rev 0)
+++ trunk/org.vexi-build.jsdoc/parser_setup.xml 2016-06-20 23:36:23 UTC (rev 
4870)
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+


Property changes on: trunk/org.vexi-build.jsdoc/parser_setup.xml
___
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4869] branches/vexi3/org.vexi-library.js/src/main/jpp/org

2016-06-20 Thread clrg
Revision: 4869
  http://sourceforge.net/p/vexi/code/4869
Author:   clrg
Date: 2016-06-20 16:41:49 + (Mon, 20 Jun 2016)
Log Message:
---
Trivial. JS-consistent error messages with incorrect number of args for max/min.

Modified Paths:
--
branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JSMath.jpp
branches/vexi3/org.vexi-library.js/src/main/jpp/org/vexi/js/VexiJS.jpp

Modified: branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JSMath.jpp
===
--- branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JSMath.jpp  
2016-06-20 16:36:07 UTC (rev 4868)
+++ branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JSMath.jpp  
2016-06-20 16:41:49 UTC (rev 4869)
@@ -54,18 +54,20 @@
 }
 default: {
 //#switch(JSU.toString(method))
-case "min":
-if (args.length<3) throw new JSExn("math.min expects at 
least 2 arguments");
-double min = JSU.toDouble(args[0]);
-for (int i=1; args.length>i; i++)
-min = java.lang.Math.min(min, JSU.toDouble(args[i]));
-return JSU.N(min);
-case "max":
-if (args.length<3) throw new JSExn("math.max expects at 
least 2 arguments");
-double max = JSU.toDouble(args[0]);
-for (int i=1; args.length>i; i++)
-max = java.lang.Math.max(max, JSU.toDouble(args[i]));
-return JSU.N(max);
+   case "min":
+   // super call will give default error
+   if (args.length<3) return super.callMethod(this_, 
method, args);
+   double min = JSU.toDouble(args[0]);
+   for (int i=1; args.length>i; i++)
+   min = java.lang.Math.min(min, 
JSU.toDouble(args[i]));
+   return JSU.N(min);
+   case "max":
+   // super call will give default error
+   if (args.length<3) return super.callMethod(this_, 
method, args);
+   double max = JSU.toDouble(args[0]);
+   for (int i=1; args.length>i; i++)
+   max = java.lang.Math.max(max, 
JSU.toDouble(args[i]));
+return JSU.N(max);
 //#end
 break;
 }

Modified: branches/vexi3/org.vexi-library.js/src/main/jpp/org/vexi/js/VexiJS.jpp
===
--- branches/vexi3/org.vexi-library.js/src/main/jpp/org/vexi/js/VexiJS.jpp  
2016-06-20 16:36:07 UTC (rev 4868)
+++ branches/vexi3/org.vexi-library.js/src/main/jpp/org/vexi/js/VexiJS.jpp  
2016-06-20 16:41:49 UTC (rev 4869)
@@ -366,13 +366,15 @@
 default: {
 //#switch(JSU.toString(method))
case "min":
-   if (args.length<3) throw new JSExn("math.min 
expects at least 2 arguments");
+   // super call will give default error
+   if (args.length<3) return super.callMethod(this_, 
method, args);
double min = JSU.toDouble(args[0]);
for (int i=1; args.length>i; i++)
min = java.lang.Math.min(min, 
JSU.toDouble(args[i]));
return JSU.N(min);
case "max":
-   if (args.length<3) throw new JSExn("math.max 
expects at least 2 arguments");
+   // super call will give default error
+   if (args.length<3) return super.callMethod(this_, 
method, args);
double max = JSU.toDouble(args[0]);
for (int i=1; args.length>i; i++)
max = java.lang.Math.max(max, 
JSU.toDouble(args[i]));

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports. http://sdm.link/zohomanageengine
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4868] branches/vexi3/org.vexi-library.js/src/test/java/ test/js/exec/number/testMath.js

2016-06-20 Thread clrg
Revision: 4868
  http://sourceforge.net/p/vexi/code/4868
Author:   clrg
Date: 2016-06-20 16:36:07 + (Mon, 20 Jun 2016)
Log Message:
---
Adjusted test for math.max/min with more than 2 arguments.

Modified Paths:
--

branches/vexi3/org.vexi-library.js/src/test/java/test/js/exec/number/testMath.js

Modified: 
branches/vexi3/org.vexi-library.js/src/test/java/test/js/exec/number/testMath.js
===
--- 
branches/vexi3/org.vexi-library.js/src/test/java/test/js/exec/number/testMath.js
2016-06-20 16:35:25 UTC (rev 4867)
+++ 
branches/vexi3/org.vexi-library.js/src/test/java/test/js/exec/number/testMath.js
2016-06-20 16:36:07 UTC (rev 4868)
@@ -1,13 +1,12 @@
 sys.import("lib");
 
assertEquals(sys.math.abs(-3.2),3.2);
-   sys.log.info("** SKIPPING ASSERTS <= sys.math.max with > 2 args 
 **");
-   //assert(sys.math.max(111,22,3) == 111);
-   //assertEquals(sys.math.min(111,22,3),(is_nav4_ || is_ie5_1_ ? 
22 : 3));
-   //assertEquals(sys.math.max(3,22,111),(is_nav4_ || is_ie5_1_ ? 
22 : 111));
+   assert(sys.math.max(111,22,3) == 111);
+   assertEquals(sys.math.min(111,22,3),3);
+   assertEquals(sys.math.max(3,22,111),111);

-   //assert(sys.math.max(1,2) == 2  && sys.math.max(1,2,3,4) == 
(is_nav4_ || is_ie5_1_ ? 2 : 4));
-   //assert(sys.math.min(1,2) == 1  && sys.math.min(1,2,3,0) == 
(is_nav4_ || is_ie5_1_ ? 1 : 0));
+   assert((sys.math.max(1,2) == 2) && (sys.math.max(1,2,3,4) == 
4));
+   assert((sys.math.min(1,2) == 1) && (sys.math.min(1,2,3,0) == 
0));

assert(sys.math.random() > 0 && 1 >= sys.math.random());


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports. http://sdm.link/zohomanageengine
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4867] branches/vexi3/org.vexi-library.js/src/main/jpp/org

2016-06-20 Thread clrg
Revision: 4867
  http://sourceforge.net/p/vexi/code/4867
Author:   clrg
Date: 2016-06-20 16:35:25 + (Mon, 20 Jun 2016)
Log Message:
---
Support unlimited arguments for math.max/min (global JS objects).

Modified Paths:
--
branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JSMath.jpp
branches/vexi3/org.vexi-library.js/src/main/jpp/org/vexi/js/VexiJS.jpp

Modified: branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JSMath.jpp
===
--- branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JSMath.jpp  
2016-06-20 16:13:13 UTC (rev 4866)
+++ branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JSMath.jpp  
2016-06-20 16:35:25 UTC (rev 4867)
@@ -52,6 +52,23 @@
 //#end
 break;
 }
+default: {
+//#switch(JSU.toString(method))
+case "min":
+if (args.length<3) throw new JSExn("math.min expects at 
least 2 arguments");
+double min = JSU.toDouble(args[0]);
+for (int i=1; args.length>i; i++)
+min = java.lang.Math.min(min, JSU.toDouble(args[i]));
+return JSU.N(min);
+case "max":
+if (args.length<3) throw new JSExn("math.max expects at 
least 2 arguments");
+double max = JSU.toDouble(args[0]);
+for (int i=1; args.length>i; i++)
+max = java.lang.Math.max(max, JSU.toDouble(args[i]));
+return JSU.N(max);
+//#end
+break;
+}
 }
 return super.callMethod(this_, method, args);
 }

Modified: branches/vexi3/org.vexi-library.js/src/main/jpp/org/vexi/js/VexiJS.jpp
===
--- branches/vexi3/org.vexi-library.js/src/main/jpp/org/vexi/js/VexiJS.jpp  
2016-06-20 16:13:13 UTC (rev 4866)
+++ branches/vexi3/org.vexi-library.js/src/main/jpp/org/vexi/js/VexiJS.jpp  
2016-06-20 16:35:25 UTC (rev 4867)
@@ -363,6 +363,23 @@
 //#end
 break;
 }
+default: {
+//#switch(JSU.toString(method))
+   case "min":
+   if (args.length<3) throw new JSExn("math.min 
expects at least 2 arguments");
+   double min = JSU.toDouble(args[0]);
+   for (int i=1; args.length>i; i++)
+   min = java.lang.Math.min(min, 
JSU.toDouble(args[i]));
+   return JSU.N(min);
+   case "max":
+   if (args.length<3) throw new JSExn("math.max 
expects at least 2 arguments");
+   double max = JSU.toDouble(args[0]);
+   for (int i=1; args.length>i; i++)
+   max = java.lang.Math.max(max, 
JSU.toDouble(args[i]));
+   return JSU.N(max);
+//#end
+break;
+}
 }
 return super.callMethod(this_, method, args);
 }

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports. http://sdm.link/zohomanageengine
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4866] branches/vexi3/org.vexi-core.main/src/main/java/org /vexi/core

2016-06-20 Thread clrg
Revision: 4866
  http://sourceforge.net/p/vexi/code/4866
Author:   clrg
Date: 2016-06-20 16:13:13 + (Mon, 20 Jun 2016)
Log Message:
---
Trivial.

Modified Paths:
--
branches/vexi3/org.vexi-core.main/src/main/java/org/vexi/core/VML.java

branches/vexi3/org.vexi-core.main/src/main/java/org/vexi/core/VMLBuilder.java

Modified: branches/vexi3/org.vexi-core.main/src/main/java/org/vexi/core/VML.java
===
--- branches/vexi3/org.vexi-core.main/src/main/java/org/vexi/core/VML.java  
2016-06-20 16:12:30 UTC (rev 4865)
+++ branches/vexi3/org.vexi-core.main/src/main/java/org/vexi/core/VML.java  
2016-06-20 16:13:13 UTC (rev 4866)
@@ -447,7 +447,7 @@
 }
 
 static abstract class CodeBlock {
-final CodeBlock parent;/// Only used for sharing id scopeing
+final CodeBlock parent;/// Only used for sharing id scoping
 final Basket.Array idlist;
 
 
@@ -456,7 +456,7 @@
 int contentStart = -1; ///< line number of the first line of 
content
 int elementStart = -1; ///< the line number that this element 
starts on
 
-Prefixes uriPrefixes;  /// Uri prefixes->Blessings
+Prefixes uriPrefixes;  /// URI prefixes->Blessings
 

 CodeBlock(CodeBlock parent, int elementStart, boolean idContext) {

Modified: 
branches/vexi3/org.vexi-core.main/src/main/java/org/vexi/core/VMLBuilder.java
===
--- 
branches/vexi3/org.vexi-core.main/src/main/java/org/vexi/core/VMLBuilder.java   
2016-06-20 16:12:30 UTC (rev 4865)
+++ 
branches/vexi3/org.vexi-core.main/src/main/java/org/vexi/core/VMLBuilder.java   
2016-06-20 16:13:13 UTC (rev 4866)
@@ -382,10 +382,8 @@
 String v = a.getVal(i);
 if (k.equals("id")) {
 t.id = v.toString().intern();
-if (cb.hasId(t.id)) {
-   cb.hasId(t.id);
+if (cb.hasId(t.id))
 throw new XML.Exn("duplicate node id '"+t.id+"'", 
XML.Exn.SCHEMA, getLine(), -1);
-}
 cb.addId(t.id);
 continue ATTR;
 }

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports. http://sdm.link/zohomanageengine
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4865] branches/vexi3/org.vexi-library.js/src/main/jpp/org /ibex/js/XMLRPC.jpp

2016-06-20 Thread clrg
Revision: 4865
  http://sourceforge.net/p/vexi/code/4865
Author:   clrg
Date: 2016-06-20 16:12:30 + (Mon, 20 Jun 2016)
Log Message:
---
Minor. Make debug logging logic only occur during debug logging.

Modified Paths:
--
branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/XMLRPC.jpp

Modified: branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/XMLRPC.jpp
===
--- branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/XMLRPC.jpp  
2016-06-20 15:57:09 UTC (rev 4864)
+++ branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/XMLRPC.jpp  
2016-06-20 16:12:30 UTC (rev 4865)
@@ -376,21 +376,20 @@
 if (logger.isDebug()) logger.debug(LOG_TYPE, "send:\n" + request);
 InputStream is = http.POST("text/xml", 
request.getBytes(encoding)).body;
 try {
-if(logger.isDebug() || true){
-   ByteArrayOutputStream baos = new 
ByteArrayOutputStream();
-   IOUtil.pipe(is, baos);
-   byte[] xmlBytes = baos.toByteArray();
+   ByteArrayOutputStream baos = new ByteArrayOutputStream();
+   IOUtil.pipe(is, baos);
+   byte[] xmlBytes = baos.toByteArray();
+if (logger.isDebug()) {
 logger.debug(LOG_TYPE, "received:");
 // REMARK this is far from ideal
-try{
+try {
logger.debug(LOG_TYPE, prettyPrint(xmlBytes));
-}catch(Throwable t){
+} catch(Throwable t){
logger.debug(LOG_TYPE, "Xml response not formatted 
because: "+t.getClass().getSimpleName()+": "+t.getMessage());
 logger.debug(LOG_TYPE, new String(xmlBytes,"UTF-8"));
 }
-
-   is = new ByteArrayInputStream(xmlBytes);
 }
+   is = new ByteArrayInputStream(xmlBytes);
 
 new Helper().parse(is);
 
@@ -422,13 +421,13 @@
 // is not ideal, but formatting the xmlrpc responses is not 
 // core functionality and this way is convenient and small.
 public String prettyPrint(byte[] xml) throws Exception {
-   Transformer serializer= 
SAXTransformerFactory.newInstance().newTransformer();
+   Transformer serializer = 
SAXTransformerFactory.newInstance().newTransformer();
serializer.setOutputProperty(OutputKeys.INDENT, "yes");
//serializer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes");

serializer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount";, "2");

//serializer.setOutputProperty("{http://xml.customer.org/xslt}indent-amount";, 
"2");
-   Source xmlSource=new SAXSource(new InputSource(new 
ByteArrayInputStream(xml)));
-   StreamResult res =  new StreamResult(new ByteArrayOutputStream());  
  
+   Source xmlSource = new SAXSource(new InputSource(new 
ByteArrayInputStream(xml)));
+   StreamResult res = new StreamResult(new ByteArrayOutputStream());   
 
serializer.transform(xmlSource, res);
return new 
String(((ByteArrayOutputStream)res.getOutputStream()).toByteArray());
 }

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports. http://sdm.link/zohomanageengine
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4864] branches/vexi3

2016-06-20 Thread clrg
Revision: 4864
  http://sourceforge.net/p/vexi/code/4864
Author:   clrg
Date: 2016-06-20 15:57:09 + (Mon, 20 Jun 2016)
Log Message:
---
Add timeout to RPC calls
- previously was -1 (infinite) but now defaults to 30s
- can be set (or get) via vexi.net.setDefaultTimeout (and .get)

Modified Paths:
--
branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Vexi.jpp
branches/vexi3/org.vexi-library.net/src/main/java/org/ibex/net/HTTP.java
branches/vexi3/org.vexi-library.net/src/main/java/org/ibex/net/JreHTTP.java
branches/vexi3/org.vexi-library.net/src/main/java/org/ibex/net/OrigHTTP.java

branches/vexi3/org.vexi-library.net/src/main/java/org/ibex/net/OrigHTTP_reconnect.java
branches/vexi3/org.vexi-library.net/src/main/jpp/org/ibex/net/ApacheHTTP.jpp

Modified: branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Vexi.jpp
===
--- branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Vexi.jpp   
2016-06-19 15:52:18 UTC (rev 4863)
+++ branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Vexi.jpp   
2016-06-20 15:57:09 UTC (rev 4864)
@@ -10,6 +10,7 @@
 import org.ibex.js.Thread;
 import org.ibex.js.JSU.*;
 import org.vexi.js.*;
+import org.ibex.net.HTTP;
 import org.ibex.util.Cache;
 import org.ibex.util.Callable;
 import org.ibex.util.Encode;
@@ -404,6 +405,14 @@
  * @return(xmlrpc) */
 case "net.rpc.xml": return METHOD;
 
+/* Set how long in milliseconds Vexi will attempt an RPC call before 
it times out
+ * @param(ms) */
+case "net.getDefaultTimeout": return METHOD;
+
+/* Get how long in milliseconds Vexi will attempt an RPC call before 
it times out
+ * @return(number) */
+case "net.getDefaultTimeout": return METHOD;
+
 /* Paramaters passed into vexi when launched can read as properties 
on this object 
  * 
  *  var host = params["host"];
@@ -779,6 +788,8 @@
 case "crypto.rc4": /* FEATURE */ return null;
 case "file.remove": ((Fountain.File)args[0]).remove(); return 
null;
 case "js.stringify": return JSON.marshal(args[0]);
+case "net.getDefaultTimeout": return 
JSU.N(HTTP.getDefaultSettings().getConnectTimeout());
+case "net.setDefaultTimeout": 
HTTP.getDefaultSettings().setConnectTimeout(JSU.toInt(args[0])); return null;
 case "net.rpc.xml": return new XMLRPC(Log.rpc, 
JSU.toString(args[0]), "");
 case "net.rpc.soap": throw new JSExn("Not yet implemented");
 case "regexp": return new JSRegexp(args[0], null);

Modified: 
branches/vexi3/org.vexi-library.net/src/main/java/org/ibex/net/HTTP.java
===
--- branches/vexi3/org.vexi-library.net/src/main/java/org/ibex/net/HTTP.java
2016-06-19 15:52:18 UTC (rev 4863)
+++ branches/vexi3/org.vexi-library.net/src/main/java/org/ibex/net/HTTP.java
2016-06-20 15:57:09 UTC (rev 4864)
@@ -2,8 +2,11 @@
 
 import java.io.*;
 
-public interface HTTP {
-static public class HTTPEntityInfo{
+import org.ibex.net.HTTP.HTTPSettings;
+
+public abstract class HTTP {
+   
+static public class HTTPEntityInfo {
final public int contentLength;   ///< the length of the entire 
content body; -1 if chunked
final public String contentType;
 final public String lastModified;
@@ -28,15 +31,45 @@
} 
 }
 
-static public class HTTPResponse{
+static public class HTTPResponse {
final public HTTPEntityInfo info;
final public InputStream body;
-   public HTTPResponse(HTTPEntityInfo info, InputStream body){
+   public HTTPResponse(HTTPEntityInfo info, InputStream body) {
this.info = info;
this.body = body;
}
 }
 
-public HTTPResponse GET() throws IOException;
-   public HTTPResponse POST(String mime, byte[] bytes) throws IOException;
+abstract public HTTPResponse GET() throws IOException;
+abstract public HTTPResponse POST(String mime, byte[] bytes) throws 
IOException;
+   
+
+   static public class HTTPSettings {
+   int connectTimeout; // in milliseconds
+   public void setConnectTimeout(int ms) { connectTimeout = ms; }
+   public int getConnectTimeout() { return connectTimeout; }
+   
+   public HTTPSettings(int ct) { connectTimeout = ct; }
+   }
+   
+   static private HTTPSettings defaultSettings = new HTTPSettings(3);
+   private HTTPSettings settings;
+
+   static public HTTPSettings getDefaultSettings() {
+   return 

[Vexi-svn] SF.net SVN: vexi:[4862] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/tool/colorpicker.t

2016-06-17 Thread clrg
Revision: 4862
  http://sourceforge.net/p/vexi/code/4862
Author:   clrg
Date: 2016-06-18 00:21:41 + (Sat, 18 Jun 2016)
Log Message:
---
Fix colorpicker circle being cut off at the edges.

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/tool/colorpicker.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/tool/colorpicker.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/tool/colorpicker.t   
2016-06-17 23:35:53 UTC (rev 4861)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/tool/colorpicker.t   
2016-06-18 00:21:41 UTC (rev 4862)
@@ -25,19 +25,19 @@
 
 
 
-
-
+
+
+
+
+
 
-
-
+
 
 
 
-
+
 
-$gradient.marker = $marker;
 
-
 
 
 
@@ -242,7 +242,7 @@
 const H = model.hue, S = model.saturation, V = model.value;
 
 // set marker arrows
-$gradient.marker.y = 0 - round((V/255) * $gradient.height);
+$gradientMarker.y = 0 - round((V/255) * $gradient.height);
 
 // Recalculate the color from HSV, but this time with a full value
 const hue6 = H/60;

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports. http://sdm.link/zohomanageengine
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4861] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/tool/colorpicker.t

2016-06-17 Thread clrg
Revision: 4861
  http://sourceforge.net/p/vexi/code/4861
Author:   clrg
Date: 2016-06-17 23:35:53 + (Fri, 17 Jun 2016)
Log Message:
---
Refactor colorpicker
- clearer, commented code
- refactor to work using a colour "model"
- relabel 'intensity'->'value' as it was HSV logic, not HSI
- add spinners for colour components
- eliminate code fighting (functions calling each other unnecessarily)
- take out pointless threading

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/tool/colorpicker.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/tool/colorpicker.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/tool/colorpicker.t   
2016-06-17 22:18:09 UTC (rev 4860)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/tool/colorpicker.t   
2016-06-17 23:35:53 UTC (rev 4861)
@@ -1,12 +1,14 @@
-
+
 
 
+  xmlns="org.vexi.tool">
+
 
  Colorpicker
  A 24-bit colorpicker
@@ -20,7 +22,7 @@
  
 
 
-
+
 
 
 
@@ -38,9 +40,9 @@
 
 
 
-
+
 
-
+
 
 
 
@@ -53,337 +55,470 @@
 
 
 
-
-
+
 
-
-
-
+
+
+
 
 
-
-
-
+
+
+
 
 
-
-
-
+
+
+
 
 
-
-
-
+
+
+
 
 
-
-
-
+
+
+
 
 
-
-
-
+
+
+
 
+
+
+
+
+
 
 
-
-// api
-thisbox.h ++= function() { return $Hue.value; } 
-thisbox.h ++= function(v) { $Hue.value = v; cascade = v; } 
-thisbox.s ++= function() { return $Saturation.value; } 
-thisbox.s ++= function(v) { $Saturation.value = v; cascade = v; } 
-thisbox.n ++= function() { return $Intensity.value; } 
-thisbox.n ++= function(v) { $Intensity.value = v; cascade = v; } 
-thisbox.r ++= function() { return $Red.value; } 
-thisbox.r ++= function(v) { $Red.value = v; cascade = v; } 
-thisbox.g ++= function() { return $Green.value; } 
-thisbox.g ++= function(v) { $Green.value = v; cascade = v; } 
-thisbox.b ++= function() { return $Blue.value; } 
-thisbox.b ++= function(v) { $Blue.value = v; cascade = v; } 
-thisbox.color_left ++= function() { return $colorleft.fill; } 
-thisbox.color_left ++= function(v) { $colorleft.fill = v; cascade = v; 
} 
-thisbox.color_right ++= function() { return $colorright.fill; } 
-thisbox.color_right ++= function(v) { $colorright.fill = v; cascade = 
v; } 
+
 
-// deliberately shadowing api on box, set internal values without 
triggering traps
-var r, g, b;
-var h, s, n;
+
+// Color Model
 
-
-// internal functions
-const hexdid = [ "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", 
"A", "B", "C", "D", "E", "F" ];
-const toHexColor = function(red, green, blue) {
-// REMARK - should be, but is, necessary
-// why are we receiving negative values?
-if (0>red) red = 0;
-if (0>green) green = 0;
-if (0>blue) blue = 0;
-
-return "#" + hexdid[vexi.math.floor(red/16)]   + 
hexdid[vexi.math.floor(red%16)]
-   + hexdid[vexi.math.floor(green/16)] + 
hexdid[vexi.math.floor(green%16)]
-   + hexdid[vexi.math.floor(blue/16)]  + 
hexdid[vexi.math.floor(blue%16)];
+const model = {
+hasAlpha:true,
+alpha:0, red:0, green:0, blue:0, // ARGB all 0-255
+hue:0, saturation:0, value:0, // H 0-360, SI 0-255
 }
-
-
-
-var threadsleeping = false;
-var lock_value = false;
-var lock_text = false;

[Vexi-svn] SF.net SVN: vexi:[4860] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/lib/widget/slider.t

2016-06-17 Thread clrg
Revision: 4860
  http://sourceforge.net/p/vexi/code/4860
Author:   clrg
Date: 2016-06-17 22:18:09 + (Fri, 17 Jun 2016)
Log Message:
---
Previous fix exposed broken behaviour. Improve/fix that too!

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/slider.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/slider.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/slider.t  
2016-06-17 21:01:32 UTC (rev 4859)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/slider.t  
2016-06-17 22:18:09 UTC (rev 4860)
@@ -38,8 +38,17 @@
 }
 
 /** used to sync the handle position */
-thisbox.syncHandle = function(v) { cascade = v; step = step; }
+thisbox.syncHandle = function() { 
+   // adjust the handle position according to the step
+   th_handle[pos] = step * (th_track[dim] - th_handle[dim]) / 
numsteps;
+}
 
+/** for track/thumb to sync handle when resizing */
+thisbox.syncHandleTrap = function(v) { 
+cascade = v;
+syncHandle();
+}
+
 // draggable integration
 thisbox.moveEvent = function(v) { cascade = v; syncStep(); }
 thisbox.Press1 ++= thisbox.moveEvent;
@@ -71,8 +80,7 @@
 // nothing to do
 if (s == trapee.step) return;
 cascade = s;
-// adjust the handle position according to the step
-trapee.th_handle[trapee.pos] = trapee.step * 
(trapee.th_track[trapee.dim] - trapee.th_handle[trapee.dim]) / trapee.numsteps;
+trapee.syncHandle();
 // fire value traps
 trapee.traplock = true;
 trapee.value = trapee.value;
@@ -94,13 +102,13 @@
 /** mak sure the handle is kept at the write track position */
 static.handleWrite = function(v) {
 cascade = v;
-trapee.th_handle.width ++= trapee.syncHandle;
+trapee.th_handle.width ++= trapee.syncHandleTrap;
 }
 
 /** mak sure the handle is kept at the write track position */
 static.trackWrite = function(v) {
 cascade = v;
-trapee.th_track.width ++= trapee.syncHandle;
+trapee.th_track.width ++= trapee.syncHandleTrap;
 }
 
 /** return value based on step */

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports. http://sdm.link/zohomanageengine
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4859] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/lib/widget/slider.t

2016-06-17 Thread clrg
Revision: 4859
  http://sourceforge.net/p/vexi/code/4859
Author:   clrg
Date: 2016-06-17 21:01:32 + (Fri, 17 Jun 2016)
Log Message:
---
Fix double cascade in slider step write trap
- long standing bug
- slider sending out values beyond min/max settings

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/slider.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/slider.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/slider.t  
2016-06-14 12:00:58 UTC (rev 4858)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/slider.t  
2016-06-17 21:01:32 UTC (rev 4859)
@@ -28,7 +28,9 @@
 
 var surfaceToTrack;
 var syncStep = function() {
-if (surfaceToTrack==null) surfaceToTrack = 
surface.frame.distanceto(th_track);
+if (surfaceToTrack==null)
+surfaceToTrack = surface.frame.distanceto(th_track);
+
 step = vexi.math.round(numsteps *
 (surface.frame.mouse[pos] -
 vexi.math.abs(surfaceToTrack[pos]) -
@@ -65,14 +67,16 @@
 /** move handle based on new step value */
 static.stepWrite = function(v) {
 // make sure step has a valid value
-cascade = (0 > v) ? 0 : (v > trapee.numsteps) ? trapee.numsteps : v;
+var s = (0 > v) ? 0 : (v > trapee.numsteps) ? trapee.numsteps : v;
+// nothing to do
+if (s == trapee.step) return;
+cascade = s;
 // adjust the handle position according to the step
 trapee.th_handle[trapee.pos] = trapee.step * 
(trapee.th_track[trapee.dim] - trapee.th_handle[trapee.dim]) / trapee.numsteps;
 // fire value traps
 trapee.traplock = true;
 trapee.value = trapee.value;
 trapee.traplock = false;
-cascade = v;
 }
 
 /** recalculate numsteps based on interval/min/max */

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports. http://sdm.link/zohomanageengine
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4858] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/lib/widget/slider.t

2016-06-14 Thread clrg
Revision: 4858
  http://sourceforge.net/p/vexi/code/4858
Author:   clrg
Date: 2016-06-14 12:00:58 + (Tue, 14 Jun 2016)
Log Message:
---
Fix slider initializing with handles off the edge of the track.

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/slider.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/slider.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/slider.t  
2016-05-18 22:27:02 UTC (rev 4857)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/slider.t  
2016-06-14 12:00:58 UTC (rev 4858)
@@ -50,6 +50,7 @@
 step   ++= static.stepWrite;
 value  ++= static.valueRead;
 value  ++= static.valueWrite;
+th_handle  ++= static.handleWrite;
 th_track   ++= static.trackWrite;
 
 
@@ -87,6 +88,12 @@
 }
 
 /** mak sure the handle is kept at the write track position */
+static.handleWrite = function(v) {
+cascade = v;
+trapee.th_handle.width ++= trapee.syncHandle;
+}
+
+/** mak sure the handle is kept at the write track position */
 static.trackWrite = function(v) {
 cascade = v;
 trapee.th_track.width ++= trapee.syncHandle;

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4843] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic/tabpane.t

2016-02-10 Thread clrg
Revision: 4843
  http://sourceforge.net/p/vexi/code/4843
Author:   clrg
Date: 2016-02-10 14:55:23 + (Wed, 10 Feb 2016)
Log Message:
---
Fix bevel property forwarding for tabpane.

Modified Paths:
--

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tabpane.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tabpane.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tabpane.t  
2016-01-25 23:16:57 UTC (rev 4842)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tabpane.t  
2016-02-10 14:55:23 UTC (rev 4843)
@@ -12,7 +12,7 @@
 
 
 
-
+
 
 
 
@@ -42,7 +42,7 @@
 thisbox.th_tablist = $tablist;
 thisbox.v_fillbox = $content;
 
-const toBevel = function(v) { $content[trapname] = v; }
+const toBevel = function(v) { $bevel[trapname] = v; }
 
 thisbox.shadecolor ++= toBevel;
 thisbox.shinecolor ++= toBevel;

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4842] branches/vexi3_integrated_layout/org.vexi-vexi. widgets

2016-01-25 Thread clrg
Revision: 4842
  http://sourceforge.net/p/vexi/code/4842
Author:   clrg
Date: 2016-01-25 23:16:57 + (Mon, 25 Jan 2016)
Log Message:
---
Porting WIP

Modified Paths:
--

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Button.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/CheckBox.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/RadioButton.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Slider.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/Container.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/Draggable.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/FocusManager.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/Focusable.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/Polarized.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/PopupManager.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/Popupable.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/Repeater.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/SelectContainer.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/Selectable.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/Subsurface.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/Surface.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/Settings.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/Tooltip.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/body.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/foot.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/head.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/FocusBorder.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/progressbar.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/vexi/gui/Button.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/vexi/gui/CheckBox.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/vexi/util/common.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/vexi/util/sync.t

Added Paths:
---

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Item.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Link.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/List.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Menu.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/MenuItem.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/NumberField.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Option.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/ShadePane.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/ShadowText.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Spinner.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Submenu.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Tab.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Tabpane.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/ToggleButton.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Toolbar.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Toolitem.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Tree.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/Aspect.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/Cardpane.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/Flow.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/Grid.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/Ratio.t

[Vexi-svn] SF.net SVN: vexi:[4840] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic

2016-01-07 Thread clrg
Revision: 4840
  http://sourceforge.net/p/vexi/code/4840
Author:   clrg
Date: 2016-01-07 15:18:23 + (Thu, 07 Jan 2016)
Log Message:
---
Improve tabpane layouts
- boxes flush with the left/top edges will fill to the visible bevel
- previously there would be a 1 pixel gap

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tab.t

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tabpane.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tab.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tab.t  
2016-01-04 12:55:02 UTC (rev 4839)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tab.t  
2016-01-07 15:18:23 UTC (rev 4840)
@@ -23,7 +23,7 @@
 
 
 
-
+
 
 
 

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tabpane.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tabpane.t  
2016-01-04 12:55:02 UTC (rev 4839)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tabpane.t  
2016-01-07 15:18:23 UTC (rev 4840)
@@ -3,32 +3,36 @@
 
 
 
-
-
-
-
+
+
+
+
+
+
+
 
-
+
 
-
-
-
+
+
+
 
-
+
 
-
-
-
+
+
+
 
-
+
 
 
-
-
+
+
 
 thisbox.th_add = $add;
 thisbox.th_head = $head;
@@ -47,7 +51,7 @@
 cascade = v;
 var hide = hidetabs and 1 >= v_content.numchildren;
 $wrap.display = !hide;
-$content.y = hide ? 0 : $head.height - 2;
+$body.y = hide ? 0 : $head.height - 2;
 }
 
 thisbox.hidetabs ++= hideTabsTrap;
@@ -56,9 +60,9 @@
 /** support variable tab height */
 $head.height ++= function(v) {
 $wrap.height = v;
-$content.y = v-2;
+$body.y = v-2;
 cascade = v;
 }
 
-
+
 

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4835] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic/link.t

2015-12-09 Thread clrg
Revision: 4835
  http://sourceforge.net/p/vexi/code/4835
Author:   clrg
Date: 2015-12-09 15:57:13 + (Wed, 09 Dec 2015)
Log Message:
---
Add 'styles' to links
- a prototype for how things should be done
- probably can be generalised in some cases

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/link.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/link.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/link.t 
2015-12-04 10:33:41 UTC (rev 4834)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/link.t 
2015-12-09 15:57:13 UTC (rev 4835)
@@ -1,16 +1,11 @@
 
 
 
-
-Charles Goodwin
-Link
-
+  xmlns:lang="vexi://lang"
+  xmlns="vexi.layout"
+  xmlns:role="org.vexi.lib.role" 
+  xmlns:theme="vexi.theme" 
+  xmlns:rdt="vexi.util.redirect">
 
 
 
@@ -34,7 +29,13 @@

 
 
+$text.textcolor ++= function(v) {
+cascade = v;
+$hintline.fill = v;
+$underline.fill = v;
+}
 
+thisbox.style = static.default_style;
 thisbox.th_focus = $focus;
 thisbox.v_linkbox = $link;
 thisbox.v_textbox = $text;
@@ -107,23 +108,41 @@
 return;
 }
 
+static.default_style = {
+textcolor : {
+normal : "black",
+disabled : "#66",
+hover : "blue",
+active : "red"
+},
+//fill : {
+//normal : null,
+//disabled : null,
+//hover : null,
+//active : null
+//}
+}
+
 static.activeWrite = function(v) {
-trapee.v_linkbox[0].textcolor = "red";
+const s = trapee.style.textcolor;
+trapee.v_linkbox[0].textcolor = s.active;
 trapee.v_linkbox[2].display = true;
-trapee.v_linkbox[2].fill = "red";
+trapee.v_linkbox[2].fill = s.active;
 return;
 }
 
 static.hoverWrite = function(v) {
-trapee.v_linkbox[0].textcolor = "blue";
+const s = trapee.style.textcolor;
+trapee.v_linkbox[0].textcolor = s.hover;
 trapee.v_linkbox[2].display = true;
-trapee.v_linkbox[2].fill = "blue";
+trapee.v_linkbox[2].fill = s.hover;
 return;
 }
 
 static.normalWrite = function(v) {
-trapee.v_linkbox[0].textcolor = trapee.enabled ? "black" : "#66";
-trapee.v_linkbox[1].fill = trapee.enabled ? "black" : null;
+const s = trapee.style.textcolor;
+trapee.v_linkbox[0].textcolor = trapee.enabled ? s.normal : 
s.tdisabled;
+trapee.v_linkbox[1].fill = trapee.enabled ? s.normal : null;
 trapee.v_linkbox[2].display = false;
 return;
 }

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4834] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic/tab.t

2015-12-04 Thread clrg
Revision: 4834
  http://sourceforge.net/p/vexi/code/4834
Author:   clrg
Date: 2015-12-04 10:33:41 + (Fri, 04 Dec 2015)
Log Message:
---
Tabs with dark fills have white text / close icon

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tab.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tab.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tab.t  
2015-11-30 22:58:47 UTC (rev 4833)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tab.t  
2015-12-04 10:33:41 UTC (rev 4834)
@@ -1,6 +1,7 @@
 
 
 
@@ -16,7 +17,7 @@
 
 
 
-
+
 
 
 
@@ -29,10 +30,15 @@
 
 
 
+const getReadableColor = util.color..getReadableColor;
+
 $bevel.fill ++= function(v) {
 var f = v?:.settings..tabfill;
 cascade = f;
 $overfill.fill = f;
+var tc = getReadableColor(f);
+textcolor = tc;
+$closeimg.fill = .image["close"+((tc == "white" or tc == 
"#ff")?"_white":"")];
 }
 
 $bevel.fill = null;

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Go from Idea to Many App Stores Faster with Intel(R) XDK
Give your users amazing mobile app experiences with Intel(R) XDK.
Use one codebase in this all-in-one HTML5 development environment.
Design, debug & build mobile apps & 2D/3D high-impact games for multiple OSs.
http://pubads.g.doubleclick.net/gampad/clk?id=254741911&iu=/4140
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4832] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/lib/widget/tabpane.t

2015-11-19 Thread clrg
Revision: 4832
  http://sourceforge.net/p/vexi/code/4832
Author:   clrg
Date: 2015-11-19 11:47:50 + (Thu, 19 Nov 2015)
Log Message:
---
Fix tab overflow dropdown with custom tabs; use v_tab.text instead of tabtext 
(KISS).

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/tabpane.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/tabpane.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/tabpane.t 
2015-11-19 02:53:32 UTC (rev 4831)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/tabpane.t 
2015-11-19 11:47:50 UTC (rev 4832)
@@ -64,14 +64,14 @@
 // hide the rest
 while (c!=null) {
 c.v_tab.display = false;
-c.v_tabitem.text = c.tabtext;
+c.v_tabitem.text = c.v_tab.text?:"Unnamed Tab";
 c = taborder.after(c);
 }
 th_tablist.display = true;
 return;
 }
 c.v_tab.display = true;
-c.v_tabitem.text = "* "+c.tabtext;
+c.v_tabitem.text = "* "+(c.v_tab.text?:"Unnamed Tab");
 cw += c.v_tab.width;
 }
 th_tablist.display = false;
@@ -190,8 +190,7 @@
 // tab overflow policy
 if (!c.v_tabitem) {
 var i = new wi.item();
-if(c.tabtext!=null)
-i.text = c.tabtext;
+// text gets set later
 i.value = c;
 c.v_tabitem = i;
 th_tablist.add(i);

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4831] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic

2015-11-18 Thread clrg
Revision: 4831
  http://sourceforge.net/p/vexi/code/4831
Author:   clrg
Date: 2015-11-19 02:53:32 + (Thu, 19 Nov 2015)
Log Message:
---
Fix. Fill the bevel since it now handles fill differently depending upon bevel 
depth.

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/combo.t

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/option.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/combo.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/combo.t
2015-11-16 17:14:30 UTC (rev 4830)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/combo.t
2015-11-19 02:53:32 UTC (rev 4831)
@@ -68,7 +68,7 @@
 thisbox.surfaceHeight ++= opt.surfaceHeightRead;
 
 thisbox.v_container ++= function(v) {
-v_fillbox = $focus;
+v_fillbox = $bevel;
 v_textbox = $edit.v_edit;
 thisbox.textalign ++= function(v) {
 cascade = v;

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/option.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/option.t   
2015-11-16 17:14:30 UTC (rev 4830)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/option.t   
2015-11-19 02:53:32 UTC (rev 4831)
@@ -7,7 +7,7 @@
 
 
 
-
+
 
  
 
@@ -52,7 +52,7 @@
 
 thisbox.v_container ++= function(v) {
 cascade = v;
-v_fillbox = $focus;
+v_fillbox = $bevel;
 v_textbox = $output;
 thisbox.textalign ++= function(v) {
 cascade = v;

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4830] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/lib/widget/scrollpane.t

2015-11-16 Thread clrg
Revision: 4830
  http://sourceforge.net/p/vexi/code/4830
Author:   clrg
Date: 2015-11-16 17:14:30 + (Mon, 16 Nov 2015)
Log Message:
---
When changing scrollvertical/scrollhorizontal from false->true, need to remove 
the size contraints that had been imposed

Modified Paths:
--

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/scrollpane.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/scrollpane.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/scrollpane.t  
2015-11-13 04:37:29 UTC (rev 4829)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/scrollpane.t  
2015-11-16 17:14:30 UTC (rev 4830)
@@ -69,6 +69,8 @@
 }
 } else {
 th_viewport[0].contentwidth --= constrainPaneH;
+th_viewport.maxwidth = vexi.ui.maxdim;
+th_viewport.minwidth = 0;
 }
 cascade = s;
 }
@@ -107,6 +109,8 @@
 }
 } else {
 th_viewport[0].contentheight --= constrainPaneV;
+th_viewport.maxheight = vexi.ui.maxdim;
+th_viewport.minheight = 0;
 }
 cascade = s;
 }

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Presto, an open source distributed SQL query engine for big data, initially
developed by Facebook, enables you to easily query your data on Hadoop in a 
more interactive manner. Teradata is also now providing full enterprise
support for Presto. Download a free open source copy now.
http://pubads.g.doubleclick.net/gampad/clk?id=250295911&iu=/4140
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4816] branches/vexi3_integrated_layout/org.vexi-library. js/src/main/jpp/org/ibex/js/JS.jpp

2015-10-06 Thread clrg
Revision: 4816
  http://sourceforge.net/p/vexi/code/4816
Author:   clrg
Date: 2015-10-06 21:51:22 + (Tue, 06 Oct 2015)
Log Message:
---
Trivial. Error message should reference type for classes inheriting Immutable.

Modified Paths:
--

branches/vexi3_integrated_layout/org.vexi-library.js/src/main/jpp/org/ibex/js/JS.jpp

Modified: 
branches/vexi3_integrated_layout/org.vexi-library.js/src/main/jpp/org/ibex/js/JS.jpp
===
--- 
branches/vexi3_integrated_layout/org.vexi-library.js/src/main/jpp/org/ibex/js/JS.jpp
2015-10-05 11:44:39 UTC (rev 4815)
+++ 
branches/vexi3_integrated_layout/org.vexi-library.js/src/main/jpp/org/ibex/js/JS.jpp
2015-10-06 21:51:22 UTC (rev 4816)
@@ -381,7 +381,7 @@
 public boolean isTruthy() { return true; }
 public boolean instanceOf(JS constructor) { return false; } 
 public void addConstructor(JS constructor) throws JSExn {
-throw new JSExn("Attempted to add constructor to immutable");
+throw new JSExn("Attempted to add constructor to "+type());
 }
 
 /** Returns ClassName$ where  is the hashcode in 
hex. 

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4815] branches/vexi3_integrated_layout/org.vexi-library. js/src/main/jpp/org/ibex/js

2015-10-05 Thread clrg
Revision: 4815
  http://sourceforge.net/p/vexi/code/4815
Author:   clrg
Date: 2015-10-05 11:44:39 + (Mon, 05 Oct 2015)
Log Message:
---
Trivial. Spelling correction.

Modified Paths:
--

branches/vexi3_integrated_layout/org.vexi-library.js/src/main/jpp/org/ibex/js/JS.jpp

branches/vexi3_integrated_layout/org.vexi-library.js/src/main/jpp/org/ibex/js/JSArray.jpp

branches/vexi3_integrated_layout/org.vexi-library.js/src/main/jpp/org/ibex/js/JSDate.jpp

branches/vexi3_integrated_layout/org.vexi-library.js/src/main/jpp/org/ibex/js/JSInstant.jpp

Modified: 
branches/vexi3_integrated_layout/org.vexi-library.js/src/main/jpp/org/ibex/js/JS.jpp
===
--- 
branches/vexi3_integrated_layout/org.vexi-library.js/src/main/jpp/org/ibex/js/JS.jpp
2015-09-12 20:20:45 UTC (rev 4814)
+++ 
branches/vexi3_integrated_layout/org.vexi-library.js/src/main/jpp/org/ibex/js/JS.jpp
2015-10-05 11:44:39 UTC (rev 4815)
@@ -381,7 +381,7 @@
 public boolean isTruthy() { return true; }
 public boolean instanceOf(JS constructor) { return false; } 
 public void addConstructor(JS constructor) throws JSExn {
-throw new JSExn("Attemted to add constructor to immutable");
+throw new JSExn("Attempted to add constructor to immutable");
 }
 
 /** Returns ClassName$ where  is the hashcode in 
hex. 

Modified: 
branches/vexi3_integrated_layout/org.vexi-library.js/src/main/jpp/org/ibex/js/JSArray.jpp
===
--- 
branches/vexi3_integrated_layout/org.vexi-library.js/src/main/jpp/org/ibex/js/JSArray.jpp
   2015-09-12 20:20:45 UTC (rev 4814)
+++ 
branches/vexi3_integrated_layout/org.vexi-library.js/src/main/jpp/org/ibex/js/JSArray.jpp
   2015-10-05 11:44:39 UTC (rev 4815)
@@ -197,7 +197,7 @@
 public int callType(){ return CALLTYPE_METHOD; }
 public String coerceToString() { return "array$" + 
Integer.toHexString(hashCode()); }
 public boolean instanceOf(JS constructor){ return 
constructor==Constructor; }
-public void addConstructor(JS constructor) throws JSExn {throw new 
JSExn("Attemted to add constructor to array"); }
+public void addConstructor(JS constructor) throws JSExn { throw new 
JSExn("Attempted to add constructor to array"); }
 public JS new_(JS[] args) throws JSExn { throw new JSExn(type() +" is not 
a constructor"); }
 public JS apply(JS target, JS[] args) throws JSExn { throw new 
JSExn("Cannot call a " + type()); }
 public JS callMethod(JS this_, JS method, JS[] args) throws JSExn {

Modified: 
branches/vexi3_integrated_layout/org.vexi-library.js/src/main/jpp/org/ibex/js/JSDate.jpp
===
--- 
branches/vexi3_integrated_layout/org.vexi-library.js/src/main/jpp/org/ibex/js/JSDate.jpp
2015-09-12 20:20:45 UTC (rev 4814)
+++ 
branches/vexi3_integrated_layout/org.vexi-library.js/src/main/jpp/org/ibex/js/JSDate.jpp
2015-10-05 11:44:39 UTC (rev 4815)
@@ -122,7 +122,7 @@
 
 };
 public boolean instanceOf(JS constructor) { return 
constructor==Constructor; }
-public void addConstructor(JS constructor) throws JSExn {throw new 
JSExn("Attemted to add constructor to date"); }
+public void addConstructor(JS constructor) throws JSExn {throw new 
JSExn("Attempted to add constructor to date"); }
 
 
 final public Date date;

Modified: 
branches/vexi3_integrated_layout/org.vexi-library.js/src/main/jpp/org/ibex/js/JSInstant.jpp
===
--- 
branches/vexi3_integrated_layout/org.vexi-library.js/src/main/jpp/org/ibex/js/JSInstant.jpp
 2015-09-12 20:20:45 UTC (rev 4814)
+++ 
branches/vexi3_integrated_layout/org.vexi-library.js/src/main/jpp/org/ibex/js/JSInstant.jpp
 2015-10-05 11:44:39 UTC (rev 4815)
@@ -103,7 +103,7 @@
 
 };
 public boolean instanceOf(JS constructor) { return 
constructor==Constructor; }
-public void addConstructor(JS constructor) throws JSExn {throw new 
JSExn("Attemted to add constructor to date"); }
+public void addConstructor(JS constructor) throws JSExn {throw new 
JSExn("Attempted to add constructor to date"); }
 
 
 final public Instant instant;

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4812] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/lib/layout/icon.t

2015-08-05 Thread clrg
Revision: 4812
  http://sourceforge.net/p/vexi/code/4812
Author:   clrg
Date: 2015-08-05 10:32:57 + (Wed, 05 Aug 2015)
Log Message:
---
Improve icon to accept a stream as well as a string

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/icon.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/icon.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/icon.t
2015-08-05 10:28:29 UTC (rev 4811)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/icon.t
2015-08-05 10:32:57 UTC (rev 4812)
@@ -38,7 +38,11 @@
 if (!trapee.size) {
 return;
 }
-trapee[0][0].fill = v ? static.getIcon("icon"+trapee.size, v) : null;  

+// determine whether icon is null, a stream, otherwise
+// assume it is a string reference to look up an icon
+var icon = v==null or typeof(v)=="stream" ? v
+ : static.getIcon("icon"+trapee.size, v);
+trapee[0][0].fill = icon;  
 }
 
 /** sets the size, in pixels, of this icon */
@@ -94,8 +98,9 @@
 static.getIcon = function(subdir, name){
 const key = subdir+"."+name;
 var r = icons[subdir][name];
-if(!r){
-
+if (r==null) {
+   // if the look up fails, then fill in with a
+   // blank icon and output a suitable warning
 var msg = "[WARNING] icon not found: "+subdir+"/"+name;
 vexi.log.warn(new vexi.js.Exception(msg)); 
   
 if(!listed[subdir]){

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4811] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic/menu.t

2015-08-05 Thread clrg
Revision: 4811
  http://sourceforge.net/p/vexi/code/4811
Author:   clrg
Date: 2015-08-05 10:28:29 + (Wed, 05 Aug 2015)
Log Message:
---
Fix translucent menu edges

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/menu.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/menu.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/menu.t 
2015-08-05 10:27:35 UTC (rev 4810)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/menu.t 
2015-08-05 10:28:29 UTC (rev 4811)
@@ -17,8 +17,8 @@
 
   

 
-
-
+
+
 
 
 thisbox.v_popbox = $popbox;

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4810] branches/vexi3/org.vexi-vapp.codetutor/src_main/org /vexi/codetutor

2015-08-05 Thread clrg
Revision: 4810
  http://sourceforge.net/p/vexi/code/4810
Author:   clrg
Date: 2015-08-05 10:27:35 + (Wed, 05 Aug 2015)
Log Message:
---
Refactor/improve

Modified Paths:
--

branches/vexi3/org.vexi-vapp.codetutor/src_main/org/vexi/codetutor/codeline.t

branches/vexi3/org.vexi-vapp.codetutor/src_main/org/vexi/codetutor/codeview.t

branches/vexi3/org.vexi-vapp.codetutor/src_main/org/vexi/codetutor/linenumber.t
branches/vexi3/org.vexi-vapp.codetutor/src_main/org/vexi/codetutor/main.t

Modified: 
branches/vexi3/org.vexi-vapp.codetutor/src_main/org/vexi/codetutor/codeline.t
===
--- 
branches/vexi3/org.vexi-vapp.codetutor/src_main/org/vexi/codetutor/codeline.t   
2015-08-05 10:26:10 UTC (rev 4809)
+++ 
branches/vexi3/org.vexi-vapp.codetutor/src_main/org/vexi/codetutor/codeline.t   
2015-08-05 10:27:35 UTC (rev 4810)
@@ -1,9 +1,5 @@
-
-
-Charles Goodwin
-
-
-
+
+
 font = .font["VeraMono.ttf"];
-
+
 
\ No newline at end of file

Modified: 
branches/vexi3/org.vexi-vapp.codetutor/src_main/org/vexi/codetutor/codeview.t
===
--- 
branches/vexi3/org.vexi-vapp.codetutor/src_main/org/vexi/codetutor/codeview.t   
2015-08-05 10:26:10 UTC (rev 4809)
+++ 
branches/vexi3/org.vexi-vapp.codetutor/src_main/org/vexi/codetutor/codeview.t   
2015-08-05 10:27:35 UTC (rev 4810)
@@ -1,11 +1,19 @@
-
-
-Charles Goodwin
-
+
 
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
 
 thisbox.tabtext = arguments[1];
 
@@ -19,18 +27,21 @@
 }
 
 { // constructor
-var s = getStream(arguments[0], vexi[""]);
-var samplestr = vexi.stream.utf8reader(s).all;
-var strbyline = samplestr.split('\n');
-var len = strbyline.length;
+const arg0 = arguments[0];
+const f = getStream(arg0, vexi[""]);
+const samplestr = vexi.stream.utf8reader(f).all;
+const strbyline = samplestr.split('\n');
+const len = strbyline.length;
 for (var i=0; len>i; i++) {
-var c = tutor.codeline(vexi.box);
-c.text = strbyline[i];
-$code[i] = c;
-var l = tutor.linenumber(vexi.box);
+const c = new tutor.codeline();
+const t = strbyline[i];
+c.text = t.length ? t : " ";
+$code.add(c);
+const l = new tutor.linenumber();
 l.text = i;
-$line[i] = l;
+$line.add(l);
 }
+location = arg0;
 }
 
 

Modified: 
branches/vexi3/org.vexi-vapp.codetutor/src_main/org/vexi/codetutor/linenumber.t
===
--- 
branches/vexi3/org.vexi-vapp.codetutor/src_main/org/vexi/codetutor/linenumber.t 
2015-08-05 10:26:10 UTC (rev 4809)
+++ 
branches/vexi3/org.vexi-vapp.codetutor/src_main/org/vexi/codetutor/linenumber.t 
2015-08-05 10:27:35 UTC (rev 4810)
@@ -1,9 +1,5 @@
-
-
-Charles Goodwin
-
-
-
+
+
 font = .font["VeraMono.ttf"];
-
+
 
\ No newline at end of file

Modified: 
branches/vexi3/org.vexi-vapp.codetutor/src_main/org/vexi/codetutor/main.t
===
--- branches/vexi3/org.vexi-vapp.codetutor/src_main/org/vexi/codetutor/main.t   
2015-08-05 10:26:10 UTC (rev 4809)
+++ branches/vexi3/org.vexi-vapp.codetutor/src_main/org/vexi/codetutor/main.t   
2015-08-05 10:27:35 UTC (rev 4810)
@@ -1,39 +1,36 @@
-
-
-Charles Goodwin
-
+
 
 
-
+
 
 
 
 thisbox.action ++= function(v) { surface.frame.Close = 
true; return; }
 
 
-
+
 
 
 
-
-
-
-
+
 
-
-
-
+
+
+
 
-
-
-
-
-
+
+
+
+
+
 
 
 
-
+
 
 
 
@@ -46,72 +43,82 @@
 }
 
 $run.action ++= function(v) {
-$msg.text = "Opening: &

[Vexi-svn] SF.net SVN: vexi:[4809] branches/vexi3/org.vexi-vapp.calc/src_main/org/vexi /calc/main.t

2015-08-05 Thread clrg
Revision: 4809
  http://sourceforge.net/p/vexi/code/4809
Author:   clrg
Date: 2015-08-05 10:26:10 + (Wed, 05 Aug 2015)
Log Message:
---
Fix

Modified Paths:
--
branches/vexi3/org.vexi-vapp.calc/src_main/org/vexi/calc/main.t

Modified: branches/vexi3/org.vexi-vapp.calc/src_main/org/vexi/calc/main.t
===
--- branches/vexi3/org.vexi-vapp.calc/src_main/org/vexi/calc/main.t 
2015-07-11 23:25:28 UTC (rev 4808)
+++ branches/vexi3/org.vexi-vapp.calc/src_main/org/vexi/calc/main.t 
2015-08-05 10:26:10 UTC (rev 4809)
@@ -1,6 +1,7 @@
-
+
 
 
 
@@ -106,10 +107,10 @@
 
 // Keyboard Handling
 
-surface._KeyPressed ++= function(v) {
+surface.event._KeyPressed ++= function(v) {
 if (surface.keymap[v]) surface.keymap[v].action = true;
 cascade = v;
 }
 
 
-
\ No newline at end of file
+

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4808] branches/vexi3/org.vexi-vapp.codetutor

2015-07-11 Thread clrg
Revision: 4808
  http://sourceforge.net/p/vexi/code/4808
Author:   clrg
Date: 2015-07-11 23:25:28 + (Sat, 11 Jul 2015)
Log Message:
---
Move tutorials to standard directory i.e. don't over-complicate project 
structure.

Modified Paths:
--
branches/vexi3/org.vexi-vapp.codetutor/.vexipath
branches/vexi3/org.vexi-vapp.codetutor/src_main/tutorials/counter/sample1.t

Added Paths:
---
branches/vexi3/org.vexi-vapp.codetutor/src_main/tutorials/
branches/vexi3/org.vexi-vapp.codetutor/src_main/tutorials/counter/

Removed Paths:
-
branches/vexi3/org.vexi-vapp.codetutor/src_tutor/

Modified: branches/vexi3/org.vexi-vapp.codetutor/.vexipath
===
--- branches/vexi3/org.vexi-vapp.codetutor/.vexipath2015-07-11 22:19:23 UTC 
(rev 4807)
+++ branches/vexi3/org.vexi-vapp.codetutor/.vexipath2015-07-11 23:25:28 UTC 
(rev 4808)
@@ -1,11 +1,12 @@
 
-   
+   

   
  
  
   
   
+ 
  
  
   

Modified: 
branches/vexi3/org.vexi-vapp.codetutor/src_main/tutorials/counter/sample1.t
===
--- 
branches/vexi3/org.vexi-vapp.codetutor/src_tutor/tutorials/counter/sample1.t
2015-07-11 00:16:52 UTC (rev 4806)
+++ branches/vexi3/org.vexi-vapp.codetutor/src_main/tutorials/counter/sample1.t 
2015-07-11 23:25:28 UTC (rev 4808)
@@ -19,10 +19,12 @@
 
 vexi.ui.frame = thisbox;
 
-thisbox.value ++= function(v) { $output.text = v; cascade - v; }
+thisbox.value ++= function(v) { $output.text = v; cascade = v; }
 $dec.action ++= function(v) { value--; }
 $inc.action ++= function(v) { value++; }
 $clear.action ++= function(v) { value = 0; }
+
 value = 0; // initialise counter
+
 
 

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Don't Limit Your Business. Reach for the Cloud.
GigeNET's Cloud Solutions provide you with the tools and support that
you need to offload your IT needs and focus on growing your business.
Configured For All Businesses. Start Your Cloud Today.
https://www.gigenetcloud.com/
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4807] branches/vexi3/org.vexi-vapp.codetutor/meta/module. xml

2015-07-11 Thread clrg
Revision: 4807
  http://sourceforge.net/p/vexi/code/4807
Author:   clrg
Date: 2015-07-11 22:19:23 + (Sat, 11 Jul 2015)
Log Message:
---
Add font dependency (tutorial uses monospace font).

Modified Paths:
--
branches/vexi3/org.vexi-vapp.codetutor/meta/module.xml

Modified: branches/vexi3/org.vexi-vapp.codetutor/meta/module.xml
===
--- branches/vexi3/org.vexi-vapp.codetutor/meta/module.xml  2015-07-11 
00:16:52 UTC (rev 4806)
+++ branches/vexi3/org.vexi-vapp.codetutor/meta/module.xml  2015-07-11 
22:19:23 UTC (rev 4807)
@@ -1,6 +1,7 @@
 
 

+




This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Don't Limit Your Business. Reach for the Cloud.
GigeNET's Cloud Solutions provide you with the tools and support that
you need to offload your IT needs and focus on growing your business.
Configured For All Businesses. Start Your Cloud Today.
https://www.gigenetcloud.com/
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4806] branches/vexi3/org.vexi-vapp.codetutor/src_tutor/ tutorials

2015-07-10 Thread clrg
Revision: 4806
  http://sourceforge.net/p/vexi/code/4806
Author:   clrg
Date: 2015-07-11 00:16:52 + (Sat, 11 Jul 2015)
Log Message:
---
Add simple counter tutorial

Added Paths:
---
branches/vexi3/org.vexi-vapp.codetutor/src_tutor/tutorials/counter/
branches/vexi3/org.vexi-vapp.codetutor/src_tutor/tutorials/counter/sample1.t

Added: 
branches/vexi3/org.vexi-vapp.codetutor/src_tutor/tutorials/counter/sample1.t
===
--- 
branches/vexi3/org.vexi-vapp.codetutor/src_tutor/tutorials/counter/sample1.t
(rev 0)
+++ 
branches/vexi3/org.vexi-vapp.codetutor/src_tutor/tutorials/counter/sample1.t
2015-07-11 00:16:52 UTC (rev 4806)
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+ // pad the 'Count'
+
+
+
+
+
+
+
+
+
+
+vexi.ui.frame = thisbox;
+
+thisbox.value ++= function(v) { $output.text = v; cascade - v; }
+$dec.action ++= function(v) { value--; }
+$inc.action ++= function(v) { value++; }
+$clear.action ++= function(v) { value = 0; }
+value = 0; // initialise counter
+
+

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Don't Limit Your Business. Reach for the Cloud.
GigeNET's Cloud Solutions provide you with the tools and support that
you need to offload your IT needs and focus on growing your business.
Configured For All Businesses. Start Your Cloud Today.
https://www.gigenetcloud.com/
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4798] branches/vexi3_integrated_layout/org.vexi-vexi. widgets

2015-05-23 Thread clrg
Revision: 4798
  http://sourceforge.net/p/vexi/code/4798
Author:   clrg
Date: 2015-05-23 14:00:47 + (Sat, 23 May 2015)
Log Message:
---
Port splitpane

Added Paths:
---

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Divider.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Splitpane.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/Divider.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/Splitpane.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/vexi/gui/Splitpane.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_poke/poke/gui/Slider.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_poke/poke/gui/Splitpane.t

Removed Paths:
-

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/divider.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/splitpane.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/divider.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/splitpane.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/vexi/widget/splitpane.t

Copied: 
branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Divider.t
 (from rev 4785, 
branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/divider.t)
===
--- 
branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Divider.t
  (rev 0)
+++ 
branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Divider.t
  2015-05-23 14:00:47 UTC (rev 4798)
@@ -0,0 +1,13 @@
+
+
+
+
+
+Charles Goodwin
+
+
+
+thisbox.active = false;
+
+

Copied: 
branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Splitpane.t
 (from rev 4785, 
branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/splitpane.t)
===
--- 
branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Splitpane.t
(rev 0)
+++ 
branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Splitpane.t
2015-05-23 14:00:47 UTC (rev 4798)
@@ -0,0 +1,210 @@
+
+
+
+
+
+Charles Goodwin
+
+
+
+
+thisbox.liveresize = true; // whether to update pane sizes instantly
+thisbox.markeroffset = 0;  // offset for centering marker
+thisbox.master;// gets the slack
+thisbox.th_marker; // marker used when liveresize is false
+thisbox.v_content; // conceptually contains children
+thisbox.v_holding; // where children are actually contained
+
+// horizontal splitpane:
+//  .---. .---.
+//  |   a   |d|   b   |
+//  '---' '---'
+var cur_d; // current divder
+var cur_a; // current child a
+var cur_b; // current child b
+var dim_a; // current width or height of a
+var dim_b; // current width or height of b
+var tmp_a; // temporary variable for a values
+var tmp_b; // temporary variable for b values
+
+var max = function(a, b) { return a>b ? a : b; }
+var min = function(a, b) { return b>a ? a : b; }
+
+/** integration with draggable */
+var dragUpdate = function(d) {
+var shift = d[pos];
+// constrain the shift to respect content and max sizes
+// of non-master children and the size of the splitpane
+/*if (cur_a!=master)*/
+shift =
+max(cur_a[0][contentdim] - dim_a,
+min(cur_a[0][maxdim] - dim_a, shift));
+/*if (cur_b!=master)*/
+shift =
+min(dim_b - cur_d[dim] - cur_b[0][contentdim],
+max(dim_b - cur_d[dim] - cur_b[0][maxdim], shift));
+
+if (liveresize) {
+// resize non-master children
+if (cur_a!=master)
+cur_a[dim] = dim_a + shift;
+if (cur_b!=master)
+cur_b[dim] = dim_b - shift;
+} else {
+// store sizes for later application
+tmp_a = dim_a + shift;
+tmp_b = dim_b - shift;
+th_marker[pos] = cur_a[pos] + tmp_a + markeroffset;
+}
+cascade = d;
+}
+
+/** drops moveEvent on Release */
+v

[Vexi-svn] SF.net SVN: vexi:[4797] branches/vexi3_integrated_layout/org.vexi-vexi. widgets

2015-05-23 Thread clrg
Revision: 4797
  http://sourceforge.net/p/vexi/code/4797
Author:   clrg
Date: 2015-05-23 12:33:23 + (Sat, 23 May 2015)
Log Message:
---
Port slider, separator

Added Paths:
---

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Separator.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Slider.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/Separator.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/Slider.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/vexi/gui/Separator.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/vexi/gui/Slider.t

Removed Paths:
-

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/separator.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/slider.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/separator.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/slider.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/vexi/widget/separator.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/vexi/widget/slider.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_poke/poke/widgets/slider.t

Copied: 
branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Separator.t
 (from rev 4785, 
branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/separator.t)
===
--- 
branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Separator.t
(rev 0)
+++ 
branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Separator.t
2015-05-23 12:33:23 UTC (rev 4797)
@@ -0,0 +1,9 @@
+
+
+
+
+Charles Goodwin
+
+
+
+

Copied: 
branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Slider.t
 (from rev 4785, 
branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/slider.t)
===
--- 
branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Slider.t
   (rev 0)
+++ 
branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Slider.t
   2015-05-23 12:33:23 UTC (rev 4797)
@@ -0,0 +1,108 @@
+
+
+
+
+
+Charles Goodwin
+
+
+
+
+
+
+
+// public variables
+thisbox.interval = 1;   // user defined interval between steps
+thisbox.minvalue = 0;   // the lower limit of the value range
+thisbox.maxvalue = 10;  // the upper limit of the value range
+thisbox.step = 0;   // the current step (integer)
+thisbox.value= 0;   // the current value
+
+// theme box traps
+thisbox.th_handle = null;   // the slider handle
+thisbox.th_track = null;// the track in which the slider runs
+
+// private variables
+thisbox.numsteps = 10;  // the number of steps
+thisbox.traplock = false;   // lock for firing traps
+
+var surfaceToTrack;
+var syncStep = function() {
+if (surfaceToTrack==null) surfaceToTrack = 
surface.frame.distanceto(th_track);
+step = vexi.math.round(numsteps *
+(surface.frame.mouse[pos] -
+vexi.math.abs(surfaceToTrack[pos]) -
+th_handle[dim]/2) / (th_track[dim] - th_handle[dim]));
+}
+
+/** used to sync the handle position */
+thisbox.syncHandle = function(v) { cascade = v; step = step; }
+
+// draggable integration
+thisbox.moveEvent = function(v) { cascade = v; syncStep(); }
+thisbox.Press1 ++= thisbox.moveEvent;
+
+// assign static trap functions
+KeyPressed ++= static.keypressEvent;
+interval   ++= static.syncLimits;
+minvalue   ++= static.syncLimits;
+maxvalue   ++= static.syncLimits;
+step   ++= static.stepWrite;
+value  ++= static.valueRead;
+value  ++= static.valueWrite;
+th_track   ++= static.trackWrite;
+
+
+
+/** adjust step on keypress */
+static.keypressEvent = function(v) {
+if (v == "left" or v == "down") trapee.step -= 1;
+else if (v == "right" or v == "up") trapee.step += 1;
+cascade = v;
+}
+
+/** move handle based on new step value */
+static.stepWrite = function(v) {
+// make sure step has a valid v

[Vexi-svn] SF.net SVN: vexi:[4796] branches/vexi3_integrated_layout/org.vexi-vexi. widgets

2015-05-23 Thread clrg
Revision: 4796
  http://sourceforge.net/p/vexi/code/4796
Author:   clrg
Date: 2015-05-23 11:30:20 + (Sat, 23 May 2015)
Log Message:
---
Port scroll widgets

Added Paths:
---

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Scrollbar.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Scrollpane.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/Scrollbar.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/Scrollpane.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/Button.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/vexi/gui/Scrollbar.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/vexi/gui/Scrollpane.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_poke/poke/gui/Scroll.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_poke/poke/image/pacman_origin.jpg

Removed Paths:
-

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/scrollbar.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/scrollpane.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/button.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/scrollbar.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/scrollpane.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/vexi/widget/scrollbar.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/vexi/widget/scrollpane.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_poke/poke/widgets/pacman_origin.jpg

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_poke/poke/widgets/scroll.t

Copied: 
branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Scrollbar.t
 (from rev 4785, 
branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/scrollbar.t)
===
--- 
branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Scrollbar.t
(rev 0)
+++ 
branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Scrollbar.t
2015-05-23 11:30:20 UTC (rev 4796)
@@ -0,0 +1,378 @@
+
+
+
+
+
+Charles Goodwin
+
+* th_thumb should be a role.Draggable
+* viewport should have the structure:
+
+
+
+
+
+
+
+// public variables
+thisbox.lineheight = vexi.ui.font.height(font, fontsize, "dp");
+thisbox.mwheelshift = 4;
+thisbox.pageshift;
+thisbox.autohide;
+thisbox.enabled = true;
+thisbox.hide;
+thisbox.minthumbsize;
+thisbox.shift;
+thisbox.uiport;
+thisbox.viewport;
+
+// theme box variables
+thisbox.th_back;
+thisbox.th_next;
+thisbox.th_thumb;
+thisbox.th_track;
+
+// private variables
+var listeners = {};
+var percent;
+var percentset;
+var trackpos;
+
+// for efficient lookups
+var max = vexi.math.max;
+var min = vexi.math.min;
+var thumb, track;
+var vport, varea;
+
+
+// sync functions
+
+/** sync viewport with thumb position */
+const syncViewport = function() {
+if (vport and varea)
+varea[pos] = percent * (vport[dim] - varea[dim]);
+}
+
+/** sync specific listener with viewport position */
+const syncListener = function(v) {
+if (v and v[0]) v[0][pos] = percent * (v[dim] - v[0][dim]);
+}
+
+/** syncs all listeners with viewport position */
+const syncAllListeners = function(v) {
+   // BROKEN - disabling this, it prevents button from working 
(until thumb has been moved)
+   // Once motion is set it doesn't seem to get unset in normal 
use, so it seems like
+   // a useless check.
+//if (motion) {
+for (var key in listeners) {
+if (v == key) continue;
+syncListener(key);
+}
+//}
+}
+
+/** sync thumb with viewport size and position */
+const syncThumb = function() {
+// don't do much if we're hidden
+if (hide) display = false;
+// conditions where thumb placement is not [yet] desirable
+else if (!surface || vport == null || v

[Vexi-svn] SF.net SVN: vexi:[4795] branches/vexi3_integrated_layout/org.vexi-core.main /src/main/jpp/org/vexi/core/Box.jpp

2015-05-12 Thread clrg
Revision: 4795
  http://sourceforge.net/p/vexi/code/4795
Author:   clrg
Date: 2015-05-12 21:58:49 + (Tue, 12 May 2015)
Log Message:
---
Fix spacing issues

Modified Paths:
--

branches/vexi3_integrated_layout/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp

Modified: 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp
===
--- 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp
  2015-05-10 08:12:50 UTC (rev 4794)
+++ 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp
  2015-05-12 21:58:49 UTC (rev 4795)
@@ -722,7 +722,9 @@
 new_contentwidth += c.nominalWidth() + spacing;
 prior_margin = c.margin.right;
 }
-new_contentwidth += max(prior_margin, padding.right);
+int final_spacing = max(prior_margin, padding.right);
+new_contentwidth += final_spacing;
+box_spacing += final_spacing;
 } else {
 // maximum child contentwidth
 for (Box c = getChild(i=0); c != null; c = getChild(++i)) {
@@ -946,7 +948,7 @@
 
 // if there is 'slack' (child boxes do not consume 
parent width) then
 // align determines whether we pack boxes to left, 
centre, or right
-int offset_x = alignLeft() ? 0 : 
(int)(((float)width-totalsize)/(float)(alignRight()?1:2));
+int offset_x = alignLeft() ? 0 : 
(int)(((float)packingspace-totalsize)/(float)(alignRight()?1:2));
 
 // we use total (a float) to keep tabs on final layout 
totals
 // so we do not get stray pixel sized gaps caused by 
rounding
@@ -1093,7 +1095,7 @@
 
 // if there is 'slack' (child boxes do not consume 
parent width) then
 // align determines whether we pack boxes to left, 
centre, or right
-int offset_y = alignTop() ? 0 : 
(int)(((float)height-totalsize)/(float)(alignBottom()?1:2));
+int offset_y = alignTop() ? 0 : 
(int)(((float)packingspace-totalsize)/(float)(alignBottom()?1:2));
 
 // we use total (a float) to keep tabs on final layout 
totals
 // so we do not get stray pixel sized gaps caused by 
rounding

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4793] branches/vexi3_integrated_layout

2015-05-09 Thread clrg
Revision: 4793
  http://sourceforge.net/p/vexi/code/4793
Author:   clrg
Date: 2015-05-09 09:40:24 + (Sat, 09 May 2015)
Log Message:
---
Widgets for integrated layout
- Button, CheckBox, RadioButton
- move to vexi.gui namespace

Modified Paths:
--
branches/vexi3_integrated_layout/org.vexi-vexi.demo/src_poke/testfeature.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/text/default.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/button.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_poke/poke/widgets/basic.t

Added Paths:
---

branches/vexi3_integrated_layout/org.vexi-vexi.demo/src_main/org/vexi/demo/feature/BasicWidgets.t

branches/vexi3_integrated_layout/org.vexi-vexi.icons/src_main/vexi/conf/Icon.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Button.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/CheckBox.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/Defaults.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/gui/RadioButton.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/Icon.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/Clickable.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/Container.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/ContextMenuAgent.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/Draggable.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/FocusManager.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/Focusable.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/Polarized.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/PopupManager.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/Popupable.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/Repeater.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/SelectContainer.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/SelectGrouper.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/SelectList.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/Selectable.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/Subsurface.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/Surface.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/TooltipAgent.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/TooltipManager.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/lib/theme/

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/Bevel.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/Button.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/CheckBox.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/RadioButton.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/Settings.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/Surface.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/Tooltip.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/FocusBorder.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/vexi/conf/Settings.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/vexi/conf/Theme.t
branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/vexi/gui/

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/vexi/gui/Bevel.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/vexi/gui/Button.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/vexi/gui/ButtonGroup.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/vexi/gui/CheckBox.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/vexi/gui/RadioButton.t

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_main/vexi/gui/Surface.t
branches/vexi3_integrated_layout

[Vexi-svn] SF.net SVN: vexi:[4792] branches/vexi3_integrated_layout/org.vexi-core.main /src/main/jpp/org/vexi/core/Box.jpp

2015-05-09 Thread clrg
Revision: 4792
  http://sourceforge.net/p/vexi/code/4792
Author:   clrg
Date: 2015-05-09 09:29:30 + (Sat, 09 May 2015)
Log Message:
---
Fixes for integrated layout

Modified Paths:
--

branches/vexi3_integrated_layout/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp

Modified: 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp
===
--- 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp
  2015-05-05 00:37:12 UTC (rev 4791)
+++ 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp
  2015-05-09 09:29:30 UTC (rev 4792)
@@ -187,8 +187,8 @@
 
 private final Box getRoot() { return parent == null ? this : 
parent.getRoot(); }
 
-private final int getXInParent() { return parent==null ? 0 : 
((parent.test(PACK) || parent.test(ALIGN_LEFT)) ? x : 
x+((parent.width-width)/(parent.test(ALIGN_RIGHT)?1:2))); }
-private final int getYInParent() { return parent==null ? 0 : 
((parent.test(PACK) || parent.test(ALIGN_TOP)) ? y : 
y+((parent.height-height)/(parent.test(ALIGN_BOTTOM)?1:2))); }
+private final int getXInParent() { return parent==null ? 0 : 
((parent.test(PACK) || parent.alignLeft()) ? x : 
x+((parent.width-width)/(parent.alignRight()?1:2))); }
+private final int getYInParent() { return parent==null ? 0 : 
((parent.test(PACK) || parent.alignTop()) ? y : 
y+((parent.height-height)/(parent.alignBottom()?1:2))); }
 private final int globalToLocalX(int x) { return parent==null ? x : 
parent.globalToLocalX(x - getXInParent()); }
 private final int globalToLocalY(int y) { return parent==null ? y : 
parent.globalToLocalY(y - getYInParent()); }
 private final int localToGlobalX(int x) { return parent==null ? x : 
parent.localToGlobalX(x + getXInParent()); }
@@ -203,6 +203,10 @@
 
 private final boolean inside(int x, int y) { return test(DISPLAY) && x >= 
0 && y >= 0 && x < width && y < height; }
 private final boolean hasText() { return text != EMPTY_STRING; }
+private final boolean alignTop() { return test(ALIGN_TOP); }
+private final boolean alignLeft() { return test(ALIGN_LEFT); }
+private final boolean alignRight() { return test(ALIGN_RIGHT); }
+private final boolean alignBottom() { return test(ALIGN_BOTTOM); }
 
 // TRAPFLAGS helper functions
 private final void trap_setclear(int mask, boolean set) { if (set) 
set(mask); else clear(mask); }
@@ -268,7 +272,7 @@
 private static final int REFLOW = CONSTRAIN | CONSTRAIN_DESCENDENT | PLACE 
| PLACE_DESCENDENT;
 
 private static final int PACK= 0x1000;
-private static final int CLIP= 0x2000;
+private static final int GAIN  = 0x2000;
 //private static final int HAS_WIDTH_SLACK = 0x4000;
 //private static final int HAS_HEIGHT_SLACK= 0x8000;
 
@@ -383,7 +387,7 @@
 
 private Box parent = null;
 private Box redirect = this;
-private int flags = DISPLAY | REFLOW | ORIENT | TILE_IMAGE | PACK | 
PLACE_CLEAN;
+private int flags = DISPLAY | REFLOW | ORIENT | TILE_IMAGE | PACK | GAIN | 
PLACE_CLEAN;
 private int trapflags = 0;
 private BasicTree bt = null;
 
@@ -730,7 +734,8 @@
 }
 //#end
 
-} else if (!test(CLIP)) {
+} else if (test(GAIN)) {
+   // layered layout
 for (Box c = getChild(i=0); c != null; c = getChild(++i)) {
 if (!c.test(DISPLAY)) {
 continue;
@@ -738,31 +743,15 @@
 new_contentwidth = constrainToWidth(new_contentwidth, c);
 new_contentheight = constrainToHeight(new_contentheight, c);
 }
+} else {
+   // place layout always has a content size of 0
 }
 
-//#repeat width/height WIDTH/HEIGHT
-if (test(CLIP))
-new_contentwidth = max(new_contentwidth, textwidth) + padding.left 
+ padding.right;
-/*  
-if (test(CLIP)) {
-if (new_contentwidth < maxwidth && new_contentwidth < minwidth) {
-set(HAS_WIDTH_SLACK);
-} else {
-clear(HAS_WIDTH_SLACK);
-}
-} else {
-if (new_contentwidth < maxwidth && (new_contentwidth < minwidth || 
new_contentwidth < textwidth ||
-(texture!=null && new_contentwidth < texture.getWidth( 
{
-set(HAS_WIDTH_SLACK);
-} else {
-clear(HAS_WIDTH_SLACK);
-}
-new_contentwidth = max(new_contentwidth, textwidth);
+//#repeat HSHRINK/VSHRINK width/height WIDTH/HEIGHT Width/Height 
left/top right/bottom
+if (test(GAIN)) {
+

[Vexi-svn] SF.net SVN: vexi:[4791] branches/vexi3_integrated_layout/org.vexi-core.main /src/test/java/test/core/box/layout/layout2.t

2015-05-04 Thread clrg
Revision: 4791
  http://sourceforge.net/p/vexi/code/4791
Author:   clrg
Date: 2015-05-05 00:37:12 + (Tue, 05 May 2015)
Log Message:
---
Remove debugging code

Modified Paths:
--

branches/vexi3_integrated_layout/org.vexi-core.main/src/test/java/test/core/box/layout/layout2.t

Modified: 
branches/vexi3_integrated_layout/org.vexi-core.main/src/test/java/test/core/box/layout/layout2.t
===
--- 
branches/vexi3_integrated_layout/org.vexi-core.main/src/test/java/test/core/box/layout/layout2.t
2015-05-05 00:28:27 UTC (rev 4790)
+++ 
branches/vexi3_integrated_layout/org.vexi-core.main/src/test/java/test/core/box/layout/layout2.t
2015-05-05 00:37:12 UTC (rev 4791)
@@ -13,12 +13,8 @@
 { // reported core layout failure
 var a = vexi.box;
 a.width = max-5;
-a.name = "foo";
 a[0] = vexi.box;
 a.discover();
-trace(max);
-trace(a.width);
-trace(a[0].width);
 assert(a[0].width==max-5);
 }
 

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4790] branches/vexi3_integrated_layout/org.vexi-core.main /src

2015-05-04 Thread clrg
Revision: 4790
  http://sourceforge.net/p/vexi/code/4790
Author:   clrg
Date: 2015-05-05 00:28:27 + (Tue, 05 May 2015)
Log Message:
---
Add testcase for margin/padding layout + fix for contentsize test

Modified Paths:
--

branches/vexi3_integrated_layout/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp

branches/vexi3_integrated_layout/org.vexi-core.main/src/test/java/test/core/box/layout/contentsize.t

branches/vexi3_integrated_layout/org.vexi-core.main/src/test/java/test/core/box/layout/layout2.t

Added Paths:
---

branches/vexi3_integrated_layout/org.vexi-core.main/src/test/java/test/core/box/layout/layout3.t

branches/vexi3_integrated_layout/org.vexi-core.main/src/test/java/test/core/box/layout/lib/

branches/vexi3_integrated_layout/org.vexi-core.main/src/test/java/test/core/box/layout/lib/layout3_structure.t

Modified: 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp
===
--- 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp
  2015-05-04 16:16:14 UTC (rev 4789)
+++ 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp
  2015-05-05 00:28:27 UTC (rev 4790)
@@ -650,8 +650,8 @@
 return;
 }
 constrain();
-int w = test(HSHRINK) ? nominalWidth() : min(maxwidth, 
max(contentwidth, width));
-int h = test(VSHRINK) ? nominalHeight() : min(maxheight, 
max(contentheight, height));
+int w = test(HSHRINK) ? nominalWidth() : maxwidth;
+int h = test(VSHRINK) ? nominalHeight() : maxheight;
 tryResize(w, h, true);
 place(test(PLACE_CLEAN));
 }

Modified: 
branches/vexi3_integrated_layout/org.vexi-core.main/src/test/java/test/core/box/layout/contentsize.t
===
--- 
branches/vexi3_integrated_layout/org.vexi-core.main/src/test/java/test/core/box/layout/contentsize.t
2015-05-04 16:16:14 UTC (rev 4789)
+++ 
branches/vexi3_integrated_layout/org.vexi-core.main/src/test/java/test/core/box/layout/contentsize.t
2015-05-05 00:28:27 UTC (rev 4790)
@@ -2,7 +2,9 @@
 
var testContentx = function(dim){
var c1 = vexi.box;
-   c1["min"+dim]=10;
+   var c2 = vexi.box;
+c2["min"+dim]=10;
+   c1[0] = c2;
c1.discover();
.util..assertEquals(10,c1["content"+dim]);

@@ -11,7 +13,7 @@
x = v;
cascade = v;
};
-   c1["min"+dim]=20;
+   c2["min"+dim]=20;
c1.discover();
.util..assertEquals(20,x);  
};

Modified: 
branches/vexi3_integrated_layout/org.vexi-core.main/src/test/java/test/core/box/layout/layout2.t
===
--- 
branches/vexi3_integrated_layout/org.vexi-core.main/src/test/java/test/core/box/layout/layout2.t
2015-05-04 16:16:14 UTC (rev 4789)
+++ 
branches/vexi3_integrated_layout/org.vexi-core.main/src/test/java/test/core/box/layout/layout2.t
2015-05-05 00:28:27 UTC (rev 4790)
@@ -13,8 +13,12 @@
 { // reported core layout failure
 var a = vexi.box;
 a.width = max-5;
+a.name = "foo";
 a[0] = vexi.box;
 a.discover();
+trace(max);
+trace(a.width);
+trace(a[0].width);
 assert(a[0].width==max-5);
 }
 

Added: 
branches/vexi3_integrated_layout/org.vexi-core.main/src/test/java/test/core/box/layout/layout3.t
===
--- 
branches/vexi3_integrated_layout/org.vexi-core.main/src/test/java/test/core/box/layout/layout3.t
(rev 0)
+++ 
branches/vexi3_integrated_layout/org.vexi-core.main/src/test/java/test/core/box/layout/layout3.t
2015-05-05 00:28:27 UTC (rev 4790)
@@ -0,0 +1,12 @@
+
+
+var p = new .lib.layout3_structure();
+p.shrink = true;
+p.discover();
+trace(p.contentwidth);
+trace(p.contentheight);
+lib..assertSize(420,280,p);
+
+// see layout3_structure
+
+

Added: 
branches/vexi3_integrated_layout/org.vexi-core.main/src/test/java/test/core/box/layout/lib/layout3_structure.t
===
--- 
branches/vexi3_integrated_layout/org.vexi-core.main/src/test/java/test/core/box/layout/lib/layout3_structure.t
  (rev 0)
+++ 
branches/vexi3_integrated_layout/org.vexi-core.main/src/test/java/test/core/box/layout/lib/layout3_struct

[Vexi-svn] SF.net SVN: vexi:[4789] branches/vexi3_integrated_layout

2015-05-04 Thread clrg
Revision: 4789
  http://sourceforge.net/p/vexi/code/4789
Author:   clrg
Date: 2015-05-04 16:16:14 + (Mon, 04 May 2015)
Log Message:
---
Core margin+padding implementation

Modified Paths:
--

branches/vexi3_integrated_layout/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp

Added Paths:
---

branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/core/Insets.java

branches/vexi3_integrated_layout/org.vexi-vexi.widgets/src_poke/poke/layout/core.t

Added: 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/core/Insets.java
===
--- 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/core/Insets.java
 (rev 0)
+++ 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/core/Insets.java
 2015-05-04 16:16:14 UTC (rev 4789)
@@ -0,0 +1,110 @@
+// Copyright (c) 2015 the Contributors, as shown in the revision logs.
+// Licensed under the GNU General Public License version 2 ("the License").
+// You may not use this file except in compliance with the License.
+
+package org.vexi.core;
+
+import org.ibex.js.JS;
+import org.ibex.js.JSExn;
+import org.ibex.js.JSU;
+import org.ibex.js.Constants;
+
+/**
+ *  Encapsulates margin/padding state and JS interaction
+ *  
+ *  TODO: support different metrics i.e. %/pt/em
+ */
+class Insets {
+   // default empty/0 insets
+   final protected static Insets ZERO = new Insets();
+   
+   final int top, right, bottom, left;
+   
+   Insets() {
+   top = 0; right = 0; bottom = 0; left = 0;
+   }
+   Insets(int i) {
+   top = i; right = i; bottom = i; left = i;
+   }
+   Insets(int t, int r, int b, int l) {
+   top = t; right = r; bottom = b; left = l;
+   }
+   
+   final JS toJS() {
+   if (this==ZERO) return Constants.NC_0;
+   if ((top==right)&&(top==bottom)&&(top==left))
+   return JSU.N(top);
+   if (top==bottom && left==right)
+   return JSU.S(top+" "+left);
+   return JSU.S(top+" "+right+" "+bottom+" "+left);
+   }
+   final JS topToJS() { return JSU.N(top); }
+   final JS leftToJS() { return JSU.N(left); }
+   final JS rightToJS() { return JSU.N(right); }
+   final JS bottomToJS() { return JSU.N(bottom); }
+   
+   /** creates an Insets instance by parsing the given JS */
+   final static Insets fromJS(JS inset) throws JSExn {
+   try {
+   if (inset == null)
+   return ZERO;
+   
+   if (JSU.isString(inset)) {
+   String[] put = inset.toString().split(" ");
+   if (put.length==1) {
+   int i = Integer.parseInt(put[0]);
+   return new Insets(i);
+   } else if (put.length==2) {
+   int v = Integer.parseInt(put[0]);
+   int h = Integer.parseInt(put[1]);
+   return new Insets(v, h, v, h);
+   } else if (put.length==4) {
+   int t = Integer.parseInt(put[0]);
+   int r = Integer.parseInt(put[1]);
+   int b = Integer.parseInt(put[2]);
+   int l = Integer.parseInt(put[3]);
+   return new Insets(t, r, b, l);
+   } else {
+   throw new Exception();
+   }
+   }
+   
+   // Integer
+   int i = JSU.toInt(inset);
+   if (i == 0) return ZERO;
+   return new Insets(i);
+   
+   } catch(Exception e) {
+   throw new JSExn("Invalid insets value '"+inset+"'");
+   }
+   }
+   
+   final private int insetFromJS(JS inset) throws JSExn {
+   try {
+   return (inset == null) ? 0
+   : (JSU.isInt(inset) ? JSU.toInt(inset) 
: Integer.parseInt(JSU.toString(inset)));
+   } catch(Exception e) {
+   throw new JSExn("Invalid inset value '"+inset+"'");
+   }
+   }
+   
+   /** creates an Insets instance by parsing the given JS for

[Vexi-svn] SF.net SVN: vexi:[4788] branches/vexi3_integrated_layout/org.vexi-core.main /src/main

2015-05-02 Thread clrg
Revision: 4788
  http://sourceforge.net/p/vexi/code/4788
Author:   clrg
Date: 2015-05-02 16:30:06 + (Sat, 02 May 2015)
Log Message:
---
Minor refactor
- more readable non-static functions
- order of functions in Box
- improve encapsulation (reduce direct Box property access)

Modified Paths:
--

branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/core/Canvas.java

branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/core/Surface.java

branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/plat/AWT.java

branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/plat/AWTBase.java

branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/plat/Swing.java

branches/vexi3_integrated_layout/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp

Modified: 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/core/Canvas.java
===
--- 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/core/Canvas.java
 2015-05-02 12:35:32 UTC (rev 4787)
+++ 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/core/Canvas.java
 2015-05-02 16:30:06 UTC (rev 4788)
@@ -42,8 +42,8 @@
set(TILE_IMAGE);
}
public Object getImage() { return getBuffer(); }
-   public int getWidth() { return scale(width); }
-   public int getHeight() { return scale(height); }
+   public int getWidth() { return scale(width()); }
+   public int getHeight() { return scale(height()); }
 
private int scale(int coord){
return (int)(dotsPerPixel*coord);
@@ -123,13 +123,13 @@
}

private BufferedImage getBuffer(){
-   if(width==0 || height==0){
+   if(width()==0 || height()==0){
buffer = null;
}else if(buffer==null){
-   buffer = new BufferedImage(width, height, 
BufferedImage.TYPE_INT_ARGB);
+   buffer = new BufferedImage(width(), height(), 
BufferedImage.TYPE_INT_ARGB);
}else{
-   final int heightPixels = (int)(height*dotsPerPixel);
-   final int widthPixels = (int)(width*dotsPerPixel);
+   final int heightPixels = (int)(height()*dotsPerPixel);
+   final int widthPixels = (int)(width()*dotsPerPixel);
if(buffer.getHeight()!=(heightPixels) || 
buffer.getWidth()!=(widthPixels)){
BufferedImage buffer1 = new 
BufferedImage(widthPixels, heightPixels, BufferedImage.TYPE_INT_ARGB);
Graphics2D g0 = 
(Graphics2D)buffer.getGraphics();

Modified: 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/core/Surface.java
===
--- 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/core/Surface.java
2015-05-02 12:35:32 UTC (rev 4787)
+++ 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/core/Surface.java
2015-05-02 16:30:06 UTC (rev 4788)
@@ -181,7 +181,7 @@
 static protected boolean isLockingKeyOn(int k) throws JSExn {
 for (int i=0; i root.width || newheight > root.height) {
+int newwidth = Math.max(r.x - leftInset + r.width, 
root.width());
+int newheight = Math.max(r.y - topInset + r.height, 
root.height());
+if (newwidth > root.width() || newheight > root.height()) {
 int w = window.getWidth() - leftInset - rightInset;
 int h = window.getHeight() - topInset - bottomInset;
 AWTSurface.this.componentResized(w, h);
@@ -275,7 +275,7 @@
 if (r==null) {
 if (blithack) {
 blithack = false;
-blit(backbuffer, 0, 0, 0, 0, root.width, root.height);
+blit(backbuffer, 0, 0, 0, 0, root.width(), root.height());
 }
 return null;
 }
@@ -384,7 +384,7 @@
 public void windowClosed(WindowEvent e) { }
 public void windowClosing(WindowEvent e) { Close(); }
 public void windowIconified(WindowEvent e) { Minimized(true); }
-public void windowDeiconified(WindowEvent e) { window.repaint(0, 0, 
root.width, root.height); Minimized(false); }
+public void windowDeiconified(WindowEvent e) { window.repaint(0, 0, 
root.width(), root.height()); Minimized(false); }
 public void windowActivated(WindowEvent e) { Focused(true); }
 public void windowDeactivated(WindowEvent e) { Focused(false); }
 public void componentMoved(ComponentEvent e) { 
PosChange(window.getLoc

[Vexi-svn] SF.net SVN: vexi:[4787] branches/vexi3_integrated_layout/org.vexi-core.main /src

2015-05-02 Thread clrg
Revision: 4787
  http://sourceforge.net/p/vexi/code/4787
Author:   clrg
Date: 2015-05-02 12:35:32 + (Sat, 02 May 2015)
Log Message:
---
Redirect common properties to redirect
- could be internally more efficient (avoid put/get switch)
- can still override with traps
- also some minor comment improvements

Modified Paths:
--

branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/core/Constants.java

branches/vexi3_integrated_layout/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp

branches/vexi3_integrated_layout/org.vexi-core.main/src/test/java/test/core/box/TestBox.java

branches/vexi3_integrated_layout/org.vexi-core.main/src/test/java/test/core/box/redirect.t

Modified: 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/core/Constants.java
===
--- 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/core/Constants.java
  2015-04-30 22:43:10 UTC (rev 4786)
+++ 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/core/Constants.java
  2015-05-02 12:35:32 UTC (rev 4787)
@@ -6,6 +6,7 @@
 public interface Constants extends org.ibex.js.Constants {
static final JS SC_0 = JSU.S("0",true);
static final JS SC_add = JSU.S("add",true);
+   static final JS SC_align = JSU.S("align",true);
static final JS SC_align_topleft = JSU.S("topleft",true);
 static final JS SC_align_top = JSU.S("top",true);
 static final JS SC_align_topright = JSU.S("topright",true);
@@ -39,12 +40,14 @@
static final JS SC_html = JSU.S("html",true);
 static final JS SC_indexof = JSU.S("indexof",true);
 static final JS SC_layer = JSU.S("layer",true);
+static final JS SC_layout = JSU.S("layout",true);
 static final JS SC_maxheight = JSU.S("maxheight",true);
static final JS SC_maxwidth = JSU.S("maxwidth",true);
static final JS SC_minheight = JSU.S("minheight",true);
static final JS SC_minwidth = JSU.S("minwidth",true);
static final JS SC_mouse = JSU.S("mouse",true);
static final JS SC_numchildren = JSU.S("numchildren",true);
+static final JS SC_orient = JSU.S("orient",true);
 static final JS SC_pack = JSU.S("pack",true);
 static final JS SC_place = JSU.S("place",true);
static final JS SC_redirect = JSU.S("redirect",true);
@@ -52,6 +55,8 @@
static final JS SC_stringify = JSU.S("stringify",true);
static final JS SC_subComponents = JSU.S("subComponents",true);
static final JS SC_surface = JSU.S("surface",true);
+static final JS SC_text = JSU.S("text",true);
+static final JS SC_textcolor = JSU.S("textcolor",true);
static final JS SC_thisobj = JSU.S("thisobj",true);
 static final JS SC_vertical = JSU.S("vertical",true);
static final JS SC_visible = JSU.S("visible",true);

Modified: 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp
===
--- 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp
  2015-04-30 22:43:10 UTC (rev 4786)
+++ 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp
  2015-05-02 12:35:32 UTC (rev 4787)
@@ -46,7 +46,7 @@
  * property on the box.
  * 
  * Packed Layout
- * In packed layout boxes are positioned next to eachother in the direction 
of the parents
+ * In packed layout boxes are positioned next to each other in the 
direction of the parent's
  * orient property. The parent is constrained to the combined size of the 
packed children in the
  * orient direction and to the maximum size of its children in the non-orient 
direction.
  * 
@@ -1722,6 +1722,7 @@
 
 /** the mouse object of a box */
 private class Mouse extends JS.Immutable implements JS.Cloneable {
+@SuppressWarnings("unused")
 public JS get(JS key) throws JSExn {
 //#switch (JSU.toString(key))
 /*@PAGE(varname=mouse,humanname=Mouse Object)
@@ -1767,6 +1768,7 @@
 private Box from;
 private Box to;
 DistanceTo(Box from, Box to) { this.from = from; this.to = to; }
+@SuppressWarnings("unused")
 public JS get(JS key) throws JSExn {
 //#switch (JSU.toString(key))
 /*@PAGE(varname=distanceto,humanname=DistanceTo Object)
@@ -1799,6 +1801,7 @@
 //#end
 return super.get(key);
 }
+@SuppressWarnings("unused")
 public void put(JS key, JS value) 

[Vexi-svn] SF.net SVN: vexi:[4786] branches/vexi3_integrated_layout/org.vexi-core.main /src/main

2015-04-30 Thread clrg
Revision: 4786
  http://sourceforge.net/p/vexi/code/4786
Author:   clrg
Date: 2015-04-30 22:43:10 + (Thu, 30 Apr 2015)
Log Message:
---
Remove BoxVisual, re-integrate properties back into Box

Modified Paths:
--

branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/core/Canvas.java

branches/vexi3_integrated_layout/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp

branches/vexi3_integrated_layout/org.vexi-core.main/src/main/jpp/org/vexi/core/Vexi.jpp

Removed Paths:
-

branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/core/BoxVisual.java

Deleted: 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/core/BoxVisual.java
===
--- 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/core/BoxVisual.java
  2015-04-28 17:06:14 UTC (rev 4785)
+++ 
branches/vexi3_integrated_layout/org.vexi-core.main/src/main/java/org/vexi/core/BoxVisual.java
  2015-04-30 22:43:10 UTC (rev 4786)
@@ -1,441 +0,0 @@
-// Copyright 2000-2008 the Contributors, as shown in the revision logs.
-// Licensed under the GNU General Public License version 2 ("the License").
-// You may not use this file except in compliance with the License.
-
-package org.vexi.core;
-
-import org.ibex.js.Fountain;
-import org.ibex.js.JS;
-import org.ibex.js.JSExn;
-import org.ibex.js.JSString;
-import org.ibex.js.JSU;
-import org.vexi.graphics.Color;
-import org.vexi.graphics.Font;
-import org.vexi.graphics.Picture;
-import org.vexi.graphics.Texture;
-
-/**
- *  Amalgamates Box's visual properties for memory/runtime efficiency:
- *  - text properties font, fontsize, text, textcolor
- *  - fill properties texture, fillcolor
- **/
-final class BoxVisual implements Constants {
-
- INSTANCE PROPERTIES /
-
-private short flags = 0;
-int fontsize = 0;
-int fillcolor = DEFAULT_FILLCOLOR;
-int textcolor = DEFAULT_COLOR;
-short textwidth = 0;
-short textheight = 0;
-Font font = DEFAULT_FONT;
-JSString text = EMPTY_STRING;
-Texture texture = null;
-
-
- CONSTRUCTORS /
-
-/** construct default text */
-BoxVisual() { }
-
-/** construct new text object based on font from 'stream' of size 
'pointsize' */
-BoxVisual(JS stream) {
-set(FONTSTREAM_SET);
-setFont(stream, MEDIUM_SIZE);
-}
-
-/** construct new text object based on font from 'stream' of size 
'pointsize' */
-BoxVisual(int pointsize) {
-set(FONTSIZE_SET);
-setFont(DEFAULT_STREAM, pointsize);
-}
-
-
- STATIC CONTENT ///
-
-private static final short FILLCOLOR_SET  = 0x0001;
-private static final short FONTCOLOR_SET  = 0x0002;
-private static final short FONTSIZE_SET   = 0x0004;
-private static final short FONTSTREAM_SET = 0x0008;
-
-private static final short FONT_TRAP  = 0x0010;
-private static final short FONTSIZE_TRAP  = 0x0020;
-
-static int XXSMALL_OFFSET = -8;
-static int XSMALL_OFFSET = -4;
-static int SMALL_OFFSET = -2;
-static int MEDIUM_SIZE = 10;
-static int LARGE_OFFSET = 4;
-static int XLARGE_OFFSET = 8;
-static int XXLARGE_OFFSET = 14;
-
-static int DEFAULT_COLOR = 0xFF00;
-static int DEFAULT_FILLCOLOR = 0x;
-static Fountain DEFAULT_STREAM = Main.vera;
-static Font DEFAULT_FONT = Font.getFont(DEFAULT_STREAM, MEDIUM_SIZE);
-static BoxVisual DEFAULT = new BoxVisual();
-static JSString EMPTY_STRING = (JSString) JSU.S("", true);
-
-static int getDefaultFontSize() { return MEDIUM_SIZE; }
-static Fountain getDefaultStream() { return DEFAULT_STREAM; }
-static Font getDefaultFont() { return DEFAULT_FONT; }
-
-/** access for controlling default pointsize */
-static boolean setDefaultPointsize(int pointsize) {
-if (pointsize == MEDIUM_SIZE) {
-return false;
-}
-MEDIUM_SIZE = pointsize;
-DEFAULT_FONT = Font.getFont(DEFAULT_STREAM, MEDIUM_SIZE);
-return true;
-}
-
-/** access for controlling default stream */
-static boolean setDefaultStream(Fountain stream) {
-if (stream == DEFAULT_STREAM) {
-return false;
-}
-DEFAULT_STREAM = stream;
-DEFAULT_FONT = Font.getFont(DEFAULT_STREAM, MEDIUM_SIZE);
-return true;
-}
-
-/** return appropriate JS constant for size */
-static JS sizeToJS(int pointsize) {
-switch (pointsize) {
-case -3: return SC_xxsmall;
-case -2: return SC_xsmall;
-case -1: return SC_small;
-case 0: return SC_medium;
-case 1: return SC_large;
-case 2: retur

[Vexi-svn] SF.net SVN: vexi:[4784] branches

2015-04-27 Thread clrg
Revision: 4784
  http://sourceforge.net/p/vexi/code/4784
Author:   clrg
Date: 2015-04-27 23:55:00 + (Mon, 27 Apr 2015)
Log Message:
---


Added Paths:
---
branches/vexi3_integrated_layout/

Removed Paths:
-
vexi3_integrated_layout/

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4783] vexi3_integrated_layout/

2015-04-27 Thread clrg
Revision: 4783
  http://sourceforge.net/p/vexi/code/4783
Author:   clrg
Date: 2015-04-27 23:53:10 + (Mon, 27 Apr 2015)
Log Message:
---
Branch for bringing padding, margin, border into Box

Added Paths:
---
vexi3_integrated_layout/

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4776] branches/vexi3/org.vexi-vexi.widgets/src_main

2015-03-04 Thread clrg
Revision: 4776
  http://sourceforge.net/p/vexi/code/4776
Author:   clrg
Date: 2015-03-04 14:33:50 + (Wed, 04 Mar 2015)
Log Message:
---
Change flow logic to use Resize trap

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/flow.t
branches/vexi3/org.vexi-vexi.widgets/src_main/vexi/layout/flow.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/flow.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/flow.t
2015-03-03 01:36:32 UTC (rev 4775)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/flow.t
2015-03-04 14:33:50 UTC (rev 4776)
@@ -1,223 +1,114 @@
-
+
 
-
-
-Charles Goodwin
-A box that flows children against its orient
-
-* support right to left
-* optionally defer reflow
-* more thorough documentation
-
-
+
 
-
-
+
+
 
-thisbox.flow = true;
-thisbox.hardwrap = 0;
-
-thisbox.v_ALIGN_NEAR = true;
-thisbox.v_ALIGN_FAR = false;
-
-// assign static trap functions
-thisbox.Children  ++= static.ChildrenWrite;
-thisbox.align ++= static.alignWrite;
-thisbox.flow  ++= static.flowWrite;
-thisbox.orient++= static.invokeReflow;
-thisbox.hardwrap  ++= static.hardwrapWrite;
-thisbox.reflow++= static.invokeReflow;
-
-
+var _x;
+var _y;
+var _width;
+var _height;
 
-/** generic trap to invoke reflow */
-static.invokeReflow = function(v) {
-cascade = v;
-var t = trapee;
-static.reflowBlock(t, t.dim, t.pos, t.flip(t.pos));
-}
-
-/** synchronizes the block and it's contents with it's current size */
-static.reflowBlock = function(b) {
-// do not do anything with 0 sized flow parent
-if (b.flow and b[b.dim] == 0 and b.hardwrap == 0) {
-return;
-}
+var dirty;
+var entered = false;
 
-var dim = b.dim;
-var pos = b.pos;
-var f_dim = b.flip(dim);
-var f_pos = b.flip(pos);
-var contentdim = b.contentdim;
+const reflowTrap = function(v) {
+if (v != trapee[trapname]) {
+cascade = v;
+reflow();
+}
+};
 
-var cur_dim = 0;   // dimension bounds imposed by placing children
-var cur_pos = 0;   // current position to assign to children
-var cur_f_pos = 0; // current flip(position) to assign to children
-var cur_f_dim = 0; // current flip(dim) of line
-var eol = false;   // end of line indicator
-var sol = 0;   // index of child at start of line
-var offset;// used to store alignment offset
-var i = 0; // index reference
-var c, prevtype;
-
-// for efficiency, only fetch these once
-var numchildren = b.numchildren;
-var align_near = b.v_ALIGN_NEAR;
-var offset_div = b.v_ALIGN_FAR ? 1 : 2;
-var fontheight = b.fontheight;
-var wrap_dim = b.hardwrap ? b.hardwrap : b[dim];
-
-// single line behaviour
-if (!b.flow) {
-for (var j=0; numchildren>j; j++) {
-c = b[j];
-c[pos] = cur_pos;
-c[f_pos] = 0;
-cur_pos += c[contentdim];
-c[dim] = c[contentdim];
-if (c[f_contentdim] > cur_f_dim) {
-cur_f_dim = c[f_contentdim];
-}
+const max = vexi.math.max;
+const doReflow = function() {
+if (entered) {
+dirty = true;
+return;
 }
-if (!align_near) {
-offset = (wrap_dim-cur_pos) / offset_div;
-for (var j=0; numchildren>j; j++) {
-b[j][pos] += offset;
+entered = true;
+try {
+if (!visible) {
+return;
+} else {
+dirty = false;
 }
+
+var rankSize = 0;
+var offsetRank = 0;
+var offset = 0;
+for (var i, b in thisbox) {
+var offset0 = offset;
+var offsetRank1 = offsetRank; 
+var offset1 = offset+b[_width];
+if (offset1>thisbox[_width] and i!=0) {
+offsetRank1 += rankSize;
+offset0 = 0;
+offset1 = b[_width];
+rankSize = 0;
+}
+
+rankSize = m

[Vexi-svn] SF.net SVN: vexi:[4738] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic/datepicker.t

2014-10-02 Thread clrg
Revision: 4738
  http://sourceforge.net/p/vexi/code/4738
Author:   clrg
Date: 2014-10-03 00:33:51 + (Fri, 03 Oct 2014)
Log Message:
---
Visual fix. Today's date circle effect was being cut off if on the top/bottom 
rows.

Modified Paths:
--

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datepicker.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datepicker.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datepicker.t
   2014-10-03 00:31:15 UTC (rev 4737)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datepicker.t
   2014-10-03 00:33:51 UTC (rev 4738)
@@ -9,77 +9,77 @@
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
 
 /**
  * required because mouse press on the popbox would
@@ -108,7 +108,7 @@
 var today; // vexi.js.Date
 var circleToday = function() {
 var today_box = $dategrid[showweekday + today.day - 1];
-var d = $base.distanceto(today_box);
+var d = distanceto(today_box);
 $circle.x = d.x - 2;
 $circle.y = d.y - 8;
 $circle.display = true;

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4737] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic/datepicker.t

2014-10-02 Thread clrg
Revision: 4737
  http://sourceforge.net/p/vexi/code/4737
Author:   clrg
Date: 2014-10-03 00:31:15 + (Fri, 03 Oct 2014)
Log Message:
---
Fix datepicker showing 1 extra day

Modified Paths:
--

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datepicker.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datepicker.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datepicker.t
   2014-09-18 13:32:42 UTC (rev 4736)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datepicker.t
   2014-10-03 00:31:15 UTC (rev 4737)
@@ -126,7 +126,7 @@
 var i=0;
 for (var i=0; 42>i; i++) {
 var b = $dategrid[i];
-if ((showweekday>i) or (i>showmonthdays+showweekday)) {
+if ((showweekday>i) or (i>=showmonthdays+showweekday)) {
 // reset leading/trailing days
 b[0].text = "  ";
 b.cursor = null;

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4734] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/lib/layout/grid.t

2014-09-12 Thread clrg
Revision: 4734
  http://sourceforge.net/p/vexi/code/4734
Author:   clrg
Date: 2014-09-12 23:32:43 + (Fri, 12 Sep 2014)
Log Message:
---
Add debugging try/catch to grid to catch reported error

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/grid.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/grid.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/grid.t
2014-09-12 00:22:57 UTC (rev 4733)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/grid.t
2014-09-12 23:32:43 UTC (rev 4734)
@@ -286,10 +286,16 @@
 regionPos = frontierDim[origin-1];
 const roundPos = round(regionPos);
 const roundDim = round(frontierDim[region.frontier]) - 
roundPos;
-for (var j,box in region.boxes) {
-box[pos] = roundPos;
-box[dim] = roundDim;
-}
+try {
+   for (var j,box in region.boxes) {
+   box[pos] = roundPos;
+   box[dim] = roundDim;
+   }
+   } catch (e) {
+   trace("Error assigning "+pos+", "+dim+" to 
"+origin+": "+roundPos+", "+roundDim);
+   trace(frontierDim);
+   trace(e);
+   }
 }
 }
 }

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Want excitement?
Manually upgrade your production database.
When you want reliability, choose Perforce
Perforce version control. Predictably reliable.
http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4733] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/lib/layout/icon.t

2014-09-11 Thread clrg
Revision: 4733
  http://sourceforge.net/p/vexi/code/4733
Author:   clrg
Date: 2014-09-12 00:22:57 + (Fri, 12 Sep 2014)
Log Message:
---
Clean up copyright/xmlns

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/icon.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/icon.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/icon.t
2014-09-12 00:21:20 UTC (rev 4732)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/icon.t
2014-09-12 00:22:57 UTC (rev 4733)
@@ -1,12 +1,7 @@
-
+
 
-
-
-Charles Goodwin
-Icon
-An icon with an optional emblem
-
+
 
 
 

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Want excitement?
Manually upgrade your production database.
When you want reliability, choose Perforce
Perforce version control. Predictably reliable.
http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4732] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic/bevel.t

2014-09-11 Thread clrg
Revision: 4732
  http://sourceforge.net/p/vexi/code/4732
Author:   clrg
Date: 2014-09-12 00:21:20 + (Fri, 12 Sep 2014)
Log Message:
---
Remove trace

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/bevel.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/bevel.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/bevel.t
2014-09-11 23:50:27 UTC (rev 4731)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/bevel.t
2014-09-12 00:21:20 UTC (rev 4732)
@@ -59,7 +59,6 @@
 
 const refill = function(newfillbox) {
 // re-fill
-if (form == "tabtop") trace("refill: "+fillbox.fill);
 if (newfillbox != fillbox) {
 newfillbox.fill = fillbox.fill;
 fillbox.fill = null;

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Want excitement?
Manually upgrade your production database.
When you want reliability, choose Perforce
Perforce version control. Predictably reliable.
http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4731] branches/vexi3/org.vexi-vexi.widgets

2014-09-11 Thread clrg
Revision: 4731
  http://sourceforge.net/p/vexi/code/4731
Author:   clrg
Date: 2014-09-11 23:50:27 + (Thu, 11 Sep 2014)
Log Message:
---
Fix vexi.layout.ratio / add poke

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/ratio.t

Added Paths:
---
branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/layout/ratio.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/ratio.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/ratio.t   
2014-09-10 22:57:29 UTC (rev 4730)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/ratio.t   
2014-09-11 23:50:27 UTC (rev 4731)
@@ -1,11 +1,34 @@
-
+
 
-
+
+
 
-
+
 
 var totalRatio = 0;
+
+const resizeChildren = function() {
+var factor = thisbox[dim] / totalRatio;
+var remainder = 0;
+var totalSize = 0;
+for (var i,child in thisbox) {
+if (child.display) {
+var rawSize = (child.ratio * factor) + remainder;
+var actSize = vexi.math.round(rawSize);
+remainder = rawSize - actSize;
+child[dim] = actSize;
+totalSize += actSize;
+}
+}
+if (totalSize != thisbox[dim]) {
+thisbox[numchildren-1][dim] += (thisbox[dim] - totalSize);
+}
+}
+
 const updateTotal = function(v) {
+if (typeof v != "number")
+throw "ratio must be a number";
 var oldRatio = trapee.ratio;
 cascade = v==null?1:v;
 totalRatio = totalRatio - oldRatio + trapee.ratio;
@@ -23,25 +46,24 @@
 totalRatio -= v.ratio;
 }
 cascade = v;
+// resize if necessary
+if (trapee[dim]>0) resizeChildren();
 }
 
-thisbox.Resize ++= function(v) {
-var factor = thisbox[dim] / totalRatio;
-var remainder = 0;
-var totalSize = 0;
-for (var i,child in thisbox) {
-if (child.display) {
-var rawSize = (child.ratio * factor) + remainder;
-var actSize = vexi.math.round(rawSize);
-remainder = rawSize - actSize;
-child[dim] = actSize;
-totalSize += actSize;
-}
-}
-if (totalSize != thisbox[dim]) {
-thisbox[numchildren-1][dim] += (thisbox[dim] - totalSize);
-}
+const invokeResize = function(v) {
+cascade = v;
+resizeChildren();
 }
 
- 
+thisbox[dim] ++= invokeResize;
+
+thisbox.orient ++= function(v) {
+trapee[dim] --= invokeResize;
+casacde = v;
+trapee[dim] ++= invokeResize;
+// resize if necessary
+if (trapee[dim]>0) resizeChildren();
+}
+
+ 
 

Added: branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/layout/ratio.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/layout/ratio.t   
(rev 0)
+++ branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/layout/ratio.t   
2014-09-11 23:50:27 UTC (rev 4731)
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+vexi.ui.frame = thisbox;
+
+
+

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Want excitement?
Manually upgrade your production database.
When you want reliability, choose Perforce
Perforce version control. Predictably reliable.
http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4729] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic

2014-09-10 Thread clrg
Revision: 4729
  http://sourceforge.net/p/vexi/code/4729
Author:   clrg
Date: 2014-09-10 13:25:29 + (Wed, 10 Sep 2014)
Log Message:
---
Smarter tab fill

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/bevel.t
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tab.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/bevel.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/bevel.t
2014-09-10 11:56:02 UTC (rev 4728)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/bevel.t
2014-09-10 13:25:29 UTC (rev 4729)
@@ -1,4 +1,4 @@
-
+
 
 
 
 
-
+
 
 
 
@@ -26,18 +26,22 @@
 
 
 
+
 
 
-$pad.fill ++= function(v) {
+$bevel.fill ++= function(v) {
 var f = v?:.settings..tabfill;
 cascade = f;
 $overfill.fill = f;
 }
 
+$bevel.fill = null;
+
 thisbox.th_close = $close;
 thisbox.th_closewrap = $closewrap;
 thisbox.th_focus = $focus;
-thisbox.v_fillbox = $pad;
+thisbox.v_fillbox = $bevel;
+thisbox.v_shade = $overshade;
 
 const toBevel = function(v) { $bevel[trapname] = v; }
 
@@ -73,6 +77,7 @@
 trapee.marginbottom = v ? 0 : 2;
 trapee.paddingtop = v ? 2 : 2;
 trapee.paddingbottom = v ? 6 : 2;
+trapee.v_shade.display = !v;
 }
 
 

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Want excitement?
Manually upgrade your production database.
When you want reliability, choose Perforce
Perforce version control. Predictably reliable.
http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4728] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic/bevel.t

2014-09-10 Thread clrg
Revision: 4728
  http://sourceforge.net/p/vexi/code/4728
Author:   clrg
Date: 2014-09-10 11:56:02 + (Wed, 10 Sep 2014)
Log Message:
---
Smarter tab fill

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/bevel.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/bevel.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/bevel.t
2014-09-10 11:34:35 UTC (rev 4727)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/bevel.t
2014-09-10 11:56:02 UTC (rev 4728)
@@ -138,7 +138,8 @@
$inner_ee.fill = "#5a"+shadecolor;//"#808080";
$inner_se.fill = "#5a"+shadecolor;//"#808080";
$inner_ss.fill = null;
-   refill($inner);
+newfillbox = $outer;
+   refill($outer);
return;
 }
 }

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Want excitement?
Manually upgrade your production database.
When you want reliability, choose Perforce
Perforce version control. Predictably reliable.
http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4727] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/lib/util/date.t

2014-09-10 Thread clrg
Revision: 4727
  http://sourceforge.net/p/vexi/code/4727
Author:   clrg
Date: 2014-09-10 11:34:35 + (Wed, 10 Sep 2014)
Log Message:
---
Fix datepicker not working on 8th, 9th days

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/util/date.t

Modified: branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/util/date.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/util/date.t  
2014-09-09 12:16:06 UTC (rev 4726)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/util/date.t  
2014-09-10 11:34:35 UTC (rev 4727)
@@ -90,7 +90,9 @@
 }
 else {
 if (typeof(v)=="string") {
-v = vexi.string.parseInt(v);
+// we specify base 10 in case 1-9 specified
+// as 01-09, which would be parsed as octal
+v = vexi.string.parseInt(v, 10);
 }
 // NOTE: the order of the monthday +=/-= and month ++/--
 // is important and dependent on days surplus / shortage

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Want excitement?
Manually upgrade your production database.
When you want reliability, choose Perforce
Perforce version control. Predictably reliable.
http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4725] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic/datepicker.t

2014-09-06 Thread clrg
Revision: 4725
  http://sourceforge.net/p/vexi/code/4725
Author:   clrg
Date: 2014-09-06 23:53:57 + (Sat, 06 Sep 2014)
Log Message:
---
Datepicker
- highlight weekends
- cursor = "hand" on valid selections

Modified Paths:
--

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datepicker.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datepicker.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datepicker.t
   2014-09-05 21:14:48 UTC (rev 4724)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datepicker.t
   2014-09-06 23:53:57 UTC (rev 4725)
@@ -1,4 +1,4 @@
-
+
 
 
 
-
-
+
+
 
-
+
 
-
+
 
-
+
 
 
-
+
 
-
+
 
-
+
 
 
-
+
 
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
 
-
-
-
+
 
 
+
+
+
+
+
+
+
+
+
 
 /**
  * required because mouse press on the popbox would
@@ -90,14 +124,17 @@
 //nextmonthdays = showmonth==12 ? getDaysInMonth(showyear+1, 1) : 
getDaysInMonth(showyear, showmonth+1);
 // establish month length
 var i=0;
-var j=0;
-// reset leading days
-while (showweekday>i) { $dategrid[i][0].text = "  "; i++; }
-// set active day dates
-while (9+showweekday>i) { $dategrid[i][0].text = ' 
'+(i+1-showweekday); i++; }
-while (showmonthdays+showweekday>i) { $dategrid[i][0].text = 
i+1-showweekday; i++; }
-// reset trailing days
-while (42>i) { $dategrid[i][0].text = "  "; i++; }
+for (var i=0; 42>i; i++) {
+var b = $dategrid[i];
+if ((showweekday>i) or (i>showmonthdays+showweekday)) {
+// reset leading/trailing days
+b[0].text = "  ";
+b.cursor = null;
+} else {
+b[0].text = i+1-showweekday;
+b.cursor = "hand";
+}
+}
 
 $month.text = getMonthName(showmonth);
 $year.text = showyear;
@@ -184,7 +221,9 @@
b.active ++= static.activeTrap;
b.hover  ++= static.hoverTrap;
b.normal ++= static.normalTrap;
-   b.isCurrent = isCurrent;
+   b.isCurrent = isCurrent; // function
+// highlight sat/sun
+   b.isWeekend = (i%7 == 0) or (i%7 == 6);
$dategrid.add(b);
}
 }
@@ -210,16 +249,18 @@
 }
 }
 
-
+
 
+const getFill = function(box) { return box.isWeekend ? "#dedede" : 
"white"; }
+
 static.activeTrap = function(v) {
-trapee.fill = trapee[0].text == "  " ? "white" : "lightblue";
+trapee.fill = trapee[0].text != "  " ? "lightblue" : getFill(trapee);
 trapee[0].textcolor = "black";
 cascade = v;
 }
 
 static.hoverTrap = function(v) {
-trapee.fill = trapee[0].text == "  " ? "white" : "lightgreen";
+trapee.fill = trapee[0].text != "  " ? "lightgreen" : getFill(trapee);
 trapee[0].textcolor = "black";
 cascade = v;
 }
@@ -229,7 +270,7 @@
 trapee.fill = "darkblue";
 trapee[0].textcolor = "white";
 } else {
-trapee.fill = "white";
+trapee.fill = getFill(trapee);
 trapee[0].textcolor = "black";
  

[Vexi-svn] SF.net SVN: vexi:[4722] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic/combo.t

2014-09-03 Thread clrg
Revision: 4722
  http://sourceforge.net/p/vexi/code/4722
Author:   clrg
Date: 2014-09-04 02:41:58 + (Thu, 04 Sep 2014)
Log Message:
---
Fix. Combo sets v_textbox, which shadowtext depends upon.

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/combo.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/combo.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/combo.t
2014-08-29 15:20:10 UTC (rev 4721)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/combo.t
2014-09-04 02:41:58 UTC (rev 4722)
@@ -68,7 +68,6 @@
 thisbox.surfaceHeight ++= opt.surfaceHeightRead;
 
 thisbox.v_container ++= function(v) {
-cascade = v;
 v_fillbox = $focus;
 v_textbox = $edit.v_edit;
 thisbox.textalign ++= function(v) {
@@ -80,6 +79,8 @@
 if (holder[0] == null)
 holder[0] = $button;
 }
+// cascade after as shadowtext depends on v_textbox
+cascade = v;
 }
 
 

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Slashdot TV.  
Video for Nerds.  Stuff that matters.
http://tv.slashdot.org/
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4721] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/lib/role/popupmanager.t

2014-08-29 Thread clrg
Revision: 4721
  http://sourceforge.net/p/vexi/code/4721
Author:   clrg
Date: 2014-08-29 15:20:10 + (Fri, 29 Aug 2014)
Log Message:
---
Use elvis operator to fix JSExn

Modified Paths:
--

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/popupmanager.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/popupmanager.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/popupmanager.t  
2014-08-28 14:55:13 UTC (rev 4720)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/popupmanager.t  
2014-08-29 15:20:10 UTC (rev 4721)
@@ -65,8 +65,8 @@
 $container.Press3 ++= pressWrite;
 
 /** used to track surface_x/y changes */
-var syncXPos = function(v) { cascade = v; popforegs[trapee.popgroup ? 
trapee.popgroup : "default"].x = v; }
-var syncYPos = function(v) { cascade = v; popforegs[trapee.popgroup ? 
trapee.popgroup : "default"].y = v; }
+var syncXPos = function(v) { cascade = v; 
popforegs[trapee.popgroup?:"default"].x = v; }
+var syncYPos = function(v) { cascade = v; 
popforegs[trapee.popgroup?:"default"].y = v; }
 var updateXPos = function(v) {
 cascade = v;
 var m = trapee.v_popmaster;

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Slashdot TV.  
Video for Nerds.  Stuff that matters.
http://tv.slashdot.org/
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4720] branches/vexi3/org.vexi-vexi.widgets

2014-08-28 Thread clrg
Revision: 4720
  http://sourceforge.net/p/vexi/code/4720
Author:   clrg
Date: 2014-08-28 14:55:13 + (Thu, 28 Aug 2014)
Log Message:
---
Update shadepane
- change to use v_textbox for text-related property redirects
- change to set title with 'text' write

Modified Paths:
--

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/shadepane.t

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/shadepane.t
branches/vexi3/org.vexi-vexi.widgets/src_main/vexi/widget/shadepane.t

Added Paths:
---
branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/widgets/shadepane.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/shadepane.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/shadepane.t   
2014-08-28 14:45:34 UTC (rev 4719)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/shadepane.t   
2014-08-28 14:55:13 UTC (rev 4720)
@@ -1,16 +1,14 @@
-
+
 
-
-
-Charles Goodwin
-
+
 
-
+
+
+
 
 thisbox.canclose ++= static.cancloseWrite;
 thisbox.shade ++= static.shadeWrite;
-thisbox.title ++= static.titleRead;
-thisbox.title ++= static.titleWrite;
 
 thisbox.th_close ++= function(v) {
 cascade = v;
@@ -23,13 +21,9 @@
 v.Press1 ++= function(v) { shade = !shade; return; }
 }
 
-
-
-
+
 
 static.cancloseWrite = function(v) { trapee.th_close.display = v; cascade 
= v; }
 static.shadeWrite = function(v) { trapee.th_content.display = !v; cascade 
= v; }
-static.titleRead = function() { return trapee.th_title.text; }
-static.titleWrite = function(v) { trapee.th_title.text = v; return; }
 
 

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/shadepane.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/shadepane.t
2014-08-28 14:45:34 UTC (rev 4719)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/shadepane.t
2014-08-28 14:55:13 UTC (rev 4720)
@@ -1,10 +1,10 @@
-
+
 
-
-
-Charles Goodwin
-
+
 
 
 
@@ -27,6 +27,8 @@
 thisbox.th_title = $title;
 thisbox.th_titlebar = $titlebar;
 
+thisbox.v_textbox = $title;
+
 var downarrow = .image.arrowdown_white;
 var rightarrow = .image.arrowright_white;
 

Modified: branches/vexi3/org.vexi-vexi.widgets/src_main/vexi/widget/shadepane.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/vexi/widget/shadepane.t   
2014-08-28 14:45:34 UTC (rev 4719)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/vexi/widget/shadepane.t   
2014-08-28 14:55:13 UTC (rev 4720)
@@ -1,17 +1,18 @@
-
+
 
-
+
+
 
-Charles Goodwin
 Shade Pane
 A titled area that can be collapsed to just show the title
 
-To set the title, put to the 'title' property of a
-collapsing pane widget.
+To set the title, put to the 'text' property of a shade pane.
 
-Put to the 'collapse' property programmatically collapse
-(true) and expand (false) the pane.
+Put to the 'collapse' property to programmatically collapse
+(true) and expand (false) the pane - defaults to expanded.
 
 
 

Added: branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/widgets/shadepane.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/widgets/shadepane.t  
(rev 0)
+++ branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/widgets/shadepane.t  
2014-08-28 14:55:13 UTC (rev 4720)
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+vexi.ui.frame = thisbox;
+
+
+

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Slashdot TV.  
Video for Nerds.  Stuff that matters.
http://tv.slashdot.org/
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4719] branches/vexi3/org.vexi-vexi.widgets/src_main/vexi/ util/color.t

2014-08-28 Thread clrg
Revision: 4719
  http://sourceforge.net/p/vexi/code/4719
Author:   clrg
Date: 2014-08-28 14:45:34 + (Thu, 28 Aug 2014)
Log Message:
---
Return null if sending null colour to getReadableColor function

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/vexi/util/color.t

Modified: branches/vexi3/org.vexi-vexi.widgets/src_main/vexi/util/color.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/vexi/util/color.t 
2014-08-28 14:43:41 UTC (rev 4718)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/vexi/util/color.t 
2014-08-28 14:45:34 UTC (rev 4719)
@@ -1,15 +1,16 @@
-
+
 
-
+
+
 
-Charles Goodwin
 Color
 Utility functions for working with colors
 
 
-
+
 fill ++= static.fillWrite;
-
+
 
 /** assigns a textcolor that is readable against fill */
 static.fillWrite = function(v) {
@@ -22,8 +23,12 @@
 
 /** takes a string 'v' and parses it as a date for 'o' */
 static.getReadableColor = function(c) {
+// will set default on box
+if (c == null) return null;
+// look up from cache
 var r = readable[c];
 if (r) return r;
+
 if (c.charAt(0)!='#') throw "Color must be in hex format";
 r = vexi.string.parseInt(c.substring(1,3), 16)
   + vexi.string.parseInt(c.substring(3,5), 16)

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Slashdot TV.  
Video for Nerds.  Stuff that matters.
http://tv.slashdot.org/
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4718] branches/vexi3/org.vexi-vexi.widgets/src_main

2014-08-28 Thread clrg
Revision: 4718
  http://sourceforge.net/p/vexi/code/4718
Author:   clrg
Date: 2014-08-28 14:43:41 + (Thu, 28 Aug 2014)
Log Message:
---
Fix issues with setting v_textbox
- pad should not intercept v_textbox if already specified
- margin to only set v_textbox in direct implementation

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/margin.t
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/pad.t
branches/vexi3/org.vexi-vexi.widgets/src_main/vexi/layout/margin.t
branches/vexi3/org.vexi-vexi.widgets/src_main/vexi/layout/pad.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/margin.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/margin.t  
2014-08-28 13:40:29 UTC (rev 4717)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/margin.t  
2014-08-28 14:43:41 UTC (rev 4718)
@@ -1,13 +1,15 @@
-
+
 
-
+
+
 
-Charles Goodwin
-
+
+* lib.margin does not set v_textbox
 * see org.vexi.lib.layout.pad
-
+
 
 
 
@@ -21,7 +23,7 @@
 
 thisbox.v_content = $content;
 thisbox.v_fillbox = $content;
-thisbox.v_textbox = $content;
+
 thisbox.v_tmar = $top;
 thisbox.v_rmar = $right;
 thisbox.v_bmar = $bottom;

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/pad.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/pad.t 
2014-08-28 13:40:29 UTC (rev 4717)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/pad.t 
2014-08-28 14:43:41 UTC (rev 4718)
@@ -1,11 +1,12 @@
-
+
 
-
+
+
 
-Charles Goodwin
 
-* differentiate between pt and px
+* currently only works in px
 * changing individual pads (top/left etc) does not update 
'padding' property
 
 
@@ -25,8 +26,14 @@
 thisbox.v_fillbox = v_content ? v_content : thisbox;
 }
 
+// widgets may set their own textbox
+if (thisbox.v_textbox==null) {
+thisbox.v_textbox = $content;
+}
+
+// always want to override v_content
 thisbox.v_content = $content;
-thisbox.v_textbox = $content;
+
 thisbox.v_tpad = $top;
 thisbox.v_rpad = $right;
 thisbox.v_bpad = $bottom;

Modified: branches/vexi3/org.vexi-vexi.widgets/src_main/vexi/layout/margin.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/vexi/layout/margin.t  
2014-08-28 13:40:29 UTC (rev 4717)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/vexi/layout/margin.t  
2014-08-28 14:43:41 UTC (rev 4718)
@@ -1,8 +1,10 @@
-
+
 
-
+
+
 
-Charles Goodwin
 Margin
 Use for adding a flexible margin to templates
 
@@ -18,17 +20,14 @@
Putting a numeric value to these properties sets the
respective margin.
 
-* v_margin
-   By default margin will apply to 'thisbox' but to use
-   margin in more complicated situations, set the v_margin
-   property to the box you wish to be the margin.
-
 Notes:
 
 * Do not preapply this template - preapply lib.layout.margin
 
 
 
-
+
+thisbox.v_textbox = v_content;
+
 
 

Modified: branches/vexi3/org.vexi-vexi.widgets/src_main/vexi/layout/pad.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/vexi/layout/pad.t 
2014-08-28 13:40:29 UTC (rev 4717)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/vexi/layout/pad.t 
2014-08-28 14:43:41 UTC (rev 4718)
@@ -1,9 +1,10 @@
-
+
 
-
+
+
 
-Charles Goodwin
 Padding
 Use for adding a flexible padding to templates
 

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Slashdot TV.  
Video for Nerds.  Stuff that matters.
http://tv.slashdot.org/
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4717] branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/ util/redirect.t

2014-08-28 Thread clrg
Revision: 4717
  http://sourceforge.net/p/vexi/code/4717
Author:   clrg
Date: 2014-08-28 13:40:29 + (Thu, 28 Aug 2014)
Log Message:
---
Poke redirect

Added Paths:
---
branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/util/redirect.t

Added: branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/util/redirect.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/util/redirect.t  
(rev 0)
+++ branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/util/redirect.t  
2014-08-28 13:40:29 UTC (rev 4717)
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+u.redirect..addRedirect($a, $b, "text");
+$a.text = "Should be on the bottom";
+
+vexi.ui.frame = thisbox;
+
+
\ No newline at end of file

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Slashdot TV.  
Video for Nerds.  Stuff that matters.
http://tv.slashdot.org/
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4715] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic/datefield.t

2014-08-05 Thread clrg
Revision: 4715
  http://sourceforge.net/p/vexi/code/4715
Author:   clrg
Date: 2014-08-05 18:09:58 + (Tue, 05 Aug 2014)
Log Message:
---
Fix. Value comes from datefield, not datepicker.

Modified Paths:
--

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datefield.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datefield.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datefield.t
2014-08-05 16:50:04 UTC (rev 4714)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datefield.t
2014-08-05 18:09:58 UTC (rev 4715)
@@ -113,7 +113,7 @@
 /** assign date and popup */
 $select.action ++= function(v) {
 popup = true;
-var date = $datepicker.value;
+var date = value;
 $datepicker.day = date?.day;
 $datepicker.month = date?.month;
 $datepicker.year = date?.year;

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls. 
Build a bridge from your legacy apps to the future.
http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4714] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic/datefield.t

2014-08-05 Thread clrg
Revision: 4714
  http://sourceforge.net/p/vexi/code/4714
Author:   clrg
Date: 2014-08-05 16:50:04 + (Tue, 05 Aug 2014)
Log Message:
---
Fix. Value could be null.

Modified Paths:
--

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datefield.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datefield.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datefield.t
2014-08-05 12:48:22 UTC (rev 4713)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datefield.t
2014-08-05 16:50:04 UTC (rev 4714)
@@ -114,9 +114,9 @@
 $select.action ++= function(v) {
 popup = true;
 var date = $datepicker.value;
-$datepicker.day = date.day;
-$datepicker.month = date.month;
-$datepicker.year = date.year;
+$datepicker.day = date?.day;
+$datepicker.month = date?.month;
+$datepicker.year = date?.year;
 return;
 }
 

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls. 
Build a bridge from your legacy apps to the future.
http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4713] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic/datefield.t

2014-08-05 Thread clrg
Revision: 4713
  http://sourceforge.net/p/vexi/code/4713
Author:   clrg
Date: 2014-08-05 12:48:22 + (Tue, 05 Aug 2014)
Log Message:
---
Fix date not getting properly set on datepicker

Modified Paths:
--

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datefield.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datefield.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datefield.t
2014-08-04 23:57:25 UTC (rev 4712)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datefield.t
2014-08-05 12:48:22 UTC (rev 4713)
@@ -113,9 +113,10 @@
 /** assign date and popup */
 $select.action ++= function(v) {
 popup = true;
-$datepicker.day = day;
-$datepicker.month = month;
-$datepicker.year = year;
+var date = $datepicker.value;
+$datepicker.day = date.day;
+$datepicker.month = date.month;
+$datepicker.year = date.year;
 return;
 }
 

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls. 
Build a bridge from your legacy apps to the future.
http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4712] branches/vexi3/org.vexi-core.main/src/main/jpp/org/ vexi/core/Box.jpp

2014-08-04 Thread clrg
Revision: 4712
  http://sourceforge.net/p/vexi/code/4712
Author:   clrg
Date: 2014-08-04 23:57:25 + (Mon, 04 Aug 2014)
Log Message:
---
Fix r4707 visible logic update - ?: was the wrong way around

Revision Links:
--
http://sourceforge.net/p/vexi/code/4707

Modified Paths:
--
branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp

Modified: branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp
===
--- branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp
2014-07-31 21:50:12 UTC (rev 4711)
+++ branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp
2014-08-04 23:57:25 UTC (rev 4712)
@@ -200,7 +200,7 @@
 private static final int localToGlobalY(Box b, int y) { return 
b.parent==null ? y : localToGlobalY(b.parent, y + getYInParent(b)); }
 
 // useful debugging reflow problems
-//private static final int depth(Box b) { return b.parent==null ? 0 : 
depth(b.parent)+1; }
+private static final int depth(Box b) { return b.parent==null ? 0 : 
depth(b.parent)+1; }
 
 private static final int min(int a, int b) { return (ab) ? a : b; }
@@ -2559,8 +2559,8 @@
 // REMARK visible is only relevant if the parent is visible 
(impossible
 // to change visible state if parent.visible == false as 
box.visible is
 // always be false) or if this box is attached to a surface
-WriteTrapChain trapchain = (parent!=null && 
parent.get(SC_visible) == JSU.T) || (parent==null && getSurface()!=null)
-   ? null : fireVisibleTraps(set_display);
+WriteTrapChain trapchain = (parent!=null && 
(parent.get(SC_visible) == JSU.T)) || (parent==null && getSurface()!=null)
+   ? fireVisibleTraps(set_display) : null;
 if (set_display) {
 set(DISPLAY);
 requestReflow();

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls. 
Build a bridge from your legacy apps to the future.
http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4709] branches/vexi3/org.vexi-vexi.widgets/img_dev/ datecircle.xcf

2014-07-30 Thread clrg
Revision: 4709
  http://sourceforge.net/p/vexi/code/4709
Author:   clrg
Date: 2014-07-31 06:25:33 + (Thu, 31 Jul 2014)
Log Message:
---
Add image source file

Added Paths:
---
branches/vexi3/org.vexi-vexi.widgets/img_dev/datecircle.xcf

Added: branches/vexi3/org.vexi-vexi.widgets/img_dev/datecircle.xcf
===
(Binary files differ)

Index: branches/vexi3/org.vexi-vexi.widgets/img_dev/datecircle.xcf
===
--- branches/vexi3/org.vexi-vexi.widgets/img_dev/datecircle.xcf 2014-07-30 
14:24:05 UTC (rev 4708)
+++ branches/vexi3/org.vexi-vexi.widgets/img_dev/datecircle.xcf 2014-07-31 
06:25:33 UTC (rev 4709)

Property changes on: branches/vexi3/org.vexi-vexi.widgets/img_dev/datecircle.xcf
___
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls. 
Build a bridge from your legacy apps to the future.
http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4708] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi

2014-07-30 Thread clrg
Revision: 4708
  http://sourceforge.net/p/vexi/code/4708
Author:   clrg
Date: 2014-07-30 14:24:05 + (Wed, 30 Jul 2014)
Log Message:
---
Circle today's date + fix padding on pop up

Modified Paths:
--

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/popupmanager.t

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datepicker.t

Added Paths:
---

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/image/datecircle.png

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/popupmanager.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/popupmanager.t  
2014-07-30 14:05:13 UTC (rev 4707)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/role/popupmanager.t  
2014-07-30 14:24:05 UTC (rev 4708)
@@ -230,8 +230,8 @@
 model.addPopBox = function(v) {
 var p = v.v_popbox;
 
-// silence popbox
-p.display = false;
+// detach popbox
+p.thisbox = null;
 
 // use default group if none is specified
 var g = p.popgroup ? p.popgroup : "default";

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datepicker.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datepicker.t
   2014-07-30 14:05:13 UTC (rev 4707)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/datepicker.t
   2014-07-30 14:24:05 UTC (rev 4708)
@@ -12,18 +12,18 @@
 
 
 
-
+
 
 
 
-
+
 
 
-
+
 
 
 
-
+
 
 
 
@@ -40,9 +40,12 @@
 
 
 
-
-
-
+
+
+
+
+
+
 
 /**
  * required because mouse press on the popbox would
@@ -68,6 +71,15 @@
 return day!=null and year==showyear and month==showmonth and 
day==v;
 }
 
+var today; // vexi.js.Date
+var circleToday = function() {
+var today_box = $dategrid[showweekday + today.day - 1];
+var d = $base.distanceto(today_box);
+$circle.x = d.x - 2;
+$circle.y = d.y - 8;
+$circle.display = true;
+}
+
 /** set the dates shown according to the month/year properties */
 var layoutDates = function() {
 // establish starting day
@@ -90,6 +102,19 @@
 $month.text = getMonthName(showmonth);
 $year.text = showyear;
 
+// mark today
+if (showyear == today.year and showmonth == today.month) {
+if ($dategrid.width == 0) {
+// not yet been displayed; use a thread as it
+// will get called after layout is performed
+vexi.thread = function() {
+circleToday();
+}
+} else circleToday();
+} else {
+$circle.display = false;
+}
+
 if (olddate) {
 olddate.fill = "white";
 olddate[0].textcolor = "black";
@@ -117,18 +142,6 @@
 return;
 }
 
-// create boxes to contain the dates
-for (var i=0; 42>i; i++) {
-var b = role.clickable(vexi.box);
-b[0] = util.digit(vexi.box);
-b.action ++= actionTrap;
-b.active ++= static.activeTrap;
-b.hover  ++= static.hoverTrap;
-b.normal ++= static.normalTrap;
-b.isCurrent = isCurrent;
-$dategrid[$dategrid.numchildren] = b;
-}
-
 /** close us */
 $close.action ++= function(v) { popdown = true; cascade = v; }
 
@@ -162,15 +175,33 @@
 cascade = v;
 }
 
+var initialize = function() {
+   // create boxes to contain the dates
+   for (var i=0; 42>i; i++) {
+   var b = new role.clickable();
+   b[0] = new util.digit();
+   b.action ++= actionTrap;
+   b.active ++= static.activeTrap;
+   b.hover  ++= static.hoverTrap;
+   b.normal ++= static.normalTrap;
+   b.isCurrent = isCurrent;
+   $dategrid.add(b);
+   }
+}
+

[Vexi-svn] SF.net SVN: vexi:[4707] branches/vexi3/org.vexi-core.main/src/main/jpp/org/ vexi/core/Box.jpp

2014-07-30 Thread clrg
Revision: 4707
  http://sourceforge.net/p/vexi/code/4707
Author:   clrg
Date: 2014-07-30 14:05:13 + (Wed, 30 Jul 2014)
Log Message:
---
Fix visible traps being unnecessarily fired

Modified Paths:
--
branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp

Modified: branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp
===
--- branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp
2014-07-25 02:06:57 UTC (rev 4706)
+++ branches/vexi3/org.vexi-core.main/src/main/jpp/org/vexi/core/Box.jpp
2014-07-30 14:05:13 UTC (rev 4707)
@@ -2556,7 +2556,11 @@
 setParentConstrain();
 setParentPlace();
 // fire pre-cascade visible traps
-WriteTrapChain trapchain = get(SC_visible) == value ? null : 
fireVisibleTraps(set_display);
+// REMARK visible is only relevant if the parent is visible 
(impossible
+// to change visible state if parent.visible == false as 
box.visible is
+// always be false) or if this box is attached to a surface
+WriteTrapChain trapchain = (parent!=null && 
parent.get(SC_visible) == JSU.T) || (parent==null && getSurface()!=null)
+   ? null : fireVisibleTraps(set_display);
 if (set_display) {
 set(DISPLAY);
 requestReflow();

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls. 
Build a bridge from your legacy apps to the future.
http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4706] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic/tabpane.t

2014-07-24 Thread clrg
Revision: 4706
  http://sourceforge.net/p/vexi/code/4706
Author:   clrg
Date: 2014-07-25 02:06:57 + (Fri, 25 Jul 2014)
Log Message:
---
Add fillbox to tabpane

Modified Paths:
--

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tabpane.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tabpane.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tabpane.t  
2014-07-15 14:46:16 UTC (rev 4705)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tabpane.t  
2014-07-25 02:06:57 UTC (rev 4706)
@@ -36,6 +36,7 @@
 thisbox.th_next = $next;
 thisbox.th_prev = $prev;
 thisbox.th_tablist = $tablist;
+thisbox.v_fillbox = $content;
 
 const toBevel = function(v) { $content[trapname] = v; }
 

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Want fast and easy access to all the code in your enterprise? Index and
search up to 200,000 lines of code with a free copy of Black Duck
Code Sight - the same software that powers the world's largest code
search on Ohloh, the Black Duck Open Hub! Try it now.
http://p.sf.net/sfu/bds
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4705] branches/vexi3/org.vexi-vexi.icons/src_main/org/ vexi/crystal

2014-07-15 Thread clrg
Revision: 4705
  http://sourceforge.net/p/vexi/code/4705
Author:   clrg
Date: 2014-07-15 14:46:16 + (Tue, 15 Jul 2014)
Log Message:
---
Add flask icon from openclipart

Added Paths:
---

branches/vexi3/org.vexi-vexi.icons/src_main/org/vexi/crystal/icon16/flask.png

branches/vexi3/org.vexi-vexi.icons/src_main/org/vexi/crystal/icon32/flask.png

Added: 
branches/vexi3/org.vexi-vexi.icons/src_main/org/vexi/crystal/icon16/flask.png
===
(Binary files differ)

Index: 
branches/vexi3/org.vexi-vexi.icons/src_main/org/vexi/crystal/icon16/flask.png
===
--- 
branches/vexi3/org.vexi-vexi.icons/src_main/org/vexi/crystal/icon16/flask.png   
2014-06-25 15:51:16 UTC (rev 4704)
+++ 
branches/vexi3/org.vexi-vexi.icons/src_main/org/vexi/crystal/icon16/flask.png   
2014-07-15 14:46:16 UTC (rev 4705)

Property changes on: 
branches/vexi3/org.vexi-vexi.icons/src_main/org/vexi/crystal/icon16/flask.png
___
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: 
branches/vexi3/org.vexi-vexi.icons/src_main/org/vexi/crystal/icon32/flask.png
===
(Binary files differ)

Index: 
branches/vexi3/org.vexi-vexi.icons/src_main/org/vexi/crystal/icon32/flask.png
===
--- 
branches/vexi3/org.vexi-vexi.icons/src_main/org/vexi/crystal/icon32/flask.png   
2014-06-25 15:51:16 UTC (rev 4704)
+++ 
branches/vexi3/org.vexi-vexi.icons/src_main/org/vexi/crystal/icon32/flask.png   
2014-07-15 14:46:16 UTC (rev 4705)

Property changes on: 
branches/vexi3/org.vexi-vexi.icons/src_main/org/vexi/crystal/icon32/flask.png
___
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Want fast and easy access to all the code in your enterprise? Index and
search up to 200,000 lines of code with a free copy of Black Duck
Code Sight - the same software that powers the world's largest code
search on Ohloh, the Black Duck Open Hub! Try it now.
http://p.sf.net/sfu/bds
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4703] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/lib/layout/grid.t

2014-06-18 Thread clrg
Revision: 4703
  http://sourceforge.net/p/vexi/code/4703
Author:   clrg
Date: 2014-06-18 19:24:28 + (Wed, 18 Jun 2014)
Log Message:
---
Fix spans>cols/rows affecting layout

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/grid.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/grid.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/grid.t
2014-06-04 19:03:34 UTC (rev 4702)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/grid.t
2014-06-18 19:24:28 UTC (rev 4703)
@@ -334,11 +334,11 @@
 
 /** assign child c to the pack slot specific by col,row */
 const assignSlot = function(c, col, row) {
-var c0 = c[0];
+const c0 = c[0];
 c0.v_col = col;
 c0.v_row = row;
-var colfrontier = col+c0.colspan;
-var rowfrontier = row+c0.rowspan;
+const colfrontier = userows ? col+c0.colspan : min(cols, 
col+c0.colspan);
+const rowfrontier = userows ? min(rows, row+c0.rowspan) : 
row+c0.rowspan;
 // update the number of in-use rows/cols
 numcols = max(numcols, colfrontier);
 numrows = max(numrows, rowfrontier);

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions
Find What Matters Most in Your Big Data with HPCC Systems
Open Source. Fast. Scalable. Simple. Ideal for Dirty Data.
Leverages Graph Analysis for Fast Processing & Easy Data Exploration
http://p.sf.net/sfu/hpccsystems
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4702] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/lib/widget/scrollbar.t

2014-06-04 Thread clrg
Revision: 4702
  http://sourceforge.net/p/vexi/code/4702
Author:   clrg
Date: 2014-06-04 19:03:34 + (Wed, 04 Jun 2014)
Log Message:
---
More intuitive behaviour for nested scrollbars/scrollpanes: don't consume 
HScroll/VScroll event if scrollbar is not active

Modified Paths:
--

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/scrollbar.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/scrollbar.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/scrollbar.t   
2014-06-01 20:29:14 UTC (rev 4701)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/widget/scrollbar.t   
2014-06-04 19:03:34 UTC (rev 4702)
@@ -141,8 +141,11 @@
 
 /** vertical mousewheel movement */
 const mwheelWrite = function(v) {
-shift = lineheight * v * mwheelshift;
-return;
+if (display and (track[dim] > thumb[dim])) {
+   shift = lineheight * v * mwheelshift;
+   return;
+}
+cascade = v;
 }
 
 

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their 
applications. Written by three acclaimed leaders in the field, 
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/NeoTech
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4682] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi

2014-03-25 Thread clrg
Revision: 4682
  http://sourceforge.net/p/vexi/code/4682
Author:   clrg
Date: 2014-03-25 16:52:05 + (Tue, 25 Mar 2014)
Log Message:
---
Tidy up only

Modified Paths:
--

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/util/abstractlexer.t
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/link.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/util/abstractlexer.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/util/abstractlexer.t 
2014-03-25 16:44:49 UTC (rev 4681)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/util/abstractlexer.t 
2014-03-25 16:52:05 UTC (rev 4682)
@@ -1,12 +1,7 @@
-
+
 
-
-
-Mike Goodwin
-
-
-
-
+
+// @author Mike Goodwin
 
 // constants
 const C0 = "0".charCodeAt(0);
@@ -156,7 +151,5 @@
 return tok;
 };
 
-
-
 
 

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/link.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/link.t 
2014-03-25 16:44:49 UTC (rev 4681)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/link.t 
2014-03-25 16:52:05 UTC (rev 4682)
@@ -1,4 +1,4 @@
-
+
 
 http://p.sf.net/sfu/13534_NeoTech
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4681] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic/lib

2014-03-25 Thread clrg
Revision: 4681
  http://sourceforge.net/p/vexi/code/4681
Author:   clrg
Date: 2014-03-25 16:44:49 + (Tue, 25 Mar 2014)
Log Message:
---
Tidy up only

Modified Paths:
--

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/button.t

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/focusborder.t

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/init.t

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/tablist.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/button.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/button.t
   2014-03-21 13:22:39 UTC (rev 4680)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/button.t
   2014-03-25 16:44:49 UTC (rev 4681)
@@ -1,4 +1,4 @@
-
+
 
 
 
 var button_static = .button[""];
-active  ++= button_static.activeWrite;
-hover   ++= button_static.normalWrite;
-hover   ++= button_static.normalWrite;
-normal  ++= button_static.normalWrite;
-v_init= button_static.init;
+active ++= button_static.activeWrite;
+hover  ++= button_static.normalWrite;
+hover  ++= button_static.normalWrite;
+normal ++= button_static.normalWrite;
+v_init   = button_static.init;
 
 
 

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/focusborder.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/focusborder.t
  2014-03-21 13:22:39 UTC (rev 4680)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/focusborder.t
  2014-03-25 16:44:49 UTC (rev 4681)
@@ -1,10 +1,8 @@
 
 
-
-
-Charles Goodwin
-
+
 
 
 

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/init.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/init.t 
2014-03-21 13:22:39 UTC (rev 4680)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/init.t 
2014-03-25 16:44:49 UTC (rev 4681)
@@ -1,10 +1,6 @@
-
+
 
-
-
-Mike Goodwin
-
-
+
 
 // move checks into widgets lib
 var keys = keysof(vexi..vexi.theme);

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/tablist.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/tablist.t
  2014-03-21 13:22:39 UTC (rev 4680)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/tablist.t
  2014-03-25 16:44:49 UTC (rev 4681)
@@ -1,4 +1,4 @@
-
+
 
 http://p.sf.net/sfu/13534_NeoTech
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4677] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic/tab.t

2014-03-17 Thread clrg
Revision: 4677
  http://sourceforge.net/p/vexi/code/4677
Author:   clrg
Date: 2014-03-17 17:53:58 + (Mon, 17 Mar 2014)
Log Message:
---
Make tab fill to settings..tabfill on fill=null put (use "#" for 
transparency)

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tab.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tab.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tab.t  
2014-03-17 16:36:28 UTC (rev 4676)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tab.t  
2014-03-17 17:53:58 UTC (rev 4677)
@@ -1,10 +1,9 @@
-
+
 
-
-
-Charles Goodwin
-
+
 
 
 
@@ -29,7 +28,11 @@
 
 
 
-$pad.fill ++= function(v) { cascade = v; $overfill.fill = v; }
+$pad.fill ++= function(v) {
+var f = v?:.settings..tabfill;
+cascade = f;
+$overfill.fill = f;
+}
 
 thisbox.th_close = $close;
 thisbox.th_closewrap = $closewrap;

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4676] branches/vexi3/org.vexi-vexi.widgets/src_main

2014-03-17 Thread clrg
Revision: 4676
  http://sourceforge.net/p/vexi/code/4676
Author:   clrg
Date: 2014-03-17 16:36:28 + (Mon, 17 Mar 2014)
Log Message:
---
Support more extensions with image preloader

Modified Paths:
--

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/settings.t
branches/vexi3/org.vexi-vexi.widgets/src_main/vexi/util/preload.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/settings.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/settings.t 
2014-03-17 16:35:57 UTC (rev 4675)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/settings.t 
2014-03-17 16:36:28 UTC (rev 4676)
@@ -1,10 +1,13 @@
-
+
 
-
-
-Charles Goodwin
-
+
 
+/* Default settings for the theme; widgets will pick
+ * up their settings i.e. colours from here
+ */
+
 
 
 static.buttonfill = "#d4d0c8";
@@ -25,6 +28,6 @@
 static.widgetfill = "#d4d0c8";
 
 // preload images so they don't get dropped
-static.imagecache = .preload(vexi.box);
+static.imagecache = new ut.preload(.image);
 
 

Modified: branches/vexi3/org.vexi-vexi.widgets/src_main/vexi/util/preload.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/vexi/util/preload.t   
2014-03-17 16:35:57 UTC (rev 4675)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/vexi/util/preload.t   
2014-03-17 16:36:28 UTC (rev 4676)
@@ -1,13 +1,12 @@
-
+
 
-
-
-Charles Goodwin
-
-Used to preload all the theme's images
-
-
+
 
+/* Used to preload all images for all the given arguments;
+ * it will load image files as fills and also drops into
+ * any subdirectories to also preload those files
+ */
+
 
 
 var loadImages = function(res) {
@@ -15,17 +14,23 @@
 if (k.charAt(0)=='.') {
 continue;
 }
-var i = k.lastIndexOf('.png'); 
-if (i>0 and i==k.length-4) {
-thisbox[0] = vexi.box;
-thisbox[0].fill = res[k];
-} else {
-callee(res[k]);
+const parts = k.split('.');
+if (parts.length>1) {
+var ext = parts[1];
+if (ext == "png" or ext == "gif" or ext == "jpg") {
+const b = vexi.box;
+b.fill = res[k];
+thisbox.add(b);
+}
+continue;
 }
+// probably a subdirectory
+callee(res[k]);
 }
 }
 
-loadImages(.image);
+for (var i,arg in arguments)
+loadImages(arg);
 
 
 

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4675] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic/lib/finalize.t

2014-03-17 Thread clrg
Revision: 4675
  http://sourceforge.net/p/vexi/code/4675
Author:   clrg
Date: 2014-03-17 16:35:57 + (Mon, 17 Mar 2014)
Log Message:
---
Make widgets fill to init.fill on fill=null put (use "#" for transparency)

Modified Paths:
--

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/finalize.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/finalize.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/finalize.t
 2014-03-13 21:23:13 UTC (rev 4674)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/finalize.t
 2014-03-17 16:35:57 UTC (rev 4675)
@@ -1,12 +1,13 @@
-
+
 
-
-
-This template adds some common finishing touches to several
-of the classic theme widgets.
-
+
 
+/* This template adds some common finishing touches to several
+ * of the Classic theme widgets.
+ */
+
 
 // v_ready because any visual properties have
 // been initialized by this point in container
@@ -52,7 +53,7 @@
 static.fillWrite = function(v) {
 if (trapee.enabled or trapee.v_filloverride)
 cascade = v;
-else trapee.v_fillenabled = v;
+else trapee.v_fillenabled = v!=null ? v : (trapee.v_init?.fill);
 }
 
 
\ No newline at end of file

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4642] branches/vexi4c/org.vexi-core.main/src/main/jpp/org /vexi/ui/Box.jpp

2014-01-17 Thread clrg
Revision: 4642
  http://sourceforge.net/p/vexi/code/4642
Author:   clrg
Date: 2014-01-18 00:19:12 + (Sat, 18 Jan 2014)
Log Message:
---
Fix / refactoring

Modified Paths:
--
branches/vexi4c/org.vexi-core.main/src/main/jpp/org/vexi/ui/Box.jpp

Modified: branches/vexi4c/org.vexi-core.main/src/main/jpp/org/vexi/ui/Box.jpp
===
--- branches/vexi4c/org.vexi-core.main/src/main/jpp/org/vexi/ui/Box.jpp 
2014-01-14 12:50:06 UTC (rev 4641)
+++ branches/vexi4c/org.vexi-core.main/src/main/jpp/org/vexi/ui/Box.jpp 
2014-01-18 00:19:12 UTC (rev 4642)
@@ -583,6 +583,13 @@
 public final int getHeight() { return height; }
 public final int nominalWidth() { return min(maxwidth, max(contentwidth, 
minwidth)); }
 public final int nominalHeight() { return min(maxheight, 
max(contentheight, minheight)); }
+
+private final int constrainToWidth(int testwidth, Box c) {
+   return max(testwidth, c.nominalWidth() + max(padding.left, 
c.margin.left) + max(padding.right, c.margin.right));
+}
+private final int constrainToHeight(int testheight, Box c) {
+   return max(testheight, c.nominalHeight() + max(padding.top, 
c.margin.top) + max(padding.bottom, c.margin.bottom));
+}
 
 
 // Reflow/rendering Pipeline //
@@ -650,7 +657,7 @@
 //#repeat width/height HORIZONTAL/VERTICAL Width/Height left/top 
right/bottom
 if (test(ORIENT) == HORIZONTAL) {
 // accumulate child contentwidth
-int prior_margin = 0;
+int prior_margin = padding.left;
 box_spacing = 0;
 for (Box c = getChild(i=0); c != null; c = getChild(++i)) {
 if (!c.test(DISPLAY)) {
@@ -661,14 +668,14 @@
 new_contentwidth += c.nominalWidth() + spacing;
 prior_margin = c.margin.right;
 }
-new_contentwidth += prior_margin;
+new_contentwidth += max(prior_margin, padding.right);
 } else {
 // maximum child contentwidth
 for (Box c = getChild(i=0); c != null; c = getChild(++i)) {
 if (!c.test(DISPLAY)) {
 continue;
 }
-new_contentwidth = max(new_contentwidth, c.nominalWidth() 
+ c.margin.left + c.margin.right);
+new_contentwidth = constrainToWidth(new_contentwidth, c);
 }
 }
 //#end
@@ -678,8 +685,8 @@
 if (!c.test(DISPLAY)) {
 continue;
 }
-new_contentwidth = max(new_contentwidth, c.nominalWidth() + 
c.margin.left + c.margin.right);
-new_contentheight = max(new_contentheight, c.nominalHeight() + 
c.margin.top + c.margin.bottom);
+new_contentwidth = constrainToWidth(new_contentwidth, c);
+new_contentheight = constrainToHeight(new_contentheight, c);
 }
 }
 
@@ -783,7 +790,7 @@
 continue;
 }
 // height, y
-child_height = getTargetHeight(height);
+child_height = child.getTargetHeight(height);
 child_y = getTargetY(height, child_height, top, 
bottom);
 // width, x
 child_width = child.nominalWidth();
@@ -921,7 +928,7 @@
 
 } else {
 // vertical stacking - mirrors horizontal stacking code 
[see for comments]
-if (0 >= height - contentheight) {
+if (contentheight >= height) {
 // simple case - no slack
 int i = 0;
 int prior_margin = padding.top;
@@ -936,7 +943,7 @@
 child_height = child.nominalHeight();
 child_y += max(prior_margin, child.margin.top);
 child.tryMoveAndResize(child_x, child_y, 
child_width, child_height, clean);
-child_y += child.contentheight;
+child_y += child_height;
 prior_margin = child.margin.bottom;
 }
 
@@ -1024,7 +1031,7 @@
 if (!child.test(DISPLAY)) {
 continue;
 }
-Log.system.error(this, "Child "+i+": 
"+child.contentheight+", "+child.maxheight+", "+child.test(VSHRINK));
+Log.system.error(this, "Child "+i+": 
"+

[Vexi-svn] SF.net SVN: vexi:[4641] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic/lib/focusborder.t

2014-01-14 Thread clrg
Revision: 4641
  http://sourceforge.net/p/vexi/code/4641
Author:   clrg
Date: 2014-01-14 12:50:06 + (Tue, 14 Jan 2014)
Log Message:
---
Use direct theme path

Modified Paths:
--

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/focusborder.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/focusborder.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/focusborder.t
  2014-01-08 20:00:28 UTC (rev 4640)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/lib/focusborder.t
  2014-01-14 12:50:06 UTC (rev 4641)
@@ -1,6 +1,6 @@
-
+
 
-
 
 Charles Goodwin

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today. 
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4640] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic/bevel.t

2014-01-08 Thread clrg
Revision: 4640
  http://sourceforge.net/p/vexi/code/4640
Author:   clrg
Date: 2014-01-08 20:00:28 + (Wed, 08 Jan 2014)
Log Message:
---
Remove trace

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/bevel.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/bevel.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/bevel.t
2014-01-08 19:16:50 UTC (rev 4639)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/bevel.t
2014-01-08 20:00:28 UTC (rev 4640)
@@ -122,7 +122,6 @@
 newfillbox = $inner;
 break;
 case "tabtop":
-trace(shinecolor+", "+shadecolor);
$outer_nn.fill = "#"+shinecolor;//"#c0c0c0";
$outer_nw.fill = null;
$outer_ww.fill = "#"+shinecolor;//"#c0c0c0";

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4639] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/theme/classic

2014-01-08 Thread clrg
Revision: 4639
  http://sourceforge.net/p/vexi/code/4639
Author:   clrg
Date: 2014-01-08 19:16:50 + (Wed, 08 Jan 2014)
Log Message:
---
Bevel / tab improvement
- tabtop bevel-based rather than image-based
- shadecolor / shinecolor properties for bevel as white/black don't work on 
white/black!

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/bevel.t
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tab.t

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/tabpane.t

Removed Paths:
-

branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/image/tabtop/

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/bevel.t
===
--- 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/bevel.t
2014-01-08 03:08:24 UTC (rev 4638)
+++ 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/theme/classic/bevel.t
2014-01-08 19:16:50 UTC (rev 4639)
@@ -50,78 +50,101 @@
 thisbox.v_content = $content;
 
 var fillbox = $outer;
-var fillval;
 
 thisbox.fill ++= function() { return fillbox.fill; }
 thisbox.fill ++= function(v) { fillbox.fill = v; }
 
-thisbox.form ++= function(v) {
-if (form == v) return;
-cascade = v;
-
+thisbox.shinecolor = "ff";
+thisbox.shadecolor = "00";
+
+const refill = function(newfillbox) {
+// re-fill
+if (newfillbox != fillbox) {
+newfillbox.fill = fillbox.fill;
+fillbox.fill = null;
+fillbox = newfillbox;
+}
+}
+
+const makeBevel = function() {
 // bevel colours
 var outer1, outer2, outer3, inner1, inner2, inner3;
 // might want to adjust fill box
-var nextfillbox = $outer;
+var newfillbox = $outer;
 
-if (v!=null) {
-switch(v) {
+if (form!=null) {
+switch(form) {
 case "thinup":
-outer1 = "#ff";
-outer2 = "#3fff";//"#c0c0c0";
-outer3 = "#6900";//"#7b7d7b";
-nextfillbox = $inner;
+outer1 = "#"+shinecolor;
+outer2 = "#3f"+shinecolor;//"#c0c0c0";
+outer3 = "#69"+shadecolor;//"#7b7d7b";
+newfillbox = $inner;
 break;
 case "thindown":
-outer1 = "#6900";//"#7b7d7b";
-outer2 = "#3fff";//"#c0c0c0";
-outer3 = "#ff";
-nextfillbox = $inner;
+outer1 = "#69"+shadecolor;//"#7b7d7b";
+outer2 = "#3f"+shinecolor;//"#c0c0c0";
+outer3 = "#"+shinecolor;
+newfillbox = $inner;
 break;
 case "up":
-outer1 = "#ff";
-outer2 = "#a600";//"#404040";
-outer3 = "#a600";//"#404040";
-inner1 = "#3fff";//"#c0c0c0";
-inner2 = "#5a00";//"#808080";
-inner3 = "#5a00";//"#808080";
-nextfillbox = $outer;
+outer1 = "#"+shinecolor;
+outer2 = "#a6"+shadecolor;//"#404040";
+outer3 = "#a6"+shadecolor;//"#404040";
+inner1 = "#3f"+shinecolor;//"#c0c0c0";
+inner2 = "#5a"+shadecolor;//"#808080";
+inner3 = "#5a"+shadecolor;//"#808080";
+newfillbox = $outer;
 break;
 case "down":
-outer1 = "#a600";//"#404040";
-outer2 = "#ff";
-outer3 = "#ff";
-inner1 = "#5a00";//"#808080";
-inner2 = "#3fff";//"#c0c0c0";
-inner3 = "#3fff";//"#c0c0c0";
-nextfillbox = $content;
+outer1 = "#a

[Vexi-svn] SF.net SVN: vexi:[4636] branches/vexi3/org.vexi-vexi.widgets/src_main/org/ vexi/lib/layout/grid.t

2014-01-03 Thread clrg
Revision: 4636
  http://sourceforge.net/p/vexi/code/4636
Author:   clrg
Date: 2014-01-03 14:54:31 + (Fri, 03 Jan 2014)
Log Message:
---
Comment out "should not be possible" exception, as it actually does in practise

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/grid.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/grid.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/grid.t
2014-01-02 16:01:33 UTC (rev 4635)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/grid.t
2014-01-03 14:54:31 UTC (rev 4636)
@@ -242,7 +242,9 @@
 }
 if (reachDown == 0) {
 // no rows to be further decreased in size
-throw "Should not be possible";
+//throw "Should not be possible";
+// FIXME: except it actually does in practise
+break;
 }
 var ts = targetSize;
 // else adjust targetRowSize according to target-total 
deficit
@@ -257,7 +259,9 @@
 }
 if (reachUp == 0) {
 // no rows to be further increased in size
-throw "Should not be possible";
+//throw "Should not be possible";
+// FIXME: except it actually does in practise
+break;
 }
 var ts = targetSize;
 // adjust targetRowSize according to target-total 
deficit
@@ -610,8 +614,7 @@
 // removing a child
 var b = $content[trapname];
 if (b) {
-// FIXME: except it actually does in practise
-//if (b[0] == null) throw "Should not happen";
+if (b[0] == null) throw "Should not happen";
 // finish removal
 $content[trapname] = null;
 } else {

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4635] branches/vexi3/org.vexi-vexi.widgets

2014-01-02 Thread clrg
Revision: 4635
  http://sourceforge.net/p/vexi/code/4635
Author:   clrg
Date: 2014-01-02 16:01:33 + (Thu, 02 Jan 2014)
Log Message:
---
Comment out "should not happen" exception, as it actually does in practise

Modified Paths:
--
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/grid.t
branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/vexi/layout/grid/ex1.t
branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/vexi/layout/grid/ex2.t
branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/vexi/layout/grid/ex3.t

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/grid.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/grid.t
2013-12-25 01:44:42 UTC (rev 4634)
+++ branches/vexi3/org.vexi-vexi.widgets/src_main/org/vexi/lib/layout/grid.t
2014-01-02 16:01:33 UTC (rev 4635)
@@ -608,16 +608,15 @@
 
 } else {
 // removing a child
-var c = null;
 var b = $content[trapname];
 if (b) {
-c = b[0];
+// FIXME: except it actually does in practise
+//if (b[0] == null) throw "Should not happen";
+// finish removal
+$content[trapname] = null;
 } else {
-throw "Attempt to get null child from a box";
+throw "Attempt to get null child from a grid";
 }
-if (!c) throw "Should not happen";
-// finish removal
-$content[trapname] = null;
 }
 schedulePack();
 return;

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/vexi/layout/grid/ex1.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/vexi/layout/grid/ex1.t   
2013-12-25 01:44:42 UTC (rev 4634)
+++ branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/vexi/layout/grid/ex1.t   
2014-01-02 16:01:33 UTC (rev 4635)
@@ -1,7 +1,7 @@
 
 
 
+xmlns:lay="vexi.layout" xmlns="poke.vexi.layout.grid">
 
 
 

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/vexi/layout/grid/ex2.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/vexi/layout/grid/ex2.t   
2013-12-25 01:44:42 UTC (rev 4634)
+++ branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/vexi/layout/grid/ex2.t   
2014-01-02 16:01:33 UTC (rev 4635)
@@ -1,7 +1,7 @@
 
 
 
+xmlns:lay="vexi.layout" xmlns="poke.vexi.layout.grid">
 
 
 

Modified: 
branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/vexi/layout/grid/ex3.t
===
--- branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/vexi/layout/grid/ex3.t   
2013-12-25 01:44:42 UTC (rev 4634)
+++ branches/vexi3/org.vexi-vexi.widgets/src_poke/poke/vexi/layout/grid/ex3.t   
2014-01-02 16:01:33 UTC (rev 4635)
@@ -1,7 +1,7 @@
 
 
 
+xmlns:lay="vexi.layout" xmlns="poke.vexi.layout.grid">
 
 
 

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4634] branches/vexi4c/org.vexi-core.main/src/main

2013-12-24 Thread clrg
Revision: 4634
  http://sourceforge.net/p/vexi/code/4634
Author:   clrg
Date: 2013-12-25 01:44:42 + (Wed, 25 Dec 2013)
Log Message:
---


Modified Paths:
--
branches/vexi4c/org.vexi-core.main/src/main/java/org/vexi/core/Desktop.java
branches/vexi4c/org.vexi-core.main/src/main/jpp/org/vexi/ui/Box.jpp

Modified: 
branches/vexi4c/org.vexi-core.main/src/main/java/org/vexi/core/Desktop.java
===
--- branches/vexi4c/org.vexi-core.main/src/main/java/org/vexi/core/Desktop.java 
2013-12-24 03:19:36 UTC (rev 4633)
+++ branches/vexi4c/org.vexi-core.main/src/main/java/org/vexi/core/Desktop.java 
2013-12-25 01:44:42 UTC (rev 4634)
@@ -18,13 +18,6 @@
static private Desktop singleton;
static public Desktop get() throws JSExn {
if (singleton==null) {
-   try {
-   Class.forName("java.awt.Desktop");
-   } catch (ClassNotFoundException e) {
-   }
-   if (!java.awt.Desktop.isDesktopSupported()) {
-   throw new JSExn("Desktop not supported");
-   }
singleton = new Desktop();
}
return singleton;

Modified: branches/vexi4c/org.vexi-core.main/src/main/jpp/org/vexi/ui/Box.jpp
===
--- branches/vexi4c/org.vexi-core.main/src/main/jpp/org/vexi/ui/Box.jpp 
2013-12-24 03:19:36 UTC (rev 4633)
+++ branches/vexi4c/org.vexi-core.main/src/main/jpp/org/vexi/ui/Box.jpp 
2013-12-25 01:44:42 UTC (rev 4634)
@@ -962,8 +962,8 @@
 if (!child.test(DISPLAY)) {
 continue;
 }
+num_active++;
 final int child_nomheight = 
child.nominalHeight();
-num_active++;
 if (child.test(VSHRINK) || 
child.maxheight==child_nomheight) {
 num_passive++;
 totalsize += child_nomheight;
@@ -1046,10 +1046,11 @@
 child_width = child.getTargetWidth(width);
 child_x = child.getTargetX(width, child_width, 
left, right);
 // height, y
-totalsize += (float)max(prior_margin, 
child.margin.left);
+totalsize += (float)max(prior_margin, 
child.margin.top);
 child_y = offset_y + (int)(totalsize+0.5);
-if (child.test(VSHRINK) || child.contentheight > 
targetsize) {
-child_height = child.contentheight;
+final int child_nomheight = child.nominalHeight();
+if (child.test(VSHRINK) || child_nomheight > 
targetsize) {
+child_height = child_nomheight;
 totalsize += (float)child_height;
 } else if (targetsize > child.maxheight) {
 child_height = child.maxheight;
@@ -1060,7 +1061,7 @@
 totalsize += targetsize;
 }
 child.tryMoveAndResize(child_x, child_y, 
child_width, child_height, clean);
-prior_margin = child.margin.right;
+prior_margin = child.margin.bottom;
 }
 }
 }

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4633] branches/vexi4c/org.vexi-core.main/src/main

2013-12-23 Thread clrg
Revision: 4633
  http://sourceforge.net/p/vexi/code/4633
Author:   clrg
Date: 2013-12-24 03:19:36 + (Tue, 24 Dec 2013)
Log Message:
---


Modified Paths:
--

branches/vexi4c/org.vexi-core.main/src/main/java/org/vexi/core/Resources.java
branches/vexi4c/org.vexi-core.main/src/main/java/org/vexi/core/Surface.java

branches/vexi4c/org.vexi-core.main/src/main/java/org/vexi/core/VMLBuilder.java
branches/vexi4c/org.vexi-core.main/src/main/java/org/vexi/plat/JDesktop.java

branches/vexi4c/org.vexi-core.main/src/main/java/org/vexi/plat/JPlatform.java
branches/vexi4c/org.vexi-core.main/src/main/java/org/vexi/plat/Platform.java
branches/vexi4c/org.vexi-core.main/src/main/jpp/org/vexi/core/Vexi.jpp
branches/vexi4c/org.vexi-core.main/src/main/jpp/org/vexi/ui/Box.jpp

Added Paths:
---
branches/vexi4c/org.vexi-core.main/src/main/java/org/vexi/core/Desktop.java

Added: 
branches/vexi4c/org.vexi-core.main/src/main/java/org/vexi/core/Desktop.java
===
--- branches/vexi4c/org.vexi-core.main/src/main/java/org/vexi/core/Desktop.java 
(rev 0)
+++ branches/vexi4c/org.vexi-core.main/src/main/java/org/vexi/core/Desktop.java 
2013-12-24 03:19:36 UTC (rev 4633)
@@ -0,0 +1,90 @@
+// Copyright (c) 2013 the Contributors, as shown in the revision logs.
+// Licensed under the GNU General Public License version 2 ("the License").
+// You may not use this file except in compliance with the License.
+
+package org.vexi.core;
+
+import java.io.File;
+import java.io.IOException;
+import java.net.URI;
+
+import org.ibex.js.Fountain;
+import org.ibex.js.JS;
+import org.ibex.js.JSExn;
+import org.ibex.js.JSU;
+import org.vexi.plat.Platform;
+
+public class Desktop extends JS.Immutable {
+   static private Desktop singleton;
+   static public Desktop get() throws JSExn {
+   if (singleton==null) {
+   try {
+   Class.forName("java.awt.Desktop");
+   } catch (ClassNotFoundException e) {
+   }
+   if (!java.awt.Desktop.isDesktopSupported()) {
+   throw new JSExn("Desktop not supported");
+   }
+   singleton = new Desktop();
+   }
+   return singleton;
+   }
+   final Platform.Desktop desktop;
+   public Desktop() throws JSExn { desktop = Platform.getDesktop(); }
+   
+   public JS get(JS jskey) throws JSExn {
+   String key = JSU.toString(jskey);
+   if ("browse".equals(key)) return METHOD;
+   if ("edit".equals(key)) return METHOD;
+   if ("email".equals(key)) return METHOD;
+   if ("open".equals(key)) return METHOD;
+   if ("print".equals(key)) return METHOD;
+   return super.get(jskey);
+   }
+   
+   public JS callMethod(JS this_, JS jsmethod, JS[] args) throws JSExn {
+   String method = JSU.toString(jsmethod);
+   if (args.length==1) {
+   JS arg = args[0];
+   try {
+   if ("browse".equals(method)) {
+   desktop.browse(expectURI(arg));
+   return null;
+   }
+   if ("email".equals(method)) {
+   desktop.mail(expectURI(arg));
+   return null;
+   }
+   if ("edit".equals(method)) {
+   desktop.edit(expectFile(arg));
+   return null;
+   }
+   if ("open".equals(method)) {
+   desktop.open(expectFile(arg));
+   return null;
+   }
+   if ("print".equals(method)) {
+   desktop.print(expectFile(arg));
+   return null;
+   }
+   } catch(IOException e) {
+   throw new JSExn("Could not run method: 
"+method, e);
+   }
+   }
+   return super.get(jsmethod);
+   }
+   
+   static private URI expectURI(JS arg) throws JSExn {
+   return URI.create(JSU.toString(arg));
+   }
+   
+   static private File expectFile(JS arg) throws JSExn {
+   Fountain f = JSU.getFountain(arg)

[Vexi-svn] SF.net SVN: vexi:[4632] branches/vexi4c/org.vexi-core.main/src/main/jpp/org /vexi/ui/Box.jpp

2013-12-23 Thread clrg
Revision: 4632
  http://sourceforge.net/p/vexi/code/4632
Author:   clrg
Date: 2013-12-24 02:20:56 + (Tue, 24 Dec 2013)
Log Message:
---


Modified Paths:
--
branches/vexi4c/org.vexi-core.main/src/main/jpp/org/vexi/ui/Box.jpp

Modified: branches/vexi4c/org.vexi-core.main/src/main/jpp/org/vexi/ui/Box.jpp
===
--- branches/vexi4c/org.vexi-core.main/src/main/jpp/org/vexi/ui/Box.jpp 
2013-12-23 03:16:07 UTC (rev 4631)
+++ branches/vexi4c/org.vexi-core.main/src/main/jpp/org/vexi/ui/Box.jpp 
2013-12-24 02:20:56 UTC (rev 4632)
@@ -216,7 +216,7 @@
 
 // useful debugging
 //private final int depth() { return parent==null ? 0 : parent.depth()+1; }
-private final String name() { try { return get(JSU.S("name")).toString(); 
} catch (JSExn e) { throw new Error(); } }
+private final String name() { try { JS str = get(JSU.S("name")); return 
str==null?"null":str.toString(); } catch (JSExn e) { throw new Error(); } }
 
 private static final int min(int a, int b) { return (ab) ? a : b; }
@@ -798,7 +798,8 @@
 // our layout lies somewhere between the min and max 
size,
 // loop over the children attempting to set their 
width to
 // targetsize and adjust until it meets the parent 
width
-float targetsize = (float)(width - box_spacing) / 
(float)treeSize();
+int packingspace = width - box_spacing;
+float targetsize = (float)(packingspace) / 
(float)treeSize();
 float totalsize = 0;
 for (int j=0; j<100; j++) {
 totalsize = 0; 
@@ -841,27 +842,27 @@
 // test to see if targetsize produces a solution 
that rounds
 // to match the width, adjusting appropriately if 
it does not
 int totalsize_int = (int)(totalsize+0.5);
-if (totalsize_int - box_spacing > width) {
+if (totalsize_int > packingspace) {
 if (num_nolimit>0) {
-targetsize -= 
(totalsize-(float)width)/(float)num_nolimit;
+targetsize -= 
(totalsize-(float)packingspace)/(float)num_nolimit;
 } else {
 if (num_minsize+num_passive==num_active) {
 // no solution required - available 
min-sizes over-consume width
 targetsize = width;
 break;
 }
-targetsize = (float)max_maxsize - 
(totalsize-(float)width)/(float)num_maxsize;
+targetsize = (float)max_maxsize - 
(totalsize-(float)packingspace)/(float)num_maxsize;
 }
-} else if (totalsize_int - box_spacing < width) {
+} else if (totalsize_int < packingspace) {
 if (num_nolimit>0) {
-targetsize += 
((float)width-totalsize)/(float)num_nolimit;
+targetsize += 
((float)packingspace-totalsize)/(float)num_nolimit;
 } else {
 if (num_maxsize+num_passive==num_active) {
 // no solution required - available 
max-sizes do not consume width
 targetsize = width;
 break;
 }
-targetsize = (float)min_minsize + 
((float)width-totalsize)/(float)num_minsize;
+targetsize = (float)min_minsize + 
((float)packingspace-totalsize)/(float)num_minsize;
 }
 } else {
 break;
@@ -944,7 +945,8 @@
 // our layout lies somewhere between the min and max 
size,
 // loop over the children attempting to set their 
width to
 // targetsize and adjust until it meets the parent 
width
-float targetsize = (float)(height - box_spacing) / 
(float)treeSize();
+   int packingspace = height - box_spacing;
+float targetsize = (float)packingspace / 
(float)treeSize();
 float totalsize = 0;
 for (int j=0; j<100; j++) {
totalsize = 0;
@@ -987,27 +989,27 @@
   

[Vexi-svn] SF.net SVN: vexi:[4631] branches/vexi4c/org.vexi-core.main/src/main/jpp/org /vexi/ui/Box.jpp

2013-12-22 Thread clrg
Revision: 4631
  http://sourceforge.net/p/vexi/code/4631
Author:   clrg
Date: 2013-12-23 03:16:07 + (Mon, 23 Dec 2013)
Log Message:
---
Layout fixes

Modified Paths:
--
branches/vexi4c/org.vexi-core.main/src/main/jpp/org/vexi/ui/Box.jpp

Modified: branches/vexi4c/org.vexi-core.main/src/main/jpp/org/vexi/ui/Box.jpp
===
--- branches/vexi4c/org.vexi-core.main/src/main/jpp/org/vexi/ui/Box.jpp 
2013-12-22 19:32:32 UTC (rev 4630)
+++ branches/vexi4c/org.vexi-core.main/src/main/jpp/org/vexi/ui/Box.jpp 
2013-12-23 03:16:07 UTC (rev 4631)
@@ -44,7 +44,7 @@
  * property on the box.
  * 
  * Packed Layout
- * In packed layout boxes are positioned next to eachother in the direction 
of the parents
+ * In packed layout boxes are positioned next to each other in the 
direction of the parents
  * orient property. The parent is constrained to the combined size of the 
packed children in the
  * orient direction and to the maximum size of its children in the non-orient 
direction.
  * 
@@ -205,17 +205,18 @@
 }
 }
 
-private static final Box getRoot(Box b) { return b.parent == null ? b : 
getRoot(b.parent); }
+private final Box getRoot() { return parent == null ? this : 
parent.getRoot(); }
 
-private static final int getXInParent(Box b) { Box p = b.parent; return 
p==null ? 0 : ((p.test(PACK) || p.test(ALIGN_LEFT)) ? b.x : 
b.x+((p.width-b.width)/(p.test(ALIGN_RIGHT)?1:2))); }
-private static final int getYInParent(Box b) { Box p = b.parent; return 
p==null ? 0 : ((p.test(PACK) || p.test(ALIGN_TOP)) ? b.y : 
b.y+((p.height-b.height)/(p.test(ALIGN_BOTTOM)?1:2))); }
-private static final int globalToLocalX(Box b, int x) { return 
b.parent==null ? x : globalToLocalX(b.parent, x - getXInParent(b)); }
-private static final int globalToLocalY(Box b, int y) { return 
b.parent==null ? y : globalToLocalY(b.parent, y - getYInParent(b)); }
-private static final int localToGlobalX(Box b, int x) { return 
b.parent==null ? x : localToGlobalX(b.parent, x + getXInParent(b)); }
-private static final int localToGlobalY(Box b, int y) { return 
b.parent==null ? y : localToGlobalY(b.parent, y + getYInParent(b)); }
+private final int getXInParent() { return parent==null ? 0 : 
((parent.test(PACK) || parent.test(ALIGN_LEFT)) ? x : 
x+((parent.width-width)/(parent.test(ALIGN_RIGHT)?1:2))); }
+private final int getYInParent() { return parent==null ? 0 : 
((parent.test(PACK) || parent.test(ALIGN_TOP)) ? y : 
y+((parent.height-height)/(parent.test(ALIGN_BOTTOM)?1:2))); }
+private final int globalToLocalX(int x) { return parent==null ? x : 
parent.globalToLocalX(x - getXInParent()); }
+private final int globalToLocalY(int y) { return parent==null ? y : 
parent.globalToLocalY(y - getYInParent()); }
+private final int localToGlobalX(int x) { return parent==null ? x : 
parent.localToGlobalX(x + getXInParent()); }
+private final int localToGlobalY(int y) { return parent==null ? y : 
parent.localToGlobalY(y + getYInParent()); }
 
-// useful debugging reflow problems
-//private static final int depth(Box b) { return b.parent==null ? 0 : 
depth(b.parent)+1; }
+// useful debugging
+//private final int depth() { return parent==null ? 0 : parent.depth()+1; }
+private final String name() { try { return get(JSU.S("name")).toString(); 
} catch (JSExn e) { throw new Error(); } }
 
 private static final int min(int a, int b) { return (ab) ? a : b; }
@@ -223,7 +224,6 @@
 private final boolean inside(int x, int y) { return test(DISPLAY) && x >= 
0 && y >= 0 && x < width && y < height; }
 
 // TRAPFLAGS helper functions
-private final void setclear(short mask, boolean set) { if (set) set(mask); 
else clear(mask); }
 private final void set(short mask) { trapflags |= mask; }
 private final void clear(short mask) { trapflags &= ~mask; }
 private final boolean test(short mask) { return ((trapflags & mask) == 
mask); }
@@ -235,7 +235,7 @@
 private final boolean test(int mask) { return ((flags & mask) == mask); }
 
 public final int getIntFillcolor() { return visual.fillcolor; }
-public final Surface getSurface() { return Surface.fromBox(getRoot(this)); 
}
+public final Surface getSurface() { return Surface.fromBox(getRoot()); }
 
 /** for Surface to set the x/y properties of the root box */
 public final void setRootPosition(int x, int y) throws JSExn {
@@ -374,6 +374,10 @@
 protected int contentheight = 0;
 private Insets margin = Insets.ZERO;
 private Insets padding = Insets.ZERO;
+
+// this is a calculated total of the gaps between packed children
+// TODO: put into a place() loop or another alternative mechanism
+private int box_spacing = 0;
 
 
 // Instance Methods 
///

[Vexi-svn] SF.net SVN: vexi:[4630] trunk/org.vexi-build.jpp/src/poke/java/dev/ PreprocessVexiWorkspace.java

2013-12-22 Thread clrg
Revision: 4630
  http://sourceforge.net/p/vexi/code/4630
Author:   clrg
Date: 2013-12-22 19:32:32 + (Sun, 22 Dec 2013)
Log Message:
---


Modified Paths:
--
trunk/org.vexi-build.jpp/src/poke/java/dev/PreprocessVexiWorkspace.java

Modified: 
trunk/org.vexi-build.jpp/src/poke/java/dev/PreprocessVexiWorkspace.java
===
--- trunk/org.vexi-build.jpp/src/poke/java/dev/PreprocessVexiWorkspace.java 
2013-12-22 00:30:55 UTC (rev 4629)
+++ trunk/org.vexi-build.jpp/src/poke/java/dev/PreprocessVexiWorkspace.java 
2013-12-22 19:32:32 UTC (rev 4630)
@@ -13,14 +13,20 @@
static ILogger logger = Logger.newRootLogger();

static public void main(String[] args) {
-   preprocessProject("org.vexi-library.net");
-   preprocessProject("org.vexi-library.js");
-   preprocessProject("org.vexi-core.main");
+   if (args.length == 0) {
+   preprocessProject("org.vexi-library.net");
+   preprocessProject("org.vexi-library.js");
+   preprocessProject("org.vexi-core.main");
+   } else {
+   for (String s : args) {
+   preprocessProject(s);
+   }
+   }
}

static private void preprocessProject(String projectName){
File projectDir = new File("../"+projectName);
-   if(!projectDir.isDirectory()) return;
+   if (!projectDir.isDirectory()) return;

preprocessScope(projectDir, "main");
preprocessScope(projectDir, "poke");
@@ -31,7 +37,7 @@
File sourceDir = new File(projectDir, "src/"+scope+"/jpp");
File genDir =new File(projectDir, "gen/"+scope+"/java");
try {
-   PreprocessorBuilder.preprocess(logger, genDir, new 
HashMap(), Arrays.asList(sourceDir));
+   PreprocessorBuilder.preprocess(logger, genDir, new 
HashMap(), Arrays.asList(sourceDir));
} catch (Exception e) {
e.printStackTrace(System.err);
}

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4628] branches/vexi4c/org.vexi-core.main/src/test/java/ test/core/linenumbering/TestLineNumbering.java

2013-12-21 Thread clrg
Revision: 4628
  http://sourceforge.net/p/vexi/code/4628
Author:   clrg
Date: 2013-12-22 00:30:47 + (Sun, 22 Dec 2013)
Log Message:
---
Fix tests for paths with spaces on Windows

Modified Paths:
--

branches/vexi4c/org.vexi-core.main/src/test/java/test/core/linenumbering/TestLineNumbering.java

Modified: 
branches/vexi4c/org.vexi-core.main/src/test/java/test/core/linenumbering/TestLineNumbering.java
===
--- 
branches/vexi4c/org.vexi-core.main/src/test/java/test/core/linenumbering/TestLineNumbering.java
 2013-12-21 21:55:28 UTC (rev 4627)
+++ 
branches/vexi4c/org.vexi-core.main/src/test/java/test/core/linenumbering/TestLineNumbering.java
 2013-12-22 00:30:47 UTC (rev 4628)
@@ -7,6 +7,7 @@
 import java.io.FileOutputStream;
 import java.io.InputStreamReader;
 import java.io.OutputStreamWriter;
+import java.net.URISyntaxException;
 
 import junit.framework.Test;
 import junit.framework.TestCase;
@@ -34,20 +35,25 @@
 public TestLineNumbering() {
super(TestLineNumbering.class);

-   File resourceDir = new 
File(TestLineNumbering.class.getResource(".").getPath());
+   File resourceDir = null;
+   try {
+   resourceDir = new 
File(TestLineNumbering.class.getResource(".").toURI().getSchemeSpecificPart());
+   } catch (URISyntaxException e) {
+   e.printStackTrace();
+   }
tempDir = Util.createTmpDir(TestLineNumbering.class);

File[] toPreprocess = resourceDir.listFiles();
-   for(int i=0; ihttp://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


[Vexi-svn] SF.net SVN: vexi:[4629] branches/vexi3/org.vexi-library.js/src/poke/java/ org/ibex/js/JSTestUtil.java

2013-12-21 Thread clrg
Revision: 4629
  http://sourceforge.net/p/vexi/code/4629
Author:   clrg
Date: 2013-12-22 00:30:55 + (Sun, 22 Dec 2013)
Log Message:
---
Fix tests for paths with spaces on Windows

Modified Paths:
--
branches/vexi3/org.vexi-library.js/src/poke/java/org/ibex/js/JSTestUtil.java

Modified: 
branches/vexi3/org.vexi-library.js/src/poke/java/org/ibex/js/JSTestUtil.java
===
--- 
branches/vexi3/org.vexi-library.js/src/poke/java/org/ibex/js/JSTestUtil.java
2013-12-22 00:30:47 UTC (rev 4628)
+++ 
branches/vexi3/org.vexi-library.js/src/poke/java/org/ibex/js/JSTestUtil.java
2013-12-22 00:30:55 UTC (rev 4629)
@@ -4,6 +4,7 @@
 import java.io.FilenameFilter;
 import java.lang.reflect.Method;
 import java.net.URISyntaxException;
+import java.net.URL;
 import java.util.HashMap;
 import java.util.LinkedList;
 import java.util.Map;
@@ -85,10 +86,16 @@


static public TestSuite buildScriptSuite(Object obj){
-   String packige = obj.getClass().getPackage().getName();
+   String packageName = obj.getClass().getPackage().getName();
TestSuite suite = (obj instanceof TestSuite)? (TestSuite)obj: 
JUnitUtil.newTestSuite((obj.getClass())); 
-   //String packige, TestSuite suite, File dir){
-   buildTestSuite(packige, suite, new 
File(obj.getClass().getResource(".").getPath()));
+   //String packageName, TestSuite suite, File dir) {
+   try {
+   String path = 
obj.getClass().getResource(".").toURI().getSchemeSpecificPart();
+   buildTestSuite(packageName, suite,
+   new File(path));
+   } catch (URISyntaxException e) {
+   e.printStackTrace();
+   }
return suite;
}
 

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


--
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
___
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn


  1   2   3   4   5   6   7   8   9   10   >