From c1a4eb91510792c7dbb0d74d852a8cdca88e4c6e Mon Sep 17 00:00:00 2001 From: mvgaliev Date: Fri, 13 Apr 2018 18:31:56 +0300 Subject: [PATCH] added localization strings (#23) --- package.json | 2 +- src/visual.ts | 35 ++++++++++++++----------- stringResources/en-US/resources.resjson | 5 +++- 3 files changed, 25 insertions(+), 17 deletions(-) diff --git a/package.json b/package.json index c902c5e..6275ed9 100644 --- a/package.json +++ b/package.json @@ -55,7 +55,7 @@ "powerbi-visuals-utils-formattingutils": "^3.0.0", "powerbi-visuals-utils-interactivityutils": "3.2.0", "powerbi-visuals-utils-svgutils": "^1.1.0", - "powerbi-visuals-utils-testutils": "1.2.0", + "powerbi-visuals-utils-testutils": "1.2.1", "powerbi-visuals-utils-tooltiputils": "^1.0.0", "powerbi-visuals-utils-typeutils": "^1.1.0", "tslint": "^5.1.0", diff --git a/src/visual.ts b/src/visual.ts index 6f42de3..d4a0de5 100644 --- a/src/visual.ts +++ b/src/visual.ts @@ -122,8 +122,6 @@ module powerbi.extensibility.visual { export class Histogram implements IVisual { private static ClassName: string = "histogram"; - private static FrequencyText: string = "Frequency"; - private static DensityText: string = "Density"; private static Axes: ClassAndSelector = createClassAndSelector("axes"); private static Axis: ClassAndSelector = createClassAndSelector("axis"); @@ -170,7 +168,6 @@ module powerbi.extensibility.visual { private static MinColumnHeight: number = 1; - private static TooltipDisplayName: string = "Range"; private static SeparatorNumbers: string = ", "; private static MaxWidthOfTheLatestLabel: number = 40; @@ -225,6 +222,7 @@ module powerbi.extensibility.visual { private viewportIn: IViewport; private visualHost: IVisualHost; + private localizationManager: ILocalizationManager; private interactivityService: IInteractivityService; private behavior: IInteractiveBehavior; @@ -253,6 +251,7 @@ module powerbi.extensibility.visual { public init(options: VisualConstructorOptions): void { this.visualHost = options.host; + this.localizationManager = this.visualHost.createLocalizationManager(); this.interactivityService = createInteractivityService(this.visualHost); this.behavior = HistogramBehavior.create(); @@ -298,7 +297,8 @@ module powerbi.extensibility.visual { public static converter( dataView: DataView, - visualHost: IVisualHost): HistogramDataView { + visualHost: IVisualHost, + localizationManager: ILocalizationManager): HistogramDataView { if (!dataView || !dataView.categorical @@ -437,7 +437,8 @@ module powerbi.extensibility.visual { bins, settings, yLabelFormatter, - xLabelFormatter); + xLabelFormatter, + localizationManager); return { dataPoints, @@ -574,7 +575,8 @@ module powerbi.extensibility.visual { bins: LayoutBin[], settings: HistogramSettings, yValueFormatter: IValueFormatter, - xValueFormatter: IValueFormatter): HistogramDataPoint[] { + xValueFormatter: IValueFormatter, + localizationManager: ILocalizationManager): HistogramDataPoint[] { let fontSizeInPx: string = PixelConverter.fromPoint(settings.labels.fontSize); @@ -587,7 +589,8 @@ module powerbi.extensibility.visual { settings, index === 0, yValueFormatter, - xValueFormatter); + xValueFormatter, + localizationManager); bin.subDataPoints = Histogram.getSubDataPoints(values, bin, index); @@ -607,14 +610,15 @@ module powerbi.extensibility.visual { settings: HistogramSettings, includeLeftBorder: boolean, yValueFormatter: IValueFormatter, - xValueFormatter: IValueFormatter): VisualTooltipDataItem[] { + xValueFormatter: IValueFormatter, + localizationManager: ILocalizationManager): VisualTooltipDataItem[] { return [ { - displayName: Histogram.getLegendText(settings), + displayName: Histogram.getLegendText(settings, localizationManager), value: yValueFormatter.format(value) }, { - displayName: Histogram.TooltipDisplayName, + displayName: localizationManager.getDisplayName("Visual_TooltipDisplayName"), value: Histogram.rangeToString(range, includeLeftBorder, xValueFormatter) } ]; @@ -754,7 +758,8 @@ module powerbi.extensibility.visual { this.dataView = Histogram.converter( dataView, - this.visualHost); + this.visualHost, + this.localizationManager); borderValues = this.dataView.borderValues; xAxisSettings = this.dataView.settings.xAxis; @@ -1324,7 +1329,7 @@ module powerbi.extensibility.visual { } private getDataLegends(settings: HistogramSettings): Legend[] { - let bottomLegendText: string = Histogram.getLegendText(settings); + let bottomLegendText: string = Histogram.getLegendText(settings, this.localizationManager); bottomLegendText = Histogram.getLegend( bottomLegendText, @@ -1358,10 +1363,10 @@ module powerbi.extensibility.visual { ]; } - private static getLegendText(settings: HistogramSettings): string { + private static getLegendText(settings: HistogramSettings, localizationManager: ILocalizationManager): string { return settings.general.frequency - ? Histogram.FrequencyText - : Histogram.DensityText; + ? localizationManager.getDisplayName("Visual_Frequency") + : localizationManager.getDisplayName("Visual_Density"); } private bindSelectionHandler(columnsSelection: UpdateSelection): void { diff --git a/stringResources/en-US/resources.resjson b/stringResources/en-US/resources.resjson index d74383a..5f0bbff 100644 --- a/stringResources/en-US/resources.resjson +++ b/stringResources/en-US/resources.resjson @@ -25,5 +25,8 @@ "Visual_TextSize": "Text Size", "Visual_Values": "Values", "Visual_Frequency": "Frequency", - "Visual_Fill": "Fill" + "Visual_Fill": "Fill", + "Visual_Frequency": "Frequency", + "Visual_Density": "Density", + "Visual_TooltipDisplayName": "Range" } \ No newline at end of file