home *** CD-ROM | disk | FTP | other *** search
/ The CDPD Public Domain Collection for CDTV 3 / CDPDIII.bin / pd / programming / utils / mui-demo / readme < prev    next >
Text File  |  1993-04-26  |  7KB  |  175 lines

  1. ************************************************************************
  2. **                                                                    **
  3. **                        MUI - MagicUserInterface                    **
  4. **                                                                    **
  5. **                              Demo Release                          **
  6. **                                                                    **
  7. ************************************************************************
  8. **                                                                    **
  9. **                     written and copyrighted 1993 by                **
  10. **                                                                    **
  11. **                              Stefan Stuntz                         **
  12. **                                                                    **
  13. ************************************************************************
  14.  
  15.  
  16.  
  17.  
  18. >> OVERVIEW
  19. -----------
  20.  
  21. MUI  (MagicUserInterface)  is a system that makes the task of generating
  22. graphical  user  interfaces  as  simple  as  you always wanted it to be.
  23. Dont't  stop  reading  now,  MUI  has nothing in common with other known
  24. programs as, for example, ToolMaker or GadToolsBox.  These utilities are
  25. just  simple gadget movers which allow the user to somehow arranges some
  26. objects  in  some  windows.   The  results  are neither good looking nor
  27. standardized.
  28.  
  29. MUI  does  something  completely  different.   GUIs consist of groups of
  30. objects,  which  are placed in their parent windows according to certain
  31. rules.   The specification of the user interface is done directly in the
  32. source  code  of  the  corresponding  program and may, for example, look
  33. like this:
  34.  
  35.     WindowObject, VertChilds,
  36.  
  37.         Child, HorizChilds,
  38.             Child, DirectorylistObject,
  39.             Child, DevicelistObject,
  40.             End,
  41.  
  42.         Child, DrawerGadget,
  43.         Child, FileGadget,
  44.  
  45.         Child, HorizChilds,
  46.             Child, OkayButton,
  47.             Child, CancelButton,
  48.             End,
  49.  
  50.         End;
  51.  
  52. In clear:  The window consists of four objects, one below the other, the
  53. first object itself is a horizontal arrangement of two listview objects,
  54. followed  by  two  string  gadgets  and  finally,  again horizontal, the
  55. compulsory Okay- and Cancel-Buttons.
  56.  
  57. That's   all.   With  this  specification  MUI  generates  a  beautiful,
  58. font-sensitive  user  interace,  fully  compliant  with  the AUISG.  The
  59. management  of  this  interface  (changing of size, moving in listviews,
  60. etc.)  is handled by MUI too, the programmer doesn't have to worry about
  61. these things any longer.
  62.  
  63.  
  64.  
  65. >> WHY MUI ?
  66. ------------
  67.  
  68. - Less work for the programmer:
  69.  
  70. Even  a  simple window with few gadgets becomes very difficult to handle
  71. if  you  want  an  appealing  and flexible interface.  Even more, if the
  72. window  should be sizeable and adjust itself to different fonts chaos is
  73. programmed.  Later inserting or moving of gadgets becomes an agony.  MUI
  74. avoids  these  problems.   An  once  specified  interface  will work "by
  75. itself", without further work of the programmer.
  76.  
  77.  
  78. - Font-Sensibility:
  79.  
  80. Most  programs  (even  Commodore's  preferences) still work with a fixed
  81. Topaz/8  font.   In  the age of high-resolution graphic cards or just on
  82. interlaced screens, this is simply a joke.  A MUI objects adjusts itself
  83. automatically to any font, of course including proportional ones.
  84.  
  85.  
  86. - Sizeability:
  87.  
  88. Some programs already adjust themselves to different fonts, but a sizing
  89. gadget  is  still  a  rarity.   In  these  tools, a fixed window size is
  90. calculated  at startup time which can't be changed afterwards.  MUI goes
  91. the  contrary  way  here:  The present window size is the starting point
  92. for  an  object's  layout.   Individual  objects  may  have minimal- and
  93. maximal-dimensions;  these values are then used to calculate the minimal
  94. and  maximal size of the corresponding window.  Of course the programmer
  95. doesn't   have  to  bother  about  that,  the  MUI-System  automatically
  96. calculates all important parameters.
  97.  
  98.  
  99. - Flexibility
  100.  
  101. With  the  aid  of  the  MUI-Preferences  program the GUIs outfit can be
  102. modified  by  the  user  to  fit  his taste.  You have, for example, the
  103. options  to select fonts, alter the thickness of the used frames, change
  104. the  look  of  the standard-images (arrows, prop-gadgets, etc.) and much
  105. more.   Please  notice,  these  adjustments  are  made  by the user of a
  106. program, not by its programmer.  All MUI-applications will automatically
  107. adjust to the (new) configuration.
  108.  
  109.  
  110. - ARexx:
  111.  
  112. Each  MUI-application  has  an  ARexx  port  allowing  all actions to be
  113. called,  which  are  also  available  as  GUI elements.  In addition the
  114. application  gets a simple interface (similar to AppShell) for quick and
  115. easy implementation of own ARexx commands.
  116.  
  117.  
  118.  
  119. >> SYSTEM-REQUIREMENTS
  120. ----------------------
  121.  
  122. MUI works with all OS versions since Kickstart 2.0.
  123.  
  124. The  MUI-System  consists of some BOOPSI-classes, the word BOOPSI stands
  125. for  "Basic  Object  Oriented programming System for Intuition" and is a
  126. standard  from Commodore for the management of object-oriented elements.
  127. To   understand   MUI   some  knowlege  of  BOOPSI  and  object-oriented
  128. programming  is  necessary.   Corresponding  documentation  can e.g.  be
  129. found in the "RKM libraries".
  130.  
  131. All  MUI-classes  reside  in  the  directory  Sys:Classes/MUI/ as shared
  132. system  libraries.  This makes it possible for classes to be only loaded
  133. when  they are actually needed.  On the other hand, the code for a class
  134. can simultaneously be used by many applications.
  135.  
  136.  
  137.  
  138. >> DEMO-RELEASE
  139. ---------------
  140.  
  141. MUI  will  be completed soon.  I arranged this little demo, just to give
  142. you   an  impression  of  what  is  about  to  come.   It  contains  the
  143. MUI-Preferences  program  and  a  demo program, which should demonstrate
  144. some  of  MUI's abilities.  All classes needed by these two applications
  145. are of course included as well.
  146.  
  147. To  start,  just  click  on the "StartMe" icon.  This will automatically
  148. launch  the  demo and the preferences program.  A look in the documented
  149. source code "MUI-Demo.c" is of course recommendable, too.
  150.  
  151.  
  152.  
  153. >> Author
  154. ---------
  155.  
  156. Questions, ideas, gifts and flames welcome. Send them to
  157.  
  158.                              Stefan Stuntz
  159.                         Eduard-Spranger-Straße 7
  160.                           D-W-8000 München 45
  161.                               Deutschland
  162.  
  163.                         phone: +49-(0)89-3131248
  164.  
  165.                                 Internet
  166.                     stuntz@informatik.tu-muenchen.de
  167.  
  168.                                 Fidonet
  169.                           2:246/46.10@fidonet
  170.  
  171.  
  172.  
  173.  
  174.          Much fun and always look on the bright side of life !
  175.