reorder_grid_columns

позволяет изменять порядок колонок в grid с помощью drag and drop

boolean reorder_grid_columns;

Example

gantt.config.reorder_grid_columns = true;
gantt.init("gantt_here");


Default value:

false

Related samples

Details

Эта функция работает как в grid, так и в resource view.

Она вводит два CSS класса:

  • .gantt_column_drag_marker - отмечает позицию, куда будет помещена перетаскиваемая колонка
  • .gantt_grid_head_cell_dragged - применяется к колонке, которая в данный момент перетаскивается

События

Внутренние события grid позволяют контролировать процесс перетаскивания и сброса колонок: onBeforeColumnDragStart, onAfterColumnReorder и onColumnDragMove. Например:

"onBeforeColumnDragStart"/"onColumnDragMove"

gantt.attachEvent("onGanttReady", function(){
    var grid = gantt.$ui.getView("grid");
    grid.attachEvent("onBeforeColumnDragStart", function(column, index){
        // пользовательский код
        return true; // вернуть false, чтобы запретить перетаскивание этой колонки
    });
    grid.attachEvent("onColumnDragMove",function(
        dragColumn, targetColumn, dragIndex, targetIndex){
        // пользовательский код
        return true; // вернуть false, чтобы заблокировать изменение порядка в эту позицию
    });
});

и

"onBeforeColumnDragStart"/"onAfterColumnReorder"

gantt.attachEvent("onGanttReady", function(){
    var grid = gantt.$ui.getView("grid");
    grid.attachEvent("onBeforeColumnDragStart", function(column, index){
        if(column.draggedColumn.name == "text"){
            return false;
        }
        return true;
    });
    grid.attachEvent("onAfterColumnReorder", function(object){
        // доступ к конфигурации колонок после изменения порядка
        console.log(object)
    });
});
К началу