Exemplo n.º 1
0
        ///<inheritdoc/>
        protected override void SetupHandler()
        {
            CreateLayout();
            ConstraintManager cm = new ConstraintManager(Handler);
            var topLevelGroup    = Handler.AddGroup("TOP_LEVEL");

            topLevelGroup.Attributes[TableEditorFactory.RenderingHintsAttribute]   = TableEditorFactory.RenderingHints.Invisible;
            topLevelGroup.Attributes[DefaultEditorFactory.RenderingHintsAttribute] = DefaultEditorFactory.RenderingHints.Invisible;

            topLevelGroup.AddList(STYLE, styleEnum.Keys, STYLE_ROWS);
            topLevelGroup.AddBool(NO_OVERLAP,
                                  (componentLayout.Style & ComponentArrangementStyles.ModifierNoOverlap) != 0);
            topLevelGroup.AddBool(FROM_SKETCH, (componentLayout.Style & ComponentArrangementStyles.ModifierAsIs) != 0);
            YDimension  size = componentLayout.PreferredSize;
            IOptionItem useScreenRationItem = topLevelGroup.AddBool(USE_SCREEN_RATIO, true);
            IOptionItem aspectRationItem    = topLevelGroup.AddDouble(ASPECT_RATIO, size.Width / size.Height);

            cm.SetEnabledOnValueEquals(useScreenRationItem, false, aspectRationItem);

            topLevelGroup.AddDouble(COMPONENT_SPACING, componentLayout.ComponentSpacing, 0.0d, double.MaxValue);
            IOptionItem gridEnabledItem = topLevelGroup.AddBool(GRID_ENABLED, componentLayout.GridSpacing > 0);
            IOptionItem gridSpacingItem =
                topLevelGroup.AddDouble(GRID_SPACING,
                                        componentLayout.GridSpacing > 0 ? componentLayout.GridSpacing : 20.0d);

            cm.SetEnabledOnValueEquals(gridEnabledItem, true, gridSpacingItem);
        }
        /// <summary>
        /// Setup default values for various configuration parameters.
        /// </summary>
        public ComponentLayoutConfig()
        {
            var layout = new ComponentLayout();

            StyleItem      = ComponentArrangementStyles.Rows;
            NoOverlapItem  = (layout.Style & ComponentArrangementStyles.ModifierNoOverlap) != 0;
            FromSketchItem = (layout.Style & ComponentArrangementStyles.ModifierAsIs) != 0;
            YDimension size = layout.PreferredSize;

            UseScreenRatioItem = true;
            AspectRatioItem    = size.Width / size.Height;

            ComponentSpacingItem = layout.ComponentSpacing;
            GridEnabledItem      = layout.GridSpacing > 0;
            GridSpacingItem      = layout.GridSpacing > 0 ? layout.GridSpacing : 20.0d;
        }