private void AddLayer(string layerName) { layerName = layerName.Trim(); if (string.IsNullOrEmpty(layerName)) { MessageBox.Show("Invalid input"); return; } if (_keymapLayers.Any(layer => layer.LayerName == layerName)) { MessageBox.Show(string.Format("A layer with the name '{0}' already exists.", layerName)); return; } var keymapLayer = _keymapLayerController.GetNewLayer(4, 12, layerName); keymapLayer.LayerNumber = _keymapLayers.Count(); _keymapLayerController.PopulateKeymapLayer(keymapLayer); var menuItem = new MenuItem { Header = layerName }; menuItem.Click += new RoutedEventHandler(_selectedLayerClick); AvailableLayersMenu.Add(menuItem); _keymapLayers.Add(keymapLayer); }
public void DeleteLayer() { if (_currentKeymapLayer == null) { MessageBox.Show("You must select a layer in order to delete it."); return; } var menuItem = AvailableLayersMenu.First(x => (string)x.Header == _currentKeymapLayer.LayerName); AvailableLayersMenu.Remove(menuItem); _keymapLayers.Remove(_currentKeymapLayer); _currentKeymapLayer = null; CurrentLayerName = string.Empty; }
private void RenameLayer(string layerName) { if (_currentKeymapLayer == null) { MessageBox.Show("You must select a layer in order to rename it."); return; } if (AvailableLayersMenu.Any(x => (string)x.Header == layerName)) { MessageBox.Show(string.Format("A layer with the name '{0}' already exists.", layerName)); return; } AvailableLayersMenu.First(x => (string)x.Header == _currentKeymapLayer.LayerName).Header = layerName; _currentKeymapLayer.LayerName = layerName; CurrentLayerName = layerName; }
public void ImportKeymapFile(string file) { _workingFile = file; var keymapFileReader = new KeymapFileReader(); _keymapLayers = keymapFileReader.ParseLayers(file); AvailableLayersMenu.Clear(); foreach (var layer in _keymapLayers) { var menuItem = new MenuItem { Header = layer.LayerName }; menuItem.Click += new RoutedEventHandler(_selectedLayerClick); AvailableLayersMenu.Add(menuItem); _keymapLayerController.PopulateKeymapLayer(layer); } }