Ejemplo n.º 1
0
 private void ViewModel_SelectedTabChanged(object sender, StringChangedEventArgs e)
 {
     if (e.NewString == Args.CatalogName)
     {
         ViewModel.CurrentMetadata = DecoCollection.Where(d => (d.Selection == SelectionMode.Selected) || (d.Selection == SelectionMode.Active)).First().DecoMetadata;
         ViewModel.C_Import        = new RelayCommand((o) => Import());
         MapBuilder.GhostMarker.MorphCurrentDeco();
     }
 }
Ejemplo n.º 2
0
        public void Import(string path)
        {
            try
            {
                var contentPath = path.MakeContentRelative();
                if (contentPath == string.Empty)
                {
                    return;
                }

                var          metadataPath = Path.ChangeExtension(path, ".metadata");
                DecoMetadata dmd;
                if (File.Exists(metadataPath))
                {
                    dmd = Serializer.ReadXML <DecoMetadata>(DecoMetadata.DecoMetadataSerializer, metadataPath);
                    dmd.LoadContent(ViewModel.MainGame);
                }
                else
                {
                    dmd = new DecoMetadata()
                    {
                        ContentPath = contentPath
                    };
                    dmd.LoadContent(ViewModel.MainGame);
                    dmd.Serialize(metadataPath);
                    $"Creating {Path.GetFileName(metadataPath)}...".Log();
                }

                dmd.Dimensions     = Args.DecoDimension;
                dmd.PositionOffset = Args.DecoPositionOffset;
                DecoCollection.Add(new DecoCatalogItem(this, path, dmd, Args.ItemWidth, Args.ItemHeight));
            }
            catch (Exception e)
            {
                e.Message.Log();
            }
        }