SeriesOverrides: Fixed issue with color picker

This commit is contained in:
Torkel Ödegaard 2019-10-01 08:36:24 +02:00
parent fc2282009e
commit c712b4f824

View File

@ -6,6 +6,7 @@ export function SeriesOverridesCtrl($scope: any, $element: JQuery, popoverSrv: a
$scope.overrideMenu = []; $scope.overrideMenu = [];
$scope.currentOverrides = []; $scope.currentOverrides = [];
$scope.override = $scope.override || {}; $scope.override = $scope.override || {};
$scope.colorPickerModel = {};
$scope.addOverrideOption = (name: string, propertyName: string, values: any) => { $scope.addOverrideOption = (name: string, propertyName: string, values: any) => {
const option = { const option = {
@ -45,22 +46,25 @@ export function SeriesOverridesCtrl($scope: any, $element: JQuery, popoverSrv: a
$scope.override['color'] = color; $scope.override['color'] = color;
$scope.updateCurrentOverrides(); $scope.updateCurrentOverrides();
$scope.ctrl.render(); $scope.ctrl.render();
// update picker model so that the picker UI will also update
$scope.colorPickerModel.series.color = color;
}; };
$scope.openColorSelector = (color: any) => { $scope.openColorSelector = (color: any) => {
const fakeSeries = { color }; $scope.colorPickerModel = {
autoClose: true,
colorSelected: $scope.colorSelected,
series: { color },
};
popoverSrv.show({ popoverSrv.show({
element: $element.find('.dropdown')[0], element: $element.find('.dropdown')[0],
position: 'top center', position: 'top center',
openOn: 'click', openOn: 'click',
template: '<series-color-picker-popover color="color" onColorChange="colorSelected" />', template: '<series-color-picker-popover color="series.color" onColorChange="colorSelected" />',
classNames: 'drop-popover drop-popover--transparent', classNames: 'drop-popover drop-popover--transparent',
model: { model: $scope.colorPickerModel,
autoClose: true,
colorSelected: $scope.colorSelected,
series: fakeSeries,
color,
},
onClose: () => { onClose: () => {
$scope.ctrl.render(); $scope.ctrl.render();
}, },