private void initTable(){

        /*
         * This gives opportunity to set sells in table as manually no editable
         */
        TableCellEditor nonSelEditor = new TableCellEditor() {
            @Override
            public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) {
                return null;
            }
            @Override
            public Object getCellEditorValue() {return null; }

            @Override
            public boolean isCellEditable(EventObject anEvent) {return false;}

            @Override
            public boolean shouldSelectCell(EventObject anEvent) {return false;}

            @Override
            public boolean stopCellEditing() {return false;}

            @Override
            public void cancelCellEditing() {/*NOP*/}

            @Override
            public void addCellEditorListener(CellEditorListener l) {/*NOP*/}

            @Override
            public void removeCellEditorListener(CellEditorListener l) {/*NOP*/}
        };

        tableModelArrays = new DefaultTableModel();

        String[] columns = {"N", "Data type", "Length", "State","Kit"};
        for(String s : columns){
            tableModelArrays.addColumn(s);
        }

        /*
         * Add information about have generated structures to the table model
         */
        if(dataList != null){
            for(int i = 0; i<dataList.getLength(); i++){
                tableModelArrays.addRow(new String[]{
                        Integer.toString(i + 1),
                        dataList.getData(i).getType(),
                        Integer.toString(dataList.getData(i).getLength(0)),
                        dataList.getData(i).getState()
                });
            }
        }

        /*
         * Create table from table model
         */
        final JTable tableArrays = new JTable(tableModelArrays);

        /*
         * Runs popup menu for edition notices which contain in table.
         */
        tableArrays.addMouseListener(new PopupMenu(popupMenu){
            @Override
            public void maybeShowPopup(MouseEvent e) {
                if (e.isPopupTrigger()) {
                    popupMenu.show(e.getComponent(),
                            e.getX(), e.getY());
                    if (e.getButton() == MouseEvent.BUTTON3) {
                        Point point = e.getPoint();
                        int column = tableArrays.columnAtPoint(point);
                        int row = tableArrays.rowAtPoint(point);
                        tableArrays.setColumnSelectionInterval(column, column);
                        tableArrays.setRowSelectionInterval(row, row);
                        selectedRow = tableArrays.getSelectedRow();
                    }
                }
            }
        });

        tableArrays.setRowHeight(20);
        tableArrays.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);

        /*
         * Changes width all the columns in the table
         */
        tableArrays.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
        tableArrays.getColumnModel().getColumn(0).setPreferredWidth(23);
        tableArrays.getColumnModel().getColumn(1).setPreferredWidth(67);
        tableArrays.getColumnModel().getColumn(2).setPreferredWidth(70);
        tableArrays.getColumnModel().getColumn(3).setPreferredWidth(65);
        tableArrays.getColumnModel().getColumn(4).setPreferredWidth(27);

        /*
         * Each notice sets as manually no editable
         */
        for (int i = 0; i<tableArrays.getColumnCount(); i++ ){
            tableArrays.getColumnModel().getColumn(i).setCellEditor(nonSelEditor);
        }

        /*
         * Add scroll controls to table
         */
        JScrollPane scrollTable = new JScrollPane(tableArrays);
        scrollTable.setSize(TABLE_WIDTH,getHeight()-FIELD_HEIGHT-150);
        scrollTable.setLocation(getWidth()-scrollTable.getWidth()-15, FIELD_HEIGHT+60);

        /*
         * Add table to frame
         */
        add(scrollTable);

    }