/* Copyright CloudLinux Zug GmbH 2010-2017 All Rights Reserved
 *
 * Licensed under CLOUD LINUX LICENSE AGREEMENT
 * http://cloudlinux.com/docs/LICENSE.TXT
 */

import { Column, TypeOfAlignment } from './column';
import { ConvertFormat } from './types';

export class ColumnHeader extends Column{
    isGroup: boolean;
    rowSpan: number;
    colSpan: number;
    alignClass: string = '';
    additionCssClass: string = '';
    convertToFormat: ConvertFormat = null;

    constructor(column: Column){
        super({
            name: column.name,
            descr: column.group !== null ? column.group : column.descr,
            convertToFormat: column.convertToFormat,
            group: column.group,
            hidden: column.hidden,
            showEditOrValue: column.showEditOrValue
        });

        this.isGroup = column.group != null;
        this.hidden = column.hidden;
        this.rowSpan = this.isGroup ? 1 : 2;
        this.colSpan = 1;
        this.icon = column.icon;
        this.tooltip = column.tooltip;
        this.sortable = column.sortable;
        this.alignClass = column.alignClass;
        this.additionCssClass = column.additionCssClass;
        this.convertToFormat = column.convertToFormat;
    }
}
