| `align` | `string` | `'center'` | Alignment of the legend. [more...](#align)
| `maxHeight` | `number` | | Maximum height of the legend, in pixels
| `maxWidth` | `number` | | Maximum width of the legend, in pixels
-| `fullWidth` | `boolean` | `true` | Marks that this box should take the full width of the canvas (pushing down other boxes). This is unlikely to need to be changed in day-to-day use.
+| `fullSize` | `boolean` | `true` | Marks that this box should take the full width/height of the canvas (moving other boxes). This is unlikely to need to be changed in day-to-day use.
| `onClick` | `function` | | A callback that is called when a click event is registered on a label item. Arguments: `[event, legendItem, legend]`.
| `onHover` | `function` | | A callback that is called when a 'mousemove' event is registered on top of a label item. Arguments: `[event, legendItem, legend]`.
| `onLeave` | `function` | | A callback that is called when a 'mousemove' event is registered outside of a previously hovered label item. Arguments: `[event, legendItem, legend]`.
* `helpers.callCallback` was renamed to `helpers.callback`
* `helpers.drawRoundedRectangle` was renamed to `helpers.roundedRect`
* `helpers.getValueOrDefault` was renamed to `helpers.valueOrDefault`
+* `LayoutItem.fullWidth` was renamed to `LayoutItem.fullSize`
* `Scale.calculateTickRotation` was renamed to `Scale.calculateLabelRotation`
* `Tooltip.options.legendColorBackgroupd` was renamed to `Tooltip.options.multiKeyBackground`
* `DatasetController.onDataUnshift` was renamed to `DatasetController._onDataUnshift`
* `DatasetController.removeElements` was renamed to `DatasetController._removeElements`
* `DatasetController.resyncElements` was renamed to `DatasetController._resyncElements`
+* `LayoutItem.isFullWidth` was renamed to `LayoutItem.isFullSize`
* `RadialLinearScale.setReductions` was renamed to `RadialLinearScale._setReductions`
* `Scale.handleMargins` was renamed to `Scale._handleMargins`
each(scales, (scale) => {
// Set LayoutItem parameters for backwards compatibility
- scale.fullWidth = scale.options.fullWidth;
+ scale.fullSize = scale.options.fullSize;
scale.position = scale.options.position;
scale.weight = scale.options.weight;
layouts.addBox(me, scale);
layout = layouts[i];
// store dimensions used instead of available chartArea in fitBoxes
if (layout.horizontal) {
- layout.width = layout.box.fullWidth && params.availableWidth;
+ layout.width = layout.box.fullSize && params.availableWidth;
layout.height = params.hBoxMaxHeight;
} else {
layout.width = params.vBoxMaxWidth;
- layout.height = layout.box.fullWidth && params.availableHeight;
+ layout.height = layout.box.fullSize && params.availableHeight;
}
}
}
refit = true;
}
}
- if (!box.fullWidth) { // fullWidth boxes don't need to be re-fitted in any case
+ if (!box.fullSize) { // fullSize boxes don't need to be re-fitted in any case
refitBoxes.push(layout);
}
}
layout = boxes[i];
box = layout.box;
if (layout.horizontal) {
- box.left = box.fullWidth ? userPadding.left : chartArea.left;
- box.right = box.fullWidth ? params.outerWidth - userPadding.right : chartArea.left + chartArea.w;
+ box.left = box.fullSize ? userPadding.left : chartArea.left;
+ box.right = box.fullSize ? params.outerWidth - userPadding.right : chartArea.left + chartArea.w;
box.top = y;
box.bottom = y + box.height;
box.width = box.right - box.left;
} else {
box.left = x;
box.right = x + box.width;
- box.top = box.fullWidth ? userPadding.top : chartArea.top;
- box.bottom = box.fullWidth ? params.outerHeight - userPadding.right : chartArea.top + chartArea.h;
+ box.top = box.fullSize ? userPadding.top : chartArea.top;
+ box.bottom = box.fullSize ? params.outerHeight - userPadding.right : chartArea.top + chartArea.h;
box.height = box.bottom - box.top;
x = box.right;
}
* @prop {string} position - The position of the item in the chart layout. Possible values are
* 'left', 'top', 'right', 'bottom', and 'chartArea'
* @prop {number} weight - The weight used to sort the item. Higher weights are further away from the chart area
- * @prop {boolean} fullWidth - if true, and the item is horizontal, then push vertical boxes down
+ * @prop {boolean} fullSize - if true, and the item is horizontal, then push vertical boxes down
* @prop {function} isHorizontal - returns true if the layout item is horizontal (ie. top or bottom)
* @prop {function} update - Takes two parameters: width and height. Returns size of item
* @prop {function} draw - Draws the element
}
// initialize item with default values
- item.fullWidth = item.fullWidth || false;
+ item.fullSize = item.fullSize || false;
item.position = item.position || 'top';
item.weight = item.weight || 0;
// @ts-ignore
* @param {object} options - the new item options.
*/
configure(chart, item, options) {
- const props = ['fullWidth', 'position', 'weight'];
+ const props = ['fullSize', 'position', 'weight'];
const ilen = props.length;
let i = 0;
let prop;
/**
* @return {boolean}
*/
- isFullWidth() {
- return this.options.fullWidth;
+ isFullSize() {
+ return this.options.fullSize;
}
/**
this._margins = undefined;
this.position = undefined;
this.weight = undefined;
- this.fullWidth = undefined;
+ this.fullSize = undefined;
}
update(maxWidth, maxHeight, margins) {
display: true,
position: 'top',
align: 'center',
- fullWidth: true,
+ fullSize: true,
reverse: false,
weight: 1000,
this.height = undefined;
this.position = undefined;
this.weight = undefined;
- this.fullWidth = undefined;
+ this.fullSize = undefined;
}
update(maxWidth, maxHeight) {
font: {
style: 'bold',
},
- fullWidth: true,
+ fullSize: true,
padding: 10,
position: 'top',
text: '',
x2: {
type: 'category',
position: 'top',
- fullWidth: true,
+ fullSize: true,
offset: false
},
y: {
display: true,
position: 'top',
align: 'center',
- fullWidth: true, // marks that this box should take the full width of the canvas (pushing down other boxes)
+ fullSize: true,
reverse: false,
weight: 1000,
options: {
plugins: {
legend: {
- fullWidth: true,
+ fullSize: true,
position: 'top',
weight: 150
}
}
});
- expect(chart.legend.fullWidth).toBe(true);
+ expect(chart.legend.fullSize).toBe(true);
expect(chart.legend.position).toBe('top');
expect(chart.legend.weight).toBe(150);
- chart.options.plugins.legend.fullWidth = false;
+ chart.options.plugins.legend.fullSize = false;
chart.options.plugins.legend.position = 'left';
chart.options.plugins.legend.weight = 42;
chart.update();
- expect(chart.legend.fullWidth).toBe(false);
+ expect(chart.legend.fullSize).toBe(false);
expect(chart.legend.position).toBe('left');
expect(chart.legend.weight).toBe(42);
});
color: Chart.defaults.color,
display: false,
position: 'top',
- fullWidth: true,
+ fullSize: true,
weight: 2000,
font: {
style: 'bold'
options: {
plugins: {
title: {
- fullWidth: true,
+ fullSize: true,
position: 'top',
weight: 150
}
}
});
- expect(chart.titleBlock.fullWidth).toBe(true);
+ expect(chart.titleBlock.fullSize).toBe(true);
expect(chart.titleBlock.position).toBe('top');
expect(chart.titleBlock.weight).toBe(150);
- chart.options.plugins.title.fullWidth = false;
+ chart.options.plugins.title.fullSize = false;
chart.options.plugins.title.position = 'left';
chart.options.plugins.title.weight = 42;
chart.update();
- expect(chart.titleBlock.fullWidth).toBe(false);
+ expect(chart.titleBlock.fullSize).toBe(false);
expect(chart.titleBlock.position).toBe('left');
expect(chart.titleBlock.weight).toBe(42);
});
configure(
chart: Chart,
item: LayoutItem,
- options: { fullWidth?: number; position?: LayoutPosition; weight?: number }
+ options: { fullSize?: number; position?: LayoutPosition; weight?: number }
): void;
/**
fit(): void;
afterFit(): void;
- isFullWidth(): boolean;
+ isFullSize(): boolean;
}
export const Scale: {
prototype: Scale;
*/
align: TextAlign;
/**
- * Marks that this box should take the full width of the canvas (pushing down other boxes). This is unlikely to need to be changed in day-to-day use.
+ * Marks that this box should take the full width/height of the canvas (moving other boxes). This is unlikely to need to be changed in day-to-day use.
* @default true
*/
- fullWidth: boolean;
+ fullSize: boolean;
/**
* Legend will show datasets in reverse order.
* @default false
*/
color: Color;
font: FontSpec;
- // fullWidth: boolean;
+ // fullSize: boolean;
/**
* Adds padding above and below the title text if a single number is specified. It is also possible to change top and bottom padding separately.
*/
/**
* if true, and the item is horizontal, then push vertical boxes down
*/
- fullWidth: boolean;
+ fullSize: boolean;
/**
* Width of item. Must be valid after update()
*/