make/jdk/src/classes/build/tools/generatenimbus/Canvas.java
changeset 47389 18c850407be9
parent 47216 71c04702a3d5
equal deleted inserted replaced
47388:19b912843392 47389:18c850407be9
    23  * questions.
    23  * questions.
    24  */
    24  */
    25 
    25 
    26 package build.tools.generatenimbus;
    26 package build.tools.generatenimbus;
    27 
    27 
       
    28 import javax.xml.stream.XMLStreamException;
       
    29 import javax.xml.stream.XMLStreamReader;
       
    30 import java.util.ArrayList;
    28 import java.util.List;
    31 import java.util.List;
    29 
    32 
    30 import javax.xml.bind.annotation.XmlElement;
    33 class Canvas {
       
    34     private Dimension size;
    31 
    35 
    32 class Canvas {
       
    33     @XmlElement private Dimension size;
       
    34     public Dimension getSize() { return size; }
    36     public Dimension getSize() { return size; }
    35 
    37 
    36     @XmlElement(name="layer") private List<Layer> layers;
    38     private List<Layer> layers;
    37     public List<Layer> getLayers() { return layers; }
    39     public List<Layer> getLayers() { return layers; }
    38 
    40 
    39     @XmlElement private Insets stretchingInsets = null;
    41     private Insets stretchingInsets = null;
       
    42 
       
    43     Canvas(XMLStreamReader reader) throws XMLStreamException {
       
    44         layers = new ArrayList<>();
       
    45         while (reader.hasNext()) {
       
    46             int eventType = reader.next();
       
    47             switch (eventType) {
       
    48                 case XMLStreamReader.START_ELEMENT:
       
    49                     switch (reader.getLocalName()) {
       
    50                         case "size":
       
    51                             size = new Dimension(reader);
       
    52                             break;
       
    53                         case "layer":
       
    54                             layers.add(new Layer(reader));
       
    55                             break;
       
    56                         case "stretchingInsets":
       
    57                             stretchingInsets = new Insets(reader);
       
    58                             break;
       
    59                     }
       
    60                     break;
       
    61                 case XMLStreamReader.END_ELEMENT:
       
    62                     switch (reader.getLocalName()) {
       
    63                         case "canvas":
       
    64                             return;
       
    65                     }
       
    66                     break;
       
    67             }
       
    68         }
       
    69     }
       
    70 
    40     public Insets getStretchingInsets() { return stretchingInsets; }
    71     public Insets getStretchingInsets() { return stretchingInsets; }
    41 
    72 
    42     public boolean isBlank() {
    73     public boolean isBlank() {
    43         return layers.size() == 0 || (layers.size() == 1 && layers.get(0).isEmpty());
    74         return layers.size() == 0 || (layers.size() == 1 && layers.get(0).isEmpty());
    44     }
    75     }