Beispiel #1
0
 protected void UpdateIndicatorStretch(BaseWaitingBarIndicatorElement indicator)
 {
     if ((object)indicator.GetType() == (object)typeof(WaitingBarIndicatorElement))
     {
         if (this.IsVertical())
         {
             indicator.StretchHorizontally = true;
             indicator.StretchVertically   = false;
         }
         else
         {
             indicator.StretchHorizontally = false;
             indicator.StretchVertically   = true;
         }
     }
     else
     {
         indicator.StretchHorizontally = true;
         indicator.StretchVertically   = true;
     }
 }
Beispiel #2
0
        protected virtual void CreateIndicators()
        {
            if (this.ElementTree != null && this.ElementTree.Control != null && (this.ElementTree.Control is RadControl && (this.ElementTree.Control as RadControl).IsInitializing) && this.clearedDesignTimeItems)
            {
                return;
            }
            if (this.IsDesignMode)
            {
                IDesignerHost service = this.ElementTree.Control.Site.GetService(typeof(IDesignerHost)) as IDesignerHost;
                while (this.WaitingIndicators.Count > 0)
                {
                    int count = this.WaitingIndicators.Count;
                    BaseWaitingBarIndicatorElement waitingIndicator = this.WaitingIndicators[count - 1];
                    this.WaitingIndicators.RemoveAt(count - 1);
                    service.DestroyComponent((IComponent)waitingIndicator);
                }
                switch (this.WaitingStyle)
                {
                case WaitingBarStyles.Indeterminate:
                case WaitingBarStyles.Throbber:
                case WaitingBarStyles.Dash:
                    this.WaitingIndicators.Add((BaseWaitingBarIndicatorElement)(service.CreateComponent(typeof(WaitingBarIndicatorElement)) as WaitingBarIndicatorElement));
                    this.WaitingIndicators.Add((BaseWaitingBarIndicatorElement)(service.CreateComponent(typeof(WaitingBarIndicatorElement)) as WaitingBarIndicatorElement));
                    int num1 = (int)this.WaitingIndicators[0].SetDefaultValueOverride(RadElement.VisibilityProperty, (object)ElementVisibility.Visible);
                    int num2 = (int)this.WaitingIndicators[1].SetDefaultValueOverride(RadElement.VisibilityProperty, (object)ElementVisibility.Collapsed);
                    break;

                case WaitingBarStyles.DotsLine:
                    this.WaitingIndicators.Add((BaseWaitingBarIndicatorElement)(service.CreateComponent(typeof(DotsLineWaitingBarIndicatorElement)) as DotsLineWaitingBarIndicatorElement));
                    break;

                case WaitingBarStyles.DotsSpinner:
                    this.WaitingIndicators.Add((BaseWaitingBarIndicatorElement)(service.CreateComponent(typeof(DotsSpinnerWaitingBarIndicatorElement)) as DotsSpinnerWaitingBarIndicatorElement));
                    break;

                case WaitingBarStyles.LineRing:
                    this.WaitingIndicators.Add((BaseWaitingBarIndicatorElement)(service.CreateComponent(typeof(LineRingWaitingBarIndicatorElement)) as LineRingWaitingBarIndicatorElement));
                    break;

                case WaitingBarStyles.SegmentedRing:
                    this.WaitingIndicators.Add((BaseWaitingBarIndicatorElement)(service.CreateComponent(typeof(SegmentedRingWaitingBarIndicatorElement)) as SegmentedRingWaitingBarIndicatorElement));
                    break;

                case WaitingBarStyles.DotsRing:
                    this.WaitingIndicators.Add((BaseWaitingBarIndicatorElement)(service.CreateComponent(typeof(DotsRingWaitingBarIndicatorElement)) as DotsRingWaitingBarIndicatorElement));
                    break;

                case WaitingBarStyles.FadingRing:
                    this.WaitingIndicators.Add((BaseWaitingBarIndicatorElement)(service.CreateComponent(typeof(FadingRingWaitingBarIndicatorElement)) as FadingRingWaitingBarIndicatorElement));
                    break;

                case WaitingBarStyles.RotatingRings:
                    this.WaitingIndicators.Add((BaseWaitingBarIndicatorElement)(service.CreateComponent(typeof(RotatingRingsWaitingBarIndicatorElement)) as RotatingRingsWaitingBarIndicatorElement));
                    break;

                default:
                    throw new NotImplementedException("WaitingStyle: " + this.WaitingStyle.ToString() + " is not implemented.");
                }
            }
            else
            {
                this.WaitingIndicators.Clear();
                switch (this.WaitingStyle)
                {
                case WaitingBarStyles.Indeterminate:
                case WaitingBarStyles.Throbber:
                case WaitingBarStyles.Dash:
                    this.WaitingIndicators.Add((BaseWaitingBarIndicatorElement) new WaitingBarIndicatorElement());
                    this.WaitingIndicators.Add((BaseWaitingBarIndicatorElement) new WaitingBarIndicatorElement());
                    int num1 = (int)this.WaitingIndicators[0].SetDefaultValueOverride(RadElement.VisibilityProperty, (object)ElementVisibility.Visible);
                    int num2 = (int)this.WaitingIndicators[1].SetDefaultValueOverride(RadElement.VisibilityProperty, (object)ElementVisibility.Collapsed);
                    break;

                case WaitingBarStyles.DotsLine:
                    this.WaitingIndicators.Add((BaseWaitingBarIndicatorElement) new DotsLineWaitingBarIndicatorElement());
                    break;

                case WaitingBarStyles.DotsSpinner:
                    this.WaitingIndicators.Add((BaseWaitingBarIndicatorElement) new DotsSpinnerWaitingBarIndicatorElement());
                    break;

                case WaitingBarStyles.LineRing:
                    this.WaitingIndicators.Add((BaseWaitingBarIndicatorElement) new LineRingWaitingBarIndicatorElement());
                    break;

                case WaitingBarStyles.SegmentedRing:
                    this.WaitingIndicators.Add((BaseWaitingBarIndicatorElement) new SegmentedRingWaitingBarIndicatorElement());
                    break;

                case WaitingBarStyles.DotsRing:
                    this.WaitingIndicators.Add((BaseWaitingBarIndicatorElement) new DotsRingWaitingBarIndicatorElement());
                    break;

                case WaitingBarStyles.FadingRing:
                    this.WaitingIndicators.Add((BaseWaitingBarIndicatorElement) new FadingRingWaitingBarIndicatorElement());
                    break;

                case WaitingBarStyles.RotatingRings:
                    this.WaitingIndicators.Add((BaseWaitingBarIndicatorElement) new RotatingRingsWaitingBarIndicatorElement());
                    break;

                default:
                    throw new NotImplementedException("WaitingStyle: " + this.WaitingStyle.ToString() + " is not implemented.");
                }
            }
        }
