Example #1
0
        public override string ToString()
        {
            if ((Assets == null) || (!Assets.HasData))
            {
                return("");
            }

            StringBuilder textBuilder = new StringBuilder();
            // textBuilder.AppendLine("Cutting Room Assets:");

            CuttingRoomAssetCollectionFlags flags = Assets.Flags;

            if (flags.HasFlag(CuttingRoomAssetCollectionFlags.Filters))
            {
                BuildAssetListText(textBuilder, "Filters", Assets.Filters);
            }

            if (flags.HasFlag(CuttingRoomAssetCollectionFlags.TextStyles))
            {
                BuildAssetListText(textBuilder, "Text Styles", Assets.TextStyles);
            }

            if (flags.HasFlag(CuttingRoomAssetCollectionFlags.Transitions))
            {
                BuildAssetListText(textBuilder, "Transitions", Assets.Transitions);
            }

            return(textBuilder.ToString());
        }
Example #2
0
        private bool DoAppendItem(string pFolder, string pFileText, string pName, out string pErrorText)
        {
            pErrorText = null;
            CuttingRoomAssetItem asset = null;

            if (pFileText == null)
            {
                asset = new CuttingRoomAssetItem()
                {
                    AssetType = AddonAssetType.CuttingRoomAsset,
                    Name      = pName
                };
            }
            else
            {
                AssetInfo assetInfo = AssetInfo.LoadFromString(pFileText, out pErrorText);
                if (assetInfo == null)
                {
                    return(false);
                }

                asset = new CuttingRoomAssetItem()
                {
                    AssetType   = AddonAssetType.CuttingRoomAsset,
                    Name        = assetInfo.Name,
                    Description = assetInfo.Description
                };


                if (!string.IsNullOrEmpty(assetInfo.TagList?.Trim()))
                {
                    asset.TagsRaw = assetInfo.TagList;
                    string[] tags = assetInfo.TagList.Split(",".ToCharArray(), StringSplitOptions.RemoveEmptyEntries);
                    if (tags.Length > 0)
                    {
                        asset.Tags = tags.ToList();
                    }
                }
            }

            if (pFolder.StartsWith("filters"))
            {
                asset.AssetSubtype = "Filter";
                if (Filters == null)
                {
                    Filters = new List <CuttingRoomAssetItem>();
                    Flags  |= CuttingRoomAssetCollectionFlags.Filters;
                }
                Filters.Add(asset);
            }
            else if (pFolder.StartsWith("textstyles"))
            {
                asset.AssetSubtype = "TextStyle";
                if (TextStyles == null)
                {
                    TextStyles = new List <CuttingRoomAssetItem>();
                    Flags     |= CuttingRoomAssetCollectionFlags.TextStyles;
                }
                TextStyles.Add(asset);
            }
            else if (pFolder.StartsWith("transitions"))
            {
                asset.AssetSubtype = "Transition";
                if (Transitions == null)
                {
                    Transitions = new List <CuttingRoomAssetItem>();
                    Flags      |= CuttingRoomAssetCollectionFlags.Transitions;
                }
                Transitions.Add(asset);
            }
            return(true);
        }