Add more documentation
parent
2f691ed277
commit
c44d298721
|
@ -27,8 +27,20 @@ The options are:
|
||||||
* readOnly: Set to true if the viewer should not be able to edit the map.
|
* readOnly: Set to true if the viewer should not be able to edit the map.
|
||||||
* zoom: how much the map should be zoomed.
|
* zoom: how much the map should be zoomed.
|
||||||
* size: size of the map area.
|
* size: size of the map area.
|
||||||
* viewport
|
* viewPort: set this to the same as the size
|
||||||
* persistenceManager: Classname of a class that extends mindplot.PersistenceManager (see ImplementingPersistence for more info.)
|
* persistenceManager: Classname of a class that extends mindplot.PersistenceManager (see ImplementingPersistence for more info.)
|
||||||
* mapId: The id of the map
|
* mapId: The id of the map
|
||||||
* container: The id of the containing div.
|
* container: The id of the containing div.
|
||||||
|
|
||||||
|
Viewport and size should be set like this::
|
||||||
|
|
||||||
|
var containerSize = {
|
||||||
|
height: parseInt(screen.height),
|
||||||
|
width: parseInt(screen.width)
|
||||||
|
};
|
||||||
|
|
||||||
|
var viewPort = {
|
||||||
|
height: parseInt(window.innerHeight - 70), // Footer and Header
|
||||||
|
width: parseInt(window.innerWidth)
|
||||||
|
};
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,86 @@
|
||||||
|
# Implementing custom storage
|
||||||
|
|
||||||
|
To implement a custom backend, you need to create your own implementation of the mindplot.PersistenceManager class.
|
||||||
|
|
||||||
|
Here is an example skeleton::
|
||||||
|
|
||||||
|
function createStorageManager(mindplot) {
|
||||||
|
mindplot.RestStorageManager = new Class({
|
||||||
|
Extends:mindplot.PersistenceManager,
|
||||||
|
initialize: function(url) {
|
||||||
|
this.parent();
|
||||||
|
this.backendUrl = url;
|
||||||
|
},
|
||||||
|
|
||||||
|
saveMapXml : function(mapId, mapXml, pref, saveHistory, events) {
|
||||||
|
var url = this.backendUrl + mapId;
|
||||||
|
var xmlRequest = new Request({
|
||||||
|
url: url,
|
||||||
|
method: 'post',
|
||||||
|
async: false,
|
||||||
|
onSuccess: function(responseText) {
|
||||||
|
events.onSuccess();
|
||||||
|
},
|
||||||
|
onError: function (text, error) {
|
||||||
|
console.log("Error saving mindmap to: " + url, text, error);
|
||||||
|
events.onError();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
xmlRequest.send();
|
||||||
|
},
|
||||||
|
|
||||||
|
loadMapDom : function(mapId) {
|
||||||
|
var xmlRequest = new Request({
|
||||||
|
url: this.backendUrl + mapId,
|
||||||
|
method: 'get',
|
||||||
|
async: false,
|
||||||
|
onSuccess: function(responseText) {
|
||||||
|
xml = responseText;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
xmlRequest.send();
|
||||||
|
|
||||||
|
// If I could not load it from a file, hard code one.
|
||||||
|
if (xml == null) {
|
||||||
|
throw "Map could not be loaded";
|
||||||
|
}
|
||||||
|
return core.Utils.createDocumentFromText(xml);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
);
|
||||||
|
return new mindplot.RestStorageManager(url);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
In your script for loading the mindmap you add a call to the callback into the loadcomplete method::
|
||||||
|
|
||||||
|
$(document).addEvent('loadcomplete', function(resource) {
|
||||||
|
//Asset.javascript("{{ asset('bundles/fpgadmin/js/FpgMindmapPersistence.js')}}");
|
||||||
|
// Options has been defined in by a external ile ?
|
||||||
|
var options = {
|
||||||
|
'persistenceManager' : createStorageManager(mindplot, "http://localhost/my/rest/interface");
|
||||||
|
viewPort: {
|
||||||
|
height: parseInt(window.innerHeight - 70), // Footer and Header
|
||||||
|
width: parseInt(window.innerWidth)
|
||||||
|
},
|
||||||
|
size : {
|
||||||
|
height: parseInt(screen.height),
|
||||||
|
width: parseInt(screen.width)
|
||||||
|
},
|
||||||
|
"readOnly":false,
|
||||||
|
"zoom":1.3,
|
||||||
|
"container":"mindplot"
|
||||||
|
"mapId" : "myMapId"
|
||||||
|
};
|
||||||
|
var designer = buildDesigner(options);
|
||||||
|
var persistence = mindplot.PersistenceManager.getInstance();
|
||||||
|
var mindmap;
|
||||||
|
try {
|
||||||
|
mindmap = persistence.load(mapId);
|
||||||
|
} catch(e) {
|
||||||
|
// If the map could not be loaded, create a new empty map...
|
||||||
|
mindmap = mindplot.model.Mindmap.buildEmpty(mapId);
|
||||||
|
}
|
||||||
|
designer.loadMap(mindmap);
|
||||||
|
});
|
|
@ -36,6 +36,13 @@ This will start the application on the URL: http://localhost:8080/wise-webapp/.
|
||||||
|
|
||||||
User: test@wisemapping.org
|
User: test@wisemapping.org
|
||||||
|
|
||||||
|
|
||||||
|
## Running the JS only version
|
||||||
|
|
||||||
|
Start by creating the .zip file:
|
||||||
|
|
||||||
|
`mvn assembly:assembly -Dmaven.test.skip=true`
|
||||||
|
|
||||||
## Author
|
## Author
|
||||||
|
|
||||||
* Pablo Luna
|
* Pablo Luna
|
||||||
|
|
Loading…
Reference in New Issue