internal void SetExprHost(StateIndicatorExprHost exprHost, ObjectModelImpl reportObjectModel)
        {
            Global.Tracer.Assert(exprHost != null && reportObjectModel != null, "(exprHost != null && reportObjectModel != null)");
            SetExprHost((GaugePanelItemExprHost)exprHost, reportObjectModel);
            if (m_gaugeInputValue != null && ExprHost.GaugeInputValueHost != null)
            {
                m_gaugeInputValue.SetExprHost(ExprHost.GaugeInputValueHost, reportObjectModel);
            }
            if (m_maximumValue != null && ExprHost.MaximumValueHost != null)
            {
                m_maximumValue.SetExprHost(ExprHost.MaximumValueHost, reportObjectModel);
            }
            if (m_minimumValue != null && ExprHost.MinimumValueHost != null)
            {
                m_minimumValue.SetExprHost(ExprHost.MinimumValueHost, reportObjectModel);
            }
            if (m_indicatorImage != null && ExprHost.IndicatorImageHost != null)
            {
                m_indicatorImage.SetExprHost(ExprHost.IndicatorImageHost, reportObjectModel);
            }
            IList <IndicatorStateExprHost> indicatorStatesHostsRemotable = ExprHost.IndicatorStatesHostsRemotable;

            if (m_indicatorStates == null || indicatorStatesHostsRemotable == null)
            {
                return;
            }
            for (int i = 0; i < m_indicatorStates.Count; i++)
            {
                IndicatorState indicatorState = m_indicatorStates[i];
                if (indicatorState != null && indicatorState.ExpressionHostID > -1)
                {
                    indicatorState.SetExprHost(indicatorStatesHostsRemotable[indicatorState.ExpressionHostID], reportObjectModel);
                }
            }
        }
예제 #2
0
        internal object PublishClone(AutomaticSubtotalContext context)
        {
            IndicatorState indicatorState = (IndicatorState)MemberwiseClone();

            indicatorState.m_gaugePanel = (GaugePanel)context.CurrentDataRegionClone;
            if (m_startValue != null)
            {
                indicatorState.m_startValue = (GaugeInputValue)m_startValue.PublishClone(context);
            }
            if (m_endValue != null)
            {
                indicatorState.m_endValue = (GaugeInputValue)m_endValue.PublishClone(context);
            }
            if (m_color != null)
            {
                indicatorState.m_color = (ExpressionInfo)m_color.PublishClone(context);
            }
            if (m_scaleFactor != null)
            {
                indicatorState.m_scaleFactor = (ExpressionInfo)m_scaleFactor.PublishClone(context);
            }
            if (m_indicatorStyle != null)
            {
                indicatorState.m_indicatorStyle = (ExpressionInfo)m_indicatorStyle.PublishClone(context);
            }
            if (m_indicatorImage != null)
            {
                indicatorState.m_indicatorImage = (IndicatorImage)m_indicatorImage.PublishClone(context);
            }
            return(indicatorState);
        }
예제 #3
0
 public IndicatorState this[string name]
 {
     get
     {
         for (int i = 0; i < Count; i++)
         {
             Microsoft.ReportingServices.ReportIntermediateFormat.IndicatorState indicatorState = m_stateIndicator.StateIndicatorDef.IndicatorStates[i];
             if (string.CompareOrdinal(name, indicatorState.Name) == 0)
             {
                 return(base[i]);
             }
         }
         throw new RenderingObjectModelException(ProcessingErrorCode.rsNotInCollection, name);
     }
 }
예제 #4
0
 internal IndicatorState(Microsoft.ReportingServices.ReportIntermediateFormat.IndicatorState defObject, GaugePanel gaugePanel)
 {
     m_defObject  = defObject;
     m_gaugePanel = gaugePanel;
 }