public void CheckAuthorization() { AuthorizationEventArgs args = new AuthorizationEventArgs(); try { args.Auth = fr.CheckLogin(); } catch (FlickrException e) { args.Exception = e; } Gtk.Application.Invoke(this, args, delegate(object sender, EventArgs sargs) { AuthorizationEventArgs wargs = (AuthorizationEventArgs)sargs; do_export_flickr.Sensitive = wargs.Auth != null; if (wargs.Auth != null) { token = wargs.Auth.Token; auth = wargs.Auth; CurrentState = State.Authorized; Preferences.Set(current_service.PreferencePath, token); } else { CurrentState = State.Disconnected; } }); }