Example #1
0
 public DomainMember(Domain domain, DomainMemberInfo domainMemberInfo, DomainMemberState domainMemberState, bool metadata)
 {
     this.domain            = domain;
     base.DomainMemberInfo  = domainMemberInfo;
     base.DomainMemberState = domainMemberState;
     this.metadata          = metadata;
 }
Example #2
0
 public DomainDataMember(DomainMemberInfo domainMemberInfo, DomainMemberState domainMemberState, DomainLocationInfo domainLocationInfo)
 {
     this.ID            = domainMemberInfo.ID;
     this.Name          = domainMemberInfo.Name;
     this.Location      = domainLocationInfo;
     this.IsBeingEdited = domainMemberState.HasFlag(DomainMemberState.IsBeingEdited);
     this.Background    = new SolidColorBrush(domainMemberInfo.GetColor());
 }
        public void Set(DomainMemberInfo item, DomainMemberState domainMemberState, DomainLocationInfo domainLocationInfo)
        {
            for (var i = 0; i < this.Count; i++)
            {
                if (this[i].ID == item.ID)
                {
                    this[i] = new DomainDataMember(item, domainMemberState, domainLocationInfo);
                    return;
                }
            }

            this.Add(new DomainDataMember(item, domainMemberState, domainLocationInfo));
        }
        public DomainMemberDescriptor(Authentication authentication, IDomainMemberDescriptor descriptor, DescriptorTypes descriptorTypes, object owner)
            : base(authentication, descriptor.Target, descriptorTypes)
        {
            this.domainMember = descriptor.Target;
            this.Owner        = owner ?? this;
            this.domainMember.Dispatcher.VerifyAccess();
            this.domainMemberInfo  = domainMember.DomainMemberInfo;
            this.DomainMemberState = domainMember.DomainMemberState;

            if (this.descriptorTypes.HasFlag(DescriptorTypes.IsSubscriptable) == true && descriptor is INotifyPropertyChanged obj)
            {
                obj.PropertyChanged += Descriptor_PropertyChanged;
            }
        }
        public DomainMemberDescriptor(Authentication authentication, IDomainMember domainMember, DescriptorTypes descriptorTypes, object owner)
            : base(authentication, domainMember, descriptorTypes)
        {
            this.domainMember = domainMember;
            this.Owner        = owner ?? this;
            this.domainMember.Dispatcher.VerifyAccess();
            this.domainMemberInfo  = domainMember.DomainMemberInfo;
            this.DomainMemberState = domainMember.DomainMemberState;

            if (this.descriptorTypes.HasFlag(DescriptorTypes.IsSubscriptable) == true)
            {
                this.domainMember.DomainMemberInfoChanged  += DomainMember_DomainMemberInfoChanged;
                this.domainMember.DomainMemberStateChanged += DomainMember_DomainMemberStateChanged;
            }
        }
        private void Descriptor_PropertyChanged(object sender, PropertyChangedEventArgs e)
        {
            if (e.PropertyName != string.Empty)
            {
                var prop1 = sender.GetType().GetProperty(e.PropertyName);
                var prop2 = this.GetType().GetProperty(e.PropertyName);

                if (prop1 != null && prop1.CanRead == true && prop2 != null && prop2.CanWrite == true)
                {
                    var value = prop1.GetValue(sender);
                    prop2.SetValue(this, value);
                }
            }
            else if (sender is IDomainMemberDescriptor descriptor)
            {
                this.domainMemberInfo  = descriptor.DomainMemberInfo;
                this.DomainMemberState = descriptor.DomainMemberState;
            }
            this.NotifyOfPropertyChange(e.PropertyName);
        }
 private void DomainMember_DomainMemberInfoChanged(object sender, EventArgs e)
 {
     this.domainMemberInfo = this.domainMember.DomainMemberInfo;
     this.Dispatcher.InvokeAsync(this.RefreshAsync);
 }
Example #8
0
 public void SetDomainMemberInfo(DomainMemberInfo domainMemberInfo)
 {
     base.DomainMemberInfo = domainMemberInfo;
 }
Example #9
0
 async void IDomainContextEventCallback.OnUserAdded(CallbackInfo callbackInfo, Guid domainID, DomainMemberInfo domainMemberInfo, DomainMemberState domainMemberState, byte[] data, Guid taskID)
 {
     try
     {
         await this.callbackEvent.InvokeAsync(callbackInfo.Index, () =>
         {
             this.Dispatcher.Invoke(() =>
             {
                 var authentication = this.UserContext.Authenticate(callbackInfo.SignatureDate);
                 var domain         = this.GetDomain(domainID);
                 domain.InvokeMemberAddedAsync(authentication, domainMemberInfo, domainMemberState, data, taskID);
             });
         });
     }
     catch (Exception e)
     {
         this.CremaHost.Error(e);
     }
 }