aboutsummaryrefslogtreecommitdiffhomepage
path: root/public/bower_components/jvectormap/src/region.js
diff options
context:
space:
mode:
Diffstat (limited to 'public/bower_components/jvectormap/src/region.js')
-rw-r--r--public/bower_components/jvectormap/src/region.js45
1 files changed, 45 insertions, 0 deletions
diff --git a/public/bower_components/jvectormap/src/region.js b/public/bower_components/jvectormap/src/region.js
new file mode 100644
index 0000000..9ed9855
--- /dev/null
+++ b/public/bower_components/jvectormap/src/region.js
@@ -0,0 +1,45 @@
+jvm.Region = function(config){
+ var bbox,
+ text,
+ offsets,
+ labelDx,
+ labelDy;
+
+ this.config = config;
+ this.map = this.config.map;
+
+ this.shape = config.canvas.addPath({
+ d: config.path,
+ 'data-code': config.code
+ }, config.style, config.canvas.rootElement);
+ this.shape.addClass('jvectormap-region jvectormap-element');
+
+ bbox = this.shape.getBBox();
+
+ text = this.getLabelText(config.code);
+ if (this.config.label && text) {
+ offsets = this.getLabelOffsets(config.code);
+ this.labelX = bbox.x + bbox.width / 2 + offsets[0];
+ this.labelY = bbox.y + bbox.height / 2 + offsets[1];
+ this.label = config.canvas.addText({
+ text: text,
+ 'text-anchor': 'middle',
+ 'alignment-baseline': 'central',
+ x: this.labelX,
+ y: this.labelY,
+ 'data-code': config.code
+ }, config.labelStyle, config.labelsGroup);
+ this.label.addClass('jvectormap-region jvectormap-element');
+ }
+};
+
+jvm.inherits(jvm.Region, jvm.MapObject);
+
+jvm.Region.prototype.updateLabelPosition = function(){
+ if (this.label) {
+ this.label.set({
+ x: this.labelX * this.map.scale + this.map.transX * this.map.scale,
+ y: this.labelY * this.map.scale + this.map.transY * this.map.scale
+ });
+ }
+}; \ No newline at end of file