예제 #1
0
        void EhAdvancedPlotGroupControlRequired(object sender, EventArgs e)
        {
            _plotGroupView.AdvancedPlotGroupControl -= EhAdvancedPlotGroupControlRequired;
            ApplyPlotGroupView();
            _plotGroupView = null;
            if (_groupStyles != null)
            {
                _plotGroupController = (IMVCAController)Current.Gui.GetControllerAndControl(new object[] { _groupStyles }, typeof(IMVCAController));
                // remove the tabs 1.., leaving only the style and data tab
                if (_dataController == null)
                {
                    RemoveTabRange(0, TabCount);
                }
                else
                {
                    RemoveTabRange(1, TabCount - 1);
                }

                AddTab("Grouping", _plotGroupController, _plotGroupController.ViewObject);
                AddTab("Styles", _styleCollectionController, _styleCollectionController.ViewObject);

                InitializeStyles();

                BringTabToFront(_dataController == null ? 0 : 1);
            }
        }
    void EhAdvancedPlotGroupControlRequired(object sender, EventArgs e)
    {
      _plotGroupView.AdvancedPlotGroupControl -= EhAdvancedPlotGroupControlRequired;
      ApplyPlotGroupView();
      _plotGroupView = null;
      if (_groupStyles != null)
      {
        _plotGroupController = (IMVCAController)Current.Gui.GetControllerAndControl(new object[] { _groupStyles }, typeof(IMVCAController));
        // remove the tabs 1.., leaving only the style and data tab
        if (_dataController == null)
          RemoveTabRange(0, TabCount);
        else
          RemoveTabRange(1, TabCount - 1);

        AddTab("Grouping", _plotGroupController, _plotGroupController.ViewObject);
        AddTab("Styles", _styleCollectionController, _styleCollectionController.ViewObject);

        InitializeStyles();

        BringTabToFront(_dataController == null ? 0 : 1);
      }
    }
예제 #3
0
        void InitializePlotGroupView()
        {
            bool bStandard = true;
            bool bSerial   = false;
            bool color     = false;
            bool linestyle = false;
            bool symbol    = false;

            if (_groupStyles != null)
            {
                color     = _groupStyles.ContainsType(typeof(ColorGroupStyle));
                linestyle = _groupStyles.ContainsType(typeof(LineStyleGroupStyle));
                symbol    = _groupStyles.ContainsType(typeof(SymbolShapeStyleGroupStyle));

                if (_groupStyles.Count != (color ? 1 : 0) + (linestyle ? 1 : 0) + (symbol ? 1 : 0))
                {
                    bStandard = false;
                }

                if (color && linestyle && typeof(LineStyleGroupStyle) == _groupStyles.GetChildTypeOf(typeof(ColorGroupStyle)))
                {
                    bSerial = true;
                }
                if ((linestyle && symbol) && typeof(SymbolShapeStyleGroupStyle) == _groupStyles.GetChildTypeOf(typeof(LineStyleGroupStyle)))
                {
                    if (color && !bSerial)
                    {
                        bStandard = false;
                    }
                    else
                    {
                        bSerial = true;
                    }
                }

                if (color && !((ColorGroupStyle)_groupStyles.GetPlotGroupStyle(typeof(ColorGroupStyle))).IsStepEnabled)
                {
                    bStandard = false;
                }
                if (linestyle && !((LineStyleGroupStyle)_groupStyles.GetPlotGroupStyle(typeof(LineStyleGroupStyle))).IsStepEnabled)
                {
                    bStandard = false;
                }
                if (symbol && !((SymbolShapeStyleGroupStyle)_groupStyles.GetPlotGroupStyle(typeof(SymbolShapeStyleGroupStyle))).IsStepEnabled)
                {
                    bStandard = false;
                }
                if (_groupStyles.CoordinateTransformingStyle != null)
                {
                    bStandard = false;
                }
            }

            if (bStandard && _groupStyles != null)
            {
                _plotGroupView = (IXYPlotGroupView)Current.Gui.FindAndAttachControlTo(this, typeof(IXYPlotGroupView));
                _plotGroupView.InitializePlotGroupConditions(
                    color,
                    linestyle,
                    symbol,
                    !bSerial,                  //_parentPlotGroup.ChangeStylesConcurrently,
                    PlotGroupStrictness.Normal //_parentPlotGroup.ChangeStylesStrictly
                    );
                _plotGroupView.AdvancedPlotGroupControl += EhAdvancedPlotGroupControlRequired;
            }
            else if (_groupStyles != null)
            {
                _plotGroupController = (IMVCAController)Current.Gui.GetControllerAndControl(new object[] { _groupStyles }, typeof(IMVCAController));
            }
        }
    void InitializePlotGroupView()
    {
      bool bStandard = true;
      bool bSerial = false;
      bool color = false;
      bool linestyle = false;
      bool symbol = false;

      if (_groupStyles != null)
      {
        color = _groupStyles.ContainsType(typeof(ColorGroupStyle));
        linestyle = _groupStyles.ContainsType(typeof(LineStyleGroupStyle));
        symbol = _groupStyles.ContainsType(typeof(SymbolShapeStyleGroupStyle));

        if (_groupStyles.Count != (color ? 1 : 0) + (linestyle ? 1 : 0) + (symbol ? 1 : 0))
          bStandard = false;

        if(color && linestyle && typeof(LineStyleGroupStyle)==_groupStyles.GetChildTypeOf(typeof(ColorGroupStyle)))
        {
          bSerial = true;
        }
        if((linestyle && symbol) && typeof(SymbolShapeStyleGroupStyle)==_groupStyles.GetChildTypeOf(typeof(LineStyleGroupStyle)))
        {
          if (color && !bSerial)
            bStandard = false;
          else
            bSerial = true;
        }

        if (color && !((ColorGroupStyle)_groupStyles.GetPlotGroupStyle(typeof(ColorGroupStyle))).IsStepEnabled)
          bStandard = false;
        if (linestyle && !((LineStyleGroupStyle)_groupStyles.GetPlotGroupStyle(typeof(LineStyleGroupStyle))).IsStepEnabled)
          bStandard = false;
        if (symbol && !((SymbolShapeStyleGroupStyle)_groupStyles.GetPlotGroupStyle(typeof(SymbolShapeStyleGroupStyle))).IsStepEnabled)
          bStandard = false;
        if (_groupStyles.CoordinateTransformingStyle != null)
          bStandard = false;
      }

      if (bStandard && _groupStyles!=null)
      {
        _plotGroupView = (IXYPlotGroupView)Current.Gui.FindAndAttachControlTo(this, typeof(IXYPlotGroupView));
        _plotGroupView.InitializePlotGroupConditions(
            color,
            linestyle,
            symbol,
            !bSerial, //_parentPlotGroup.ChangeStylesConcurrently,
            PlotGroupStrictness.Normal //_parentPlotGroup.ChangeStylesStrictly
            );
        _plotGroupView.AdvancedPlotGroupControl += EhAdvancedPlotGroupControlRequired;
      }
      else if (_groupStyles != null)
      {
        _plotGroupController = (IMVCAController)Current.Gui.GetControllerAndControl(new object[] { _groupStyles }, typeof(IMVCAController));
      }
    }