home *** CD-ROM | disk | FTP | other *** search
/ ftp.ee.pdx.edu / 2014.02.ftp.ee.pdx.edu.tar / ftp.ee.pdx.edu / oss / cvs-2004 / OpenHamLog / src / LogItem.java,v < prev    next >
Text File  |  2003-08-12  |  17KB  |  860 lines

  1. head    1.12;
  2. access;
  3. symbols;
  4. locks; strict;
  5. comment    @# @;
  6.  
  7.  
  8. 1.12
  9. date    2003.08.12.03.44.36;    author htodd;    state Exp;
  10. branches;
  11. next    1.11;
  12.  
  13. 1.11
  14. date    2003.08.04.19.35.01;    author htodd;    state Exp;
  15. branches;
  16. next    1.10;
  17.  
  18. 1.10
  19. date    2003.08.04.05.46.55;    author htodd;    state Exp;
  20. branches;
  21. next    1.9;
  22.  
  23. 1.9
  24. date    2003.08.03.22.59.00;    author htodd;    state Exp;
  25. branches;
  26. next    1.8;
  27.  
  28. 1.8
  29. date    2003.08.03.00.00.49;    author htodd;    state Exp;
  30. branches;
  31. next    1.7;
  32.  
  33. 1.7
  34. date    2003.07.30.19.44.40;    author htodd;    state Exp;
  35. branches;
  36. next    1.6;
  37.  
  38. 1.6
  39. date    2003.07.29.00.03.34;    author htodd;    state Exp;
  40. branches;
  41. next    1.5;
  42.  
  43. 1.5
  44. date    2003.07.28.19.50.04;    author htodd;    state Exp;
  45. branches;
  46. next    1.4;
  47.  
  48. 1.4
  49. date    2003.07.23.21.37.33;    author htodd;    state Exp;
  50. branches;
  51. next    1.3;
  52.  
  53. 1.3
  54. date    2003.07.21.22.06.51;    author htodd;    state Exp;
  55. branches;
  56. next    1.2;
  57.  
  58. 1.2
  59. date    2003.07.17.04.38.48;    author htodd;    state Exp;
  60. branches;
  61. next    1.1;
  62.  
  63. 1.1
  64. date    2003.07.17.02.38.48;    author htodd;    state Exp;
  65. branches;
  66. next    ;
  67.  
  68.  
  69. desc
  70. @@
  71.  
  72.  
  73. 1.12
  74. log
  75. @Kinda works as a filter.
  76. @
  77. text
  78. @/* file name  : LogItem.java
  79.  * authors    : Hisashi T Fujinaka
  80.  * created    : Wed Jul 16 12:08:33 2003
  81.  *
  82.  * Copyright (c) 2003 Hisashi T Fujinaka
  83.  *
  84.  * Permission is hereby granted, free of charge, to any person obtaining a copy
  85.  * of this software and associated documentation files (the "Software"), to
  86.  * deal in the Software without restriction, including without limitation the
  87.  * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
  88.  * sell copies of the Software, and to permit persons to whom the Software is
  89.  * furnished to do so, subject to the following conditions:
  90.  *
  91.  * The above copyright notice and this permission notice shall be included in
  92.  * all copies or substantial portions of the Software.
  93.  *
  94.  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  95.  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  96.  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  97.  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  98.  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
  99.  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
  100.  * IN THE SOFTWARE.
  101.  *
  102. $log$
  103.  *
  104.  */
  105.  
  106. import java.io.*;
  107. import java.util.*;
  108.  
  109. /** 
  110.  * LogItem
  111.  * 
  112.  * @@author Hisashi T Fujinaka
  113.  * @@version 0.1
  114.  */
  115. public class LogItem {
  116.   int band;
  117.   String call;
  118.   String county;
  119.   String comment;
  120.   int cq_zone;
  121.   int dxcc_adif;  //dxcc country number
  122.   int dxcc_arrl;  //dxcc country number
  123.   int dxcc_accept;
  124.   int dxcc_submit;
  125.   float freq;
  126.   String gridsquare;
  127.   String iota;
  128.   String mode;
  129.   String name;
  130.   boolean qsl_rcvd;
  131.   boolean qsl_sent;
  132.   String QSL_VIA;
  133.   int QSLRDATE;
  134.   int QSLSDATE;
  135.   int QSO_DATE;
  136.   String QTH;
  137.   String RST_RCVD;
  138.   String RST_SENT;
  139.   String STATE;
  140.   int time_on;
  141.   float TX_PWR;
  142.  
  143.   /** 
  144.    * addBand
  145.    * 
  146.    * @@param inband, an int defining a ham band
  147.    * @@return whether it's a ham band
  148.    */
  149.   boolean addBand(int inband) {
  150.     if (bandCheck(inband)) {
  151.       band = inband;
  152.       return true;
  153.     }
  154.     inband = 0;
  155.     return false;
  156.   }
  157.     
  158.     /** 
  159.      * add a call (no checking yet)
  160.      *
  161.      * @@param incall String of call to insert
  162.      * @@return 
  163.      */
  164.     boolean addCall(String incall) {
  165.         call = incall;
  166.         return true;
  167.     }
  168.  
  169.   /** 
  170.    * add a US County (no checking yet)
  171.    * 
  172.    * @@param incounty 
  173.    * @@return 
  174.    */
  175.   boolean addCounty(String incounty) {
  176.         county = incounty;
  177.         return true;
  178.     }
  179.  
  180.   /** 
  181.    * add a comment (no checking)
  182.    * 
  183.    * @@param incomment 
  184.    */
  185.   void addComment(String incomment) {
  186.         comment = incomment;
  187.     }
  188.  
  189.   /** 
  190.    * 
  191.    * 
  192.    * @@param incq_zone 
  193.    * @@return 
  194.    */
  195.   boolean addCQZone(int incq_zone) {
  196.         cq_zone = incq_zone;
  197.         return true;
  198.     }
  199.  
  200.   boolean addDXCC_adif(int indxcc_adif) {
  201.         dxcc_adif = indxcc_adif;
  202.         dxcc_arrl = adif2arrl(indxcc_adif);
  203.         if (dxcc_arrl == 0) {
  204.             dxcc_adif = 0;
  205.             return false;
  206.         }
  207.         return true;
  208.     }
  209.  
  210.   boolean addDXCC_arrl(int indxcc_arrl) {
  211.         dxcc_arrl = indxcc_arrl;
  212.         dxcc_adif = arrl2dxcc(indxcc_arrl);
  213.         if (dxcc_adif == 0) {
  214.             dxcc_adif = 0;
  215.             return false;
  216.         }
  217.         return true;
  218.     }
  219.  
  220.   boolean addDXCCAccept(int indxcc_accept) {
  221.     if (dateCheck(indxcc_accept) && (indxcc_accept > dxcc_submit)) {
  222.       dxcc_accept = indxcc_accept;
  223.       return true;
  224.     }
  225.     return false;
  226.   }
  227.  
  228.   boolean addDXCCSubmit (int indxcc_submit) {
  229.     if (dateCheck(indxcc_submit) && (dxcc_accept > indxcc_submit)) {
  230.       dxcc_submit = indxcc_submit;
  231.       return true;
  232.     }
  233.     return false;
  234.   }
  235.  
  236.   boolean addFreq(float infreq) {
  237.     int check_band = whichBand(infreq);
  238.     if (band != 0 && band != check_band)
  239.       return false;
  240.     freq = infreq;
  241.     return true;
  242.   }
  243.     
  244.   boolean addGridSquare(String ingridsquare) {
  245.     gridsquare = ingridsquare;
  246.     return true;
  247.   }
  248.  
  249.   boolean addIOTA(String iniota) {
  250.     iota = iniota;
  251.     return true;
  252.   }
  253.  
  254.   boolean addMode(String inmode) {
  255.     if (band != 0 && bandCheck(band, inmode)) {
  256.       mode = inmode;
  257.       return true;
  258.     } else if (band == 0) {
  259.       mode = inmode;
  260.         }
  261.         mode = inmode;
  262.     return false;
  263.   }
  264.  
  265.   void addName(String inname) {
  266.     name = inname;
  267.   }
  268.  
  269.   void addQSLRcvd() {
  270.     qsl_rcvd = true;
  271.   }
  272.  
  273.   void addQSLSent() {
  274.     qsl_sent = true;
  275.   }
  276.  
  277.   void addQSLVia(String inQSL_VIA) {
  278.     QSL_VIA = inQSL_VIA;
  279.   }
  280.  
  281.   boolean addQSLRDate(int inQSLRDATE) {
  282.     if (dateCheck(inQSLRDATE)) {
  283.       QSLRDATE = inQSLRDATE;
  284.       return true;
  285.     }
  286.     return false;
  287.   }
  288.  
  289.   boolean addQSLSDate(int inQSLSDATE) {
  290.     if (dateCheck(inQSLSDATE)) {
  291.       QSLSDATE = inQSLSDATE;
  292.       return true;
  293.     }
  294.     return false;
  295.   }
  296.  
  297.   boolean addQSODate(int inQSO_DATE) {
  298.     if (dateCheck(inQSO_DATE)) {
  299.       QSO_DATE = inQSO_DATE;
  300.       return true;
  301.     }
  302.     return false;
  303.   }
  304.  
  305.   void addQTH(String inQTH) {
  306.     QTH = inQTH;
  307.   }
  308.  
  309.   void addRST_RCVD(String inRST_RCVD) {
  310.     RST_RCVD = inRST_RCVD;
  311.   }
  312.  
  313.   void addRST_SENT(String inRST_SENT) {
  314.     RST_SENT = inRST_SENT;
  315.   }
  316.  
  317.   boolean addState(String inSTATE) {
  318.     if (stateCheck(inSTATE)) {
  319.       STATE = inSTATE;
  320.       return true;
  321.     }
  322.     return false;
  323.   }
  324.  
  325.   void addTime_On(int intime_on) {
  326.     time_on = intime_on;
  327.   }
  328.  
  329.   void addTX_PWR(float inTX_PWR) {
  330.     TX_PWR = inTX_PWR;
  331.   }
  332.  
  333.   /** 
  334.    * should check for valid state - not implemented yet
  335.    * 
  336.    * @@param checkState 
  337.    * @@return 
  338.    */
  339.   boolean stateCheck(String checkState) {
  340.     // needs to be fixed
  341.     return true;
  342.   }
  343.  
  344.   boolean dateCheck(int checkDate) {
  345.     // needs to be fixed
  346.     return true;
  347.   }
  348.  
  349.     int arrl2dxcc(int indxcc_arrl) {
  350.         if (((indxcc_arrl > 0) && (indxcc_arrl < 511)) ||
  351.         (indxcc_arrl == 512)) {
  352.       return indxcc_arrl;
  353.     } else if (indxcc_arrl == 511) {
  354.       return 513;
  355.     } else if (indxcc_arrl == 513) {
  356.       return 511;
  357.     }
  358.     return 0;
  359.   }
  360.  
  361.     int adif2arrl(int indxcc_adif) {
  362.     //things are symmetric for now
  363.     return arrl2dxcc(indxcc_adif);
  364.   }
  365.  
  366.   // band checks for US Region 2
  367.   
  368.   // return the band for a freq
  369.   int whichBand(float freq) {
  370.     if (freq >= 1.8 && freq <= 2.0)
  371.       return 160;
  372.     if (freq >= 3.5 && freq <= 4.0)
  373.       return 80;
  374.     if (freq == 5.3305 || 
  375.         freq == 5.3465 || 
  376.         freq == 5.3665 || 
  377.         freq == 5.3715 || 
  378.         freq == 5.4035)
  379.       return 60;
  380.     if (freq >= 7.0 && freq <= 7.3) 
  381.       return 40;
  382.     if (freq >= 10.1 && freq <= 10.15)
  383.       return 30;
  384.     if (freq >= 14.0 && freq <= 14.35)
  385.       return 20;
  386.     if (freq >= 18.068 && freq <= 18.168)
  387.       return 17;
  388.     if (freq >= 21.0 && freq <= 21.45)
  389.       return 15;
  390.     if (freq >= 24.89 && freq <= 24.99)
  391.       return 12;
  392.     if (freq >= 28.0 && freq <= 29.7)
  393.       return 10;
  394.     if (freq >= 50.0 && freq <=54.0)
  395.       return 6;
  396.     return 0;
  397.   }
  398.   
  399.   // check to see if freq is in the voice subband
  400.   boolean voiceCheck(float freq) {
  401.     if ((freq >= 1.8 && freq <= 2.0) ||
  402.         (freq >= 3.75 && freq <= 4.0) ||
  403.         (freq == 5.3305 || 
  404.          freq == 5.3465 || 
  405.          freq == 5.3665 || 
  406.          freq == 5.3715 || 
  407.          freq == 5.4035) ||
  408.         (freq >= 7.15 && freq <= 7.3)  ||
  409.         (freq >= 14.15 && freq <= 14.35) ||
  410.         (freq >= 18.110 && freq <= 18.168) ||
  411.         (freq >= 21.2 && freq <= 21.45) ||
  412.         (freq >= 24.93 && freq <= 24.99) ||
  413.         (freq >= 28.3 && freq <= 29.7) ||
  414.         (freq >= 50.1 && freq <=54.0))
  415.       return true;
  416.     return false;
  417.   }
  418.   
  419.   // the freq check
  420.   boolean bandCheck(float freq) {
  421.     if ((freq >= 1.8 && freq <= 2.0) ||
  422.         (freq >= 3.5 && freq <= 4.0) ||
  423.         freq == 5.3305 ||
  424.         freq == 5.3465 ||
  425.         freq == 5.3665 ||
  426.         freq == 5.3715 ||
  427.         freq == 5.4035 ||
  428.         (freq >= 7.0 && freq <= 7.3) ||
  429.         (freq >= 10.1 && freq <= 10.15) ||
  430.         (freq >= 14.0 && freq <= 14.35) ||
  431.         (freq >= 18.068 && freq <= 18.168) ||
  432.         (freq >= 21.0 && freq <= 21.45) ||
  433.         (freq >= 24.89 && freq <= 24.99) ||
  434.         (freq >= 28.0 && freq <= 29.7) ||
  435.         (freq >= 50.0 && freq <=54.0)) {
  436.       return true;
  437.     }
  438.     return false;
  439.   }
  440.   
  441.   // the band check
  442.   boolean bandCheck(int band) {
  443.     if (band == 160 ||
  444.         band == 80 ||
  445.         band == 60 ||
  446.         band == 40 ||
  447.         band == 30 ||
  448.         band == 20 ||
  449.         band == 17 ||
  450.         band == 15 ||
  451.         band == 12 ||
  452.         band == 10 ||
  453.         band == 6) {
  454.       return true;
  455.     }
  456.     return false;
  457.   }
  458.  
  459.   // check that band and freq match
  460.   boolean bandCheck(float freq, int band) {
  461.     int bandCheck = whichBand(freq);
  462.     if (band == bandCheck)
  463.       return true;
  464.     return false;
  465.   }
  466.  
  467.   // see if in voice subband
  468.  
  469.   //
  470.   boolean bandCheck(float freq, int band, String mode) {
  471.     // if it's CW, it's OK, except for 60M
  472.     if (mode == "CW" && band != 60) {
  473.       return (bandCheck(freq, band));
  474.     }
  475.     // if it's RTTY, it's OK except for some of 6M and 60M
  476.     if ((mode == "RTTY" || mode == "PSK31") && (band != 60)) {
  477.       if (band == 6 && freq >= 50.1 && freq <= 54.0)
  478.         return true;
  479.       return (bandCheck(freq, band));
  480.     }
  481.     return voiceCheck(freq);
  482.   }
  483.   
  484.   boolean bandCheck(float freq, String mode) {
  485.     int check_band = whichBand(freq);
  486.     // if it's CW, it's OK, except for 60M
  487.     if (mode == "CW" && check_band != 60) {
  488.       return (bandCheck(freq, check_band));
  489.     }
  490.     // if it's RTTY, it's OK except for some of 6M and 60M
  491.     if ((mode == "RTTY" || mode == "PSK31") && (check_band != 60)) {
  492.       if (check_band == 6 && freq >= 50.1 && freq <= 54.0)
  493.         return true;
  494.       return (bandCheck(freq, check_band));
  495.     }
  496.     return voiceCheck(freq);
  497.   }
  498.  
  499.   String convDate(int compressedDate) {
  500.     int year_int = compressedDate/10000; 
  501.     int month_int = (compressedDate/100)%100 - 1;
  502.     int day_int = (compressedDate)%100;
  503.  
  504.     GregorianCalendar cal = new GregorianCalendar();
  505.  
  506.     int this_year = cal.get(GregorianCalendar.YEAR);
  507.  
  508.     String month_s[] = {
  509.       "Jan", "Feb", "Mar",
  510.       "Apr", "May", "Jun",
  511.       "Jul", "Aug", "Sep",
  512.       "Oct", "Nov", "Dec"
  513.     };
  514.  
  515.     int month_l[] = {
  516.       31,28,31,30,
  517.       31,30,31,31,
  518.       30,31,30,31
  519.     };
  520.  
  521.     // year check, arbitrarily start when dxcc awards start.
  522.         //
  523.         // XXX
  524.         //
  525.     if ((year_int < 1945) || (year_int > this_year)) {
  526.       System.out.println("ERROR: year calculated wrong " + year_int);
  527.       return null;
  528.     }
  529.  
  530.     if ((month_int < 0) || (month_int > 11)) {
  531.       System.out.println("ERROR: month calculated wrong " + month_int);
  532.       return null;
  533.     }
  534.  
  535.     if ((month_int == 1) && (year_int%4 == 0) && (year_int%100 != 0) && 
  536.         (day_int > 29)) {
  537.       // leap year date check
  538.       System.out.println("ERROR: day calculated wrong: ");
  539.       return null;
  540.     } else if (day_int > month_l[month_int]) {
  541.       // regular year check
  542.       System.out.println("ERROR: day calculated wrong");
  543.       return null;
  544.     }
  545.  
  546.     Integer yearI = new Integer(year_int);
  547.     Integer dayI = new Integer(day_int);
  548.    
  549.     String converted = yearI.toString() + 
  550.       month_s[month_int] + dayI.toString();
  551.  
  552.     return converted; 
  553.   }
  554.  
  555.   String printLabel() {
  556.         // perform some checks
  557.         if (call == null || 
  558.         QSO_DATE == 0 || 
  559.         time_on == 0 ||
  560.         band == 0 || 
  561.         mode == null) {
  562.       return null;
  563.     }
  564.     String qsoDt = convDate(QSO_DATE);
  565.         String labelText = new String(call + "\\\\\nDate&UTC&Band&RS(T)&2x\\\\\n");
  566.     labelText = labelText + qsoDt + "&" + time_on + "&" + band + "&" +
  567.                 RST_SENT + "&" + mode;
  568.  
  569.     return labelText;
  570.  
  571.   }
  572. }
  573. @
  574.  
  575.  
  576. 1.11
  577. log
  578. @Now it writes to a file.
  579. @
  580. text
  581. @d488 3
  582. a490 3
  583.         String labelText = new String(call + "\nDate\tUTC\tBand\tRS(T)\t2x\n");
  584.     labelText = labelText + qsoDt + "\t" + time_on + "\t" + band + "\t" +
  585.                 RST_SENT + "\t" + mode;
  586. @
  587.  
  588.  
  589. 1.10
  590. log
  591. @Sorta works now!
  592. @
  593. text
  594. @d478 1
  595. a478 1
  596.   void printLabel() {
  597. d480 7
  598. a486 7
  599. //        if (call == null || 
  600. //        QSO_DATE == 0 || 
  601. //        time_on == 0 ||
  602. //        band == 0 || 
  603. //        mode == null) {
  604. //      return;
  605. //    }
  606. d488 3
  607. d492 1
  608. a492 6
  609.     System.out.println(call);
  610.         System.out.println("Date\tUTC\tBand\tRS(T)\t2x");
  611.     System.out.println(qsoDt + "\t" + time_on + "\t" + band + "\t" +
  612.                 RST_SENT + "\t" + mode);
  613.  
  614.     return;
  615. @
  616.  
  617.  
  618. 1.9
  619. log
  620. @Need to fix RST.
  621. @
  622. text
  623. @d181 4
  624. a184 1
  625.     }
  626. d487 1
  627. a487 1
  628.     String qsoS = convDate(QSO_DATE);
  629. d491 2
  630. a492 1
  631.     System.out.println(qsoS + "\t" + time_on + "\t" + band + "\t" + mode);
  632. @
  633.  
  634.  
  635. 1.8
  636. log
  637. @Some Saturday work.
  638. @
  639. text
  640. @a427 5
  641.         System.out.println("compressedDate: " + compressedDate);
  642.         System.out.println("year: " + year_int);
  643.         System.out.println("month: " + month_int);
  644.         System.out.println("day: " + day_int);
  645.  
  646. d486 2
  647. a487 1
  648.     System.out.println(call + "Date\tUTC\tBand\tRS(T)\t2x");
  649. @
  650.  
  651.  
  652. 1.7
  653. log
  654. @7/30/2003 class
  655. @
  656. text
  657. @d426 1
  658. a426 1
  659.     int this_year = cal.get(GregorianCalendar.YEAR) - 1900;
  660. @
  661.  
  662.  
  663. 1.6
  664. log
  665. @Time for debugging.
  666. @
  667. text
  668. @d428 5
  669. d447 3
  670. a449 3
  671.     //
  672.     // XXX
  673.     //
  674. d451 1
  675. a451 1
  676.       System.out.println("ERROR: year calculated wrong");
  677. d456 1
  678. a456 1
  679.       System.out.println("ERROR: month calculated wrong");
  680. d463 1
  681. a463 1
  682.       System.out.println("ERROR: day calculated wrong");
  683. d482 7
  684. a488 7
  685.         if (call == null || 
  686.         QSO_DATE == 0 || 
  687.         time_on == 0 ||
  688.         band == 0 || 
  689.         mode == null) {
  690.       return;
  691.     }
  692. @
  693.  
  694.  
  695. 1.5
  696. log
  697. @Started added QSL adding.
  698. @
  699. text
  700. @d25 1
  701. a25 1
  702.  * $log$
  703. d39 26
  704. a64 26
  705.   private int band;
  706.   private String call;
  707.   private String county;
  708.   private String comment;
  709.   private int cq_zone;
  710.   private int dxcc_adif;  //dxcc country number
  711.   private int dxcc_arrl;  //dxcc country number
  712.   private int dxcc_accept;
  713.   private int dxcc_submit;
  714.   private float freq;
  715.   private String gridsquare;
  716.   private String iota;
  717.   private String mode;
  718.   private String name;
  719.   private boolean qsl_rcvd;
  720.   private boolean qsl_sent;
  721.   private String QSL_VIA;
  722.   private int QSLRDATE;
  723.   private int QSLSDATE;
  724.   private int QSO_DATE;
  725.   private String QTH;
  726.   private String RST_RCVD;
  727.   private String RST_SENT;
  728.   private String STATE;
  729.   private int time_on;
  730.   private float TX_PWR;
  731. d419 57
  732. a475 1
  733.     void printLabel() {
  734. d477 8
  735. a484 2
  736.         if (call == null ||
  737.         call
  738. d486 2
  739. d489 1
  740. d491 1
  741. @
  742.  
  743.  
  744. 1.4
  745. log
  746. @Wed Jul 23
  747. @
  748. text
  749. @d201 1
  750. a201 1
  751.   boolean addQSLRdate(int inQSLRDATE) {
  752. d418 5
  753. @
  754.  
  755.  
  756. 1.3
  757. log
  758. @Monday July 21.
  759. @
  760. text
  761. @d73 1
  762. a73 1
  763.     if (checkBand(inband)) {
  764. d125 1
  765. a125 1
  766.         dxcc_arrl = adif2dxcc(indxcc_adif);
  767. d143 125
  768. a267 19
  769.   private int dxcc_accept;
  770.   private int dxcc_submit;
  771.   private float freq;
  772.   private String gridsquare;
  773.   private String iota;
  774.   private String mode;
  775.   private String name;
  776.   private boolean qsl_rcvd;
  777.   private boolean qsl_sent;
  778.   private String QSL_VIA;
  779.   private int QSLRDATE;
  780.   private int QSLSDATE;
  781.   private int QSO_DATE;
  782.   private String QTH;
  783.   private String RST_RCVD;
  784.   private String RST_SENT;
  785.   private String STATE;
  786.   private int time_on;
  787.   private float TX_PWR;
  788. a285 1
  789.  
  790. d340 1
  791. a340 1
  792.   boolean checkBand(float freq) {
  793. d362 1
  794. a362 1
  795.   boolean checkBand(int band) {
  796. d380 3
  797. a382 3
  798.   boolean checkBand(float freq, int band) {
  799.     int checkBand = whichBand(freq);
  800.     if (band == checkBand)
  801. d390 1
  802. a390 1
  803.   boolean checkBand(float freq, int band, String mode) {
  804. d393 1
  805. a393 1
  806.       return (checkBand(freq, band));
  807. d399 16
  808. a414 1
  809.       return (checkBand(freq, band));
  810. @
  811.  
  812.  
  813. 1.2
  814. log
  815. @Make LogItem compile for now.
  816. @
  817. text
  818. @d66 6
  819. d80 100
  820. @
  821.  
  822.  
  823. 1.1
  824. log
  825. @New file LogItem.java
  826. @
  827. text
  828. @d46 2
  829. a47 2
  830.   private MinDate dxcc_accept;
  831.   private MinDate dxcc_submit;
  832. d56 3
  833. a58 3
  834.   private MinDate QSLRDATE;
  835.   private MinDate QSLSDATE;
  836.   private MinDate QSO_DATE;
  837. d109 1
  838. a109 1
  839.   bool voiceCheck(float freq) {
  840. d129 1
  841. a129 1
  842.   boolean bandCheck(float freq) {
  843. d151 1
  844. a151 1
  845.   boolean bandCheck(int band) {
  846. d169 1
  847. a169 1
  848.   boolean bandCheck(float freq, int band) {
  849. d179 1
  850. a179 1
  851.   boolean bandCheck(float freq, int band, String mode) {
  852. d182 1
  853. a182 1
  854.       return (bandCheck(freq, band));
  855. d188 1
  856. a188 1
  857.       return (bandCheck(freq, band));
  858. @
  859.  
  860.