Skip to content

Commit 90d4cea

Browse files
committed
Simplify setting of ticks
1 parent cb74d66 commit 90d4cea

File tree

1 file changed

+17
-17
lines changed

1 file changed

+17
-17
lines changed

src/core/core.scale.js

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -251,7 +251,7 @@ var Scale = Element.extend({
251251
update: function(maxWidth, maxHeight, margins) {
252252
var me = this;
253253
var optionTicks = me.options.ticks;
254-
var i, ilen, labels, label, ticks, tick;
254+
var i, ilen, labels, ticks;
255255

256256
// Update Lifecycle - Probably don't want to ever extend or overwrite this function ;)
257257
me.beforeUpdate();
@@ -293,10 +293,15 @@ var Scale = Element.extend({
293293

294294
// New implementations should return an array of objects but for BACKWARD COMPAT,
295295
// we still support no return (`this.ticks` internally set by calling this method).
296-
ticks = me.buildTicks() || [];
296+
ticks = me.buildTicks();
297297

298298
// Allow modification of ticks in callback.
299-
ticks = me.afterBuildTicks(ticks) || ticks;
299+
if (ticks) {
300+
ticks = me.afterBuildTicks(ticks);
301+
} else {
302+
// Support old implementations (that modified `this.ticks` directly in buildTicks)
303+
me.ticks = me.afterBuildTicks(me.ticks);
304+
}
300305

301306
me.beforeTickToLabelConversion();
302307

@@ -312,16 +317,17 @@ var Scale = Element.extend({
312317
// IMPORTANT: from this point, we consider that `this.ticks` will NEVER change!
313318

314319
// BACKWARD COMPAT: synchronize `_ticks` with labels (so potentially `this.ticks`)
315-
for (i = 0, ilen = labels.length; i < ilen; ++i) {
316-
label = labels[i];
317-
tick = ticks[i];
318-
if (!tick) {
320+
if (ticks) {
321+
for (i = 0, ilen = labels.length; i < ilen; ++i) {
322+
ticks[i].label = labels[i];
323+
}
324+
} else {
325+
ticks = [];
326+
for (i = 0, ilen = labels.length; i < ilen; ++i) {
319327
ticks.push({
320-
label: label,
328+
label: labels[i],
321329
major: false
322330
});
323-
} else {
324-
tick.label = label;
325331
}
326332
}
327333

@@ -395,13 +401,7 @@ var Scale = Element.extend({
395401
buildTicks: helpers.noop,
396402
afterBuildTicks: function(ticks) {
397403
var me = this;
398-
// ticks is empty for old axis implementations here
399-
if (helpers.isArray(ticks) && ticks.length) {
400-
return helpers.callback(me.options.afterBuildTicks, [me, ticks]);
401-
}
402-
// Support old implementations (that modified `this.ticks` directly in buildTicks)
403-
me.ticks = helpers.callback(me.options.afterBuildTicks, [me, me.ticks]) || me.ticks;
404-
return ticks;
404+
return helpers.callback(me.options.afterBuildTicks, [me, ticks]) || ticks;
405405
},
406406

407407
beforeTickToLabelConversion: function() {

0 commit comments

Comments
 (0)