---input--- /* * Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * -Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * -Redistribution in binary form must reproduct the above copyright * notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the distribution. * * Neither the name of Sun Microsystems, Inc. or the names of contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * This software is provided "AS IS," without a warranty of any kind. ALL * EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING * ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE * OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN AND ITS LICENSORS SHALL NOT * BE LIABLE FOR ANY DAMAGES OR LIABILITIES SUFFERED BY LICENSEE AS A RESULT * OF OR RELATING TO USE, MODIFICATION OR DISTRIBUTION OF THE SOFTWARE OR ITS * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR ANY LOST * REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL, * INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY * OF LIABILITY, ARISING OUT OF THE USE OF OR INABILITY TO USE SOFTWARE, EVEN * IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. * * You acknowledge that Software is not designed, licensed or intended for * use in the design, construction, operation or maintenance of any nuclear * facility. */ package java2d; import java.awt.*; import java.awt.event.*; import java.awt.geom.*; import java.awt.image.BufferedImage; import java.awt.image.DataBuffer; import java.awt.font.*; import javax.swing.*; import javax.swing.border.*; import javax.swing.table.*; import javax.swing.event.*; import java.util.Vector; import java.util.List; import java.util.Arrays; /** * Introduction to the Java2Demo. * * @version @(#)Intro.java 1.19 03/06/26 * @author Brian Lichtenwalter */ public class Intro extends JPanel { static Color black = new Color(20, 20, 20); static Color white = new Color(240, 240, 255); static Color red = new Color(149, 43, 42); static Color blue = new Color(94, 105, 176); static Color yellow = new Color(255, 255, 140); static Surface surface; private ScenesTable scenesTable; private boolean doTable; public Intro() { EmptyBorder eb = new EmptyBorder(80,110,80,110); BevelBorder bb = new BevelBorder(BevelBorder.LOWERED); setBorder(new CompoundBorder(eb,bb)); setLayout(new BorderLayout()); setBackground(Color.gray); setToolTipText("click for scene table"); add(surface = new Surface()); addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { removeAll(); if ((doTable = !doTable)) { setToolTipText("click for animation"); surface.stop(); if (scenesTable == null) { scenesTable = new ScenesTable(); } add(scenesTable); } else { setToolTipText("click for scene table"); surface.start(); add(surface); } revalidate(); repaint(); } }); } public void start() { if (!doTable) { surface.start(); } } public void stop() { if (!doTable) { surface.stop(); } } public static void main(String argv[]) { final Intro intro = new Intro(); WindowListener l = new WindowAdapter() { public void windowClosing(WindowEvent e) {System.exit(0);} public void windowDeiconified(WindowEvent e) { intro.start(); } public void windowIconified(WindowEvent e) { intro.stop(); } }; JFrame f = new JFrame("Java2D Demo - Intro"); f.addWindowListener(l); f.getContentPane().add("Center", intro); f.pack(); Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); int w = 720; int h = 510; f.setLocation(screenSize.width/2 - w/2, screenSize.height/2 - h/2); f.setSize(w, h); f.setVisible(true); intro.start(); } /** * ScenesTable is the list of scenes known to the Director. * Scene participation, scene name and scene pause amount columns. * Global animation delay for scene's steps. */ static class ScenesTable extends JPanel implements ActionListener, ChangeListener { private JTable table; private TableModel dataModel; public ScenesTable() { setBackground(Color.white); setLayout(new BorderLayout()); final String[] names = { "", "Scenes", "Pause" }; dataModel = new AbstractTableModel() { public int getColumnCount() { return names.length; } public int getRowCount() { return surface.director.size();} public Object getValueAt(int row, int col) { Surface.Scene scene = (Surface.Scene) surface.director.get(row); if (col == 0) { return scene.participate; } else if (col == 1) { return scene.name; } else { return scene.pauseAmt; } } public String getColumnName(int col) {return names[col]; } public Class getColumnClass(int c) { return getValueAt(0, c).getClass(); } public boolean isCellEditable(int row, int col) { return col != 1 ? true : false; } public void setValueAt(Object aValue, int row, int col) { Surface.Scene scene = (Surface.Scene) surface.director.get(row); if (col == 0) { scene.participate = aValue; } else if (col == 1) { scene.name = aValue; } else { scene.pauseAmt = aValue; } } }; table = new JTable(dataModel); TableColumn col = table.getColumn(""); col.setWidth(16); col.setMinWidth(16); col.setMaxWidth(20); col = table.getColumn("Pause"); col.setWidth(60); col.setMinWidth(60); col.setMaxWidth(60); table.sizeColumnsToFit(0); JScrollPane scrollpane = new JScrollPane(table); add(scrollpane); JPanel panel = new JPanel(new BorderLayout()); JButton b = new JButton("Unselect All"); b.setHorizontalAlignment(JButton.LEFT); Font font = new Font("serif", Font.PLAIN, 10); b.setFont(font); b.addActionListener(this); panel.add("West", b); JSlider slider = new JSlider(JSlider.HORIZONTAL, 0, 200, (int) surface.sleepAmt); slider.addChangeListener(this); TitledBorder tb = new TitledBorder(new EtchedBorder()); tb.setTitleFont(font); tb.setTitle("Anim delay = " + String.valueOf(surface.sleepAmt) + " ms"); slider.setBorder(tb); slider.setPreferredSize(new Dimension(140,40)); slider.setMinimumSize(new Dimension(100,40)); slider.setMaximumSize(new Dimension(180,40)); panel.add("East", slider); add("South", panel); } public void actionPerformed(ActionEvent e) { JButton b = (JButton) e.getSource(); b.setSelected(!b.isSelected()); b.setText(b.isSelected() ? "Select All" : "Unselect All"); for (int i = 0; i < surface.director.size(); i++) { Surface.Scene scene = (Surface.Scene) surface.director.get(i); scene.participate = new Boolean(!b.isSelected()); } table.tableChanged(new TableModelEvent(dataModel)); } public void stateChanged(ChangeEvent e) { JSlider slider = (JSlider) e.getSource(); int value = slider.getValue(); TitledBorder tb = (TitledBorder) slider.getBorder(); tb.setTitle("Anim delay = " + String.valueOf(value) + " ms"); surface.sleepAmt = (long) value; slider.repaint(); } } // End ScenesTable class /** * Surface is the stage where the Director plays its scenes. */ static class Surface extends JPanel implements Runnable { static Surface surf; static Image cupanim, java_logo; static BufferedImage bimg; public Director director; public int index; public long sleepAmt = 30; private Thread thread; public Surface() { surf = this; setBackground(black); setLayout(new BorderLayout()); addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { if (thread == null) start(); else stop(); } }); cupanim = DemoImages.getImage("cupanim.gif", this); java_logo = DemoImages.getImage("java_logo.png", this); director = new Director(); } static FontMetrics getMetrics(Font font) { return surf.getFontMetrics(font); } public void paint(Graphics g) { Dimension d = getSize(); if (d.width <= 0 || d.height <= 0) { return; } if (bimg == null || bimg.getWidth() != d.width || bimg.getHeight() != d.height) { bimg = getGraphicsConfiguration().createCompatibleImage(d.width, d.height); // reset future scenes for (int i = index+1; i < director.size(); i++) { ((Scene) director.get(i)).reset(d.width, d.height); } } Scene scene = (Scene) director.get(index); if (scene.index <= scene.length) { if (thread != null) { scene.step(d.width, d.height); } Graphics2D g2 = bimg.createGraphics(); g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); g2.setBackground(getBackground()); g2.clearRect(0, 0, d.width, d.height); scene.render(d.width, d.height, g2); if (thread != null) { // increment scene.index after scene.render scene.index++; } g2.dispose(); } g.drawImage(bimg, 0, 0, this); } public void start() { if (thread == null) { thread = new Thread(this); thread.setPriority(Thread.MIN_PRIORITY); thread.setName("Intro"); thread.start(); } } public synchronized void stop() { if (thread != null) { thread.interrupt(); } thread = null; notifyAll(); } public void reset() { index = 0; Dimension d = getSize(); for (int i = 0; i < director.size(); i++) { ((Scene) director.get(i)).reset(d.width, d.height); } } public void run() { Thread me = Thread.currentThread(); while (thread == me && !isShowing() || getSize().width <= 0) { try { thread.sleep(500); } catch (InterruptedException e) { return; } } if (index == 0) { reset(); } while (thread == me) { Scene scene = (Scene) director.get(index); if (((Boolean) scene.participate).booleanValue()) { repaint(); try { thread.sleep(sleepAmt); } catch (InterruptedException e) { break; } if (scene.index > scene.length) { scene.pause(thread); if (++index >= director.size()) { reset(); } } } else { if (++index >= director.size()) { reset(); } } } thread = null; } /** * Part is a piece of the scene. Classes must implement Part * inorder to participate in a scene. */ interface Part { public void reset(int newwidth, int newheight); public void step(int w, int h); public void render(int w, int h, Graphics2D g2); public int getBegin(); public int getEnd(); } /** * Director is the holder of the scenes, their names & pause amounts * between scenes. */ static class Director extends Vector { GradientPaint gp = new GradientPaint(0,40,blue,38,2,black); Font f1 = new Font("serif", Font.PLAIN, 200); Font f2 = new Font("serif", Font.PLAIN, 120); Font f3 = new Font("serif", Font.PLAIN, 72); Object parts[][][] = { { { "J - scale text on gradient", "0" }, { new GpE(GpE.BURI, black, blue, 0, 20), new TxE("J", f1, TxE.SCI, yellow, 2, 20) } }, { { "2 - scale & rotate text on gradient" , "0" }, { new GpE(GpE.BURI, blue, black, 0, 22), new TxE("2", f1, TxE.RI | TxE.SCI, yellow, 2, 22) } }, { { "D - scale text on gradient", "0" }, { new GpE(GpE.BURI, black, blue, 0, 20), new TxE("D", f1, TxE.SCI, yellow, 2, 20) } }, { { "Java2D - scale & rotate text on gradient", "1000" }, { new GpE(GpE.SIH, blue, black, 0, 40), new TxE("Java2D", f2, TxE.RI | TxE.SCI, yellow, 0, 40) }}, { { "Previous scene dither dissolve out", "0"}, { new DdE(0, 20, 1) }}, { { "Graphics Features", "999" }, { new Temp(Temp.RECT, null, 0, 15), new Temp(Temp.IMG, java_logo, 2, 15), new Temp(Temp.RNA | Temp.INA, java_logo, 16, 130), new Features(Features.GRAPHICS, 16, 130) }}, { { "Java2D - texture text on gradient", "1000"}, { new GpE(GpE.WI, blue, black, 0, 20), new GpE(GpE.WD, blue, black, 21, 40), new TpE(TpE.OI | TpE.NF, black, yellow, 4, 0, 10), new TpE(TpE.OD | TpE.NF, black, yellow, 4, 11, 20), new TpE(TpE.OI | TpE.NF | TpE.HAF, black, yellow,5,21,40), new TxE("Java2D", f2, 0, null, 0, 40) }}, { { "Previous scene random close out", "0"}, { new CoE(CoE.RAND, 0, 20) } }, { { "Text Features", "999" }, { new Temp(Temp.RECT, null, 0, 15), new Temp(Temp.IMG, java_logo, 2, 15), new Temp(Temp.RNA | Temp.INA, java_logo, 16, 130), new Features(Features.TEXT, 16, 130) }}, { { "Java2D - composite text on texture", "1000"}, { new TpE(TpE.RI, black, gp, 40, 0, 20), new TpE(TpE.RD, black, gp, 40, 21, 40), new TpE(TpE.RI, black, gp, 40, 41, 60), new TxE("Java2D", f2, TxE.AC, yellow, 0, 60) }}, { { "Previous scene dither dissolve out", "0"}, { new DdE(0, 20, 4) }}, { { "Imaging Features", "999" }, { new Temp(Temp.RECT, null, 0, 15), new Temp(Temp.IMG, java_logo, 2, 15), new Temp(Temp.RNA | Temp.INA, java_logo, 16, 130), new Features(Features.IMAGES, 16, 130) }}, { { "Java2D - text on gradient", "1000" }, { new GpE(GpE.SDH, blue, black, 0, 20), new GpE(GpE.SIH, blue, black, 21, 40), new GpE(GpE.SDH, blue, black, 41, 50), new GpE(GpE.INC | GpE.NF, red, yellow, 0, 50), new TxE("Java2D", f2, TxE.NOP, null, 0, 50) }}, { { "Previous scene ellipse close out", "0"}, { new CoE(CoE.OVAL, 0, 20) } }, { { "Color Features", "999" }, { new Temp(Temp.RECT, null, 0, 15), new Temp(Temp.IMG, java_logo, 2, 15), new Temp(Temp.RNA | Temp.INA, java_logo, 16, 99), new Features(Features.COLOR, 16, 99) }}, { { "Java2D - composite and rotate text on paints", "2000" }, { new GpE(GpE.BURI, black, blue, 0, 20), new GpE(GpE.BURD, black, blue, 21, 30), new TpE(TpE.OI | TpE.HAF, black, blue, 10, 31, 40), new TxE("Java2D", f2, TxE.AC | TxE.RI, yellow, 0, 40) }}, { { "Previous scene subimage transform out", "0" }, { new SiE(60, 60, 0, 40) }}, { { "CREDITS - transform in", "1000" }, { new LnE(LnE.ACI | LnE.ZOOMI | LnE.RI, 0, 60), new TxE("CREDITS", f3, TxE.AC | TxE.SCI, Color.red,20,30), new TxE("CREDITS", f3, TxE.SCXD, Color.red, 31, 38), new TxE("CREDITS", f3, TxE.SCXI, Color.red, 39, 48), new TxE("CREDITS", f3, TxE.SCXD, Color.red, 49, 54), new TxE("CREDITS", f3, TxE.SCXI, Color.red, 55, 60) }}, { { "CREDITS - transform out", "0" }, { new LnE(LnE.ACD | LnE.ZOOMD | LnE.RD, 0, 45), new TxE("CREDITS", f3, 0, Color.red, 0, 9), new TxE("CREDITS", f3, TxE.SCD | TxE.RD, Color.red,10,30)}}, { { "Contributors", "1000" }, { new Temp(Temp.RECT, null, 0, 30), new Temp(Temp.IMG, cupanim, 4, 30), new Temp(Temp.RNA | Temp.INA, cupanim, 31, 200), new Contributors(34, 200) } }, }; public Director() { for (int i = 0; i < parts.length; i++) { Vector v = new Vector(); for (int j = 0; j < parts[i][1].length; j++) { v.addElement(parts[i][1][j]); } addElement(new Scene(v, parts[i][0][0], parts[i][0][1])); } } } /** * Scene is the manager of the parts. */ static class Scene extends Object { public Object name; public Object participate = new Boolean(true); public Object pauseAmt; public Vector parts; public int index; public int length; public Scene(Vector parts, Object name, Object pauseAmt) { this.name = name; this.parts = parts; this.pauseAmt = pauseAmt; for (int i = 0; i < parts.size(); i++) { if (((Part) parts.get(i)).getEnd() > length) { length = ((Part) parts.get(i)).getEnd(); } } } public void reset(int w, int h) { index = 0; for (int i = 0; i < parts.size(); i++) { ((Part) parts.get(i)).reset(w, h); } } public void step(int w, int h) { for (int i = 0; i < parts.size(); i++) { Part part = (Part) parts.get(i); if (index >= part.getBegin() && index <= part.getEnd()) { part.step(w, h); } } } public void render(int w, int h, Graphics2D g2) { for (int i = 0; i < parts.size(); i++) { Part part = (Part) parts.get(i); if (index >= part.getBegin() && index <= part.getEnd()) { part.render(w, h, g2); } } } public void pause(Thread thread) { try { thread.sleep(Long.parseLong((String) pauseAmt)); } catch (Exception e) { } System.gc(); } } // End Scene class /** * Text Effect. Transformation of characters. Clip or fill. */ static class TxE implements Part { static final int INC = 1; static final int DEC = 2; static final int R = 4; // rotate static final int RI = R | INC; static final int RD = R | DEC; static final int SC = 8; // scale static final int SCI = SC | INC; static final int SCD = SC | DEC; static final int SCX = 16; // scale invert x static final int SCXI = SCX | SC | INC; static final int SCXD = SCX | SC | DEC; static final int SCY = 32; // scale invert y static final int SCYI = SCY | SC | INC; static final int SCYD = SCY | SC | DEC; static final int AC = 64; // AlphaComposite static final int CLIP = 128; // Clipping static final int NOP = 512; // No Paint private int beginning, ending; private int type; private double rIncr, sIncr; private double sx, sy, rotate; private Shape shapes[], txShapes[]; private int sw; private int numRev; private Paint paint; public TxE(String text, Font font, int type, Paint paint, int beg, int end) { this.type = type; this.paint = paint; this.beginning = beg; this.ending = end; setIncrements(2); char[] chars = text.toCharArray(); shapes = new Shape[chars.length]; txShapes = new Shape[chars.length]; FontRenderContext frc = new FontRenderContext(null,true,true); TextLayout tl = new TextLayout(text, font, frc); sw = (int) tl.getOutline(null).getBounds().getWidth(); for (int j = 0; j < chars.length; j++) { String s = String.valueOf(chars[j]); shapes[j] = new TextLayout(s, font, frc).getOutline(null); } } public void setIncrements(double numRevolutions) { this.numRev = (int) numRevolutions; rIncr = 360.0 / ((ending - beginning) / numRevolutions); sIncr = 1.0 / (ending - beginning); if ((type & SCX) != 0 || (type & SCY) != 0) { sIncr *= 2; } if ((type & DEC) != 0) { rIncr = -rIncr; sIncr = -sIncr; } } public void reset(int w, int h) { if (type == SCXI) { sx = -1.0; sy = 1.0; } else if (type == SCYI) { sx = 1.0; sy = -1.0; } else { sx = sy = (type & DEC) != 0 ? 1.0 : 0.0; } rotate = 0; } public void step(int w, int h) { float charWidth = w/2-sw/2; for (int i = 0; i < shapes.length; i++) { AffineTransform at = new AffineTransform(); Rectangle2D maxBounds = shapes[i].getBounds(); at.translate(charWidth, h/2+maxBounds.getHeight()/2); charWidth += (float) maxBounds.getWidth() + 1; Shape shape = at.createTransformedShape(shapes[i]); Rectangle2D b1 = shape.getBounds2D(); if ((type & R) != 0) { at.rotate(Math.toRadians(rotate)); } if ((type & SC) != 0) { at.scale(sx, sy); } shape = at.createTransformedShape(shapes[i]); Rectangle2D b2 = shape.getBounds2D(); double xx = (b1.getX()+b1.getWidth()/2) - (b2.getX()+b2.getWidth()/2); double yy = (b1.getY()+b1.getHeight()/2) - (b2.getY()+b2.getHeight()/2); AffineTransform toCenterAT = new AffineTransform(); toCenterAT.translate(xx, yy); toCenterAT.concatenate(at); txShapes[i] = toCenterAT.createTransformedShape(shapes[i]); } // avoid over rotation if (Math.abs(rotate) <= numRev * 360) { rotate += rIncr; if ((type & SCX) != 0) { sx += sIncr; } else if ((type & SCY) != 0) { sy += sIncr; } else { sx += sIncr; sy += sIncr; } } } public void render(int w, int h, Graphics2D g2) { Composite saveAC = null; if ((type & AC) != 0 && sx > 0 && sx < 1) { saveAC = g2.getComposite(); g2.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, (float) sx)); } GeneralPath path = null; if ((type & CLIP) != 0) { path = new GeneralPath(); } if (paint != null) { g2.setPaint(paint); } for (int i = 0; i < txShapes.length; i++) { if ((type & CLIP) != 0) { path.append(txShapes[i], false); } else { g2.fill(txShapes[i]); } } if ((type & CLIP) != 0) { g2.clip(path); } if (saveAC != null) { g2.setComposite(saveAC); } } public int getBegin() { return beginning; } public int getEnd() { return ending; } } // End TxE class /** * GradientPaint Effect. Burst, split, horizontal and * vertical gradient fill effects. */ static class GpE implements Part { static final int INC = 1; // increasing static final int DEC = 2; // decreasing static final int CNT = 4; // center static final int WID = 8; // width static final int WI = WID | INC; static final int WD = WID | DEC; static final int HEI = 16; // height static final int HI = HEI | INC; static final int HD = HEI | DEC; static final int SPL = 32 | CNT; // split static final int SIW = SPL | INC | WID; static final int SDW = SPL | DEC | WID; static final int SIH = SPL | INC | HEI; static final int SDH = SPL | DEC | HEI; static final int BUR = 64 | CNT; // burst static final int BURI = BUR | INC; static final int BURD = BUR | DEC; static final int NF = 128; // no fill private Color c1, c2; private int beginning, ending; private float incr, index; private Vector rect = new Vector(); private Vector grad = new Vector(); private int type; public GpE(int type, Color c1, Color c2, int beg, int end) { this.type = type; this.c1 = c1; this.c2 = c2; this.beginning = beg; this.ending = end; } public void reset(int w, int h) { incr = 1.0f / (ending - beginning); if ((type & CNT) != 0) { incr /= 2.3f; } if ((type & CNT) != 0 && (type & INC) != 0) { index = 0.5f; } else if ((type & DEC) != 0) { index = 1.0f; incr = -incr; } else { index = 0.0f; } index += incr; } public void step(int w, int h) { rect.clear(); grad.clear(); if ((type & WID) != 0) { float w2 = 0, x1 = 0, x2 = 0; if ((type & SPL) != 0) { w2 = w * 0.5f; x1 = w * (1.0f - index); x2 = w * index; } else { w2 = w * index; x1 = x2 = w2; } rect.addElement(new Rectangle2D.Float(0, 0, w2, h)); rect.addElement(new Rectangle2D.Float(w2, 0, w-w2, h)); grad.addElement(new GradientPaint(0,0,c1,x1,0,c2)); grad.addElement(new GradientPaint(x2,0,c2,w,0,c1)); } else if ((type & HEI) != 0) { float h2 = 0, y1 = 0, y2 = 0; if ((type & SPL) != 0) { h2 = h * 0.5f; y1 = h * (1.0f - index); y2 = h * index; } else { h2 = h * index; y1 = y2 = h2; } rect.addElement(new Rectangle2D.Float(0, 0, w, h2)); rect.addElement(new Rectangle2D.Float(0, h2, w, h-h2)); grad.addElement(new GradientPaint(0,0,c1,0,y1,c2)); grad.addElement(new GradientPaint(0,y2,c2,0,h,c1)); } else if ((type & BUR) != 0) { float w2 = w/2; float h2 = h/2; rect.addElement(new Rectangle2D.Float(0, 0, w2, h2)); rect.addElement(new Rectangle2D.Float(w2, 0, w2, h2)); rect.addElement(new Rectangle2D.Float(0, h2, w2, h2)); rect.addElement(new Rectangle2D.Float(w2, h2, w2, h2)); float x1 = w * (1.0f - index); float x2 = w * index; float y1 = h * (1.0f - index); float y2 = h * index; grad.addElement(new GradientPaint(0,0,c1,x1,y1,c2)); grad.addElement(new GradientPaint(w,0,c1,x2,y1,c2)); grad.addElement(new GradientPaint(0,h,c1,x1,y2,c2)); grad.addElement(new GradientPaint(w,h,c1,x2,y2,c2)); } else if ((type & NF) != 0) { float x = w * index; float y = h * index; grad.addElement(new GradientPaint(0,0,c1,0,y,c2)); } if ((type & INC) != 0 || (type & DEC) != 0) { index += incr; } } public void render(int w, int h, Graphics2D g2) { g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_OFF); for (int i = 0; i < grad.size(); i++) { g2.setPaint((GradientPaint) grad.get(i)); if ((type & NF) == 0) { g2.fill((Rectangle2D) rect.get(i)); } } g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); } public int getBegin() { return beginning; } public int getEnd() { return ending; } } // End GpE class /** * TexturePaint Effect. Expand and collapse a texture. */ static class TpE implements Part { static final int INC = 1; // increasing static final int DEC = 2; // decreasing static final int OVAL = 4; // oval static final int RECT = 8; // rectangle static final int HAF = 16; // half oval or rect size static final int OI = OVAL | INC; static final int OD = OVAL | DEC; static final int RI = RECT | INC; static final int RD = RECT | DEC; static final int NF = 32; // no fill private Paint p1, p2; private int beginning, ending; private float incr, index; private TexturePaint texture; private int type; private int size; private BufferedImage bimg; private Rectangle rect; public TpE(int type, Paint p1, Paint p2, int size, int beg, int end) { this.type = type; this.p1 = p1; this.p2 = p2; this.beginning = beg; this.ending = end; setTextureSize(size); } public void setTextureSize(int size) { this.size = size; bimg = new BufferedImage(size,size,BufferedImage.TYPE_INT_RGB); rect = new Rectangle(0,0,size,size); } public void reset(int w, int h) { incr = (float) (size) / (float) (ending - beginning); if ((type & HAF) != 0) { incr /= 2; } if ((type & DEC) != 0) { index = size; if ((type & HAF) != 0) { index /= 2; } incr = -incr; } else { index = 0.0f; } index += incr; } public void step(int w, int h) { Graphics2D g2 = bimg.createGraphics(); g2.setPaint(p1); g2.fillRect(0,0,size,size); g2.setPaint(p2); if ((type & OVAL) != 0) { g2.fill(new Ellipse2D.Float(0,0,index,index)); } else if ((type & RECT) != 0) { g2.fill(new Rectangle2D.Float(0,0,index,index)); } texture = new TexturePaint(bimg, rect); g2.dispose(); index += incr; } public void render(int w, int h, Graphics2D g2) { g2.setPaint(texture); if ((type & NF) == 0) { g2.fillRect(0, 0, w, h); } } public int getBegin() { return beginning; } public int getEnd() { return ending; } } // End TpE class /** * Close out effect. Close out the buffered image with different * geometry shapes. */ static class CoE implements Part { static final int WID = 1; static final int HEI = 2; static final int OVAL = 4; static final int RECT = 8; static final int RAND = 16; static final int ARC = 32; private int type; private int beginning, ending; private BufferedImage bimg; private Shape shape; private double zoom, extent; private double zIncr, eIncr; private boolean doRandom; public CoE(int type, int beg, int end) { this.type = type; this.beginning = beg; this.ending = end; zIncr = -(2.0 / (ending - beginning)); eIncr = 360.0 / (ending - beginning); doRandom = (type & RAND) != 0; } public void reset(int w, int h) { if (doRandom) { int num = (int) (Math.random() * 5.0); switch (num) { case 0 : type = OVAL; break; case 1 : type = RECT; break; case 2 : type = RECT | WID; break; case 3 : type = RECT | HEI; break; case 4 : type = ARC; break; default : type = OVAL; } } shape = null; bimg = null; extent = 360.0; zoom = 2.0; } public void step(int w, int h) { if (bimg == null) { int biw = Surface.bimg.getWidth(); int bih = Surface.bimg.getHeight(); bimg = new BufferedImage(biw, bih, BufferedImage.TYPE_INT_RGB); Graphics2D big = bimg.createGraphics(); big.drawImage(Surface.bimg, 0, 0, null); } double z = Math.min(w, h) * zoom; if ((type & OVAL) != 0) { shape = new Ellipse2D.Double(w/2-z/2,h/2-z/2,z,z); } else if ((type & ARC) != 0) { shape = new Arc2D.Double(-100,-100,w+200,h+200,90,extent,Arc2D.PIE); extent -= eIncr; } else if ((type & RECT) != 0) { if ((type & WID) != 0) { shape = new Rectangle2D.Double(w/2-z/2,0,z,h); } else if ((type & HEI) != 0) { shape = new Rectangle2D.Double(0,h/2-z/2,w,z); } else { shape = new Rectangle2D.Double(w/2-z/2,h/2-z/2,z,z); } } zoom += zIncr; } public void render(int w, int h, Graphics2D g2) { g2.clip(shape); g2.drawImage(bimg, 0, 0, null); } public int getBegin() { return beginning; } public int getEnd() { return ending; } } // End CoE class /** * Dither Dissolve Effect. For each successive step in the animation, * a pseudo-random starting horizontal position is chosen using list, * and then the corresponding points created from xlist and ylist are * blacked out for the current "chunk". The x and y chunk starting * positions are each incremented by the associated chunk size, and * this process is repeated for the number of "steps" in the * animation, causing an equal number of pseudo-randomly picked * "blocks" to be blacked out during each step of the animation. */ static class DdE implements Part { private int beginning, ending; private BufferedImage bimg; private Graphics2D big; private List list, xlist, ylist; private int xeNum, yeNum; // element number private int xcSize, ycSize; // chunk size private int inc; private int blocksize; public DdE(int beg, int end, int blocksize) { this.beginning = beg; this.ending = end; this.blocksize = blocksize; } private void createShuffledLists() { int width = bimg.getWidth(); int height = bimg.getHeight(); Integer xarray[] = new Integer[width]; Integer yarray[] = new Integer[height]; Integer array[] = new Integer[ending - beginning + 1]; for (int i = 0; i < xarray.length; i++) { xarray[i] = new Integer(i); } for (int j = 0; j < yarray.length; j++) { yarray[j] = new Integer(j); } for (int k = 0; k < array.length; k++) { array[k] = new Integer(k); } java.util.Collections.shuffle(xlist = Arrays.asList(xarray)); java.util.Collections.shuffle(ylist = Arrays.asList(yarray)); java.util.Collections.shuffle(list = Arrays.asList(array)); } public void reset(int w, int h) { bimg = null; } public void step(int w, int h) { if (bimg == null) { int biw = Surface.bimg.getWidth(); int bih = Surface.bimg.getHeight(); bimg = new BufferedImage(biw, bih, BufferedImage.TYPE_INT_RGB); createShuffledLists(); big = bimg.createGraphics(); big.drawImage(Surface.bimg, 0, 0, null); xcSize = (xlist.size() / (ending - beginning)) + 1; ycSize = (ylist.size() / (ending - beginning)) + 1; xeNum = 0; inc = 0; } xeNum = xcSize * ((Integer)list.get(inc)).intValue(); yeNum = -ycSize; inc++; } public void render(int w, int h, Graphics2D g2) { big.setColor(black); for (int k = 0; k <= (ending - beginning); k++) { if ((xeNum + xcSize) > xlist.size()) { xeNum = 0; } else { xeNum += xcSize; } yeNum += ycSize; for (int i = xeNum; i < xeNum+xcSize && i < xlist.size(); i++) { for (int j = yeNum; j < yeNum+ycSize && j < ylist.size(); j++) { int xval = ((Integer)xlist.get(i)).intValue(); int yval = ((Integer)ylist.get(j)).intValue(); if (((xval % blocksize) == 0) && ((yval % blocksize) == 0)) { big.fillRect(xval, yval, blocksize, blocksize); } } } } g2.drawImage(bimg, 0, 0, null); } public int getBegin() { return beginning; } public int getEnd() { return ending; } } // End DdE class /** * Subimage effect. Subimage the scene's buffered * image then rotate and scale down the subimages. */ static class SiE implements Part { private int beginning, ending; private BufferedImage bimg; private double rIncr, sIncr; private double scale, rotate; private int siw, sih; private Vector subs = new Vector(20); private Vector pts = new Vector(20); public SiE(int siw, int sih, int beg, int end) { this.siw = siw; this.sih = sih; this.beginning = beg; this.ending = end; rIncr = 360.0 / (ending - beginning); sIncr = 1.0 / (ending - beginning); } public void reset(int w, int h) { scale = 1.0; rotate = 0.0; bimg = null; subs.clear(); pts.clear(); } public void step(int w, int h) { if (bimg == null) { int biw = Surface.bimg.getWidth(); int bih = Surface.bimg.getHeight(); bimg = new BufferedImage(biw, bih, BufferedImage.TYPE_INT_RGB); Graphics2D big = bimg.createGraphics(); big.drawImage(Surface.bimg, 0, 0, null); for (int x = 0; x < w && scale > 0.0; x+=siw) { int ww = x+siw < w ? siw : w-x; for (int y = 0; y < h; y+=sih) { int hh = y+sih < h ? sih : h-y; subs.addElement(bimg.getSubimage(x,y,ww,hh)); pts.addElement(new Point(x, y)); } } } rotate += rIncr; scale -= sIncr; } public void render(int w, int h, Graphics2D g2) { AffineTransform saveTx = g2.getTransform(); g2.setColor(blue); for (int i = 0; i < subs.size() && scale > 0.0; i++) { BufferedImage bi = (BufferedImage) subs.get(i); Point p = (Point) pts.get(i); int ww = bi.getWidth(); int hh = bi.getHeight(); AffineTransform at = new AffineTransform(); at.rotate(Math.toRadians(rotate), p.x+ww/2, p.y+hh/2); at.translate(p.x, p.y); at.scale(scale, scale); Rectangle b1 = new Rectangle(0, 0, ww, hh); Shape shape = at.createTransformedShape(b1); Rectangle2D b2 = shape.getBounds2D(); double xx = (p.x+ww/2) - (b2.getX()+b2.getWidth()/2); double yy = (p.y+hh/2) - (b2.getY()+b2.getHeight()/2); AffineTransform toCenterAT = new AffineTransform(); toCenterAT.translate(xx, yy); toCenterAT.concatenate(at); g2.setTransform(toCenterAT); g2.drawImage(bi, 0, 0, null); g2.draw(b1); } g2.setTransform(saveTx); } public int getBegin() { return beginning; } public int getEnd() { return ending; } } // End SiE class /** * Line Effect. Flattened ellipse with lines from the center * to the edge. Expand or collapse the ellipse. Fade in or out * the lines. */ static class LnE implements Part { static final int INC = 1; static final int DEC = 2; static final int R = 4; // rotate static final int RI = R | INC; static final int RD = R | DEC; static final int ZOOM = 8; // zoom static final int ZOOMI = ZOOM | INC; static final int ZOOMD = ZOOM | DEC; static final int AC = 32; // AlphaComposite static final int ACI = 32 | INC; static final int ACD = 32 | DEC; private int beginning, ending; private double rIncr, rotate; private double zIncr, zoom; private Vector pts = new Vector(); private float alpha, aIncr; private int type; public LnE(int type, int beg, int end) { this.type = type; this.beginning = beg; this.ending = end; rIncr = 360.0 / (ending - beginning); aIncr = 0.9f / (ending - beginning); zIncr = 2.0 / (ending - beginning); if ((type & DEC) != 0) { rIncr = -rIncr; aIncr = -aIncr; zIncr = -zIncr; } } public void generatePts(int w, int h, double sizeF) { pts.clear(); double size = Math.min(w, h) * sizeF; Ellipse2D ellipse = new Ellipse2D.Double(w/2-size/2,h/2-size/2,size,size); PathIterator pi = ellipse.getPathIterator(null, 0.8); while ( !pi.isDone() ) { double[] pt = new double[6]; switch ( pi.currentSegment(pt) ) { case FlatteningPathIterator.SEG_MOVETO: case FlatteningPathIterator.SEG_LINETO: pts.addElement(new Point2D.Double(pt[0], pt[1])); } pi.next(); } } public void reset(int w, int h) { if ((type & DEC) != 0) { rotate = 360; alpha = 1.0f; zoom = 2.0; } else { rotate = alpha = 0; zoom = 0; } if ((type & ZOOM) == 0) { generatePts(w, h, 0.5); } } public void step(int w, int h) { if ((type & ZOOM) != 0) { generatePts(w, h, zoom += zIncr); } if ((type & RI) != 0 || (type & RI) != 0) { rotate += rIncr; } if ((type & ACI) != 0 || (type & ACD) != 0) { alpha += aIncr; } } public void render(int w, int h, Graphics2D g2) { Composite saveAC = null; if ((type & AC) != 0 && alpha >= 0 && alpha <= 1) { saveAC = g2.getComposite(); g2.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, alpha)); } AffineTransform saveTx = null; if ((type & R) != 0) { saveTx = g2.getTransform(); AffineTransform at = new AffineTransform(); at.rotate(Math.toRadians(rotate), w/2, h/2); g2.setTransform(at); } Point2D p1 = new Point2D.Double(w/2, h/2); g2.setColor(Color.yellow); for (int i = 0; i < pts.size()-1; i++) { g2.draw(new Line2D.Float(p1, (Point2D) pts.get(i))); } if (saveTx != null) { g2.setTransform(saveTx); } if (saveAC != null) { g2.setComposite(saveAC); } } public int getBegin() { return beginning; } public int getEnd() { return ending; } } // End LnE class /** * Template for Features & Contributors consisting of translating * blue and red rectangles and an image going from transparent to * opaque. */ static class Temp implements Part { static final int NOANIM = 1; static final int RECT = 2; static final int RNA = RECT | NOANIM; static final int IMG = 4; static final int INA = IMG | NOANIM; private int beginning, ending; private float alpha, aIncr; private int type; private Rectangle rect1, rect2; private int x, y, xIncr, yIncr; private Image img; public Temp(int type, Image img, int beg, int end) { this.type = type; this.img = img; this.beginning = beg; this.ending = end; aIncr = 0.9f / (ending - beginning); if ((type & NOANIM) != 0) { alpha = 1.0f; } } public void reset(int w, int h) { rect1 = new Rectangle(8, 20, w-20, 30); rect2 = new Rectangle(20, 8, 30, h-20); if ((type & NOANIM) == 0) { alpha = 0.0f; xIncr = w / (ending - beginning); yIncr = h / (ending - beginning); x = w+(int)(xIncr*1.4); y = h+(int)(yIncr*1.4); } } public void step(int w, int h) { if ((type & NOANIM) != 0) { return; } if ((type & RECT) != 0) { rect1.setLocation(x-=xIncr, 20); rect2.setLocation(20, y-=yIncr); } if ((type & IMG) != 0) { alpha += aIncr; } } public void render(int w, int h, Graphics2D g2) { if ((type & RECT) != 0) { g2.setColor(blue); g2.fill(rect1); g2.setColor(red); g2.fill(rect2); } if ((type & IMG) != 0) { Composite saveAC = g2.getComposite(); if (alpha >= 0 && alpha <= 1) { g2.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, alpha)); } g2.drawImage(img, 30, 30, null); g2.setComposite(saveAC); } } public int getBegin() { return beginning; } public int getEnd() { return ending; } } // End Temp class /** * Features of Java2D. Single character advancement effect. */ static class Features implements Part { static final int GRAPHICS = 0; static final int TEXT = 1; static final int IMAGES = 2; static final int COLOR = 3; static Font font1 = new Font("serif", Font.BOLD, 38); static Font font2 = new Font("serif", Font.PLAIN, 24); static FontMetrics fm1 = Surface.getMetrics(font1); static FontMetrics fm2 = Surface.getMetrics(font2); static String table[][] = {{ "Graphics", "Antialiased rendering", "Bezier paths", "Transforms", "Compositing", "Stroking parameters" }, { "Text", "Extended font support", "Advanced text layout", "Dynamic font loading", "AttributeSets for font customization" }, { "Images", "Flexible image layouts", "Extended imaging operations", " Convolutions, Lookup Tables", "RenderableImage interface"}, { "Color", "ICC profile support", "Color conversion", "Arbitrary color spaces"} }; private String list[]; private int beginning, ending; private int strH; private int endIndex, listIndex; private Vector v = new Vector(); public Features(int type, int beg, int end) { list = table[type]; this.beginning = beg; this.ending = end; } public void reset(int w, int h) { strH = (int) (fm2.getAscent()+fm2.getDescent()); endIndex = 1; listIndex = 0; v.clear(); v.addElement(list[listIndex].substring(0,endIndex)); } public void step(int w, int h) { if (listIndex < list.length) { if (++endIndex > list[listIndex].length()) { if (++listIndex < list.length) { endIndex = 1; v.addElement(list[listIndex].substring(0,endIndex)); } } else { v.set(listIndex, list[listIndex].substring(0,endIndex)); } } } public void render(int w, int h, Graphics2D g2) { g2.setColor(white); g2.setFont(font1); g2.drawString((String) v.get(0), 90, 85); g2.setFont(font2); for (int i = 1, y = 90; i < v.size(); i++) { g2.drawString((String) v.get(i), 120, y += strH); } } public int getBegin() { return beginning; } public int getEnd() { return ending; } } // End Features class /** * Scrolling text of Java2D contributors. */ static class Contributors implements Part { static String members[] = { "Brian Lichtenwalter", "Jeannette Hung", "Thanh Nguyen", "Jim Graham", "Jerry Evans", "John Raley", "Michael Peirce", "Robert Kim", "Jennifer Ball", "Deborah Adair", "Paul Charlton", "Dmitry Feld", "Gregory Stone", "Richard Blanchard", "Link Perry", "Phil Race", "Vincent Hardy", "Parry Kejriwal", "Doug Felt", "Rekha Rangarajan", "Paula Patel", "Michael Bundschuh", "Joe Warzecha", "Joey Beheler", "Aastha Bhardwaj", "Daniel Rice", "Chris Campbell", "Shinsuke Fukuda", "Dmitri Trembovetski", "Chet Haase", "Jennifer Godinez", "Nicholas Talian", "Raul Vera", "Ankit Patel", "Ilya Bagrak" }; static Font font = new Font("serif", Font.PLAIN, 26); static FontMetrics fm = Surface.getMetrics(font); private int beginning, ending; private int nStrs, strH, index, yh, height; private Vector v = new Vector(); private Vector cast = new Vector(members.length+3); private int counter, cntMod; private GradientPaint gp; public Contributors(int beg, int end) { this.beginning = beg; this.ending = end; java.util.Arrays.sort(members); cast.addElement("CONTRIBUTORS"); cast.addElement(" "); for (int i = 0; i < members.length; i++) { cast.addElement(members[i]); } cast.addElement(" "); cast.addElement(" "); cntMod = (ending - beginning) / cast.size() - 1; } public void reset(int w, int h) { v.clear(); strH = (int) (fm.getAscent()+fm.getDescent()); nStrs = (h-40)/strH + 1; height = strH * (nStrs-1) + 48; index = 0; gp = new GradientPaint(0,h/2,Color.white,0,h+20,Color.black); counter = 0; } public void step(int w, int h) { if (counter++%cntMod == 0) { if (index < cast.size()) { v.addElement(cast.get(index)); } if ((v.size() == nStrs || index >= cast.size()) && v.size() != 0) { v.removeElementAt(0); } ++index; } } public void render(int w, int h, Graphics2D g2) { g2.setPaint(gp); g2.setFont(font); double remainder = counter%cntMod; double incr = 1.0-remainder/cntMod; incr = incr == 1.0 ? 0 : incr; int y = (int) (incr * strH); if (index >= cast.size()) { y = yh + y; } else { y = yh = height - v.size() * strH + y; } for (int i = 0; i < v.size(); i++) { String s = (String) v.get(i); g2.drawString(s, w/2-fm.stringWidth(s)/2, y += strH); } } public int getBegin() { return beginning; } public int getEnd() { return ending; } } // End Contributors class } // End Surface class } // End Intro class ---tokens--- '/*\n * Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.\n * \n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions\n * are met:\n * \n * -Redistributions of source code must retain the above copyright\n * notice, this list of conditions and the following disclaimer.\n * \n * -Redistribution in binary form must reproduct the above copyright\n * notice, this list of conditions and the following disclaimer in\n * the documentation and/or other materials provided with the distribution.\n * \n * Neither the name of Sun Microsystems, Inc. or the names of contributors\n * may be used to endorse or promote products derived from this software\n * without specific prior written permission.\n * \n * This software is provided "AS IS," without a warranty of any kind. ALL\n * EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING\n * ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE\n * OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN AND ITS LICENSORS SHALL NOT\n * BE LIABLE FOR ANY DAMAGES OR LIABILITIES SUFFERED BY LICENSEE AS A RESULT\n * OF OR RELATING TO USE, MODIFICATION OR DISTRIBUTION OF THE SOFTWARE OR ITS\n * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR ANY LOST\n * REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL,\n * INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY\n * OF LIABILITY, ARISING OUT OF THE USE OF OR INABILITY TO USE SOFTWARE, EVEN\n * IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.\n * \n * You acknowledge that Software is not designed, licensed or intended for\n * use in the design, construction, operation or maintenance of any nuclear\n * facility.\n */' Comment.Multiline '\n' Text '\n' Text '\n' Text 'package' Keyword.Namespace ' ' Text 'java2d' Name.Namespace ';' Punctuation '\n' Text '\n' Text 'import' Keyword.Namespace ' ' Text 'java.awt.*' Name.Namespace ';' Punctuation '\n' Text 'import' Keyword.Namespace ' ' Text 'java.awt.event.*' Name.Namespace ';' Punctuation '\n' Text 'import' Keyword.Namespace ' ' Text 'java.awt.geom.*' Name.Namespace ';' Punctuation '\n' Text 'import' Keyword.Namespace ' ' Text 'java.awt.image.BufferedImage' Name.Namespace ';' Punctuation '\n' Text 'import' Keyword.Namespace ' ' Text 'java.awt.image.DataBuffer' Name.Namespace ';' Punctuation '\n' Text 'import' Keyword.Namespace ' ' Text 'java.awt.font.*' Name.Namespace ';' Punctuation '\n' Text 'import' Keyword.Namespace ' ' Text 'javax.swing.*' Name.Namespace ';' Punctuation '\n' Text 'import' Keyword.Namespace ' ' Text 'javax.swing.border.*' Name.Namespace ';' Punctuation '\n' Text 'import' Keyword.Namespace ' ' Text 'javax.swing.table.*' Name.Namespace ';' Punctuation '\n' Text 'import' Keyword.Namespace ' ' Text 'javax.swing.event.*' Name.Namespace ';' Punctuation '\n' Text 'import' Keyword.Namespace ' ' Text 'java.util.Vector' Name.Namespace ';' Punctuation '\n' Text 'import' Keyword.Namespace ' ' Text 'java.util.List' Name.Namespace ';' Punctuation '\n' Text 'import' Keyword.Namespace ' ' Text 'java.util.Arrays' Name.Namespace ';' Punctuation '\n' Text '\n' Text '\n' Text '\n' Text '/**\n * Introduction to the Java2Demo. \n *\n * @version @(#)Intro.java\t1.19 03/06/26\n * @author Brian Lichtenwalter\n */' Comment.Multiline '\n' Text 'public' Keyword.Declaration ' ' Text 'class' Keyword.Declaration ' ' Text 'Intro' Name.Class ' ' Text 'extends' Keyword.Declaration ' ' Text 'JPanel' Name ' ' Text '{' Punctuation '\n' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'Color' Name ' ' Text 'black' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Color' Name '(' Punctuation '20' Literal.Number.Integer ',' Punctuation ' ' Text '20' Literal.Number.Integer ',' Punctuation ' ' Text '20' Literal.Number.Integer ')' Punctuation ';' Punctuation ' ' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'Color' Name ' ' Text 'white' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Color' Name '(' Punctuation '240' Literal.Number.Integer ',' Punctuation ' ' Text '240' Literal.Number.Integer ',' Punctuation ' ' Text '255' Literal.Number.Integer ')' Punctuation ';' Punctuation ' ' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'Color' Name ' ' Text 'red' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Color' Name '(' Punctuation '149' Literal.Number.Integer ',' Punctuation ' ' Text '43' Literal.Number.Integer ',' Punctuation ' ' Text '42' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'Color' Name ' ' Text 'blue' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Color' Name '(' Punctuation '94' Literal.Number.Integer ',' Punctuation ' ' Text '105' Literal.Number.Integer ',' Punctuation ' ' Text '176' Literal.Number.Integer ')' Punctuation ';' Punctuation ' ' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'Color' Name ' ' Text 'yellow' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Color' Name '(' Punctuation '255' Literal.Number.Integer ',' Punctuation ' ' Text '255' Literal.Number.Integer ',' Punctuation ' ' Text '140' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'Surface' Name ' ' Text 'surface' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'ScenesTable' Name ' ' Text 'scenesTable' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'boolean' Keyword.Type ' ' Text 'doTable' Name ';' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'Intro' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'EmptyBorder' Name ' ' Text 'eb' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'EmptyBorder' Name '(' Punctuation '80' Literal.Number.Integer ',' Punctuation '110' Literal.Number.Integer ',' Punctuation '80' Literal.Number.Integer ',' Punctuation '110' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'BevelBorder' Name ' ' Text 'bb' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'BevelBorder' Name '(' Punctuation 'BevelBorder' Name '.' Punctuation 'LOWERED' Name.Attribute ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'setBorder' Name '(' Punctuation 'new' Keyword ' ' Text 'CompoundBorder' Name '(' Punctuation 'eb' Name ',' Punctuation 'bb' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'setLayout' Name '(' Punctuation 'new' Keyword ' ' Text 'BorderLayout' Name '(' Punctuation ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'setBackground' Name '(' Punctuation 'Color' Name '.' Punctuation 'gray' Name.Attribute ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'setToolTipText' Name '(' Punctuation '"' Literal.String 'click for scene table' Literal.String '"' Literal.String ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'add' Name '(' Punctuation 'surface' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Surface' Name '(' Punctuation ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'addMouseListener' Name '(' Punctuation 'new' Keyword ' ' Text 'MouseAdapter' Name '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'mouseClicked' Name.Function '(' Punctuation 'MouseEvent' Name ' ' Text 'e' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'removeAll' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'doTable' Name ' ' Text '=' Operator ' ' Text '!' Operator 'doTable' Name ')' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'setToolTipText' Name '(' Punctuation '"' Literal.String 'click for animation' Literal.String '"' Literal.String ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'surface' Name '.' Punctuation 'stop' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'scenesTable' Name ' ' Text '=' Operator '=' Operator ' ' Text 'null' Keyword.Constant ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'scenesTable' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'ScenesTable' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'add' Name '(' Punctuation 'scenesTable' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text '{' Punctuation '\n' Text ' ' Text 'setToolTipText' Name '(' Punctuation '"' Literal.String 'click for scene table' Literal.String '"' Literal.String ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'surface' Name '.' Punctuation 'start' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'add' Name '(' Punctuation 'surface' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'revalidate' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'repaint' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'start' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '!' Operator 'doTable' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'surface' Name '.' Punctuation 'start' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'stop' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '!' Operator 'doTable' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'surface' Name '.' Punctuation 'stop' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'static' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'main' Name.Function '(' Punctuation 'String' Name ' ' Text 'argv' Name '[' Operator ']' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'final' Keyword.Declaration ' ' Text 'Intro' Name ' ' Text 'intro' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Intro' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'WindowListener' Name ' ' Text 'l' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'WindowAdapter' Name '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'windowClosing' Name.Function '(' Punctuation 'WindowEvent' Name ' ' Text 'e' Name ')' Punctuation ' ' Text '{' Punctuation 'System' Name '.' Punctuation 'exit' Name.Attribute '(' Punctuation '0' Literal.Number.Integer ')' Punctuation ';' Punctuation '}' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'windowDeiconified' Name.Function '(' Punctuation 'WindowEvent' Name ' ' Text 'e' Name ')' Punctuation ' ' Text '{' Punctuation ' ' Text 'intro' Name '.' Punctuation 'start' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation ' ' Text '}' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'windowIconified' Name.Function '(' Punctuation 'WindowEvent' Name ' ' Text 'e' Name ')' Punctuation ' ' Text '{' Punctuation ' ' Text 'intro' Name '.' Punctuation 'stop' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation ';' Punctuation '\n' Text ' ' Text 'JFrame' Name ' ' Text 'f' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'JFrame' Name '(' Punctuation '"' Literal.String 'Java2D Demo - Intro' Literal.String '"' Literal.String ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'f' Name '.' Punctuation 'addWindowListener' Name.Attribute '(' Punctuation 'l' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'f' Name '.' Punctuation 'getContentPane' Name.Attribute '(' Punctuation ')' Punctuation '.' Punctuation 'add' Name.Attribute '(' Punctuation '"' Literal.String 'Center' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'intro' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'f' Name '.' Punctuation 'pack' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'Dimension' Name ' ' Text 'screenSize' Name ' ' Text '=' Operator ' ' Text 'Toolkit' Name '.' Punctuation 'getDefaultToolkit' Name.Attribute '(' Punctuation ')' Punctuation '.' Punctuation 'getScreenSize' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'int' Keyword.Type ' ' Text 'w' Name ' ' Text '=' Operator ' ' Text '720' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ' ' Text '=' Operator ' ' Text '510' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'f' Name '.' Punctuation 'setLocation' Name.Attribute '(' Punctuation 'screenSize' Name '.' Punctuation 'width' Name.Attribute '/' Operator '2' Literal.Number.Integer ' ' Text '-' Operator ' ' Text 'w' Name '/' Operator '2' Literal.Number.Integer ',' Punctuation ' ' Text 'screenSize' Name '.' Punctuation 'height' Name.Attribute '/' Operator '2' Literal.Number.Integer ' ' Text '-' Operator ' ' Text 'h' Name '/' Operator '2' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'f' Name '.' Punctuation 'setSize' Name.Attribute '(' Punctuation 'w' Name ',' Punctuation ' ' Text 'h' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'f' Name '.' Punctuation 'setVisible' Name.Attribute '(' Punctuation 'true' Keyword.Constant ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'intro' Name '.' Punctuation 'start' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text "/**\n * ScenesTable is the list of scenes known to the Director.\n * Scene participation, scene name and scene pause amount columns.\n * Global animation delay for scene's steps.\n */" Comment.Multiline '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'class' Keyword.Declaration ' ' Text 'ScenesTable' Name.Class ' ' Text 'extends' Keyword.Declaration ' ' Text 'JPanel' Name ' ' Text 'implements' Keyword.Declaration ' ' Text 'ActionListener' Name ',' Punctuation ' ' Text 'ChangeListener' Name ' ' Text '{' Punctuation '\n' Text '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'JTable' Name ' ' Text 'table' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'TableModel' Name ' ' Text 'dataModel' Name ';' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'ScenesTable' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'setBackground' Name '(' Punctuation 'Color' Name '.' Punctuation 'white' Name.Attribute ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'setLayout' Name '(' Punctuation 'new' Keyword ' ' Text 'BorderLayout' Name '(' Punctuation ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'final' Keyword.Declaration ' ' Text 'String' Name '[' Operator ']' Operator ' ' Text 'names' Name ' ' Text '=' Operator ' ' Text '{' Punctuation ' ' Text '"' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Scenes' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Pause' Literal.String '"' Literal.String ' ' Text '}' Punctuation ';' Punctuation '\n' Text ' ' Text '\n' Text ' ' Text 'dataModel' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'AbstractTableModel' Name '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getColumnCount' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation ' ' Text 'return' Keyword ' ' Text 'names' Name '.' Punctuation 'length' Name.Attribute ';' Punctuation ' ' Text '}' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getRowCount' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation ' ' Text 'return' Keyword ' ' Text 'surface' Name '.' Punctuation 'director' Name.Attribute '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '}' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'Object' Name ' ' Text 'getValueAt' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'row' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'col' Name ')' Punctuation ' ' Text '{' Punctuation ' ' Text '\n' Text ' ' Text 'Surface' Name '.' Punctuation 'Scene' Name.Attribute ' ' Text 'scene' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'Surface' Name '.' Punctuation 'Scene' Name.Attribute ')' Punctuation ' ' Text 'surface' Name '.' Punctuation 'director' Name.Attribute '.' Punctuation 'get' Name.Attribute '(' Punctuation 'row' Name ')' Punctuation ';' Punctuation ' ' Text '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'col' Name ' ' Text '=' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'scene' Name '.' Punctuation 'participate' Name.Attribute ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'col' Name ' ' Text '=' Operator '=' Operator ' ' Text '1' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'scene' Name '.' Punctuation 'name' Name.Attribute ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text '{' Punctuation ' ' Text '\n' Text ' ' Text 'return' Keyword ' ' Text 'scene' Name '.' Punctuation 'pauseAmt' Name.Attribute ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'String' Name ' ' Text 'getColumnName' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'col' Name ')' Punctuation ' ' Text '{' Punctuation 'return' Keyword ' ' Text 'names' Name '[' Operator 'col' Name ']' Operator ';' Punctuation ' ' Text '}' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'Class' Name ' ' Text 'getColumnClass' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'c' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'getValueAt' Name '(' Punctuation '0' Literal.Number.Integer ',' Punctuation ' ' Text 'c' Name ')' Punctuation '.' Punctuation 'getClass' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'boolean' Keyword.Type ' ' Text 'isCellEditable' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'row' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'col' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'col' Name ' ' Text '!' Operator '=' Operator ' ' Text '1' Literal.Number.Integer ' ' Text '?' Operator ' ' Text 'true' Keyword.Constant ' ' Text ':' Punctuation ' ' Text 'false' Keyword.Constant ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'setValueAt' Name.Function '(' Punctuation 'Object' Name ' ' Text 'aValue' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'row' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'col' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'Surface' Name '.' Punctuation 'Scene' Name.Attribute ' ' Text 'scene' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'Surface' Name '.' Punctuation 'Scene' Name.Attribute ')' Punctuation ' ' Text 'surface' Name '.' Punctuation 'director' Name.Attribute '.' Punctuation 'get' Name.Attribute '(' Punctuation 'row' Name ')' Punctuation ';' Punctuation ' ' Text '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'col' Name ' ' Text '=' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'scene' Name '.' Punctuation 'participate' Name.Attribute ' ' Text '=' Operator ' ' Text 'aValue' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'col' Name ' ' Text '=' Operator '=' Operator ' ' Text '1' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'scene' Name '.' Punctuation 'name' Name.Attribute ' ' Text '=' Operator ' ' Text 'aValue' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text '{' Punctuation ' ' Text '\n' Text ' ' Text 'scene' Name '.' Punctuation 'pauseAmt' Name.Attribute ' ' Text '=' Operator ' ' Text 'aValue' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation ';' Punctuation '\n' Text ' ' Text '\n' Text ' ' Text 'table' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'JTable' Name '(' Punctuation 'dataModel' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'TableColumn' Name ' ' Text 'col' Name ' ' Text '=' Operator ' ' Text 'table' Name '.' Punctuation 'getColumn' Name.Attribute '(' Punctuation '"' Literal.String '"' Literal.String ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'col' Name '.' Punctuation 'setWidth' Name.Attribute '(' Punctuation '16' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'col' Name '.' Punctuation 'setMinWidth' Name.Attribute '(' Punctuation '16' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'col' Name '.' Punctuation 'setMaxWidth' Name.Attribute '(' Punctuation '20' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'col' Name ' ' Text '=' Operator ' ' Text 'table' Name '.' Punctuation 'getColumn' Name.Attribute '(' Punctuation '"' Literal.String 'Pause' Literal.String '"' Literal.String ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'col' Name '.' Punctuation 'setWidth' Name.Attribute '(' Punctuation '60' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'col' Name '.' Punctuation 'setMinWidth' Name.Attribute '(' Punctuation '60' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'col' Name '.' Punctuation 'setMaxWidth' Name.Attribute '(' Punctuation '60' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'table' Name '.' Punctuation 'sizeColumnsToFit' Name.Attribute '(' Punctuation '0' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text '\n' Text ' ' Text 'JScrollPane' Name ' ' Text 'scrollpane' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'JScrollPane' Name '(' Punctuation 'table' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'add' Name '(' Punctuation 'scrollpane' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '\n' Text ' ' Text 'JPanel' Name ' ' Text 'panel' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'JPanel' Name '(' Punctuation 'new' Keyword ' ' Text 'BorderLayout' Name '(' Punctuation ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'JButton' Name ' ' Text 'b' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'JButton' Name '(' Punctuation '"' Literal.String 'Unselect All' Literal.String '"' Literal.String ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'b' Name '.' Punctuation 'setHorizontalAlignment' Name.Attribute '(' Punctuation 'JButton' Name '.' Punctuation 'LEFT' Name.Attribute ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'Font' Name ' ' Text 'font' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Font' Name '(' Punctuation '"' Literal.String 'serif' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'Font' Name '.' Punctuation 'PLAIN' Name.Attribute ',' Punctuation ' ' Text '10' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'b' Name '.' Punctuation 'setFont' Name.Attribute '(' Punctuation 'font' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'b' Name '.' Punctuation 'addActionListener' Name.Attribute '(' Punctuation 'this' Keyword ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'panel' Name '.' Punctuation 'add' Name.Attribute '(' Punctuation '"' Literal.String 'West' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'b' Name ')' Punctuation ';' Punctuation '\n' Text '\n' Text ' ' Text 'JSlider' Name ' ' Text 'slider' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'JSlider' Name '(' Punctuation 'JSlider' Name '.' Punctuation 'HORIZONTAL' Name.Attribute ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '200' Literal.Number.Integer ',' Punctuation ' ' Text '(' Punctuation 'int' Keyword.Type ')' Punctuation ' ' Text 'surface' Name '.' Punctuation 'sleepAmt' Name.Attribute ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'slider' Name '.' Punctuation 'addChangeListener' Name.Attribute '(' Punctuation 'this' Keyword ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'TitledBorder' Name ' ' Text 'tb' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'TitledBorder' Name '(' Punctuation 'new' Keyword ' ' Text 'EtchedBorder' Name '(' Punctuation ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'tb' Name '.' Punctuation 'setTitleFont' Name.Attribute '(' Punctuation 'font' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'tb' Name '.' Punctuation 'setTitle' Name.Attribute '(' Punctuation '"' Literal.String 'Anim delay = ' Literal.String '"' Literal.String ' ' Text '+' Operator ' ' Text 'String' Name '.' Punctuation 'valueOf' Name.Attribute '(' Punctuation 'surface' Name '.' Punctuation 'sleepAmt' Name.Attribute ')' Punctuation ' ' Text '+' Operator ' ' Text '"' Literal.String ' ms' Literal.String '"' Literal.String ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'slider' Name '.' Punctuation 'setBorder' Name.Attribute '(' Punctuation 'tb' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'slider' Name '.' Punctuation 'setPreferredSize' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'Dimension' Name '(' Punctuation '140' Literal.Number.Integer ',' Punctuation '40' Literal.Number.Integer ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'slider' Name '.' Punctuation 'setMinimumSize' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'Dimension' Name '(' Punctuation '100' Literal.Number.Integer ',' Punctuation '40' Literal.Number.Integer ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'slider' Name '.' Punctuation 'setMaximumSize' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'Dimension' Name '(' Punctuation '180' Literal.Number.Integer ',' Punctuation '40' Literal.Number.Integer ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'panel' Name '.' Punctuation 'add' Name.Attribute '(' Punctuation '"' Literal.String 'East' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'slider' Name ')' Punctuation ';' Punctuation '\n' Text '\n' Text ' ' Text 'add' Name '(' Punctuation '"' Literal.String 'South' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'panel' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'actionPerformed' Name.Function '(' Punctuation 'ActionEvent' Name ' ' Text 'e' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'JButton' Name ' ' Text 'b' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'JButton' Name ')' Punctuation ' ' Text 'e' Name '.' Punctuation 'getSource' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'b' Name '.' Punctuation 'setSelected' Name.Attribute '(' Punctuation '!' Operator 'b' Name '.' Punctuation 'isSelected' Name.Attribute '(' Punctuation ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'b' Name '.' Punctuation 'setText' Name.Attribute '(' Punctuation 'b' Name '.' Punctuation 'isSelected' Name.Attribute '(' Punctuation ')' Punctuation ' ' Text '?' Operator ' ' Text '"' Literal.String 'Select All' Literal.String '"' Literal.String ' ' Text ':' Punctuation ' ' Text '"' Literal.String 'Unselect All' Literal.String '"' Literal.String ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'i' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation ' ' Text 'i' Name ' ' Text '<' Operator ' ' Text 'surface' Name '.' Punctuation 'director' Name.Attribute '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation ' ' Text 'i' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'Surface' Name '.' Punctuation 'Scene' Name.Attribute ' ' Text 'scene' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'Surface' Name '.' Punctuation 'Scene' Name.Attribute ')' Punctuation ' ' Text 'surface' Name '.' Punctuation 'director' Name.Attribute '.' Punctuation 'get' Name.Attribute '(' Punctuation 'i' Name ')' Punctuation ';' Punctuation ' ' Text '\n' Text ' ' Text 'scene' Name '.' Punctuation 'participate' Name.Attribute ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Boolean' Name '(' Punctuation '!' Operator 'b' Name '.' Punctuation 'isSelected' Name.Attribute '(' Punctuation ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\t ' Text 'table' Name '.' Punctuation 'tableChanged' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'TableModelEvent' Name '(' Punctuation 'dataModel' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'stateChanged' Name.Function '(' Punctuation 'ChangeEvent' Name ' ' Text 'e' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'JSlider' Name ' ' Text 'slider' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'JSlider' Name ')' Punctuation ' ' Text 'e' Name '.' Punctuation 'getSource' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'int' Keyword.Type ' ' Text 'value' Name ' ' Text '=' Operator ' ' Text 'slider' Name '.' Punctuation 'getValue' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'TitledBorder' Name ' ' Text 'tb' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'TitledBorder' Name ')' Punctuation ' ' Text 'slider' Name '.' Punctuation 'getBorder' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'tb' Name '.' Punctuation 'setTitle' Name.Attribute '(' Punctuation '"' Literal.String 'Anim delay = ' Literal.String '"' Literal.String ' ' Text '+' Operator ' ' Text 'String' Name '.' Punctuation 'valueOf' Name.Attribute '(' Punctuation 'value' Name ')' Punctuation ' ' Text '+' Operator ' ' Text '"' Literal.String ' ms' Literal.String '"' Literal.String ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'surface' Name '.' Punctuation 'sleepAmt' Name.Attribute ' ' Text '=' Operator ' ' Text '(' Punctuation 'long' Keyword.Type ')' Punctuation ' ' Text 'value' Name ';' Punctuation '\n' Text ' ' Text 'slider' Name '.' Punctuation 'repaint' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text '// End ScenesTable class\n' Comment.Single '\n' Text '\n' Text '\n' Text ' ' Text '/**\n * Surface is the stage where the Director plays its scenes.\n */' Comment.Multiline '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'class' Keyword.Declaration ' ' Text 'Surface' Name.Class ' ' Text 'extends' Keyword.Declaration ' ' Text 'JPanel' Name ' ' Text 'implements' Keyword.Declaration ' ' Text 'Runnable' Name ' ' Text '{' Punctuation '\n' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'Surface' Name ' ' Text 'surf' Name ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'Image' Name ' ' Text 'cupanim' Name ',' Punctuation ' ' Text 'java_logo' Name ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'BufferedImage' Name ' ' Text 'bimg' Name ';' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'Director' Name ' ' Text 'director' Name ';' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'index' Name ';' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'long' Keyword.Type ' ' Text 'sleepAmt' Name ' ' Text '=' Operator ' ' Text '30' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'Thread' Name ' ' Text 'thread' Name ';' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'Surface' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'surf' Name ' ' Text '=' Operator ' ' Text 'this' Keyword ';' Punctuation '\n' Text ' ' Text 'setBackground' Name '(' Punctuation 'black' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'setLayout' Name '(' Punctuation 'new' Keyword ' ' Text 'BorderLayout' Name '(' Punctuation ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'addMouseListener' Name '(' Punctuation 'new' Keyword ' ' Text 'MouseAdapter' Name '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'mouseClicked' Name.Function '(' Punctuation 'MouseEvent' Name ' ' Text 'e' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'thread' Name ' ' Text '=' Operator '=' Operator ' ' Text 'null' Keyword.Constant ')' Punctuation ' ' Text 'start' Name '(' Punctuation ')' Punctuation ';' Punctuation ' ' Text 'else' Keyword ' ' Text 'stop' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'cupanim' Name ' ' Text '=' Operator ' ' Text 'DemoImages' Name '.' Punctuation 'getImage' Name.Attribute '(' Punctuation '"' Literal.String 'cupanim.gif' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'this' Keyword ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'java_logo' Name ' ' Text '=' Operator ' ' Text 'DemoImages' Name '.' Punctuation 'getImage' Name.Attribute '(' Punctuation '"' Literal.String 'java_logo.png' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'this' Keyword ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'director' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Director' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'FontMetrics' Name ' ' Text 'getMetrics' Name.Function '(' Punctuation 'Font' Name ' ' Text 'font' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'surf' Name '.' Punctuation 'getFontMetrics' Name.Attribute '(' Punctuation 'font' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'paint' Name.Function '(' Punctuation 'Graphics' Name ' ' Text 'g' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'Dimension' Name ' ' Text 'd' Name ' ' Text '=' Operator ' ' Text 'getSize' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text '\t ' Text 'if' Keyword ' ' Text '(' Punctuation 'd' Name '.' Punctuation 'width' Name.Attribute ' ' Text '<' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ' ' Text '|' Operator '|' Operator ' ' Text 'd' Name '.' Punctuation 'height' Name.Attribute ' ' Text '<' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text '\t\t' Text 'return' Keyword ';' Punctuation '\n' Text '\t ' Text '}' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'bimg' Name ' ' Text '=' Operator '=' Operator ' ' Text 'null' Keyword.Constant ' ' Text '|' Operator '|' Operator ' ' Text 'bimg' Name '.' Punctuation 'getWidth' Name.Attribute '(' Punctuation ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text 'd' Name '.' Punctuation 'width' Name.Attribute ' ' Text '|' Operator '|' Operator ' ' Text 'bimg' Name '.' Punctuation 'getHeight' Name.Attribute '(' Punctuation ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text 'd' Name '.' Punctuation 'height' Name.Attribute ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'bimg' Name ' ' Text '=' Operator ' ' Text 'getGraphicsConfiguration' Name '(' Punctuation ')' Punctuation '.' Punctuation 'createCompatibleImage' Name.Attribute '(' Punctuation 'd' Name '.' Punctuation 'width' Name.Attribute ',' Punctuation ' ' Text 'd' Name '.' Punctuation 'height' Name.Attribute ')' Punctuation ';' Punctuation ' ' Text '\n' Text ' ' Text '// reset future scenes\n' Comment.Single ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'i' Name ' ' Text '=' Operator ' ' Text 'index' Name '+' Operator '1' Literal.Number.Integer ';' Punctuation ' ' Text 'i' Name ' ' Text '<' Operator ' ' Text 'director' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation ' ' Text 'i' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text '(' Punctuation '(' Punctuation 'Scene' Name ')' Punctuation ' ' Text 'director' Name '.' Punctuation 'get' Name.Attribute '(' Punctuation 'i' Name ')' Punctuation ')' Punctuation '.' Punctuation 'reset' Name.Attribute '(' Punctuation 'd' Name '.' Punctuation 'width' Name.Attribute ',' Punctuation ' ' Text 'd' Name '.' Punctuation 'height' Name.Attribute ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'Scene' Name ' ' Text 'scene' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'Scene' Name ')' Punctuation ' ' Text 'director' Name '.' Punctuation 'get' Name.Attribute '(' Punctuation 'index' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'scene' Name '.' Punctuation 'index' Name.Attribute ' ' Text '<' Operator '=' Operator ' ' Text 'scene' Name '.' Punctuation 'length' Name.Attribute ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'thread' Name ' ' Text '!' Operator '=' Operator ' ' Text 'null' Keyword.Constant ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'scene' Name '.' Punctuation 'step' Name.Attribute '(' Punctuation 'd' Name '.' Punctuation 'width' Name.Attribute ',' Punctuation ' ' Text 'd' Name '.' Punctuation 'height' Name.Attribute ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'Graphics2D' Name ' ' Text 'g2' Name ' ' Text '=' Operator ' ' Text 'bimg' Name '.' Punctuation 'createGraphics' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setRenderingHint' Name.Attribute '(' Punctuation 'RenderingHints' Name '.' Punctuation 'KEY_ANTIALIASING' Name.Attribute ',' Punctuation ' ' Text '\n' Text ' ' Text 'RenderingHints' Name '.' Punctuation 'VALUE_ANTIALIAS_ON' Name.Attribute ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setBackground' Name.Attribute '(' Punctuation 'getBackground' Name '(' Punctuation ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'clearRect' Name.Attribute '(' Punctuation '0' Literal.Number.Integer ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text 'd' Name '.' Punctuation 'width' Name.Attribute ',' Punctuation ' ' Text 'd' Name '.' Punctuation 'height' Name.Attribute ')' Punctuation ';' Punctuation '\n' Text ' ' Text '\n' Text ' ' Text 'scene' Name '.' Punctuation 'render' Name.Attribute '(' Punctuation 'd' Name '.' Punctuation 'width' Name.Attribute ',' Punctuation ' ' Text 'd' Name '.' Punctuation 'height' Name.Attribute ',' Punctuation ' ' Text 'g2' Name ')' Punctuation ';' Punctuation '\n' Text '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'thread' Name ' ' Text '!' Operator '=' Operator ' ' Text 'null' Keyword.Constant ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text '// increment scene.index after scene.render\n' Comment.Single ' ' Text 'scene' Name '.' Punctuation 'index' Name.Attribute '+' Operator '+' Operator ';' Punctuation ' ' Text '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'dispose' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'g' Name '.' Punctuation 'drawImage' Name.Attribute '(' Punctuation 'bimg' Name ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text 'this' Keyword ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'start' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'thread' Name ' ' Text '=' Operator '=' Operator ' ' Text 'null' Keyword.Constant ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'thread' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Thread' Name '(' Punctuation 'this' Keyword ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'thread' Name '.' Punctuation 'setPriority' Name.Attribute '(' Punctuation 'Thread' Name '.' Punctuation 'MIN_PRIORITY' Name.Attribute ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'thread' Name '.' Punctuation 'setName' Name.Attribute '(' Punctuation '"' Literal.String 'Intro' Literal.String '"' Literal.String ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'thread' Name '.' Punctuation 'start' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'synchronized' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'stop' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'thread' Name ' ' Text '!' Operator '=' Operator ' ' Text 'null' Keyword.Constant ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'thread' Name '.' Punctuation 'interrupt' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'thread' Name ' ' Text '=' Operator ' ' Text 'null' Keyword.Constant ';' Punctuation '\n' Text ' ' Text 'notifyAll' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'reset' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'index' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'Dimension' Name ' ' Text 'd' Name ' ' Text '=' Operator ' ' Text 'getSize' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'i' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation ' ' Text 'i' Name ' ' Text '<' Operator ' ' Text 'director' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation ' ' Text 'i' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text '(' Punctuation '(' Punctuation 'Scene' Name ')' Punctuation ' ' Text 'director' Name '.' Punctuation 'get' Name.Attribute '(' Punctuation 'i' Name ')' Punctuation ')' Punctuation '.' Punctuation 'reset' Name.Attribute '(' Punctuation 'd' Name '.' Punctuation 'width' Name.Attribute ',' Punctuation ' ' Text 'd' Name '.' Punctuation 'height' Name.Attribute ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'run' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text '\n' Text ' ' Text 'Thread' Name ' ' Text 'me' Name ' ' Text '=' Operator ' ' Text 'Thread' Name '.' Punctuation 'currentThread' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text '\n' Text ' ' Text 'while' Keyword ' ' Text '(' Punctuation 'thread' Name ' ' Text '=' Operator '=' Operator ' ' Text 'me' Name ' ' Text '&' Operator '&' Operator ' ' Text '!' Operator 'isShowing' Name '(' Punctuation ')' Punctuation ' ' Text '|' Operator '|' Operator ' ' Text 'getSize' Name '(' Punctuation ')' Punctuation '.' Punctuation 'width' Name.Attribute ' ' Text '<' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'try' Keyword ' ' Text '{' Punctuation '\n' Text ' ' Text 'thread' Name '.' Punctuation 'sleep' Name.Attribute '(' Punctuation '500' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'catch' Keyword ' ' Text '(' Punctuation 'InterruptedException' Name ' ' Text 'e' Name ')' Punctuation ' ' Text '{' Punctuation ' ' Text 'return' Keyword ';' Punctuation ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'index' Name ' ' Text '=' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'reset' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'while' Keyword ' ' Text '(' Punctuation 'thread' Name ' ' Text '=' Operator '=' Operator ' ' Text 'me' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'Scene' Name ' ' Text 'scene' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'Scene' Name ')' Punctuation ' ' Text 'director' Name '.' Punctuation 'get' Name.Attribute '(' Punctuation 'index' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation '(' Punctuation 'Boolean' Name ')' Punctuation ' ' Text 'scene' Name '.' Punctuation 'participate' Name.Attribute ')' Punctuation '.' Punctuation 'booleanValue' Name.Attribute '(' Punctuation ')' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'repaint' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'try' Keyword ' ' Text '{' Punctuation '\n' Text ' ' Text 'thread' Name '.' Punctuation 'sleep' Name.Attribute '(' Punctuation 'sleepAmt' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'catch' Keyword ' ' Text '(' Punctuation 'InterruptedException' Name ' ' Text 'e' Name ')' Punctuation ' ' Text '{' Punctuation ' ' Text 'break' Keyword ';' Punctuation ' ' Text '}' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'scene' Name '.' Punctuation 'index' Name.Attribute ' ' Text '>' Operator ' ' Text 'scene' Name '.' Punctuation 'length' Name.Attribute ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'scene' Name '.' Punctuation 'pause' Name.Attribute '(' Punctuation 'thread' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '+' Operator '+' Operator 'index' Name ' ' Text '>' Operator '=' Operator ' ' Text 'director' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'reset' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '+' Operator '+' Operator 'index' Name ' ' Text '>' Operator '=' Operator ' ' Text 'director' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'reset' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'thread' Name ' ' Text '=' Operator ' ' Text 'null' Keyword.Constant ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text '\n' Text ' ' Text '/**\n * Part is a piece of the scene. Classes must implement Part\n * inorder to participate in a scene.\n */' Comment.Multiline '\n' Text ' ' Text 'interface' Keyword.Declaration ' ' Text 'Part' Name.Class ' ' Text '{' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'reset' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'newwidth' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'newheight' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'step' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'render' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ',' Punctuation ' ' Text 'Graphics2D' Name ' ' Text 'g2' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getBegin' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getEnd' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text '\n' Text ' ' Text '/**\n * Director is the holder of the scenes, their names & pause amounts\n * between scenes.\n */' Comment.Multiline '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'class' Keyword.Declaration ' ' Text 'Director' Name.Class ' ' Text 'extends' Keyword.Declaration ' ' Text 'Vector' Name ' ' Text '{' Punctuation '\n' Text '\n' Text ' ' Text 'GradientPaint' Name ' ' Text 'gp' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'GradientPaint' Name '(' Punctuation '0' Literal.Number.Integer ',' Punctuation '40' Literal.Number.Integer ',' Punctuation 'blue' Name ',' Punctuation '38' Literal.Number.Integer ',' Punctuation '2' Literal.Number.Integer ',' Punctuation 'black' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'Font' Name ' ' Text 'f1' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Font' Name '(' Punctuation '"' Literal.String 'serif' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'Font' Name '.' Punctuation 'PLAIN' Name.Attribute ',' Punctuation ' ' Text '200' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'Font' Name ' ' Text 'f2' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Font' Name '(' Punctuation '"' Literal.String 'serif' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'Font' Name '.' Punctuation 'PLAIN' Name.Attribute ',' Punctuation ' ' Text '120' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'Font' Name ' ' Text 'f3' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Font' Name '(' Punctuation '"' Literal.String 'serif' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'Font' Name '.' Punctuation 'PLAIN' Name.Attribute ',' Punctuation ' ' Text '72' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'Object' Name ' ' Text 'parts' Name '[' Operator ']' Operator '[' Operator ']' Operator '[' Operator ']' Operator ' ' Text '=' Operator ' ' Text '{' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text '{' Punctuation ' ' Text '"' Literal.String 'J - scale text on gradient' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String '0' Literal.String '"' Literal.String ' ' Text '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text 'new' Keyword ' ' Text 'GpE' Name '(' Punctuation 'GpE' Name '.' Punctuation 'BURI' Name.Attribute ',' Punctuation ' ' Text 'black' Name ',' Punctuation ' ' Text 'blue' Name ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '20' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'TxE' Name '(' Punctuation '"' Literal.String 'J' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'f1' Name ',' Punctuation ' ' Text 'TxE' Name '.' Punctuation 'SCI' Name.Attribute ',' Punctuation ' ' Text 'yellow' Name ',' Punctuation ' ' Text '2' Literal.Number.Integer ',' Punctuation ' ' Text '20' Literal.Number.Integer ')' Punctuation ' ' Text '}' Punctuation ' ' Text '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text '{' Punctuation ' ' Text '"' Literal.String '2 - scale & rotate text on gradient' Literal.String '"' Literal.String ' ' Text ',' Punctuation ' ' Text '"' Literal.String '0' Literal.String '"' Literal.String ' ' Text '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text 'new' Keyword ' ' Text 'GpE' Name '(' Punctuation 'GpE' Name '.' Punctuation 'BURI' Name.Attribute ',' Punctuation ' ' Text 'blue' Name ',' Punctuation ' ' Text 'black' Name ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '22' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'TxE' Name '(' Punctuation '"' Literal.String '2' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'f1' Name ',' Punctuation ' ' Text 'TxE' Name '.' Punctuation 'RI' Name.Attribute ' ' Text '|' Operator ' ' Text 'TxE' Name '.' Punctuation 'SCI' Name.Attribute ',' Punctuation ' ' Text 'yellow' Name ',' Punctuation ' ' Text '2' Literal.Number.Integer ',' Punctuation ' ' Text '22' Literal.Number.Integer ')' Punctuation ' ' Text '}' Punctuation ' ' Text '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text '{' Punctuation ' ' Text '"' Literal.String 'D - scale text on gradient' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String '0' Literal.String '"' Literal.String ' ' Text '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text 'new' Keyword ' ' Text 'GpE' Name '(' Punctuation 'GpE' Name '.' Punctuation 'BURI' Name.Attribute ',' Punctuation ' ' Text 'black' Name ',' Punctuation ' ' Text 'blue' Name ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '20' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'TxE' Name '(' Punctuation '"' Literal.String 'D' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'f1' Name ',' Punctuation ' ' Text 'TxE' Name '.' Punctuation 'SCI' Name.Attribute ',' Punctuation ' ' Text 'yellow' Name ',' Punctuation ' ' Text '2' Literal.Number.Integer ',' Punctuation ' ' Text '20' Literal.Number.Integer ')' Punctuation ' ' Text '}' Punctuation ' ' Text '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text '{' Punctuation ' ' Text '"' Literal.String 'Java2D - scale & rotate text on gradient' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String '1000' Literal.String '"' Literal.String ' ' Text '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text 'new' Keyword ' ' Text 'GpE' Name '(' Punctuation 'GpE' Name '.' Punctuation 'SIH' Name.Attribute ',' Punctuation ' ' Text 'blue' Name ',' Punctuation ' ' Text 'black' Name ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '40' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'TxE' Name '(' Punctuation '"' Literal.String 'Java2D' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'f2' Name ',' Punctuation ' ' Text 'TxE' Name '.' Punctuation 'RI' Name.Attribute ' ' Text '|' Operator ' ' Text 'TxE' Name '.' Punctuation 'SCI' Name.Attribute ',' Punctuation ' ' Text 'yellow' Name ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '40' Literal.Number.Integer ')' Punctuation ' ' Text '}' Punctuation '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text '{' Punctuation ' ' Text '"' Literal.String 'Previous scene dither dissolve out' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String '0' Literal.String '"' Literal.String '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text 'new' Keyword ' ' Text 'DdE' Name '(' Punctuation '0' Literal.Number.Integer ',' Punctuation ' ' Text '20' Literal.Number.Integer ',' Punctuation ' ' Text '1' Literal.Number.Integer ')' Punctuation ' ' Text '}' Punctuation '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text '{' Punctuation ' ' Text '"' Literal.String 'Graphics Features' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String '999' Literal.String '"' Literal.String ' ' Text '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text 'new' Keyword ' ' Text 'Temp' Name '(' Punctuation 'Temp' Name '.' Punctuation 'RECT' Name.Attribute ',' Punctuation ' ' Text 'null' Keyword.Constant ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '15' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'Temp' Name '(' Punctuation 'Temp' Name '.' Punctuation 'IMG' Name.Attribute ',' Punctuation ' ' Text 'java_logo' Name ',' Punctuation ' ' Text '2' Literal.Number.Integer ',' Punctuation ' ' Text '15' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'Temp' Name '(' Punctuation 'Temp' Name '.' Punctuation 'RNA' Name.Attribute ' ' Text '|' Operator ' ' Text 'Temp' Name '.' Punctuation 'INA' Name.Attribute ',' Punctuation ' ' Text 'java_logo' Name ',' Punctuation ' ' Text '16' Literal.Number.Integer ',' Punctuation ' ' Text '130' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'Features' Name '(' Punctuation 'Features' Name '.' Punctuation 'GRAPHICS' Name.Attribute ',' Punctuation ' ' Text '16' Literal.Number.Integer ',' Punctuation ' ' Text '130' Literal.Number.Integer ')' Punctuation ' ' Text '}' Punctuation '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text '{' Punctuation ' ' Text '"' Literal.String 'Java2D - texture text on gradient' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String '1000' Literal.String '"' Literal.String '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text 'new' Keyword ' ' Text 'GpE' Name '(' Punctuation 'GpE' Name '.' Punctuation 'WI' Name.Attribute ',' Punctuation ' ' Text 'blue' Name ',' Punctuation ' ' Text 'black' Name ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '20' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'GpE' Name '(' Punctuation 'GpE' Name '.' Punctuation 'WD' Name.Attribute ',' Punctuation ' ' Text 'blue' Name ',' Punctuation ' ' Text 'black' Name ',' Punctuation ' ' Text '21' Literal.Number.Integer ',' Punctuation ' ' Text '40' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'TpE' Name '(' Punctuation 'TpE' Name '.' Punctuation 'OI' Name.Attribute ' ' Text '|' Operator ' ' Text 'TpE' Name '.' Punctuation 'NF' Name.Attribute ',' Punctuation ' ' Text 'black' Name ',' Punctuation ' ' Text 'yellow' Name ',' Punctuation ' ' Text '4' Literal.Number.Integer ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '10' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'TpE' Name '(' Punctuation 'TpE' Name '.' Punctuation 'OD' Name.Attribute ' ' Text '|' Operator ' ' Text 'TpE' Name '.' Punctuation 'NF' Name.Attribute ',' Punctuation ' ' Text 'black' Name ',' Punctuation ' ' Text 'yellow' Name ',' Punctuation ' ' Text '4' Literal.Number.Integer ',' Punctuation ' ' Text '11' Literal.Number.Integer ',' Punctuation ' ' Text '20' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'TpE' Name '(' Punctuation 'TpE' Name '.' Punctuation 'OI' Name.Attribute ' ' Text '|' Operator ' ' Text 'TpE' Name '.' Punctuation 'NF' Name.Attribute ' ' Text '|' Operator ' ' Text 'TpE' Name '.' Punctuation 'HAF' Name.Attribute ',' Punctuation ' ' Text 'black' Name ',' Punctuation ' ' Text 'yellow' Name ',' Punctuation '5' Literal.Number.Integer ',' Punctuation '21' Literal.Number.Integer ',' Punctuation '40' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'TxE' Name '(' Punctuation '"' Literal.String 'Java2D' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'f2' Name ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text 'null' Keyword.Constant ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '40' Literal.Number.Integer ')' Punctuation ' ' Text '}' Punctuation '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text '{' Punctuation ' ' Text '"' Literal.String 'Previous scene random close out' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String '0' Literal.String '"' Literal.String '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text 'new' Keyword ' ' Text 'CoE' Name '(' Punctuation 'CoE' Name '.' Punctuation 'RAND' Name.Attribute ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '20' Literal.Number.Integer ')' Punctuation ' ' Text '}' Punctuation ' ' Text '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text '{' Punctuation ' ' Text '"' Literal.String 'Text Features' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String '999' Literal.String '"' Literal.String ' ' Text '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text 'new' Keyword ' ' Text 'Temp' Name '(' Punctuation 'Temp' Name '.' Punctuation 'RECT' Name.Attribute ',' Punctuation ' ' Text 'null' Keyword.Constant ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '15' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'Temp' Name '(' Punctuation 'Temp' Name '.' Punctuation 'IMG' Name.Attribute ',' Punctuation ' ' Text 'java_logo' Name ',' Punctuation ' ' Text '2' Literal.Number.Integer ',' Punctuation ' ' Text '15' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'Temp' Name '(' Punctuation 'Temp' Name '.' Punctuation 'RNA' Name.Attribute ' ' Text '|' Operator ' ' Text 'Temp' Name '.' Punctuation 'INA' Name.Attribute ',' Punctuation ' ' Text 'java_logo' Name ',' Punctuation ' ' Text '16' Literal.Number.Integer ',' Punctuation ' ' Text '130' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'Features' Name '(' Punctuation 'Features' Name '.' Punctuation 'TEXT' Name.Attribute ',' Punctuation ' ' Text '16' Literal.Number.Integer ',' Punctuation ' ' Text '130' Literal.Number.Integer ')' Punctuation ' ' Text '}' Punctuation '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text '{' Punctuation ' ' Text '"' Literal.String 'Java2D - composite text on texture' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String '1000' Literal.String '"' Literal.String '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text 'new' Keyword ' ' Text 'TpE' Name '(' Punctuation 'TpE' Name '.' Punctuation 'RI' Name.Attribute ',' Punctuation ' ' Text 'black' Name ',' Punctuation ' ' Text 'gp' Name ',' Punctuation ' ' Text '40' Literal.Number.Integer ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '20' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'TpE' Name '(' Punctuation 'TpE' Name '.' Punctuation 'RD' Name.Attribute ',' Punctuation ' ' Text 'black' Name ',' Punctuation ' ' Text 'gp' Name ',' Punctuation ' ' Text '40' Literal.Number.Integer ',' Punctuation ' ' Text '21' Literal.Number.Integer ',' Punctuation ' ' Text '40' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'TpE' Name '(' Punctuation 'TpE' Name '.' Punctuation 'RI' Name.Attribute ',' Punctuation ' ' Text 'black' Name ',' Punctuation ' ' Text 'gp' Name ',' Punctuation ' ' Text '40' Literal.Number.Integer ',' Punctuation ' ' Text '41' Literal.Number.Integer ',' Punctuation ' ' Text '60' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'TxE' Name '(' Punctuation '"' Literal.String 'Java2D' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'f2' Name ',' Punctuation ' ' Text 'TxE' Name '.' Punctuation 'AC' Name.Attribute ',' Punctuation ' ' Text 'yellow' Name ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '60' Literal.Number.Integer ')' Punctuation ' ' Text '}' Punctuation '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text '{' Punctuation ' ' Text '"' Literal.String 'Previous scene dither dissolve out' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String '0' Literal.String '"' Literal.String '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text 'new' Keyword ' ' Text 'DdE' Name '(' Punctuation '0' Literal.Number.Integer ',' Punctuation ' ' Text '20' Literal.Number.Integer ',' Punctuation ' ' Text '4' Literal.Number.Integer ')' Punctuation ' ' Text '}' Punctuation '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text '{' Punctuation ' ' Text '"' Literal.String 'Imaging Features' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String '999' Literal.String '"' Literal.String ' ' Text '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text 'new' Keyword ' ' Text 'Temp' Name '(' Punctuation 'Temp' Name '.' Punctuation 'RECT' Name.Attribute ',' Punctuation ' ' Text 'null' Keyword.Constant ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '15' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'Temp' Name '(' Punctuation 'Temp' Name '.' Punctuation 'IMG' Name.Attribute ',' Punctuation ' ' Text 'java_logo' Name ',' Punctuation ' ' Text '2' Literal.Number.Integer ',' Punctuation ' ' Text '15' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'Temp' Name '(' Punctuation 'Temp' Name '.' Punctuation 'RNA' Name.Attribute ' ' Text '|' Operator ' ' Text 'Temp' Name '.' Punctuation 'INA' Name.Attribute ',' Punctuation ' ' Text 'java_logo' Name ',' Punctuation ' ' Text '16' Literal.Number.Integer ',' Punctuation ' ' Text '130' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'Features' Name '(' Punctuation 'Features' Name '.' Punctuation 'IMAGES' Name.Attribute ',' Punctuation ' ' Text '16' Literal.Number.Integer ',' Punctuation ' ' Text '130' Literal.Number.Integer ')' Punctuation ' ' Text '}' Punctuation '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text '{' Punctuation ' ' Text '"' Literal.String 'Java2D - text on gradient' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String '1000' Literal.String '"' Literal.String ' ' Text '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text 'new' Keyword ' ' Text 'GpE' Name '(' Punctuation 'GpE' Name '.' Punctuation 'SDH' Name.Attribute ',' Punctuation ' ' Text 'blue' Name ',' Punctuation ' ' Text 'black' Name ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '20' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'GpE' Name '(' Punctuation 'GpE' Name '.' Punctuation 'SIH' Name.Attribute ',' Punctuation ' ' Text 'blue' Name ',' Punctuation ' ' Text 'black' Name ',' Punctuation ' ' Text '21' Literal.Number.Integer ',' Punctuation ' ' Text '40' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'GpE' Name '(' Punctuation 'GpE' Name '.' Punctuation 'SDH' Name.Attribute ',' Punctuation ' ' Text 'blue' Name ',' Punctuation ' ' Text 'black' Name ',' Punctuation ' ' Text '41' Literal.Number.Integer ',' Punctuation ' ' Text '50' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'GpE' Name '(' Punctuation 'GpE' Name '.' Punctuation 'INC' Name.Attribute ' ' Text '|' Operator ' ' Text 'GpE' Name '.' Punctuation 'NF' Name.Attribute ',' Punctuation ' ' Text 'red' Name ',' Punctuation ' ' Text 'yellow' Name ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '50' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'TxE' Name '(' Punctuation '"' Literal.String 'Java2D' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'f2' Name ',' Punctuation ' ' Text 'TxE' Name '.' Punctuation 'NOP' Name.Attribute ',' Punctuation ' ' Text 'null' Keyword.Constant ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '50' Literal.Number.Integer ')' Punctuation ' ' Text '}' Punctuation '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text '{' Punctuation ' ' Text '"' Literal.String 'Previous scene ellipse close out' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String '0' Literal.String '"' Literal.String '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text 'new' Keyword ' ' Text 'CoE' Name '(' Punctuation 'CoE' Name '.' Punctuation 'OVAL' Name.Attribute ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '20' Literal.Number.Integer ')' Punctuation ' ' Text '}' Punctuation ' ' Text '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text '{' Punctuation ' ' Text '"' Literal.String 'Color Features' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String '999' Literal.String '"' Literal.String ' ' Text '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text 'new' Keyword ' ' Text 'Temp' Name '(' Punctuation 'Temp' Name '.' Punctuation 'RECT' Name.Attribute ',' Punctuation ' ' Text 'null' Keyword.Constant ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '15' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'Temp' Name '(' Punctuation 'Temp' Name '.' Punctuation 'IMG' Name.Attribute ',' Punctuation ' ' Text 'java_logo' Name ',' Punctuation ' ' Text '2' Literal.Number.Integer ',' Punctuation ' ' Text '15' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'Temp' Name '(' Punctuation 'Temp' Name '.' Punctuation 'RNA' Name.Attribute ' ' Text '|' Operator ' ' Text 'Temp' Name '.' Punctuation 'INA' Name.Attribute ',' Punctuation ' ' Text 'java_logo' Name ',' Punctuation ' ' Text '16' Literal.Number.Integer ',' Punctuation ' ' Text '99' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'Features' Name '(' Punctuation 'Features' Name '.' Punctuation 'COLOR' Name.Attribute ',' Punctuation ' ' Text '16' Literal.Number.Integer ',' Punctuation ' ' Text '99' Literal.Number.Integer ')' Punctuation ' ' Text '}' Punctuation '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text '{' Punctuation ' ' Text '"' Literal.String 'Java2D - composite and rotate text on paints' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String '2000' Literal.String '"' Literal.String ' ' Text '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text 'new' Keyword ' ' Text 'GpE' Name '(' Punctuation 'GpE' Name '.' Punctuation 'BURI' Name.Attribute ',' Punctuation ' ' Text 'black' Name ',' Punctuation ' ' Text 'blue' Name ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '20' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'GpE' Name '(' Punctuation 'GpE' Name '.' Punctuation 'BURD' Name.Attribute ',' Punctuation ' ' Text 'black' Name ',' Punctuation ' ' Text 'blue' Name ',' Punctuation ' ' Text '21' Literal.Number.Integer ',' Punctuation ' ' Text '30' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'TpE' Name '(' Punctuation 'TpE' Name '.' Punctuation 'OI' Name.Attribute ' ' Text '|' Operator ' ' Text 'TpE' Name '.' Punctuation 'HAF' Name.Attribute ',' Punctuation ' ' Text 'black' Name ',' Punctuation ' ' Text 'blue' Name ',' Punctuation ' ' Text '10' Literal.Number.Integer ',' Punctuation ' ' Text '31' Literal.Number.Integer ',' Punctuation ' ' Text '40' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'TxE' Name '(' Punctuation '"' Literal.String 'Java2D' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'f2' Name ',' Punctuation ' ' Text 'TxE' Name '.' Punctuation 'AC' Name.Attribute ' ' Text '|' Operator ' ' Text 'TxE' Name '.' Punctuation 'RI' Name.Attribute ',' Punctuation ' ' Text 'yellow' Name ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '40' Literal.Number.Integer ')' Punctuation ' ' Text '}' Punctuation '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text '{' Punctuation ' ' Text '"' Literal.String 'Previous scene subimage transform out' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String '0' Literal.String '"' Literal.String ' ' Text '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text 'new' Keyword ' ' Text 'SiE' Name '(' Punctuation '60' Literal.Number.Integer ',' Punctuation ' ' Text '60' Literal.Number.Integer ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '40' Literal.Number.Integer ')' Punctuation ' ' Text '}' Punctuation '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text '{' Punctuation ' ' Text '"' Literal.String 'CREDITS - transform in' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String '1000' Literal.String '"' Literal.String ' ' Text '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text 'new' Keyword ' ' Text 'LnE' Name '(' Punctuation 'LnE' Name '.' Punctuation 'ACI' Name.Attribute ' ' Text '|' Operator ' ' Text 'LnE' Name '.' Punctuation 'ZOOMI' Name.Attribute ' ' Text '|' Operator ' ' Text 'LnE' Name '.' Punctuation 'RI' Name.Attribute ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '60' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'TxE' Name '(' Punctuation '"' Literal.String 'CREDITS' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'f3' Name ',' Punctuation ' ' Text 'TxE' Name '.' Punctuation 'AC' Name.Attribute ' ' Text '|' Operator ' ' Text 'TxE' Name '.' Punctuation 'SCI' Name.Attribute ',' Punctuation ' ' Text 'Color' Name '.' Punctuation 'red' Name.Attribute ',' Punctuation '20' Literal.Number.Integer ',' Punctuation '30' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'TxE' Name '(' Punctuation '"' Literal.String 'CREDITS' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'f3' Name ',' Punctuation ' ' Text 'TxE' Name '.' Punctuation 'SCXD' Name.Attribute ',' Punctuation ' ' Text 'Color' Name '.' Punctuation 'red' Name.Attribute ',' Punctuation ' ' Text '31' Literal.Number.Integer ',' Punctuation ' ' Text '38' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'TxE' Name '(' Punctuation '"' Literal.String 'CREDITS' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'f3' Name ',' Punctuation ' ' Text 'TxE' Name '.' Punctuation 'SCXI' Name.Attribute ',' Punctuation ' ' Text 'Color' Name '.' Punctuation 'red' Name.Attribute ',' Punctuation ' ' Text '39' Literal.Number.Integer ',' Punctuation ' ' Text '48' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'TxE' Name '(' Punctuation '"' Literal.String 'CREDITS' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'f3' Name ',' Punctuation ' ' Text 'TxE' Name '.' Punctuation 'SCXD' Name.Attribute ',' Punctuation ' ' Text 'Color' Name '.' Punctuation 'red' Name.Attribute ',' Punctuation ' ' Text '49' Literal.Number.Integer ',' Punctuation ' ' Text '54' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'TxE' Name '(' Punctuation '"' Literal.String 'CREDITS' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'f3' Name ',' Punctuation ' ' Text 'TxE' Name '.' Punctuation 'SCXI' Name.Attribute ',' Punctuation ' ' Text 'Color' Name '.' Punctuation 'red' Name.Attribute ',' Punctuation ' ' Text '55' Literal.Number.Integer ',' Punctuation ' ' Text '60' Literal.Number.Integer ')' Punctuation ' ' Text '}' Punctuation '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text '{' Punctuation ' ' Text '"' Literal.String 'CREDITS - transform out' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String '0' Literal.String '"' Literal.String ' ' Text '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text 'new' Keyword ' ' Text 'LnE' Name '(' Punctuation 'LnE' Name '.' Punctuation 'ACD' Name.Attribute ' ' Text '|' Operator ' ' Text 'LnE' Name '.' Punctuation 'ZOOMD' Name.Attribute ' ' Text '|' Operator ' ' Text 'LnE' Name '.' Punctuation 'RD' Name.Attribute ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '45' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'TxE' Name '(' Punctuation '"' Literal.String 'CREDITS' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'f3' Name ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text 'Color' Name '.' Punctuation 'red' Name.Attribute ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '9' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'TxE' Name '(' Punctuation '"' Literal.String 'CREDITS' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'f3' Name ',' Punctuation ' ' Text 'TxE' Name '.' Punctuation 'SCD' Name.Attribute ' ' Text '|' Operator ' ' Text 'TxE' Name '.' Punctuation 'RD' Name.Attribute ',' Punctuation ' ' Text 'Color' Name '.' Punctuation 'red' Name.Attribute ',' Punctuation '10' Literal.Number.Integer ',' Punctuation '30' Literal.Number.Integer ')' Punctuation '}' Punctuation '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text '{' Punctuation ' ' Text '"' Literal.String 'Contributors' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String '1000' Literal.String '"' Literal.String ' ' Text '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text 'new' Keyword ' ' Text 'Temp' Name '(' Punctuation 'Temp' Name '.' Punctuation 'RECT' Name.Attribute ',' Punctuation ' ' Text 'null' Keyword.Constant ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '30' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'Temp' Name '(' Punctuation 'Temp' Name '.' Punctuation 'IMG' Name.Attribute ',' Punctuation ' ' Text 'cupanim' Name ',' Punctuation ' ' Text '4' Literal.Number.Integer ',' Punctuation ' ' Text '30' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'Temp' Name '(' Punctuation 'Temp' Name '.' Punctuation 'RNA' Name.Attribute ' ' Text '|' Operator ' ' Text 'Temp' Name '.' Punctuation 'INA' Name.Attribute ',' Punctuation ' ' Text 'cupanim' Name ',' Punctuation ' ' Text '31' Literal.Number.Integer ',' Punctuation ' ' Text '200' Literal.Number.Integer ')' Punctuation ',' Punctuation '\n' Text ' ' Text 'new' Keyword ' ' Text 'Contributors' Name '(' Punctuation '34' Literal.Number.Integer ',' Punctuation ' ' Text '200' Literal.Number.Integer ')' Punctuation ' ' Text '}' Punctuation ' ' Text '}' Punctuation ',' Punctuation '\n' Text ' ' Text '}' Punctuation ';' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'Director' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'i' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation ' ' Text 'i' Name ' ' Text '<' Operator ' ' Text 'parts' Name '.' Punctuation 'length' Name.Attribute ';' Punctuation ' ' Text 'i' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'Vector' Name ' ' Text 'v' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Vector' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'j' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation ' ' Text 'j' Name ' ' Text '<' Operator ' ' Text 'parts' Name '[' Operator 'i' Name ']' Operator '[' Operator '1' Literal.Number.Integer ']' Operator '.' Punctuation 'length' Name.Attribute ';' Punctuation ' ' Text 'j' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'v' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'parts' Name '[' Operator 'i' Name ']' Operator '[' Operator '1' Literal.Number.Integer ']' Operator '[' Operator 'j' Name ']' Operator ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'addElement' Name '(' Punctuation 'new' Keyword ' ' Text 'Scene' Name '(' Punctuation 'v' Name ',' Punctuation ' ' Text 'parts' Name '[' Operator 'i' Name ']' Operator '[' Operator '0' Literal.Number.Integer ']' Operator '[' Operator '0' Literal.Number.Integer ']' Operator ',' Punctuation ' ' Text 'parts' Name '[' Operator 'i' Name ']' Operator '[' Operator '0' Literal.Number.Integer ']' Operator '[' Operator '1' Literal.Number.Integer ']' Operator ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '\n' Text '\n' Text '\n' Text ' ' Text '/**\n * Scene is the manager of the parts.\n */' Comment.Multiline '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'class' Keyword.Declaration ' ' Text 'Scene' Name.Class ' ' Text 'extends' Keyword.Declaration ' ' Text 'Object' Name ' ' Text '{' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'Object' Name ' ' Text 'name' Name ';' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'Object' Name ' ' Text 'participate' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Boolean' Name '(' Punctuation 'true' Keyword.Constant ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'Object' Name ' ' Text 'pauseAmt' Name ';' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'Vector' Name ' ' Text 'parts' Name ';' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'index' Name ';' Punctuation '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'length' Name ';' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'Scene' Name.Function '(' Punctuation 'Vector' Name ' ' Text 'parts' Name ',' Punctuation ' ' Text 'Object' Name ' ' Text 'name' Name ',' Punctuation ' ' Text 'Object' Name ' ' Text 'pauseAmt' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'name' Name.Attribute ' ' Text '=' Operator ' ' Text 'name' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'parts' Name.Attribute ' ' Text '=' Operator ' ' Text 'parts' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'pauseAmt' Name.Attribute ' ' Text '=' Operator ' ' Text 'pauseAmt' Name ';' Punctuation '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'i' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation ' ' Text 'i' Name ' ' Text '<' Operator ' ' Text 'parts' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation ' ' Text 'i' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation '(' Punctuation 'Part' Name ')' Punctuation ' ' Text 'parts' Name '.' Punctuation 'get' Name.Attribute '(' Punctuation 'i' Name ')' Punctuation ')' Punctuation '.' Punctuation 'getEnd' Name.Attribute '(' Punctuation ')' Punctuation ' ' Text '>' Operator ' ' Text 'length' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'length' Name ' ' Text '=' Operator ' ' Text '(' Punctuation '(' Punctuation 'Part' Name ')' Punctuation ' ' Text 'parts' Name '.' Punctuation 'get' Name.Attribute '(' Punctuation 'i' Name ')' Punctuation ')' Punctuation '.' Punctuation 'getEnd' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'reset' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'index' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'i' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation ' ' Text 'i' Name ' ' Text '<' Operator ' ' Text 'parts' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation ' ' Text 'i' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text '(' Punctuation '(' Punctuation 'Part' Name ')' Punctuation ' ' Text 'parts' Name '.' Punctuation 'get' Name.Attribute '(' Punctuation 'i' Name ')' Punctuation ')' Punctuation '.' Punctuation 'reset' Name.Attribute '(' Punctuation 'w' Name ',' Punctuation ' ' Text 'h' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'step' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'i' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation ' ' Text 'i' Name ' ' Text '<' Operator ' ' Text 'parts' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation ' ' Text 'i' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'Part' Name ' ' Text 'part' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'Part' Name ')' Punctuation ' ' Text 'parts' Name '.' Punctuation 'get' Name.Attribute '(' Punctuation 'i' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'index' Name ' ' Text '>' Operator '=' Operator ' ' Text 'part' Name '.' Punctuation 'getBegin' Name.Attribute '(' Punctuation ')' Punctuation ' ' Text '&' Operator '&' Operator ' ' Text 'index' Name ' ' Text '<' Operator '=' Operator ' ' Text 'part' Name '.' Punctuation 'getEnd' Name.Attribute '(' Punctuation ')' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'part' Name '.' Punctuation 'step' Name.Attribute '(' Punctuation 'w' Name ',' Punctuation ' ' Text 'h' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'render' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ',' Punctuation ' ' Text 'Graphics2D' Name ' ' Text 'g2' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'i' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation ' ' Text 'i' Name ' ' Text '<' Operator ' ' Text 'parts' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation ' ' Text 'i' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'Part' Name ' ' Text 'part' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'Part' Name ')' Punctuation ' ' Text 'parts' Name '.' Punctuation 'get' Name.Attribute '(' Punctuation 'i' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'index' Name ' ' Text '>' Operator '=' Operator ' ' Text 'part' Name '.' Punctuation 'getBegin' Name.Attribute '(' Punctuation ')' Punctuation ' ' Text '&' Operator '&' Operator ' ' Text 'index' Name ' ' Text '<' Operator '=' Operator ' ' Text 'part' Name '.' Punctuation 'getEnd' Name.Attribute '(' Punctuation ')' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'part' Name '.' Punctuation 'render' Name.Attribute '(' Punctuation 'w' Name ',' Punctuation ' ' Text 'h' Name ',' Punctuation ' ' Text 'g2' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'pause' Name.Function '(' Punctuation 'Thread' Name ' ' Text 'thread' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'try' Keyword ' ' Text '{' Punctuation '\n' Text ' ' Text 'thread' Name '.' Punctuation 'sleep' Name.Attribute '(' Punctuation 'Long' Name '.' Punctuation 'parseLong' Name.Attribute '(' Punctuation '(' Punctuation 'String' Name ')' Punctuation ' ' Text 'pauseAmt' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'catch' Keyword ' ' Text '(' Punctuation 'Exception' Name ' ' Text 'e' Name ')' Punctuation ' ' Text '{' Punctuation ' ' Text '}' Punctuation '\n' Text ' ' Text 'System' Name '.' Punctuation 'gc' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text '// End Scene class\n' Comment.Single '\n' Text '\n' Text '\n' Text ' ' Text '/**\n * Text Effect. Transformation of characters. Clip or fill.\n */' Comment.Multiline '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'class' Keyword.Declaration ' ' Text 'TxE' Name.Class ' ' Text 'implements' Keyword.Declaration ' ' Text 'Part' Name ' ' Text '{' Punctuation '\n' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'INC' Name ' ' Text '=' Operator ' ' Text '1' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'DEC' Name ' ' Text '=' Operator ' ' Text '2' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'R' Name ' ' Text '=' Operator ' ' Text '4' Literal.Number.Integer ';' Punctuation ' ' Text '// rotate\n' Comment.Single ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'RI' Name ' ' Text '=' Operator ' ' Text 'R' Name ' ' Text '|' Operator ' ' Text 'INC' Name ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'RD' Name ' ' Text '=' Operator ' ' Text 'R' Name ' ' Text '|' Operator ' ' Text 'DEC' Name ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'SC' Name ' ' Text '=' Operator ' ' Text '8' Literal.Number.Integer ';' Punctuation ' ' Text '// scale\n' Comment.Single ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'SCI' Name ' ' Text '=' Operator ' ' Text 'SC' Name ' ' Text '|' Operator ' ' Text 'INC' Name ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'SCD' Name ' ' Text '=' Operator ' ' Text 'SC' Name ' ' Text '|' Operator ' ' Text 'DEC' Name ';' Punctuation ' ' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'SCX' Name ' ' Text '=' Operator ' ' Text '16' Literal.Number.Integer ';' Punctuation ' ' Text '// scale invert x\n' Comment.Single ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'SCXI' Name ' ' Text '=' Operator ' ' Text 'SCX' Name ' ' Text '|' Operator ' ' Text 'SC' Name ' ' Text '|' Operator ' ' Text 'INC' Name ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'SCXD' Name ' ' Text '=' Operator ' ' Text 'SCX' Name ' ' Text '|' Operator ' ' Text 'SC' Name ' ' Text '|' Operator ' ' Text 'DEC' Name ';' Punctuation ' ' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'SCY' Name ' ' Text '=' Operator ' ' Text '32' Literal.Number.Integer ';' Punctuation ' ' Text '// scale invert y\n' Comment.Single ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'SCYI' Name ' ' Text '=' Operator ' ' Text 'SCY' Name ' ' Text '|' Operator ' ' Text 'SC' Name ' ' Text '|' Operator ' ' Text 'INC' Name ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'SCYD' Name ' ' Text '=' Operator ' ' Text 'SCY' Name ' ' Text '|' Operator ' ' Text 'SC' Name ' ' Text '|' Operator ' ' Text 'DEC' Name ';' Punctuation ' ' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'AC' Name ' ' Text '=' Operator ' ' Text '64' Literal.Number.Integer ';' Punctuation ' ' Text '// AlphaComposite\n' Comment.Single ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'CLIP' Name ' ' Text '=' Operator ' ' Text '128' Literal.Number.Integer ';' Punctuation ' ' Text '// Clipping\n' Comment.Single ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'NOP' Name ' ' Text '=' Operator ' ' Text '512' Literal.Number.Integer ';' Punctuation ' ' Text '// No Paint \n' Comment.Single ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'beginning' Name ',' Punctuation ' ' Text 'ending' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'type' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'double' Keyword.Type ' ' Text 'rIncr' Name ',' Punctuation ' ' Text 'sIncr' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'double' Keyword.Type ' ' Text 'sx' Name ',' Punctuation ' ' Text 'sy' Name ',' Punctuation ' ' Text 'rotate' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'Shape' Name ' ' Text 'shapes' Name '[' Operator ']' Operator ',' Punctuation ' ' Text 'txShapes' Name '[' Operator ']' Operator ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'sw' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'numRev' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'Paint' Name ' ' Text 'paint' Name ';' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'TxE' Name.Function '(' Punctuation 'String' Name ' ' Text 'text' Name ',' Punctuation ' ' Text '\n' Text ' ' Text 'Font' Name ' ' Text 'font' Name ',' Punctuation ' ' Text '\n' Text ' ' Text 'int' Keyword.Type ' ' Text 'type' Name ',' Punctuation ' ' Text '\n' Text ' ' Text 'Paint' Name ' ' Text 'paint' Name ',' Punctuation '\n' Text ' ' Text 'int' Keyword.Type ' ' Text 'beg' Name ',' Punctuation ' ' Text '\n' Text ' ' Text 'int' Keyword.Type ' ' Text 'end' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'type' Name.Attribute ' ' Text '=' Operator ' ' Text 'type' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'paint' Name.Attribute ' ' Text '=' Operator ' ' Text 'paint' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'beginning' Name.Attribute ' ' Text '=' Operator ' ' Text 'beg' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'ending' Name.Attribute ' ' Text '=' Operator ' ' Text 'end' Name ';' Punctuation '\n' Text '\n' Text ' ' Text 'setIncrements' Name '(' Punctuation '2' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text '\n' Text ' ' Text 'char' Keyword.Type '[' Operator ']' Operator ' ' Text 'chars' Name ' ' Text '=' Operator ' ' Text 'text' Name '.' Punctuation 'toCharArray' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'shapes' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Shape' Name '[' Operator 'chars' Name '.' Punctuation 'length' Name.Attribute ']' Operator ';' Punctuation '\n' Text ' ' Text 'txShapes' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Shape' Name '[' Operator 'chars' Name '.' Punctuation 'length' Name.Attribute ']' Operator ';' Punctuation '\n' Text ' ' Text 'FontRenderContext' Name ' ' Text 'frc' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'FontRenderContext' Name '(' Punctuation 'null' Keyword.Constant ',' Punctuation 'true' Keyword.Constant ',' Punctuation 'true' Keyword.Constant ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'TextLayout' Name ' ' Text 'tl' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'TextLayout' Name '(' Punctuation 'text' Name ',' Punctuation ' ' Text 'font' Name ',' Punctuation ' ' Text 'frc' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'sw' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'int' Keyword.Type ')' Punctuation ' ' Text 'tl' Name '.' Punctuation 'getOutline' Name.Attribute '(' Punctuation 'null' Keyword.Constant ')' Punctuation '.' Punctuation 'getBounds' Name.Attribute '(' Punctuation ')' Punctuation '.' Punctuation 'getWidth' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'j' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation ' ' Text 'j' Name ' ' Text '<' Operator ' ' Text 'chars' Name '.' Punctuation 'length' Name.Attribute ';' Punctuation ' ' Text 'j' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'String' Name ' ' Text 's' Name ' ' Text '=' Operator ' ' Text 'String' Name '.' Punctuation 'valueOf' Name.Attribute '(' Punctuation 'chars' Name '[' Operator 'j' Name ']' Operator ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'shapes' Name '[' Operator 'j' Name ']' Operator ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'TextLayout' Name '(' Punctuation 's' Name ',' Punctuation ' ' Text 'font' Name ',' Punctuation ' ' Text 'frc' Name ')' Punctuation '.' Punctuation 'getOutline' Name.Attribute '(' Punctuation 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'setIncrements' Name.Function '(' Punctuation 'double' Keyword.Type ' ' Text 'numRevolutions' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'numRev' Name.Attribute ' ' Text '=' Operator ' ' Text '(' Punctuation 'int' Keyword.Type ')' Punctuation ' ' Text 'numRevolutions' Name ';' Punctuation '\n' Text ' ' Text 'rIncr' Name ' ' Text '=' Operator ' ' Text '360.0' Literal.Number.Float ' ' Text '/' Operator ' ' Text '(' Punctuation '(' Punctuation 'ending' Name ' ' Text '-' Operator ' ' Text 'beginning' Name ')' Punctuation ' ' Text '/' Operator ' ' Text 'numRevolutions' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'sIncr' Name ' ' Text '=' Operator ' ' Text '1.0' Literal.Number.Float ' ' Text '/' Operator ' ' Text '(' Punctuation 'ending' Name ' ' Text '-' Operator ' ' Text 'beginning' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'SCX' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ' ' Text '|' Operator '|' Operator ' ' Text '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'SCY' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'sIncr' Name ' ' Text '*' Operator '=' Operator ' ' Text '2' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'DEC' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'rIncr' Name ' ' Text '=' Operator ' ' Text '-' Operator 'rIncr' Name ';' Punctuation '\n' Text ' ' Text 'sIncr' Name ' ' Text '=' Operator ' ' Text '-' Operator 'sIncr' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'reset' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'type' Name ' ' Text '=' Operator '=' Operator ' ' Text 'SCXI' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'sx' Name ' ' Text '=' Operator ' ' Text '-' Operator '1.0' Literal.Number.Float ';' Punctuation ' ' Text 'sy' Name ' ' Text '=' Operator ' ' Text '1.0' Literal.Number.Float ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'type' Name ' ' Text '=' Operator '=' Operator ' ' Text 'SCYI' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'sx' Name ' ' Text '=' Operator ' ' Text '1.0' Literal.Number.Float ';' Punctuation ' ' Text 'sy' Name ' ' Text '=' Operator ' ' Text '-' Operator '1.0' Literal.Number.Float ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text '{' Punctuation '\n' Text ' ' Text 'sx' Name ' ' Text '=' Operator ' ' Text 'sy' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'DEC' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ' ' Text '?' Operator ' ' Text '1.0' Literal.Number.Float ' ' Text ':' Punctuation ' ' Text '0.0' Literal.Number.Float ';' Punctuation ' ' Text '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'rotate' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'step' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text '\n' Text ' ' Text 'float' Keyword.Type ' ' Text 'charWidth' Name ' ' Text '=' Operator ' ' Text 'w' Name '/' Operator '2' Literal.Number.Integer '-' Operator 'sw' Name '/' Operator '2' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'i' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation ' ' Text 'i' Name ' ' Text '<' Operator ' ' Text 'shapes' Name '.' Punctuation 'length' Name.Attribute ';' Punctuation ' ' Text 'i' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'AffineTransform' Name ' ' Text 'at' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'AffineTransform' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'Rectangle2D' Name ' ' Text 'maxBounds' Name ' ' Text '=' Operator ' ' Text 'shapes' Name '[' Operator 'i' Name ']' Operator '.' Punctuation 'getBounds' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'at' Name '.' Punctuation 'translate' Name.Attribute '(' Punctuation 'charWidth' Name ',' Punctuation ' ' Text 'h' Name '/' Operator '2' Literal.Number.Integer '+' Operator 'maxBounds' Name '.' Punctuation 'getHeight' Name.Attribute '(' Punctuation ')' Punctuation '/' Operator '2' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'charWidth' Name ' ' Text '+' Operator '=' Operator ' ' Text '(' Punctuation 'float' Keyword.Type ')' Punctuation ' ' Text 'maxBounds' Name '.' Punctuation 'getWidth' Name.Attribute '(' Punctuation ')' Punctuation ' ' Text '+' Operator ' ' Text '1' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'Shape' Name ' ' Text 'shape' Name ' ' Text '=' Operator ' ' Text 'at' Name '.' Punctuation 'createTransformedShape' Name.Attribute '(' Punctuation 'shapes' Name '[' Operator 'i' Name ']' Operator ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'Rectangle2D' Name ' ' Text 'b1' Name ' ' Text '=' Operator ' ' Text 'shape' Name '.' Punctuation 'getBounds2D' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'R' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'at' Name '.' Punctuation 'rotate' Name.Attribute '(' Punctuation 'Math' Name '.' Punctuation 'toRadians' Name.Attribute '(' Punctuation 'rotate' Name ')' Punctuation ')' Punctuation ';' Punctuation ' ' Text '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'SC' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'at' Name '.' Punctuation 'scale' Name.Attribute '(' Punctuation 'sx' Name ',' Punctuation ' ' Text 'sy' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'shape' Name ' ' Text '=' Operator ' ' Text 'at' Name '.' Punctuation 'createTransformedShape' Name.Attribute '(' Punctuation 'shapes' Name '[' Operator 'i' Name ']' Operator ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'Rectangle2D' Name ' ' Text 'b2' Name ' ' Text '=' Operator ' ' Text 'shape' Name '.' Punctuation 'getBounds2D' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '\n' Text ' ' Text 'double' Keyword.Type ' ' Text 'xx' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'b1' Name '.' Punctuation 'getX' Name.Attribute '(' Punctuation ')' Punctuation '+' Operator 'b1' Name '.' Punctuation 'getWidth' Name.Attribute '(' Punctuation ')' Punctuation '/' Operator '2' Literal.Number.Integer ')' Punctuation '\n' Text ' ' Text '-' Operator ' ' Text '(' Punctuation 'b2' Name '.' Punctuation 'getX' Name.Attribute '(' Punctuation ')' Punctuation '+' Operator 'b2' Name '.' Punctuation 'getWidth' Name.Attribute '(' Punctuation ')' Punctuation '/' Operator '2' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'double' Keyword.Type ' ' Text 'yy' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'b1' Name '.' Punctuation 'getY' Name.Attribute '(' Punctuation ')' Punctuation '+' Operator 'b1' Name '.' Punctuation 'getHeight' Name.Attribute '(' Punctuation ')' Punctuation '/' Operator '2' Literal.Number.Integer ')' Punctuation '\n' Text ' ' Text '-' Operator ' ' Text '(' Punctuation 'b2' Name '.' Punctuation 'getY' Name.Attribute '(' Punctuation ')' Punctuation '+' Operator 'b2' Name '.' Punctuation 'getHeight' Name.Attribute '(' Punctuation ')' Punctuation '/' Operator '2' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'AffineTransform' Name ' ' Text 'toCenterAT' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'AffineTransform' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'toCenterAT' Name '.' Punctuation 'translate' Name.Attribute '(' Punctuation 'xx' Name ',' Punctuation ' ' Text 'yy' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'toCenterAT' Name '.' Punctuation 'concatenate' Name.Attribute '(' Punctuation 'at' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'txShapes' Name '[' Operator 'i' Name ']' Operator ' ' Text '=' Operator ' ' Text 'toCenterAT' Name '.' Punctuation 'createTransformedShape' Name.Attribute '(' Punctuation 'shapes' Name '[' Operator 'i' Name ']' Operator ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '// avoid over rotation\n' Comment.Single ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'Math' Name '.' Punctuation 'abs' Name.Attribute '(' Punctuation 'rotate' Name ')' Punctuation ' ' Text '<' Operator '=' Operator ' ' Text 'numRev' Name ' ' Text '*' Operator ' ' Text '360' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'rotate' Name ' ' Text '+' Operator '=' Operator ' ' Text 'rIncr' Name ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'SCX' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'sx' Name ' ' Text '+' Operator '=' Operator ' ' Text 'sIncr' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'SCY' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'sy' Name ' ' Text '+' Operator '=' Operator ' ' Text 'sIncr' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text '{' Punctuation '\n' Text ' ' Text 'sx' Name ' ' Text '+' Operator '=' Operator ' ' Text 'sIncr' Name ';' Punctuation ' ' Text 'sy' Name ' ' Text '+' Operator '=' Operator ' ' Text 'sIncr' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'render' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ',' Punctuation ' ' Text 'Graphics2D' Name ' ' Text 'g2' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'Composite' Name ' ' Text 'saveAC' Name ' ' Text '=' Operator ' ' Text 'null' Keyword.Constant ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'AC' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ' ' Text '&' Operator '&' Operator ' ' Text 'sx' Name ' ' Text '>' Operator ' ' Text '0' Literal.Number.Integer ' ' Text '&' Operator '&' Operator ' ' Text 'sx' Name ' ' Text '<' Operator ' ' Text '1' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'saveAC' Name ' ' Text '=' Operator ' ' Text 'g2' Name '.' Punctuation 'getComposite' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setComposite' Name.Attribute '(' Punctuation 'AlphaComposite' Name '.' Punctuation 'getInstance' Name.Attribute '(' Punctuation 'AlphaComposite' Name '.' Punctuation 'SRC_OVER' Name.Attribute ',' Punctuation ' ' Text '(' Punctuation 'float' Keyword.Type ')' Punctuation ' ' Text 'sx' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'GeneralPath' Name ' ' Text 'path' Name ' ' Text '=' Operator ' ' Text 'null' Keyword.Constant ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'CLIP' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'path' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'GeneralPath' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'paint' Name ' ' Text '!' Operator '=' Operator ' ' Text 'null' Keyword.Constant ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setPaint' Name.Attribute '(' Punctuation 'paint' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'i' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation ' ' Text 'i' Name ' ' Text '<' Operator ' ' Text 'txShapes' Name '.' Punctuation 'length' Name.Attribute ';' Punctuation ' ' Text 'i' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'CLIP' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'path' Name '.' Punctuation 'append' Name.Attribute '(' Punctuation 'txShapes' Name '[' Operator 'i' Name ']' Operator ',' Punctuation ' ' Text 'false' Keyword.Constant ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text '{' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'fill' Name.Attribute '(' Punctuation 'txShapes' Name '[' Operator 'i' Name ']' Operator ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'CLIP' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'clip' Name.Attribute '(' Punctuation 'path' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'saveAC' Name ' ' Text '!' Operator '=' Operator ' ' Text 'null' Keyword.Constant ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setComposite' Name.Attribute '(' Punctuation 'saveAC' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getBegin' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'beginning' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getEnd' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'ending' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text '// End TxE class\n' Comment.Single '\n' Text '\n' Text '\n' Text '\n' Text ' ' Text '/**\n * GradientPaint Effect. Burst, split, horizontal and \n * vertical gradient fill effects.\n */' Comment.Multiline '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'class' Keyword.Declaration ' ' Text 'GpE' Name.Class ' ' Text 'implements' Keyword.Declaration ' ' Text 'Part' Name ' ' Text '{' Punctuation '\n' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'INC' Name ' ' Text '=' Operator ' ' Text '1' Literal.Number.Integer ';' Punctuation ' ' Text '// increasing\n' Comment.Single ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'DEC' Name ' ' Text '=' Operator ' ' Text '2' Literal.Number.Integer ';' Punctuation ' ' Text '// decreasing\n' Comment.Single ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'CNT' Name ' ' Text '=' Operator ' ' Text '4' Literal.Number.Integer ';' Punctuation ' ' Text '// center\n' Comment.Single ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'WID' Name ' ' Text '=' Operator ' ' Text '8' Literal.Number.Integer ';' Punctuation ' ' Text '// width \n' Comment.Single ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'WI' Name ' ' Text '=' Operator ' ' Text 'WID' Name ' ' Text '|' Operator ' ' Text 'INC' Name ';' Punctuation ' ' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'WD' Name ' ' Text '=' Operator ' ' Text 'WID' Name ' ' Text '|' Operator ' ' Text 'DEC' Name ';' Punctuation ' ' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'HEI' Name ' ' Text '=' Operator ' ' Text '16' Literal.Number.Integer ';' Punctuation ' ' Text '// height\n' Comment.Single ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'HI' Name ' ' Text '=' Operator ' ' Text 'HEI' Name ' ' Text '|' Operator ' ' Text 'INC' Name ';' Punctuation ' ' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'HD' Name ' ' Text '=' Operator ' ' Text 'HEI' Name ' ' Text '|' Operator ' ' Text 'DEC' Name ';' Punctuation ' ' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'SPL' Name ' ' Text '=' Operator ' ' Text '32' Literal.Number.Integer ' ' Text '|' Operator ' ' Text 'CNT' Name ';' Punctuation ' ' Text '// split \n' Comment.Single ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'SIW' Name ' ' Text '=' Operator ' ' Text 'SPL' Name ' ' Text '|' Operator ' ' Text 'INC' Name ' ' Text '|' Operator ' ' Text 'WID' Name ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'SDW' Name ' ' Text '=' Operator ' ' Text 'SPL' Name ' ' Text '|' Operator ' ' Text 'DEC' Name ' ' Text '|' Operator ' ' Text 'WID' Name ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'SIH' Name ' ' Text '=' Operator ' ' Text 'SPL' Name ' ' Text '|' Operator ' ' Text 'INC' Name ' ' Text '|' Operator ' ' Text 'HEI' Name ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'SDH' Name ' ' Text '=' Operator ' ' Text 'SPL' Name ' ' Text '|' Operator ' ' Text 'DEC' Name ' ' Text '|' Operator ' ' Text 'HEI' Name ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'BUR' Name ' ' Text '=' Operator ' ' Text '64' Literal.Number.Integer ' ' Text '|' Operator ' ' Text 'CNT' Name ';' Punctuation ' ' Text '// burst \n' Comment.Single ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'BURI' Name ' ' Text '=' Operator ' ' Text 'BUR' Name ' ' Text '|' Operator ' ' Text 'INC' Name ';' Punctuation ' ' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'BURD' Name ' ' Text '=' Operator ' ' Text 'BUR' Name ' ' Text '|' Operator ' ' Text 'DEC' Name ';' Punctuation ' ' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'NF' Name ' ' Text '=' Operator ' ' Text '128' Literal.Number.Integer ';' Punctuation ' ' Text '// no fill\n' Comment.Single ' ' Text 'private' Keyword.Declaration ' ' Text 'Color' Name ' ' Text 'c1' Name ',' Punctuation ' ' Text 'c2' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'beginning' Name ',' Punctuation ' ' Text 'ending' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'float' Keyword.Type ' ' Text 'incr' Name ',' Punctuation ' ' Text 'index' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'Vector' Name ' ' Text 'rect' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Vector' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'Vector' Name ' ' Text 'grad' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Vector' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'type' Name ';' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'GpE' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'type' Name ',' Punctuation ' ' Text 'Color' Name ' ' Text 'c1' Name ',' Punctuation ' ' Text 'Color' Name ' ' Text 'c2' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'beg' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'end' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'type' Name.Attribute ' ' Text '=' Operator ' ' Text 'type' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'c1' Name.Attribute ' ' Text '=' Operator ' ' Text 'c1' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'c2' Name.Attribute ' ' Text '=' Operator ' ' Text 'c2' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'beginning' Name.Attribute ' ' Text '=' Operator ' ' Text 'beg' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'ending' Name.Attribute ' ' Text '=' Operator ' ' Text 'end' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'reset' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'incr' Name ' ' Text '=' Operator ' ' Text '1.0f' Literal.Number.Float ' ' Text '/' Operator ' ' Text '(' Punctuation 'ending' Name ' ' Text '-' Operator ' ' Text 'beginning' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'CNT' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'incr' Name ' ' Text '/' Operator '=' Operator ' ' Text '2.3f' Literal.Number.Float ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'CNT' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ' ' Text '&' Operator '&' Operator ' ' Text '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'INC' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'index' Name ' ' Text '=' Operator ' ' Text '0.5f' Literal.Number.Float ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'DEC' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'index' Name ' ' Text '=' Operator ' ' Text '1.0f' Literal.Number.Float ';' Punctuation '\n' Text ' ' Text 'incr' Name ' ' Text '=' Operator ' ' Text '-' Operator 'incr' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text '{' Punctuation '\n' Text ' ' Text 'index' Name ' ' Text '=' Operator ' ' Text '0.0f' Literal.Number.Float ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'index' Name ' ' Text '+' Operator '=' Operator ' ' Text 'incr' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'step' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'rect' Name '.' Punctuation 'clear' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'grad' Name '.' Punctuation 'clear' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'WID' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'float' Keyword.Type ' ' Text 'w2' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text 'x1' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text 'x2' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'SPL' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'w2' Name ' ' Text '=' Operator ' ' Text 'w' Name ' ' Text '*' Operator ' ' Text '0.5f' Literal.Number.Float ';' Punctuation '\n' Text ' ' Text 'x1' Name ' ' Text '=' Operator ' ' Text 'w' Name ' ' Text '*' Operator ' ' Text '(' Punctuation '1.0f' Literal.Number.Float ' ' Text '-' Operator ' ' Text 'index' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'x2' Name ' ' Text '=' Operator ' ' Text 'w' Name ' ' Text '*' Operator ' ' Text 'index' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text '{' Punctuation '\n' Text ' ' Text 'w2' Name ' ' Text '=' Operator ' ' Text 'w' Name ' ' Text '*' Operator ' ' Text 'index' Name ';' Punctuation '\n' Text ' ' Text 'x1' Name ' ' Text '=' Operator ' ' Text 'x2' Name ' ' Text '=' Operator ' ' Text 'w2' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'rect' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'Rectangle2D' Name '.' Punctuation 'Float' Name.Attribute '(' Punctuation '0' Literal.Number.Integer ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text 'w2' Name ',' Punctuation ' ' Text 'h' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'rect' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'Rectangle2D' Name '.' Punctuation 'Float' Name.Attribute '(' Punctuation 'w2' Name ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text 'w' Name '-' Operator 'w2' Name ',' Punctuation ' ' Text 'h' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'grad' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'GradientPaint' Name '(' Punctuation '0' Literal.Number.Integer ',' Punctuation '0' Literal.Number.Integer ',' Punctuation 'c1' Name ',' Punctuation 'x1' Name ',' Punctuation '0' Literal.Number.Integer ',' Punctuation 'c2' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'grad' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'GradientPaint' Name '(' Punctuation 'x2' Name ',' Punctuation '0' Literal.Number.Integer ',' Punctuation 'c2' Name ',' Punctuation 'w' Name ',' Punctuation '0' Literal.Number.Integer ',' Punctuation 'c1' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'HEI' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'float' Keyword.Type ' ' Text 'h2' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text 'y1' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text 'y2' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'SPL' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'h2' Name ' ' Text '=' Operator ' ' Text 'h' Name ' ' Text '*' Operator ' ' Text '0.5f' Literal.Number.Float ';' Punctuation '\n' Text ' ' Text 'y1' Name ' ' Text '=' Operator ' ' Text 'h' Name ' ' Text '*' Operator ' ' Text '(' Punctuation '1.0f' Literal.Number.Float ' ' Text '-' Operator ' ' Text 'index' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'y2' Name ' ' Text '=' Operator ' ' Text 'h' Name ' ' Text '*' Operator ' ' Text 'index' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text '{' Punctuation '\n' Text ' ' Text 'h2' Name ' ' Text '=' Operator ' ' Text 'h' Name ' ' Text '*' Operator ' ' Text 'index' Name ';' Punctuation '\n' Text ' ' Text 'y1' Name ' ' Text '=' Operator ' ' Text 'y2' Name ' ' Text '=' Operator ' ' Text 'h2' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'rect' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'Rectangle2D' Name '.' Punctuation 'Float' Name.Attribute '(' Punctuation '0' Literal.Number.Integer ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text 'w' Name ',' Punctuation ' ' Text 'h2' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'rect' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'Rectangle2D' Name '.' Punctuation 'Float' Name.Attribute '(' Punctuation '0' Literal.Number.Integer ',' Punctuation ' ' Text 'h2' Name ',' Punctuation ' ' Text 'w' Name ',' Punctuation ' ' Text 'h' Name '-' Operator 'h2' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'grad' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'GradientPaint' Name '(' Punctuation '0' Literal.Number.Integer ',' Punctuation '0' Literal.Number.Integer ',' Punctuation 'c1' Name ',' Punctuation '0' Literal.Number.Integer ',' Punctuation 'y1' Name ',' Punctuation 'c2' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'grad' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'GradientPaint' Name '(' Punctuation '0' Literal.Number.Integer ',' Punctuation 'y2' Name ',' Punctuation 'c2' Name ',' Punctuation '0' Literal.Number.Integer ',' Punctuation 'h' Name ',' Punctuation 'c1' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'BUR' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text '\n' Text ' ' Text 'float' Keyword.Type ' ' Text 'w2' Name ' ' Text '=' Operator ' ' Text 'w' Name '/' Operator '2' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'float' Keyword.Type ' ' Text 'h2' Name ' ' Text '=' Operator ' ' Text 'h' Name '/' Operator '2' Literal.Number.Integer ';' Punctuation '\n' Text '\n' Text ' ' Text 'rect' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'Rectangle2D' Name '.' Punctuation 'Float' Name.Attribute '(' Punctuation '0' Literal.Number.Integer ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text 'w2' Name ',' Punctuation ' ' Text 'h2' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'rect' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'Rectangle2D' Name '.' Punctuation 'Float' Name.Attribute '(' Punctuation 'w2' Name ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text 'w2' Name ',' Punctuation ' ' Text 'h2' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'rect' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'Rectangle2D' Name '.' Punctuation 'Float' Name.Attribute '(' Punctuation '0' Literal.Number.Integer ',' Punctuation ' ' Text 'h2' Name ',' Punctuation ' ' Text 'w2' Name ',' Punctuation ' ' Text 'h2' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'rect' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'Rectangle2D' Name '.' Punctuation 'Float' Name.Attribute '(' Punctuation 'w2' Name ',' Punctuation ' ' Text 'h2' Name ',' Punctuation ' ' Text 'w2' Name ',' Punctuation ' ' Text 'h2' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text '\n' Text ' ' Text 'float' Keyword.Type ' ' Text 'x1' Name ' ' Text '=' Operator ' ' Text 'w' Name ' ' Text '*' Operator ' ' Text '(' Punctuation '1.0f' Literal.Number.Float ' ' Text '-' Operator ' ' Text 'index' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'float' Keyword.Type ' ' Text 'x2' Name ' ' Text '=' Operator ' ' Text 'w' Name ' ' Text '*' Operator ' ' Text 'index' Name ';' Punctuation '\n' Text ' ' Text 'float' Keyword.Type ' ' Text 'y1' Name ' ' Text '=' Operator ' ' Text 'h' Name ' ' Text '*' Operator ' ' Text '(' Punctuation '1.0f' Literal.Number.Float ' ' Text '-' Operator ' ' Text 'index' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'float' Keyword.Type ' ' Text 'y2' Name ' ' Text '=' Operator ' ' Text 'h' Name ' ' Text '*' Operator ' ' Text 'index' Name ';' Punctuation '\n' Text '\n' Text ' ' Text 'grad' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'GradientPaint' Name '(' Punctuation '0' Literal.Number.Integer ',' Punctuation '0' Literal.Number.Integer ',' Punctuation 'c1' Name ',' Punctuation 'x1' Name ',' Punctuation 'y1' Name ',' Punctuation 'c2' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'grad' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'GradientPaint' Name '(' Punctuation 'w' Name ',' Punctuation '0' Literal.Number.Integer ',' Punctuation 'c1' Name ',' Punctuation 'x2' Name ',' Punctuation 'y1' Name ',' Punctuation 'c2' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'grad' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'GradientPaint' Name '(' Punctuation '0' Literal.Number.Integer ',' Punctuation 'h' Name ',' Punctuation 'c1' Name ',' Punctuation 'x1' Name ',' Punctuation 'y2' Name ',' Punctuation 'c2' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'grad' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'GradientPaint' Name '(' Punctuation 'w' Name ',' Punctuation 'h' Name ',' Punctuation 'c1' Name ',' Punctuation 'x2' Name ',' Punctuation 'y2' Name ',' Punctuation 'c2' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'NF' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'float' Keyword.Type ' ' Text 'x' Name ' ' Text '=' Operator ' ' Text 'w' Name ' ' Text '*' Operator ' ' Text 'index' Name ';' Punctuation '\n' Text ' ' Text 'float' Keyword.Type ' ' Text 'y' Name ' ' Text '=' Operator ' ' Text 'h' Name ' ' Text '*' Operator ' ' Text 'index' Name ';' Punctuation '\n' Text ' ' Text 'grad' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'GradientPaint' Name '(' Punctuation '0' Literal.Number.Integer ',' Punctuation '0' Literal.Number.Integer ',' Punctuation 'c1' Name ',' Punctuation '0' Literal.Number.Integer ',' Punctuation 'y' Name ',' Punctuation 'c2' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'INC' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ' ' Text '|' Operator '|' Operator ' ' Text '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'DEC' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'index' Name ' ' Text '+' Operator '=' Operator ' ' Text 'incr' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'render' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ',' Punctuation ' ' Text 'Graphics2D' Name ' ' Text 'g2' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setRenderingHint' Name.Attribute '(' Punctuation 'RenderingHints' Name '.' Punctuation 'KEY_ANTIALIASING' Name.Attribute ',' Punctuation ' ' Text '\n' Text ' ' Text 'RenderingHints' Name '.' Punctuation 'VALUE_ANTIALIAS_OFF' Name.Attribute ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'i' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation ' ' Text 'i' Name ' ' Text '<' Operator ' ' Text 'grad' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation ' ' Text 'i' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setPaint' Name.Attribute '(' Punctuation '(' Punctuation 'GradientPaint' Name ')' Punctuation ' ' Text 'grad' Name '.' Punctuation 'get' Name.Attribute '(' Punctuation 'i' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'NF' Name ')' Punctuation ' ' Text '=' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'fill' Name.Attribute '(' Punctuation '(' Punctuation 'Rectangle2D' Name ')' Punctuation ' ' Text 'rect' Name '.' Punctuation 'get' Name.Attribute '(' Punctuation 'i' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setRenderingHint' Name.Attribute '(' Punctuation 'RenderingHints' Name '.' Punctuation 'KEY_ANTIALIASING' Name.Attribute ',' Punctuation ' ' Text '\n' Text ' ' Text 'RenderingHints' Name '.' Punctuation 'VALUE_ANTIALIAS_ON' Name.Attribute ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getBegin' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'beginning' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getEnd' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'ending' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text '// End GpE class\n' Comment.Single '\n' Text '\n' Text '\n' Text ' ' Text '/**\n * TexturePaint Effect. Expand and collapse a texture. \n */' Comment.Multiline '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'class' Keyword.Declaration ' ' Text 'TpE' Name.Class ' ' Text 'implements' Keyword.Declaration ' ' Text 'Part' Name ' ' Text '{' Punctuation '\n' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'INC' Name ' ' Text '=' Operator ' ' Text '1' Literal.Number.Integer ';' Punctuation ' ' Text '// increasing\n' Comment.Single ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'DEC' Name ' ' Text '=' Operator ' ' Text '2' Literal.Number.Integer ';' Punctuation ' ' Text '// decreasing\n' Comment.Single ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'OVAL' Name ' ' Text '=' Operator ' ' Text '4' Literal.Number.Integer ';' Punctuation ' ' Text '// oval\n' Comment.Single ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'RECT' Name ' ' Text '=' Operator ' ' Text '8' Literal.Number.Integer ';' Punctuation ' ' Text '// rectangle \n' Comment.Single ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'HAF' Name ' ' Text '=' Operator ' ' Text '16' Literal.Number.Integer ';' Punctuation ' ' Text '// half oval or rect size\n' Comment.Single ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'OI' Name ' ' Text '=' Operator ' ' Text 'OVAL' Name ' ' Text '|' Operator ' ' Text 'INC' Name ';' Punctuation ' ' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'OD' Name ' ' Text '=' Operator ' ' Text 'OVAL' Name ' ' Text '|' Operator ' ' Text 'DEC' Name ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'RI' Name ' ' Text '=' Operator ' ' Text 'RECT' Name ' ' Text '|' Operator ' ' Text 'INC' Name ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'RD' Name ' ' Text '=' Operator ' ' Text 'RECT' Name ' ' Text '|' Operator ' ' Text 'DEC' Name ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'NF' Name ' ' Text '=' Operator ' ' Text '32' Literal.Number.Integer ';' Punctuation ' ' Text '// no fill \n' Comment.Single ' ' Text 'private' Keyword.Declaration ' ' Text 'Paint' Name ' ' Text 'p1' Name ',' Punctuation ' ' Text 'p2' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'beginning' Name ',' Punctuation ' ' Text 'ending' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'float' Keyword.Type ' ' Text 'incr' Name ',' Punctuation ' ' Text 'index' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'TexturePaint' Name ' ' Text 'texture' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'type' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'size' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'BufferedImage' Name ' ' Text 'bimg' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'Rectangle' Name ' ' Text 'rect' Name ';' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'TpE' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'type' Name ',' Punctuation ' ' Text 'Paint' Name ' ' Text 'p1' Name ',' Punctuation ' ' Text 'Paint' Name ' ' Text 'p2' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'size' Name ',' Punctuation '\n' Text ' ' Text 'int' Keyword.Type ' ' Text 'beg' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'end' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'type' Name.Attribute ' ' Text '=' Operator ' ' Text 'type' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'p1' Name.Attribute ' ' Text '=' Operator ' ' Text 'p1' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'p2' Name.Attribute ' ' Text '=' Operator ' ' Text 'p2' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'beginning' Name.Attribute ' ' Text '=' Operator ' ' Text 'beg' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'ending' Name.Attribute ' ' Text '=' Operator ' ' Text 'end' Name ';' Punctuation '\n' Text ' ' Text 'setTextureSize' Name '(' Punctuation 'size' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'setTextureSize' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'size' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'size' Name.Attribute ' ' Text '=' Operator ' ' Text 'size' Name ';' Punctuation '\n' Text ' ' Text 'bimg' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'BufferedImage' Name '(' Punctuation 'size' Name ',' Punctuation 'size' Name ',' Punctuation 'BufferedImage' Name '.' Punctuation 'TYPE_INT_RGB' Name.Attribute ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'rect' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Rectangle' Name '(' Punctuation '0' Literal.Number.Integer ',' Punctuation '0' Literal.Number.Integer ',' Punctuation 'size' Name ',' Punctuation 'size' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'reset' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'incr' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'float' Keyword.Type ')' Punctuation ' ' Text '(' Punctuation 'size' Name ')' Punctuation ' ' Text '/' Operator ' ' Text '(' Punctuation 'float' Keyword.Type ')' Punctuation ' ' Text '(' Punctuation 'ending' Name ' ' Text '-' Operator ' ' Text 'beginning' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'HAF' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'incr' Name ' ' Text '/' Operator '=' Operator ' ' Text '2' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'DEC' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'index' Name ' ' Text '=' Operator ' ' Text 'size' Name ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'HAF' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'index' Name ' ' Text '/' Operator '=' Operator ' ' Text '2' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'incr' Name ' ' Text '=' Operator ' ' Text '-' Operator 'incr' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text '{' Punctuation '\n' Text ' ' Text 'index' Name ' ' Text '=' Operator ' ' Text '0.0f' Literal.Number.Float ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'index' Name ' ' Text '+' Operator '=' Operator ' ' Text 'incr' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'step' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'Graphics2D' Name ' ' Text 'g2' Name ' ' Text '=' Operator ' ' Text 'bimg' Name '.' Punctuation 'createGraphics' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setPaint' Name.Attribute '(' Punctuation 'p1' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'fillRect' Name.Attribute '(' Punctuation '0' Literal.Number.Integer ',' Punctuation '0' Literal.Number.Integer ',' Punctuation 'size' Name ',' Punctuation 'size' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setPaint' Name.Attribute '(' Punctuation 'p2' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'OVAL' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'fill' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'Ellipse2D' Name '.' Punctuation 'Float' Name.Attribute '(' Punctuation '0' Literal.Number.Integer ',' Punctuation '0' Literal.Number.Integer ',' Punctuation 'index' Name ',' Punctuation 'index' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'RECT' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'fill' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'Rectangle2D' Name '.' Punctuation 'Float' Name.Attribute '(' Punctuation '0' Literal.Number.Integer ',' Punctuation '0' Literal.Number.Integer ',' Punctuation 'index' Name ',' Punctuation 'index' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'texture' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'TexturePaint' Name '(' Punctuation 'bimg' Name ',' Punctuation ' ' Text 'rect' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'dispose' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'index' Name ' ' Text '+' Operator '=' Operator ' ' Text 'incr' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'render' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ',' Punctuation ' ' Text 'Graphics2D' Name ' ' Text 'g2' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setPaint' Name.Attribute '(' Punctuation 'texture' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'NF' Name ')' Punctuation ' ' Text '=' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'fillRect' Name.Attribute '(' Punctuation '0' Literal.Number.Integer ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text 'w' Name ',' Punctuation ' ' Text 'h' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getBegin' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'beginning' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getEnd' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'ending' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text '// End TpE class\n' Comment.Single '\n' Text '\n' Text '\n' Text ' ' Text '/**\n * Close out effect. Close out the buffered image with different \n * geometry shapes.\n */' Comment.Multiline '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'class' Keyword.Declaration ' ' Text 'CoE' Name.Class ' ' Text 'implements' Keyword.Declaration ' ' Text 'Part' Name ' ' Text '{' Punctuation '\n' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'WID' Name ' ' Text '=' Operator ' ' Text '1' Literal.Number.Integer ';' Punctuation ' ' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'HEI' Name ' ' Text '=' Operator ' ' Text '2' Literal.Number.Integer ';' Punctuation ' ' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'OVAL' Name ' ' Text '=' Operator ' ' Text '4' Literal.Number.Integer ';' Punctuation ' ' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'RECT' Name ' ' Text '=' Operator ' ' Text '8' Literal.Number.Integer ';' Punctuation ' ' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'RAND' Name ' ' Text '=' Operator ' ' Text '16' Literal.Number.Integer ';' Punctuation ' ' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'ARC' Name ' ' Text '=' Operator ' ' Text '32' Literal.Number.Integer ';' Punctuation ' ' Text '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'type' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'beginning' Name ',' Punctuation ' ' Text 'ending' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'BufferedImage' Name ' ' Text 'bimg' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'Shape' Name ' ' Text 'shape' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'double' Keyword.Type ' ' Text 'zoom' Name ',' Punctuation ' ' Text 'extent' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'double' Keyword.Type ' ' Text 'zIncr' Name ',' Punctuation ' ' Text 'eIncr' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'boolean' Keyword.Type ' ' Text 'doRandom' Name ';' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'CoE' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'type' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'beg' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'end' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'type' Name.Attribute ' ' Text '=' Operator ' ' Text 'type' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'beginning' Name.Attribute ' ' Text '=' Operator ' ' Text 'beg' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'ending' Name.Attribute ' ' Text '=' Operator ' ' Text 'end' Name ';' Punctuation '\n' Text ' ' Text 'zIncr' Name ' ' Text '=' Operator ' ' Text '-' Operator '(' Punctuation '2.0' Literal.Number.Float ' ' Text '/' Operator ' ' Text '(' Punctuation 'ending' Name ' ' Text '-' Operator ' ' Text 'beginning' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'eIncr' Name ' ' Text '=' Operator ' ' Text '360.0' Literal.Number.Float ' ' Text '/' Operator ' ' Text '(' Punctuation 'ending' Name ' ' Text '-' Operator ' ' Text 'beginning' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'doRandom' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'RAND' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'reset' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'doRandom' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'int' Keyword.Type ' ' Text 'num' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'int' Keyword.Type ')' Punctuation ' ' Text '(' Punctuation 'Math' Name '.' Punctuation 'random' Name.Attribute '(' Punctuation ')' Punctuation ' ' Text '*' Operator ' ' Text '5.0' Literal.Number.Float ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'switch' Keyword ' ' Text '(' Punctuation 'num' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'case' Keyword ' ' Text '0' Literal.Number.Integer ' ' Text ':' Punctuation ' ' Text 'type' Name ' ' Text '=' Operator ' ' Text 'OVAL' Name ';' Punctuation ' ' Text 'break' Keyword ';' Punctuation '\n' Text ' ' Text 'case' Keyword ' ' Text '1' Literal.Number.Integer ' ' Text ':' Punctuation ' ' Text 'type' Name ' ' Text '=' Operator ' ' Text 'RECT' Name ';' Punctuation ' ' Text 'break' Keyword ';' Punctuation '\n' Text ' ' Text 'case' Keyword ' ' Text '2' Literal.Number.Integer ' ' Text ':' Punctuation ' ' Text 'type' Name ' ' Text '=' Operator ' ' Text 'RECT' Name ' ' Text '|' Operator ' ' Text 'WID' Name ';' Punctuation ' ' Text 'break' Keyword ';' Punctuation '\n' Text ' ' Text 'case' Keyword ' ' Text '3' Literal.Number.Integer ' ' Text ':' Punctuation ' ' Text 'type' Name ' ' Text '=' Operator ' ' Text 'RECT' Name ' ' Text '|' Operator ' ' Text 'HEI' Name ';' Punctuation ' ' Text 'break' Keyword ';' Punctuation '\n' Text ' ' Text 'case' Keyword ' ' Text '4' Literal.Number.Integer ' ' Text ':' Punctuation ' ' Text 'type' Name ' ' Text '=' Operator ' ' Text 'ARC' Name ';' Punctuation ' ' Text 'break' Keyword ';' Punctuation '\n' Text ' ' Text 'default' Keyword ' ' Text ':' Punctuation ' ' Text 'type' Name ' ' Text '=' Operator ' ' Text 'OVAL' Name ';' Punctuation ' ' Text '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'shape' Name ' ' Text '=' Operator ' ' Text 'null' Keyword.Constant ';' Punctuation '\n' Text ' ' Text 'bimg' Name ' ' Text '=' Operator ' ' Text 'null' Keyword.Constant ';' Punctuation '\n' Text ' ' Text 'extent' Name ' ' Text '=' Operator ' ' Text '360.0' Literal.Number.Float ';' Punctuation '\n' Text ' ' Text 'zoom' Name ' ' Text '=' Operator ' ' Text '2.0' Literal.Number.Float ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'step' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'bimg' Name ' ' Text '=' Operator '=' Operator ' ' Text 'null' Keyword.Constant ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'int' Keyword.Type ' ' Text 'biw' Name ' ' Text '=' Operator ' ' Text 'Surface' Name '.' Punctuation 'bimg' Name.Attribute '.' Punctuation 'getWidth' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'int' Keyword.Type ' ' Text 'bih' Name ' ' Text '=' Operator ' ' Text 'Surface' Name '.' Punctuation 'bimg' Name.Attribute '.' Punctuation 'getHeight' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'bimg' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'BufferedImage' Name '(' Punctuation 'biw' Name ',' Punctuation ' ' Text 'bih' Name ',' Punctuation ' ' Text 'BufferedImage' Name '.' Punctuation 'TYPE_INT_RGB' Name.Attribute ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'Graphics2D' Name ' ' Text 'big' Name ' ' Text '=' Operator ' ' Text 'bimg' Name '.' Punctuation 'createGraphics' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'big' Name '.' Punctuation 'drawImage' Name.Attribute '(' Punctuation 'Surface' Name '.' Punctuation 'bimg' Name.Attribute ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'double' Keyword.Type ' ' Text 'z' Name ' ' Text '=' Operator ' ' Text 'Math' Name '.' Punctuation 'min' Name.Attribute '(' Punctuation 'w' Name ',' Punctuation ' ' Text 'h' Name ')' Punctuation ' ' Text '*' Operator ' ' Text 'zoom' Name ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'OVAL' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'shape' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Ellipse2D' Name '.' Punctuation 'Double' Name.Attribute '(' Punctuation 'w' Name '/' Operator '2' Literal.Number.Integer '-' Operator 'z' Name '/' Operator '2' Literal.Number.Integer ',' Punctuation 'h' Name '/' Operator '2' Literal.Number.Integer '-' Operator 'z' Name '/' Operator '2' Literal.Number.Integer ',' Punctuation 'z' Name ',' Punctuation 'z' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'ARC' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'shape' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Arc2D' Name '.' Punctuation 'Double' Name.Attribute '(' Punctuation '-' Operator '100' Literal.Number.Integer ',' Punctuation '-' Operator '100' Literal.Number.Integer ',' Punctuation 'w' Name '+' Operator '200' Literal.Number.Integer ',' Punctuation 'h' Name '+' Operator '200' Literal.Number.Integer ',' Punctuation '90' Literal.Number.Integer ',' Punctuation 'extent' Name ',' Punctuation 'Arc2D' Name '.' Punctuation 'PIE' Name.Attribute ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'extent' Name ' ' Text '-' Operator '=' Operator ' ' Text 'eIncr' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'RECT' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'WID' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'shape' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Rectangle2D' Name '.' Punctuation 'Double' Name.Attribute '(' Punctuation 'w' Name '/' Operator '2' Literal.Number.Integer '-' Operator 'z' Name '/' Operator '2' Literal.Number.Integer ',' Punctuation '0' Literal.Number.Integer ',' Punctuation 'z' Name ',' Punctuation 'h' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'HEI' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'shape' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Rectangle2D' Name '.' Punctuation 'Double' Name.Attribute '(' Punctuation '0' Literal.Number.Integer ',' Punctuation 'h' Name '/' Operator '2' Literal.Number.Integer '-' Operator 'z' Name '/' Operator '2' Literal.Number.Integer ',' Punctuation 'w' Name ',' Punctuation 'z' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text '{' Punctuation '\n' Text ' ' Text 'shape' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Rectangle2D' Name '.' Punctuation 'Double' Name.Attribute '(' Punctuation 'w' Name '/' Operator '2' Literal.Number.Integer '-' Operator 'z' Name '/' Operator '2' Literal.Number.Integer ',' Punctuation 'h' Name '/' Operator '2' Literal.Number.Integer '-' Operator 'z' Name '/' Operator '2' Literal.Number.Integer ',' Punctuation 'z' Name ',' Punctuation 'z' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'zoom' Name ' ' Text '+' Operator '=' Operator ' ' Text 'zIncr' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'render' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ',' Punctuation ' ' Text 'Graphics2D' Name ' ' Text 'g2' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'clip' Name.Attribute '(' Punctuation 'shape' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'drawImage' Name.Attribute '(' Punctuation 'bimg' Name ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getBegin' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'beginning' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getEnd' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'ending' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text '// End CoE class\n' Comment.Single '\n' Text '\n' Text '\n' Text ' ' Text '/**\n * Dither Dissolve Effect. For each successive step in the animation, \n * a pseudo-random starting horizontal position is chosen using list, \n * and then the corresponding points created from xlist and ylist are\n * blacked out for the current "chunk". The x and y chunk starting\n * positions are each incremented by the associated chunk size, and \n * this process is repeated for the number of "steps" in the \n * animation, causing an equal number of pseudo-randomly picked \n * "blocks" to be blacked out during each step of the animation.\n */' Comment.Multiline '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'class' Keyword.Declaration ' ' Text 'DdE' Name.Class ' ' Text 'implements' Keyword.Declaration ' ' Text 'Part' Name ' ' Text '{' Punctuation '\n' Text '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'beginning' Name ',' Punctuation ' ' Text 'ending' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'BufferedImage' Name ' ' Text 'bimg' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'Graphics2D' Name ' ' Text 'big' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'List' Name ' ' Text 'list' Name ',' Punctuation ' ' Text 'xlist' Name ',' Punctuation ' ' Text 'ylist' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'xeNum' Name ',' Punctuation ' ' Text 'yeNum' Name ';' Punctuation ' ' Text '// element number\n' Comment.Single ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'xcSize' Name ',' Punctuation ' ' Text 'ycSize' Name ';' Punctuation ' ' Text '// chunk size\n' Comment.Single ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'inc' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'blocksize' Name ';' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'DdE' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'beg' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'end' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'blocksize' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'beginning' Name.Attribute ' ' Text '=' Operator ' ' Text 'beg' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'ending' Name.Attribute ' ' Text '=' Operator ' ' Text 'end' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'blocksize' Name.Attribute ' ' Text '=' Operator ' ' Text 'blocksize' Name ';' Punctuation ' ' Text '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'createShuffledLists' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'int' Keyword.Type ' ' Text 'width' Name ' ' Text '=' Operator ' ' Text 'bimg' Name '.' Punctuation 'getWidth' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'int' Keyword.Type ' ' Text 'height' Name ' ' Text '=' Operator ' ' Text 'bimg' Name '.' Punctuation 'getHeight' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'Integer' Name ' ' Text 'xarray' Name '[' Operator ']' Operator ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Integer' Name '[' Operator 'width' Name ']' Operator ';' Punctuation '\n' Text ' ' Text 'Integer' Name ' ' Text 'yarray' Name '[' Operator ']' Operator ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Integer' Name '[' Operator 'height' Name ']' Operator ';' Punctuation '\n' Text ' ' Text 'Integer' Name ' ' Text 'array' Name '[' Operator ']' Operator ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Integer' Name '[' Operator 'ending' Name ' ' Text '-' Operator ' ' Text 'beginning' Name ' ' Text '+' Operator ' ' Text '1' Literal.Number.Integer ']' Operator ';' Punctuation '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'i' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation ' ' Text 'i' Name ' ' Text '<' Operator ' ' Text 'xarray' Name '.' Punctuation 'length' Name.Attribute ';' Punctuation ' ' Text 'i' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'xarray' Name '[' Operator 'i' Name ']' Operator ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Integer' Name '(' Punctuation 'i' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'j' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation ' ' Text 'j' Name ' ' Text '<' Operator ' ' Text 'yarray' Name '.' Punctuation 'length' Name.Attribute ';' Punctuation ' ' Text 'j' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'yarray' Name '[' Operator 'j' Name ']' Operator ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Integer' Name '(' Punctuation 'j' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'k' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation ' ' Text 'k' Name ' ' Text '<' Operator ' ' Text 'array' Name '.' Punctuation 'length' Name.Attribute ';' Punctuation ' ' Text 'k' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'array' Name '[' Operator 'k' Name ']' Operator ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Integer' Name '(' Punctuation 'k' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text '\n' Text ' ' Text 'java' Name '.' Punctuation 'util' Name.Attribute '.' Punctuation 'Collections' Name.Attribute '.' Punctuation 'shuffle' Name.Attribute '(' Punctuation 'xlist' Name ' ' Text '=' Operator ' ' Text 'Arrays' Name '.' Punctuation 'asList' Name.Attribute '(' Punctuation 'xarray' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'java' Name '.' Punctuation 'util' Name.Attribute '.' Punctuation 'Collections' Name.Attribute '.' Punctuation 'shuffle' Name.Attribute '(' Punctuation 'ylist' Name ' ' Text '=' Operator ' ' Text 'Arrays' Name '.' Punctuation 'asList' Name.Attribute '(' Punctuation 'yarray' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'java' Name '.' Punctuation 'util' Name.Attribute '.' Punctuation 'Collections' Name.Attribute '.' Punctuation 'shuffle' Name.Attribute '(' Punctuation 'list' Name ' ' Text '=' Operator ' ' Text 'Arrays' Name '.' Punctuation 'asList' Name.Attribute '(' Punctuation 'array' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'reset' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'bimg' Name ' ' Text '=' Operator ' ' Text 'null' Keyword.Constant ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'step' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'bimg' Name ' ' Text '=' Operator '=' Operator ' ' Text 'null' Keyword.Constant ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'int' Keyword.Type ' ' Text 'biw' Name ' ' Text '=' Operator ' ' Text 'Surface' Name '.' Punctuation 'bimg' Name.Attribute '.' Punctuation 'getWidth' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'int' Keyword.Type ' ' Text 'bih' Name ' ' Text '=' Operator ' ' Text 'Surface' Name '.' Punctuation 'bimg' Name.Attribute '.' Punctuation 'getHeight' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'bimg' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'BufferedImage' Name '(' Punctuation 'biw' Name ',' Punctuation ' ' Text 'bih' Name ',' Punctuation ' ' Text 'BufferedImage' Name '.' Punctuation 'TYPE_INT_RGB' Name.Attribute ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'createShuffledLists' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'big' Name ' ' Text '=' Operator ' ' Text 'bimg' Name '.' Punctuation 'createGraphics' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'big' Name '.' Punctuation 'drawImage' Name.Attribute '(' Punctuation 'Surface' Name '.' Punctuation 'bimg' Name.Attribute ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'xcSize' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'xlist' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ' ' Text '/' Operator ' ' Text '(' Punctuation 'ending' Name ' ' Text '-' Operator ' ' Text 'beginning' Name ')' Punctuation ')' Punctuation ' ' Text '+' Operator ' ' Text '1' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'ycSize' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'ylist' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ' ' Text '/' Operator ' ' Text '(' Punctuation 'ending' Name ' ' Text '-' Operator ' ' Text 'beginning' Name ')' Punctuation ')' Punctuation ' ' Text '+' Operator ' ' Text '1' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'xeNum' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'inc' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'xeNum' Name ' ' Text '=' Operator ' ' Text 'xcSize' Name ' ' Text '*' Operator ' ' Text '(' Punctuation '(' Punctuation 'Integer' Name ')' Punctuation 'list' Name '.' Punctuation 'get' Name.Attribute '(' Punctuation 'inc' Name ')' Punctuation ')' Punctuation '.' Punctuation 'intValue' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'yeNum' Name ' ' Text '=' Operator ' ' Text '-' Operator 'ycSize' Name ';' Punctuation '\n' Text ' ' Text 'inc' Name '+' Operator '+' Operator ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'render' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ',' Punctuation ' ' Text 'Graphics2D' Name ' ' Text 'g2' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'big' Name '.' Punctuation 'setColor' Name.Attribute '(' Punctuation 'black' Name ')' Punctuation ';' Punctuation ' ' Text '\n' Text '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'k' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation ' ' Text 'k' Name ' ' Text '<' Operator '=' Operator ' ' Text '(' Punctuation 'ending' Name ' ' Text '-' Operator ' ' Text 'beginning' Name ')' Punctuation ';' Punctuation ' ' Text 'k' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'xeNum' Name ' ' Text '+' Operator ' ' Text 'xcSize' Name ')' Punctuation ' ' Text '>' Operator ' ' Text 'xlist' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'xeNum' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text '{' Punctuation '\n' Text ' ' Text 'xeNum' Name ' ' Text '+' Operator '=' Operator ' ' Text 'xcSize' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'yeNum' Name ' ' Text '+' Operator '=' Operator ' ' Text 'ycSize' Name ';' Punctuation '\n' Text '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'i' Name ' ' Text '=' Operator ' ' Text 'xeNum' Name ';' Punctuation ' ' Text 'i' Name ' ' Text '<' Operator ' ' Text 'xeNum' Name '+' Operator 'xcSize' Name ' ' Text '&' Operator '&' Operator ' ' Text 'i' Name ' ' Text '<' Operator ' ' Text 'xlist' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation ' ' Text 'i' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'j' Name ' ' Text '=' Operator ' ' Text 'yeNum' Name ';' Punctuation ' ' Text 'j' Name ' ' Text '<' Operator ' ' Text 'yeNum' Name '+' Operator 'ycSize' Name ' ' Text '&' Operator '&' Operator ' ' Text 'j' Name ' ' Text '<' Operator ' ' Text 'ylist' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation ' ' Text 'j' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation ' ' Text '\n' Text ' ' Text 'int' Keyword.Type ' ' Text 'xval' Name ' ' Text '=' Operator ' ' Text '(' Punctuation '(' Punctuation 'Integer' Name ')' Punctuation 'xlist' Name '.' Punctuation 'get' Name.Attribute '(' Punctuation 'i' Name ')' Punctuation ')' Punctuation '.' Punctuation 'intValue' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'int' Keyword.Type ' ' Text 'yval' Name ' ' Text '=' Operator ' ' Text '(' Punctuation '(' Punctuation 'Integer' Name ')' Punctuation 'ylist' Name '.' Punctuation 'get' Name.Attribute '(' Punctuation 'j' Name ')' Punctuation ')' Punctuation '.' Punctuation 'intValue' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation '(' Punctuation 'xval' Name ' ' Text '%' Operator ' ' Text 'blocksize' Name ')' Punctuation ' ' Text '=' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '&' Operator '&' Operator '\n' Text ' ' Text '(' Punctuation '(' Punctuation 'yval' Name ' ' Text '%' Operator ' ' Text 'blocksize' Name ')' Punctuation ' ' Text '=' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'big' Name '.' Punctuation 'fillRect' Name.Attribute '(' Punctuation 'xval' Name ',' Punctuation ' ' Text 'yval' Name ',' Punctuation ' ' Text 'blocksize' Name ',' Punctuation ' ' Text 'blocksize' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '\n' Text ' ' Text 'g2' Name '.' Punctuation 'drawImage' Name.Attribute '(' Punctuation 'bimg' Name ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getBegin' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'beginning' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getEnd' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'ending' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text '// End DdE class\n' Comment.Single '\n' Text '\n' Text ' ' Text "/**\n * Subimage effect. Subimage the scene's buffered\n * image then rotate and scale down the subimages.\n */" Comment.Multiline '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'class' Keyword.Declaration ' ' Text 'SiE' Name.Class ' ' Text 'implements' Keyword.Declaration ' ' Text 'Part' Name ' ' Text '{' Punctuation '\n' Text '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'beginning' Name ',' Punctuation ' ' Text 'ending' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'BufferedImage' Name ' ' Text 'bimg' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'double' Keyword.Type ' ' Text 'rIncr' Name ',' Punctuation ' ' Text 'sIncr' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'double' Keyword.Type ' ' Text 'scale' Name ',' Punctuation ' ' Text 'rotate' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'siw' Name ',' Punctuation ' ' Text 'sih' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'Vector' Name ' ' Text 'subs' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Vector' Name '(' Punctuation '20' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'Vector' Name ' ' Text 'pts' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Vector' Name '(' Punctuation '20' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'SiE' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'siw' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'sih' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'beg' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'end' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'siw' Name.Attribute ' ' Text '=' Operator ' ' Text 'siw' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'sih' Name.Attribute ' ' Text '=' Operator ' ' Text 'sih' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'beginning' Name.Attribute ' ' Text '=' Operator ' ' Text 'beg' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'ending' Name.Attribute ' ' Text '=' Operator ' ' Text 'end' Name ';' Punctuation '\n' Text ' ' Text 'rIncr' Name ' ' Text '=' Operator ' ' Text '360.0' Literal.Number.Float ' ' Text '/' Operator ' ' Text '(' Punctuation 'ending' Name ' ' Text '-' Operator ' ' Text 'beginning' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'sIncr' Name ' ' Text '=' Operator ' ' Text '1.0' Literal.Number.Float ' ' Text '/' Operator ' ' Text '(' Punctuation 'ending' Name ' ' Text '-' Operator ' ' Text 'beginning' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'reset' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'scale' Name ' ' Text '=' Operator ' ' Text '1.0' Literal.Number.Float ';' Punctuation ' ' Text '\n' Text ' ' Text 'rotate' Name ' ' Text '=' Operator ' ' Text '0.0' Literal.Number.Float ';' Punctuation '\n' Text ' ' Text 'bimg' Name ' ' Text '=' Operator ' ' Text 'null' Keyword.Constant ';' Punctuation '\n' Text ' ' Text 'subs' Name '.' Punctuation 'clear' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'pts' Name '.' Punctuation 'clear' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'step' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'bimg' Name ' ' Text '=' Operator '=' Operator ' ' Text 'null' Keyword.Constant ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'int' Keyword.Type ' ' Text 'biw' Name ' ' Text '=' Operator ' ' Text 'Surface' Name '.' Punctuation 'bimg' Name.Attribute '.' Punctuation 'getWidth' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'int' Keyword.Type ' ' Text 'bih' Name ' ' Text '=' Operator ' ' Text 'Surface' Name '.' Punctuation 'bimg' Name.Attribute '.' Punctuation 'getHeight' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'bimg' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'BufferedImage' Name '(' Punctuation 'biw' Name ',' Punctuation ' ' Text 'bih' Name ',' Punctuation ' ' Text 'BufferedImage' Name '.' Punctuation 'TYPE_INT_RGB' Name.Attribute ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'Graphics2D' Name ' ' Text 'big' Name ' ' Text '=' Operator ' ' Text 'bimg' Name '.' Punctuation 'createGraphics' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'big' Name '.' Punctuation 'drawImage' Name.Attribute '(' Punctuation 'Surface' Name '.' Punctuation 'bimg' Name.Attribute ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'x' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation ' ' Text 'x' Name ' ' Text '<' Operator ' ' Text 'w' Name ' ' Text '&' Operator '&' Operator ' ' Text 'scale' Name ' ' Text '>' Operator ' ' Text '0.0' Literal.Number.Float ';' Punctuation ' ' Text 'x' Name '+' Operator '=' Operator 'siw' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'int' Keyword.Type ' ' Text 'ww' Name ' ' Text '=' Operator ' ' Text 'x' Name '+' Operator 'siw' Name ' ' Text '<' Operator ' ' Text 'w' Name ' ' Text '?' Operator ' ' Text 'siw' Name ' ' Text ':' Punctuation ' ' Text 'w' Name '-' Operator 'x' Name ';' Punctuation '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'y' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation ' ' Text 'y' Name ' ' Text '<' Operator ' ' Text 'h' Name ';' Punctuation ' ' Text 'y' Name '+' Operator '=' Operator 'sih' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'int' Keyword.Type ' ' Text 'hh' Name ' ' Text '=' Operator ' ' Text 'y' Name '+' Operator 'sih' Name ' ' Text '<' Operator ' ' Text 'h' Name ' ' Text '?' Operator ' ' Text 'sih' Name ' ' Text ':' Punctuation ' ' Text 'h' Name '-' Operator 'y' Name ';' Punctuation '\n' Text ' ' Text 'subs' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'bimg' Name '.' Punctuation 'getSubimage' Name.Attribute '(' Punctuation 'x' Name ',' Punctuation 'y' Name ',' Punctuation 'ww' Name ',' Punctuation 'hh' Name ')' Punctuation ')' Punctuation ';' Punctuation ' ' Text '\n' Text ' ' Text 'pts' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'Point' Name '(' Punctuation 'x' Name ',' Punctuation ' ' Text 'y' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '\n' Text ' ' Text 'rotate' Name ' ' Text '+' Operator '=' Operator ' ' Text 'rIncr' Name ';' Punctuation '\n' Text ' ' Text 'scale' Name ' ' Text '-' Operator '=' Operator ' ' Text 'sIncr' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'render' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ',' Punctuation ' ' Text 'Graphics2D' Name ' ' Text 'g2' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'AffineTransform' Name ' ' Text 'saveTx' Name ' ' Text '=' Operator ' ' Text 'g2' Name '.' Punctuation 'getTransform' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setColor' Name.Attribute '(' Punctuation 'blue' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'i' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation ' ' Text 'i' Name ' ' Text '<' Operator ' ' Text 'subs' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ' ' Text '&' Operator '&' Operator ' ' Text 'scale' Name ' ' Text '>' Operator ' ' Text '0.0' Literal.Number.Float ';' Punctuation ' ' Text 'i' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'BufferedImage' Name ' ' Text 'bi' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'BufferedImage' Name ')' Punctuation ' ' Text 'subs' Name '.' Punctuation 'get' Name.Attribute '(' Punctuation 'i' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'Point' Name ' ' Text 'p' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'Point' Name ')' Punctuation ' ' Text 'pts' Name '.' Punctuation 'get' Name.Attribute '(' Punctuation 'i' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'int' Keyword.Type ' ' Text 'ww' Name ' ' Text '=' Operator ' ' Text 'bi' Name '.' Punctuation 'getWidth' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'int' Keyword.Type ' ' Text 'hh' Name ' ' Text '=' Operator ' ' Text 'bi' Name '.' Punctuation 'getHeight' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'AffineTransform' Name ' ' Text 'at' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'AffineTransform' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'at' Name '.' Punctuation 'rotate' Name.Attribute '(' Punctuation 'Math' Name '.' Punctuation 'toRadians' Name.Attribute '(' Punctuation 'rotate' Name ')' Punctuation ',' Punctuation ' ' Text 'p' Name '.' Punctuation 'x' Name.Attribute '+' Operator 'ww' Name '/' Operator '2' Literal.Number.Integer ',' Punctuation ' ' Text 'p' Name '.' Punctuation 'y' Name.Attribute '+' Operator 'hh' Name '/' Operator '2' Literal.Number.Integer ')' Punctuation ';' Punctuation ' ' Text '\n' Text ' ' Text 'at' Name '.' Punctuation 'translate' Name.Attribute '(' Punctuation 'p' Name '.' Punctuation 'x' Name.Attribute ',' Punctuation ' ' Text 'p' Name '.' Punctuation 'y' Name.Attribute ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'at' Name '.' Punctuation 'scale' Name.Attribute '(' Punctuation 'scale' Name ',' Punctuation ' ' Text 'scale' Name ')' Punctuation ';' Punctuation '\n' Text '\n' Text ' ' Text 'Rectangle' Name ' ' Text 'b1' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Rectangle' Name '(' Punctuation '0' Literal.Number.Integer ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text 'ww' Name ',' Punctuation ' ' Text 'hh' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'Shape' Name ' ' Text 'shape' Name ' ' Text '=' Operator ' ' Text 'at' Name '.' Punctuation 'createTransformedShape' Name.Attribute '(' Punctuation 'b1' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'Rectangle2D' Name ' ' Text 'b2' Name ' ' Text '=' Operator ' ' Text 'shape' Name '.' Punctuation 'getBounds2D' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'double' Keyword.Type ' ' Text 'xx' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'p' Name '.' Punctuation 'x' Name.Attribute '+' Operator 'ww' Name '/' Operator '2' Literal.Number.Integer ')' Punctuation ' ' Text '-' Operator ' ' Text '(' Punctuation 'b2' Name '.' Punctuation 'getX' Name.Attribute '(' Punctuation ')' Punctuation '+' Operator 'b2' Name '.' Punctuation 'getWidth' Name.Attribute '(' Punctuation ')' Punctuation '/' Operator '2' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'double' Keyword.Type ' ' Text 'yy' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'p' Name '.' Punctuation 'y' Name.Attribute '+' Operator 'hh' Name '/' Operator '2' Literal.Number.Integer ')' Punctuation ' ' Text '-' Operator ' ' Text '(' Punctuation 'b2' Name '.' Punctuation 'getY' Name.Attribute '(' Punctuation ')' Punctuation '+' Operator 'b2' Name '.' Punctuation 'getHeight' Name.Attribute '(' Punctuation ')' Punctuation '/' Operator '2' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'AffineTransform' Name ' ' Text 'toCenterAT' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'AffineTransform' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'toCenterAT' Name '.' Punctuation 'translate' Name.Attribute '(' Punctuation 'xx' Name ',' Punctuation ' ' Text 'yy' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'toCenterAT' Name '.' Punctuation 'concatenate' Name.Attribute '(' Punctuation 'at' Name ')' Punctuation ';' Punctuation '\n' Text '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setTransform' Name.Attribute '(' Punctuation 'toCenterAT' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'drawImage' Name.Attribute '(' Punctuation 'bi' Name ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text '0' Literal.Number.Integer ',' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'draw' Name.Attribute '(' Punctuation 'b1' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setTransform' Name.Attribute '(' Punctuation 'saveTx' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getBegin' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'beginning' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getEnd' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'ending' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text '// End SiE class\n' Comment.Single '\n' Text '\n' Text '\n' Text '\n' Text ' ' Text '/**\n * Line Effect. Flattened ellipse with lines from the center \n * to the edge. Expand or collapse the ellipse. Fade in or out \n * the lines.\n */' Comment.Multiline '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'class' Keyword.Declaration ' ' Text 'LnE' Name.Class ' ' Text 'implements' Keyword.Declaration ' ' Text 'Part' Name ' ' Text '{' Punctuation '\n' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'INC' Name ' ' Text '=' Operator ' ' Text '1' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'DEC' Name ' ' Text '=' Operator ' ' Text '2' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'R' Name ' ' Text '=' Operator ' ' Text '4' Literal.Number.Integer ';' Punctuation ' ' Text '// rotate\n' Comment.Single ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'RI' Name ' ' Text '=' Operator ' ' Text 'R' Name ' ' Text '|' Operator ' ' Text 'INC' Name ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'RD' Name ' ' Text '=' Operator ' ' Text 'R' Name ' ' Text '|' Operator ' ' Text 'DEC' Name ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'ZOOM' Name ' ' Text '=' Operator ' ' Text '8' Literal.Number.Integer ';' Punctuation ' ' Text '// zoom\n' Comment.Single ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'ZOOMI' Name ' ' Text '=' Operator ' ' Text 'ZOOM' Name ' ' Text '|' Operator ' ' Text 'INC' Name ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'ZOOMD' Name ' ' Text '=' Operator ' ' Text 'ZOOM' Name ' ' Text '|' Operator ' ' Text 'DEC' Name ';' Punctuation ' ' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'AC' Name ' ' Text '=' Operator ' ' Text '32' Literal.Number.Integer ';' Punctuation ' ' Text '// AlphaComposite\n' Comment.Single ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'ACI' Name ' ' Text '=' Operator ' ' Text '32' Literal.Number.Integer ' ' Text '|' Operator ' ' Text 'INC' Name ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'ACD' Name ' ' Text '=' Operator ' ' Text '32' Literal.Number.Integer ' ' Text '|' Operator ' ' Text 'DEC' Name ';' Punctuation ' ' Text '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'beginning' Name ',' Punctuation ' ' Text 'ending' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'double' Keyword.Type ' ' Text 'rIncr' Name ',' Punctuation ' ' Text 'rotate' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'double' Keyword.Type ' ' Text 'zIncr' Name ',' Punctuation ' ' Text 'zoom' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'Vector' Name ' ' Text 'pts' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Vector' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'float' Keyword.Type ' ' Text 'alpha' Name ',' Punctuation ' ' Text 'aIncr' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'type' Name ';' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'LnE' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'type' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'beg' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'end' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'type' Name.Attribute ' ' Text '=' Operator ' ' Text 'type' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'beginning' Name.Attribute ' ' Text '=' Operator ' ' Text 'beg' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'ending' Name.Attribute ' ' Text '=' Operator ' ' Text 'end' Name ';' Punctuation '\n' Text ' ' Text 'rIncr' Name ' ' Text '=' Operator ' ' Text '360.0' Literal.Number.Float ' ' Text '/' Operator ' ' Text '(' Punctuation 'ending' Name ' ' Text '-' Operator ' ' Text 'beginning' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'aIncr' Name ' ' Text '=' Operator ' ' Text '0.9f' Literal.Number.Float ' ' Text '/' Operator ' ' Text '(' Punctuation 'ending' Name ' ' Text '-' Operator ' ' Text 'beginning' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'zIncr' Name ' ' Text '=' Operator ' ' Text '2.0' Literal.Number.Float ' ' Text '/' Operator ' ' Text '(' Punctuation 'ending' Name ' ' Text '-' Operator ' ' Text 'beginning' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'DEC' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'rIncr' Name ' ' Text '=' Operator ' ' Text '-' Operator 'rIncr' Name ';' Punctuation '\n' Text ' ' Text 'aIncr' Name ' ' Text '=' Operator ' ' Text '-' Operator 'aIncr' Name ';' Punctuation '\n' Text ' ' Text 'zIncr' Name ' ' Text '=' Operator ' ' Text '-' Operator 'zIncr' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'generatePts' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ',' Punctuation ' ' Text 'double' Keyword.Type ' ' Text 'sizeF' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'pts' Name '.' Punctuation 'clear' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'double' Keyword.Type ' ' Text 'size' Name ' ' Text '=' Operator ' ' Text 'Math' Name '.' Punctuation 'min' Name.Attribute '(' Punctuation 'w' Name ',' Punctuation ' ' Text 'h' Name ')' Punctuation ' ' Text '*' Operator ' ' Text 'sizeF' Name ';' Punctuation '\n' Text ' ' Text 'Ellipse2D' Name ' ' Text 'ellipse' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Ellipse2D' Name '.' Punctuation 'Double' Name.Attribute '(' Punctuation 'w' Name '/' Operator '2' Literal.Number.Integer '-' Operator 'size' Name '/' Operator '2' Literal.Number.Integer ',' Punctuation 'h' Name '/' Operator '2' Literal.Number.Integer '-' Operator 'size' Name '/' Operator '2' Literal.Number.Integer ',' Punctuation 'size' Name ',' Punctuation 'size' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'PathIterator' Name ' ' Text 'pi' Name ' ' Text '=' Operator ' ' Text 'ellipse' Name '.' Punctuation 'getPathIterator' Name.Attribute '(' Punctuation 'null' Keyword.Constant ',' Punctuation ' ' Text '0.8' Literal.Number.Float ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'while' Keyword ' ' Text '(' Punctuation ' ' Text '!' Operator 'pi' Name '.' Punctuation 'isDone' Name.Attribute '(' Punctuation ')' Punctuation ' ' Text ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'double' Keyword.Type '[' Operator ']' Operator ' ' Text 'pt' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'double' Keyword.Type '[' Operator '6' Literal.Number.Integer ']' Operator ';' Punctuation '\n' Text ' ' Text 'switch' Keyword ' ' Text '(' Punctuation ' ' Text 'pi' Name '.' Punctuation 'currentSegment' Name.Attribute '(' Punctuation 'pt' Name ')' Punctuation ' ' Text ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'case' Keyword ' ' Text 'FlatteningPathIterator' Name '.' Punctuation 'SEG_MOVETO' Name.Attribute ':' Punctuation '\n' Text ' ' Text 'case' Keyword ' ' Text 'FlatteningPathIterator' Name '.' Punctuation 'SEG_LINETO' Name.Attribute ':' Punctuation '\n' Text ' ' Text 'pts' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'Point2D' Name '.' Punctuation 'Double' Name.Attribute '(' Punctuation 'pt' Name '[' Operator '0' Literal.Number.Integer ']' Operator ',' Punctuation ' ' Text 'pt' Name '[' Operator '1' Literal.Number.Integer ']' Operator ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'pi' Name '.' Punctuation 'next' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'reset' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'DEC' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'rotate' Name ' ' Text '=' Operator ' ' Text '360' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'alpha' Name ' ' Text '=' Operator ' ' Text '1.0f' Literal.Number.Float ';' Punctuation '\n' Text ' ' Text 'zoom' Name ' ' Text '=' Operator ' ' Text '2.0' Literal.Number.Float ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text '{' Punctuation '\n' Text ' ' Text 'rotate' Name ' ' Text '=' Operator ' ' Text 'alpha' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'zoom' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'ZOOM' Name ')' Punctuation ' ' Text '=' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'generatePts' Name '(' Punctuation 'w' Name ',' Punctuation ' ' Text 'h' Name ',' Punctuation ' ' Text '0.5' Literal.Number.Float ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'step' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'ZOOM' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'generatePts' Name '(' Punctuation 'w' Name ',' Punctuation ' ' Text 'h' Name ',' Punctuation ' ' Text 'zoom' Name ' ' Text '+' Operator '=' Operator ' ' Text 'zIncr' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'RI' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ' ' Text '|' Operator '|' Operator ' ' Text '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'RI' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'rotate' Name ' ' Text '+' Operator '=' Operator ' ' Text 'rIncr' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'ACI' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ' ' Text '|' Operator '|' Operator ' ' Text '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'ACD' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'alpha' Name ' ' Text '+' Operator '=' Operator ' ' Text 'aIncr' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'render' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ',' Punctuation ' ' Text 'Graphics2D' Name ' ' Text 'g2' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'Composite' Name ' ' Text 'saveAC' Name ' ' Text '=' Operator ' ' Text 'null' Keyword.Constant ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'AC' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ' ' Text '&' Operator '&' Operator ' ' Text 'alpha' Name ' ' Text '>' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ' ' Text '&' Operator '&' Operator ' ' Text 'alpha' Name ' ' Text '<' Operator '=' Operator ' ' Text '1' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'saveAC' Name ' ' Text '=' Operator ' ' Text 'g2' Name '.' Punctuation 'getComposite' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setComposite' Name.Attribute '(' Punctuation 'AlphaComposite' Name '.' Punctuation 'getInstance' Name.Attribute '(' Punctuation 'AlphaComposite' Name '.' Punctuation 'SRC_OVER' Name.Attribute ',' Punctuation ' ' Text 'alpha' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'AffineTransform' Name ' ' Text 'saveTx' Name ' ' Text '=' Operator ' ' Text 'null' Keyword.Constant ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'R' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'saveTx' Name ' ' Text '=' Operator ' ' Text 'g2' Name '.' Punctuation 'getTransform' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'AffineTransform' Name ' ' Text 'at' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'AffineTransform' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'at' Name '.' Punctuation 'rotate' Name.Attribute '(' Punctuation 'Math' Name '.' Punctuation 'toRadians' Name.Attribute '(' Punctuation 'rotate' Name ')' Punctuation ',' Punctuation ' ' Text 'w' Name '/' Operator '2' Literal.Number.Integer ',' Punctuation ' ' Text 'h' Name '/' Operator '2' Literal.Number.Integer ')' Punctuation ';' Punctuation ' ' Text '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setTransform' Name.Attribute '(' Punctuation 'at' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'Point2D' Name ' ' Text 'p1' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Point2D' Name '.' Punctuation 'Double' Name.Attribute '(' Punctuation 'w' Name '/' Operator '2' Literal.Number.Integer ',' Punctuation ' ' Text 'h' Name '/' Operator '2' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setColor' Name.Attribute '(' Punctuation 'Color' Name '.' Punctuation 'yellow' Name.Attribute ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'i' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation ' ' Text 'i' Name ' ' Text '<' Operator ' ' Text 'pts' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation '-' Operator '1' Literal.Number.Integer ';' Punctuation ' ' Text 'i' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'draw' Name.Attribute '(' Punctuation 'new' Keyword ' ' Text 'Line2D' Name '.' Punctuation 'Float' Name.Attribute '(' Punctuation 'p1' Name ',' Punctuation ' ' Text '(' Punctuation 'Point2D' Name ')' Punctuation ' ' Text 'pts' Name '.' Punctuation 'get' Name.Attribute '(' Punctuation 'i' Name ')' Punctuation ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'saveTx' Name ' ' Text '!' Operator '=' Operator ' ' Text 'null' Keyword.Constant ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setTransform' Name.Attribute '(' Punctuation 'saveTx' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'saveAC' Name ' ' Text '!' Operator '=' Operator ' ' Text 'null' Keyword.Constant ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setComposite' Name.Attribute '(' Punctuation 'saveAC' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getBegin' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'beginning' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getEnd' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'ending' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text '// End LnE class\n' Comment.Single '\n' Text '\n' Text '\n' Text ' ' Text '/**\n * Template for Features & Contributors consisting of translating\n * blue and red rectangles and an image going from transparent to\n * opaque.\n */' Comment.Multiline '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'class' Keyword.Declaration ' ' Text 'Temp' Name.Class ' ' Text 'implements' Keyword.Declaration ' ' Text 'Part' Name ' ' Text '{' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'NOANIM' Name ' ' Text '=' Operator ' ' Text '1' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'RECT' Name ' ' Text '=' Operator ' ' Text '2' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'RNA' Name ' ' Text '=' Operator ' ' Text 'RECT' Name ' ' Text '|' Operator ' ' Text 'NOANIM' Name ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'IMG' Name ' ' Text '=' Operator ' ' Text '4' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'INA' Name ' ' Text '=' Operator ' ' Text 'IMG' Name ' ' Text '|' Operator ' ' Text 'NOANIM' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'beginning' Name ',' Punctuation ' ' Text 'ending' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'float' Keyword.Type ' ' Text 'alpha' Name ',' Punctuation ' ' Text 'aIncr' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'type' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'Rectangle' Name ' ' Text 'rect1' Name ',' Punctuation ' ' Text 'rect2' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'x' Name ',' Punctuation ' ' Text 'y' Name ',' Punctuation ' ' Text 'xIncr' Name ',' Punctuation ' ' Text 'yIncr' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'Image' Name ' ' Text 'img' Name ';' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'Temp' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'type' Name ',' Punctuation ' ' Text 'Image' Name ' ' Text 'img' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'beg' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'end' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'type' Name.Attribute ' ' Text '=' Operator ' ' Text 'type' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'img' Name.Attribute ' ' Text '=' Operator ' ' Text 'img' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'beginning' Name.Attribute ' ' Text '=' Operator ' ' Text 'beg' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'ending' Name.Attribute ' ' Text '=' Operator ' ' Text 'end' Name ';' Punctuation '\n' Text ' ' Text 'aIncr' Name ' ' Text '=' Operator ' ' Text '0.9f' Literal.Number.Float ' ' Text '/' Operator ' ' Text '(' Punctuation 'ending' Name ' ' Text '-' Operator ' ' Text 'beginning' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'NOANIM' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'alpha' Name ' ' Text '=' Operator ' ' Text '1.0f' Literal.Number.Float ';' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'reset' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'rect1' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Rectangle' Name '(' Punctuation '8' Literal.Number.Integer ',' Punctuation ' ' Text '20' Literal.Number.Integer ',' Punctuation ' ' Text 'w' Name '-' Operator '20' Literal.Number.Integer ',' Punctuation ' ' Text '30' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'rect2' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Rectangle' Name '(' Punctuation '20' Literal.Number.Integer ',' Punctuation ' ' Text '8' Literal.Number.Integer ',' Punctuation ' ' Text '30' Literal.Number.Integer ',' Punctuation ' ' Text 'h' Name '-' Operator '20' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'NOANIM' Name ')' Punctuation ' ' Text '=' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'alpha' Name ' ' Text '=' Operator ' ' Text '0.0f' Literal.Number.Float ';' Punctuation '\n' Text ' ' Text 'xIncr' Name ' ' Text '=' Operator ' ' Text 'w' Name ' ' Text '/' Operator ' ' Text '(' Punctuation 'ending' Name ' ' Text '-' Operator ' ' Text 'beginning' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'yIncr' Name ' ' Text '=' Operator ' ' Text 'h' Name ' ' Text '/' Operator ' ' Text '(' Punctuation 'ending' Name ' ' Text '-' Operator ' ' Text 'beginning' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'x' Name ' ' Text '=' Operator ' ' Text 'w' Name '+' Operator '(' Punctuation 'int' Keyword.Type ')' Punctuation '(' Punctuation 'xIncr' Name '*' Operator '1.4' Literal.Number.Float ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'y' Name ' ' Text '=' Operator ' ' Text 'h' Name '+' Operator '(' Punctuation 'int' Keyword.Type ')' Punctuation '(' Punctuation 'yIncr' Name '*' Operator '1.4' Literal.Number.Float ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'step' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'NOANIM' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'RECT' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'rect1' Name '.' Punctuation 'setLocation' Name.Attribute '(' Punctuation 'x' Name '-' Operator '=' Operator 'xIncr' Name ',' Punctuation ' ' Text '20' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'rect2' Name '.' Punctuation 'setLocation' Name.Attribute '(' Punctuation '20' Literal.Number.Integer ',' Punctuation ' ' Text 'y' Name '-' Operator '=' Operator 'yIncr' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'IMG' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'alpha' Name ' ' Text '+' Operator '=' Operator ' ' Text 'aIncr' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'render' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ',' Punctuation ' ' Text 'Graphics2D' Name ' ' Text 'g2' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'RECT' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setColor' Name.Attribute '(' Punctuation 'blue' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'fill' Name.Attribute '(' Punctuation 'rect1' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setColor' Name.Attribute '(' Punctuation 'red' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'fill' Name.Attribute '(' Punctuation 'rect2' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'type' Name ' ' Text '&' Operator ' ' Text 'IMG' Name ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'Composite' Name ' ' Text 'saveAC' Name ' ' Text '=' Operator ' ' Text 'g2' Name '.' Punctuation 'getComposite' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'alpha' Name ' ' Text '>' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ' ' Text '&' Operator '&' Operator ' ' Text 'alpha' Name ' ' Text '<' Operator '=' Operator ' ' Text '1' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setComposite' Name.Attribute '(' Punctuation 'AlphaComposite' Name '.' Punctuation 'getInstance' Name.Attribute '(' Punctuation 'AlphaComposite' Name '.' Punctuation 'SRC_OVER' Name.Attribute ',' Punctuation ' ' Text 'alpha' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'drawImage' Name.Attribute '(' Punctuation 'img' Name ',' Punctuation ' ' Text '30' Literal.Number.Integer ',' Punctuation ' ' Text '30' Literal.Number.Integer ',' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setComposite' Name.Attribute '(' Punctuation 'saveAC' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getBegin' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'beginning' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getEnd' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'ending' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text '// End Temp class\n' Comment.Single '\n' Text '\n' Text '\n' Text ' ' Text '/**\n * Features of Java2D. Single character advancement effect.\n */' Comment.Multiline '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'class' Keyword.Declaration ' ' Text 'Features' Name.Class ' ' Text 'implements' Keyword.Declaration ' ' Text 'Part' Name ' ' Text '{' Punctuation '\n' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'GRAPHICS' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'TEXT' Name ' ' Text '=' Operator ' ' Text '1' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'IMAGES' Name ' ' Text '=' Operator ' ' Text '2' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'final' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'COLOR' Name ' ' Text '=' Operator ' ' Text '3' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'Font' Name ' ' Text 'font1' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Font' Name '(' Punctuation '"' Literal.String 'serif' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'Font' Name '.' Punctuation 'BOLD' Name.Attribute ',' Punctuation ' ' Text '38' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'Font' Name ' ' Text 'font2' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Font' Name '(' Punctuation '"' Literal.String 'serif' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'Font' Name '.' Punctuation 'PLAIN' Name.Attribute ',' Punctuation ' ' Text '24' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'FontMetrics' Name ' ' Text 'fm1' Name ' ' Text '=' Operator ' ' Text 'Surface' Name '.' Punctuation 'getMetrics' Name.Attribute '(' Punctuation 'font1' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'FontMetrics' Name ' ' Text 'fm2' Name ' ' Text '=' Operator ' ' Text 'Surface' Name '.' Punctuation 'getMetrics' Name.Attribute '(' Punctuation 'font2' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'String' Name ' ' Text 'table' Name '[' Operator ']' Operator '[' Operator ']' Operator ' ' Text '=' Operator ' ' Text '\n' Text ' ' Text '{' Punctuation '{' Punctuation ' ' Text '"' Literal.String 'Graphics' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Antialiased rendering' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Bezier paths' Literal.String '"' Literal.String ',' Punctuation ' ' Text '\n' Text ' ' Text '"' Literal.String 'Transforms' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Compositing' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Stroking parameters' Literal.String '"' Literal.String ' ' Text '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text '"' Literal.String 'Text' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Extended font support' Literal.String '"' Literal.String ',' Punctuation ' ' Text '\n' Text ' ' Text '"' Literal.String 'Advanced text layout' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Dynamic font loading' Literal.String '"' Literal.String ',' Punctuation '\n' Text ' ' Text '"' Literal.String 'AttributeSets for font customization' Literal.String '"' Literal.String ' ' Text '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text '"' Literal.String 'Images' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Flexible image layouts' Literal.String '"' Literal.String ',' Punctuation '\n' Text ' ' Text '"' Literal.String 'Extended imaging operations' Literal.String '"' Literal.String ',' Punctuation ' ' Text '\n' Text ' ' Text '"' Literal.String ' Convolutions, Lookup Tables' Literal.String '"' Literal.String ',' Punctuation '\n' Text ' ' Text '"' Literal.String 'RenderableImage interface' Literal.String '"' Literal.String '}' Punctuation ',' Punctuation '\n' Text ' ' Text '{' Punctuation ' ' Text '"' Literal.String 'Color' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'ICC profile support' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Color conversion' Literal.String '"' Literal.String ',' Punctuation ' ' Text '\n' Text ' ' Text '"' Literal.String 'Arbitrary color spaces' Literal.String '"' Literal.String '}' Punctuation ' ' Text '}' Punctuation ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'String' Name ' ' Text 'list' Name '[' Operator ']' Operator ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'beginning' Name ',' Punctuation ' ' Text 'ending' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'strH' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'endIndex' Name ',' Punctuation ' ' Text 'listIndex' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'Vector' Name ' ' Text 'v' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Vector' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'Features' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'type' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'beg' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'end' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'list' Name ' ' Text '=' Operator ' ' Text 'table' Name '[' Operator 'type' Name ']' Operator ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'beginning' Name.Attribute ' ' Text '=' Operator ' ' Text 'beg' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'ending' Name.Attribute ' ' Text '=' Operator ' ' Text 'end' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'reset' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'strH' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'int' Keyword.Type ')' Punctuation ' ' Text '(' Punctuation 'fm2' Name '.' Punctuation 'getAscent' Name.Attribute '(' Punctuation ')' Punctuation '+' Operator 'fm2' Name '.' Punctuation 'getDescent' Name.Attribute '(' Punctuation ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'endIndex' Name ' ' Text '=' Operator ' ' Text '1' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'listIndex' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'v' Name '.' Punctuation 'clear' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'v' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'list' Name '[' Operator 'listIndex' Name ']' Operator '.' Punctuation 'substring' Name.Attribute '(' Punctuation '0' Literal.Number.Integer ',' Punctuation 'endIndex' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'step' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'listIndex' Name ' ' Text '<' Operator ' ' Text 'list' Name '.' Punctuation 'length' Name.Attribute ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '+' Operator '+' Operator 'endIndex' Name ' ' Text '>' Operator ' ' Text 'list' Name '[' Operator 'listIndex' Name ']' Operator '.' Punctuation 'length' Name.Attribute '(' Punctuation ')' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '+' Operator '+' Operator 'listIndex' Name ' ' Text '<' Operator ' ' Text 'list' Name '.' Punctuation 'length' Name.Attribute ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'endIndex' Name ' ' Text '=' Operator ' ' Text '1' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'v' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'list' Name '[' Operator 'listIndex' Name ']' Operator '.' Punctuation 'substring' Name.Attribute '(' Punctuation '0' Literal.Number.Integer ',' Punctuation 'endIndex' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text '{' Punctuation '\n' Text ' ' Text 'v' Name '.' Punctuation 'set' Name.Attribute '(' Punctuation 'listIndex' Name ',' Punctuation ' ' Text 'list' Name '[' Operator 'listIndex' Name ']' Operator '.' Punctuation 'substring' Name.Attribute '(' Punctuation '0' Literal.Number.Integer ',' Punctuation 'endIndex' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'render' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ',' Punctuation ' ' Text 'Graphics2D' Name ' ' Text 'g2' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setColor' Name.Attribute '(' Punctuation 'white' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setFont' Name.Attribute '(' Punctuation 'font1' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'drawString' Name.Attribute '(' Punctuation '(' Punctuation 'String' Name ')' Punctuation ' ' Text 'v' Name '.' Punctuation 'get' Name.Attribute '(' Punctuation '0' Literal.Number.Integer ')' Punctuation ',' Punctuation ' ' Text '90' Literal.Number.Integer ',' Punctuation ' ' Text '85' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setFont' Name.Attribute '(' Punctuation 'font2' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'i' Name ' ' Text '=' Operator ' ' Text '1' Literal.Number.Integer ',' Punctuation ' ' Text 'y' Name ' ' Text '=' Operator ' ' Text '90' Literal.Number.Integer ';' Punctuation ' ' Text 'i' Name ' ' Text '<' Operator ' ' Text 'v' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation ' ' Text 'i' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'drawString' Name.Attribute '(' Punctuation '(' Punctuation 'String' Name ')' Punctuation ' ' Text 'v' Name '.' Punctuation 'get' Name.Attribute '(' Punctuation 'i' Name ')' Punctuation ',' Punctuation ' ' Text '120' Literal.Number.Integer ',' Punctuation ' ' Text 'y' Name ' ' Text '+' Operator '=' Operator ' ' Text 'strH' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getBegin' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'beginning' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getEnd' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'ending' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text '// End Features class\n' Comment.Single '\n' Text '\n' Text '\n' Text ' ' Text '/**\n * Scrolling text of Java2D contributors.\n */' Comment.Multiline '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'class' Keyword.Declaration ' ' Text 'Contributors' Name.Class ' ' Text 'implements' Keyword.Declaration ' ' Text 'Part' Name ' ' Text '{' Punctuation '\n' Text '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'String' Name ' ' Text 'members' Name '[' Operator ']' Operator ' ' Text '=' Operator ' ' Text '\n' Text ' ' Text '{' Punctuation ' ' Text '\n' Text ' ' Text '"' Literal.String 'Brian Lichtenwalter' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Jeannette Hung' Literal.String '"' Literal.String ',' Punctuation ' ' Text '\n' Text ' ' Text '"' Literal.String 'Thanh Nguyen' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Jim Graham' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Jerry Evans' Literal.String '"' Literal.String ',' Punctuation ' ' Text '\n' Text ' ' Text '"' Literal.String 'John Raley' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Michael Peirce' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Robert Kim' Literal.String '"' Literal.String ',' Punctuation ' ' Text '\n' Text ' ' Text '"' Literal.String 'Jennifer Ball' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Deborah Adair' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Paul Charlton' Literal.String '"' Literal.String ',' Punctuation ' ' Text '\n' Text ' ' Text '"' Literal.String 'Dmitry Feld' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Gregory Stone' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Richard Blanchard' Literal.String '"' Literal.String ',' Punctuation ' ' Text '\n' Text ' ' Text '"' Literal.String 'Link Perry' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Phil Race' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Vincent Hardy' Literal.String '"' Literal.String ',' Punctuation ' ' Text '\n' Text ' ' Text '"' Literal.String 'Parry Kejriwal' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Doug Felt' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Rekha Rangarajan' Literal.String '"' Literal.String ',' Punctuation ' ' Text '\n' Text ' ' Text '"' Literal.String 'Paula Patel' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Michael Bundschuh' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Joe Warzecha' Literal.String '"' Literal.String ',' Punctuation ' ' Text '\n' Text ' ' Text '"' Literal.String 'Joey Beheler' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Aastha Bhardwaj' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Daniel Rice' Literal.String '"' Literal.String ',' Punctuation '\n' Text ' ' Text '"' Literal.String 'Chris Campbell' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Shinsuke Fukuda' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Dmitri Trembovetski' Literal.String '"' Literal.String ',' Punctuation '\n' Text ' ' Text '"' Literal.String 'Chet Haase' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Jennifer Godinez' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Nicholas Talian' Literal.String '"' Literal.String ',' Punctuation '\n' Text ' ' Text '"' Literal.String 'Raul Vera' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Ankit Patel' Literal.String '"' Literal.String ',' Punctuation ' ' Text '"' Literal.String 'Ilya Bagrak' Literal.String '"' Literal.String '\n' Text ' ' Text '}' Punctuation ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'Font' Name ' ' Text 'font' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Font' Name '(' Punctuation '"' Literal.String 'serif' Literal.String '"' Literal.String ',' Punctuation ' ' Text 'Font' Name '.' Punctuation 'PLAIN' Name.Attribute ',' Punctuation ' ' Text '26' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'static' Keyword.Declaration ' ' Text 'FontMetrics' Name ' ' Text 'fm' Name ' ' Text '=' Operator ' ' Text 'Surface' Name '.' Punctuation 'getMetrics' Name.Attribute '(' Punctuation 'font' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'beginning' Name ',' Punctuation ' ' Text 'ending' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'nStrs' Name ',' Punctuation ' ' Text 'strH' Name ',' Punctuation ' ' Text 'index' Name ',' Punctuation ' ' Text 'yh' Name ',' Punctuation ' ' Text 'height' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'Vector' Name ' ' Text 'v' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Vector' Name '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'Vector' Name ' ' Text 'cast' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'Vector' Name '(' Punctuation 'members' Name '.' Punctuation 'length' Name.Attribute '+' Operator '3' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'counter' Name ',' Punctuation ' ' Text 'cntMod' Name ';' Punctuation '\n' Text ' ' Text 'private' Keyword.Declaration ' ' Text 'GradientPaint' Name ' ' Text 'gp' Name ';' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'Contributors' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'beg' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'end' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'beginning' Name.Attribute ' ' Text '=' Operator ' ' Text 'beg' Name ';' Punctuation '\n' Text ' ' Text 'this' Keyword '.' Punctuation 'ending' Name.Attribute ' ' Text '=' Operator ' ' Text 'end' Name ';' Punctuation '\n' Text ' ' Text 'java' Name '.' Punctuation 'util' Name.Attribute '.' Punctuation 'Arrays' Name.Attribute '.' Punctuation 'sort' Name.Attribute '(' Punctuation 'members' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'cast' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation '"' Literal.String 'CONTRIBUTORS' Literal.String '"' Literal.String ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'cast' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation '"' Literal.String ' ' Literal.String '"' Literal.String ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'i' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation ' ' Text 'i' Name ' ' Text '<' Operator ' ' Text 'members' Name '.' Punctuation 'length' Name.Attribute ';' Punctuation ' ' Text 'i' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'cast' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'members' Name '[' Operator 'i' Name ']' Operator ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'cast' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation '"' Literal.String ' ' Literal.String '"' Literal.String ')' Punctuation ';' Punctuation ' ' Text 'cast' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation '"' Literal.String ' ' Literal.String '"' Literal.String ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'cntMod' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'ending' Name ' ' Text '-' Operator ' ' Text 'beginning' Name ')' Punctuation ' ' Text '/' Operator ' ' Text 'cast' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ' ' Text '-' Operator ' ' Text '1' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'reset' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'v' Name '.' Punctuation 'clear' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'strH' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'int' Keyword.Type ')' Punctuation ' ' Text '(' Punctuation 'fm' Name '.' Punctuation 'getAscent' Name.Attribute '(' Punctuation ')' Punctuation '+' Operator 'fm' Name '.' Punctuation 'getDescent' Name.Attribute '(' Punctuation ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'nStrs' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'h' Name '-' Operator '40' Literal.Number.Integer ')' Punctuation '/' Operator 'strH' Name ' ' Text '+' Operator ' ' Text '1' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'height' Name ' ' Text '=' Operator ' ' Text 'strH' Name ' ' Text '*' Operator ' ' Text '(' Punctuation 'nStrs' Name '-' Operator '1' Literal.Number.Integer ')' Punctuation ' ' Text '+' Operator ' ' Text '48' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'index' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text 'gp' Name ' ' Text '=' Operator ' ' Text 'new' Keyword ' ' Text 'GradientPaint' Name '(' Punctuation '0' Literal.Number.Integer ',' Punctuation 'h' Name '/' Operator '2' Literal.Number.Integer ',' Punctuation 'Color' Name '.' Punctuation 'white' Name.Attribute ',' Punctuation '0' Literal.Number.Integer ',' Punctuation 'h' Name '+' Operator '20' Literal.Number.Integer ',' Punctuation 'Color' Name '.' Punctuation 'black' Name.Attribute ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'counter' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'step' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'counter' Name '+' Operator '+' Operator '%' Operator 'cntMod' Name ' ' Text '=' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'index' Name ' ' Text '<' Operator ' ' Text 'cast' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'v' Name '.' Punctuation 'addElement' Name.Attribute '(' Punctuation 'cast' Name '.' Punctuation 'get' Name.Attribute '(' Punctuation 'index' Name ')' Punctuation ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation '(' Punctuation 'v' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ' ' Text '=' Operator '=' Operator ' ' Text 'nStrs' Name ' ' Text '|' Operator '|' Operator ' ' Text 'index' Name ' ' Text '>' Operator '=' Operator ' ' Text 'cast' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ')' Punctuation ' ' Text '&' Operator '&' Operator ' ' Text 'v' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ' ' Text '!' Operator '=' Operator ' ' Text '0' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'v' Name '.' Punctuation 'removeElementAt' Name.Attribute '(' Punctuation '0' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '+' Operator '+' Operator 'index' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'void' Keyword.Type ' ' Text 'render' Name.Function '(' Punctuation 'int' Keyword.Type ' ' Text 'w' Name ',' Punctuation ' ' Text 'int' Keyword.Type ' ' Text 'h' Name ',' Punctuation ' ' Text 'Graphics2D' Name ' ' Text 'g2' Name ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setPaint' Name.Attribute '(' Punctuation 'gp' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'setFont' Name.Attribute '(' Punctuation 'font' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'double' Keyword.Type ' ' Text 'remainder' Name ' ' Text '=' Operator ' ' Text 'counter' Name '%' Operator 'cntMod' Name ';' Punctuation '\n' Text ' ' Text 'double' Keyword.Type ' ' Text 'incr' Name ' ' Text '=' Operator ' ' Text '1.0' Literal.Number.Float '-' Operator 'remainder' Name '/' Operator 'cntMod' Name ';' Punctuation '\n' Text ' ' Text 'incr' Name ' ' Text '=' Operator ' ' Text 'incr' Name ' ' Text '=' Operator '=' Operator ' ' Text '1.0' Literal.Number.Float ' ' Text '?' Operator ' ' Text '0' Literal.Number.Integer ' ' Text ':' Punctuation ' ' Text 'incr' Name ';' Punctuation '\n' Text ' ' Text 'int' Keyword.Type ' ' Text 'y' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'int' Keyword.Type ')' Punctuation ' ' Text '(' Punctuation 'incr' Name ' ' Text '*' Operator ' ' Text 'strH' Name ')' Punctuation ';' Punctuation '\n' Text '\n' Text ' ' Text 'if' Keyword ' ' Text '(' Punctuation 'index' Name ' ' Text '>' Operator '=' Operator ' ' Text 'cast' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'y' Name ' ' Text '=' Operator ' ' Text 'yh' Name ' ' Text '+' Operator ' ' Text 'y' Name ';' Punctuation ' ' Text '\n' Text ' ' Text '}' Punctuation ' ' Text 'else' Keyword ' ' Text '{' Punctuation '\n' Text ' ' Text 'y' Name ' ' Text '=' Operator ' ' Text 'yh' Name ' ' Text '=' Operator ' ' Text 'height' Name ' ' Text '-' Operator ' ' Text 'v' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ' ' Text '*' Operator ' ' Text 'strH' Name ' ' Text '+' Operator ' ' Text 'y' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text 'for' Keyword ' ' Text '(' Punctuation 'int' Keyword.Type ' ' Text 'i' Name ' ' Text '=' Operator ' ' Text '0' Literal.Number.Integer ';' Punctuation ' ' Text 'i' Name ' ' Text '<' Operator ' ' Text 'v' Name '.' Punctuation 'size' Name.Attribute '(' Punctuation ')' Punctuation ';' Punctuation ' ' Text 'i' Name '+' Operator '+' Operator ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'String' Name ' ' Text 's' Name ' ' Text '=' Operator ' ' Text '(' Punctuation 'String' Name ')' Punctuation ' ' Text 'v' Name '.' Punctuation 'get' Name.Attribute '(' Punctuation 'i' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text 'g2' Name '.' Punctuation 'drawString' Name.Attribute '(' Punctuation 's' Name ',' Punctuation ' ' Text 'w' Name '/' Operator '2' Literal.Number.Integer '-' Operator 'fm' Name '.' Punctuation 'stringWidth' Name.Attribute '(' Punctuation 's' Name ')' Punctuation '/' Operator '2' Literal.Number.Integer ',' Punctuation ' ' Text 'y' Name ' ' Text '+' Operator '=' Operator ' ' Text 'strH' Name ')' Punctuation ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getBegin' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'beginning' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text '\n' Text ' ' Text 'public' Keyword.Declaration ' ' Text 'int' Keyword.Type ' ' Text 'getEnd' Name.Function '(' Punctuation ')' Punctuation ' ' Text '{' Punctuation '\n' Text ' ' Text 'return' Keyword ' ' Text 'ending' Name ';' Punctuation '\n' Text ' ' Text '}' Punctuation '\n' Text ' ' Text '}' Punctuation ' ' Text '// End Contributors class\n' Comment.Single '\n' Text ' ' Text '}' Punctuation ' ' Text '// End Surface class\n' Comment.Single '}' Punctuation ' ' Text '// End Intro class\n' Comment.Single