Ignore:
Timestamp:
2010-08-13T19:17:07+02:00 (14 years ago)
Author:
malcolmh
Message:

weekend

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

Legend:

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

    r22623 r22626  
    4747        }
    4848
    49         private int Region = 0;
    50 
    51         public int getRegion() {
     49        private boolean Region = false;
     50
     51        public boolean getRegion() {
    5252                return Region;
    5353        }
    5454
    55         public void setRegion(int region) {
     55        public void setRegion(boolean region) {
    5656                Region = region;
     57                dlg.tbM01Region.setSelected(region);
     58                dlg.tbM01Region.setText(region ? "IALA-B" : "IALA-A");
    5759        }
    5860
  • applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoyCard.java

    r22623 r22626  
    2828                dlg.cbM01StyleOfMark.addItem("Float");
    2929
    30                 dlg.cbM01Colour.removeAllItems();
    31                 dlg.cbM01Colour.addItem("W");
    32                 dlg.cbM01Colour.setSelectedIndex(0);
    33                 dlg.cbM01Colour.setEnabled(false);
    3430                dlg.cM01Fired.setSelected(false);
    3531                dlg.cM01TopMark.setSelected(false);
    36 
     32                dlg.tbM01Region.setEnabled(false);
     33
     34                setBuoyIndex(type);
    3735                setStyleIndex(0);
    38                 setBuoyIndex(type);
    3936                setLightColour("W");
    4037
     
    251248                        else if (str.compareTo("spar") == 0)
    252249                                setStyleIndex(CARD_SPAR);
    253                         else if (str.compareTo("float") == 0)
    254                                 setStyleIndex(CARD_FLOAT);
    255250                        else
    256251                                ret = false;
    257                 } else if (keys.containsKey("seamark:beacon_cardinal")) {
     252                } else if (keys.containsKey("seamark:beacon_cardinal:colour")) {
    258253                        if (keys.containsKey("seamark:beacon_cardinal:shape")) {
    259254                                str = keys.get("seamark:beacon_cardinal:shape");
     
    261256                                if (str.compareTo("tower") == 0)
    262257                                        setStyleIndex(CARD_TOWER);
     258                                else
     259                                        setStyleIndex(CARD_BEACON);
    263260                        } else
    264261                                setStyleIndex(CARD_BEACON);
     262                } else if ((keys.containsKey("seamark:type") == true)
     263                                && (keys.get("seamark:type").equals("light_float"))) {
     264                        setStyleIndex(CARD_FLOAT);
    265265                }
    266266                return ret;
  • applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoyIsol.java

    r22623 r22626  
    3131                dlg.cbM01Kennung.addItem("Fl(2)");
    3232
    33                 dlg.cbM01Colour.removeAllItems();
    34                 dlg.cbM01Colour.addItem("W");
    35                 dlg.cbM01Colour.setSelectedIndex(0);
    36                 dlg.cbM01Colour.setEnabled(false);
    3733                dlg.cM01Fired.setSelected(false);
    3834                dlg.cM01TopMark.setSelected(true);
    3935                dlg.cM01TopMark.setEnabled(false);
     36                dlg.tbM01Region.setEnabled(false);
    4037
    4138                setColour(SeaMark.BLACK_RED_BLACK);
     
    243240                        else
    244241                                ret = false;
    245                 }
    246                 if (keys.containsKey("seamark:beacon_isolated_danger:shape")) {
    247                         str = keys.get("seamark:beacon_isolated_danger:shape");
    248 
    249                         if (str.compareTo("stake") == 0)
     242                } else if (keys.containsKey("seamark:beacon_isolated_danger:colour")) {
     243                        if (keys.containsKey("seamark:beacon_isolated_danger:shape")) {
     244                                str = keys.get("seamark:beacon_isolated_danger:shape");
     245
     246                                if (str.compareTo("tower") == 0)
     247                                        setStyleIndex(ISOL_TOWER);
     248                                else
     249                                        setStyleIndex(ISOL_BEACON);
     250                        } else
    250251                                setStyleIndex(ISOL_BEACON);
    251                         else
    252                                 ret = false;
    253                 }
    254 
     252                } else if ((keys.containsKey("seamark:type") == true)
     253                                && (keys.get("seamark:type").equals("light_float"))) {
     254                        setStyleIndex(CARD_FLOAT);
     255                }
    255256                return ret;
    256257        }
  • applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoyLat.java

    r22623 r22626  
    3232                dlg.cbM01Kennung.setSelectedIndex(0);
    3333
    34                 dlg.cbM01Colour.removeAllItems();
    35                 dlg.cbM01Colour.addItem("");
    36                 dlg.cbM01Colour.addItem("R");
    37                 dlg.cbM01Colour.addItem("G");
    38                 dlg.cbM01Colour.setSelectedIndex(0);
    39                 dlg.cbM01Colour.setEnabled(false);
    40 
    4134                setBuoyIndex(type);
    4235                setStyleIndex(0);
     
    4437                setFired(false);
    4538                setTopMark(false);
     39                setRegion(Main.pref.get("tomsplugin.IALA").equals("B"));
    4640
    4741                refreshStyles();
     
    119113
    120114                int cat = getBuoyIndex();
    121                 int region = getRegion();
     115                boolean region = getRegion();
    122116                int style = getStyleIndex();
    123117
     
    351345                        image += ".png";
    352346
    353 // System.out.println("finename: " + image);
     347                        // System.out.println("finename: " + image);
    354348                        dlg.lM01Icon01.setIcon(new ImageIcon(getClass().getResource(image)));
    355349                } else
     
    701695
    702696                saveTopMarkData(shape, colour);
    703 
    704697                saveLightData(colour);
     698
     699                Main.pref.put("tomsplugin.IALA", getRegion() ? "B" : "A");
    705700        }
    706701
     
    723718                        case PORT_HAND:
    724719                        case PREF_PORT_HAND:
    725                                 if (str.compareTo("cylinder") == 0) {
     720                                if (str.equals("cylinder")) {
    726721                                        setTopMark(true);
    727 
     722                                        setRegion(IALA_A);
     723                                } else if (str.equals("cone, point up")) {
     724                                        setTopMark(true);
     725                                        setRegion(IALA_B);
    728726                                } else {
    729727                                        setTopMark(false);
     
    734732                        case STARBOARD_HAND:
    735733                        case PREF_STARBOARD_HAND:
    736                                 if (str.compareTo("cone, point up") == 0 || str.compareTo("cone") == 0) {
     734                                if (str.equals("cone, point up")) {
    737735                                        setTopMark(true);
    738 
     736                                        setRegion(IALA_A);
     737                                } else if (str.equals("cylinder")) {
     738                                        setTopMark(true);
     739                                        setRegion(IALA_B);
    739740                                } else {
    740741                                        setTopMark(false);
     
    746747                                ret = false;
    747748                        }
    748 
    749749                        if (!hasTopMark()) {
    750750                                setErrMsg("Parse-Error: Topmark falsch");
    751751                                ret = false;
    752752                        }
    753 
    754                 }
    755 
     753                }
    756754                return ret;
    757755        }
     
    779777
    780778                        if (isFired()) {
     779
    781780                        } else {
    782781                                if (getErrMsg() == null)
     
    792791
    793792        public void setLightColour() {
    794                 if (getRegion() != IALA_B
     793                if (getRegion() == IALA_A
    795794                                && (getBuoyIndex() == PORT_HAND || getBuoyIndex() == PREF_PORT_HAND)) {
    796795                        super.setLightColour("R");
    797                         dlg.cbM01Colour.setSelectedIndex(RED_LIGHT);
    798796                } else {
    799797                        super.setLightColour("G");
    800                         dlg.cbM01Colour.setSelectedIndex(GREEN_LIGHT);
    801798                }
    802799        }
     
    812809                case PORT_HAND:
    813810                case PREF_PORT_HAND:
    814                         if (str.compareTo("red") == 0) {
    815 
    816                                 setFired(true);
    817                                 super.setLightColour("R");
     811                        if (getRegion() == IALA_A) {
     812                                if (str.compareTo("red") == 0) {
     813                                        setFired(true);
     814                                        super.setLightColour("R");
     815                                } else {
     816                                        super.setLightColour("");
     817                                }
    818818                        } else {
    819                                 super.setLightColour("");
    820                         }
    821 
     819                                if (str.compareTo("green") == 0) {
     820                                        setFired(true);
     821                                        super.setLightColour("G");
     822                                } else {
     823                                        super.setLightColour("");
     824                                }
     825                        }
    822826                        break;
    823827
    824828                case STARBOARD_HAND:
    825829                case PREF_STARBOARD_HAND:
    826                         if (str.compareTo("green") == 0) {
    827                                 setFired(true);
    828                                 super.setLightColour("G");
     830                        if (getRegion() == IALA_A) {
     831                                if (str.compareTo("green") == 0) {
     832                                        setFired(true);
     833                                        super.setLightColour("G");
     834                                } else {
     835                                        super.setLightColour("");
     836                                }
    829837                        } else {
    830                                 super.setLightColour("");
     838                                if (str.compareTo("red") == 0) {
     839                                        setFired(true);
     840                                        super.setLightColour("R");
     841                                } else {
     842                                        super.setLightColour("");
     843                                }
    831844                        }
    832845                        break;
     
    856869                                else if (str.compareTo("spar") == 0)
    857870                                        setStyleIndex(LAT_SPAR);
    858                                 else if (str.compareTo("float") == 0)
    859                                         setStyleIndex(LAT_FLOAT);
    860                                 else if (str.compareTo("perch") == 0)
    861                                         setStyleIndex(LAT_PERCH);
    862871                                else
    863872                                        ret = false;
     
    882891                                else if (str.compareTo("spar") == 0)
    883892                                        setStyleIndex(LAT_SPAR);
    884                                 else if (str.compareTo("float") == 0)
    885                                         setStyleIndex(LAT_FLOAT);
    886                                 else if (str.compareTo("perch") == 0)
    887                                         setStyleIndex(LAT_PERCH);
    888893                                else
    889894                                        ret = false;
     
    904909                                ret = false;
    905910                        }
    906                 } else if (keys.containsKey("seamark:beacon_lateral:shape")) {
    907                         str = keys.get("seamark:beacon_lateral:shape");
    908 
    909                         int cat = getBuoyIndex();
    910                         switch (cat) {
    911                         case PORT_HAND:
    912                                 if (str.compareTo("stake") == 0)
    913                                         setStyleIndex(LAT_BEACON);
    914                                 else if (str.compareTo("tower") == 0)
     911                } else if (keys.containsKey("seamark:beacon_lateral:colour")) {
     912                        if (keys.containsKey("seamark:beacon_lateral:shape")) {
     913                                str = keys.get("seamark:beacon_lateral:shape");
     914                                if (str.compareTo("tower") == 0)
    915915                                        setStyleIndex(LAT_TOWER);
    916916                                else
    917                                         ret = false;
    918                                 break;
    919 
    920                         case PREF_PORT_HAND:
    921                                 if (str.compareTo("stake") == 0)
    922917                                        setStyleIndex(LAT_BEACON);
    923                                 else if (str.compareTo("tower") == 0)
    924                                         setStyleIndex(LAT_TOWER);
    925                                 else
    926                                         ret = false;
    927                                 break;
    928 
    929                         case STARBOARD_HAND:
    930                                 if (str.compareTo("stake") == 0)
    931                                         setStyleIndex(LAT_BEACON);
    932                                 else if (str.compareTo("tower") == 0)
    933                                         setStyleIndex(LAT_TOWER);
    934                                 else
    935                                         ret = false;
    936                                 break;
    937 
    938                         case PREF_STARBOARD_HAND:
    939                                 if (str.compareTo("stake") == 0)
    940                                         setStyleIndex(LAT_BEACON);
    941                                 else if (str.compareTo("tower") == 0)
    942                                         setStyleIndex(LAT_TOWER);
    943                                 else
    944                                         ret = false;
    945                                 break;
    946 
    947                         default:
    948                                 ret = false;
    949                         }
     918                        } else
     919                                setStyleIndex(LAT_BEACON);
     920                } else if ((keys.containsKey("seamark:type") == true)
     921                                && (keys.get("seamark:type").equals("light_float"))) {
     922                        setStyleIndex(LAT_FLOAT);
    950923                }
    951924                return ret;
  • applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoyNota.java

    r22623 r22626  
    3232                dlg.cbM01Kennung.setSelectedIndex(0);
    3333
    34                 dlg.cbM01Colour.removeAllItems();
    35                 dlg.cbM01Colour.addItem("Not set");
    36                 dlg.cbM01Colour.addItem("R");
    37                 dlg.cbM01Colour.addItem("G");
    38                 dlg.cbM01Colour.addItem("W");
    39                 dlg.cbM01Colour.setEnabled(true);
     34                dlg.tbM01Region.setEnabled(false);
    4035
    4136                setBuoyIndex(type);
  • applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoySaw.java

    r22623 r22626  
    3333                dlg.cbM01Kennung.addItem("Mo()");
    3434
    35                 dlg.cbM01Colour.removeAllItems();
    36                 dlg.cbM01Colour.addItem("W");
    37                 dlg.cbM01Colour.setSelectedIndex(0);
    38                 dlg.cbM01Colour.setEnabled(false);
    3935                dlg.cM01Fired.setSelected(false);
    4036                dlg.cM01TopMark.setSelected(false);
     37                dlg.tbM01Region.setEnabled(false);
    4138
    4239                setColour(SeaMark.RED_WHITE);
     
    227224                        else if (str.compareTo("sphere") == 0)
    228225                                setStyleIndex(SAFE_SPHERE);
    229                         else if (str.compareTo("float") == 0)
    230                                 setStyleIndex(SAFE_FLOAT);
    231226                        else
    232227                                ret = false;
     228                } else if ((keys.containsKey("seamark:type") == true)
     229                                && (keys.get("seamark:type").equals("light_float"))) {
     230                        setStyleIndex(SAFE_FLOAT);
    233231                }
    234232
  • applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoySpec.java

    r22623 r22626  
    2828                dlg.cbM01Kennung.addItem("Not set");
    2929
    30                 dlg.cbM01Colour.removeAllItems();
    31                 dlg.cbM01Colour.addItem("W");
    32                 dlg.cbM01Colour.setSelectedIndex(0);
    33                 dlg.cbM01Colour.setEnabled(false);
    3430                dlg.cM01Fired.setSelected(false);
    3531                dlg.cM01TopMark.setSelected(false);
     32                dlg.tbM01Region.setEnabled(false);
    3633
    3734                setColour(SeaMark.YELLOW);
  • applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoyUkn.java

    r22623 r22626  
    1313                super(dia);
    1414
    15                 setBuoyIndex(0);
    1615                if (dlg.cbM01Kennung != null) {
    1716                        dlg.cbM01Kennung.removeAllItems();
     
    1918                }
    2019
    21                 dlg.cbM01Colour.removeAllItems();
    22                 dlg.cbM01Colour.setEnabled(false);
    2320                dlg.cM01Fired.setSelected(false);
    2421                dlg.cM01TopMark.setSelected(false);
     22                dlg.tbM01Region.setEnabled(false);
    2523
    2624                setErrMsg(Msg);
     
    2927                setFired(false);
    3028                setValid(false);
     29                setBuoyIndex(0);
    3130
    3231                paintSign();
Note: See TracChangeset for help on using the changeset viewer.