in src/UXClient/Interfaces/ChartComponent.ts [57:81]
protected drawEllipsisMenu (additionalEllipsisItems = []) {
if (this.chartOptions.canDownload || this.chartOptions.grid || (this.chartOptions.ellipsisItems && this.chartOptions.ellipsisItems.length > 0) || additionalEllipsisItems.length > 0) {
if (this.ellipsisContainer === null) {
this.ellipsisContainer = this.chartControlsPanel.append("div")
.attr("class", "tsi-ellipsisContainerDiv");
}
if (this.ellipsisMenu === null) {
this.ellipsisMenu = new EllipsisMenu(this.ellipsisContainer.node());
}
var ellipsisItems = [];
if (this.chartOptions.grid) {
ellipsisItems.push(Grid.createGridEllipsisOption(this.renderTarget, this.chartOptions, this.aggregateExpressionOptions, this.chartComponentData, this.getString("Display Grid")));
}
if (this.chartOptions.canDownload) {
ellipsisItems.push(Utils.createDownloadEllipsisOption(() => this.chartComponentData.generateCSVString(this.chartOptions.offset, this.chartOptions.dateLocale), () => Utils.focusOnEllipsisButton(this.renderTarget) ,this.getString("Download as CSV")));
}
if (this.chartOptions.ellipsisItems) {
ellipsisItems = ellipsisItems.concat(this.chartOptions.ellipsisItems);
}
this.ellipsisMenu.render(ellipsisItems.concat(additionalEllipsisItems), {theme: this.chartOptions.theme});
}
}