New Gadget structs

Tom Hughes tom at compton.nu
Mon Mar 6 19:53:47 GMT 2000


In message <PPT6rFAOc9w4EwJG at mk-net.demon.co.uk>
          Tony van der Hoff <OSLib at mk-net.demon.co.uk> wrote:

> However, the StrongHelp manual contains almost identical entries for
> (say) label_object and label_gadget, i.e. the gadget_OBJECT_MEMBERS
> entry (or even it's expansion) is missing from the former. Is this
> intended; it seems wrong to me. My DefMod expertise doesn't stretch far
> enough to pinpoint a problem, I'm afraid.

I did say I'd only done the C header file backend ;-) I've attached
a quick fix for the StrongHelp backend.

> Presumably this really needs doing for Wimp Messages and Menus too; are
> you addressing this, Tom, or would you like me to take my share of the
> burden and do it?

Menus? It was certainly intended to do it for wimp messages although
I havn't had time yet. If you want to do it feel free.

You'll need to create a Wimp_MessageHeader structure and then base
the current Wimp_Message and all the other message structures on it.

Tom

-- 
Tom Hughes (tom at compton.nu)
http://www.compton.nu/
...A sick mind is not necessarily the sign of a clean desk.
-------------- next part --------------
Index: cstrong
===================================================================
RCS file: /home/cvs/riscos/oslib/Tools/DefMod/c/cstrong,v
retrieving revision 1.1.1.3
diff -c -r1.1.1.3 cstrong
*** cstrong	2000/02/16 23:14:46	1.1.1.3
--- cstrong	2000/03/06 19:50:38
***************
*** 243,248 ****
--- 243,259 ----
           )
              goto finish;
  
+          if (t->tag == def_TYPE_STRUCT && t->data AS list.base)
+          {
+             char base [def_ID_LIMIT + 1];
+ 
+             def_as_macro (base, t->data AS list.base->data AS id);
+ 
+             if ((rc = fprintf (file, "%s_MEMBERS\n%*s   ",
+                   base, 21 + 3*nest, " ")) < 0)
+                goto finish;
+          }
+ 
           for (i = 0; i < t->data AS list.count; i++)
           {
              if (i == t->data AS list.count - 1 &&


More information about the oslib-team mailing list