Back to Dell Inspiron 700m

Gentoo August 31st, 2006

Thanks to my wife’s generosity, I join 700m club again. The data migration is on the progress, it might take a whole business day to setup the working environment.

700m does not have Bluetooth support, no IrDA, but it is sleek and lightweight, compared to current Dell D600. And most of all, I could continue to maintain this HOWTO.

Dojo 2D demo: Trend

Web August 29th, 2006

This is probably the very first demo application for Dojo 2D. Due to the requirement of Dojo toolkit, the demo is placed in one dedicated page. You can access it from here.

Dynamic Trend fetches Google’s stock price as the monitored data, it is better to checkout the demo when NYSE is still open, i.e 8:00 AM to 4:00 PM EST.

UPDATE: for unknown reason, MSIE does not work if the demo is integrated into the Wordpress framework. Here is the raw HTML document.

  • Using dojo.io.bind instead of XMLHttpRequest, MSIE works
  • Add wrapup support
  • Fix some small bugs

Software Engineering nightmare

Development, Misc August 22nd, 2006

Software engineering nightmare 1

Software engineering nightmare 2

Software engineering nightmare 3

Software engineering nightmare 4

Software engineering nightmare 5

Here is the big picture.

All roads lead to Roma

Web August 21st, 2006

Well, the Roma is a little different in different aspectives.

VML assume the gradient starts/ends from 0%/100%, so VML render discard the start/end information; the gradient vector is mimiced by the rotation.

Here are the screenshots of linear gradients on VML(left) and SVG(right):

1. Two stops: { 5%, #F60 }, { 95%, #FF6 }
with gradient vector: {x1:0, y1:0, x2:75, y2:50}

Linear gradient with two stops


The differences are quite subtle.

2. Three stops: { 5%, #F60 }, { 55%, #FAF }, { 95%, #FF6 }
with gradient vector: {x1:0, y1:0, x2:75, y2:50}

Linear gradient with three stops


The intermediate stop in VML plays a more important role compared with SVG.

Stroke bug in Dojo2D – 2

Web August 17th, 2006

The VML expect the users to apply CSS to control the appearence and behavior of the shapes, so if one attribute is missing, VML would take the default CSS style. The default stroke style in VML is single black line like this. To make it compatible to SVG, we need to explicitly setup the stroke style in the initialization:

setRawNode: function(rawNode){
        rawNode.arcsize = 0;
        rawNode.stroke = 1;
        rawNode.strokecolor = "rgb(255,255,255)";
        rawNode.strokeweight = 0.001;
        rawNode.stroke.opacity = 0.001;
        this.rawNode = rawNode;
        },

The width and opacity of the stroke are setup to 0+delta, in case 0 has special value in Windows. However, there is an annoying solid while stroke line around the shape like this:

Solid white stroke


UPDATE: The stroke bug has been fixed by Eugene:

1) Making no stroke by default.

VML shape has two boolean flags (”filled” and “stroked”), which govern,
if correspondent fill and stroke are used. By default they are on
(==true) using white solid fill, and black cosmetic (==1px) stroke. The
fix was to set “filled” and “stroked” to “false”.

He also fixed the funny offset and transformation bug as well, Eugene rocks!