App-SocialCalc-Multiplayer
view release on metacpan or search on metacpan
socialcalc/socialcalcspreadsheetcontrol.js view on Meta::CPAN
fontsize: {setting: "fontsize", type: "PopupList", id: s.idPrefix+"fontsize",
initialdata: scc.SCFormatFontsizes},
textalignhoriz: {setting: "textalignhoriz", type: "PopupList", id: s.idPrefix+"textalignhoriz",
initialdata: scc.SCFormatTextAlignhoriz},
numberalignhoriz: {setting: "numberalignhoriz", type: "PopupList", id: s.idPrefix+"numberalignhoriz",
initialdata: scc.SCFormatNumberAlignhoriz},
alignvert: {setting: "alignvert", type: "PopupList", id: s.idPrefix+"alignvert",
initialdata: scc.SCFormatAlignVertical},
textcolor: {setting: "textcolor", type: "ColorChooser", id: s.idPrefix+"textcolor"},
bgcolor: {setting: "bgcolor", type: "ColorChooser", id: s.idPrefix+"bgcolor"},
padtop: {setting: "padtop", type: "PopupList", id: s.idPrefix+"padtop",
initialdata: scc.SCFormatPadsizes},
padright: {setting: "padright", type: "PopupList", id: s.idPrefix+"padright",
initialdata: scc.SCFormatPadsizes},
padbottom: {setting: "padbottom", type: "PopupList", id: s.idPrefix+"padbottom",
initialdata: scc.SCFormatPadsizes},
padleft: {setting: "padleft", type: "PopupList", id: s.idPrefix+"padleft",
initialdata: scc.SCFormatPadsizes},
colwidth: {setting: "colwidth", type: "PopupList", id: s.idPrefix+"colwidth",
initialdata: scc.SCFormatColwidth},
recalc: {setting: "recalc", type: "PopupList", id: s.idPrefix+"recalc",
initialdata: scc.SCFormatRecalc}
};
viewobj.values.cellspanel = {
name: "cell",
colorchooser: {id: s.idPrefix+"scolorchooser"},
cformatnumber: {setting: "numberformat", type: "PopupList", id: s.idPrefix+"cformatnumber",
initialdata: scc.SCFormatNumberFormats},
cformattext: {setting: "textformat", type: "PopupList", id: s.idPrefix+"cformattext",
initialdata: scc.SCFormatTextFormats},
cfontfamily: {setting: "fontfamily", type: "PopupList", id: s.idPrefix+"cfontfamily",
initialdata: scc.SCFormatFontfamilies},
cfontlook: {setting: "fontlook", type: "PopupList", id: s.idPrefix+"cfontlook",
initialdata: scc.SCFormatFontlook},
cfontsize: {setting: "fontsize", type: "PopupList", id: s.idPrefix+"cfontsize",
initialdata: scc.SCFormatFontsizes},
calignhoriz: {setting: "alignhoriz", type: "PopupList", id: s.idPrefix+"calignhoriz",
initialdata: scc.SCFormatTextAlignhoriz},
calignvert: {setting: "alignvert", type: "PopupList", id: s.idPrefix+"calignvert",
initialdata: scc.SCFormatAlignVertical},
ctextcolor: {setting: "textcolor", type: "ColorChooser", id: s.idPrefix+"ctextcolor"},
cbgcolor: {setting: "bgcolor", type: "ColorChooser", id: s.idPrefix+"cbgcolor"},
cbt: {setting: "bt", type: "BorderSide", id: s.idPrefix+"cbt"},
cbr: {setting: "br", type: "BorderSide", id: s.idPrefix+"cbr"},
cbb: {setting: "bb", type: "BorderSide", id: s.idPrefix+"cbb"},
cbl: {setting: "bl", type: "BorderSide", id: s.idPrefix+"cbl"},
cpadtop: {setting: "padtop", type: "PopupList", id: s.idPrefix+"cpadtop",
initialdata: scc.SCFormatPadsizes},
cpadright: {setting: "padright", type: "PopupList", id: s.idPrefix+"cpadright",
initialdata: scc.SCFormatPadsizes},
cpadbottom: {setting: "padbottom", type: "PopupList", id: s.idPrefix+"cpadbottom",
initialdata: scc.SCFormatPadsizes},
cpadleft: {setting: "padleft", type: "PopupList", id: s.idPrefix+"cpadleft",
initialdata: scc.SCFormatPadsizes}
};
SocialCalc.SettingsControlInitializePanel(viewobj.values.sheetspanel);
SocialCalc.SettingsControlInitializePanel(viewobj.values.cellspanel);
},
replacements: {
itemtitle: {regex: /\%itemtitle\./g, replacement: 'style="padding:12px 10px 0px 10px;font-weight:bold;text-align:right;vertical-align:top;font-size:small;"'},
sectiontitle: {regex: /\%sectiontitle\./g, replacement: 'style="padding:16px 10px 0px 0px;font-weight:bold;vertical-align:top;font-size:small;color:#C00;"'},
parttitle: {regex: /\%parttitle\./g, replacement: 'style="font-weight:bold;font-size:x-small;padding:0px 0px 3px 0px;"'},
itembody: {regex: /\%itembody\./g, replacement: 'style="padding:12px 0px 0px 0px;vertical-align:top;font-size:small;"'},
bodypart: {regex: /\%bodypart\./g, replacement: 'style="padding:0px 10px 0px 0px;font-size:small;vertical-align:top;"'}
},
divStyle: "border:1px solid black;overflow:auto;",
html:
'<div id="%id.scolorchooser" style="display:none;position:absolute;z-index:20;"></div>'+
'<table cellspacing="0" cellpadding="0">'+
' <tr><td style="vertical-align:top;">'+
'<table id="%id.sheetsettingstable" style="display:none;" cellspacing="0" cellpadding="0">'+
'<tr>'+
' <td %itemtitle.><br>%loc!Default Format!:</td>'+
' <td %itembody.>'+
' <table cellspacing="0" cellpadding="0"><tr>'+
' <td %bodypart.>'+
' <div %parttitle.>%loc!Number!</div>'+
' <span id="%id.formatnumber"></span>'+
' </td>'+
' <td %bodypart.>'+
' <div %parttitle.>%loc!Text!</div>'+
' <span id="%id.formattext"></span>'+
' </td>'+
' </tr></table>'+
' </td>'+
'</tr>'+
'<tr>'+
' <td %itemtitle.><br>%loc!Default Alignment!:</td>'+
' <td %itembody.>'+
' <table cellspacing="0" cellpadding="0"><tr>'+
' <td %bodypart.>'+
' <div %parttitle.>%loc!Text Horizontal!</div>'+
' <span id="%id.textalignhoriz"></span>'+
' </td>'+
' <td %bodypart.>'+
' <div %parttitle.>%loc!Number Horizontal!</div>'+
' <span id="%id.numberalignhoriz"></span>'+
' </td>'+
' <td %bodypart.>'+
' <div %parttitle.>%loc!Vertical!</div>'+
' <span id="%id.alignvert"></span>'+
' </td>'+
' </tr></table>'+
' </td>'+
'</tr>'+
'<tr>'+
' <td %itemtitle.><br>%loc!Default Font!:</td>'+
' <td %itembody.>'+
' <table cellspacing="0" cellpadding="0"><tr>'+
' <td %bodypart.>'+
' <div %parttitle.>%loc!Family!</div>'+
' <span id="%id.fontfamily"></span>'+
' </td>'+
' <td %bodypart.>'+
' <div %parttitle.>%loc!Bold & Italics!</div>'+
' <span id="%id.fontlook"></span>'+
' </td>'+
' <td %bodypart.>'+
' <div %parttitle.>%loc!Size!</div>'+
' <span id="%id.fontsize"></span>'+
' </td>'+
' <td %bodypart.>'+
socialcalc/socialcalcspreadsheetcontrol.js view on Meta::CPAN
{t:"Unmerge", s:"none", c:"unmerge %C"},
{t:"Sort", s:"sortcol", c:"sort %R %S"},
{t:"Cell Color", s:"colors", c:"set %C color %S"},
{t:"Cell Background", s:"colors", c:"set %C bgcolor %S"},
{t:"Cell Number Format", s:"ntvf", c:"set %C nontextvalueformat %S"},
{t:"Cell Font", s:"fonts", c:"set %C font %S"},
{t:"Cell Align", s:"cellformat", c:"set %C cellformat %S"},
{t:"Cell Borders", s:"borderOnOff", c:"set %C bt %S%Nset %C br %S%Nset %C bb %S%Nset %C bl %S"},
{t:"Column Width", s:"colWidths", c:"set %W width %S"},
{t:"Default Color", s:"colors", c:"set sheet defaultcolor %S"},
{t:"Default Background", s:"colors", c:"set sheet defaultbgcolor %S"},
{t:"Default Number Format", s:"ntvf", c:"set sheet defaultnontextvalueformat %S"},
{t:"Default Font", s:"fonts", c:"set sheet defaultfont %S"},
{t:"Default Text Align", s:"cellformat", c:"set sheet defaulttextformat %S"},
{t:"Default Number Align", s:"cellformat", c:"set sheet defaultnontextformat %S"},
{t:"Default Column Width", s:"colWidths", c:"set sheet defaultcolwidth %S"}
],
rowcolstuff: [
{t:"Insert", s:"rowcol", c:"insert%S %C"},
{t:"Delete", s:"rowcol", c:"delete%S %C"},
{t:"Paste", s:"ffal", c:"paste %C %S"},
{t:"Erase", s:"ffal", c:"erase %C %S"},
{t:"Fill Right", s:"ffal", c:"fillright %C %S"},
{t:"Fill Down", s:"ffal", c:"filldown %C %S"}
],
text: [
{t:"Cell Color", s:"colors", c:"set %C color %S"},
{t:"Cell Background", s:"colors", c:"set %C bgcolor %S"},
{t:"Cell Number Format", s:"ntvf", c:"set %C nontextvalueformat %S"},
{t:"Cell Text Format", s:"tvf", c:"set %C textvalueformat %S"},
{t:"Cell Font", s:"fonts", c:"set %C font %S"},
{t:"Cell Align", s:"cellformat", c:"set %C cellformat %S"},
{t:"Default Color", s:"colors", c:"set sheet defaultcolor %S"},
{t:"Default Background", s:"colors", c:"set sheet defaultbgcolor %S"},
{t:"Default Number Format", s:"ntvf", c:"set sheet defaultnontextvalueformat %S"},
{t:"Default Text Format", s:"tvf", c:"set sheet defaulttextvalueformat %S"},
{t:"Default Font", s:"fonts", c:"set sheet defaultfont %S"},
{t:"Default Text Align", s:"cellformat", c:"set sheet defaulttextformat %S"},
{t:"Default Number Align", s:"cellformat", c:"set sheet defaultnontextformat %S"}
],
slists: {
"colors": [
{t:"Default", s:""},
{t:"Black", s:"rgb(0,0,0)"},
{t:"Dark Gray", s:"rgb(102,102,102)"}, // #666
{t:"Gray", s:"rgb(204,204,204)"}, // #CCC
{t:"White", s:"rgb(255,255,255)"},
{t:"Red", s:"rgb(255,0,0)"},
{t:"Dark Red", s:"rgb(153,0,0)"},
{t:"Orange", s:"rgb(255,153,0)"},
{t:"Yellow", s:"rgb(255,255,0)"},
{t:"Light Yellow", s:"rgb(255,255,204)"},
{t:"Green", s:"rgb(0,255,0)"},
{t:"Dark Green", s:"rgb(0,153,0)"},
{t:"Blue", s:"rgb(0,0,255)"},
{t:"Dark Blue", s:"rgb(0,0,153)"},
{t:"Light Blue", s:"rgb(204,204,255)"}
],
"fonts": [ // style weight size family
{t:"Default", s:""},
{t:"Bold", s:"normal bold * *"},
{t:"Italic", s:"italic normal * *"},
{t:"Small", s:"* small *"},
{t:"Medium", s:"* medium *"},
{t:"Large", s:"* large *"},
{t:"Bold Small", s:"normal bold small *"},
{t:"Bold Medium", s:"normal bold medium *"},
{t:"Bold Large", s:"normal bold large *"}
],
"cellformat": [
{t:"Default", s:""},
{t:"Left", s:"left"},
{t:"Right", s:"right"},
{t:"Center", s:"center"}
],
"borderOnOff": [
{t:"On", s:"1px solid rgb(0,0,0)"},
{t:"Off", s:""}
],
"colWidths": [
{t:"Default", s:""},
{t:"20", s:"20"},
{t:"40", s:"40"},
{t:"60", s:"60"},
{t:"80", s:"80"},
{t:"100", s:"100"},
{t:"120", s:"120"},
{t:"140", s:"140"},
{t:"160", s:"160"},
{t:"180", s:"180"},
{t:"200", s:"200"},
{t:"220", s:"220"},
{t:"240", s:"240"},
{t:"260", s:"260"},
{t:"280", s:"280"},
{t:"300", s:"300"}
],
"ntvf": [
{t:"Default", s:""},
{t:"1234", s:"0"},
{t:"1,234", s:"#,##0"},
{t:"1,234.5", s:"#,##0.0"},
{t:"1,234.56", s:"#,##0.00"},
{t:"1,234.567", s:"#,##0.000"},
{t:"1,234%", s:"#,##0%"},
{t:"1,234.5%", s:"#,##0.0%"},
{t:"(1,234)", s:"#,##0_);(#,##0)"},
{t:"(1,234.5)", s:"#,##0.0_);(#,##0.0)"},
{t:"(1,234.56)", s:"#,##0.00_);(#,##0.00)"},
{t:"00", s:"00"},
{t:"000", s:"000"},
{t:"0000", s:"0000"},
{t:"$1,234.56", s:"$#,##0.00"},
{t:"2006-01-04", s:"yyyy-mm-dd"},
{t:"01:23:45", s:"hh:mm:ss"},
{t:"2006-01-04 01:23:45", s:"yyyy-mm-dd hh:mm:ss"},
{t:"Hidden", s:"hidden"}
],
"tvf": [
{t:"Default", s:""},
{t:"Automatic", s:"general"},
{t:"Plain Text", s:"text-plain"},
{t:"HTML", s:"text-html"},
{t:"Wiki", s:"text-wiki"},
{t:"Hidden", s:"hidden"}
],
"ffal": [ // Formulas, Formats, All
{t:"All", s:"all"},
socialcalc/socialcalcspreadsheetcontrol.js view on Meta::CPAN
//
SocialCalc.SpreadsheetControlCreateCellHTMLSave = function(spreadsheet, range, linkstyle) {
var cr1, cr2, row, col, coord, cell, cellHTML;
var result = [];
var prange;
if (range) {
prange = SocialCalc.ParseRange(range);
}
else {
prange = {cr1: {row: 1, col:1},
cr2: {row: spreadsheet.sheet.attribs.lastrow, col: spreadsheet.sheet.attribs.lastcol}};
}
cr1 = prange.cr1;
cr2 = prange.cr2;
result.push("version:1.0");
for (row=cr1.row; row <= cr2.row; row++) {
for (col=cr1.col; col <= cr2.col; col++) {
coord = SocialCalc.crToCoord(col, row);
cell=spreadsheet.sheet.cells[coord];
if (!cell) continue;
if (cell.displaystring == undefined) {
cellHTML = SocialCalc.FormatValueForDisplay(spreadsheet.sheet, cell.datavalue, coord, (linkstyle || spreadsheet.context.defaultHTMLlinkstyle));
}
else {
cellHTML = cell.displaystring;
}
if (cellHTML == " ") continue;
result.push(coord+":"+SocialCalc.encodeForSave(cellHTML));
}
}
result.push(""); // one extra to get extra \n
return result.join("\n");
}
//
// Formula Bar Button Routines
//
SocialCalc.SpreadsheetControl.DoFunctionList = function() {
var i, cname, str, f, ele;
var scf = SocialCalc.Formula;
var scc = SocialCalc.Constants;
var fcl = scc.function_classlist;
var spreadsheet = SocialCalc.GetSpreadsheetControlObject();
var idp = spreadsheet.idPrefix+"function";
ele = document.getElementById(idp+"dialog");
if (ele) return; // already have one
scf.FillFunctionInfo();
str = '<table><tr><td><span style="font-size:x-small;font-weight:bold">%loc!Category!</span><br>'+
'<select id="'+idp+'class" size="'+fcl.length+'" style="width:120px;" onchange="SocialCalc.SpreadsheetControl.FunctionClassChosen(this.options[this.selectedIndex].value);">';
for (i=0; i<fcl.length; i++) {
str += '<option value="'+fcl[i]+'"'+(i==0?' selected>':'>')+SocialCalc.special_chars(scf.FunctionClasses[fcl[i]].name)+'</option>';
}
str += '</select></td><td> </td><td id="'+idp+'list"><span style="font-size:x-small;font-weight:bold">%loc!Functions!</span><br>'+
'<select id="'+idp+'name" size="'+fcl.length+'" style="width:240px;" '+
'onchange="SocialCalc.SpreadsheetControl.FunctionChosen(this.options[this.selectedIndex].value);" ondblclick="SocialCalc.SpreadsheetControl.DoFunctionPaste();">';
str += SocialCalc.SpreadsheetControl.GetFunctionNamesStr("all");
str += '</td></tr><tr><td colspan="3">'+
'<div id="'+idp+'desc" style="width:380px;height:80px;overflow:auto;font-size:x-small;">'+SocialCalc.SpreadsheetControl.GetFunctionInfoStr(scf.FunctionClasses[fcl[0]].items[0])+'</div>'+
'<div style="width:380px;text-align:right;padding-top:6px;font-size:small;">'+
'<input type="button" value="%loc!Paste!" style="font-size:smaller;" onclick="SocialCalc.SpreadsheetControl.DoFunctionPaste();"> '+
'<input type="button" value="%loc!Cancel!" style="font-size:smaller;" onclick="SocialCalc.SpreadsheetControl.HideFunctions();"></div>'+
'</td></tr></table>';
var main = document.createElement("div");
main.id = idp+"dialog";
main.style.position = "absolute";
var vp = SocialCalc.GetViewportInfo();
main.style.top = (vp.height/3)+"px";
main.style.left = (vp.width/3)+"px";
main.style.zIndex = 100;
main.style.backgroundColor = "#FFF";
main.style.border = "1px solid black";
main.style.width = "400px";
str = '<table cellspacing="0" cellpadding="0" style="border-bottom:1px solid black;"><tr>'+
'<td style="font-size:10px;cursor:default;width:100%;background-color:#999;color:#FFF;">'+" %loc!Function List!"+'</td>'+
'<td style="font-size:10px;cursor:default;color:#666;" onclick="SocialCalc.SpreadsheetControl.HideFunctions();"> X </td></tr></table>'+
'<div style="background-color:#DDD;">'+str+'</div>';
str = SocialCalc.LocalizeSubstrings(str);
main.innerHTML = str;
SocialCalc.DragRegister(main.firstChild.firstChild.firstChild.firstChild, true, true, {MouseDown: SocialCalc.DragFunctionStart, MouseMove: SocialCalc.DragFunctionPosition,
MouseUp: SocialCalc.DragFunctionPosition,
Disabled: null, positionobj: main});
spreadsheet.spreadsheetDiv.appendChild(main);
ele = document.getElementById(idp+"name");
ele.focus();
SocialCalc.CmdGotFocus(ele);
//!!! need to do keyboard handling: if esc, hide; if All, letter scrolls to there
}
SocialCalc.SpreadsheetControl.GetFunctionNamesStr = function(cname) {
var i, f;
var scf = SocialCalc.Formula;
var str = "";
f = scf.FunctionClasses[cname];
for (i=0; i<f.items.length; i++) {
str += '<option value="'+f.items[i]+'"'+(i==0?' selected>':'>')+f.items[i]+'</option>';
}
return str;
( run in 0.399 second using v1.01-cache-2.11-cpan-ad19def0cd9 )