Changeset 26925 in osm


Ignore:
Timestamp:
2011-10-22T19:51:37+02:00 (13 years ago)
Author:
malcolmh
Message:

save

Location:
applications/editors/josm/plugins/smed/plugs/oseam/src/oseam
Files:
13 edited

Legend:

Unmodified
Added
Removed
  • applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelChan.java

    r26881 r26925  
    22
    33import javax.swing.*;
     4
    45import java.awt.*;
    56import java.awt.event.*;
     
    9091                        if (safeWaterButton.isSelected()) {
    9192                                dlg.mark.setCategory(Cat.UNKNOWN);
    92                                 dlg.mark.setColour(Ent.BODY, Col.RED);
    93                                 dlg.mark.addColour(Ent.BODY, Col.WHITE);
    94                                 dlg.mark.setPattern(Ent.BODY, Pat.VERT);
    9593                                if (panelSaw.shapes.containsKey(shp)) {
    9694                                        panelSaw.shapes.get(shp).doClick();
     
    107105                }
    108106        };
     107        public JToggleButton topmarkButton = new JToggleButton(new ImageIcon(getClass().getResource("/images/ChanTopButton.png")));
     108        private ActionListener alTop = new ActionListener() {
     109                public void actionPerformed(java.awt.event.ActionEvent e) {
     110                        if (topmarkButton.isSelected()) {
     111                                topmarkButton.setBorderPainted(true);
     112                        } else {
     113//                              dlg.panelMain.panelTop.clearSelections();
     114                                topmarkButton.setBorderPainted(false);
     115                        }
     116                }
     117        };
    109118
    110119        public PanelChan(OSeaMAction dia) {
    111120                dlg = dia;
    112121                panelPort = new PanelPort(dlg);
    113                 panelPort.setBounds(new Rectangle(55, 0, 180, 160));
     122                panelPort.setBounds(new Rectangle(55, 0, 70, 160));
    114123                panelPort.setVisible(false);
    115124                panelStbd = new PanelStbd(dlg);
    116                 panelStbd.setBounds(new Rectangle(55, 0, 180, 160));
     125                panelStbd.setBounds(new Rectangle(55, 0, 70, 160));
    117126                panelStbd.setVisible(false);
    118127                panelSaw = new PanelSaw(dlg);
    119                 panelSaw.setBounds(new Rectangle(55, 0, 180, 160));
     128                panelSaw.setBounds(new Rectangle(55, 0, 70, 160));
    120129                panelSaw.setVisible(false);
    121130                this.setLayout(null);
     
    128137                this.add(getCatButton(prefStbdButton, 0, 96, 52, 32, "PrefStbd"), null);
    129138                this.add(getCatButton(safeWaterButton, 0, 128, 52, 32, "SafeWater"), null);
     139
     140                topmarkButton.setBounds(new Rectangle(130, 0, 34, 32));
     141                topmarkButton.setBorder(BorderFactory.createLoweredBevelBorder());
     142                topmarkButton.addActionListener(alTop);
     143                topmarkButton.setVisible(false);
     144                this.add(topmarkButton);
    130145        }
    131146
    132147        public void clearSelections() {
     148                topmarkButton.setSelected(false);
     149                topmarkButton.setVisible(false);
     150                alTop.actionPerformed(null);
    133151                catButtons.clearSelection();
    134152                alCat.actionPerformed(null);
  • applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelChr.java

    r26881 r26925  
    3939                public void actionPerformed(java.awt.event.ActionEvent e) {
    4040                        if (noneButton.isSelected()) {
    41                                 if (dlg.panelMain.panelLit.panelCol.offButton.isSelected()) {
     41                                if (dlg.panelMain.panelLit.panelCol.delButton.isSelected()) {
    4242                                        dlg.panelMain.lightIcon.setIcon(null);
    4343                                }
  • applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelCol.java

    r26908 r26925  
    1919        private Ent ent;
    2020        private ButtonGroup colourButtons = new ButtonGroup();
    21         public JRadioButton offButton = new JRadioButton(new ImageIcon(getClass().getResource("/images/OffButton.png")));
     21        public JRadioButton delButton = new JRadioButton(new ImageIcon(getClass().getResource("/images/OffButton.png")));
    2222        public JRadioButton addButton = new JRadioButton(new ImageIcon(getClass().getResource("/images/AddButton.png")));
    2323        public JRadioButton whiteButton = new JRadioButton(new ImageIcon(getClass().getResource("/images/WhiteButton.png")));
     
    4444                                                        dlg.mark.setColour(ent, col);
    4545                                                } else {
    46                                                         if (button == offButton) {
    47                                                                 if (stackCol.size() != 0) {
     46                                                        if (button == delButton) {
     47                                                                if (stackCol.size() > 1) {
    4848                                                                        JRadioButton btnI = stackCol.get(stackIdx);
    4949                                                                        dlg.mark.subColour(ent, stackIdx);
     
    5252                                                                        stack.remove(btnI);
    5353                                                                        stackCol.remove(stackIdx);
    54                                                                         if ((stackCol.size() == stackIdx) && (stackIdx != 0))
     54                                                                        if (stackCol.size() == stackIdx)
    5555                                                                                stackIdx--;
     56                                                                } else {
     57                                                                        dlg.mark.setColour(Ent.BODY, Col.UNKNOWN);
    5658                                                                }
    5759                                                        } else if (button == addButton) {
    58                                                                 if (stackCol.size() != 0) stackIdx++;
     60                                                                if (stackCol.size() != 0)
     61                                                                        stackIdx++;
    5962                                                                dlg.mark.addColour(ent, stackIdx, col);
    6063                                                                stackCol.add(stackIdx, new JRadioButton(new ImageIcon(getClass().getResource("/images/ColourButton.png"))));
     
    6770                                                                dlg.mark.setColour(ent, stackIdx, col);
    6871                                                        }
    69                                                         if (stackCol.size() != 0) {
    70                                                                 int height = 60 / stackCol.size();
    71                                                                 for (int i = 0; stackCol.size() > i; i++) {
    72                                                                         JRadioButton btnI = stackCol.get(i);
    73                                                                         btnI.setBounds(2, (2 + (i * height)), 30, height);
    74                                                                         btnI.setBackground(dlg.mark.ColMAP.get(dlg.mark.getColour(ent, i)));
    75                                                                         if (stackIdx == i) {
    76                                                                                 btnI.setBorderPainted(true);
    77                                                                         } else {
    78                                                                                 btnI.setBorderPainted(false);
    79                                                                         }
     72                                                        int height = 60 / stackCol.size();
     73                                                        for (int i = 0; stackCol.size() > i; i++) {
     74                                                                JRadioButton btnI = stackCol.get(i);
     75                                                                btnI.setBounds(2, (2 + (i * height)), 30, height);
     76                                                                btnI.setBackground(dlg.mark.ColMAP.get(dlg.mark.getColour(ent, i)));
     77                                                                if (stackIdx == i) {
     78                                                                        btnI.setBorderPainted(true);
     79                                                                } else {
     80                                                                        btnI.setBorderPainted(false);
    8081                                                                }
    81                                                         } else {
    82                                                                 stack.repaint();
    8382                                                        }
    8483                                                }
     
    113112                ent = entity;
    114113                this.setLayout(null);
    115                 this.add(getColButton(offButton, 0, 0, 34, 16, Messages.getString("RemColour"), Col.UNKNOWN), null);
     114                this.add(getColButton(delButton, 0, 0, 34, 16, Messages.getString("RemColour"), Col.UNKNOWN), null);
    116115                this.add(getColButton(whiteButton, 0, 16, 34, 16, Messages.getString("White"), Col.WHITE), null);
    117116                this.add(getColButton(redButton, 0, 32, 34, 16, Messages.getString("Red"), Col.RED), null);
     
    135134                        stack.setLayout(null);
    136135                        this.add(stack);
    137                         if (dlg.mark != null) {
    138                                 for (int i = 0; dlg.mark.getColour(ent, i) != Col.UNKNOWN; i++) {
    139                                         stackCol.add(new JRadioButton());
    140                                 }
    141                         }
     136                }
     137        }
     138
     139        public void trimStack(int max) {
     140                while (stackCol.size() > max) {
     141                        stackCol.get(stackCol.size() - 1).setSelected(true);
     142                        delButton.doClick();
    142143                }
    143144        }
     
    145146        public void clearSelections() {
    146147                colourButtons.clearSelection();
    147                 offButton.doClick();
     148                if (stackCol.size() == 0) {
     149                        addButton.doClick();
     150                }
     151                do {
     152                        delButton.doClick();
     153                } while (stackCol.size() > 1);
     154                alStack.actionPerformed(null);
    148155        }
    149156
  • applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelHaz.java

    r26881 r26925  
    33import java.awt.event.*;
    44import java.awt.*;
     5
    56import javax.swing.*;
     7
    68import java.util.*;
    79
     
    120122                }
    121123        };
     124        public JToggleButton topmarkButton = new JToggleButton(new ImageIcon(getClass().getResource("/images/HazTopButton.png")));
     125        private ActionListener alTop = new ActionListener() {
     126                public void actionPerformed(java.awt.event.ActionEvent e) {
     127                        if (topmarkButton.isSelected()) {
     128                                topmarkButton.setBorderPainted(true);
     129                        } else {
     130                                topmarkButton.setBorderPainted(false);
     131                        }
     132                }
     133        };
    122134
    123135        public PanelHaz(OSeaMAction dia) {
     
    138150                this.add(getShapeButton(beaconButton, 90, 32, 34, 32, "Beacon", Shp.BEACON, Obj.BCNCAR, Obj.BCNISD), null);
    139151                this.add(getShapeButton(towerButton, 90, 64, 34, 32, "Tower", Shp.TOWER, Obj.BCNCAR, Obj.BCNISD), null);
     152
     153                topmarkButton.setBounds(new Rectangle(130, 0, 34, 32));
     154                topmarkButton.setBorder(BorderFactory.createLoweredBevelBorder());
     155                topmarkButton.addActionListener(alTop);
     156                this.add(topmarkButton);
    140157        }
    141158
    142159        public void clearSelections() {
     160                topmarkButton.setSelected(false);
     161                alTop.actionPerformed(null);
    143162                catButtons.clearSelection();
    144163                alCat.actionPerformed(null);
  • applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelMain.java

    r26908 r26925  
    225225                alName = new ActionListener() {
    226226                        public void actionPerformed(java.awt.event.ActionEvent e) {
    227                                 if (dlg.mark == null)
    228                                         return;
    229                                 else
    230                                         dlg.mark.setName(nameBox.getText().trim());
     227                                if (dlg.mark != null)
     228                                        dlg.mark.setName(nameBox.getText());
    231229                        }
    232230                };
     
    285283
    286284        public void clearSelections() {
     285                panelMore.clearSelections();
    287286                typeButtons.clearSelection();
     287                alType.actionPerformed(null);
    288288                moreButton.setVisible(false);
    289                 alType.actionPerformed(null);
    290289                nameBox.setText("");
     290                alName.actionPerformed(null);
    291291                clearType();
    292292        }
  • applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelMore.java

    r26908 r26925  
    2121        private ActionListener alInfo = new ActionListener() {
    2222                public void actionPerformed(java.awt.event.ActionEvent e) {
    23                         if (dlg.mark == null)
    24                                 return;
    25                         else
    26                                 dlg.mark.setInfo(infoBox.getText().trim());
     23                        if (dlg.mark != null)
     24                                dlg.mark.setInfo(infoBox.getText());
    2725                }
    2826        };
     
    3129        private ActionListener alSource = new ActionListener() {
    3230                public void actionPerformed(java.awt.event.ActionEvent e) {
    33                         if (dlg.mark == null)
    34                                 return;
    35                         else
    36                                 dlg.mark.setSource(sourceBox.getText().trim());
     31                        if (dlg.mark != null)
     32                                dlg.mark.setSource(sourceBox.getText());
    3733                }
    3834        };
     
    4137        private ActionListener alElev = new ActionListener() {
    4238                public void actionPerformed(java.awt.event.ActionEvent e) {
    43                         if (dlg.mark == null)
    44                                 return;
     39                        if (dlg.mark != null)
     40                                dlg.mark.setElevation(elevBox.getText());
    4541                }
    4642        };
     
    4945        private ActionListener alHeight = new ActionListener() {
    5046                public void actionPerformed(java.awt.event.ActionEvent e) {
    51                         if (dlg.mark == null)
    52                                 return;
     47                        if (dlg.mark != null)
     48                                dlg.mark.setHeight(heightBox.getText());
    5349                }
    5450        };
     
    199195                dlg = dia;
    200196                this.setLayout(null);
    201                 panelPat = new PanelPat(dlg);
     197                panelPat = new PanelPat(dlg, Ent.BODY);
    202198                panelPat.setBounds(new Rectangle(0, 0, 110, 160));
    203199                this.add(panelPat, null);
     
    310306        public void clearSelections() {
    311307                panelPat.clearSelections();
     308                heightBox.setText("");
     309                alHeight.actionPerformed(null);
     310                elevBox.setText("");
     311                alElev.actionPerformed(null);
     312                sourceBox.setText("");
     313                alSource.actionPerformed(null);
     314                infoBox.setText("");
     315                alInfo.actionPerformed(null);
     316                statusBox.setSelectedIndex(0);
     317                alStatus.actionPerformed(null);
     318                constrBox.setSelectedIndex(0);
     319                alConstr.actionPerformed(null);
     320                visBox.setSelectedIndex(0);
     321                alVis.actionPerformed(null);
     322                reflBox.setSelectedIndex(0);
     323                alRefl.actionPerformed(null);
    312324        }
    313325
  • applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelPat.java

    r26881 r26925  
    1010import oseam.Messages;
    1111import oseam.dialogs.OSeaMAction;
    12 import oseam.seamarks.SeaMark.* ;
     12import oseam.seamarks.SeaMark.*;
    1313
    1414public class PanelPat extends JPanel {
     
    2828        private ActionListener alPat = new ActionListener() {
    2929                public void actionPerformed(java.awt.event.ActionEvent e) {
    30                         for (Pat pat : patterns.keySet()) {
    31                                 JRadioButton button = patterns.get(pat);
    32                                 if (button.isSelected()) {
    33                                         dlg.mark.setPattern(Ent.BODY, pat);
    34                                         button.setBorderPainted(true);
    35                                 } else
    36                                         button.setBorderPainted(false);
     30                        if (dlg.mark != null) {
     31                                for (Pat pat : patterns.keySet()) {
     32                                        JRadioButton button = patterns.get(pat);
     33                                        if (button.isSelected()) {
     34                                                dlg.mark.setPattern(Ent.BODY, pat);
     35                                                button.setBorderPainted(true);
     36                                        } else
     37                                                button.setBorderPainted(false);
     38                                }
     39                                switch (dlg.mark.getPattern(Ent.BODY)) {
     40                                case NONE:
     41                                        panelCol.trimStack(1);
     42                                        break;
     43                                case HORIZ:
     44                                case VERT:
     45                                case DIAG:
     46                                        break;
     47                                case SQUARE:
     48                                        panelCol.trimStack(4);
     49                                        break;
     50                                case BORDER:
     51                                        panelCol.trimStack(2);
     52                                        break;
     53                                }
     54                                dlg.mark.paintSign();
    3755                        }
    38                         if (dlg.mark != null)
    39                                 dlg.mark.paintSign();
    4056                }
    4157        };
    4258
    43         public PanelPat(OSeaMAction dia) {
     59        public PanelPat(OSeaMAction dia, Ent entity) {
    4460                dlg = dia;
    4561                this.setLayout(null);
    46                 panelCol = new PanelCol(dlg, alType, Ent.BODY);
     62                panelCol = new PanelCol(dlg, alType, entity);
    4763                panelCol.setBounds(new Rectangle(0, 0, 72, 160));
    4864                this.add(panelCol, null);
     
    5369                this.add(getPatButton(squareButton, 76, 104, 27, 27, "SquarePat", Pat.SQUARE), null);
    5470                this.add(getPatButton(borderButton, 76, 130, 27, 27, "BorderPat", Pat.BORDER), null);
    55                
     71
    5672        }
    5773
    5874        public void clearSelections() {
     75                panelCol.clearSelections();
    5976                patButtons.clearSelection();
    6077                alPat.actionPerformed(null);
  • applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelPort.java

    r26881 r26925  
    3737                        }
    3838                        if (dlg.mark != null) {
    39                                 if ((dlg.mark.getObject() != Obj.UNKNOWN) && (dlg.mark.getShape() != Shp.UNKNOWN))
     39                                if ((dlg.mark.getObject() != Obj.UNKNOWN) && (dlg.mark.getShape() != Shp.UNKNOWN)) {
    4040                                        dlg.panelMain.moreButton.setVisible(true);
    41                                 else
     41                                        dlg.panelMain.panelChan.topmarkButton.setVisible(true);
     42                                        dlg.panelMain.panelMore.panelPat.panelCol.clearSelections();
     43                                        if (dlg.mark.getCategory() == Cat.LAM_PORT) {
     44                                                switch (dlg.mark.getRegion()) {
     45                                                case A:
     46                                                        dlg.panelMain.panelMore.panelPat.noneButton.doClick();
     47                                                        dlg.panelMain.panelMore.panelPat.panelCol.redButton.doClick();
     48                                                        break;
     49                                                case B:
     50                                                        dlg.panelMain.panelMore.panelPat.noneButton.doClick();
     51                                                        dlg.panelMain.panelMore.panelPat.panelCol.greenButton.doClick();
     52                                                        break;
     53                                                case C:
     54                                                        dlg.panelMain.panelMore.panelPat.horizButton.doClick();
     55                                                        dlg.panelMain.panelMore.panelPat.panelCol.redButton.doClick();
     56                                                        dlg.panelMain.panelMore.panelPat.panelCol.addButton.doClick();
     57                                                        dlg.panelMain.panelMore.panelPat.panelCol.whiteButton.doClick();
     58                                                        dlg.panelMain.panelMore.panelPat.panelCol.addButton.doClick();
     59                                                        dlg.panelMain.panelMore.panelPat.panelCol.redButton.doClick();
     60                                                        dlg.panelMain.panelMore.panelPat.panelCol.addButton.doClick();
     61                                                        dlg.panelMain.panelMore.panelPat.panelCol.whiteButton.doClick();
     62                                                        break;
     63                                                }
     64                                        } else {
     65                                                switch (dlg.mark.getRegion()) {
     66                                                case A:
     67                                                        dlg.panelMain.panelMore.panelPat.horizButton.doClick();
     68                                                        dlg.panelMain.panelMore.panelPat.panelCol.redButton.doClick();
     69                                                        dlg.panelMain.panelMore.panelPat.panelCol.addButton.doClick();
     70                                                        dlg.panelMain.panelMore.panelPat.panelCol.greenButton.doClick();
     71                                                        dlg.panelMain.panelMore.panelPat.panelCol.addButton.doClick();
     72                                                        dlg.panelMain.panelMore.panelPat.panelCol.redButton.doClick();
     73                                                        break;
     74                                                case B:
     75                                                        dlg.panelMain.panelMore.panelPat.horizButton.doClick();
     76                                                        dlg.panelMain.panelMore.panelPat.panelCol.greenButton.doClick();
     77                                                        dlg.panelMain.panelMore.panelPat.panelCol.addButton.doClick();
     78                                                        dlg.panelMain.panelMore.panelPat.panelCol.redButton.doClick();
     79                                                        dlg.panelMain.panelMore.panelPat.panelCol.addButton.doClick();
     80                                                        dlg.panelMain.panelMore.panelPat.panelCol.greenButton.doClick();
     81                                                        break;
     82                                                case C:
     83                                                        dlg.panelMain.panelMore.panelPat.horizButton.doClick();
     84                                                        dlg.panelMain.panelMore.panelPat.panelCol.redButton.doClick();
     85                                                        dlg.panelMain.panelMore.panelPat.panelCol.addButton.doClick();
     86                                                        dlg.panelMain.panelMore.panelPat.panelCol.greenButton.doClick();
     87                                                        dlg.panelMain.panelMore.panelPat.panelCol.addButton.doClick();
     88                                                        dlg.panelMain.panelMore.panelPat.panelCol.redButton.doClick();
     89                                                        dlg.panelMain.panelMore.panelPat.panelCol.addButton.doClick();
     90                                                        dlg.panelMain.panelMore.panelPat.panelCol.greenButton.doClick();
     91                                                        break;
     92                                                }
     93                                        }
     94                                } else {
    4295                                        dlg.panelMain.moreButton.setVisible(false);
     96                                        dlg.panelMain.panelChan.topmarkButton.setVisible(false);
     97                                }
    4398                                dlg.mark.paintSign();
    4499                        }
  • applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelSaw.java

    r26881 r26925  
    3333                        }
    3434                        if (dlg.mark != null) {
    35                                 if ((dlg.mark.getObject() != Obj.UNKNOWN) && (dlg.mark.getShape() != Shp.UNKNOWN))
     35                                if ((dlg.mark.getObject() != Obj.UNKNOWN) && (dlg.mark.getShape() != Shp.UNKNOWN)) {
    3636                                        dlg.panelMain.moreButton.setVisible(true);
    37                                 else
     37                                        dlg.panelMain.panelChan.topmarkButton.setVisible(true);
     38                                        dlg.panelMain.panelMore.panelPat.panelCol.clearSelections();
     39                                        dlg.panelMain.panelMore.panelPat.vertButton.doClick();
     40                                        dlg.panelMain.panelMore.panelPat.panelCol.redButton.doClick();
     41                                        dlg.panelMain.panelMore.panelPat.panelCol.addButton.doClick();
     42                                        dlg.panelMain.panelMore.panelPat.panelCol.whiteButton.doClick();
     43                                } else {
    3844                                        dlg.panelMain.moreButton.setVisible(false);
     45                                }
    3946                                dlg.mark.paintSign();
    4047                        }
  • applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelSpec.java

    r26881 r26925  
    5151                                        dlg.mark.setShape(shp);
    5252                                        dlg.mark.setObject(objects.get(shp));
    53                                         if ((button == cairnButton) && !(dlg.panelMain.panelMore.panelPat.panelCol.offButton.isSelected()))
    54                                                 dlg.panelMain.panelMore.panelPat.panelCol.offButton.doClick();
     53                                        if ((button == cairnButton) && !(dlg.panelMain.panelMore.panelPat.panelCol.delButton.isSelected()))
     54                                                dlg.panelMain.panelMore.panelPat.panelCol.delButton.doClick();
    5555                                        button.setBorderPainted(true);
    5656                                } else
  • applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelStbd.java

    r26881 r26925  
    3737                        }
    3838                        if (dlg.mark != null) {
    39                                 if ((dlg.mark.getObject() != Obj.UNKNOWN) && (dlg.mark.getShape() != Shp.UNKNOWN))
     39                                if ((dlg.mark.getObject() != Obj.UNKNOWN) && (dlg.mark.getShape() != Shp.UNKNOWN)) {
    4040                                        dlg.panelMain.moreButton.setVisible(true);
    41                                 else
     41                                        dlg.panelMain.panelChan.topmarkButton.setVisible(true);
     42                                        dlg.panelMain.panelMore.panelPat.panelCol.clearSelections();
     43                                        if (dlg.mark.getCategory() == Cat.LAM_PORT) {
     44                                                switch (dlg.mark.getRegion()) {
     45                                                case A:
     46                                                        dlg.panelMain.panelMore.panelPat.noneButton.doClick();
     47                                                        dlg.panelMain.panelMore.panelPat.panelCol.greenButton.doClick();
     48                                                        break;
     49                                                case B:
     50                                                        dlg.panelMain.panelMore.panelPat.noneButton.doClick();
     51                                                        dlg.panelMain.panelMore.panelPat.panelCol.redButton.doClick();
     52                                                        break;
     53                                                case C:
     54                                                        dlg.panelMain.panelMore.panelPat.horizButton.doClick();
     55                                                        dlg.panelMain.panelMore.panelPat.panelCol.greenButton.doClick();
     56                                                        dlg.panelMain.panelMore.panelPat.panelCol.addButton.doClick();
     57                                                        dlg.panelMain.panelMore.panelPat.panelCol.whiteButton.doClick();
     58                                                        dlg.panelMain.panelMore.panelPat.panelCol.addButton.doClick();
     59                                                        dlg.panelMain.panelMore.panelPat.panelCol.greenButton.doClick();
     60                                                        dlg.panelMain.panelMore.panelPat.panelCol.addButton.doClick();
     61                                                        dlg.panelMain.panelMore.panelPat.panelCol.whiteButton.doClick();
     62                                                        break;
     63                                                }
     64                                        } else {
     65                                                switch (dlg.mark.getRegion()) {
     66                                                case A:
     67                                                        dlg.panelMain.panelMore.panelPat.horizButton.doClick();
     68                                                        dlg.panelMain.panelMore.panelPat.panelCol.greenButton.doClick();
     69                                                        dlg.panelMain.panelMore.panelPat.panelCol.addButton.doClick();
     70                                                        dlg.panelMain.panelMore.panelPat.panelCol.redButton.doClick();
     71                                                        dlg.panelMain.panelMore.panelPat.panelCol.addButton.doClick();
     72                                                        dlg.panelMain.panelMore.panelPat.panelCol.greenButton.doClick();
     73                                                        break;
     74                                                case B:
     75                                                        dlg.panelMain.panelMore.panelPat.horizButton.doClick();
     76                                                        dlg.panelMain.panelMore.panelPat.panelCol.redButton.doClick();
     77                                                        dlg.panelMain.panelMore.panelPat.panelCol.addButton.doClick();
     78                                                        dlg.panelMain.panelMore.panelPat.panelCol.greenButton.doClick();
     79                                                        dlg.panelMain.panelMore.panelPat.panelCol.addButton.doClick();
     80                                                        dlg.panelMain.panelMore.panelPat.panelCol.redButton.doClick();
     81                                                        break;
     82                                                case C:
     83                                                        dlg.panelMain.panelMore.panelPat.horizButton.doClick();
     84                                                        dlg.panelMain.panelMore.panelPat.panelCol.redButton.doClick();
     85                                                        dlg.panelMain.panelMore.panelPat.panelCol.addButton.doClick();
     86                                                        dlg.panelMain.panelMore.panelPat.panelCol.greenButton.doClick();
     87                                                        dlg.panelMain.panelMore.panelPat.panelCol.addButton.doClick();
     88                                                        dlg.panelMain.panelMore.panelPat.panelCol.redButton.doClick();
     89                                                        dlg.panelMain.panelMore.panelPat.panelCol.addButton.doClick();
     90                                                        dlg.panelMain.panelMore.panelPat.panelCol.greenButton.doClick();
     91                                                        break;
     92                                                }
     93                                        }
     94                                } else {
    4295                                        dlg.panelMain.moreButton.setVisible(false);
     96                                        dlg.panelMain.panelChan.topmarkButton.setVisible(false);
     97                                }
    4398                                dlg.mark.paintSign();
    4499                        }
  • applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelTop.java

    r26881 r26925  
    1313
    1414        private OSeaMAction dlg;
    15         public PanelCol panelCol = null;
     15        public PanelPat panelPat = null;
    1616        private ButtonGroup topButtons = new ButtonGroup();
    1717        public JRadioButton noTopButton = new JRadioButton(new ImageIcon(getClass().getResource("/images/NoneButton.png")));
     
    6060        public PanelTop(OSeaMAction dia) {
    6161                dlg = dia;
    62                 panelCol = new PanelCol(dlg, alTop, Ent.TOPMARK);
    63                 panelCol.setBounds(new Rectangle(0, 0, 34, 160));
    6462                this.setLayout(null);
    65                 this.add(panelCol, null);
    66                 this.add(getTopButton(noTopButton, 40, 5, 27, 27, "NoTop", Top.NONE), null);
    67                 this.add(getTopButton(canTopButton, 70, 5, 27, 27, "CanTop", Top.CAN), null);
    68                 this.add(getTopButton(coneTopButton, 100, 5, 27, 27, "ConeTop", Top.CONE), null);
    69                 this.add(getTopButton(sphereTopButton, 130, 5, 27, 27, "SphereTop", Top.SPHERE), null);
    70                 this.add(getTopButton(XTopButton, 160, 5, 27, 27, "XTop", Top.X_SHAPE), null);
    71                 this.add(getTopButton(northTopButton, 40, 35, 27, 27, "NorthTop", Top.NORTH), null);
    72                 this.add(getTopButton(southTopButton, 70, 35, 27, 27, "SouthTop", Top.SOUTH), null);
    73                 this.add(getTopButton(eastTopButton, 100, 35, 27, 27, "EastTop", Top.EAST), null);
    74                 this.add(getTopButton(westTopButton, 130, 35, 27, 27, "WestTop", Top.WEST), null);
    75                 this.add(getTopButton(spheres2TopButton, 160, 35, 27, 27, "Spheres2Top", Top.SPHERES2), null);
    76                 this.add(getDayButton(boardDayButton, 40, 65, 27, 27, "BoardDay", Day.BOARD), null);
    77                 this.add(getDayButton(diamondDayButton, 70, 65, 27, 27, "DiamondDay", Day.DIAMOND), null);
    78                 this.add(getDayButton(triangleDayButton, 100, 65, 27, 27, "TriangleDay", Day.TRIANGLE), null);
    79                 this.add(getDayButton(triangleInvDayButton, 130, 65, 27, 27, "TriangleInvDay", Day.TRIANGLE_INV), null);
    80                 this.add(getDayButton(squareDayButton, 160, 65, 27, 27, "SquareDay", Day.SQUARE), null);
    81                 this.add(getDayButton(circleDayButton, 160, 95, 27, 27, "CircleDay", Day.CIRCLE), null);
    82                 this.add(getMoorButton(mooringTopButton, 40, 95, 27, 27, "MooringTop"), null);
     63                panelPat = new PanelPat(dlg, Ent.TOPMARK);
     64                panelPat.setBounds(new Rectangle(0, 0, 110, 160));
     65                this.add(panelPat, null);
     66                this.add(getTopButton(noTopButton, 110, 5, 27, 27, "NoTop", Top.NONE), null);
     67                this.add(getTopButton(canTopButton, 140, 5, 27, 27, "CanTop", Top.CAN), null);
     68                this.add(getTopButton(coneTopButton, 170, 5, 27, 27, "ConeTop", Top.CONE), null);
     69                this.add(getTopButton(sphereTopButton, 200, 5, 27, 27, "SphereTop", Top.SPHERE), null);
     70                this.add(getTopButton(XTopButton, 230, 5, 27, 27, "XTop", Top.X_SHAPE), null);
     71                this.add(getTopButton(northTopButton, 110, 35, 27, 27, "NorthTop", Top.NORTH), null);
     72                this.add(getTopButton(southTopButton, 140, 35, 27, 27, "SouthTop", Top.SOUTH), null);
     73                this.add(getTopButton(eastTopButton, 170, 35, 27, 27, "EastTop", Top.EAST), null);
     74                this.add(getTopButton(westTopButton, 200, 35, 27, 27, "WestTop", Top.WEST), null);
     75                this.add(getTopButton(spheres2TopButton, 230, 35, 27, 27, "Spheres2Top", Top.SPHERES2), null);
     76                this.add(getDayButton(boardDayButton, 110, 65, 27, 27, "BoardDay", Day.BOARD), null);
     77                this.add(getDayButton(diamondDayButton, 140, 65, 27, 27, "DiamondDay", Day.DIAMOND), null);
     78                this.add(getDayButton(triangleDayButton, 170, 65, 27, 27, "TriangleDay", Day.TRIANGLE), null);
     79                this.add(getDayButton(triangleInvDayButton, 200, 65, 27, 27, "TriangleInvDay", Day.TRIANGLE_INV), null);
     80                this.add(getDayButton(squareDayButton, 230, 65, 27, 27, "SquareDay", Day.SQUARE), null);
     81                this.add(getDayButton(circleDayButton, 230, 95, 27, 27, "CircleDay", Day.CIRCLE), null);
     82                this.add(getMoorButton(mooringTopButton, 110, 95, 27, 27, "MooringTop"), null);
    8383        }
    8484
     
    8686                topButtons.clearSelection();
    8787                alTop.actionPerformed(null);
    88                 panelCol.clearSelections();
     88                panelPat.clearSelections();
    8989        }
    9090
  • applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/seamarks/SeaMark.java

    r26908 r26925  
    2323        }
    2424
     25        public String validDecimal(String str) {
     26                str = str.trim().replace(',', '.');
     27                if ((!str.isEmpty()) && (!str.matches("^[+-]??\\d+(\\.\\d+)??$"))) {
     28                        dlg.manager.showVisualMessage("Not a valid decimal string");
     29                        return "";
     30                } else {
     31                        dlg.manager.showVisualMessage("");
     32                        return str;
     33                }
     34        }
     35       
    2536        public enum Reg {
    2637                A, B, C
     
    4455
    4556        public void setName(String nam) {
    46                 name = nam;
     57                name = nam.trim();
    4758        }
    4859
     
    725736       
    726737        public void setInfo(String str) {
    727                 information = str;
     738                information = str.trim();
    728739        }
    729740       
     
    735746       
    736747        public void setSource(String str) {
    737                 source = str;
     748                source = str.trim();
     749        }
     750       
     751        public String elevation = "";
     752       
     753        public String getElevation() {
     754                return elevation;
     755        }
     756       
     757        public void setElevation(String str) {
     758                elevation = validDecimal(str);
     759        }
     760       
     761        public String height = "";
     762       
     763        public String getHeight() {
     764                return height;
     765        }
     766       
     767        public void setHeight(String str) {
     768                height = validDecimal(str);
    738769        }
    739770       
Note: See TracChangeset for help on using the changeset viewer.