Пример #1
0
 public void RegisterResourceIconProvider(string[] resTypes, IResourceIconProvider provider)
 {
     foreach (string type in resTypes)
     {
         _resourceIconProviders [type] = provider;
     }
 }
Пример #2
0
        public FlagColumn(IResourceIconProvider flagIconProvider)
        {
            _imageList            = new ImageList();
            _imageList.ColorDepth = Core.ResourceIconManager.IconColorDepth;

            _imageList.Images.Add(Utils.TryGetEmbeddedResourceIconFromAssembly("OmniaMea", "OmniaMea.Icons.flag.ico"));
            _imageList.Images.Add(Utils.TryGetEmbeddedResourceIconFromAssembly("OmniaMea", "OmniaMea.Icons.FlagNoProp.ico"));

            _flagIconProvider = flagIconProvider;

            _flagContextMenu   = new ContextMenuStrip();
            _flagActionManager = new ContextMenuActionManager(_flagContextMenu);
        }
Пример #3
0
        public Icon GetResourceIcon(IResource resource)
        {
            if (resource.Type == "Weblink")
            {
                if (resource.HasProp(Core.Props.LastError))
                {
                    return(_errorWeblinkIcon);
                }

                IResource source = resource.GetLinkProp("Source");
                if (source == null)
                {
                    return(_emptyWeblinkIcon);
                }

                string url = resource.GetStringProp(_propURL);
                if (url != null)
                {
                    Icon icon = _favIconManager.GetResourceFavIcon(url);
                    if (icon != null)
                    {
                        return(icon);
                    }
                    _favIconManager.DownloadFavIcon(url);
                }
                string favIconUrl = resource.GetStringProp(_propFaviconUrl);
                if (favIconUrl != null)
                {
                    if (url != null)
                    {
                        try { favIconUrl = new Uri(new Uri(url), favIconUrl).AbsoluteUri; }
                        catch {}
                    }
                    Icon icon = _favIconManager.GetFavIcon(favIconUrl);
                    if (icon != null)
                    {
                        return(icon);
                    }
                    _favIconManager.DownloadFavIcon(favIconUrl);
                }

                IResourceIconProvider provider = Core.ResourceIconManager.GetResourceIconProvider(source.Type);
                if (provider != null)
                {
                    return(provider.GetResourceIcon(source));
                }
            }
            return(null);
        }
Пример #4
0
        public Icon GetResourceIcon(IResource resource)
        {
            if (resource.Type != "ResourceType")
            {
                throw new ArgumentException("Resource of type ResourceType expected");
            }

            string resType = resource.GetStringProp("Name");
            IResourceIconProvider provider = Core.ResourceIconManager.GetResourceIconProvider(resType);

            if (provider == null)
            {
                return(_defaultIcon);
            }
            return(provider.GetDefaultIcon(resType));
        }
Пример #5
0
        public int GetIconIndex(IResource res)
        {
            if (Core.ResourceStore == null)
            {
                return(0);
            }

            IResourceIconProvider provider = (IResourceIconProvider)_resourceIconProviders [res.Type];

            if (provider != null)
            {
                Icon icon = provider.GetResourceIcon(res);
                return(AddIconIfNew(icon));
            }

            return(0);
        }
Пример #6
0
        /**
         * Returns the default icon index for the specified resource type.
         */

        public int GetDefaultIconIndex(string resType)
        {
            if (Core.ResourceStore == null)
            {
                return(0);
            }

            IResourceIconProvider provider = (IResourceIconProvider)_resourceIconProviders [resType];

            if (provider != null)
            {
                Icon icon = provider.GetDefaultIcon(resType);
                return(AddIconIfNew(icon));
            }

            return(0);
        }
Пример #7
0
 public void RegisterResourceIconProvider(string resType, IResourceIconProvider provider)
 {
     _resourceIconProviders [resType] = provider;
 }