コード例 #1
0
        public override Capability Clone()
        {
            var capability = new DefaultProgram {
                UnknownAttributes = UnknownAttributes, UnknownElements = UnknownElements, ID = ID, ExplicitOnly = ExplicitOnly, Service = Service
            };

            capability.Descriptions.AddRange(Descriptions.CloneElements());
            capability.Icons.AddRange(Icons);
            capability.Verbs.AddRange(Verbs.CloneElements());
            return(capability);
        }
コード例 #2
0
        public override Capability Clone()
        {
            var capability = new AutoPlay {
                UnknownAttributes = UnknownAttributes, UnknownElements = UnknownElements, ID = ID, ExplicitOnly = ExplicitOnly, Provider = Provider, Verb = Verb?.Clone()
            };

            capability.Icons.AddRange(Icons);
            capability.Descriptions.AddRange(Descriptions.CloneElements());
            capability.Events.AddRange(Events);
            return(capability);
        }
コード例 #3
0
        /// <inheritdoc/>
        public override Capability Clone()
        {
            var capability = new ContextMenu {
                UnknownAttributes = UnknownAttributes, UnknownElements = UnknownElements, ID = ID, ExplicitOnly = ExplicitOnly, Target = Target
            };

            capability.Descriptions.AddRange(Descriptions.CloneElements());
            capability.Icons.AddRange(Icons);
            capability.Verbs.AddRange(Verbs.CloneElements());
            return(capability);
        }
コード例 #4
0
        /// <inheritdoc/>
        public override Capability Clone()
        {
            var capability = new FileType {
                UnknownAttributes = UnknownAttributes, UnknownElements = UnknownElements, ID = ID, ExplicitOnly = ExplicitOnly
            };

            capability.Descriptions.AddRange(Descriptions.CloneElements());
            capability.Icons.AddRange(Icons);
            capability.Verbs.AddRange(Verbs.CloneElements());
            capability.Extensions.AddRange(Extensions);
            return(capability);
        }
コード例 #5
0
 /// <inheritdoc/>
 public override Capability Clone() => new DefaultProgram
 {
     UnknownAttributes = UnknownAttributes,
     UnknownElements   = UnknownElements,
     ID              = ID,
     ExplicitOnly    = ExplicitOnly,
     Service         = Service,
     InstallCommands = InstallCommands,
     Descriptions    = { Descriptions.CloneElements() },
     Icons           = { Icons.CloneElements() },
     Verbs           = { Verbs.CloneElements() }
 };
コード例 #6
0
        /// <inheritdoc/>
        public override Capability Clone()
        {
            var capability = new UrlProtocol {
                UnknownAttributes = UnknownAttributes, UnknownElements = UnknownElements, ID = ID, ExplicitOnly = ExplicitOnly
            };

            capability.Icons.AddRange(Icons);
            capability.Descriptions.AddRange(Descriptions.CloneElements());
            capability.Verbs.AddRange(Verbs.CloneElements());
            capability.KnownPrefixes.AddRange(KnownPrefixes);
            return(capability);
        }
コード例 #7
0
        /// <summary>
        /// Creates a deep copy of this <see cref="EntryPoint"/> instance.
        /// </summary>
        /// <returns>The new copy of the <see cref="EntryPoint"/>.</returns>
        public EntryPoint Clone()
        {
            var newEntryPoint = new EntryPoint {
                UnknownAttributes = UnknownAttributes, UnknownElements = UnknownElements, IfZeroInstallVersion = IfZeroInstallVersion, Command = Command, BinaryName = BinaryName, NeedsTerminal = NeedsTerminal
            };

            newEntryPoint.Names.AddRange(Names.CloneElements());
            newEntryPoint.Summaries.AddRange(Summaries.CloneElements());
            newEntryPoint.Descriptions.AddRange(Descriptions.CloneElements());
            newEntryPoint.Icons.AddRange(Icons);
            return(newEntryPoint);
        }
コード例 #8
0
ファイル: Feed.cs プロジェクト: isabella232/0install-win
        //--------------------//

        #region Clone
        /// <summary>
        /// Creates a deep copy of this <see cref="Feed"/> instance.
        /// </summary>
        /// <returns>The new copy of the <see cref="Feed"/>.</returns>
        public Feed Clone()
        {
            var feed = new Feed {
                UnknownAttributes = UnknownAttributes, UnknownElements = UnknownElements, MinInjectorVersion = MinInjectorVersion, Uri = Uri, Name = Name, Homepage = Homepage, NeedsTerminal = NeedsTerminal
            };

            feed.Feeds.AddRange(Feeds.CloneElements());
            feed.FeedFor.AddRange(FeedFor.CloneElements());
            feed.Summaries.AddRange(Summaries.CloneElements());
            feed.Descriptions.AddRange(Descriptions.CloneElements());
            feed.Categories.AddRange(Categories);
            feed.Icons.AddRange(Icons);
            feed.Elements.AddRange(Elements.CloneElements());
            feed.EntryPoints.AddRange(EntryPoints.CloneElements());
            feed.CapabilityLists.AddRange(CapabilityLists.CloneElements());
            return(feed);
        }