コード例 #1
0
ファイル: Gravatar.cs プロジェクト: oqewok/gitter
        public void EndUpdate(IAsyncResult ar)
        {
            Verify.Argument.IsNotNull(ar, "ar");
            Verify.State.IsTrue(_avatarLoading != null, "No async operation is running.");

            GravatarService.EndGetGravatar(ar);
        }
コード例 #2
0
ファイル: Gravatar.cs プロジェクト: oqewok/gitter
 public IAsyncResult BeginUpdate()
 {
     lock (_sync)
     {
         if (_avatarLoading != null)
         {
             return(_avatarLoading);
         }
         _avatarLoading = GravatarService.BeginGetGravatar(
             OnAvatarLoaded, _email, DefaultGravatarType.wavatar, GravatarRating.g, 60);
         return(_avatarLoading);
     }
 }
コード例 #3
0
ファイル: Gravatar.cs プロジェクト: oqewok/gitter
 private void OnAvatarLoaded(IAsyncResult ar)
 {
     lock (_sync)
     {
         _avatarLoading = null;
         try
         {
             _image = GravatarService.EndGetGravatar(ar);
         }
         catch
         {
             _image = new Bitmap(1, 1);
         }
     }
     InvokeUpdated();
 }
コード例 #4
0
ファイル: Gravatar.cs プロジェクト: oqewok/gitter
 public void Update()
 {
     lock (_sync)
     {
         Verify.State.IsTrue(_avatarLoading != null, "Async update is already running.");
         try
         {
             _image = GravatarService.GetGravatar(
                 _email, DefaultGravatarType.wavatar, GravatarRating.g, 60);
         }
         catch
         {
             _image = new Bitmap(1, 1);
         }
     }
     InvokeUpdated();
 }