Revision: 4255 http://vexi.svn.sourceforge.net/vexi/?rev=4255&view=rev Author: clrg Date: 2011-09-23 00:11:41 +0000 (Fri, 23 Sep 2011) Log Message: ----------- Enhancements to make viewfont useful
Modified Paths: -------------- trunk/org.vexi-vapp.viewfont/src_main/org/vexi/fontviewer/main.t Modified: trunk/org.vexi-vapp.viewfont/src_main/org/vexi/fontviewer/main.t =================================================================== --- trunk/org.vexi-vapp.viewfont/src_main/org/vexi/fontviewer/main.t 2011-09-22 23:44:53 UTC (rev 4254) +++ trunk/org.vexi-vapp.viewfont/src_main/org/vexi/fontviewer/main.t 2011-09-23 00:11:41 UTC (rev 4255) @@ -4,10 +4,11 @@ <surface /> <ui:box framewidth="500" frameheight="500" orient="vertical" frametitle="Vexi Font Viewer"> <ui:box shrink="true"> - <ui:box text=" Font:" shrink="true" /> + <ui:box text=" Font" shrink="true" /> <option id="font" type="font" minwidth="200"> <item text="Vera (default)" selected="true">thisbox.value=vexi.ui.font.sansserif;</item> </option> + <ui:box text=" Fontsize" shrink="true" /> <spin id="fontsize" type="fontsize" minvalue="5" maxvalue="200" value="24" /> </ui:box> <bevel form="down"> @@ -20,6 +21,12 @@ </ui:box> </ui:box> </scrollpane> + <ui:box orient="vertical"> + <bevel form="thinup"> + <label id="label" margin="5" text="The quick brown fox jumps over the lazy dog" /> + </bevel> + <textarea id="text" /> + </ui:box> </bevel> thisbox.charsize = 32; @@ -44,34 +51,46 @@ c.fontsize = $fontsize.value.number; c.charsize = charsize; } + $label.font = $font.value; + $label.fontsize = $fontsize.value.number; + $text.font = $font.value; + $text.fontsize = $fontsize.value.number; } $font.value ++= setToType; $fontsize.value ++= setToType; // populate fonts - var p = vexi.params["fontdir"]; - if (p == null) throw "Must specify a directory to search for fonts"; - // get p as an array - if (p.indexOf('/')>=0) p = p.split('/'); else - if (p.indexOf('#')>=0) p = p.split('#'); else - if (p.indexOf('.')>=0) p = p.split('.'); - if (typeof(p)!="array") p = [p]; - // get p as a resource) - var r = vexi[""]; - vexi.trace(p); - vexi.trace(p.length); - for (var i,sub in p) { - if (sub) r = r[sub]; + var fontdir = vexi.params["fontdir"]; + if (fontdir == null) throw "Must specify a directory to search for fonts"; + + // get font location resource + var loc; + if (fontdir.indexOf('/')>=0) loc = fontdir.split('/'); else + if (fontdir.indexOf('#')>=0) loc = fontdir.split('#'); else + if (fontdir.indexOf('.')>=0) loc = fontdir.split('.'); + if (typeof(loc)!="array") loc = [loc]; + + // get res as a stream + var res = vexi[""]; + for (var i,sub in loc) { + if (sub) res = res[sub]; } - // load fonts from r - for (var k in r) { + + // build list of fonts for sorting + var fontlist = []; + for (var k in res) + fontlist.push(k); + fontlist.sort(); + + // load fonts in order from res + for (var i,name in fontlist) { // skip irrelevant files - if (k.toLowerCase().indexOf(".ttf")==-1) continue; + if (name.toLowerCase().indexOf(".ttf")==-1) continue; // add item to $font option widget var f = new .item(); - f.text = k; - f.value = r[k]; + f.text = name; + f.value = res[name]; $font.add(f); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ------------------------------------------------------------------------------ All of the data generated in your IT infrastructure is seriously valuable. Why? It contains a definitive record of application performance, security threats, fraudulent activity, and more. Splunk takes this data and makes sense of it. IT sense. And common sense. http://p.sf.net/sfu/splunk-d2dcopy2 _______________________________________________ Vexi-svn mailing list Vexi-svn@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/vexi-svn