App-SocialCalc-Multiplayer

 view release on metacpan or  search on metacpan

inc/Module/Install/Makefile.pm  view on Meta::CPAN

BEGIN {
	$VERSION = '1.01';
	@ISA     = 'Module::Install::Base';
	$ISCORE  = 1;
}

sub Makefile { $_[0] }

my %seen = ();

sub prompt {
	shift;

	# Infinite loop protection
	my @c = caller();
	if ( ++$seen{"$c[1]|$c[2]|$_[0]"} > 3 ) {
		die "Caught an potential prompt infinite loop ($c[1]|$c[2]|$_[0])";
	}

	# In automated testing or non-interactive session, always use defaults
	if ( ($ENV{AUTOMATED_TESTING} or -! -t STDIN) and ! $ENV{PERL_MM_USE_DEFAULT} ) {
		local $ENV{PERL_MM_USE_DEFAULT} = 1;
		goto &ExtUtils::MakeMaker::prompt;
	} else {
		goto &ExtUtils::MakeMaker::prompt;
	}
}

# Store a cleaned up version of the MakeMaker version,
# since we need to behave differently in a variety of
# ways based on the MM version.
my $makemaker = eval $ExtUtils::MakeMaker::VERSION;

# If we are passed a param, do a "newer than" comparison.
# Otherwise, just return the MakeMaker version.

socialcalc/Changes.txt  view on Meta::CPAN

Moved spreadsheetcontrol button and tab styles to SocialCalc.Constants to make skinning easier.

2009-03-10:
Made socialcalc2demo10.
Made socialcalcserver.pl use all filenames and have settings file.

2009-03-19:
Added function arg_def, func_def, and func_class to formula1.js and socialcalcconstants.js.
Added definitions to all functions.
Added function information routines FillFunctionInfo and FunctionArgString.
Added prompt to InputEcho to show function argument prompts.
Added function list dialog to ssctrltest1.html.
Added SocialCalc.EditorAddToInput for pasting function starts, etc.

2009-03-23:
Added formula bar buttons to socialcalcspreadsheetcontrol.js.
Moved function list as a formula bar button in socialcalcspreadsheetcontrol.js.
Added Multi-line input box dialog and support.

2009-03-24:
Tuned multi-line input to handle disabling inputbox when editing and when multi-line cell content.

socialcalc/Changes.txt  view on Meta::CPAN

2009-05-31:
Moved sum button into socialcalcspreadsheetcontrol.js as additional formula bar button.

2009-06-01:
Made OLPC version's graphing more modular, and save.
Fixed bug in sort settings save.
Added SocialCalc.Callbacks.NormalizeSheetName to socialcalc-3.js and formula1.js.
Moved CreateCSV into SocialCalcServersideUtilities.pm.

2009-06-09:
Fixed Safari bug with detecting partial formulas for prompt.
Fixed bugs with conditionals in formats. Issues converting from Perl...
Merged SocialCalcServersideFormatting.pm back into ServersideUtilities.pm.
Fixed bug in js and Perl with missing "=" comparison in conditional custom formats.
Added temporary Ctrl-S for setting custom numeric formats.

2009-06-11:
Added "cmd:" prefix option to Ctrl-S for manually issuing commands.
Fixed bug in VLOOKUP argument prompt.

2009-06-14:
Fixed bug with SocialCalc.Formula.OperandAsSheetName not working with absolute references.
Fixed bug with Popup custom not escaping current value.

2009-06-16:
Fixed bug in SocialCalc.RecalcCheckCell where sheetref wasn't reset if range item ended in sheetref.

2009-06-21:
Fixed: Audit tab doesn't escape <>, etc.

socialcalc/LICENSE.txt  view on Meta::CPAN


3.4 Intellectual Property Matters

(a) Third Party Claims.

If Contributor has knowledge that a license under a third party’s intellectual property 
rights is required to exercise the rights granted by such Contributor under Sections 2.1 
or 2.2, Contributor must include a text file with the Source Code distribution titled "LEGAL" 
which describes the claim and the party making the claim in sufficient detail that a 
recipient will know whom to contact. If Contributor obtains such knowledge after the 
Modification is made available as described in Section 3.2, Contributor shall promptly 
modify the LEGAL file in all copies Contributor makes available thereafter and shall take 
other steps (such as notifying appropriate mailing lists or newsgroups) reasonably 
calculated to inform those who received the Covered Code that new knowledge has been obtained.

(b) Contributor APIs.

