public HCDropDownHolderImpl(Control holder, HCDropDownControl control)
        {
            this.holder = holder;

            holder.AutoSize = false;
            holder.Margin   = Padding.Empty;
            holder.Padding  = new Padding(1);              // for borders

            innerControl = control ?? throw new ArgumentNullException("control");
            innerControl.ParentHolder = (IDropDownHolder)holder;

            if (holder is HCFormDropDownHolder)
            {
                innerControl.Location = new Point(1, 1);
            }
            else
            {
                innerControl.Location = Point.Empty;
            }

            //innerControl.RegionChanged += ( sender, e ) => UpdateRegion();
            //innerControl.Paint += ( sender, e ) => PaintSizeGrip( e );

            Resizable = innerControl.Resizable;
        }
Пример #2
0
        public HCFormDropDownHolder(HCDropDownControl control)
        {
            //DoubleBuffered = true;
            ResizeRedraw = true;
            AutoSize     = false;

            Closed += (s, e) => HolderClosed(s, e);

            FormBorderStyle = FormBorderStyle.None;
            StartPosition   = FormStartPosition.Manual;

            Controls.Add(control);

            impl = new HCDropDownHolderImpl(this, control);
            impl.Initialize();
        }
Пример #3
0
        public void ToggleDropDown(HCDropDownControl control, Control parentControl)
        {
            if (dropDownHolder == null)
            {
                if (control.UseFormDropDownHolder)
                {
                    dropDownHolder = new HCFormDropDownHolder(control);
                }
                else
                {
                    dropDownHolder = new HCToolStripDropDownHolder(control);
                }

                dropDownHolder.Show(parentControl);
                dropDownHolder.HolderClosed += DropDownHolder_Closed;
            }
            else
            {
                dropDownHolder.Close();
            }
        }
Пример #4
0
        public void ToggleDropDown(HCDropDownControl control, HCItemProperty itemProperty)
        {
            if (dropDownHolder == null)
            {
                if (control.SpecialHolder)
                {
                    dropDownHolder = new HCFormDropDownHolder(control);
                }
                else
                {
                    dropDownHolder = new HCToolStripDropDownHolder(control);
                }

                dropDownHolder.Show(itemProperty.CreatedControlInsidePropertyItemControl);
                dropDownHolder.HolderClosed += DropDownHolder_Closed;
            }
            else
            {
                dropDownHolder.Close();
            }
        }
Пример #5
0
        public HCToolStripDropDownHolder(HCDropDownControl control)
        {
            //DoubleBuffered = true;
            ResizeRedraw = true;
            AutoSize     = false;
            RenderMode   = ToolStripRenderMode.System;           // only border color

            //DropShadowEnabled = false;

            Closed += (s, e) => HolderClosed(s, e);

            impl = new HCDropDownHolderImpl(this, control);
            impl.Initialize();

            var controlHost = new ToolStripControlHost(control)
            {
                Margin  = Padding.Empty,
                Padding = Padding.Empty
            };

            Items.Add(controlHost);
        }
        public HCFormDropDownHolder(HCDropDownControl control)
        {
            //InitializeComponent();

            MinimumSize = new Size(1, 1);
            MaximumSize = new Size(10000, 10000);

            //DoubleBuffered = true;
            ResizeRedraw = true;
            AutoSize     = false;

            //border
            BackColor = EditorAPI.DarkTheme ? Color.FromArgb(90, 90, 90) : Color.FromArgb(240, 240, 240);

            Closed += (s, e) => HolderClosed(s, e);

            FormBorderStyle = FormBorderStyle.None;
            StartPosition   = FormStartPosition.Manual;

            Controls.Add(control);

            impl = new HCDropDownHolderImpl(this, control);
            impl.Initialize();
        }