コード例 #1
0
ファイル: ImageLoader.cs プロジェクト: noah1510/dotdevelop
        public void LoadFrom(Uri uri, object state)
        {
            Image image = imageCache.GetImage(uri);

            if (image != null)
            {
                OnLoaded(new ImageLoadedEventArgs(image, uri, state));
                return;
            }

            if (AddToCallersWaitingForImageLoad(uri, state))
            {
                return;
            }

            if (dispatcher == null)
            {
                dispatcher = new BackgroundDispatcher();
                dispatcher.Start("NuGet image loader");
            }

            dispatcher.Dispatch(() => {
                ImageLoadedEventArgs eventArgs = LoadImage(uri, state);
                Runtime.RunInMainThread(() => {
                    OnLoaded(eventArgs);
                    eventArgs = null;
                });
            });
        }
コード例 #2
0
ファイル: ImageLoader.cs プロジェクト: pjcollins/monodevelop
		public void LoadFrom (Uri uri, object state)
		{
			Image image = imageCache.GetImage (uri);
			if (image != null) {
				OnLoaded (new ImageLoadedEventArgs (image, uri, state));
				return;
			}

			if (AddToCallersWaitingForImageLoad (uri, state))
				return;

			if (dispatcher == null) {
				dispatcher = new BackgroundDispatcher ();
				dispatcher.Start ("NuGet image loader");
			}

			dispatcher.Dispatch (() => {
				ImageLoadedEventArgs eventArgs = LoadImage (uri, state);
				Runtime.RunInMainThread (() => {
					OnLoaded (eventArgs);
					eventArgs = null;
				});
			});
		}