WTS Lightning Returns Ultimate Box


Condition: Brand new (MISB)

PM Me for the price or
pm me the price you offer. Thanks

Can anyone tell me does this application run inside virtual box at
all???
http://www.ubcd4win.com/
Ubuntu
When I plug my Dr. Dre Beats into the output chord it comes through
the laptop speakers and the headphones. I just want it to come through
the headphones? Any way I can do this on Linux Mint? Thanks.
By
the way, I realize this is Ubuntu Forums, and not Linux Mint forums,
but their website is down right now.
Ubuntu
How do I go upon dual booting this along with Windows 7? I got it on
my laptop but that is only because I originally had Ubuntu 11.10 on
there, so it just re wrote over that. When I tried to install it on
my brothers laptop the only options that come up are "Delete
Windows 7, install Ultimate Edition 3.0", and "something
else". << (That is literally what it says). I cannot
format his hard drive because he will go nuts, lol. He has been a
long time Windows user, I plan on teaching him how to use Linux and
everything about it. I absolutely have to keep Windows on there just
incase he does not like this. Thanks.
Ubuntu
This is marked as 'solved' as the post contains a work-around for 'not
so technical' users; but IMHO a fix should be put into the Ubuntu
software centre / auto-update process.
PC is running Ubuntu
11.10; with (originally) Thunderbird 14 & Lightning 1.6 installed
& functioning (do not have precise details of the original
installation process used); used mainly by 1 user on the machine with
sudoer rights (a.n.other user has the 'admin role', but the TB user is
aware of the admin password).
The Ubuntu auto-update pushed out
early October upgraded TB to v15; requiring in turn an upgrade of
Lightning to v 1.7, as TB v15 add-on-manager correctly reported that
Ligh
Ubuntu

sorry my code is a bit lengthy, I've put it below. You can see it
in action href="http://prooffreader.site44.com/nevermove/so201412/example.html"
rel="nofollow">on this static page.



This problem occurs in both Chrome and Firefox, and I'm using
Raphael 2.1.2.



The problem is my popup text objects are not returning their true
width. There's a text object, boxT[i], and
then a rect object, boxB[i], whose width is
determined by the .getBBox() method on boxT[i].



Example:



Example of the<br />
problem



The true width of the text element is 386, as can be seen here by
drilling down on .node:



true width<br />
image



However, not only does .getBBox() return a shorter width of ~362,
calling console.log on el.node.clientWidth also returns 362, which
seems to contradict what calling console.log on the element and then
drilling down shows.



wrong width<br />
console log



Any help is appreciated, I've found a few things on StackOverflow
and elsewhere that seem to be similar problems, but they either looked
a little different or I didn't quite get the solution.



Here's the whole code. Sorry, the data is inline and I'm not used
to JavaScript styles; the part that draws these boxes is right at the
end:



//////////
// data ///////////////////////////////////////////////////////////
//////////

var data = {'cumul': [1200000, 2600000, 3276000, 3876000, 7776000,
47776000, 49776000, 51076000, 53076000, 70857462, 71430462, 72430462,
98930462, 100230462, 101160462, 101882462, 102532462, 103332462,
203332462, 206232462, 207232462, 215732462, 216599462, 217399462,
218399462, 220499462, 221199462, 238199462, 238899462, 243899462,
244706462, 245706462, 246237862, 246810862, 248310862, 249510862,
250534071, 251134071, 254434071, 255234071, 256534071, 257284071,
270284071, 270798401, 271798401, 276916200, 279916200, 280794200,
281444200, 282244200, 289244200, 290024200, 290725200, 291379200,
297837220, 298837220, 299837220, 349837220, 350837220, 356837220,
556837220, 557566220, 558416220, 559276220, 560116220, 560890943,
705890943, 706758943, 782758943, 838758943, 839608943, 840408943],
'daycode': [56, 67, 118, 122, 157, 167, 350, 426, 426, 432, 454, 503,
507, 516, 530, 564, 583, 711, 747, 830, 896, 914, 931, 1001, 1176,
1203, 1205, 1310, 1406, 1467, 1512, 1574, 1585, 1666, 1783, 1840,
1840, 1881, 1911, 2027, 2172, 2175, 2177, 2280, 2348, 2464, 2546,
2580, 2583, 2645, 2646, 2653, 2689, 2702, 2714, 2804, 2877, 2984,
3051, 3094, 3216, 3217, 3230, 3243, 3262, 3344, 3428, 3482, 3527,
3532, 3570, 3601], 'actualdata': [1200000, 1400000, 676000, 600000,
3900000, 40000000, 2000000, 1300000, 2000000, 17781462, 573000,
1000000, 26500000, 1300000, 930000, 722000, 650000, 800000, 100000000,
2900000, 1000000, 8500000, 867000, 800000, 1000000, 2100000, 700000,
17000000, 700000, 5000000, 807000, 1000000, 531400, 573000, 1500000,
1200000, 1023209, 600000, 3300000, 800000, 1300000, 750000, 13000000,
514330, 1000000, 5117799, 3000000, 878000, 650000, 800000, 7000000,
780000, 701000, 654000, 6458020, 1000000, 1000000, 50000000, 1000000,
6000000, 200000000, 729000, 850000, 860000, 840000, 774723, 145000000,
868000, 76000000, 56000000, 850000, 800000]},
maxes = {'cumul': 1000000000, 'daycode': 3601, 'actualdata':
200000000};
//manually update maxes.cumul for x axis

