public InputBoxWithDesc(
            System.Windows.Forms.Control parentpal,
            int lineint,
            int lineflo,
            string predesc,
            string preword,
            string password,
            System.Drawing.Font descfont,
            System.Drawing.Size descsize,
            System.Drawing.Font font,
            System.Drawing.Size size,
            System.Drawing.Point point,
            System.Drawing.Color defrcolor,
            System.Drawing.Color debkcolor,
            System.Drawing.Color linecolor,
            System.Drawing.Color linelight,
            System.Drawing.Color backcolor,
            System.Drawing.Color backlight,
            System.Drawing.Color forecolor,
            System.Drawing.Color forelight,
            System.Windows.Forms.AnchorStyles anchorstyle
            )
        {
            Linecolor = linecolor;
            Linelight = linelight;
            Backcolor = backcolor;
            Backlight = backlight;
            Forecolor = forecolor;
            Forelight = forelight;

            var inputdesc = new HDarge
                (
                parentpal,
                predesc,
                descfont,
                descsize,
                point,
                defrcolor,
                debkcolor,
                BaseAlign.AlignMiddleCenter,
                BaseAnchor.AnchorLeftFill
                );

            var inputPal = new LPanel
                (
                parentpal,
                lineint,
                size,
                new System.Drawing.Point(inputdesc.Location.X + inputdesc.Width, inputdesc.Location.Y),
                Linecolor,
                Backcolor,
                anchorstyle
                );
            PreWord = preword;
            Text = preword.ToSafeValue();
            Multiline = true;
            Size = new System.Drawing.Size(inputPal.Size.Width - 8*lineint, inputPal.Size.Height - 4*lineint);
            Location = new System.Drawing.Point(4*lineint, (4 + lineflo)*lineint);
            BackColor = Backcolor;
            ForeColor = Forecolor;
            Font = font;
            Anchor = anchorstyle;
            if (!string.IsNullOrEmpty(password))
            {
                PasswordChar = password.ToCharArray()[0];
            }
            Leave += LInput_Leave;
            Enter += LInput_Enter;
            GotFocus += InputBoxWithDesc_GotFocus;
            LostFocus += InputBoxWithDesc_LostFocus;
            inputPal.Controls.Add(this);
        }
        public InputSearch(
            System.Windows.Forms.Control parentpal,
            int lineint,
            int lineflo,
            string predesc,
            string preword,
            System.Drawing.Font descfont,
            System.Drawing.Size descsize,
            System.Drawing.Font font,
            System.Drawing.Size size,
            System.Drawing.Point point,
            System.Drawing.Color defrcolor,
            System.Drawing.Color debkcolor,
            System.Drawing.Color linecolor,
            System.Drawing.Color linelight,
            System.Drawing.Color backcolor,
            System.Drawing.Color backlight,
            System.Drawing.Color forecolor,
            System.Drawing.Color forelight,
            System.Windows.Forms.MouseEventHandler searchEnter,
            System.Windows.Forms.KeyEventHandler searchEnterKey,
            System.Windows.Forms.AnchorStyles anchorstyle
            )
        {
            Linecolor = linecolor;
            Linelight = linelight;
            Backcolor = backcolor;
            Backlight = backlight;
            Forecolor = forecolor;
            Forelight = forelight;

            var inputPal = new LPanel
                (
                parentpal,
                lineint,
                size,
                point,
                Linecolor,
                Backcolor,
                anchorstyle
                );

            var inputdesc = new LButton
                (
                inputPal,
                0,
                predesc,
                descfont,
                descsize,
                new System.Drawing.Point(size.Width - descsize.Width, -1),
                debkcolor,
                debkcolor,
                debkcolor,
                System.Drawing.Color.FromArgb(51, debkcolor),
                defrcolor,
                defrcolor,
                System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Top
                );
            inputdesc.MouseClick += searchEnter;

            inputdesc.Focus();
            PreWord = preword;
            Text = preword;
            Multiline = false;
            Size = new System.Drawing.Size(inputPal.Size.Width - 8*lineint - descsize.Width,
                                           inputPal.Size.Height - 4*lineint);
            Location = new System.Drawing.Point(4*lineint, (4 + lineflo)*lineint);
            BackColor = Backcolor;
            ForeColor = Forecolor;
            Font = font;
            Anchor = anchorstyle;
            AllowDrop = true;
            DragEnter += FPanel_DragEnter;

            Leave += LInput_Leave;
            Enter += LInput_Enter;
            KeyDown += searchEnterKey;
            GotFocus += InputBoxWithDesc_GotFocus;
            LostFocus += InputBoxWithDesc_LostFocus;
            inputPal.Controls.Add(this);
        }
        public CheckMultiBox(
            System.Windows.Forms.Control parentpal,
            string[] values,
            string group,
            bool single,
            float celldesc,
            float cellfit,
            int lineint,
            int lineflo,
            int descsize,
            System.Drawing.Size cellsize,
            System.Drawing.Size allsize,
            System.Drawing.Point point,
            System.Drawing.Font font,
            System.Drawing.Color pabgcolor,
            System.Drawing.Color linecolor,
            System.Drawing.Color foreColor,
            System.Drawing.Color fodecolor,
            System.Windows.Forms.AnchorStyles anchorstyle
            )
        {
            Size = allsize;
            Location = point;
            Anchor = anchorstyle;
            CheckValue = new System.Collections.Generic.List<string>();
            if (!single)
            {
                CheckValue.Add(values[0]);
            }

            // ReSharper disable ObjectCreationAsStatement
            new HDarge
            // ReSharper restore ObjectCreationAsStatement
                (
                this,
                group,
                font,
                new System.Drawing.Size(descsize, allsize.Height),
                new System.Drawing.Point(0, 0),
                pabgcolor,
                foreColor,
                BaseAlign.AlignMiddleCenter,
                anchorstyle
                );
            var checkMultiPal = new LPanel
                (
                this,
                lineint,
                new System.Drawing.Size(allsize.Width - descsize, allsize.Height),
                new System.Drawing.Point(descsize, 0),
                linecolor,
                fodecolor,
                anchorstyle
                );
            var flyPal = new LFlyPal
                (
                checkMultiPal,
                new System.Drawing.Size(checkMultiPal.Width - 10, allsize.Height),
                new System.Drawing.Point(10, lineflo),
                BaseAnchor.AnchorFill
                );
            foreach (var value in values)
            {
                if (single)
                {
            // ReSharper disable ObjectCreationAsStatement
                    new CheckSingleBox
            // ReSharper restore ObjectCreationAsStatement
                        (
                        flyPal,
                        value,
                        false,
                        true,
                        group,
                        celldesc,
                        1,
                        cellsize,
                        new System.Drawing.Point(0, 0),
                        new System.Drawing.Font(font.FontFamily, cellfit),
                        foreColor,
                        fodecolor,
                        BaseAnchor.AnchorTopRight
                        );
                }
                else
                {
                    if (value == values[0])
                    {
            // ReSharper disable ObjectCreationAsStatement
                        new CheckSingleBox
            // ReSharper restore ObjectCreationAsStatement
                            (
                            flyPal,
                            value,
                            true,
                            false,
                            group,
                            celldesc,
                            1,
                            cellsize,
                            new System.Drawing.Point(0, 0),
                            new System.Drawing.Font(font.FontFamily, cellfit),
                            foreColor,
                            fodecolor,
                            BaseAnchor.AnchorTopRight
                            );
                    }
                    else
                    {
            // ReSharper disable ObjectCreationAsStatement
                        new CheckSingleBox
            // ReSharper restore ObjectCreationAsStatement
                            (
                            flyPal,
                            value,
                            false,
                            false,
                            group,
                            celldesc,
                            1,
                            cellsize,
                            new System.Drawing.Point(0, 0),
                            new System.Drawing.Font(font.FontFamily, cellfit),
                            foreColor,
                            fodecolor,
                            BaseAnchor.AnchorTopRight
                            );
                    }
                }
            }
            parentpal.Controls.Add(this);
        }