Beispiel #1
0
        public bool Process(ProjectItem projectItem)
        {
            if (projectItem.ItemType != SupportedProjectItemType)
            {
                return(false);
            }

            var filePath = projectItem.EvaluatedInclude;
            var filename = Path.GetFileName(filePath);

            if (filename != ContentsFileName)
            {
                return(false);
            }

            var parent = Directory.GetParent(filePath).ToString();

            if (!parent.Contains(AssetSetExtension))
            {
                return(false);
            }

            var assetName = Path.GetFileNameWithoutExtension(parent.Replace(AssetSetExtension, string.Empty));

            var constName  = ValidNamesProvider.GetCorrectConstName(assetName);
            var constValue = ValidNamesProvider.GetCorrectResourceBundleName(assetName);

            _consts.Add(constName, constValue);

            return(true);
        }
Beispiel #2
0
        private bool AcceptAssetResourceProjectItem(ProjectItem projectItem)
        {
            var filePath = projectItem.EvaluatedInclude;
            var filename = Path.GetFileName(filePath);

            if (filename != ContentsFileName)
            {
                return(false);
            }

            var parent = Directory.GetParent(filePath).ToString();

            if (!parent.Contains(AssetSetExtension))
            {
                return(false);
            }

            var assetName = Path.GetFileNameWithoutExtension(parent.Replace(AssetSetExtension, string.Empty));

            var constName  = ValidNamesProvider.GetCorrectConstName(assetName);
            var constValue = ValidNamesProvider.GetCorrectResourceBundleName(assetName);

            _rootBundleDirectory.BundleResources.Add(constName, constValue);

            return(true);
        }
Beispiel #3
0
        private bool AcceptBundleResourceProjectItem(ProjectItem projectItem)
        {
            var extension = Path.GetExtension(projectItem.EvaluatedInclude);

            if (SupportedImagesFormats.All(x => x != extension))
            {
                return(false);
            }

            var splittedPath = projectItem.EvaluatedInclude.Split(Path.DirectorySeparatorChar);
            var currentBundleDirectoryCollection = new List <BundleDirectory> {
                _rootBundleDirectory
            };
            var destinationDirectory = _rootBundleDirectory;

            if (splittedPath.Length > 3)
            {
                Console.WriteLine();
            }

            while (splittedPath.Length > 1)
            {
                var directory = currentBundleDirectoryCollection.FirstOrDefault(x => x.Name == splittedPath[0]);

                if (directory == null)
                {
                    directory = new BundleDirectory
                    {
                        Name = splittedPath[0]
                    };

                    currentBundleDirectoryCollection.Add(directory);
                }

                destinationDirectory             = directory;
                splittedPath                     = splittedPath.Skip(1).ToArray();
                currentBundleDirectoryCollection = destinationDirectory.BundleSubDirectories;
            }

            var key   = ValidNamesProvider.GetCorrectConstName(ValidNamesProvider.GetCorrectResourceBundleName(splittedPath[0]));
            var value = ValidNamesProvider.GetCorrectResourceBundleName(projectItem.EvaluatedInclude);

            if (destinationDirectory.BundleResources.Values.Any(x => x == value))
            {
                return(true);
            }

            destinationDirectory.BundleResources.Add(key, value);

            return(true);
        }
Beispiel #4
0
        public bool Process(ProjectItem projectItem)
        {
            if (projectItem.ItemType != SupportedProjectItemType)
            {
                return(false);
            }

            var filename  = Path.GetFileName(projectItem.EvaluatedInclude);
            var extension = Path.GetExtension(filename);

            if (FontFileExtensions.All(x => extension != x))
            {
                return(false);
            }

            var fileNameWithoutExtension = Path.GetFileNameWithoutExtension(filename);

            var constName  = ValidNamesProvider.GetCorrectConstName(fileNameWithoutExtension);
            var constValue = ValidNamesProvider.GetCorrectResourceBundleName(fileNameWithoutExtension);

            _consts.Add(constName, constValue);

            return(true);
        }