home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / misc / volume36 / formes / part01 / subject.c < prev    next >
C/C++ Source or Header  |  1993-04-01  |  1KB  |  67 lines

  1.  
  2. /*
  3.  *  Copyright (C) 1992-1993 Jeffrey Chilton
  4.  *
  5.  *  Permission is granted to anyone to make or distribute copies of
  6.  *  this program, in any medium, provided that the copyright notice
  7.  *  and permission notice are preserved, and that the distributor
  8.  *  grants the recipient permission for further redistribution as
  9.  *  permitted by this notice.
  10.  *  
  11.  *  Author's E-mail address:  172-9221@mcimail.com
  12.  *  
  13.  */
  14.  
  15. static char *whatstring = "@(#)subject.c    2.3 JWC";
  16.  
  17. #include <stdio.h>
  18. #include <malloc.h>
  19.  
  20. #include "class.h"
  21. #include "subject.h"
  22. #include "form.h"
  23.  
  24. Subject *
  25. Subject_new(text, form)
  26. char *text;
  27. Form *form;
  28. {
  29.     Subject *self;
  30.  
  31.     self = (Subject *)malloc(sizeof (Subject));
  32.     if (!self)
  33.     {
  34.     fprintf(stderr, "Subject_new: malloc fails\n");
  35.     goto out;
  36.     }
  37.  
  38.     self->text = ExtendString_newFromString(text);
  39.     self->form = form;
  40.  
  41. out:
  42.  
  43.     return self;
  44.  
  45. }
  46.  
  47. void
  48. Subject_destroy(self)
  49. Subject *self;
  50. {
  51.     ExtendString_destroy(self->text);
  52.     free(self);
  53. }
  54.  
  55. #ifndef PRODUCTION
  56.  
  57. void
  58. Subject_printOn(self, stream)
  59. Subject *self;
  60. FILE *stream;
  61. {
  62.     fprintf(stream, "SUBJECT: %s %s\n", Form_image(self->form), self->text);
  63. }
  64.  
  65. #endif
  66.  
  67.