package moviescraper.doctord.view;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import moviescraper.doctord.model.Movie;
import moviescraper.doctord.model.dataitem.Genre;
public class FileDetailPanelGenreEditor extends AbstractFileDetailPanelEditGUI{
public FileDetailPanelGenreEditor(FileDetailPanel fileDetailPanel) {
super(fileDetailPanel);
}
private JTextField textFieldGenre;
/** Panel displayed in the genre editor */
private JPanel initializeInnerFrame(Genre genreToEdit)
{
JPanel innerPanel = new JPanel();
GridBagLayout gridBagLayout = new GridBagLayout();
gridBagLayout.columnWeights = new double[]{0.0, 1.0};
innerPanel.setLayout(gridBagLayout);
JLabel lblGenre = new JLabel("Genre :");
GridBagConstraints gbc_lblGenre = new GridBagConstraints();
gbc_lblGenre.insets = new Insets(0, 0, 0, 5);
gbc_lblGenre.anchor = GridBagConstraints.EAST;
gbc_lblGenre.gridx = 0;
gbc_lblGenre.gridy = 0;
innerPanel.add(lblGenre, gbc_lblGenre);
textFieldGenre = new JTextField();
if(genreToEdit != null && genreToEdit.getGenre().length() >0)
textFieldGenre.setText(genreToEdit.getGenre());
GridBagConstraints gbc_textField = new GridBagConstraints();
gbc_textField.fill = GridBagConstraints.HORIZONTAL;
gbc_textField.gridx = 1;
gbc_textField.gridy = 0;
innerPanel.add(textFieldGenre, gbc_textField);
textFieldGenre.setColumns(10);
return innerPanel;
}
private JPanel initializeInnerFrame() {
return initializeInnerFrame(new Genre(""));
}
@Override
public String getMenuItemName() {
return "Add New Genre";
}
@Override
public void showGUI(Operation operation) {
if(operation == Operation.ADD)
showOptionDialog(initializeInnerFrame(), "Add New Genre", operation);
else if(operation == Operation.EDIT)
showOptionDialog(initializeInnerFrame(new Genre(fileDetailPanel.getGenreList().getSelectedText())),"Edit Genre", operation);
}
@Override
public void addAction() throws Exception {
String genre = textFieldGenre.getText();
Movie currentMovie = fileDetailPanel.getCurrentMovie();
if (currentMovie != null) {
currentMovie.getGenres().add(new Genre(genre));
fileDetailPanel.updateView(false, false);
}
}
@Override
public void deleteAction() {
/*Genre genreToRemove = fileDetailPanel.getGenreList().getSelectedText();
fileDetailPanel.getCurrentMovie().getGenres().remove(genreToRemove);
fileDetailPanel.updateView(false, false);*/
}
@Override
public void editAction() {
/*Genre genreToEdit = fileDetailPanel.getGenreList().getSelectedText();
genreToEdit.setGenre(textFieldGenre.getText());
fileDetailPanel.updateView(false, false);*/
}
}