/** Constructor. */
  public RecommendUsersTable() {
    super();

    UIHandler.setResourceBundle("graph");
    tableModel =
        new DefaultTableModel(columnNames(), 0) {

          public Class<?> getColumnClass(int column) {
            Class<?> returnValue;
            if ((column >= 0) && (column < getColumnCount())) {
              if (getValueAt(0, column) != null) returnValue = getValueAt(0, column).getClass();
              else returnValue = Object.class;
            } else {
              returnValue = Object.class;
            }
            return returnValue;
          }

          public boolean isCellEditable(int row, int col) {
            return false;
          }
        };

    setModel(tableModel);

    // set hidden colum
    setColumnHidden(1, true);
    setColumnHidden(6, true);

    // set sorter
    RowSorter<TableModel> sorter = new TableRowSorter<TableModel>(tableModel);
    setRowSorter(sorter);
    setSelectionMode(ListSelectionModel.SINGLE_SELECTION);

    this.setIconCellRenderer(5);
    this.setRowHeight(55);
  }
  private Object[] columnNames() {
    Object[] colNames =
        new Object[] {
          UIHandler.getText("col.no"), // 0
          UIHandler.getText("col.topic.user.cluster.websiteId"), // 1
          UIHandler.getText("col.topic.user.cluster.topicId"), // 2
          UIHandler.getText("col.topic.user.cluster.userId"), // 3
          UIHandler.getText("col.topic.user.cluster.userName"), // 4
          UIHandler.getText("col.topic.user.cluster.userProfileImage"), // 5
          UIHandler.getText("col.topic.user.cluster.userUrl"), // 6
          UIHandler.getText("col.topic.user.cluster.isTopicUser"), // 7
          UIHandler.getText("col.topic.user.cluster.cluster"), // 8
          UIHandler.getText("col.topic.user.cluster.authority"), // 9
          UIHandler.getText("col.topic.user.cluster.topicScore"), // 10
          UIHandler.getText("col.topic.user.cluster.authorityTopicScore"), // 11
        };

    return colNames;
  }