Esempio n. 1
0
        public CopyPasteEditorAction(MapCopyFilters copyFilters, Map map,
                                     Dictionary <CPos, Tuple <TerrainTile, ResourceTile, byte> > tiles, Dictionary <string, ActorReference> previews,
                                     EditorActorLayer editorLayer, CellRegion dest)
        {
            this.copyFilters = copyFilters;
            this.tiles       = tiles;
            this.previews    = previews;
            this.editorLayer = editorLayer;
            this.dest        = dest;

            mapTiles     = map.Tiles;
            mapHeight    = map.Height;
            mapResources = map.Resources;

            Text = "Copied {0} tiles".F(tiles.Count);
        }
Esempio n. 2
0
        Widget CreateCategoriesPanel()
        {
            var categoriesPanel  = Ui.LoadWidget("COPY_FILTER_PANEL", null, new WidgetArgs());
            var categoryTemplate = categoriesPanel.Get <CheckboxWidget>("CATEGORY_TEMPLATE");

            MapCopyFilters[] allCategories = { MapCopyFilters.Terrain, MapCopyFilters.Resources, MapCopyFilters.Actors };
            foreach (var cat in allCategories)
            {
                var category = (CheckboxWidget)categoryTemplate.Clone();
                category.GetText   = () => cat.ToString();
                category.IsChecked = () => copyFilters.HasFlag(cat);
                category.IsVisible = () => true;
                category.OnClick   = () => copyFilters ^= cat;

                categoriesPanel.AddChild(category);
            }

            return(categoriesPanel);
        }