public KryptonProcessRunner(Type type = Type.TEXTBOX, IconVisibility iconVisibility = IconVisibility.VISIBLE)
        {
            InitializeComponent();

            SetInputType(type);

            SetIconVisibility(iconVisibility);

            AdaptUI(type, iconVisibility);
        }
        public void AdaptUI(Type type, IconVisibility iconVisibility)
        {
            switch (iconVisibility)
            {
            case IconVisibility.HIDDEN:
                pbxApplicationIcon.Visible = false;

                switch (type)
                {
                case Type.COMBOBOX:
                    kcmbPath.Visible = true;

                    kcmbPath.Size = new Size(614, 25);

                    ktxtUserInput.Visible = false;
                    break;

                case Type.TEXTBOX:
                    kcmbPath.Visible = false;

                    ktxtUserInput.Visible = true;

                    ktxtUserInput.Size = new Size(614, 25);
                    break;
                }
                break;

            case IconVisibility.VISIBLE:
                pbxApplicationIcon.Visible = true;

                switch (type)
                {
                case Type.COMBOBOX:
                    kcmbPath.Visible = true;

                    kcmbPath.Size = new Size(576, 25);

                    ktxtUserInput.Visible = false;
                    break;

                case Type.TEXTBOX:
                    kcmbPath.Visible = false;

                    ktxtUserInput.Visible = true;

                    ktxtUserInput.Size = new Size(576, 25);
                    break;
                }
                break;
            }
        }
 /// <summary>
 /// Sets the IconVisibility.
 /// </summary>
 /// <param name="value">The value.</param>
 public void SetIconVisibility(IconVisibility value) => _iconVisibility = value;