// RibbonSearchResultItem.cs
// Copyright (c) 2016 Bentley Systems, Incorporated. All Rights Reserved.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.CompilerServices;

[assembly: InternalsVisibleTo("Haestad.Framework.UI.Integration.Test, PublicKey=" +
    "002400000480000094000000060200000024000052534131000400000100010025b2f82c499245" +
    "27a7853779cf30993d30cf63f0dea189775ddb4d071be50d54e5f910b20cab403f08c5343a38a4" +
    "1ddfb8452cace2996428f4fbf666e622dc3d0f982bc347fe94309e5448d6d22675d8655abee826" +
    "27104632ecf481097c91571411bb1d224f8fe9227638dfcf844e47f78fce62332c705b3c0fea0e" +
    "d4bd46bd"
    )]

namespace Haestad.Framework.UI.Integration
{
    /// <summary>
    /// A ribbon search result item, containing enough information about the search result that it can be sorted and executed.
    /// </summary>
    internal class RibbonSearchResultItem
    {
        #region Constructor
        public RibbonSearchResultItem(RibbonLocation ribbonLocation, int commandRank, int ribbonTabIndex, string commandPath, IRibbonUICommand associatedCommand)
        {
            RibbonLocation = ribbonLocation;
            CommandRank = commandRank;
            RibbonTabIndex = ribbonTabIndex;
            CommandPath = commandPath;
            AssociatedCommand = associatedCommand;
        }
        #endregion

        #region Public Properties
        public RibbonLocation RibbonLocation
        {
            get;
            private set;
        }

        public int CommandRank
        {
            get;
            private set;
        }

        public int RibbonTabIndex
        {
            get;
            private set;
        }

        public string CommandPath
        {
            get;
            private set;
        }

        public IRibbonUICommand AssociatedCommand
        {
            get;
            private set;
        }
        #endregion
    }
}
