Ignore:
Timestamp:
2010-09-15T13:58:06+02:00 (14 years ago)
Author:
malcolmh
Message:

more parsing

Location:
applications/editors/josm/plugins/toms/src/toms/seamarks
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • applications/editors/josm/plugins/toms/src/toms/seamarks/SeaMark.java

    r23138 r23174  
    111111         */
    112112       
    113         public final static int UNKNOWN_RATYP = 0;
    114         public final static int RATYP_RACON = 1;
    115         public final static int RATYP_RAMARK = 2;
    116         public final static int RATYP_LEADING = 3;
     113        public final static int UNKNOWN_RATYPE = 0;
     114        public final static int RATYPE_RACON = 1;
     115        public final static int RATYPE_RAMARK = 2;
     116        public final static int RATYPE_LEADING = 3;
    117117
    118118        /**
  • applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/Buoy.java

    r23166 r23174  
    115115        }
    116116
    117         public void setFogSound(int fogSound) {
    118                 FogSound = fogSound;
     117        public void setFogSound(int sound) {
     118                FogSound = sound;
    119119        }
    120120
     
    125125        }
    126126
    127         public void setFogGroup(String fogGroup) {
    128                 FogGroup = fogGroup;
     127        public void setFogGroup(String group) {
     128                FogGroup = group;
    129129        }
    130130
     
    135135        }
    136136
    137         public void setFogPeriod(String fogPeriod) {
    138                 FogPeriod = fogPeriod;
     137        public void setFogPeriod(String period) {
     138                FogPeriod = period;
    139139        }
    140140
     
    172172
    173173        public String getLightChar() {
    174                 if (LightChar[getSectorIndex()] == null)
     174                if (LightChar[SectorIndex] == null)
    175175                        return (LightChar[0]);
    176                 return LightChar[getSectorIndex()];
     176                return LightChar[SectorIndex];
    177177        }
    178178
    179179        public void setLightChar(String lightChar) {
    180                 if (getSectorIndex() == 0)
     180                if (SectorIndex == 0)
    181181                        LightChar = new String[10];
    182                 LightChar[getSectorIndex()] = lightChar;
     182                LightChar[SectorIndex] = lightChar;
    183183        }
    184184
     
    186186
    187187        public String getLightColour() {
    188                 if (LightColour[getSectorIndex()] == null)
     188                if (LightColour[SectorIndex] == null)
    189189                        return (LightColour[0]);
    190                 return LightColour[getSectorIndex()];
     190                return LightColour[SectorIndex];
    191191        }
    192192
    193193        public void setLightColour(String lightColour) {
    194                 if (getSectorIndex() == 0)
     194                if (SectorIndex == 0)
    195195                        LightColour = new String[10];
    196                 LightColour[getSectorIndex()] = lightColour;
     196                LightColour[SectorIndex] = lightColour;
    197197        }
    198198
     
    200200
    201201        public String getLightGroup() {
    202                 if (LightGroup[getSectorIndex()] == null)
     202                if (LightGroup[SectorIndex] == null)
    203203                        return (LightGroup[0]);
    204                 return LightGroup[getSectorIndex()];
     204                return LightGroup[SectorIndex];
    205205        }
    206206
    207207        public void setLightGroup(String lightGroup) {
    208                 if (getSectorIndex() == 0)
     208                if (SectorIndex == 0)
    209209                        LightGroup = new String[10];
    210                 LightGroup[getSectorIndex()] = lightGroup;
     210                LightGroup[SectorIndex] = lightGroup;
    211211        }
    212212
     
    222222
    223223        public String getHeight() {
    224                 if (Height[getSectorIndex()] == null)
     224                if (Height[SectorIndex] == null)
    225225                        return (Height[0]);
    226                 return Height[getSectorIndex()];
     226                return Height[SectorIndex];
    227227        }
    228228
    229229        public void setHeight(String height) {
    230                 if (getSectorIndex() == 0)
     230                if (SectorIndex == 0)
    231231                        Height = new String[10];
    232                 Height[getSectorIndex()] = height;
     232                Height[SectorIndex] = height;
    233233        }
    234234
     
    236236
    237237        public String getRange() {
    238                 if (Range[getSectorIndex()] == null)
     238                if (Range[SectorIndex] == null)
    239239                        return (Range[0]);
    240                 return Range[getSectorIndex()];
     240                return Range[SectorIndex];
    241241        }
    242242
    243243        public void setRange(String range) {
    244                 if (getSectorIndex() == 0)
     244                if (SectorIndex == 0)
    245245                        Range = new String[10];
    246                 Range[getSectorIndex()] = range;
     246                Range[SectorIndex] = range;
    247247        }
    248248
     
    250250
    251251        public String getBearing1() {
    252                 if (Bearing1[getSectorIndex()] == null)
     252                if (Bearing1[SectorIndex] == null)
    253253                        return (Bearing1[0]);
    254                 return Bearing1[getSectorIndex()];
     254                return Bearing1[SectorIndex];
    255255        }
    256256
    257257        public void setBearing1(String bearing) {
    258                 if (getSectorIndex() == 0)
     258                if (SectorIndex == 0)
    259259                        Bearing1 = new String[10];
    260                 Bearing1[getSectorIndex()] = bearing;
     260                Bearing1[SectorIndex] = bearing;
    261261        }
    262262
     
    264264
    265265        public String getBearing2() {
    266                 if (Bearing2[getSectorIndex()] == null)
     266                if (Bearing2[SectorIndex] == null)
    267267                        return (Bearing2[0]);
    268                 return Bearing2[getSectorIndex()];
     268                return Bearing2[SectorIndex];
    269269        }
    270270
    271271        public void setBearing2(String bearing) {
    272                 if (getSectorIndex() == 0)
     272                if (SectorIndex == 0)
    273273                        Bearing2 = new String[10];
    274                 Bearing2[getSectorIndex()] = bearing;
     274                Bearing2[SectorIndex] = bearing;
    275275        }
    276276
     
    278278
    279279        public String getRadius() {
    280                 if (Radius[getSectorIndex()] == null)
     280                if (Radius[SectorIndex] == null)
    281281                        return (Radius[0]);
    282                 return Radius[getSectorIndex()];
     282                return Radius[SectorIndex];
    283283        }
    284284
    285285        public void setRadius(String radius) {
    286                 if (getSectorIndex() == 0)
     286                if (SectorIndex == 0)
    287287                        Radius = new String[10];
    288                 Radius[getSectorIndex()] = radius;
     288                Radius[SectorIndex] = radius;
    289289        }
    290290
     
    292292
    293293        public String getLightPeriod() {
    294                 if (LightPeriod[getSectorIndex()] == null)
     294                if (LightPeriod[SectorIndex] == null)
    295295                        return (LightPeriod[0]);
    296                 return LightPeriod[getSectorIndex()];
     296                return LightPeriod[SectorIndex];
    297297        }
    298298
     
    313313                        }
    314314                }
    315                 if (getSectorIndex() == 0)
     315                if (SectorIndex == 0)
    316316                        LightPeriod = new String[10];
    317                 LightPeriod[getSectorIndex()] = lightPeriod;
    318         }
    319 
    320         protected void setLightPeriod(Map<String, String> k) {
    321                 String s = "";
    322                 if (k.containsKey("seamark:light:period")) {
    323                         s = k.get("seamark:light:period");
    324                         setSectorIndex(0);
    325                         setLightPeriod(s);
    326                         return;
    327                 }
     317                LightPeriod[SectorIndex] = lightPeriod;
    328318        }
    329319
     
    375365                Iterator it = k.entrySet().iterator();
    376366                while (it.hasNext()) {
    377                         Map.Entry entry = (Map.Entry)it.next();
     367                        Map.Entry entry = (Map.Entry) it.next();
    378368                        String key = (String) entry.getKey();
    379369                        String value = ((String) entry.getValue()).trim();
     
    400390                                        index = 0;
    401391                                }
    402                                 if (index != 0) setSectored(true);
     392                                if (index != 0)
     393                                        setSectored(true);
    403394                                if (key.equals("colour")) {
    404395                                        if (value.equals("red"))
     
    421412                        }
    422413                }
     414                setSectorIndex(0);
     415                dlg.cM01Fired.setSelected(isFired());
     416                dlg.rbM01Fired1.setSelected(!isSectored());
     417                dlg.rbM01FiredN.setSelected(isSectored());
     418                dlg.cbM01Kennung.setSelectedItem(getLightChar());
     419                dlg.tfM01Height.setText(getHeight());
     420                dlg.tfM01Range.setText(getRange());
     421                dlg.tfM01Group.setText(getLightGroup());
     422                dlg.tfM01RepeatTime.setText(getLightPeriod());
     423                dlg.cbM01Colour.setSelectedItem(getLightColour());
     424        }
     425
     426        public void parseFogRadar(Map<String, String> k) {
     427                String str;
     428                setFog(false);
     429                setRadar(false);
     430                setRacon(false);
     431                if (k.containsKey("seamark:fog_signal")
     432                                || k.containsKey("seamark:fog_signal:category")
     433                                || k.containsKey("seamark:fog_signal:group")
     434                                || k.containsKey("seamark:fog_signal:period")) {
     435                        setFog(true);
     436                        if (k.containsKey("seamark:fog_signal:category")) {
     437                                str = k.get("seamark:fog_signal:category");
     438                                if (str.equals("horn"))
     439                                        setFogSound(FOG_HORN);
     440                                else if (str.equals("siren"))
     441                                        setFogSound(FOG_SIREN);
     442                                else if (str.equals("diaphone"))
     443                                        setFogSound(FOG_DIA);
     444                                else if (str.equals("bell"))
     445                                        setFogSound(FOG_BELL);
     446                                else if (str.equals("whis"))
     447                                        setFogSound(FOG_WHIS);
     448                                else if (str.equals("gong"))
     449                                        setFogSound(FOG_GONG);
     450                                else if (str.equals("explosive"))
     451                                        setFogSound(FOG_EXPLOS);
     452                                else
     453                                        setFogSound(UNKNOWN_FOG);
     454                        }
     455                        if (k.containsKey("seamark:fog_signal:group"))
     456                                setFogGroup(k.get("seamark:fog_signal:group"));
     457                        if (k.containsKey("seamark:fog_signal:period"))
     458                                setFogPeriod(k.get("seamark:fog_signal:period"));
     459                }
     460                dlg.cM01Fog.setSelected(hasFog());
     461                dlg.cbM01Fog.setSelectedIndex(getFogSound());
     462                dlg.tfM01FogGroup.setText(getFogGroup());
     463                dlg.tfM01FogPeriod.setText(getFogPeriod());
     464
     465                if (k.containsKey("seamark:radar_transponder")
     466                                || k.containsKey("seamark:radar_transponder:category")
     467                                || k.containsKey("seamark:radar_transponder:group")) {
     468                        setRacon(true);
     469                        if (k.containsKey("seamark:radar_transponder:category")) {
     470                                str = k.get("seamark:radar_transponder:category");
     471                                if (str.equals("racon"))
     472                                        setRaType(RATYPE_RACON);
     473                                else if (str.equals("ramark"))
     474                                        setRaType(RATYPE_RAMARK);
     475                                else if (str.equals("leading"))
     476                                        setRaType(RATYPE_LEADING);
     477                                else
     478                                        setRaType(UNKNOWN_RATYPE);
     479                        }
     480                        if (k.containsKey("seamark:radar_transponder:group"))
     481                                setRaconGroup(k.get("seamark:radar_transponder:group"));
     482                } else if (k.containsKey("seamark:radar_reflector"))
     483                        setRadar(true);
     484                dlg.cM01Radar.setSelected(hasRadar());
     485                dlg.cM01Racon.setSelected(hasRacon());
     486                dlg.cbM01Racon.setSelectedIndex(getRaType());
     487                dlg.tfM01Racon.setText(getRaconGroup());
    423488        }
    424489
     
    459524                                                "/images/Radar_Station.png")));
    460525                                dlg.cbM01Racon.setVisible(true);
    461                                 if (getRaType() == RATYP_RACON) {
     526                                if (getRaType() == RATYPE_RACON) {
    462527                                        dlg.lM01Racon.setVisible(true);
    463528                                        dlg.tfM01Racon.setVisible(true);
     
    532597                                }
    533598                                dlg.cbM01Kennung.setSelectedItem(c);
    534                                 if ((dlg.cbM01Kennung.getSelectedIndex() == 0) && !getLightGroup().isEmpty()) {
     599                                if (((dlg.cbM01Kennung.getSelectedIndex() == 0) && !getLightGroup()
     600                                                .isEmpty())
     601                                                || (((String) dlg.cbM01Kennung.getSelectedItem()).contains("("))
     602                                                && !(((String) dlg.cbM01Kennung.getSelectedItem()).contains("+"))) {
    535603                                        c = c + "(" + getLightGroup() + ")";
    536604                                        dlg.cbM01Kennung.setSelectedItem(c);
     
    544612                                dlg.lM01Kennung.setVisible(true);
    545613                                dlg.cbM01Kennung.setVisible(true);
    546                                 if (((String)dlg.cbM01Kennung.getSelectedItem()).contains("(")) {
     614                                if (((String) dlg.cbM01Kennung.getSelectedItem()).contains("(")) {
    547615                                        dlg.tfM01Group.setVisible(false);
    548616                                        dlg.lM01Group.setVisible(false);
     
    804872                if (hasRacon()) {
    805873                        switch (RaType) {
    806                         case RATYP_RACON:
     874                        case RATYPE_RACON:
    807875                                Main.main.undoRedo.add(new ChangePropertyCommand(Node,
    808876                                                "seamark:radar_transponder:category", "racon"));
     
    811879                                                        "seamark:radar_transponder:group", getRaconGroup()));
    812880                                break;
    813                         case RATYP_RAMARK:
     881                        case RATYPE_RAMARK:
    814882                                Main.main.undoRedo.add(new ChangePropertyCommand(Node,
    815883                                                "seamark:radar_transponder:category", "ramark"));
    816884                                break;
    817                         case RATYP_LEADING:
     885                        case RATYPE_LEADING:
    818886                                Main.main.undoRedo.add(new ChangePropertyCommand(Node,
    819887                                                "seamark:radar_transponder:category", "leading"));
     
    825893                }
    826894                if (hasFog()) {
    827                         if (FogSound == 0) {
     895                        if (getFogSound() == 0) {
    828896                                Main.main.undoRedo.add(new ChangePropertyCommand(Node,
    829897                                                "seamark:fog_signal", "yes"));
    830898                        } else {
    831                                 switch (FogSound) {
     899                                switch (getFogSound()) {
    832900                                case FOG_HORN:
    833901                                        Main.main.undoRedo.add(new ChangePropertyCommand(Node,
     
    861929                                if (!getFogGroup().isEmpty())
    862930                                        Main.main.undoRedo.add(new ChangePropertyCommand(Node,
    863                                                         "seamark:fog_group:group", getFogGroup()));
     931                                                        "seamark:fog_signal:group", getFogGroup()));
    864932                                if (!getFogPeriod().isEmpty())
    865933                                        Main.main.undoRedo.add(new ChangePropertyCommand(Node,
    866                                                         "seamark:fog_period:group", getFogPeriod()));
     934                                                        "seamark:fog_signal:period", getFogPeriod()));
    867935                        }
    868936                }
  • applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoyCard.java

    r23155 r23174  
    107107                }
    108108
    109                 dlg.cbM01CatOfMark.setSelectedIndex(getBuoyIndex());
    110 
    111109                if (keys.containsKey("seamark:buoy_cardinal:shape")) { //$NON-NLS-1$
    112110                        str = keys.get("seamark:buoy_cardinal:shape"); //$NON-NLS-1$
     
    133131                if (getStyleIndex() >= dlg.cbM01StyleOfMark.getItemCount())
    134132                        setStyleIndex(0);
     133
     134                refreshLights();
     135                parseLights(keys);
     136                parseFogRadar(keys);
     137               
     138                dlg.cbM01CatOfMark.setSelectedIndex(getBuoyIndex());
    135139                dlg.cbM01StyleOfMark.setSelectedIndex(getStyleIndex());
    136 
    137                 parseLights(keys);
    138                 refreshLights();
     140                dlg.tfM01Name.setText(getName());
     141                dlg.cM01TopMark.setSelected(hasTopMark());
    139142        }
    140143
  • applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoyIsol.java

    r23155 r23174  
    8989                }
    9090
     91                refreshLights();
    9192                parseLights(keys);
    92                 refreshLights();
     93                parseFogRadar(keys);
     94
     95                dlg.cbM01StyleOfMark.setSelectedIndex(getStyleIndex());
     96                dlg.tfM01Name.setText(getName());
     97                dlg.cM01TopMark.setSelected(hasTopMark());
    9398        }
    9499       
  • applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoyLat.java

    r23155 r23174  
    213213                        }
    214214                }
    215 
    216                 dlg.cbM01CatOfMark.setSelectedIndex(getBuoyIndex());
    217215
    218216                if (keys.containsKey("seamark:buoy_lateral:shape")) { //$NON-NLS-1$
     
    273271
    274272                refreshStyles();
    275                 parseLights(keys);
    276273                refreshLights();
    277274                setLightColour();
     275                parseLights(keys);
     276                parseFogRadar(keys);
     277               
     278                dlg.cbM01CatOfMark.setSelectedIndex(getBuoyIndex());
     279                dlg.cbM01StyleOfMark.setSelectedIndex(getStyleIndex());
     280                dlg.tfM01Name.setText(getName());
     281                dlg.cM01TopMark.setSelected(hasTopMark());
    278282        }
    279283
  • applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoyNota.java

    r23156 r23174  
    6868                }
    6969
    70                 dlg.cbM01CatOfMark.setSelectedIndex(getBuoyIndex());
    71 
     70                refreshLights();
    7271                parseLights(keys);
    73                 refreshLights();
     72                parseFogRadar(keys);
    7473                setTopMark(false);
    7574                setFired(true);
     75
     76                dlg.cbM01CatOfMark.setSelectedIndex(getBuoyIndex());
     77                dlg.tfM01Name.setText(getName());
    7678                dlg.cM01Fired.setEnabled(false);
    7779                dlg.cM01Fired.setSelected(true);
  • applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoySaw.java

    r23155 r23174  
    7676                if (getStyleIndex() >= dlg.cbM01StyleOfMark.getItemCount())
    7777                        setStyleIndex(0);
    78                 dlg.cbM01StyleOfMark.setSelectedIndex(getStyleIndex());
    7978               
    8079                if (keys.containsKey("seamark:topmark:shape") //$NON-NLS-1$
     
    8382                }
    8483
     84                refreshLights();
    8585                parseLights(keys);
    86                 refreshLights();
     86                parseFogRadar(keys);
     87
     88                dlg.cbM01StyleOfMark.setSelectedIndex(getStyleIndex());
     89                dlg.tfM01Name.setText(getName());
     90                dlg.cM01TopMark.setSelected(hasTopMark());
    8791        }
    8892
  • applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoySpec.java

    r23155 r23174  
    9494                if (getStyleIndex() >= dlg.cbM01StyleOfMark.getItemCount())
    9595                        setStyleIndex(0);
    96                 dlg.cbM01StyleOfMark.setSelectedIndex(getStyleIndex());
    9796
    9897                keys = node.getKeys();
     
    105104                }
    106105
     106                refreshLights();
    107107                parseLights(keys);
    108                 refreshLights();
     108                parseFogRadar(keys);
     109
     110                dlg.cbM01StyleOfMark.setSelectedIndex(getStyleIndex());
     111                dlg.tfM01Name.setText(getName());
     112                dlg.cM01TopMark.setSelected(hasTopMark());
    109113        }
    110114
Note: See TracChangeset for help on using the changeset viewer.