private void OnMatrixUpdated(object sender, RzDeviceType e) { SKColor[,] matrix = _chroma.Matrices[e]; var dict = _keyMapSetting.Value[e]; for (int i = 0; i < matrix.GetLength(0); i++) { for (int j = 0; j < matrix.GetLength(1); j++) { _colors[dict[i, j]] = matrix[i, j]; } } }
private void UpdateMatrix(AbstractColorDataProvider colorProvider) { RzDeviceType matrixDeviceType = deviceTypeDict[colorProvider.GetType()]; GridSize grid = colorProvider.Grids[0]; SKColor[,] matrix = Matrices.GetOrAdd(matrixDeviceType, new SKColor[grid.Height, grid.Width]); for (int i = 0; i < grid.Height; i++) { for (int j = 0; j < grid.Width; j++) { (byte r, byte g, byte b) = colorProvider.GetZoneColor((int)((i * grid.Width) + j)); matrix[i, j] = new SKColor(r, g, b); } } MatrixUpdated?.Invoke(this, matrixDeviceType); }
private void UpdateMatrix(object sender, RzDeviceType e) { switch (e) { case RzDeviceType.Mousepad: if (_chroma.Matrices.TryGetValue(RzDeviceType.Mousepad, out SKColor[,] m1))
private void UpdateMatrix(object sender, RzDeviceType rzDeviceType) { lock (_lock) { if (!_chroma.Matrices.TryGetValue(rzDeviceType, out SKColor[,] colors))