From 0d17493028510ad324a3e381b86d7f45cd5f75a8 Mon Sep 17 00:00:00 2001 From: WhatTheMike Date: Fri, 8 Mar 2024 21:44:50 -0500 Subject: [PATCH] Added my first "real" GUI project! --- ColorChatAlternator/ColorAlternator.ico | Bin 0 -> 32392 bytes ColorChatAlternator/ColorAlternator.png | Bin 0 -> 7886 bytes .../ColorChatAlternator-Screenshot.png | Bin 0 -> 13717 bytes ColorChatAlternator/ColorChatAlternator.java | 715 ++++++++++++++++++ 4 files changed, 715 insertions(+) create mode 100644 ColorChatAlternator/ColorAlternator.ico create mode 100644 ColorChatAlternator/ColorAlternator.png create mode 100644 ColorChatAlternator/ColorChatAlternator-Screenshot.png create mode 100644 ColorChatAlternator/ColorChatAlternator.java diff --git a/ColorChatAlternator/ColorAlternator.ico b/ColorChatAlternator/ColorAlternator.ico new file mode 100644 index 0000000000000000000000000000000000000000..148c189f1279b24ded0428f6317f284d3837a3f1 GIT binary patch literal 32392 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 literal 0 HcmV?d00001 diff --git a/ColorChatAlternator/ColorAlternator.png b/ColorChatAlternator/ColorAlternator.png new file mode 100644 index 0000000000000000000000000000000000000000..4bd4b511e7cc68f9f3a0080e867de9542e8dda31 GIT binary patch literal 7886 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 ZDbrGwc;SEj`1a=+psQ&Bs!+Fm^FQUC;z9rb literal 0 HcmV?d00001 diff --git a/ColorChatAlternator/ColorChatAlternator-Screenshot.png b/ColorChatAlternator/ColorChatAlternator-Screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..ece2b037dba7500fdf15043cc084cd8ad042e14a GIT binary patch literal 13717 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 customFXList = new ArrayList (); +private static ArrayList customColorList = new ArrayList (); +private static String text; +private static String char1; +private static String char2; +private static String fancyChars; +private static String cleanChars; +private final int WIDTH = 435; +private final int HEIGHT = 280; +private char a; +private char b; +private boolean ready; +private int randomColors = 0; +private JLabel blankLabel = new JLabel(""); +private JLabel textLabel = new JLabel("Put your text here"); +private JLabel color1Label = new JLabel("Color 1"); +private JLabel color2Label = new JLabel("Color 2"); +private JLabel modeLabel = new JLabel("Coloring mode"); +private JLabel outputLabel = new JLabel("Copy this into Minecraft"); +private JLabel copyLabel = new JLabel("Automatically copy to clipboard?"); +private JTextField textField = new JTextField(""); +private JTextField outputField = new JTextField(""); +private JComboBox chara = new JComboBox(); +private JComboBox charb = new JComboBox(); +private JComboBox copyBox = new JComboBox(); +private JComboBox modeBox = new JComboBox(); +private JCheckBox color0 = new JCheckBox("0 - Black"); +private JCheckBox color1 = new JCheckBox("1 - Dark Blue"); +private JCheckBox color2 = new JCheckBox("2 - Dark Green"); +private JCheckBox color3 = new JCheckBox("3 - Dark Aqua"); +private JCheckBox color4 = new JCheckBox("4 - Dark Red"); +private JCheckBox color5 = new JCheckBox("5 - Dark Purple"); +private JCheckBox color6 = new JCheckBox("6 - Gold"); +private JCheckBox color7 = new JCheckBox("7 - Gray"); +private JCheckBox color8 = new JCheckBox("8 - Dark Gray"); +private JCheckBox color9 = new JCheckBox("9 - Blue"); +private JCheckBox colora = new JCheckBox("a - Green"); +private JCheckBox colorb = new JCheckBox("b - Aqua"); +private JCheckBox colorc = new JCheckBox("c - Red"); +private JCheckBox colord = new JCheckBox("d - Light Purple"); +private JCheckBox colore = new JCheckBox("e - Yellow"); +private JCheckBox colorf = new JCheckBox("f - White"); +private JRadioButton selectedColorsRadio = new JRadioButton("Use selected colors", true); +private JRadioButton randomColorsRadio = new JRadioButton("Use random colors", false); +private JRadioButton customRandomColorsRadio = new JRadioButton("Use custom random colors", false); +private ButtonGroup colorGroup = new ButtonGroup(); +private JButton customColorsSaveButton = new JButton("Save changes"); +private JButton customColorButton = new JButton("Edit Custom Random Colors"); +private JButton customEffectsButton = new JButton("Custom Color Effects"); +private JButton colorButton = new JButton("Color list"); +private JButton doneButton = new JButton("Add Colors"); + +public ColorChatAlternator(){ + setTitle("Color Alternator"); + setSize(WIDTH, HEIGHT); + setVisible(true); + setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + Container pane = getContentPane(); + pane.setLayout(new GridLayout(10, 2)); + JComboInit(); + outputField.setEditable(false); + pane.add(textLabel); + pane.add(textField); + pane.add(color1Label); + pane.add(chara); + pane.add(color2Label); + pane.add(charb); + pane.add(selectedColorsRadio); + pane.add(randomColorsRadio); + pane.add(customRandomColorsRadio); + pane.add(customColorButton); + pane.add(copyLabel); + pane.add(copyBox); + pane.add(modeLabel); + pane.add(modeBox); + pane.add(outputLabel); + pane.add(outputField); + pane.add(customEffectsButton); + pane.add(blankLabel); + pane.add(colorButton); + pane.add(doneButton); + customColorsSaveButton.addActionListener(new colorSaveListener()); + customColorButton.addActionListener(new customColorListener()); + colorButton.addActionListener(new colorListener()); + customEffectsButton.addActionListener(new fancyListener()); + doneButton.addActionListener(new doneListener()); + randomColorsRadio.addItemListener(new randomListener()); + selectedColorsRadio.addItemListener(new selectedListener()); + customRandomColorsRadio.addItemListener(new customRandomListener()); + pane.setVisible(true); +} +public void JComboInit(){ +colorGroup.add(selectedColorsRadio); +colorGroup.add(randomColorsRadio); +colorGroup.add(customRandomColorsRadio); +modeBox.addItem("Alternate Every Other Letter"); +modeBox.addItem("Every Other Word"); +modeBox.addItem("First Letter of Each Word"); +modeBox.addItem("Random Colors Every Letter"); +modeBox.addItem("Custom Random Colors Every Letter"); +modeBox.addItem("MultiColor"); +modeBox.addItem("Split Message"); +modeBox.addItem("Color Capital Letters"); +modeBox.addItem("Light Rainbow"); +modeBox.addItem("Rainbow"); +chara.addItem("0"); +chara.addItem("1"); +chara.addItem("2"); +chara.addItem("3"); +chara.addItem("4"); +chara.addItem("5"); +chara.addItem("6"); +chara.addItem("7"); +chara.addItem("8"); +chara.addItem("9"); +chara.addItem("a"); +chara.addItem("b"); +chara.addItem("c"); +chara.addItem("d"); +chara.addItem("e"); +chara.addItem("f"); +charb.addItem("0"); +charb.addItem("1"); +charb.addItem("2"); +charb.addItem("3"); +charb.addItem("4"); +charb.addItem("5"); +charb.addItem("6"); +charb.addItem("7"); +charb.addItem("8"); +charb.addItem("9"); +charb.addItem("a"); +charb.addItem("b"); +charb.addItem("c"); +charb.addItem("d"); +charb.addItem("e"); +charb.addItem("f"); +copyBox.addItem("Yes"); +copyBox.addItem("No"); +} +public static void main(String[] args){ + ColorChatAlternator prog = new ColorChatAlternator(); +} +public void toClipboard(String words){ + StringSelection stringSelection = new StringSelection(words); + Clipboard clpbrd = Toolkit.getDefaultToolkit().getSystemClipboard(); + clpbrd.setContents(stringSelection, null); +} +public String alternateLetter(){ +boolean ab = true; +ArrayList output = new ArrayList (); +for (int c = 0; c < text.length(); c++){ +if (!text.substring(c, c + 1).equals(" ")) { +if (ab){ + output.add("&" + a); + ab = false; +} +else{ + output.add("&" + b); + ab = true; +} +} +output.add(text.substring(c, c + 1)); +} +lengthCheck(stringify(output)); +return stringify(output); +} +public String firstLetterWord(){ + ArrayList output = new ArrayList (); + output.add("&" + a); + output.add(text.substring(0, 1)); + output.add("&" + b); + for (int c = 1; c < text.length(); c++){ + if (!text.substring(c, c + 1).equals(" ")) + output.add(text.substring(c, c + 1)); + else{ + output.add(text.substring(c, c + 1)); + output.add("&" + a); + output.add(text.substring(c + 1, c + 2)); + output.add("&" + b); + c++; + } + } + lengthCheck(stringify(output)); + return stringify(output); +} +public String randomColorsEveryLetter(){ + ArrayList output = new ArrayList (); + for (int c = 0; c < text.length(); c++){ + output.add("&" + colorList[randomInt(colorList.length)]); + output.add(text.substring(c, c + 1)); + } + lengthCheck(stringify(output)); + return stringify(output); +} +public String customRandomColorsEveryLetter(){ + if (customColorList.size()==0) + { + JOptionPane.showMessageDialog(null, "Your color list is empty! Click\n" + + "Edit Custom Random Colors\n" + + "above and add some to the list.", "Minecraft Colors", JOptionPane.ERROR_MESSAGE); + return ""; + } + ArrayList output = new ArrayList (); + for (int c = 0; c < text.length(); c++){ + output.add("&" + customColorList.get(randomInt(customColorList.size()))); + output.add(text.substring(c, c + 1)); + } + lengthCheck(stringify(output)); + return stringify(output); +} +public String multiFX(){ + //System.out.println("InputCount: " + customFXList.size()); + int FXindex = 0; + if (customFXList.size() == 0) + { + JOptionPane.showMessageDialog(null, "No color pattern set! Click\nCustom Color Effects\nto the left to set them up.", "Minecraft Colors", JOptionPane.ERROR_MESSAGE); + return ""; + } + ArrayList output = new ArrayList(); + for (int c = 0; c < text.length(); c++){ + //System.out.print("FXindex: " + FXindex + "\t"); + if (FXindex >= customFXList.size()) + FXindex = 0; + if (!text.substring(c, c + 1).equals(" ")){ + output.add("&" + customFXList.get(FXindex)); + output.add(text.substring(c, c + 1)); + FXindex++; + } + else + output.add(text.substring(c, c + 1)); + } + lengthCheck(stringify(output)); + return stringify(output); +} +public String altEveryWord() +{ + ArrayList output = new ArrayList (); + + int alt = 0; + output.add("&" + a); + for (int c = 0; c < text.length(); c++) + { + if (alt == 0 && text.substring(c, c + 1).equals(" ")) + { + alt = 1; + output.add("&" + b); + } + else if (alt == 1 && text.substring(c, c + 1).equals(" ")) + { + alt = 0; + output.add("&" + a); + } + output.add(text.substring(c, c + 1)); + } + + + + /*output.add("&" + a); + output.add(text.substring(0, 1)); + output.add("&" + b); + for (int c = 1; c < text.length(); c++){ + if (!text.substring(c, c + 1).equals(" ")) + output.add(text.substring(c, c + 1)); + else{ + output.add(text.substring(c, c + 1)); + output.add("&" + a); + output.add(text.substring(c + 1, c + 2)); + output.add("&" + b); + c++; + } + }*/ + lengthCheck(stringify(output)); + return stringify(output); +} +public String rainbowificate(){ + ArrayList output = new ArrayList (); + char rainbowChars [] = {'4', 'c', '6', 'e', 'a', '2', '3', '1', 'b', '9', 'd', '5'}; + int rainIndex = 0; + int textIndex = 0; + int initials = 0; + int lengths = text.length() / 12; + if (text.length()%12 == 0){ + for (int c = 0; c < 12; c++){ + output.add("&" + rainbowChars[c]); + output.add(text.substring(textIndex, textIndex + lengths)); + textIndex += lengths; + } + } + else{ + lengths++; + initials = text.length() % 12; + System.out.println("Lengths: " + lengths + "\ninitials: " + initials); + System.out.println(rainIndex + " " + rainbowChars[rainIndex]); + for (int c = 0; c < initials; c++){ + System.out.println("Lengths: " + lengths + "\ninitials: " + initials); + System.out.println(rainIndex + " " + rainbowChars[rainIndex]); + output.add("&" + rainbowChars[c]); + output.add(text.substring(textIndex, textIndex + lengths)); + textIndex += lengths; + rainIndex = c; + } + lengths--; + rainIndex++; + System.out.println("Lengths: " + lengths + "\ninitials: " + initials); + System.out.println(rainIndex + " " + rainbowChars[rainIndex]); + for (int c = 0; c < 12 - initials; c++){ + System.out.println("Lengths: " + lengths + "\ninitials: " + initials); + System.out.println(rainIndex + " " + rainbowChars[rainIndex]); + if (rainIndex > 11) + rainIndex = 11; + output.add("&" + rainbowChars[rainIndex]); + try { + output.add(text.substring(textIndex, textIndex + lengths)); + } + catch (Exception E){ + System.err.println("error caught"); + System.err.println(E); + } + rainIndex++; + textIndex += lengths; + } + } + System.out.println("Lengths: " + lengths + "\ninitials: " + initials); + lengthCheck(stringify(output)); + return stringify(output); +} +public String lightRainbowificate(){ + ArrayList output = new ArrayList (); + char rainbowChars [] = {'c', 'e', 'a', 'b', 'd'}; + int rainIndex = 0; + int textIndex = 0; + int initials = 0; + int lengths = text.length() / 5; + if (text.length()%5 == 0){ + for (int c = 0; c < 5; c++){ + output.add("&" + rainbowChars[c]); + output.add(text.substring(textIndex, textIndex + lengths)); + textIndex += lengths; + } + } + else{ + lengths++; + initials = text.length() % 5; + for (int c = 0; c < initials; c++){ + output.add("&" + rainbowChars[c]); + output.add(text.substring(textIndex, textIndex + lengths)); + textIndex += lengths; + rainIndex = c; + } + lengths--; + rainIndex++; + for (int c = 0; c < 5 - initials; c++){ + output.add("&" + rainbowChars[rainIndex]); + try { + output.add(text.substring(textIndex, textIndex + lengths)); + } + catch (Exception E){ + System.err.println("error caught"); + } + rainIndex++; + textIndex += lengths; + } + } + System.out.println("Lengths: " + lengths + "\ninitials: " + initials); + lengthCheck(stringify(output)); + return stringify(output); +} +public String splitColors(){ + ArrayList output = new ArrayList (); + if (text.length() % 2 == 1){ + int length = (text.length() - 1) / 2; + output.add("&" + a); + output.add(text.substring(0,length)); + output.add("&" + b); + output.add(text.substring(length)); + } + else{ + int length = (text.length()) / 2; + output.add("&" + a); + output.add(text.substring(0,length)); + output.add("&" + b); + output.add(text.substring(length)); + } + lengthCheck(stringify(output)); + return stringify(output); +} +public String colorCapital(){ + ArrayList output = new ArrayList (); + for (int c = 0; c < text.length(); c++) + { + System.out.println("Start Loop"); + System.out.println("Testing " + text.substring(c, c + 1)); + for (int z = 0; z < alphaList.length; z++) + { + System.out.println("comparing " + text.substring(c, c + 1) + " to " + alphaList[z] + " and " + upperList[z]); + if (text.substring(c, c + 1).equals(alphaList[z])) + { + System.out.println("Lowercase"); + output.add("&" + a); + output.add(text.substring(c, c + 1)); + z = alphaList.length; + } + else if (text.substring(c, c + 1).equals(upperList[z])) + { + System.out.println("Uppercase"); + output.add("&" + b); + output.add(text.substring(c, c + 1)); + z = alphaList.length; + } + else if (text.substring(c, c + 1).equals(" ")) + { + output.add(text.substring(c, c + 1)); + z = alphaList.length; + } + else if (text.substring(c, c + 1).equals(numList[z])) + { + output.add(text.substring(c, c + 1)); + z = alphaList.length; + } + else + { + System.out.println("Neither"); + } + } + } + System.out.println("returned"); + lengthCheck(stringify(output)); + return stringify(output); +} +public String stringify(ArrayList list){ +String words = ""; +String mode = (String)modeBox.getSelectedItem(); +//words = list.toString(); +//words = words.replace("[", ""); +//words = words.replace("]", ""); +//words = words.replace(", ", ""); +for (int c = 0; c < list.size(); c++){ + words = words + list.get(c); +} + +return words; +} +public void lengthCheck(String list) +{ + if (list.length()>100) + JOptionPane.showMessageDialog(null, "" + + "Your message is too long and will\n" + + "not fit in the chat box, however it\n" + + "has still been copied to your\n" + + "clipboard.", "Minecraft Colors", JOptionPane.ERROR_MESSAGE); +} +private class colorListener implements ActionListener{ +public void actionPerformed(ActionEvent e){ +JOptionPane.showMessageDialog(null, "0 - Black\n1 - Dark Blue\n2 - Dark Green\n3 - Dark Aqua\n4 - Dark Red\n5 - Dark Purple\n6 - Gold\n7 - Gray\n8 - Dark Gray\n9 - Blue\na - Green\nb - Aqua\nc - Red\nd - Light Purple\ne - Yellow\nf - White", "Minecraft Colors", JOptionPane.PLAIN_MESSAGE); +} +} +private class customColorListener implements ActionListener{ + public void actionPerformed(ActionEvent e){ + showCustomColorGUI(); + } +} +private class fancyListener implements ActionListener{ + public void actionPerformed(ActionEvent e){ + customFXList.clear(); + fancyChars = JOptionPane.showInputDialog(null, "Enter character String\ne.g. 91b to use 9, 1, and b alternatively\nAny number of colors is usable"); + cleanChars = fancyChars; + for (int c = 0; c < colorList.length; c++) + cleanChars = cleanChars.replace(Character.toString(colorList[c]), ""); + System.out.println(cleanChars); + if (cleanChars.length() > 0) + JOptionPane.showMessageDialog(null, "\'" + cleanChars + "\' are not valid color codes.", "Minecraft Colors", JOptionPane.ERROR_MESSAGE); + for (int c = 0; c < fancyChars.length(); c++){ + String part =fancyChars.substring(c, c + 1); + customFXList.add(part); + } + } +} +private class colorSaveListener implements ActionListener{ + public void actionPerformed(ActionEvent e){ + customColorList.clear(); + if (color0.isSelected()) + customColorList.add('0'); + if (color1.isSelected()) + customColorList.add('1'); + if (color2.isSelected()) + customColorList.add('2'); + if (color3.isSelected()) + customColorList.add('3'); + if (color4.isSelected()) + customColorList.add('4'); + if (color5.isSelected()) + customColorList.add('5'); + if (color6.isSelected()) + customColorList.add('6'); + if (color7.isSelected()) + customColorList.add('7'); + if (color8.isSelected()) + customColorList.add('8'); + if (color9.isSelected()) + customColorList.add('9'); + if (colora.isSelected()) + customColorList.add('a'); + if (colorb.isSelected()) + customColorList.add('b'); + if (colorc.isSelected()) + customColorList.add('c'); + if (colord.isSelected()) + customColorList.add('d'); + if (colore.isSelected()) + customColorList.add('e'); + if (colorf.isSelected()) + customColorList.add('f'); + } +} +private class randomListener implements ItemListener{ + public void itemStateChanged(ItemEvent event) { + randomColors = 1; + } +} +private class selectedListener implements ItemListener{ + public void itemStateChanged(ItemEvent e) { + randomColors = 0; + } +} +private class customRandomListener implements ItemListener{ + public void itemStateChanged(ItemEvent event){ + randomColors = 2; + } +} +private class doneListener implements ActionListener{ +public void actionPerformed(ActionEvent e){ +ready = true; +if (randomColors == 1){ + a = colorList[randomInt(colorList.length)]; + b = colorList[randomInt(colorList.length)]; +} +else if (randomColors == 0){ +String astr = (String)chara.getSelectedItem(); +String bstr = (String)charb.getSelectedItem(); +a = astr.charAt(0); +b = bstr.charAt(0); +} +else if (randomColors == 2){ + if (customColorList.size() < 1){ + ready = false; + JOptionPane.showMessageDialog(null, "Your custom color list is empty", "Chat Color Alternator", JOptionPane.ERROR_MESSAGE); + } + else{ + a = customColorList.get(randomInt(customColorList.size())); + b = customColorList.get(randomInt(customColorList.size())); + } +} +else + JOptionPane.showMessageDialog(null, "Reply to the forum topic stating \n\"Error in randomColors\"\n so MinerMike can debug and fix", "Chat Color Alternator", JOptionPane.ERROR_MESSAGE); +String copy = (String)copyBox.getSelectedItem(); +String mode = (String)modeBox.getSelectedItem(); +text = textField.getText(); +if (text.trim().equals("")){ +JOptionPane.showMessageDialog(null, "You can't add color to nothing", "Chat Color Alternator", JOptionPane.ERROR_MESSAGE); +ready = false; +} +if (ready){ +if (mode.equalsIgnoreCase("alternate every other letter")){ + if (copy.equalsIgnoreCase("yes")){ + toClipboard(alternateLetter()); + outputField.setText("Text copied to clipboard!"); + } + else + outputField.setText(alternateLetter()); +} +else if (mode.equalsIgnoreCase("first letter of each word")){ + if (copy.equalsIgnoreCase("yes")){ + toClipboard(firstLetterWord()); + outputField.setText("Text copied to clipboard!"); + } + else + outputField.setText(firstLetterWord()); +} +else if (mode.equalsIgnoreCase("random colors every letter")){ + if (copy.equalsIgnoreCase("yes")){ + toClipboard(randomColorsEveryLetter()); + outputField.setText("Text copied to clipboard!"); + } + else + outputField.setText(randomColorsEveryLetter()); +} +else if (mode.equalsIgnoreCase("custom random colors every letter")){ + if (copy.equalsIgnoreCase("yes")){ + toClipboard(customRandomColorsEveryLetter()); + outputField.setText("Text copied to clipboard!"); + } + else + outputField.setText(customRandomColorsEveryLetter()); +} +else if (mode.equalsIgnoreCase("multicolor")){ + if (cleanChars.length() > 0) + { + JOptionPane.showMessageDialog(null, "\'" + cleanChars + "\' are not valid color codes.", "Minecraft Colors", JOptionPane.ERROR_MESSAGE); + return; + } + if (copy.equalsIgnoreCase("yes")){ + toClipboard(multiFX()); + outputField.setText("Text copied to clipboard!"); + } + else + outputField.setText(multiFX()); +} +else if (mode.equalsIgnoreCase("rainbow")){ + if (copy.equalsIgnoreCase("yes")){ + toClipboard(rainbowificate()); + outputField.setText("Text copied to clipboard!"); + } + else + outputField.setText(rainbowificate()); +} +else if (mode.equalsIgnoreCase("split message")){ + if (copy.equalsIgnoreCase("yes")){ + toClipboard(splitColors()); + outputField.setText("Text copied to clipboard!"); + } + else + outputField.setText(splitColors()); +} +else if (mode.equalsIgnoreCase("color capital letters")){ + if (copy.equalsIgnoreCase("yes")){ + toClipboard(colorCapital()); + outputField.setText("Text copied to clipboard!"); + } + else + outputField.setText(colorCapital()); +} +else if (mode.equalsIgnoreCase("every other word")){ + if (copy.equalsIgnoreCase("yes")){ + toClipboard(altEveryWord()); + outputField.setText("Text copied to clipboard!"); + } + else + outputField.setText(altEveryWord()); +} +else if (mode.equalsIgnoreCase("light rainbow")){ + if (copy.equalsIgnoreCase("yes")){ + toClipboard(lightRainbowificate()); + outputField.setText("Text copied to clipboard!"); + } + else + outputField.setText(lightRainbowificate()); +} +} +} +} +private int randomInt(int max){ + return (int) (Math.random() * max); +} +private void showCustomColorGUI(){ + customColorGUI gui = new customColorGUI(); + gui.setSize(360,225); + gui.setVisible(true); +} +private class customColorGUI extends JFrame{ + public customColorGUI(){ + super("Custom Random Color Settings"); + setLayout(new GridLayout(7,3)); + add(color0); + add(color1); + add(color2); + add(color3); + add(color4); + add(color5); + add(color6); + add(color7); + add(color8); + add(color9); + add(colora); + add(colorb); + add(colorc); + add(colord); + add(colore); + add(new JLabel("")); + add(colorf); + add(new JLabel("")); + add(new JLabel("")); + add(customColorsSaveButton); + } +} +}