Skip to content

Commit 00ae2dd

Browse files
committed
fix and test layout.calendar inheritance
1 parent 8e1747f commit 00ae2dd

25 files changed

+384
-35
lines changed

src/components/colorbar/draw.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,8 @@ module.exports = function draw(gd, id) {
174174
axisOptions = {
175175
letter: 'y',
176176
font: fullLayout.font,
177-
noHover: true
177+
noHover: true,
178+
calendar: fullLayout.calendar // not really necessary (yet?)
178179
};
179180

180181
// Coerce w.r.t. Axes layoutAttributes:

src/plots/cartesian/axis_defaults.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ module.exports = function handleAxisDefaults(containerIn, containerOut, coerce,
7474
}
7575
}
7676

77-
if(axType === 'date') coerce('calendar');
77+
if(axType === 'date') coerce('calendar', options.calendar);
7878

7979
setConvert(containerOut);
8080

src/plots/cartesian/layout_defaults.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,8 @@ module.exports = function supplyLayoutDefaults(layoutIn, layoutOut, fullData) {
126126
showGrid: !noGrids[axName],
127127
name: axName,
128128
data: fullData,
129-
bgColor: bgColor
129+
bgColor: bgColor,
130+
calendar: layoutOut.calendar
130131
},
131132
positioningOptions = {
132133
letter: axLetter,
@@ -140,7 +141,7 @@ module.exports = function supplyLayoutDefaults(layoutIn, layoutOut, fullData) {
140141
return Lib.coerce(axLayoutIn, axLayoutOut, layoutAttributes, attr, dflt);
141142
}
142143

143-
handleAxisDefaults(axLayoutIn, axLayoutOut, coerce, defaultOptions);
144+
handleAxisDefaults(axLayoutIn, axLayoutOut, coerce, defaultOptions, layoutOut);
144145
handlePositionDefaults(axLayoutIn, axLayoutOut, coerce, positioningOptions);
145146

146147
layoutOut[axName] = axLayoutOut;

src/plots/gl3d/layout/axis_defaults.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,8 @@ module.exports = function supplyLayoutDefaults(layoutIn, layoutOut, options) {
4646
letter: axName[0],
4747
data: options.data,
4848
showGrid: true,
49-
bgColor: options.bgColor
49+
bgColor: options.bgColor,
50+
calendar: options.calendar
5051
});
5152

5253
coerce('gridcolor', colorMix(containerOut.color, options.bgColor, gridLightness).toRgbString());

src/plots/gl3d/layout/defaults.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,8 @@ module.exports = function supplyLayoutDefaults(layoutIn, layoutOut, fullData) {
4141
font: layoutOut.font,
4242
fullData: fullData,
4343
getDfltFromLayout: getDfltFromLayout,
44-
paper_bgcolor: layoutOut.paper_bgcolor
44+
paper_bgcolor: layoutOut.paper_bgcolor,
45+
calendar: layoutOut.calendar
4546
});
4647
};
4748

@@ -97,7 +98,8 @@ function handleGl3dDefaults(sceneLayoutIn, sceneLayoutOut, coerce, opts) {
9798
font: opts.font,
9899
scene: opts.id,
99100
data: opts.fullData,
100-
bgColor: bgColorCombined
101+
bgColor: bgColorCombined,
102+
calendar: opts.calendar
101103
});
102104

103105
coerce('dragmode', opts.getDfltFromLayout('dragmode'));

src/traces/contour/defaults.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout
2222
return Lib.coerce(traceIn, traceOut, attributes, attr, dflt);
2323
}
2424

25-
var len = handleXYZDefaults(traceIn, traceOut, coerce);
25+
var len = handleXYZDefaults(traceIn, traceOut, coerce, layout);
2626
if(!len) {
2727
traceOut.visible = false;
2828
return;

src/traces/heatmap/defaults.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout
2222
return Lib.coerce(traceIn, traceOut, attributes, attr, dflt);
2323
}
2424

25-
var len = handleXYZDefaults(traceIn, traceOut, coerce);
25+
var len = handleXYZDefaults(traceIn, traceOut, coerce, layout);
2626
if(!len) {
2727
traceOut.visible = false;
2828
return;

src/traces/heatmap/xyz_defaults.js

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ var isNumeric = require('fast-isnumeric');
1414
var hasColumns = require('./has_columns');
1515

1616

17-
module.exports = function handleXYZDefaults(traceIn, traceOut, coerce) {
17+
module.exports = function handleXYZDefaults(traceIn, traceOut, coerce, layout) {
1818
var z = coerce('z');
1919
var x, y;
2020

@@ -37,8 +37,9 @@ module.exports = function handleXYZDefaults(traceIn, traceOut, coerce) {
3737
coerce('transpose');
3838
}
3939

40-
coerce('xcalendar');
41-
coerce('ycalendar');
40+
var dfltCalendar = layout.calendar;
41+
coerce('xcalendar', dfltCalendar);
42+
coerce('ycalendar', dfltCalendar);
4243

4344
return traceOut.z.length;
4445
};

src/traces/histogram/defaults.js

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,6 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout
2626
var x = coerce('x'),
2727
y = coerce('y');
2828

29-
coerce('xcalendar');
30-
coerce('ycalendar');
31-
3229
coerce('text');
3330

3431
var orientation = coerce('orientation', (y && !x) ? 'h' : 'v'),
@@ -39,6 +36,10 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout
3936
return;
4037
}
4138

39+
var dfltCalendar = layout.calendar;
40+
coerce('xcalendar', dfltCalendar);
41+
coerce('ycalendar', dfltCalendar);
42+
4243
var hasAggregationData = traceOut[orientation === 'h' ? 'x' : 'y'];
4344
if(hasAggregationData) coerce('histfunc');
4445

src/traces/histogram2d/defaults.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,12 @@ var colorscaleDefaults = require('../../components/colorscale/defaults');
1616
var attributes = require('./attributes');
1717

1818

19-
module.exports = function supplyDefaults(traceIn, traceOut, layout) {
19+
module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout) {
2020
function coerce(attr, dflt) {
2121
return Lib.coerce(traceIn, traceOut, attributes, attr, dflt);
2222
}
2323

24-
handleSampleDefaults(traceIn, traceOut, coerce);
24+
handleSampleDefaults(traceIn, traceOut, coerce, layout);
2525

2626
var zsmooth = coerce('zsmooth');
2727
if(zsmooth === false) {

0 commit comments

Comments
 (0)