Ignore:
Timestamp:
2014-10-18T20:09:04+02:00 (10 years ago)
Author:
donvip
Message:

[josm_imagery_xml_bounds] fix sonar issues

Location:
applications/editors/josm/plugins/imagery-xml-bounds/src/net/boplicity/xmleditor
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • applications/editors/josm/plugins/imagery-xml-bounds/src/net/boplicity/xmleditor/XmlEditorKit.java

    r26776 r30735  
    1919import javax.swing.text.ViewFactory;
    2020
    21 
    2221/**
    2322 * @author kees
    2423 * @date 12-jan-2006
    25  *
    2624 */
    2725public class XmlEditorKit extends StyledEditorKit {
     
    3028    private ViewFactory xmlViewFactory;
    3129
     30    /**
     31     * Constructs a new {@code XmlEditorKit}.
     32     */
    3233    public XmlEditorKit() {
    3334        xmlViewFactory = new XmlViewFactory();
    3435    }
    35    
     36
    3637    @Override
    3738    public ViewFactory getViewFactory() {
     
    4344        return "text/xml";
    4445    }
    45 
    46    
    4746}
  • applications/editors/josm/plugins/imagery-xml-bounds/src/net/boplicity/xmleditor/XmlTextPane.java

    r26776 r30735  
    2424import javax.swing.text.BadLocationException;
    2525
    26 import net.boplicity.xmleditor.XmlEditorKit;
    27 
    2826
    2927/**
    3028 * JTextPane implementation that can handle xml text. The IndentKeyListener
    3129 * implements smart indenting.
    32  * 
     30 *
    3331 * @author kees
    3432 * @date 27-jan-2006
     
    3735public class XmlTextPane extends JTextPane {
    3836
    39     private static final long serialVersionUID = 6270183148379328084L;
    40     private Logger logger = Logger.getLogger(getClass().getName());
     37    private static final Logger LOGGER = Logger.getLogger(XmlTextPane.class.getName());
     38    private static final Character NEW_LINE = '\n';
    4139
     40    /**
     41     * Constructs a new {@code XmlTextPane}.
     42     */
    4243    public XmlTextPane() {
    43        
     44
    4445        // Set editor kit
    4546        this.setEditorKitForContentType("text/xml", new XmlEditorKit());
    4647        this.setContentType("text/xml");
    47        
     48
    4849        addKeyListener(new IndentKeyListener());
    4950    }
    50    
    51         private class IndentKeyListener implements KeyListener {
    5251
    53                 private boolean enterFlag;
    54                 private final Character NEW_LINE = '\n';
     52    private class IndentKeyListener implements KeyListener {
    5553
    56                 public void keyPressed(KeyEvent event) {
    57                         enterFlag = false;
    58                         if ((event.getKeyCode() == KeyEvent.VK_ENTER)
    59                                         && (event.getModifiers() == 0)) {
    60                                 if (getSelectionStart() == getSelectionEnd()) {
    61                                         enterFlag = true;
    62                                         event.consume();
    63                                 }
    64                         }
    65                 }
     54        private boolean enterFlag;
    6655
    67                 public void keyReleased(KeyEvent event) {
    68                         if ((event.getKeyCode() == KeyEvent.VK_ENTER)
    69                                         && (event.getModifiers() == 0)) {
    70                                 if (enterFlag) {
    71                                         event.consume();
     56        @Override
     57        public void keyPressed(KeyEvent event) {
     58            enterFlag = false;
     59            if ((event.getKeyCode() == KeyEvent.VK_ENTER)
     60                && (event.getModifiers() == 0)
     61                && getSelectionStart() == getSelectionEnd()) {
     62                enterFlag = true;
     63                event.consume();
     64            }
     65        }
    7266
    73                                         int start, end;
    74                                         String text = getText();
     67        @Override
     68        public void keyReleased(KeyEvent event) {
     69            if ((event.getKeyCode() == KeyEvent.VK_ENTER)
     70                && (event.getModifiers() == 0) && enterFlag) {
     71                event.consume();
    7572
    76                                         int caretPosition = getCaretPosition();
    77                                         try {
    78                                                 if (text.charAt(caretPosition) == NEW_LINE) {
    79                                                         caretPosition--;
    80                                                 }
    81                                         } catch (IndexOutOfBoundsException e) {
    82                                         }
     73                int start, end;
     74                String text = getText();
    8375
    84                                         start = text.lastIndexOf(NEW_LINE, caretPosition) + 1;
    85                                         end = start;
    86                                         try {
    87                                                 if (text.charAt(start) != NEW_LINE) {
    88                                                         while ((end < text.length())
    89                                                                         && (Character
    90                                                                                         .isWhitespace(text.charAt(end)))
    91                                                                         && (text.charAt(end) != NEW_LINE)) {
    92                                                                 end++;
    93                                                         }
    94                                                         if (end > start) {
    95                                                                 getDocument()
    96                                                                                 .insertString(
    97                                                                                                 getCaretPosition(),
    98                                                                                                 NEW_LINE
    99                                                                                                                 + text.substring(start,
    100                                                                                                                                 end), null);
    101                                                         } else {
    102                                                                 getDocument().insertString(getCaretPosition(),
    103                                                                                 NEW_LINE.toString(), null);
    104                                                         }
    105                                                 } else {
    106                                                         getDocument().insertString(getCaretPosition(),
    107                                                                         NEW_LINE.toString(), null);
    108                                                 }
    109                                         } catch (IndexOutOfBoundsException e) {
    110                                                 try {
    111                                                         getDocument().insertString(getCaretPosition(),
    112                                                                         NEW_LINE.toString(), null);
    113                                                 } catch (BadLocationException e1) {
    114                                                         logger.log(Level.WARNING, e1.toString());
    115                                                 }
    116                                         } catch (BadLocationException e) {
    117                                                 logger.log(Level.WARNING, e.toString());
    118                                         }
    119                                 }
    120                         }
    121                 }
     76                int caretPosition = getCaretPosition();
     77                try {
     78                    if (text.charAt(caretPosition) == NEW_LINE) {
     79                        caretPosition--;
     80                    }
     81                } catch (IndexOutOfBoundsException e) {
     82                    LOGGER.log(Level.FINE, e.toString());
     83                }
    12284
    123                 public void keyTyped(KeyEvent e) {
    124                 }
    125         }
    126    
     85                start = text.lastIndexOf(NEW_LINE, caretPosition) + 1;
     86                end = start;
     87                try {
     88                    if (text.charAt(start) != NEW_LINE) {
     89                        while ((end < text.length())
     90                                && (Character.isWhitespace(text.charAt(end)))
     91                                && (text.charAt(end) != NEW_LINE)) {
     92                            end++;
     93                        }
     94                        if (end > start) {
     95                            getDocument()
     96                                    .insertString(
     97                                            getCaretPosition(),
     98                                            NEW_LINE
     99                                                    + text.substring(start,
     100                                                            end), null);
     101                        } else {
     102                            getDocument().insertString(getCaretPosition(),
     103                                    NEW_LINE.toString(), null);
     104                        }
     105                    } else {
     106                        getDocument().insertString(getCaretPosition(),
     107                                NEW_LINE.toString(), null);
     108                    }
     109                } catch (IndexOutOfBoundsException e) {
     110                    try {
     111                        getDocument().insertString(getCaretPosition(),
     112                                NEW_LINE.toString(), null);
     113                    } catch (BadLocationException e1) {
     114                        LOGGER.log(Level.WARNING, e1.toString());
     115                    }
     116                } catch (BadLocationException e) {
     117                    LOGGER.log(Level.WARNING, e.toString());
     118                }
     119            }
     120        }
     121
     122        @Override
     123        public void keyTyped(KeyEvent e) {
     124            // Do nothing
     125        }
     126    }
    127127}
  • applications/editors/josm/plugins/imagery-xml-bounds/src/net/boplicity/xmleditor/XmlView.java

    r26776 r30735  
    1818import java.awt.Color;
    1919import java.awt.Graphics;
    20 import java.util.HashMap;
    2120import java.util.LinkedHashMap;
    2221import java.util.Map;
     
    4746public class XmlView extends PlainView {
    4847
    49     private static HashMap<Pattern, Color> patternColors;
     48    private static Map<Pattern, Color> patternColors;
    5049    private static String GENERIC_XML_NAME = "[A-Za-z]+[A-Za-z0-9\\-_]*(:[A-Za-z]+[A-Za-z0-9\\-_]+)?";
    5150    private static String TAG_PATTERN = "(</?" + GENERIC_XML_NAME + ")";
     
    5857    static {
    5958        // NOTE: the order is important!
    60         patternColors = new LinkedHashMap<Pattern, Color>();
     59        patternColors = new LinkedHashMap<>();
    6160        patternColors
    6261                .put(Pattern.compile(TAG_PATTERN), new Color(63, 127, 127));
     
    7170    }
    7271
     72    /**
     73     * Constructs a new {@code XmlView}.
     74     * @param element the element
     75     */
    7376    public XmlView(Element element) {
    7477
     
    8083
    8184    @Override
    82     protected int drawUnselectedText(Graphics graphics, int x, int y, int p0,
    83             int p1) throws BadLocationException {
     85    protected int drawUnselectedText(Graphics graphics, int x, int y, int p0, int p1)
     86            throws BadLocationException {
    8487
    8588        Document doc = getDocument();
     
    8891        Segment segment = getLineBuffer();
    8992
    90         SortedMap<Integer, Integer> startMap = new TreeMap<Integer, Integer>();
    91         SortedMap<Integer, Color> colorMap = new TreeMap<Integer, Color>();
     93        SortedMap<Integer, Integer> startMap = new TreeMap<>();
     94        SortedMap<Integer, Color> colorMap = new TreeMap<>();
    9295
    9396        // Match all regexes on this snippet, store positions
  • applications/editors/josm/plugins/imagery-xml-bounds/src/net/boplicity/xmleditor/XmlViewFactory.java

    r26776 r30735  
    2020import javax.swing.text.ViewFactory;
    2121
    22 
    2322/**
    2423 * @author kees
     
    2827public class XmlViewFactory extends Object implements ViewFactory {
    2928
    30     /**
    31      * @see javax.swing.text.ViewFactory#create(javax.swing.text.Element)
    32      */
     29    @Override
    3330    public View create(Element element) {
    34 
    3531        return new XmlView(element);
    3632    }
    37 
    3833}
Note: See TracChangeset for help on using the changeset viewer.