public static LevelX.ObjectLayerX ToXmlProxyX(ObjectLayer layer) { if (layer == null) { return(null); } List <LevelX.ObjectInstanceX> objs = new List <LevelX.ObjectInstanceX>(); foreach (ObjectInstance inst in layer.Objects) { objs.Add(ObjectInstance.ToXProxy(inst)); } List <CommonX.PropertyX> props = new List <CommonX.PropertyX>(); foreach (Property prop in layer.PropertyManager.CustomProperties) { props.Add(Property.ToXmlProxyX(prop)); } return(new LevelX.ObjectLayerX() { Name = layer.Name, Opacity = layer.Opacity, Visible = layer.IsVisible, RasterMode = layer.RasterMode, GridColor = layer.GridColor.ToArgbHex(), GridWidth = layer.GridWidth, GridHeight = layer.GridHeight, Objects = objs.Count > 0 ? objs : null, Properties = props.Count > 0 ? props : null, }); }
public ObjectPointerTool(ILayerContext layerContext, ObjectLayer layer, Size gridSize) { _layerContext = layerContext; //_history = history; _layer = layer; _gridSize = gridSize; }
public ObjectOrderCommand(ObjectLayer source) { _objectSource = source; _objects = new List<ObjectRecord>(); _toFront = new List<ObjectInstance>(); _toBack = new List<ObjectInstance>(); }
public ObjectLayer(string name, ObjectLayer layer) : base(name, layer) { _layerOriginX = layer._layerOriginX; _layerOriginY = layer._layerOriginY; _layerWidth = layer._layerWidth; _layerHeight = layer._layerHeight; _objects = new List<ObjectInstance>(); foreach (ObjectInstance inst in layer._objects) _objects.Add(inst.Clone() as ObjectInstance); }
public ObjectSelectTool(ILayerContext layerContext, ObjectLayer layer, Size gridSize, ObjectSelectionManager selectionManager) : base(layerContext, layer, gridSize) { _annots = layerContext.Annotations; _viewport = layerContext.Geometry; _selectionManager = selectionManager; _layerContext = layerContext; InitializeCommandManager(); _state = new SelectionStandbyToolState(this); }
public ObjectLayer(string name, ObjectLayer layer) : base(name, layer) { _layerOriginX = layer._layerOriginX; _layerOriginY = layer._layerOriginY; _layerWidth = layer._layerWidth; _layerHeight = layer._layerHeight; _objects = new List <ObjectInstance>(); foreach (ObjectInstance inst in layer._objects) { _objects.Add(inst.Clone() as ObjectInstance); } }
public ObjectLayerForm(ObjectLayer layer) { InitializeForm(); Text = "Edit Object Layer"; _layer = layer; _nameField.Text = _layer.Name; _opacityField.Value = (decimal)_layer.Opacity; _gridWidthField.Value = _layer.GridWidth; _gridHeightField.Value = _layer.GridHeight; _gridColorButton.Color = Color.FromArgb(255, _layer.GridColor.R, _layer.GridColor.G, _layer.GridColor.B); _validateController.Validate(); }
public ObjectAddCommand(ObjectLayer source, ObjectInstance inst, ObjectSelectionManager selectionManager) : this(source, selectionManager) { _objects.Add(inst); }
public static LevelX.ObjectLayerX ToXmlProxyX(ObjectLayer layer) { if (layer == null) return null; List<LevelX.ObjectInstanceX> objs = new List<LevelX.ObjectInstanceX>(); foreach (ObjectInstance inst in layer.Objects) objs.Add(ObjectInstance.ToXProxy(inst)); List<CommonX.PropertyX> props = new List<CommonX.PropertyX>(); foreach (Property prop in layer.PropertyManager.CustomProperties) props.Add(Property.ToXmlProxyX(prop)); return new LevelX.ObjectLayerX() { Name = layer.Name, Opacity = layer.Opacity, Visible = layer.IsVisible, RasterMode = layer.RasterMode, GridColor = layer.GridColor.ToArgbHex(), GridWidth = layer.GridWidth, GridHeight = layer.GridHeight, Objects = objs.Count > 0 ? objs : null, Properties = props.Count > 0 ? props : null, }; }
public static LevelX ToXProxy(Level level) { if (level == null) { return(null); } foreach (Layer layer in level.Layers) { if (layer is TileGridLayer) { TileGridLayer tileLayer = layer as TileGridLayer; foreach (LocatedTile tile in tileLayer.Tiles) { if (!level._localTileIndex.ContainsValue(tile.Tile.Uid)) { level._localTileIndex.Add(level._indexSequence++, tile.Tile.Uid); } } } } List <LevelX.TileIndexEntryX> tileIndexEntries = new List <LevelX.TileIndexEntryX>(); foreach (var item in level._localTileIndex) { tileIndexEntries.Add(new LevelX.TileIndexEntryX() { Id = item.Key, Uid = item.Value, }); } LevelX.TileIndexX tileIndex = new LevelX.TileIndexX() { Entries = tileIndexEntries, Sequence = level._indexSequence, }; List <AbstractXmlSerializer <LevelX.LayerX> > layers = new List <AbstractXmlSerializer <LevelX.LayerX> >(); foreach (Layer layer in level.Layers) { if (layer is MultiTileGridLayer) { layers.Add(MultiTileGridLayer.ToXmlProxyX(layer as MultiTileGridLayer)); } else if (layer is ObjectLayer) { layers.Add(ObjectLayer.ToXmlProxyX(layer as ObjectLayer)); } } LevelX.PropertyGroupX propGroup = new LevelX.PropertyGroupX() { LevelGuid = level.Uid, Extra = (level.Extra != null && level.Extra.Count > 0) ? level.Extra.ToArray() : null, }; if (level.Project != null) { propGroup.ProjectGuid = level.Project.Uid; } return(new LevelX() { PropertyGroup = propGroup, Name = level.Name, OriginX = level.OriginX, OriginY = level.OriginY, Width = level.Width, Height = level.Height, TileIndex = tileIndex, Layers = layers.Count > 0 ? layers : null, }); }
public ObjectAddCommand(ObjectLayer source) { _objectSource = source; _objects = new List<ObjectInstance>(); }
private void CommandAddObjectLayer() { if (CommandCanAddObjectLayer()) { string name = FindDefaultLayerName("Object Layer"); ObjectLayer layer = new ObjectLayer(name, _level); _level.Layers.Add(layer); // Intercept event instead AddLayer(layer); SelectLayer(layer.Uid); OnSyncLayerList(EventArgs.Empty); OnSyncLayerSelection(EventArgs.Empty); } }
public ObjectAddCommand(ObjectLayer source, ObjectSelectionManager selectionManager) : base(selectionManager) { _objectSource = source; _objects = new List<ObjectInstance>(); }
public ObjectAddCommand(ObjectLayer source, List<ObjectInstance> objects, ObjectSelectionManager selectionManager) : this(source, selectionManager) { foreach (ObjectInstance inst in objects) _objects.Add(inst); }
public ObjectDrawTool(ILayerContext layerContext, ObjectLayer layer, Size gridSize) : base(layerContext, layer, gridSize) { _annots = layerContext.Annotations; }
private void ApplyNew() { _layer = new ObjectLayer( _nameField.Text.Trim(), _level); _layer.Opacity = (float)_opacityField.Value; _layer.GridWidth = (int)_gridWidthField.Value; _layer.GridHeight = (int)_gridHeightField.Value; _layer.GridColor = new Treefrog.Framework.Imaging.Color(_gridColorButton.Color.R, _gridColorButton.Color.G, _gridColorButton.Color.B, 128); }
public ObjectAddCommand(ObjectLayer source, ObjectInstance inst) : this(source) { _objects.Add(inst); }
public ObjectAddCommand(ObjectLayer source, List<ObjectInstance> objects) : this(source) { foreach (ObjectInstance inst in objects) _objects.Add(inst); }
private void CommandCloneLayer() { if (CommandCanCloneLayer() && _layerPresenters.ContainsKey(_selectedLayer)) { string name = FindCloneLayerName(SelectedLayer.LayerName); Layer layer = null; if (_selectedLayerRef is TileLayerPresenter) layer = new MultiTileGridLayer(name, SelectedLayer.Layer as MultiTileGridLayer); else if (_selectedLayerRef is ObjectLayerPresenter) layer = new ObjectLayer(name, SelectedLayer.Layer as ObjectLayer); else return; _level.Layers.Add(layer); // Intercept event instead AddLayer(layer); SelectLayer(layer.Uid); OnSyncLayerList(EventArgs.Empty); OnSyncLayerSelection(EventArgs.Empty); } }