+ if(caseSensitive)\r
+ {\r
+ buttonPanel.add(makeButton("b", "b", lowerCaseButtons, 20));\r
+ buttonPanel.add(makeButton("z", "z", lowerCaseButtons, 21));\r
+ buttonPanel.add(makeButton("x", "x", lowerCaseButtons, 22));\r
+ }\r
+\r
+ buttonPanel.validate();\r
+ validate();\r
+ }\r
+\r
+\r
+ /**\r
+ * DOCUMENT ME!\r
+ *\r
+ * @param evt DOCUMENT ME!\r
+ */\r
+ public void stateChanged(ChangeEvent evt)\r
+ {\r
+ if (selectedButtons != null)\r
+ {\r
+ JButton button=null;\r
+ for(int i=0; i<selectedButtons.size(); i++)\r
+ {\r
+ button = (JButton)selectedButtons.elementAt(i);\r
+ button.setBackground(colorChooser.getColor());\r
+ button.setForeground( button.getBackground().brighter().brighter().brighter());\r
+ }\r
+ if(button==lcaseColour)\r
+ {\r
+ for(int i=0; i<lowerCaseButtons.size(); i++)\r
+ {\r
+ button = (JButton)lowerCaseButtons.elementAt(i);\r
+ button.setBackground(colorChooser.getColor());\r
+ button.setForeground( button.getBackground().brighter().brighter().brighter());\r
+ }\r
+ }\r
+ }\r
+ }\r
+\r
+ /**\r
+ * DOCUMENT ME!\r
+ *\r
+ * @param e DOCUMENT ME!\r
+ */\r
+ public void colourButtonPressed(MouseEvent e)\r
+ {\r
+ if(selectedButtons == null)\r
+ selectedButtons = new Vector();\r
+\r
+ JButton pressed = (JButton) e.getSource();\r
+\r
+ if(e.isShiftDown())\r
+ {\r
+ JButton start, end = (JButton) e.getSource();\r
+ if(selectedButtons.size()>0)\r
+ start = (JButton)selectedButtons.elementAt(selectedButtons.size()-1);\r
+ else\r
+ start = (JButton) e.getSource();\r
+\r
+ int startIndex=0, endIndex=0;\r
+ for(int b=0; b<buttonPanel.getComponentCount(); b++)\r
+ {\r
+ if(buttonPanel.getComponent(b)==start)\r
+ startIndex = b;\r
+ if(buttonPanel.getComponent(b)==end)\r
+ endIndex = b;\r
+ }\r
+\r
+ if(startIndex > endIndex)\r
+ {\r
+ int temp = startIndex;\r
+ startIndex = endIndex;\r
+ endIndex = temp;\r
+ }\r
+\r
+ for(int b=startIndex; b<=endIndex; b++)\r
+ {\r
+ JButton button = (JButton)buttonPanel.getComponent(b);\r
+ if(!selectedButtons.contains(button))\r
+ {\r
+ button.setForeground(button.getBackground().brighter().brighter());\r
+ selectedButtons.add(button);\r
+ }\r
+ }\r
+ }\r
+ else if(!e.isControlDown())\r
+ {\r
+ for(int b=0; b<selectedButtons.size(); b++)\r
+ {\r
+ JButton button = (JButton)selectedButtons.elementAt(b);\r
+ button.setForeground(button.getBackground().darker().darker());\r
+ }\r
+ selectedButtons.clear();\r
+ pressed.setForeground( pressed.getBackground().brighter().brighter());\r
+ selectedButtons.addElement(pressed);\r
+\r
+ }\r
+ else if(e.isControlDown())\r
+ {\r
+ if(selectedButtons.contains(pressed))\r
+ {\r
+ pressed.setForeground(pressed.getBackground().darker().darker());\r
+ selectedButtons.remove(pressed);\r
+ }\r
+ else\r
+ {\r
+ pressed.setForeground( pressed.getBackground().brighter().brighter());\r
+ selectedButtons.addElement(pressed);\r
+ }\r
+ }\r
+\r
+ if(selectedButtons.size()>0)\r
+ colorChooser.setColor( ((JButton)selectedButtons.elementAt(0)).getBackground());\r
+ }\r
+\r
+ /**\r
+ * DOCUMENT ME!\r
+ *\r
+ * @param label DOCUMENT ME!\r
+ * @param aa DOCUMENT ME!\r
+ */\r
+ JButton makeButton(String label,\r
+ String aa,\r
+ Vector caseSensitiveButtons,\r
+ int buttonIndex)\r
+ {\r
+ final JButton button;\r
+ Color col;\r
+\r
+ if(buttonIndex<caseSensitiveButtons.size())\r
+ {\r
+ button = (JButton) caseSensitiveButtons.elementAt(buttonIndex);\r
+ col = button.getBackground();\r
+ }\r
+ else\r
+ {\r
+ button = new JButton();\r
+ button.addMouseListener(new java.awt.event.MouseAdapter()\r
+ {\r
+ public void mouseClicked(MouseEvent e)\r
+ {\r
+ colourButtonPressed(e);\r
+ }\r
+ });\r
+\r
+ caseSensitiveButtons.addElement(button);\r
+\r
+ col = Color.white;\r
+\r
+ try\r
+ {\r
+ col = oldColourScheme.findColour(aa.charAt(0), -1);\r
+ }\r
+ catch (Exception ex)\r
+ { }\r
+ }\r
+\r
+ if(caseSensitive.isSelected())\r
+ button.setMargin(new java.awt.Insets(2,2,2,2));\r
+ else\r
+ button.setMargin(new java.awt.Insets(2,14,2,14));\r
+\r
+ button.setBackground(col);\r
+ button.setText(label);\r
+ button.setForeground(col.darker().darker().darker());\r
+ button.setFont(new java.awt.Font("Verdana", Font.BOLD, 10));\r
+\r
+ return button;\r
+ }\r
+\r
+ /**\r
+ * DOCUMENT ME!\r
+ *\r
+ * @param e DOCUMENT ME!\r
+ */\r
+ protected void okButton_actionPerformed(ActionEvent e)\r
+ {\r
+ applyButton_actionPerformed(null);\r
+\r
+ try\r
+ {\r
+ frame.setClosed(true);\r
+ }\r
+ catch (Exception ex)\r
+ {\r
+ }\r
+ }\r