If Contributor’s Modifications include an application programming interface and Contributor 
has knowledge of patent licenses which are reasonably necessary to implement that API, 
Contributor must also include this information in the LEGAL file.

socialcalc/simpleedit14.pl  view on Meta::CPAN

<div style="padding:6px;background-color:#80A9F3;">
<div style="font-weight:bold;color:white;">SIMPLE SYSTEM FOR EDITING PAGES WITH SPREADSHEETS AND MORE</div>
<div style="color:#FDD;font-weight:bold;">$statusmessage &nbsp;</div>
<div style="margin-bottom:6px;">Editing page: <span style="font-style:italic;font-weight:bold;">$pagename</span></div>
<script>
function addss(sstype) {
 var now = new Date();
 var name = ""+now.getFullYear()+(now.getMonth()+101).toString().substr(1)+(now.getDate()+100).toString().substr(1)+
        (now.getHours()+100).toString().substr(1)+(now.getMinutes()+100).toString().substr(1)+(now.getSeconds()+100).toString().substr(1);
 var sname =
  prompt("New "+sstype+" name (alphanumeric only, unique on page):", name);
 if (!sname) return false;
 sname = sname.replace(/[^a-zA-Z0-9]/g, "").toLowerCase();
 if (!sname) return false;
 document.f0.pagetext.value =
  document.f0.pagetext.value + "\\n["+sstype+":" + sname +"]\\n";
 return false;
}
</script>
<div style="margin-bottom:4px;">
<table cellspacing="0" cellpadding="0" width="100%">

socialcalc/simpleedit15.pl  view on Meta::CPAN

<div style="padding:6px;background-color:#80A9F3;">
<div style="font-weight:bold;color:white;">SIMPLE SYSTEM FOR EDITING PAGES WITH SPREADSHEETS AND MORE</div>
<div style="color:#FDD;font-weight:bold;">$statusmessage &nbsp;</div>
<div style="margin-bottom:6px;">Editing page: <span style="font-style:italic;font-weight:bold;">$pagename</span></div>
<script>
function addss(sstype) {
 var now = new Date();
 var name = ""+now.getFullYear()+(now.getMonth()+101).toString().substr(1)+(now.getDate()+100).toString().substr(1)+
        (now.getHours()+100).toString().substr(1)+(now.getMinutes()+100).toString().substr(1)+(now.getSeconds()+100).toString().substr(1);
 var sname =
  prompt("New "+sstype+" name (alphanumeric only, unique on page):", name);
 if (!sname) return false;
 sname = sname.replace(/[^a-zA-Z0-9]/g, "").toLowerCase();
 if (!sname) return false;
 document.f0.pagetext.value =
  document.f0.pagetext.value + "\\n["+sstype+":" + sname +"]\\n";
 return false;
}
</script>
<div style="margin-bottom:4px;">
<table cellspacing="0" cellpadding="0" width="100%">

socialcalc/socialcalc-3.js  view on Meta::CPAN

   }


// *************************************
//
// UndoStack class:
//
// Implements the behavior needed for a normal application's undo/redo stack.
// You add a new change sequence with PushChange.
// The type argument is a string that can be used to lookup some general string 
// like "typing" or "setting attribute" for the menu prompts for undo/redo.
//
// You add the "do" steps with AddDo. The non-null, non-undefined arguments are
// joined together with " " to make a command string to be saved.
//
// You add the undo steps as commands for the most recent change with AddUndo.
// The non-null, non-undefined arguments are joined together with " " to make
// a command string to be saved.
//
// The Undo and Redo functions move the Top Of Stack pointer through the changes stack
// so you can undo and redo. Doing a new PushChange removes all undone items

