home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #30 / NN_1992_30.iso / spool / comp / windows / x / 20138 < prev    next >
Encoding:
Text File  |  1992-12-11  |  5.3 KB  |  129 lines

  1. Newsgroups: comp.windows.x
  2. Path: sparky!uunet!cs.utexas.edu!sdd.hp.com!spool.mu.edu!umn.edu!csus.edu!netcom.com!rogerr
  3. From: rogerr@netcom.com (roger reynolds)
  4. Subject: Re: Wcl novice requests help
  5. Message-ID: <1992Dec11.175535.4335@netcom.com>
  6. Organization: Netcom - Online Communication Services (408 241-9760 guest)
  7. References: <1g317nINNm3p@caldera.usc.edu> <1g5b3rINN6v6@horus.ap.mchp.sni.de> <1992Dec9.221603.757@rwwa.COM>
  8. Distribution: usa
  9. Date: Fri, 11 Dec 1992 17:55:35 GMT
  10. Lines: 117
  11.  
  12. In article <1992Dec9.221603.757@rwwa.COM> witr@rwwa.com writes:
  13. >In article <1g5b3rINN6v6@horus.ap.mchp.sni.de>,
  14. > david@breslau.ap.mchp.sni.de (David Smyth) writes:
  15. >
  16. >| mitzel@caldera.usc.edu (Danny Mitzel) writes:
  17. >| >I was wondering if someone could point me to a simple program to look
  18. >| >at the code side of initializing/interacting with the Wcl created
  19. >| >widgets.
  20. >| 
  21. >| Here is exactly how I do it.
  22. >
  23. >[... excellent narrative deleted ...]
  24.  
  25. [ ... more good commentary deleted ...]
  26.  
  27.  
  28. The only thing that I have to add to this discussion is the 
  29. introduction of my resource file preprocessor RIL.
  30. Here is the README file for RIL, version 2.1.
  31.  
  32. What is RIL?
  33.     RIL - "Roger's Interface Language", is basically a "preprocessor" 
  34.     for Resource files.  At a minimum, RIL allows you to write resource
  35.     files in a clean, easy to read and edit style, as "source code"
  36.     for the generation of a true "app-defaults" file.  
  37.  
  38.     Taken to extremes, RIL allows you to use conditional statements,
  39.     flow control constructs, user-definable procedures and variables,
  40.     and a whole lotta other neat stuff, to specify your interface.
  41.     
  42.     RIL is based on TCL.  If you do not have TCL, you need to get it.
  43.     TCL can be FTP'd from sprite.berkely.edu, among other places.
  44.     TCL is really the guts behind RIL, and it comes with reasonable
  45.     documentation on the details of the language.
  46.     If you already use TCL, you can use the version that you already have
  47.     with some minor edits in the Imakefile.
  48.  
  49.     RIL has about 3 "modes" of operation:
  50.     1. Write ril scripts and "compile" them to app-defaults files
  51.        These app-defaults files can be used any place an ordinary
  52.        resource file can be used. (as app-defaults, fallbacks, Mri...)
  53.  
  54.     2. Use the program "ril" to run an application from its ril source(s).
  55.        This is analagous to using Mri on a plain resource file, and is
  56.        an excellent way to quickly prototype an interface.
  57.     
  58.     3. Link libril.a with an application, and use ril source instead
  59.        of resource files.  This is most useful if you are already using
  60.        WCL.  This is how I build all my Motif apps these days.
  61.        This provides a very convenient cycle for developing interfaces,
  62.        there is no "compiling" of the ril files.  They are read each
  63.        time the program runs.
  64.  
  65.     This is the second general release of RIL.  I'm still a bit
  66.     short on examples, but the guts of RIL is now pretty solid
  67.     and reliable, and is substantially improved over the first release.
  68.     Still, I WELCOME your comments and suggestions as to how to
  69.     to improve RIL and make it more useful.  I'm still learning
  70.     too...
  71.  
  72. Who should use RIL?
  73.     Anybody that generates complex resource files can benefit from 
  74.     using RIL.  In particular,  users of WCL will find RIL an
  75.     invaluable tool,  because WCL allows/demands "complete" resource
  76.     files, which can get really large and ugly.
  77.  
  78.     Also, you can think of RIL as a kind of substitute for UIL.
  79.     This is may especially interesting for OLIT and ATHENA users.
  80.  
  81. What do I need to get to use RIL, and where do I get it?
  82.     The latest version of ril is always available for anonymous
  83.     ftp from my site  netcom.com in the /pub/rogerr directory.
  84.     There is an older version on export, but I prefer to keep
  85.     it at netcom since I have more control over what is there.
  86.     If you can't get it from netcom, drop me a line and we can
  87.     make other arrangements.
  88.  
  89.     RIL requires TCL 6.3 or greator. If you already have it, you can
  90.     use that. Otherwise, get it from sprite.berkely.edu.
  91.  
  92.     RIL works best in conjunction with WCL, though WCL is not required.
  93.     If you don't have WCL you should get it, whether you use RIL or not!
  94.     The most recent version of WCL is available on export.
  95.  
  96. How do I learn to use RIL?
  97.     There are some demo "programs" in the distribution which should
  98.     serve as a guide to using RIL, and the basics of TCL.
  99.     For a more complete description of the full potential of RIL,
  100.     you can read the TCL documentation included in the TCL distribution.
  101.     If you already use WCL, you should be able to get quite a long 
  102.     way very quickly just by looking over the examples.
  103.  
  104.     The file ril_main.c is a demonstration of how you would incorporate
  105.     the use of ril into an application, as suggested in method 3 above.
  106.  
  107.  
  108. What is the future of RIL?
  109.     Well, thats a good question.  RIL is only a few months old, and
  110.     I myself have not had a chance to try all of the things which I
  111.     have tried to provide hooks to do.
  112.  
  113.     Some things that sould be possible with RIL, but I have not yet
  114.     tried, or don't have examples of, are:
  115.         Building a library of re-usable high-level interface components.
  116.         Defining and using resource "styles".
  117.         
  118.     Some features that I had envisioned, but have not yet implemented
  119.     are:
  120.         Genereate C-code from ril source.
  121.         Error checking on resource specifications.
  122.         Additional language features.
  123.         Suggestions from the world...
  124.  
  125. ---------------------------------------------------
  126.  
  127. Enjoy,
  128. rogerr@netcom.com
  129.