var spacingOffsets = [0, 0, 0, 0, 0, 0, 0, -5, 5, 10,
0, -1, 1, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, -2, 2, 0, 0, 0,
0, 0, 0, 0, 0, -5, 5, 0, 0, 0,
-4, 0, 4, 0, 0, 0, 0, -3, 3, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-8, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0]; // manually set, moves circle up or down number of days

var xOffsPix = [30, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0]; // manually set, moves small description box left or right
number of pixels

box_angles = [25, 335, 25, 335, 50, 325, 0, 50, 35, 330,
310, 50, 10, 330, 335, 15, 344, 0, 0, 0,
20, 0, 340, 0, 0, 30, 330, 0, 0, 0,
0, 30, 330, 0, 0, 45, 315, 350, 0, 0,
130, 35, 320, 0, 0, 0, 0, 30, 350, 160,
0, 200, 170, 0, 190, 0, 0, 0, 0, 0,
155, 0, 190, 190, 190, 180, 180, 180, 155, 205,
180, 180]; // manually set

realday = [];
for (i=0; i<spacingOffsets.length; i++) {
realday[i] = data.daycode[i] + spacingOffsets[i];
}; // day + offset

var money = {'daycode': [0, 16, 32, 48, 65, 81, 98, 114, 131, 147,
163, 179, 195, 210, 225, 241, 256, 272, 288, 304, 320, 337, 353, 369,
385, 401, 417, 433, 447, 462, 478, 494, 506, 522, 538, 553, 569, 585,
601, 617, 633, 647, 662, 678, 694, 710, 726, 742, 758, 773, 789, 805,
821, 837, 853, 870, 887, 904, 921, 937, 953, 969, 985, 1001, 1016,
1032, 1048, 1065, 1081, 1098, 1115, 1131, 1147, 1163, 1179, 1195,
1212, 1228, 1245, 1262, 1278, 1294, 1310, 1326, 1341, 1357, 1373,
1389, 1405, 1421, 1437, 1453, 1469, 1484, 1501, 1517, 1534, 1550,
1566, 1582, 1598, 1613, 1629, 1644, 1659, 1676, 1694, 1711, 1728,
1744, 1760, 1774, 1789, 1805, 1821, 1838, 1853, 1868, 1883, 1899,
1916, 1932, 1949, 1966, 1982, 1999, 2015, 2032, 2049, 2067, 2084,
2101, 2119, 2135, 2148, 2162, 2179, 2196, 2213, 2231, 2248, 2264,
2280, 2296, 2311, 2327, 2343, 2359, 2375, 2391, 2405, 2419, 2434,
2450, 2466, 2482, 2497, 2513, 2529, 2545, 2560, 2576, 2592, 2609,
2624, 2640, 2655, 2669, 2687, 2704, 2721, 2737, 2753, 2769, 2785,
2800, 2816, 2832, 2849, 2865, 2881, 2897, 2912, 2928, 2944, 2960,
2976, 2992, 3007, 3024, 3039, 3055, 3071, 3087, 3103, 3119, 3135,
3151, 3167, 3183, 3198, 3214, 3229, 3244, 3259, 3275, 3291, 3307,
3323, 3339, 3355, 3371, 3387, 3403, 3419, 3435, 3451, 3467, 3483,
3499, 3515, 3532, 3548, 3563, 3579, 3597, 3614, 3629], 'cumul': [0,
324, 649, 974, 1298, 1623, 1847, 1992, 2138, 2283, 2429, 3056, 3717,
4668, 5620, 6515, 7187, 7601, 8016, 8430, 8654, 8844, 9102, 9359,
9617, 9874, 10132, 10591, 12304, 13020, 13737, 14453, 16401, 17140,
17879, 18618, 19357, 19906, 20454, 21003, 21731, 22884, 24037, 24664,
25168, 25560, 25895, 26399, 26914, 27384, 27855, 28325, 28795, 29265,
29624, 29747, 29870, 29993, 30116, 30463, 31012, 31560, 32109, 32658,
33542, 34505, 35255, 35445, 35636, 35826, 36016, 36207, 36699, 37360,
38020, 38603, 38827, 39050, 39274, 39498, 39801, 40136, 40439, 40696,
40954, 41211, 41469, 41726, 41973, 42219, 42465, 42711, 42958, 44413,
44559, 44704, 44850, 44995, 45253, 45701, 46149, 46697, 47593, 48724,
49843, 49966, 50090, 50213, 50336, 50940, 51679, 53068, 54456, 54713,
54893, 55072, 55822, 57076, 58005, 58531, 58800, 59069, 59326, 59516,
59707, 59897, 60087, 60278, 60401, 60457, 60513, 60569, 60625, 60681,
62550, 64297, 64823, 64958, 65092, 65226, 65361, 65640, 65920, 66200,
66637, 67085, 67533, 67980, 68428, 68876, 70354, 71720, 72862, 73858,
74396, 74933, 75470, 76008, 76545, 77407, 78281, 78684, 79087, 79490,
79781, 80385, 81706, 82994, 83128, 83263, 83397, 83554, 84170, 84785,
85401, 86140, 86689, 87036, 87383, 87730, 88077, 88446, 88984, 89521,
89947, 90215, 90484, 90753, 91021, 91436, 91928, 92421, 92913, 93406,
93798, 94100, 94503, 95085, 95668, 96250, 96832, 97683, 98970, 100180,
100918, 101501, 101870, 102240, 102609, 102855, 102990, 103124,
103258, 103393, 103583, 104255, 104927, 105374, 105665, 105957,
106248, 106539, 106830, 107770, 108599, 108711, 108823, 109976]} ,
moneymaxes = {'daycode': 3629, 'cumul': 109976};

