[Libreoffice-commits] online.git: loleaflet/src

Mihai Varga mihai.varga at collabora.com
Mon May 25 07:53:17 PDT 2015


 loleaflet/src/control/Control.Parts.js |   19 +++++++++++++++++++
 loleaflet/src/layer/tile/TileLayer.js  |    4 +++-
 2 files changed, 22 insertions(+), 1 deletion(-)

New commits:
commit 29d4296d12998852448be937c98247970c023483
Author: Mihai Varga <mihai.varga at collabora.com>
Date:   Mon May 25 17:52:36 2015 +0300

    Disable prev/next part buttons for the first/last part

diff --git a/loleaflet/src/control/Control.Parts.js b/loleaflet/src/control/Control.Parts.js
index 7b7cc6f..5aa3d28 100644
--- a/loleaflet/src/control/Control.Parts.js
+++ b/loleaflet/src/control/Control.Parts.js
@@ -21,15 +21,22 @@ L.Control.Parts = L.Control.extend({
 		this._nextPartButton = this._createButton(options.nextPartText, options.nextPartTitle,
 		        partName + '-next', container, this._nextPart);
 
+		this._parts = options.parts;
+		this._currentPart = options.currentPart;
+		this._updateDisabled();
 		return container;
 	},
 
 	_prevPart: function (e) {
 		this._map.fire('prevpart');
+		this._currentPart -= 1;
+		this._updateDisabled();
 	},
 
 	_nextPart: function (e) {
 		this._map.fire('nextpart');
+		this._currentPart += 1;
+		this._updateDisabled();
 	},
 
 	_createButton: function (html, title, className, container, fn) {
@@ -45,6 +52,18 @@ L.Control.Parts = L.Control.extend({
 		    .on(link, 'click', this._refocusOnMap, this);
 
 		return link;
+	},
+
+	_updateDisabled: function () {
+		var className = 'leaflet-disabled';
+		L.DomUtil.removeClass(this._prevPartButton, className);
+		L.DomUtil.removeClass(this._nextPartButton, className);
+		if (this._currentPart === 0) {
+			L.DomUtil.addClass(this._prevPartButton, className);
+		}
+		if (this._currentPart === this._parts - 1) {
+			L.DomUtil.addClass(this._nextPartButton, className);
+		}
 	}
 });
 
diff --git a/loleaflet/src/layer/tile/TileLayer.js b/loleaflet/src/layer/tile/TileLayer.js
index a181c6f..7f45261 100644
--- a/loleaflet/src/layer/tile/TileLayer.js
+++ b/loleaflet/src/layer/tile/TileLayer.js
@@ -122,7 +122,9 @@ L.TileLayer = L.GridLayer.extend({
 				this._updateMaxBounds();
 				this._documentInfo = textMsg;
 				if (this._parts === undefined && command.parts > 1) {
-					this._map.addControl(L.control.parts({'parts':command.parts}));
+					this._map.addControl(L.control.parts({
+						'parts': command.parts,
+						'currentPart': command.currentPart}));
 				}
 				this._parts = command.parts;
 				this._currentPart = command.currentPart;


More information about the Libreoffice-commits mailing list