void refresh() { heroes.removeAll(); for (Hero hero : player.getPlayList()) { JLabel heroLabel = new JLabel(hero.portraitSmall); heroLabel.addMouseListener( new MouseAdapter() { @Override public void mouseClicked(java.awt.event.MouseEvent evt) { player.removeHero(hero); refresh(); } }); heroes.add(heroLabel); } heroes.revalidate(); heroes.repaint(); }
public ModifyPlayerPopup(Player playerPassed, Screen callerScreen, Team team) { cancel.addActionListener( (ActionEvent e) -> { Cain.dispose(); }); save.addActionListener( (ActionEvent e) -> { player.name = name.getText(); if (player.globalIndex == -1) { player.savePlayer(); } else { Global.Players.set(player.globalIndex, player); player.writePlayer(); } if (team != null) { team.addPlayer(player); } callerScreen.refresh(); Cain.dispose(); }); if (playerPassed != null) { // We're editing a current player player = playerPassed; for (Hero hero : player.getPlayList()) { JLabel heroLabel = new JLabel(hero.portraitSmall); heroLabel.addMouseListener( new MouseAdapter() { @Override public void mouseClicked(java.awt.event.MouseEvent evt) { player.removeHero(hero); refresh(); } }); heroes.add(heroLabel); } name.setText(player.name); } else { // This is a new Player Cain.setTitle("Add a player"); player = new Player("New Player"); } addHeroes.setMargin(new Insets(0, 0, 0, 0)); addHeroes.addActionListener( (ActionEvent e) -> { pool = new PoolBuilder(false, "small", new Returner(), player.getPlayList()); back = new JButton("Cancel"); back.addActionListener( (ActionEvent p) -> { inner.removeAll(); popup.dispose(); }); JLabel note = new JLabel("Right click to add multiple heroes."); inner.add(back, "wrap"); inner.add(note, "wrap"); inner.add(pool.pool, "growx"); popup.add(inner); popup.setSize(700, 500); popup.setLocation(MouseInfo.getPointerInfo().getLocation()); popup.setVisible(true); }); name.setFont(new Font("Ariel", Font.PLAIN, 20)); name.select(0, name.getText().length()); heroes.setBorder(BorderFactory.createLineBorder(Color.black)); south.add(addHeroes); south.add(new JLabel("Heroes")); south.add(heroes, "span, grow"); south.add(cancel, "span, right, split 2"); south.add(save, "span, right"); Enoch.add(name); Enoch.add(south); Cain.add(Enoch); Cain.setMinimumSize(new Dimension(400, 350)); Cain.setVisible(true); }
void drawScreen() { matchup.add(teamName); matchup.add(new JLabel("vs.")); matchup.add(enemyName); myPicksFrame.add(new JLabel("picks"), "span, center, wrap"); for (JLabel portait : myPicks) { myPicksPortraits.add(portait); } myPicksFrame.add(myPicksPortraits); theirPicks.add(new JLabel("picks"), "span, center, wrap"); for (JLabel portait : enemyPicks) { theirPicksPortraits.add(portait); } theirPicks.add(theirPicksPortraits); myBansFrame.add(new JLabel("bans"), "span, center, wrap"); for (JLabel portait : myBans) { myBansPortraits.add(portait); } myBansFrame.add(myBansPortraits); theirBans.add(new JLabel("bans"), "span, center, wrap"); for (JLabel portait : enemyBans) { theirBansPortraits.add(portait); } theirBans.add(theirBansPortraits); if (team == null) { allyPool = new PoolBuilder(false, "small", null, null); players.add(allyPool.pool); } else { for (Player player : team.getPlayers()) { players.add(new JLabel(player.name)); JPanel heroes = new JPanel(new MigLayout("", "[grow 49, fill][grow 1][grow 49, fill]")); JPanel regHeroes = new JPanel(new WrapLayout(FlowLayout.LEADING)); JPanel stunHeroes = new JPanel(new WrapLayout(FlowLayout.LEADING)); int numOfStuns = 0; for (Hero hero : player.getPlayList()) { if (hero.hasCharacteristic(Global.Characteristics.RSTUN)) { stunHeroes.add(new JLabel(hero.portraitSmall)); numOfStuns++; } else { regHeroes.add(new JLabel(hero.portraitSmall)); } } heroes.add(regHeroes); if (numOfStuns > 0) { heroes.add(new JSeparator(SwingConstants.VERTICAL), "growy"); heroes.add(stunHeroes); } heroes.setBorder(BorderFactory.createLineBorder(Color.black)); players.add(heroes); } } enemyPool = new PoolBuilder(false, "small", new Returner(), null); theirPool.add(enemyPool.pool); Eve.add(matchup, "span, grow"); Eve.add(myPicksFrame, "c"); Eve.add(theirPicks, "c"); Eve.add(myBansFrame, "c"); Eve.add(theirBans, "c"); // Eve.add(players, "top, span"); Eve.add(theirPool); // Eve.add(back); Adam.setSize(windowSize); }