box_texts = ["Sample box text that's really long and shows the width
matching problem", 'Sample', 'Sample', 'Sample', 'Sample', 'Sample',
'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample',
'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample',
'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample',
'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample',
'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample',
'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample',
'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample',
'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample',
'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample',
'Sample', 'Sample'];

descripts = ["Sample text", 'Sample', 'Sample', 'Sample', 'Sample',
'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample',
'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample',
'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample',
'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample',
'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample',
'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample',
'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample',
'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample',
'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample', 'Sample',
'Sample', 'Sample', 'Sample'];

var mouseoverStarts = [36, 47, 76, 98, 102,
137, 138, 142, 147, 177,
330, 406, 412, 434, 446,
452, 483, 487, 496, 510,
523, 527, 536, 544, 550,
563, 584, 691, 727, 731,
810, 876, 894, 911, 916,
934, 981, 1156, 1183, 1185,
1196, 1223, 1290, 1386, 1447,
1492, 1554, 1565, 1594, 1646,
1763, 1820, 1861, 1891, 1901,
2007, 2152, 2155, 2157, 2192,
2195, 2250, 2328, 2444, 2526,
2560, 2563, 2566, 2600, 2625,
2626, 2633, 2665, 2666, 2669,
2673, 2682, 2694, 2709, 2722,
2784, 2857, 2964, 3031, 3074,
3196, 3197, 3210, 3223, 3236,
3237, 3242, 3250, 3263, 3324,
3408, 3462, 3507, 3512, 3547,
3550, 3552, 3581, 3590],
mouseoverEnds = [47, 76, 87, 102, 137,
138, 142, 147, 177, 187,
370, 412, 434, 446, 452,
474, 487, 496, 510, 523,
527, 536, 544, 550, 563,
584, 603, 727, 731, 767,
850, 894, 911, 916, 934,
951, 1021, 1183, 1185, 1196,
1223, 1225, 1330, 1426, 1487,
1532, 1565, 1594, 1605, 1686,
1803, 1860, 1891, 1901, 1931,
2047, 2155, 2157, 2192, 2195,
2197, 2300, 2368, 2484, 2560,
2563, 2566, 2600, 2603, 2626,
2633, 2665, 2666, 2669, 2673,
2682, 2694, 2709, 2722, 2734,
2824, 2897, 3004, 3071, 3114,
3197, 3210, 3223, 3236, 3237,
3242, 3250, 3263, 3282, 3364,
3448, 3502, 3512, 3547, 3550,
3552, 3581, 3590, 3621],
mouseoverItems = [[0], [0, 1], [1], [2], [2, 3],
[2, 3, 4], [3, 4], [4], [4, 5], [5],
[6], [7, 8], [7, 8, 9], [7, 8, 9, 10], [9, 10],
[10], [11], [11, 12], [11, 12, 13], [11, 12, 13, 14],
[12, 13, 14], [13, 14], [14], [14, 15], [15],
[15, 16], [16], [17], [17, 18], [18],
[19], [20], [20, 21], [20, 21, 22], [21, 22],
[22], [23], [24], [24, 25], [24, 25, 26],
[25, 26], [26], [27], [28], [29],
[30], [31], [32, 31], [32], [33],
[34], [35, 36], [37], [37, 38], [38],
[39], [40], [40, 41], [40, 41, 42], [41, 42],
[42], [43], [44], [45], [46],
[46, 47], [48, 46, 47], [48, 47], [48], [49],
[49, 50], [49, 50, 51], [50, 51], [51], [51, 52],
[52], [52, 53], [52, 53, 54], [53, 54], [54],
[55], [56], [57], [58], [59],
[60], [60, 61], [60, 61, 62], [60, 61, 62, 63], [61, 62, 63],
[62, 63], [64, 62, 63], [64, 63], [64], [65],
[66], [67], [68], [68, 69], [69],
[69, 70], [70], [70, 71], [71]];

