Agregar Eliminar controlador de columnas en jqGrid ColumnChooser

Estoy usando eljqGrid columnChooser, al igual que:

<code>    jQuery(grid).jqGrid(
        'navButtonAdd',
        pagerDiv,
        {
            caption: "Columns",
            buttonicon: "ui-icon-newwin",
            title: "Hide/Show Columns",
            onClickButton: function () {
                $(this).jqGrid('columnChooser', {
                    done: function (perm) {
                        if (perm) {
                            $(this).jqGrid('remapColumns', perm, true);
                        }
                    },
                    modal: true,
                    width: 400,
                    height: 300,
                    classname: 'column-chooser-select'
                });
            }
        }
    );
</code>

y me preguntaba si había una manera de especificar un controlador de eventos en el columnChooser (usando eljQuery UI Multiselect complemento que viene con w / jqGrid) que se activa cada vez que se agrega o elimina una columna. Así que supongo que es una pregunta de dos partes:

¿El jQuery UI Multiselect soporta tal cosa?Si es así, ¿hay alguna manera de conectarlo sin alterar la fuente jqGrid?

Un poco de historia sobre lo que estoy tratando de lograr:

Mi configuración de cuadrícula predeterminada oculta muchas columnas. Algunas de estas columnas no se completan desde la base de datos; son elementos de datos poco conocidos y poco utilizados que, si se rellenan, disminuirían drásticamente el rendimiento de la ejecución de consultas (varias combinaciones que incluyen tablas con más de 100 millones de registros).

En caso de que un usuario elija una de estas columnas para mostrar, me gustaría advertirles que se requiere otro viaje de ida y vuelta al servidor y podría tomar un tiempo, y darles la opción de cancelar la adición de la columna.

Gracias

Respuestas a la pregunta(2)

Su respuesta a la pregunta