Example #1
0
            public IProjectProperty AddProperty(string propertyName)
            {
                var propertyNode = new XElement(Xmlns.GetName(propertyName));

                Node.Add(propertyNode);

                var property = new ProjectProperty(ProjectFile, this, propertyNode, propertyNode.Name.LocalName);

                Items.Add(property);

                return(property);
            }
Example #2
0
            public IProjectProperty AddProperty(string itemGroupName, string propertyName)
            {
                var propertyNode = new XElement(Xmlns.GetName(propertyName));

                var groupNode = Node.Elements().FirstOrDefault(n => n.Name.LocalName == itemGroupName) ?? Node.AddElement(new XElement(Xmlns.GetName(itemGroupName)));

                groupNode.AddElement(propertyNode);

                var property = new ProjectProperty(ProjectFile, this, propertyNode, groupNode.Name.LocalName + "." + propertyNode.Name.LocalName);

                Items.Add(property);

                return(property);
            }
Example #3
0
        public void Cleanup()
        {
            var aliases = new HashSet <string>();

            Controls.ForEach(c => aliases.Add(c.Alias));
            RefFroms.ForEach(c => aliases.Add(c.Alias));

            foreach (var xmlns in Xmlns.OrderByDescending(x => x.Index))
            {
                if (aliases.Contains(xmlns.Alias))
                {
                    continue;
                }

                xmlns.Remove(ref _xaml);
            }
        }
 /// <summary>
 /// MPItemViews class constructor
 /// </summary>
 public ItemViewList()
 {
     Items = new List <ItemView>();
     Xmlns.Add("ns2", "http://walmart.com/");
 }
Example #5
0
        public void MoveObject(
            string sourceNamespace,
            string objectClassName,
            string targetNamespace
            )
        {
            if (sourceNamespace is null)
            {
                throw new ArgumentNullException(nameof(sourceNamespace));
            }

            if (objectClassName is null)
            {
                throw new ArgumentNullException(nameof(objectClassName));
            }

            if (targetNamespace is null)
            {
                throw new ArgumentNullException(nameof(targetNamespace));
            }

            var combined = new List <IXamlPerformable>();

            combined.AddRange(Controls);
            combined.AddRange(RefFroms);
            combined.AddRange(Classes);

            //in backward order!
            foreach (var positioned in combined.OrderByDescending(c => c.Index))
            {
                var performable = positioned as IXamlPerformable;

                if (performable.Perform(
                        sourceNamespace,
                        objectClassName,
                        targetNamespace,
                        ref _xaml,
                        out var newXmlns
                        ))
                {
                    _changesExists = true;

                    if (newXmlns != null)
                    {
                        Xmlns.Add(newXmlns);
                    }
                }
            }

            var reloadedXmlns = ReadXmlns().ToList();

            if (reloadedXmlns.Count > 0)
            {
                var indexToInsert = reloadedXmlns.Max(x => x.Index + x.Length);

                foreach (var xmlns in Xmlns.Where(x => !x.Saved))
                {
                    xmlns.SaveTo(ref _xaml, ref indexToInsert);
                }
            }
        }
Example #6
0
 public XamlXmlns?TryGetByNamespace(string @namespace) => Xmlns.FirstOrDefault(x => x.Namespace == @namespace);
Example #7
0
 public XamlXmlns GetByAlias(string alias) => Xmlns.First(x => x.Alias == alias);
Example #8
0
 /// <summary>
 /// Inventory class constructor
 /// </summary>
 public Inventory()
 {
     Quantity = new Quantity();
     Xmlns.Add("wm", "http://walmart.com/");
 }