var yaxisdata = {labels: ['2005-01-01', '2005-04-01', '2005-07-01',
'2005-10-01', '2006-01-01', '2006-04-01', '2006-07-01', '2006-10-01',
'2007-01-01', '2007-04-01', '2007-07-01', '2007-10-01', '2008-01-01',
'2008-04-01', '2008-07-01', '2008-10-01', '2009-01-01', '2009-04-01',
'2009-07-01', '2009-10-01', '2010-01-01', '2010-04-01', '2010-07-01',
'2010-10-01', '2011-01-01', '2011-04-01', '2011-07-01', '2011-10-01',
'2012-01-01', '2012-04-01', '2012-07-01', '2012-10-01', '2013-01-01',
'2013-04-01', '2013-07-01', '2013-10-01', '2014-01-01', '2014-04-01',
'2014-07-01', '2014-10-01', '2015-01-01'], values: [0, 90, 181, 273,
365, 455, 546, 638, 730, 820, 911, 1003, 1095, 1186, 1277, 1369, 1461,
1551, 1642, 1734, 1826, 1916, 2007, 2099, 2191, 2281, 2372, 2464,
2556, 2647, 2738, 2830, 2922, 3012, 3103, 3195, 3287, 3377, 3468,
3560, 3652], ymax: 3652};

var xaxisbr = {labels: ['0', '1', '2', '3', '4', '5'], values: [0,
200000000, 400000000, 600000000, 800000000, 1000000000]};

var colors = {green: "#54BC21", pink: "#F00092" , ltblue: "#D1D7DD",
ltmagenta: "#8A0054", dkmagenta: "#570035", white: "#ffffff", dkblue:
"#1E354B", medblue: "#436893", dkgray: "#373737"};

var width = 800;
var height = 5000;
var margin = {l: 16, r: 16, t: 16, b: 16};
var graphPos = {l: margin.l + 100, t: margin.t + 100, r: width -
margin.r, b:height - margin.b};
n = data.cumul.length;

defaultRad = 6;

/////////////////////////////
// graph element functions
/////////////////////////////////////////////
/////////////////////////////

