diff options
author | adhitya | 2016-04-10 12:28:28 +0000 |
---|---|---|
committer | adhitya | 2016-04-10 12:28:28 +0000 |
commit | 0b1c069f88dab0288a01c6aed4d77f4e6d2f6474 (patch) | |
tree | b5ae6b1f512a674f79674a12f675d22324cd268f /src/js/index.txt | |
parent | 1993f1da86e293aaf9996b8d7a4f6d9a9224f270 (diff) | |
download | xcos-on-web-0b1c069f88dab0288a01c6aed4d77f4e6d2f6474.tar.gz xcos-on-web-0b1c069f88dab0288a01c6aed4d77f4e6d2f6474.tar.bz2 xcos-on-web-0b1c069f88dab0288a01c6aed4d77f4e6d2f6474.zip |
Removed (un)necessary files
Diffstat (limited to 'src/js/index.txt')
-rw-r--r-- | src/js/index.txt | 316 |
1 files changed, 0 insertions, 316 deletions
diff --git a/src/js/index.txt b/src/js/index.txt deleted file mode 100644 index f3631d6..0000000 --- a/src/js/index.txt +++ /dev/null @@ -1,316 +0,0 @@ -Document: API Specification - -Overview: - - This JavaScript library is divided into 8 packages. The top-level <mxClient> - class includes (or dynamically imports) everything else. The current version - is stored in <mxClient.VERSION>. - - The *editor* package provides the classes required to implement a diagram - editor. The main class in this package is <mxEditor>. - - The *view* and *model* packages implement the graph component, represented - by <mxGraph>. It refers to a <mxGraphModel> which contains <mxCell>s and - caches the state of the cells in a <mxGraphView>. The cells are painted - using a <mxCellRenderer> based on the appearance defined in <mxStylesheet>. - Undo history is implemented in <mxUndoManager>. To display an icon on the - graph, <mxCellOverlay> may be used. Validation rules are defined with - <mxMultiplicity>. - - The *handler*, *layout* and *shape* packages contain event listeners, - layout algorithms and shapes, respectively. The graph event listeners - include <mxRubberband> for rubberband selection, <mxTooltipHandler> - for tooltips and <mxGraphHandler> for basic cell modifications. - <mxCompactTreeLayout> implements a tree layout algorithm, and the - shape package provides various shapes, which are subclasses of - <mxShape>. - - The *util* package provides utility classes including <mxClipboard> for - copy-paste, <mxDatatransfer> for drag-and-drop, <mxConstants> for keys and - values of stylesheets, <mxEvent> and <mxUtils> for cross-browser - event-handling and general purpose functions, <mxResources> for - internationalization and <mxLog> for console output. - - The *io* package implements a generic <mxObjectCodec> for turning - JavaScript objects into XML. The main class is <mxCodec>. - <mxCodecRegistry> is the global registry for custom codecs. - -Events: - - There are three different types of events, namely native DOM events, - <mxEventObjects> which are fired in an <mxEventSource>, and <mxMouseEvents> - which are fired in <mxGraph>. - - Some helper methods for handling native events are provided in <mxEvent>. It - also takes care of resolving cycles between DOM nodes and JavaScript event - handlers, which can lead to memory leaks in IE6. - - Most custom events in mxGraph are implemented using <mxEventSource>. Its - listeners are functions that take a sender and <mxEventObject>. Additionally, - the <mxGraph> class fires special <mxMouseEvents> which are handled using - mouse listeners, which are objects that provide a mousedown, mousemove and - mouseup method. - - Events in <mxEventSource> are fired using <mxEventSource.fireEvent>. - Listeners are added and removed using <mxEventSource.addListener> and - <mxEventSource.removeListener>. <mxMouseEvents> in <mxGraph> are fired using - <mxGraph.fireMouseEvent>. Listeners are added and removed using - <mxGraph.addMouseListener> and <mxGraph.removeMouseListener>, respectively. - -Key bindings: - - The following key bindings are defined for mouse events in the client across - all browsers and platforms: - - - Control-Drag: Duplicates (clones) selected cells - - Shift-Rightlick: Shows the context menu - - Alt-Click: Forces rubberband (aka. marquee) - - Control-Select: Toggles the selection state - - Shift-Drag: Constrains the offset to one direction - - Shift-Control-Drag: Panning (also Shift-Rightdrag) - -Configuration: - - The following global variables may be defined before the client is loaded to - specify its language or base path, respectively. - - - mxBasePath: Specifies the path in <mxClient.basePath>. - - mxImageBasePath: Specifies the path in <mxClient.imageBasePath>. - - mxLanguage: Specifies the language for resources in <mxClient.language>. - - mxDefaultLanguage: Specifies the default language in <mxClient.defaultLanguage>. - - mxLoadResources: Specifies if any resources should be loaded. Default is true. - - mxLoadStylesheets: Specifies if any stylesheets should be loaded. Default is true. - -Reserved Words: - - The mx prefix is used for all classes and objects in mxGraph. The mx prefix - can be seen as the global namespace for all JavaScript code in mxGraph. The - following fieldnames should not be used in objects. - - - *mxObjectId*: If the object is used with mxObjectIdentity - - *as*: If the object is a field of another object - - *id*: If the object is an idref in a codec - - *mxListenerList*: Added to DOM nodes when used with <mxEvent> - - *window._mxDynamicCode*: Temporarily used to load code in Safari and Chrome - (see <mxClient.include>). - - *_mxJavaScriptExpression*: Global variable that is temporarily used to - evaluate code in Safari, Opera, Firefox 3 and IE (see <mxUtils.eval>). - -Files: - - The library contains these relative filenames. All filenames are relative - to <mxClient.basePath>. - -Built-in Images: - - All images are loaded from the <mxClient.imageBasePath>, - which you can change to reflect your environment. The image variables can - also be changed individually. - - - mxGraph.prototype.collapsedImage - - mxGraph.prototype.expandedImage - - mxGraph.prototype.warningImage - - mxWindow.prototype.closeImage - - mxWindow.prototype.minimizeImage - - mxWindow.prototype.normalizeImage - - mxWindow.prototype.maximizeImage - - mxWindow.prototype.resizeImage - - mxPopupMenu.prototype.submenuImage - - mxUtils.errorImage - - mxConstraintHandler.prototype.pointImage - - The basename of the warning image (images/warning without extension) used in - <mxGraph.setCellWarning> is defined in <mxGraph.warningImage>. - -Resources: - - The <mxEditor> and <mxGraph> classes add the following resources to - <mxResources> at class loading time: - - - resources/editor*.properties - - resources/graph*.properties - - By default, the library ships with English and German resource files. - -Images: - - Recommendations for using images. Use GIF images (256 color palette) in HTML - elements (such as the toolbar and context menu), and PNG images (24 bit) for - all images which appear inside the graph component. - - - For PNG images inside HTML elements, Internet Explorer will ignore any - transparency information. - - For GIF images inside the graph, Firefox on the Mac will display strange - colors. Furthermore, only the first image for animated GIFs is displayed - on the Mac. - - For faster image rendering during application runtime, images can be - prefetched using the following code: - - (code) - var image = new Image(); - image.src = url_to_image; - (end) - -Deployment: - - The client is added to the page using the following script tag inside the - head of a document: - - (code) - <script type="text/javascript" src="js/mxClient.js"></script> - (end) - - The deployment version of the mxClient.js file contains all required code - in a single file. For deployment, the complete javascript/src directory is - required. - -Source Code: - - If you are a source code customer and you wish to develop using the - full source code, the commented source code is shipped in the - javascript/devel/source.zip file. It contains one file for each class - in mxGraph. To use the source code the source.zip file must be - uncompressed and the mxClient.js URL in the HTML page must be changed - to reference the uncompressed mxClient.js from the source.zip file. - -Compression: - - When using Apache2 with mod_deflate, you can use the following directive - in src/js/.htaccess to speedup the loading of the JavaScript sources: - - (code) - SetOutputFilter DEFLATE - (end) - -Classes: - - There are two types of "classes" in mxGraph: classes and singletons (where - only one instance exists). Singletons are mapped to global objects where the - variable name equals the classname. For example mxConstants is an object with - all the constants defined as object fields. Normal classes are mapped to a - constructor function and a prototype which defines the instance fields and - methods. For example, <mxEditor> is a function and mxEditor.prototype is the - prototype for the object that the mxEditor function creates. The mx prefix is - a convention that is used for all classes in the mxGraph package to avoid - conflicts with other objects in the global namespace. - -Subclassing: - - For subclassing, the superclass must provide a constructor that is either - parameterless or handles an invocation with no arguments. Furthermore, the - special constructor field must be redefined after extending the prototype. - For example, the superclass of mxEditor is <mxEventSource>. This is - represented in JavaScript by first "inheriting" all fields and methods from - the superclass by assigning the prototype to an instance of the superclass, - eg. mxEditor.prototype = new mxEventSource() and redefining the constructor - field using mxEditor.prototype.constructor = mxEditor. The latter rule is - applied so that the type of an object can be retrieved via the name of it’s - constructor using mxUtils.getFunctionName(obj.constructor). - -Constructor: - - For subclassing in mxGraph, the same scheme should be applied. For example, - for subclassing the <mxGraph> class, first a constructor must be defined for - the new class. The constructor calls the super constructor with any arguments - that it may have using the call function on the mxGraph function object, - passing along explitely each argument: - - (code) - function MyGraph(container) - { - mxGraph.call(this, container); - } - (end) - - The prototype of MyGraph inherits from mxGraph as follows. As usual, the - constructor is redefined after extending the superclass: - - (code) - MyGraph.prototype = new mxGraph(); - MyGraph.prototype.constructor = MyGraph; - (end) - - You may want to define the codec associated for the class after the above - code. This code will be executed at class loading time and makes sure the - same codec is used to encode instances of mxGraph and MyGraph. - - (code) - var codec = mxCodecRegistry.getCodec(mxGraph); - codec.template = new MyGraph(); - mxCodecRegistry.register(codec); - (end) - -Functions: - - In the prototype for MyGraph, functions of mxGraph can then be extended as - follows. - - (code) - MyGraph.prototype.isCellSelectable = function(cell) - { - var selectable = mxGraph.prototype.isSelectable.apply(this, arguments); - - var geo = this.model.getGeometry(cell); - return selectable && (geo == null || !geo.relative); - } - (end) - - The supercall in the first line is optional. It is done using the apply - function on the isSelectable function object of the mxGraph prototype, using - the special this and arguments variables as parameters. Calls to the - superclass function are only possible if the function is not replaced in the - superclass as follows, which is another way of “subclassing” in JavaScript. - - (code) - mxGraph.prototype.isCellSelectable = function(cell) - { - var geo = this.model.getGeometry(cell); - return selectable && - (geo == null || - !geo.relative); - } - (end) - - The above scheme is useful if a function definition needs to be replaced - completely. - - In order to add new functions and fields to the subclass, the following code - is used. The example below adds a new function to return the XML - representation of the graph model: - - (code) - MyGraph.prototype.getXml = function() - { - var enc = new mxCodec(); - return enc.encode(this.getModel()); - } - (end) - -Variables: - - Likewise, a new field is declared and defined as follows. - - (code) - MyGraph.prototype.myField = 'Hello, World!'; - (end) - - Note that the value assigned to myField is created only once, that is, all - instances of MyGraph share the same value. If you require instance-specific - values, then the field must be defined in the constructor instead. - - (code) - function MyGraph(container) - { - mxGraph.call(this, container); - - this.myField = new Array(); - } - (end) - - Finally, a new instance of MyGraph is created using the following code, where - container is a DOM node that acts as a container for the graph view: - - (code) - var graph = new MyGraph(container); - (end) |