package disparity.characterCreation.GUIresources;
import java.awt.Color;
import java.awt.Component;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ComponentListener;
import java.util.List;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextArea;
import javax.swing.SpringLayout;
import javax.swing.SwingConstants;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import disparity.characterCreation.screens.SelectArmorScreen;
import disparity.characterCreation.screens.SelectWeaponScreen;
public class InfoPanel extends JPanel {
private static final long serialVersionUID = -7467180593396391662L;
private JTextArea info;
private JFrame main;
public InfoPanel(final String Title, String Info, String picSrc, JFrame mainFrame, final String nextPanel, final List<String> characterSettings){
this.main = mainFrame;
char[] infoAsCharA = Info.toCharArray();
int ind = 0;
boolean hasPutLine = false;
for(int i = 0; i < infoAsCharA.length; i++, ind++){
while(hasPutLine){
if(ind > 20 && infoAsCharA[ind] == ' '){
}else{
do{
ind++;
}while(ind > 20 && infoAsCharA[ind] == ' ');
}
}
}
info = new JTextArea();
info.setBackground(UIManager.getColor("Button.background"));
info.setEditable(false);
info.setColumns(10);
info.setFont(Resources.getFont());
info.setText(Info);
JLabel titleText = new JLabel();
titleText.setHorizontalAlignment(SwingConstants.CENTER);
titleText.setFont(Resources.getFont());
titleText.setText(Title);
JLabel pic = new JLabel("");
ComponentListener picListener = new DisplayImage(pic, "../res/Backgrounds/Title.png");
pic.addComponentListener(picListener);
MainMenuButton mnmnbtnM = new MainMenuButton(main);
mnmnbtnM.setToolTipText("return to Main Menu");
ColoredButton selectButton = new ColoredButton("Select", new Color(90, 20, 140));
selectButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
switch(nextPanel.toUpperCase()){
case"SELECTWEAPONSCREEN":
characterSettings.add(Title);
main.setContentPane(new SelectWeaponScreen(characterSettings, main));
main.revalidate();
case"SELECTARMORSCREEN":
characterSettings.add(Title);
main.setContentPane(new SelectArmorScreen(characterSettings, main));
main.revalidate();
}
}});
selectButton.setAlignmentX(Component.RIGHT_ALIGNMENT);
selectButton.setAlignmentY(Component.BOTTOM_ALIGNMENT);
SpringLayout springLayout = new SpringLayout();
springLayout.putConstraint(SpringLayout.NORTH, titleText, 0, SpringLayout.NORTH, mnmnbtnM);
springLayout.putConstraint(SpringLayout.WEST, titleText, 0, SpringLayout.WEST, this);
springLayout.putConstraint(SpringLayout.EAST, titleText, 0, SpringLayout.WEST, mnmnbtnM);
springLayout.putConstraint(SpringLayout.NORTH, mnmnbtnM, 18, SpringLayout.NORTH, this);
springLayout.putConstraint(SpringLayout.WEST, mnmnbtnM, -146, SpringLayout.EAST, this);
springLayout.putConstraint(SpringLayout.EAST, mnmnbtnM, 0, SpringLayout.EAST, selectButton);
springLayout.putConstraint(SpringLayout.NORTH, selectButton, -79, SpringLayout.SOUTH, this);
springLayout.putConstraint(SpringLayout.WEST, selectButton, -193, SpringLayout.EAST, this);
springLayout.putConstraint(SpringLayout.SOUTH, selectButton, -20, SpringLayout.SOUTH, this);
springLayout.putConstraint(SpringLayout.EAST, selectButton, -10, SpringLayout.EAST, this);
springLayout.putConstraint(SpringLayout.NORTH, info, 52, SpringLayout.NORTH, this);
springLayout.putConstraint(SpringLayout.WEST, info, 46, SpringLayout.WEST, this);
springLayout.putConstraint(SpringLayout.SOUTH, info, 482, SpringLayout.NORTH, this);
springLayout.putConstraint(SpringLayout.EAST, info, 336, SpringLayout.WEST, this);
springLayout.putConstraint(SpringLayout.NORTH, pic, 52, SpringLayout.NORTH, this);
springLayout.putConstraint(SpringLayout.WEST, pic, 377, SpringLayout.WEST, this);
setLayout(springLayout);
add(pic);
add(info);
add(titleText);
add(mnmnbtnM);
add(selectButton);
}
}