home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 2 / Apprentice-Release2.iso / Source Code / Peter Lewis / PNL Libraries / MySizeResource.p < prev    next >
Encoding:
Text File  |  1994-09-18  |  1.2 KB  |  55 lines  |  [TEXT/PJMM]

  1. unit MySizeResource;
  2.  
  3. interface
  4.  
  5.     type
  6.         sizeRsrc = packed record
  7.                 obsolete1: boolean;
  8.                 accept_suspend_events: boolean;
  9.                 obsolete2: boolean;
  10.                 can_background: boolean;
  11.                 does_activate_on_fg_switch: boolean;
  12.                 only_background: boolean;
  13.                 get_front_clicks: boolean;
  14.                 accept_app_died_events: boolean;
  15.                 bit_32_compatibile: boolean;
  16.                 high_level_event_aware: boolean;
  17.                 local_remote_hl_events: boolean;
  18.                 stationary_aware: boolean;
  19.                 use_textedit_services: boolean;
  20.                 reserved1: boolean;
  21.                 reserved2: boolean;
  22.                 reserved3: boolean;
  23.                 size: longInt;
  24.                 min_size: longInt;
  25.             end;
  26.  
  27.     procedure GetSizeResource (var size: sizeRsrc);
  28.  
  29. implementation
  30.  
  31. {$IFC undefined THINK_Pascal}
  32.     uses
  33.         Types, Resources, Memory;
  34. {$ENDC}
  35.  
  36.     procedure GetSizeResource (var size: sizeRsrc);
  37.         var
  38.             h: handle;
  39.             p: ^integer;
  40.     begin
  41.         h := Get1Resource('SIZE', 0);
  42.         if (h = nil) | (GetHandleSize(h) <> SizeOf(sizeRsrc)) then
  43.             h := Get1Resource('SIZE', -1);
  44.         if (h = nil) | (GetHandleSize(h) <> SizeOf(sizeRsrc)) then begin
  45.             p := @size;
  46.             p^ := 0;
  47.             size.size := longInt(384) * 1024;
  48.             size.min_size := longInt(384) * 1024;
  49.         end
  50.         else begin
  51.             BlockMove(h^, @size, SizeOf(sizeRsrc));
  52.         end;
  53.     end;
  54.  
  55. end.