コード例 #1
0
  private void initLabels() {
    System.out.println("Detalles de \n" + this.getFilm());
    FichaPelicula film = this.getFilm();
    try {
      if (film.getImageUrl() != null) {
        imageURL = new URL(film.getImageUrl());
        Thread t = new Thread(this);
        t.start();
      }
    } catch (MalformedURLException e) {
      System.out.println("BAD URL: " + film.getImageUrl());
    }

    UtilTools tools = new UtilTools();

    titleLabel.setText(film.getTitulo());
    tools.setToolTipText(titleLabel, film.getTitulo());

    originalTitleLabel.setText(film.getTituloOriginal());
    tools.setToolTipText(originalTitleLabel, film.getTituloOriginal());

    if (film.getDirector() != null) {
      for (int i = 0; i < film.getDirector().length; i++) {
        JLabel directorLabel = new JLabel("<HTML><U>" + film.getDirector()[i] + "<U><HTML>");
        directorLabel.setCursor(new Cursor(Cursor.HAND_CURSOR));
        directorLabel.addMouseListener(
            new MouseAdapter() {
              @Override
              public void mouseClicked(MouseEvent e) {
                JLabel tag = (JLabel) e.getSource();
                if (e.getClickCount() == 1) {
                  searchDirector(tag.getText());
                }
              }
            });
        directorLabel.setFont(new Font("Tahoma", Font.PLAIN, 11));
        directorsPane.add(directorLabel);
      }
    }

    sinopsisTextPane.setText(film.getSinopsis());

    if (film.getReparto() != null) {
      castingList.setListData(film.getReparto());
    } else {
      castingScrollPane.setEnabled(false);
    }
    if (film.getPremios() != null) {
      prizesList.setListData(film.getPremios());
    } else {
      prizesScrollPane.setEnabled(false);
    }
    if (film.getCriticas() != null) {
      reviewsTable.setModel(new ReviewsTableModel(mainFrame, this.getFilm()));
      reviewsTable.getColumnModel().getColumn(2).setCellRenderer(new JTableButtonRenderer());
      reviewsTable.addMouseListener(new JTableButtonMouseListener(reviewsTable));

      DefaultTableCellRenderer leftRenderer = new DefaultTableCellRenderer();
      leftRenderer.setHorizontalAlignment(JLabel.LEFT);
      reviewsTable.getColumnModel().getColumn(0).setCellRenderer(leftRenderer);

      reviewsTable.setRowHeight(35);
      reviewsTable.getColumnModel().getColumn(0).setPreferredWidth(100);
      reviewsTable.getColumnModel().getColumn(1).setPreferredWidth(10);
      reviewsTable.getColumnModel().getColumn(2).setPreferredWidth(40);
    } else {
      reviewsScrollPane.setEnabled(false);
    }

    countryLabel.setText(film.getPais());
    tools.setToolTipText(countryLabel, film.getPais());

    yearLabel.setText(film.getAño());

    markLabel.setText(film.getValoracion());

    boolean userLogged = FilmAffinityBot.getInstance().isLogged();
    yourMarkLabel.setVisible(userLogged);
    usersMarkFrame.setVisible(userLogged);
    usersMarkLabel.setText(
        !userLogged || film.getNotaUsuario() == null || (film.getNotaUsuario().equals("-1"))
            ? ""
            : film.getNotaUsuario());
    usersMarkLabel.setVisible(userLogged);
    twinSoulsMarkFrame.setVisible(userLogged);
    twinSoulsMarkLabel.setText(film.getNotaAlmasGemelas());
    twinSoulsMarkLabel.setVisible(userLogged);
    rateButton.setEnabled(userLogged);
  }