home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 8 / FreshFishVol8-CD1.bin / new / util / cdity / runlist2 / source / rlists.c < prev    next >
C/C++ Source or Header  |  1995-01-18  |  19KB  |  640 lines

  1. /*
  2.  *  Source machine generated by GadToolsBox V2.0b
  3.  *  which is (c) Copyright 1991-1993 Jaba Development
  4.  *
  5.  *  GUI Designed by : -- Unnamed --
  6.  */
  7. #include <exec/types.h>
  8. #include <intuition/intuition.h>
  9. #include <intuition/classes.h>
  10. #include <intuition/classusr.h>
  11. #include <intuition/imageclass.h>
  12. #include <intuition/gadgetclass.h>
  13. #include <libraries/gadtools.h>
  14. #include <graphics/displayinfo.h>
  15. #include <graphics/GfxBase.h>
  16. #include <clib/exec_protos.h>
  17. #include <clib/intuition_protos.h>
  18. #include <clib/gadtools_protos.h>
  19. #include <clib/graphics_protos.h>
  20. #include <clib/utility_protos.h>
  21. #include <proto/intuition.h>
  22. #include <proto/graphics.h>
  23. #include <proto/exec.h>
  24. #include <proto/dos.h>
  25. #include <proto/gadtools.h>
  26. #include <exec/memory.h>
  27. #include <string.h>
  28.  
  29. /************************************************/
  30. #define GetString( g )      ((( struct StringInfo * )g->SpecialInfo )->Buffer  )
  31. #define GetNumber( g )      ((( struct StringInfo * )g->SpecialInfo )->LongInt )
  32.  
  33. #define GD_list                                0
  34. #define GD_gadtxt                              1
  35. #define GD_command                             2
  36. #define GD_command2                            3
  37. #define GD_new                                 4
  38. #define GD_del                                 5
  39. #define GD_start                               6
  40. #define GD_save                                7
  41. #define GD_Gadget80                            8
  42. #define GD_Gadget90                            9
  43.  
  44. #define GDX_list                               0
  45. #define GDX_gadtxt                             1
  46. #define GDX_command                            2
  47. #define GDX_command2                           3
  48. #define GDX_new                                4
  49. #define GDX_del                                5
  50. #define GDX_start                              6
  51. #define GDX_save                               7
  52. #define GDX_Gadget80                           8
  53. #define GDX_Gadget90                           9
  54.  
  55. #define Project0_CNT 10
  56. UBYTE *vers = "\0$VER: RunList 2";
  57.  
  58. extern struct IntuitionBase *IntuitionBase;
  59. extern struct Library       *GadToolsBase;
  60.  
  61. extern struct Screen        *Scr;
  62. extern UBYTE                 *PubScreenName;
  63. extern APTR                  VisualInfo;
  64. extern struct Window        *Project0Wnd;
  65. extern struct Gadget        *Project0GList;
  66. extern struct Gadget        *Project0Gadgets[10];
  67. extern UWORD                 Project0Left;
  68. extern UWORD                 Project0Top;
  69. extern UWORD                 Project0Width;
  70. extern UWORD                 Project0Height;
  71. extern UBYTE                *Project0Wdt;
  72. extern struct TextAttr       topaz8;
  73. extern UWORD                 Project0GTypes[];
  74. extern struct NewGadget      Project0NGad[];
  75. extern ULONG                 Project0GTags[];
  76.  
  77.  
  78. extern int SetupScreen( void );
  79. extern void CloseDownScreen( void );
  80. extern int OpenProject0Window( void );
  81. extern void CloseProject0Window( void );
  82.  
  83. LONG TimeDelay( long unit, unsigned long secs, unsigned long microsecs  );
  84.  
  85. /************************************************/
  86.  
  87. struct Screen         *Scr = NULL;
  88. UBYTE                 *PubScreenName = NULL;
  89. APTR                   VisualInfo = NULL;
  90. struct Window         *Project0Wnd = NULL;
  91. struct Gadget         *Project0GList = NULL;
  92. struct Gadget         *Project0Gadgets[10];
  93. UWORD                  Project0Left = 352;
  94. UWORD                  Project0Top = 10;
  95. UWORD                  Project0Width = 283;
  96. UWORD                  Project0Height = 0;
  97. UBYTE                 *Project0Wdt = (UBYTE *)"RunList S2";
  98.  
  99. struct TextAttr topaz8 = {
  100.         ( STRPTR )"topaz.font", 8, 0x00, 0x01 };
  101.  
  102. UWORD Project0GTypes[] = {
  103.         LISTVIEW_KIND,
  104.         STRING_KIND,
  105.         STRING_KIND,
  106.         STRING_KIND,
  107.         BUTTON_KIND,
  108.         BUTTON_KIND,
  109.         BUTTON_KIND,
  110.         BUTTON_KIND,
  111.         TEXT_KIND,
  112.         TEXT_KIND
  113. };
  114.  
  115. struct NewGadget Project0NGad[] = {
  116.         21, 10, 160, 40, NULL, NULL, GD_list, 0, NULL, NULL,
  117.         21, 46, 160, 12, NULL, NULL, GD_gadtxt, 0, NULL, NULL,
  118.         7, 67, 249, 12, NULL, NULL, GD_command, 0, NULL, NULL,
  119.         7, 79, 249, 12, NULL, NULL, GD_command2, 0, NULL, NULL,
  120.         185, 10, 55, 11, (UBYTE *)"NEW", NULL, GD_new, PLACETEXT_IN, NULL, NULL,
  121.         185, 21, 55, 11, (UBYTE *)"DELETE", NULL, GD_del, PLACETEXT_IN, NULL, NULL,
  122.         185, 43, 55, 15, (UBYTE *)"RUN", NULL, GD_start, PLACETEXT_IN, NULL, NULL,
  123.         185, 32, 55, 11, (UBYTE *)"SAVE", NULL, GD_save, PLACETEXT_IN, NULL, NULL,
  124.         14, 6, 234, 55, NULL, NULL, GD_Gadget80, 0, NULL, NULL,
  125.         7, 3, 248, 62, NULL, NULL, GD_Gadget90, 0, NULL, NULL
  126. };
  127.  
  128. ULONG Project0GTags[] = {
  129.         (TAG_DONE),
  130.         (GTST_MaxChars), 20, (TAG_DONE),
  131.         (GTST_MaxChars), 50, (TAG_DONE),
  132.         (GTST_MaxChars), 50, (TAG_DONE),
  133.         (TAG_DONE),
  134.         (TAG_DONE),
  135.         (TAG_DONE),
  136.         (TAG_DONE),
  137.         (GTTX_Border), TRUE, (TAG_DONE),
  138.         (GTTX_Border), TRUE, (TAG_DONE)
  139. };
  140.  
  141. int SetupScreen( void )
  142. {
  143.         if ( ! ( Scr = LockPubScreen( PubScreenName )))
  144.                 return( 1L );
  145.  
  146.         if ( ! ( VisualInfo = GetVisualInfo( Scr, TAG_DONE )))
  147.                 return( 2L );
  148.  
  149.         return( 0L );
  150. }
  151.  
  152. void CloseDownScreen( void )
  153. {
  154.         if ( VisualInfo ) {
  155.                 FreeVisualInfo( VisualInfo );
  156.                 VisualInfo = NULL;
  157.         }
  158.  
  159.         if ( Scr        ) {
  160.                 UnlockPubScreen( NULL, Scr );
  161.                 Scr = NULL;
  162.         }
  163. }
  164.  
  165. int OpenProject0Window( void )
  166. {
  167.         struct NewGadget        ng;
  168.         struct Gadget   *g;
  169.         UWORD           lc, tc;
  170.         UWORD           offx = Scr->WBorLeft, offy = Scr->WBorTop + Scr->RastPort.TxHeight + 1;
  171.  
  172.         if ( ! ( g = CreateContext( &Project0GList )))
  173.                 return( 1L );
  174.  
  175.         for( lc = 0, tc = 0; lc < Project0_CNT; lc++ ) {
  176.  
  177.                 CopyMem((char * )&Project0NGad[ lc ], (char * )&ng, (long)sizeof( struct NewGadget ));
  178.  
  179.                 ng.ng_VisualInfo = VisualInfo;
  180.                 ng.ng_TextAttr   = &topaz8;
  181.                 ng.ng_LeftEdge  += offx;
  182.                 ng.ng_TopEdge   += offy;
  183.  
  184.                 Project0Gadgets[ lc ] = g = CreateGadgetA((ULONG)Project0GTypes[ lc ], g, &ng, ( struct TagItem * )&Project0GTags[ tc ] );
  185.  
  186.                 while( Project0GTags[ tc ] ) tc += 2;
  187.                 tc++;
  188.  
  189.                 if ( NOT g )
  190.                         return( 2L );
  191.         }
  192.  
  193.         if ( ! ( Project0Wnd = OpenWindowTags( NULL,
  194.                                 WA_Left,        Project0Left,
  195.                                 WA_Top,         Project0Top,
  196.                                 WA_Width,       Project0Width,
  197.                                 WA_Height,      Project0Height + offy,
  198.                                 WA_IDCMP,       LISTVIEWIDCMP|
  199.                                                 BUTTONIDCMP|
  200.                                                 STRINGIDCMP|
  201.                                                 IDCMP_NEWSIZE|
  202.                                                 IDCMP_MENUPICK|
  203.                                                 IDCMP_CLOSEWINDOW|
  204.                                                 IDCMP_CHANGEWINDOW|
  205.                                                 IDCMP_INTUITICKS |
  206.                                                 IDCMP_MOUSEBUTTONS|
  207.                                                 IDCMP_REFRESHWINDOW,
  208.                                 WA_Flags,       WFLG_SIZEGADGET|
  209.                                                 WFLG_DRAGBAR|
  210.                                                 WFLG_DEPTHGADGET|
  211.                                                 WFLG_CLOSEGADGET|
  212.                                                 WFLG_SMART_REFRESH,
  213.                                 WA_Gadgets,     Project0GList,
  214.                                 WA_Title,       Project0Wdt,
  215.                                 WA_ScreenTitle, "Runlist S2 Heinz Reinert 1994-95",
  216.                                 WA_PubScreen,   Scr,
  217.                                 WA_MinWidth,    283,
  218.                                 WA_MinHeight,   107,
  219.                                 WA_MaxWidth,    283,
  220.                                 WA_MaxHeight,   107,
  221.                                 TAG_DONE )))
  222.         retu