1b06290d2b
The JS code always passes in 0 for now. The server parses the parameter and calls LibreOfficeKitDocument::setPart() before calling paintTile(). Probably also the status, key, mouse and selection messages will need a part number. The intent is after all that the protocol is as stateless as possible. (So maybe we should also pass the document URL in each message?) |
||
---|---|---|
.. | ||
build | ||
debug | ||
dist | ||
node_modules | ||
plugins/draw-0.2.4 | ||
spec | ||
src | ||
.eslintrc | ||
.gitignore | ||
.npmignore | ||
.travis.yml | ||
CHANGELOG.md | ||
FAQ.md | ||
Jakefile.js | ||
LICENSE | ||
package.json | ||
PLUGIN-GUIDE.md | ||
README |
Leaflet platform for LibreOffice On-Line ======================================== This is the client part of LibreOffice On-Line. For the server part, see the ../loolwsd/README, and install it first. Build dependencies ------------------ First you need to install 'jake'. As root, do: npm install -g jake npm install Alternatively, you can use the provided zip (as a normal user): unzip node_modules/modules.zip -d node_modules Building -------- As a normal user: jake build cd plugins/draw-0.2.4 jake build Running ------- To see an example: * run loolwsd, like: ./loolwsd --lopath=<...>/instdir/program * edit debug/document/document_simple_example.html, and change /PATH/TO/DOCUMENT to a file reachable by loolwsd * open debug/document/document_simple_example.html in the browser, like: firefox debug/document/document_simple_example.html and you should see the document in the browser. In case anything goes wrong, check the loolwsd console for the debugging output. Contributing ------------ Code conventions: * 'jake lint' should be run before commiting * files should have unix line terminators (LF) * tools to convert files: dos2unix or fromdos Implementation details ---------------------- Loading a document: The map should have the following options: - bounds = top left [0, 0] and something larger in the bottom right corner which will later be updated - center at [0, 0] this will try to place the [0, 0] point in the middle of the map, but it will be moved in the top left corner when the maxBounds are set - zoom = defautl zoom value, zooming in and out will refer to this value - server address The layer (actual document) should have the following options: - doc = path to the document that will be loaded - useSocket = tells the map the tiles will be received from a websocket connection. If this parameter is false, an image will be loaded in each tile How zooming works: The zoom level goes from 1 to 20 (thoes limits can be changed) and the initial level is 10, which represents the 100% zoom level. 9 = 90%, 11 = 110% and so on. Controls are added above the map in a div called "controls" is intended to be used as a toolbar. There is no leaflet method of adding them in a separte div, so for now this is done in the html document after the map initialization.