function calcDataY(day) {
return day / maxes.daycode * (graphPos.b - graphPos.t) +
graphPos.t
};
function calcDataX(br) {
return br / maxes.cumul * (graphPos.r - graphPos.l) + graphPos.l
};
function calcDataXM(br) {
return br / moneymaxes.cumul * (graphPos.r - graphPos.l) +
graphPos.l
};
function calcRad(br) {
var minRad = 20;
var maxRad = 100;
return (maxRad - minRad) * Math.sqrt(br/maxes.actualdata) +
minRad;
};

///////////
// setup //////////////////////////////////////////////
///////////

var p0 = Raphael("paper", width, height);
firstrun = false; // for infobox

//////////
// axes //////////////////////////////////////////
//////////

yOffs = 14;
yTick = 5;
yTickOffs = 4;
xAx = {offs1: 16, tick: 6, offs2: 6, offs3: 14};
yaxline =
p0.path("M"+(calcDataX(0)-yOffs)+','+calcDataY(0)+'L'+(calcDataX(0)-yOffs)+','+calcDataY(yaxisdata.ymax)).attr({stroke:
colors.ltblue, 'stroke-width': '1px'});
yticks = [];
ylabels = [];
for (i=0; i<yaxisdata.values.length; i++) {
yticks[i] =
p0.path("M"+(calcDataX(0)-yOffs)+','+calcDataY(yaxisdata.values[i])+'L'+(calcDataX(0)-yOffs-yTick)+','+calcDataY(yaxisdata.values[i])).attr({stroke:
colors.ltblue, 'stroke-width': '1px'});
ylabels[i] = p0.text(calcDataX(0)-yOffs-yTick-yTickOffs,
calcDataY(yaxisdata.values[i]),
yaxisdata.labels[i]).attr({"font-family": "Righteous, sans-serif",
fill: colors.ltblue, "font-size":"11.5pt", 'text-anchor': 'end'});
};
xbrticks=[];
xbrlabels=[];
for (i=0; i<xaxisbr.values.length; i++) {
xbrticks[i] =
p0.path("M"+calcDataX(xaxisbr.values[i])+','+(calcDataY(0)-xAx.offs1)+'L'+(calcDataX(xaxisbr.values[i]))+','+(calcDataY(0)-xAx.offs1-xAx.tick)).attr({stroke:
colors.pink, 'stroke-width': '2px'});
xbrlabels[i] = p0.text(calcDataX(xaxisbr.values[i]),
calcDataY(0)-xAx.offs1-xAx.tick-xAx.offs2,
xaxisbr.labels[i]).attr({"font-family": "Righteous, sans-serif", fill:
colors.pink, "font-size":"11.5pt"});
};
var xbrexpl = p0.text(calcDataX(0) - 20,
calcDataY(0)-xAx.offs1-xAx.tick-xAx.offs2-xAx.offs3, "X axis
label").attr({"font-family": "Righteous, sans-serif", fill:
colors.pink, "font-size":"11.5pt", "text-anchor":"start"});
var xmonexpl = p0.text(calcDataXM(0) - 20,
calcDataY(0)-xAx.offs1-xAx.tick-xAx.offs2-xAx.offs3-30, "Secondary
axis label").attr({"font-family": "Righteous, sans-serif", fill:
colors.green, "font-size":"11.5pt", "text-anchor":"start"});
var tempxxx = p0.text(calcDataXM(0),
calcDataY(0)-xAx.offs1-xAx.tick-xAx.offs2-xAx.offs3-15,
"|").attr({"font-family": "Righteous, sans-serif", fill: colors.green,
"font-size":"10pt", "text-anchor":"start"});

////////////////////
// graph elements
/////////////////////////////////////////////////////////
////////////////////