Beispiel #3
0
 private void WaitingIndicators_CollectionChanged(
     object sender,
     NotifyCollectionChangedEventArgs e)
 {
     if (e.Action == NotifyCollectionChangedAction.Add)
     {
         if (this.ElementTree == null || this.ElementTree.Control == null || this.ElementTree.Control is RadControl && (this.ElementTree.Control as RadControl).IsInitializing && !this.clearedDesignTimeItems)
         {
             this.clearedDesignTimeItems = true;
             List <BaseWaitingBarIndicatorElement> indicatorElementList = new List <BaseWaitingBarIndicatorElement>();
             foreach (BaseWaitingBarIndicatorElement waitingIndicator in (Collection <BaseWaitingBarIndicatorElement>) this.WaitingIndicators)
             {
                 if (!e.NewItems.Contains((object)waitingIndicator))
                 {
                     indicatorElementList.Add(waitingIndicator);
                 }
             }
             while (indicatorElementList.Count > 0)
             {
                 BaseWaitingBarIndicatorElement indicatorElement = indicatorElementList[indicatorElementList.Count - 1];
                 this.WaitingIndicators.Remove(indicatorElement);
                 indicatorElementList.Remove(indicatorElement);
             }
         }
         foreach (BaseWaitingBarIndicatorElement newItem in (IEnumerable)e.NewItems)
         {
             this.Children.Add((RadElement)newItem);
             if (newItem is WaitingBarIndicatorElement)
             {
                 this.UpdateElementsState(newItem as WaitingBarIndicatorElement);
             }
             this.UpdateIndicatorStretch(newItem);
         }
     }
     else if (e.Action == NotifyCollectionChangedAction.Remove)
     {
         foreach (BaseWaitingBarIndicatorElement newItem in (IEnumerable)e.NewItems)
         {
             newItem.Invalidate();
             if (this.Children.Contains((RadElement)newItem))
             {
                 this.Children.Remove((RadElement)newItem);
             }
         }
     }
     else
     {
         if (e.Action != NotifyCollectionChangedAction.Reset)
         {
             return;
         }
         foreach (BaseWaitingBarIndicatorElement oldItem in (IEnumerable)e.OldItems)
         {
             oldItem.Invalidate();
             if (this.Children.Contains((RadElement)oldItem))
             {
                 this.Children.Remove((RadElement)oldItem);
             }
         }
     }
 }