OSLib/Toolbox problems

Dave Appleby DaveAppleby at btinternet.com
Mon Dec 23 10:01:09 GMT 2002


Hi,

I've been writing an application to covert res files to and from text
format, and have found some discrepancies in the OSLib headers w.r.t.
files generated by !ResEd (RESF 1.01)

--------------------------------------------------------------------

1) textarea_gadget.text
   textarea_object.text

are: char *
should be: toolbox_msg_reference

--------------------------------------------------------------------

2) toolaction_gadget.off_text
   toolaction_gadget.on_text
   toolaction_gadget.fade_text

   toolaction_object.off_text
   toolaction_object.on_text
   toolaction_object.fade_text

are: toolbox_msg_reference
should be: toolbox_string_reference

--------------------------------------------------------------------

3) toolbox_relocatable_object_base

missing definition in toolbox.h
same as toolbox_relocatable_object, but without int object[...] entry

struct {
  int string_table_offset;
  int message_table_offset;
  int relocation_table_offset;
  toolbox_resource_file_object_base rf_obj;
} toolbox_relocatable_object_base;

--------------------------------------------------------------------

4) proginfo_object
   proginfo_object_template

res file has an additional toolbox_string_reference (which *appears* to
be unused...)

struct proginfo_object
   {  proginfo_flags flags;
      toolbox_msg_reference title;
      int title_limit;
      toolbox_msg_reference purpose;
      toolbox_msg_reference author;
      proginfo_licence licence_type;
      toolbox_msg_reference version;
      toolbox_string_reference alternative_window_name;

// DA 21.12.02 two fields added to match Resf 1.01
      toolbox_string_reference reserved;
      int reserved_limit;
   };

struct proginfo_object_template
   {  toolbox_RESOURCE_FILE_OBJECT_MEMBERS
      proginfo_flags objectflags;
      toolbox_msg_reference title;
      int title_limit;
      toolbox_msg_reference purpose;
      toolbox_msg_reference author;
      proginfo_licence licence_type;
      toolbox_msg_reference prog_version;
      toolbox_string_reference alternative_window_name;

// DA 21.12.02 two fields added to match Resf 1.01
      toolbox_string_reference reserved;
      int reserved_limit;
   };


5) adjuster_object

missing int reserved entry (present in adjuster_gadget)
struct adjuster_object
   {  gadget_OBJECT_MEMBERS

// DA 21.12.02 adjuster should have reserved entry
      int reserved;
   };

--------------------------------------------------------------------

Otherwise seems to be OK... thanks for an excellent product :-)

Cheers
Dave A.



More information about the oslib-user mailing list