home *** CD-ROM | disk | FTP | other *** search
/ MacFormat 1997 February / macformat-047.iso / Shareware Plus / Developers / DLOGManager 1.02 / Source Code / checkUtilities_v00.cp < prev    next >
Encoding:
Text File  |  1996-09-16  |  1.9 KB  |  75 lines  |  [TEXT/KAHL]

  1. /*** File: "checkUtilities_v00.c"
  2. *
  3. *    Versione 00. Del 24-10-94.
  4. *    Scritto da Cadili Francesco.
  5.  
  6. *    Controlla il formato dei campi
  7. *
  8. ******************************************/
  9. #include <stdio.h>
  10.  
  11. /******** Dichiarazioni private ************************/
  12. /******** Include locali *******************************/
  13.  
  14. #include "checkUtilities_v00.h"
  15. #include "stringUtility_v02.h"
  16.  
  17. /******** Fine Include locali **************************/
  18. /******** Strutture dati locali ************************/
  19.  
  20. /********* Fine Strutture dati locali *******************/
  21. /******** Costanti locali ******************************/
  22.  
  23. #pragma segment checkUtilities
  24. /******** Fine Costanti locali *************************/
  25. /******** Funzioni private: ****************************/
  26.  
  27. /******** Fine Funzioni private ************************/
  28. /******** Fine Dichiarazioni private ********************/
  29.  
  30. /*** result = checkForNum(txt, len, &num)
  31. *
  32. *    Controlla la presenza di un numero nello Handle.
  33. *
  34. *******************************************************/
  35. Boolean checkForNum(Handle txt, short len, int *num)
  36. {
  37.     Handle cStrHdl;
  38.     char *str;
  39.     Boolean result = true;
  40.  
  41.     if (!copyHandletoCHandle(txt, len, &cStrHdl) || cStrHdl == NULL)
  42.         return(false);
  43.     
  44.     HLock(cStrHdl);
  45.     str = *cStrHdl;
  46.     if (sscanf(str, "%i", num) != 1)
  47.         result = false;
  48.     HUnlock(cStrHdl);
  49.     DisposHandle(cStrHdl);
  50.     return(result);
  51. }
  52.  
  53. /*** result = check(txt, len, &num)
  54. *
  55. *    Controlla la presenza di un ora nel campo
  56. *
  57. ************************************************************************/
  58. Boolean checkForHour(Handle txt, short len, int *ora, int *minuti)
  59. {
  60.     Handle cStrHdl;
  61.     char *str;
  62.     Boolean result = true;
  63.  
  64.     if (!copyHandletoCHandle(txt, len, &cStrHdl) || cStrHdl == NULL)
  65.         return(false);
  66.     
  67.     HLock(cStrHdl);
  68.     str = *cStrHdl;
  69.     if (sscanf(str, "%i%*c%i", ora, minuti) != 2)
  70.         result = false;
  71.     HUnlock(cStrHdl);
  72.     DisposHandle(cStrHdl);
  73.     return(result);
  74. }
  75.