var dollarsigns = [];
for (i = 0; i < money.daycode.length; i++) {
dollarsigns[i] = p0.text(calcDataXM(money.cumul[i]),
calcDataY(money.daycode[i]), "$").attr({"font-family": "Righteous,
sans-serif", fill: colors.green, "font-size":"30pt"});
dollarsigns[i].id = "ds"+i;
};
var dataline = [];
for (i = 0; i < n - 1; i++) {
mtext = "M"+calcDataX(data.cumul[i])+","+calcDataY(realday[i])+"
L"+calcDataX(data.cumul[i+1])+","+calcDataY(realday[i+1]);
dataline[i] = p0.path(mtext);
dataline[i].attr({stroke: colors.ltmagenta, "stroke-width":2});
dataline[i].id = "line"+i;
};
var circles = [];
for (i = 0; i < n - 1; i++) {
circles[i] = p0.circle(calcDataX(data.cumul[i]),
calcDataY(realday[i]), defaultRad);
// same formula for cx, cy used in box loop - careful to change it
both places if changed
circles[i].attr({"fill": colors.pink, stroke: "#ddd",
"stroke-width":1.5});
circles[i].id = "c"+i;
};

////////////////////////////////
// popup description boxes /////////////////
////////////////////////////////


imarg = 14;
iboxcount = 0;
// so that the jquery click function does not immediately remove the
box upon creation

function makebox(num) {
iboxcount++;
iboxgroup = p0.set();
iboxtext = p0.text(100, (window.pageYOffset ||
document.documentElement.scrollTop) + 16,
descripts[num]).attr({"font-family": "Ubuntu, sans-serif",
'font-style': 'italic', 'font-size': '14pt', 'text-anchor': 'start',
'fill': '#000'});
iboxbox = p0.rect(iboxtext.getBBox().x - imarg,
iboxtext.getBBox().y - imarg, iboxtext.getBBox().width + imarg*2,
iboxtext.getBBox().height + imarg*2).attr({fill: colors.white,
"stroke-width": "0.5px", opacity: 0.7});
iboxtext.toFront();
iboxgroup.push(iboxtext);
iboxgroup.push(iboxbox);
iboxgroup.mouseout(function() {
iboxcount = 0;
iboxgroup.remove();
});
iboxgroup.toFront();
};

$(document).click(function(e) {
if (iboxcount > 1) {
iboxgroup.remove();
iboxcount = 0;
} else {
iboxcount++;
};
});

animate_on = function(n2) {
p0.getById("c"+n2).stop().animate({r:
calcRad(data.actualdata[n2])}, 480, "bounce");
p0.getById("ba"+n2).stop().animate({opacity: 1}, 320,
"<>");
p0.getById("bt"+n2).stop().animate({opacity: 1}, 320,
"<>");
p0.getById("bb"+n2).stop().animate({opacity: 1}, 320,
"<>");
};
animate_off = function(num) {
p0.getById("c"+num).stop().animate({r: defaultRad}, 320,
"bounce");
p0.getById("ba"+num).stop().animate({opacity: 0}, 240,
"<>");
p0.getById("bt"+num).stop().animate({opacity: 0}, 240,
"<>");
p0.getById("bb"+num).stop().animate({opacity: 0}, 240,
"<>");
};

animate_on_each = function(num, ignoreindex, ignorearray) {
animate_on(num);
};
animate_off_each = function(num, ignoreindex, ignorearray) {
animate_off(num);
};

moboxes = [];
function drawmoboxes() {
for (i=0; i<mouseoverStarts.length; i++) {
tempstart = calcDataY(mouseoverStarts[i])
moboxes[i] = p0.rect(margin.l, tempstart, graphPos.r-margin.l,
calcDataY(mouseoverEnds[i])-tempstart);
moboxes[i].attr({fill: "#f00", opacity: 0});
moboxes[i].id = "mob" + i;
moboxes[i].hover(function () {
j = parseInt(this.id.slice(3));
mouseoverItems[j].forEach(animate_on_each);
}, function () {
mouseoverItems[j].forEach(animate_off_each);
});
};
};

drawmoboxes();

////////////////////////////////
// pointer boxes on mouseover //
// only their opacity changes
///////////////////////////////////////////////
////////////////////////////////

boxB = []; // bounding box
boxT = []; // text
boxA = []; // angle triangle
boxG = []; // groups
boxOff = 20;
boxMarg = 4;
boxTri = 5; // plusminus of triangle
for (i=0; i<box_angles.length; i++) {
thiscx = calcDataX(data.cumul[i]); // same formula as in var
circles
thiscy = calcDataY(realday[i]);
thisr = calcRad(data.actualdata[i]);
a = box_angles[i];
arad = a * 0.0174532925;
tana = Math.tan(arad);
if (((a > 90) && (a < 270))||((a < -90)
&& (a > -270))) {
tana = -tana ;
newx=thiscx-thisr-boxOff;
txtanc = "end"
} else {
newx=thiscx+thisr+boxOff;
txtanc = "start";
};
if ((a < -90) && (a > -270)) {tana = -tana };
newy = thiscy - tana*(thisr+boxOff)
boxT[i] = p0.text(newx, newy, i+" "+box_texts[i]+'
Click for more.').attr({"font-family": "Ubuntu, sans-serif", fill:
colors.medblue, "font-size":"11pt", "text-anchor": txtanc});
boxT[i].id = 'bt'+i
bw = p0.getById("bt"+i).getBBox(true).width;
bh = p0.getById("bt"+i).getBBox(true).height;
bx = p0.getById("bt"+i).getBBox(true).x;
by = p0.getById("bt"+i).getBBox(true).y;
boxB[i] = p0.rect(bx - boxMarg, by - boxMarg, bw + 4*boxMarg,
bh+2*boxMarg).attr({fill: colors.ltblue, "stroke-width":0});

boxB[i].id = 'bb'+i
boxT[i].toFront();
tx = thiscx + thisr * Math.cos(arad);
ty = thiscy - thisr * Math.sin(arad);
if (txtanc == "start") {
pathtri = 'M'+(bx-boxMarg+1)+','+(newy-boxTri) +
'L'+(bx-boxMarg+1)+','+(newy+boxTri) + 'L'+tx+','+ty+'Z'
} else {
pathtri = 'M'+(bx+bw+boxMarg-1)+','+(newy-boxTri) +
'L'+(bx+bw+boxMarg-1)+','+(newy+boxTri) + 'L'+tx+','+ty+'Z';

//console.log(boxT[i]._.bboxwt.x2+boxMarg-boxB[i].attrs.x-boxB[i].attrs.width);

//boxB[i].transform("t"+(boxT[i]._.bboxwt.x2+boxMarg-boxB[i].attrs.x-boxB[i].attrs.width)+",0")
};
boxA[i] = p0.path(pathtri).attr({fill: colors.ltblue,
"stroke-width":0})
boxA[i].id = 'ba'+i
boxA[i].attr({opacity: 0});
boxT[i].attr({opacity: 0});
boxB[i].attr({opacity: 0});
boxB[i].hover(function () {
cn = parseInt(this.id.slice(2));
animate_on(cn);
// this.toFront();
}, function () {
cn = parseInt(this.id.slice(2));
animate_off(cn);
});
boxT[i].hover(function () {
cn = parseInt(this.id.slice(2));
animate_on(cn);
// this.toFront();
}, function () {
cn = parseInt(this.id.slice(2));
animate_off(cn);
});
boxA[i].hover(function () {
cn = parseInt(this.id.slice(2));
animate_on(cn);
// this.toFront();
}, function () {
cn = parseInt(this.id.slice(2));
animate_off(cn);
});
boxB[i].click(function () {
cn = parseInt(this.id.slice(2));
makebox(cn);
});
boxT[i].click(function () {
cn = parseInt(this.id.slice(2));
makebox(cn);
});
boxA[i].click(function () {
cn = parseInt(this.id.slice(2));
makebox(cn);
});
};


console.log("getBBox width =",boxT[0].getBBox(true).width);
console.log("boxT[0].node.clientWidth =",boxT[0].node.clientWidth);
console.log(boxT[0]);
Web Development
Condition: Brand new (MISB)

PM Me for the price or
pm me the price you offer. Thanks

Hobbies, Games & Toys

- Technology - Languages
+ Webmasters
+ Development
+ Development Tools
+ Internet
+ Mobile Programming
+ Linux
+ Unix
+ Apple
+ Ubuntu
+ Mobile & Tablets
+ Databases
+ Android
+ Network & Servers
+ Operating Systems
+ Coding
+ Design Software
+ Web Development
+ Game Development
+ Access
+ Excel
+ Web Design
+ Web Hosting
+ Web Site Reviews
+ Domain Name
+ Information Security
+ Software
+ Computers
+ Electronics
+ Hardware
+ Windows
+ PHP
+ ASP/ASP.Net
+ C/C++/C#
+ VB/VB.Net
+ JAVA
+ Javascript
+ Programming
Privacy Policy - Copyrights Notice - Feedback - Report Violation 2018 © BigHow