public Layer GetLayer(string name) { if (dic.ContainsKey(name)) { return dic[name]; } else { var l = new Layer() { Category = this, Name = name }; l.ComunitiesChange += new EventHandler(layer_ComunitiesChange); dic.Add(name, l); return l; } }
public void MoveComunity(Comunity comunity, Comunity mouseOver, Layer moveTolayer) { Layer currentLayer = null; foreach (var item in this.LayerGroup) { foreach (var layer in item.Items) { if (layer.Comunities.Contains(comunity)) { currentLayer = layer; break; } } } // if (currentLayer != moveTolayer) if (currentLayer.Comunities.Contains(comunity)) { currentLayer.Comunities.Remove(comunity); if (mouseOver != null && moveTolayer.Comunities.Contains(mouseOver)) { var p = moveTolayer.Comunities.IndexOf(mouseOver); moveTolayer.Comunities.Insert(p, comunity); } else { moveTolayer.Comunities.Add(comunity); } } }