File: webclipbinding.js

package info (click to toggle)
virtuoso-opensource 6.1.4%2Bdfsg1-7
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 245,116 kB
  • sloc: ansic: 639,631; sql: 439,225; xml: 287,085; java: 61,048; sh: 38,723; cpp: 36,889; cs: 25,240; php: 12,562; yacc: 9,036; lex: 7,149; makefile: 6,093; jsp: 4,447; awk: 1,643; perl: 1,017; ruby: 1,003; python: 329
file content (43 lines) | stat: -rw-r--r-- 1,543 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
/*
 *  $Id: webclipbinding.js,v 1.6.2.3 2010/04/06 16:46:12 source Exp $
 *
 *  This file is part of the OpenLink Software Ajax Toolkit (OAT) project.
 *
 *  Copyright (C) 2005-2010 OpenLink Software
 *
 *  See LICENSE file for details.
 */
/*
	OAT.WebClipBindings.bind(div, type, toXMLcallback, fromXMLcallback, activeCallback, inactiveCallback)
*/

OAT.WebClipBindings = {
	bind:function(div, typeCallback, toXMLcallback, fromXMLcallback, activeCallback, inactiveCallback) {
		var copyCallback = function() {
			var content = new LiveClipboardContent();
			content.data.formats[0] = new DataFormat();
			content.data.formats[0].type = typeCallback();
			content.data.formats[0].contentType = "application/xhtml+xml";
			content.data.formats[0].items = new Array(1);
			content.data.formats[0].items[0] = new DataItem();
			content.data.formats[0].items[0].data = toXMLcallback();
			return content;
		} /* copyCallback */

		var pasteCallback = function(clipData) {
			var type = typeCallback();
			for (var i=0; i<clipData.data.formats.length;i++) {
				if ((clipData.data.formats[i].type == type) &&
					(clipData.data.formats[i].items.length > 0) &&
					(clipData.data.formats[i].items[0].data)) {

					var xml = clipData.data.formats[i].items[0].data;
					fromXMLcallback(xml);
					return;
				} /* if suitable format found */
			} /* for all formats in clipboard */
		} /* pasteCallback */

        var webclip = new WebClip($(div),copyCallback,pasteCallback,activeCallback,inactiveCallback);
	} /* OAT.WebClipBindings.bind() */
}