예제 #1
0
        protected override ICopyCallback GetCopyCallback(string destination)
        {
            var xaml = EntryPath;

            if (string.IsNullOrWhiteSpace(xaml))
            {
                return(new CopyCallback(null));
            }

            var resources = EntryPath.ApartFromLast(".xaml", StringComparison.OrdinalIgnoreCase);

            return(new CopyCallback(info => {
                var filename = info.Key;
                return FileUtils.ArePathsEqual(filename, xaml) ? Path.Combine(destination, Path.GetFileName(xaml))
                        : FileUtils.IsAffectedBy(filename, resources) ? Path.Combine(destination, FileUtils.GetRelativePath(filename, resources)) : null;
            }));
        }
예제 #2
0
        protected override ICopyCallback GetCopyCallback(string destination)
        {
            var bitmapExtension = Path.GetExtension(EntryPath);
            var mainEntry       = EntryPath.ApartFromLast(bitmapExtension) + FontObject.FontExtension;

            return(new CopyCallback(info => {
                if (FileUtils.ArePathsEqual(info.Key, mainEntry))
                {
                    return destination;
                }

                if (FileUtils.ArePathsEqual(info.Key, EntryPath))
                {
                    return destination.ApartFromLast(FontObject.FontExtension) + bitmapExtension;
                }

                return null;
            }));
        }