socialcalc/socialcalctableeditor.js  view on Meta::CPAN

         case "[ctrl-s]": // !!!! temporary hack
            window.setTimeout(
               function() {
                  if (!SocialCalc.GetSpreadsheetControlObject) return;
                  var s = SocialCalc.GetSpreadsheetControlObject();
                  if (!s) return;
                  var editor = s.editor;
                  var sheet = editor.context.sheetobj;
                  var cell = sheet.GetAssuredCell(editor.ecell.coord);
                  var ntvf = cell.nontextvalueformat ? sheet.valueformats[cell.nontextvalueformat-0] || "" : "";
                  var newntvf = window.prompt("Advanced Feature:\n\nCustom Numeric Format or Command", ntvf);
                  if (newntvf != null) { // not cancelled
                     if (newntvf.match(/^cmd:/)) {
                        cmd = newntvf.substring(4); // execute as command
                        }
                     else if (newntvf.match(/^edit:/)) {
                        cmd = newntvf.substring(5); // execute as command
                        if (SocialCalc.CtrlSEditor) {
                           SocialCalc.CtrlSEditor(cmd);
                           }
                        return;

socialcalc/socialcalctableeditor.js  view on Meta::CPAN

// *************************************

SocialCalc.InputEcho = function(editor) {

   var scc = SocialCalc.Constants;

   this.editor = editor; // the TableEditor this belongs to
   this.text = ""; // current value of what is displayed
   this.interval = null; // timer handle

   this.container = null; // element containing main echo as well as prompt line
   this.main = null; // main echo area
   this.prompt = null;

   this.functionbox = null; // function chooser dialog

   this.container = document.createElement("div");
   SocialCalc.setStyles(this.container, "display:none;position:absolute;zIndex:10;");

   this.main = document.createElement("div");
   if (scc.defaultInputEchoClass) this.main.className = scc.defaultInputEchoClass;
   if (scc.defaultInputEchoStyle) SocialCalc.setStyles(this.main, scc.defaultInputEchoStyle);
   this.main.innerHTML = "&nbsp;";

   this.container.appendChild(this.main);

   this.prompt = document.createElement("div");
   if (scc.defaultInputEchoPromptClass) this.prompt.className = scc.defaultInputEchoPromptClass;
   if (scc.defaultInputEchoPromptStyle) SocialCalc.setStyles(this.prompt, scc.defaultInputEchoPromptStyle);
   this.prompt.innerHTML = "";

   this.container.appendChild(this.prompt);

   SocialCalc.DragRegister(this.main, true, true, {MouseDown: SocialCalc.DragFunctionStart, MouseMove: SocialCalc.DragFunctionPosition,
                  MouseUp: SocialCalc.DragFunctionPosition,
                  Disabled: null, positionobj: this.container});

   editor.toplevel.appendChild(this.container);

   }

// Methods:

socialcalc/socialcalctableeditor.js  view on Meta::CPAN

   var parts = str.match(/.*[\+\-\*\/\&\^\<\>\=\,\(]([A-Za-z][A-ZA-z]\w*?)\([^\)]*$/);
   if (str.charAt(0)=="=" && parts) {
      fname = parts[1].toUpperCase();
      if (SocialCalc.Formula.FunctionList[fname]) {
         SocialCalc.Formula.FillFunctionInfo(); //  make sure filled
         fstr = SocialCalc.special_chars(fname+"("+SocialCalc.Formula.FunctionArgString(fname)+")");
         }
      else {
         fstr = scc.ietUnknownFunction+fname;
         }
      if (inputecho.prompt.innerHTML != fstr) {
         inputecho.prompt.innerHTML = fstr;
         inputecho.prompt.style.display = "block";
         }
      }
   else if (inputecho.prompt.style.display != "none") {
      inputecho.prompt.innerHTML = "";
      inputecho.prompt.style.display = "none";
      }

   }

SocialCalc.InputEchoHeartbeat = function() {

   var editor = SocialCalc.Keyboard.focusTable; // get TableEditor doing keyboard stuff
   if (!editor) return true; // we're not handling it -- let browser do default

   editor.inputEcho.SetText(editor.inputBox.GetText()+"_");

socialcalc/third-party/wikiwyg/LICENSE  view on Meta::CPAN

3.4. Intellectual Property Matters 
 
    (a) Third Party Claims. If Contributor has knowledge that a 
license under a third party's intellectual property rights is required 
to exercise the rights granted by such Contributor under Sections 
2.1 or 2.2, Contributor must include a text file with the Source Code 
distribution titled "LEGAL'' which describes the claim and the party 
making the claim in sufficient detail that a recipient will know whom 
to contact. If Contributor obtains such knowledge after the 
Modification is made available as described in Section 3.2, 
Contributor shall promptly modify the LEGAL file in all copies 
Contributor makes available thereafter and shall take other steps 
(such as notifying appropriate mailing lists or newsgroups) 
reasonably calculated to inform those who received the Covered 
Code that new knowledge has been obtained. 
 
 
    (b) Contributor APIs. If Contributor's Modifications include an 
application programming interface and Contributor has knowledge 
of patent licenses which are reasonably necessary to implement that 
API, Contributor must also include this information in the LEGAL 



( run in 1.444 second using v1.01-cache-2.11-cpan-6aa56a78535 )