home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / MUI / MUISpeak.lha / muispeak / src / dt / Speak.c < prev    next >
Encoding:
C/C++ Source or Header  |  1994-10-08  |  17.2 KB  |  739 lines

  1. #ifndef MAKE_ID
  2. #define MAKE_ID(a,b,c,d) ((ULONG) (a)<<24 | (ULONG) (b)<<16 | (ULONG) (c)<<8 | (ULONG) (d))
  3. #endif
  4.  
  5. #ifdef _DCC
  6. #define __inline
  7. #endif
  8.  
  9. #include "Speak.h"
  10. #include "SpeakStrings_cat.h"
  11.  
  12. extern char* GetString(int);
  13.  
  14. char *GetMBString(int ref)
  15. {
  16.     char *aux;
  17.  
  18.     aux = GetString(ref);
  19.     if (aux[1] == '\0') return(&aux[0]);
  20.     else                return(aux);
  21. }
  22.  
  23. struct ObjApp * CreateApp(void)
  24. {
  25.     struct ObjApp * Object;
  26.  
  27.     APTR    MN_label_0Projekt, MN_label_0Quit, MN_label_1Projekt, MN_label_1About;
  28.     APTR    MN_label_1Quit, GROUP_ROOT_0, GR_grp_0, GR_grp_12, GR_grp_10, GR_grp_3;
  29.     APTR    GR_grp_3CC, GR_grp_6, obj_aux0, obj_aux1, GROUP_ROOT_1;
  30.  
  31.     if (!(Object = AllocVec(sizeof(struct ObjApp), MEMF_PUBLIC|MEMF_CLEAR)))
  32.         return(NULL);
  33.  
  34.     Object->STR_TX_label_0 = GetMBString(MSG_TX_label_0);
  35.     Object->STR_TX_label_1 = GetMBString(MSG_TX_label_1);
  36.     Object->STR_TX_label_4CC = GetMBString(MSG_TX_label_4CC);
  37.     Object->STR_TX_label_2 = GetMBString(MSG_TX_label_2);
  38.     Object->STR_TX_label_3 = GetMBString(MSG_TX_label_3);
  39.     Object->STR_TX_label_4 = GetMBString(MSG_TX_label_4);
  40.     Object->STR_TX_label_5 = GetMBString(MSG_TX_label_5);
  41.     Object->STR_TX_label_6 = GetMBString(MSG_TX_label_6);
  42.     Object->STR_TX_F1ADJ = GetMBString(MSG_TX_F1ADJ);
  43.     Object->STR_TX_F2ADJ = GetMBString(MSG_TX_F2ADJ);
  44.     Object->STR_TX_F3ADJ = GetMBString(MSG_TX_F3ADJ);
  45.     Object->STR_TX_A1ADJ = GetMBString(MSG_TX_A1ADJ);
  46.     Object->STR_TX_A2ADJ = GetMBString(MSG_TX_A2ADJ);
  47.     Object->STR_TX_A3ADJ = GetMBString(MSG_TX_A3ADJ);
  48.     Object->STR_TX_ARTIC = GetMBString(MSG_TX_ARTIC);
  49.     Object->STR_TX_AVBIAS = GetMBString(MSG_TX_AVBIAS);
  50.     Object->STR_TX_AFBIAS = GetMBString(MSG_TX_AFBIAS);
  51.     Object->STR_TX_CENT = GetMBString(MSG_TX_CENT);
  52.     Object->STR_TX_PHONEME = NULL;
  53.     Object->STR_TX_label_7 = GetMBString(MSG_TX_label_7);
  54.  
  55.     Object->CY_SEXContent[0] = GetMBString(MSG_CY_SEX0);
  56.     Object->CY_SEXContent[1] = GetMBString(MSG_CY_SEX1);
  57.     Object->CY_SEXContent[2] = NULL;
  58.     Object->CY_KINDContent[0] = GetMBString(MSG_CY_KIND0);
  59.     Object->CY_KINDContent[1] = GetMBString(MSG_CY_KIND1);
  60.     Object->CY_KINDContent[2] = GetMBString(MSG_CY_KIND2);
  61.     Object->CY_KINDContent[3] = NULL;
  62.     Object->CY_OUTPUTContent[0] = GetMBString(MSG_CY_OUTPUT0);
  63.     Object->CY_OUTPUTContent[1] = GetMBString(MSG_CY_OUTPUT1);
  64.     Object->CY_OUTPUTContent[2] = GetMBString(MSG_CY_OUTPUT2);
  65.     Object->CY_OUTPUTContent[3] = NULL;
  66.     Object->STR_GR_grp_10[0] = GetMBString(MSG_GR_grp_100);
  67.     Object->STR_GR_grp_10[1] = GetMBString(MSG_GR_grp_101);
  68.     Object->STR_GR_grp_10[2] = NULL;
  69.  
  70.     Object->TX_label_0 = TextObject,
  71.         MUIA_HelpNode, "TX_label_0",
  72.         MUIA_Background, MUII_BACKGROUND,
  73.         MUIA_Text_Contents, Object->STR_TX_label_0,
  74.         MUIA_Text_SetMin, TRUE,
  75.     End;
  76.  
  77.     Object->CY_SEX = CycleObject,
  78.         MUIA_HelpNode, "CY_SEX",
  79.         MUIA_Cycle_Entries, Object->CY_SEXContent,
  80.     End;
  81.  
  82.     Object->TX_label_1 = TextObject,
  83.         MUIA_HelpNode, "TX_label_1",
  84.         MUIA_Background, MUII_BACKGROUND,
  85.         MUIA_Text_Contents, Object->STR_TX_label_1,
  86.         MUIA_Text_SetMin, TRUE,
  87.     End;
  88.  
  89.     Object->CY_KIND = CycleObject,
  90.         MUIA_HelpNode, "CY_KIND",
  91.         MUIA_Cycle_Entries, Object->CY_KINDContent,
  92.     End;
  93.  
  94.     Object->TX_label_4CC = TextObject,
  95.         MUIA_HelpNode, "TX_label_4CC",
  96.         MUIA_Background, MUII_BACKGROUND,
  97.         MUIA_Text_Contents, Object->STR_TX_label_4CC,
  98.         MUIA_Text_SetMin, TRUE,
  99.     End;
  100.  
  101.     Object->CY_OUTPUT = CycleObject,
  102.         MUIA_HelpNode, "CY_OUTPUT",
  103.         MUIA_Cycle_Entries, Object->CY_OUTPUTContent,
  104.     End;
  105.  
  106.     Object->TX_label_2 = TextObject,
  107.         MUIA_HelpNode, "TX_label_2",
  108.         MUIA_Background, MUII_BACKGROUND,
  109.         MUIA_Text_Contents, Object->STR_TX_label_2,
  110.         MUIA_Text_SetMin, TRUE,
  111.     End;
  112.  
  113.     Object->SL_HEIGHT = SliderObject,
  114.         MUIA_HelpNode, "SL_HEIGHT",
  115.         MUIA_Slider_Min, 65,
  116.         MUIA_Slider_Max, 320,
  117.         MUIA_Slider_Level, 150,
  118.     End;
  119.  
  120.     Object->TX_label_3 = TextObject,
  121.         MUIA_HelpNode, "TX_label_3",
  122.         MUIA_Background, MUII_BACKGROUND,
  123.         MUIA_Text_Contents, Object->STR_TX_label_3,
  124.         MUIA_Text_SetMin, TRUE,
  125.     End;
  126.  
  127.     Object->SL_SPEED = SliderObject,
  128.         MUIA_HelpNode, "SL_SPEED",
  129.         MUIA_Slider_Min, 40,
  130.         MUIA_Slider_Max, 400,
  131.         MUIA_Slider_Level, 100,
  132.     End;
  133.  
  134.     Object->TX_label_4 = TextObject,
  135.         MUIA_HelpNode, "TX_label_4",
  136.         MUIA_Background, MUII_BACKGROUND,
  137.         MUIA_Text_Contents, Object->STR_TX_label_4,
  138.         MUIA_Text_SetMin, TRUE,
  139.     End;
  140.  
  141.     Object->SL_VOLUME = SliderObject,
  142.         MUIA_HelpNode, "SL_VOLUME",
  143.         MUIA_Slider_Min, 0,
  144.         MUIA_Slider_Max, 64,
  145.         MUIA_Slider_Level, 64,
  146.     End;
  147.  
  148.     GR_grp_0 = GroupObject,
  149.         MUIA_Frame, MUIV_Frame_Group,
  150.         MUIA_FrameTitle, GetMBString(MSG_GR_grp_0Title),
  151.         MUIA_Group_Columns, 2,
  152.         Child, Object->TX_label_0,
  153.         Child, Object->CY_SEX,
  154.         Child, Object->TX_label_1,
  155.         Child, Object->CY_KIND,
  156.         Child, Object->TX_label_4CC,
  157.         Child, Object->CY_OUTPUT,
  158.         Child, Object->TX_label_2,
  159.         Child, Object->SL_HEIGHT,
  160.         Child, Object->TX_label_3,
  161.         Child, Object->SL_SPEED,
  162.         Child, Object->TX_label_4,
  163.         Child, Object->SL_VOLUME,
  164.     End;
  165.  
  166.     Object->TX_label_5 = TextObject,
  167.         MUIA_HelpNode, "TX_label_5",
  168.         MUIA_Background, MUII_BACKGROUND,
  169.         MUIA_Text_Contents, Object->STR_TX_label_5,
  170.         MUIA_Text_SetMin, TRUE,
  171.     End;
  172.  
  173.     Object->SL_ENTHUSIASMUS = SliderObject,
  174.         MUIA_HelpNode, "SL_ENTHUSIASMUS",
  175.         MUIA_Slider_Min, 0,
  176.         MUIA_Slider_Max, 255,
  177.         MUIA_Slider_Level, 0,
  178.     End;
  179.  
  180.     Object->TX_label_6 = TextObject,
  181.         MUIA_HelpNode, "TX_label_6",
  182.         MUIA_Background, MUII_BACKGROUND,
  183.         MUIA_Text_Contents, Object->STR_TX_label_6,
  184.         MUIA_Text_SetMin, TRUE,
  185.     End;
  186.  
  187.     Object->SL_PERTUBATION = SliderObject,
  188.         MUIA_HelpNode, "SL_PERTUBATION",
  189.         MUIA_Slider_Min, 0,
  190.         MUIA_Slider_Max, 255,
  191.         MUIA_Slider_Level, 0,
  192.     End;
  193.  
  194.     Object->TX_F1ADJ = TextObject,
  195.         MUIA_HelpNode, "TX_F1ADJ",
  196.         MUIA_Background, MUII_BACKGROUND,
  197.         MUIA_Text_Contents, Object->STR_TX_F1ADJ,
  198.         MUIA_Text_SetMin, TRUE,
  199.     End;
  200.  
  201.     Object->SL_F1ADJ = SliderObject,
  202.         MUIA_HelpNode, "SL_F1ADJ",
  203.         MUIA_Slider_Min, -100,
  204.         MUIA_Slider_Max, 100,
  205.         MUIA_Slider_Level, 0,
  206.     End;
  207.  
  208.     Object->TX_F2ADJ = TextObject,
  209.         MUIA_HelpNode, "TX_F2ADJ",
  210.         MUIA_Background, MUII_BACKGROUND,
  211.         MUIA_Text_Contents, Object->STR_TX_F2ADJ,
  212.         MUIA_Text_SetMin, TRUE,
  213.     End;
  214.  
  215.     Object->SL_F2ADJ = SliderObject,
  216.         MUIA_HelpNode, "SL_F2ADJ",
  217.         MUIA_Slider_Min, -100,
  218.         MUIA_Slider_Max, 100,
  219.         MUIA_Slider_Level, 0,
  220.     End;
  221.  
  222.     Object->TX_F3ADJ = TextObject,
  223.         MUIA_HelpNode, "TX_F3ADJ",
  224.         MUIA_Background, MUII_BACKGROUND,
  225.         MUIA_Text_Contents, Object->STR_TX_F3ADJ,
  226.         MUIA_Text_SetMin, TRUE,
  227.     End;
  228.  
  229.     Object->SL_F3ADJ = SliderObject,
  230.         MUIA_HelpNode, "SL_F3ADJ",
  231.         MUIA_Slider_Min, -100,
  232.         MUIA_Slider_Max, 100,
  233.         MUIA_Slider_Level, 0,
  234.     End;
  235.  
  236.     Object->TX_A1ADJ = TextObject,
  237.         MUIA_HelpNode, "TX_A1ADJ",
  238.         MUIA_Background, MUII_BACKGROUND,
  239.         MUIA_Text_Contents, Object->STR_TX_A1ADJ,
  240.         MUIA_Text_SetMin, TRUE,
  241.     End;
  242.  
  243.     Object->SL_A1ADJ = SliderObject,
  244.         MUIA_HelpNode, "SL_A1ADJ",
  245.         MUIA_Slider_Min, -31,
  246.         MUIA_Slider_Max, 32,
  247.         MUIA_Slider_Level, 0,
  248.     End;
  249.  
  250.     GR_grp_3 = GroupObject,
  251.         MUIA_Group_Columns, 2,
  252.         Child, Object->TX_label_5,
  253.         Child, Object->SL_ENTHUSIASMUS,
  254.         Child, Object->TX_label_6,
  255.         Child, Object->SL_PERTUBATION,
  256.         Child, Object->TX_F1ADJ,
  257.         Child, Object->SL_F1ADJ,
  258.         Child, Object->TX_F2ADJ,
  259.         Child, Object->SL_F2ADJ,
  260.         Child, Object->TX_F3ADJ,
  261.         Child, Object->SL_F3ADJ,
  262.         Child, Object->TX_A1ADJ,
  263.         Child, Object->SL_A1ADJ,
  264.     End;
  265.  
  266.     Object->TX_A2ADJ = TextObject,
  267.         MUIA_HelpNode, "TX_A2ADJ",
  268.         MUIA_Background, MUII_BACKGROUND,
  269.         MUIA_Text_Contents, Object->STR_TX_A2ADJ,
  270.         MUIA_Text_SetMin, TRUE,
  271.     End;
  272.  
  273.     Object->SL_A2ADJ = SliderObject,
  274.         MUIA_HelpNode, "SL_A2ADJ",
  275.         MUIA_Slider_Min, -31,
  276.         MUIA_Slider_Max, 32,
  277.         MUIA_Slider_Level, 0,
  278.     End;
  279.  
  280.     Object->TX_A3ADJ = TextObject,
  281.         MUIA_HelpNode, "TX_A3ADJ",
  282.         MUIA_Background, MUII_BACKGROUND,
  283.         MUIA_Text_Contents, Object->STR_TX_A3ADJ,
  284.         MUIA_Text_SetMin, TRUE,
  285.     End;
  286.  
  287.     Object->SL_A3ADJ = SliderObject,
  288.         MUIA_HelpNode, "SL_A3ADJ",
  289.         MUIA_Slider_Min, -31,
  290.         MUIA_Slider_Max, 32,
  291.         MUIA_Slider_Level, 0,
  292.     End;
  293.  
  294.     Object->TX_ARTIC = TextObject,
  295.         MUIA_HelpNode, "TX_ARTIC",
  296.         MUIA_Background, MUII_BACKGROUND,
  297.         MUIA_Text_Contents, Object->STR_TX_ARTIC,
  298.         MUIA_Text_SetMin, TRUE,
  299.     End;
  300.  
  301.     Object->SL_ARTIC = SliderObject,
  302.         MUIA_HelpNode, "SL_ARTIC",
  303.         MUIA_Slider_Min, 0,
  304.         MUIA_Slider_Max, 400,
  305.         MUIA_Slider_Level, 0,
  306.     End;
  307.  
  308.     Object->TX_AVBIAS = TextObject,
  309.         MUIA_HelpNode, "TX_AVBIAS",
  310.         MUIA_Background, MUII_BACKGROUND,
  311.         MUIA_Text_Contents, Object->STR_TX_AVBIAS,
  312.         MUIA_Text_SetMin, TRUE,
  313.     End;
  314.  
  315.     Object->SL_AVBIAS = SliderObject,
  316.         MUIA_HelpNode, "SL_AVBIAS",
  317.         MUIA_Slider_Min, -31,
  318.         MUIA_Slider_Max, 32,
  319.         MUIA_Slider_Level, 0,
  320.     End;
  321.  
  322.     Object->TX_AFBIAS = TextObject,
  323.         MUIA_HelpNode, "TX_AFBIAS",
  324.         MUIA_Background, MUII_BACKGROUND,
  325.         MUIA_Text_Contents, Object->STR_TX_AFBIAS,
  326.         MUIA_Text_SetMin, TRUE,
  327.     End;
  328.  
  329.     Object->SL_AFBIAS = SliderObject,
  330.         MUIA_HelpNode, "SL_AFBIAS",
  331.         MUIA_Slider_Min, -31,
  332.         MUIA_Slider_Max, 32,
  333.         MUIA_Slider_Level, 0,
  334.     End;
  335.  
  336.     Object->TX_CENT = TextObject,
  337.         MUIA_HelpNode, "TX_CENT",
  338.         MUIA_Background, MUII_BACKGROUND,
  339.         MUIA_Text_Contents, Object->STR_TX_CENT,
  340.         MUIA_Text_SetMin, TRUE,
  341.     End;
  342.  
  343.     Object->SL_CENT = SliderObject,
  344.         MUIA_HelpNode, "SL_CENT",
  345.         MUIA_Slider_Min, 0,
  346.         MUIA_Slider_Max, 100,
  347.         MUIA_Slider_Level, 0,
  348.     End;
  349.  
  350.     GR_grp_3CC = GroupObject,
  351.         MUIA_Group_Columns, 2,
  352.         Child, Object->TX_A2ADJ,
  353.         Child, Object->SL_A2ADJ,
  354.         Child, Object->TX_A3ADJ,
  355.         Child, Object->SL_A3ADJ,
  356.         Child, Object->TX_ARTIC,
  357.         Child, Object->SL_ARTIC,
  358.         Child, Object->TX_AVBIAS,
  359.         Child, Object->SL_AVBIAS,
  360.         Child, Object->TX_AFBIAS,
  361.         Child, Object->SL_AFBIAS,
  362.         Child, Object->TX_CENT,
  363.         Child, Object->SL_CENT,
  364.     End;
  365.  
  366.     GR_grp_10 = RegisterObject,
  367.         MUIA_Register_Titles, Object->STR_GR_grp_10,
  368.         MUIA_HelpNode, "GR_grp_10",
  369.         MUIA_Frame, MUIV_Frame_Group,
  370.         Child, GR_grp_3,
  371.         Child, GR_grp_3CC,
  372.     End;
  373.  
  374.     Object->STR_TEXT = StringObject,
  375.         MUIA_Frame, MUIV_Frame_String,
  376.         MUIA_HelpNode, "STR_TEXT",
  377.         MUIA_String_MaxLen, 255,
  378.     End;
  379.  
  380.     obj_aux1 = Label2(GetMBString(MSG_STR_TEXT));
  381.  
  382.     obj_aux0 = GroupObject,
  383.         MUIA_Group_Columns, 2,
  384.         Child, obj_aux1,
  385.         Child, Object->STR_TEXT,
  386.     End;
  387.  
  388.     Object->TX_PHONEME = TextObject,
  389.         MUIA_Frame, MUIV_Frame_Text,
  390.         MUIA_Text_Contents, Object->STR_TX_PHONEME,
  391.         MUIA_Text_SetMin, TRUE,
  392.     End;
  393.  
  394.     Object->BT_SPEAK = SimpleButton(GetMBString(MSG_BT_SPEAK));
  395.  
  396.     GR_grp_6 = GroupObject,
  397.         Child, obj_aux0,
  398.         Child, Object->TX_PHONEME,
  399.         Child, Object->BT_SPEAK,
  400.     End;
  401.  
  402.     GR_grp_12 = GroupObject,
  403.         MUIA_HelpNode, "GR_grp_12",
  404.         MUIA_Frame, MUIV_Frame_Group,
  405.         Child, GR_grp_10,
  406.         Child, GR_grp_6,
  407.     End;
  408.  
  409.     GROUP_ROOT_0 = GroupObject,
  410.         Child, GR_grp_0,
  411.         Child, GR_grp_12,
  412.     End;
  413.  
  414.     MN_label_1About = MenuitemObject,
  415.         MUIA_Menuitem_Title, GetMBString(MSG_MN_label_1About),
  416.         MUIA_Menuitem_Shortcut, GetMBString(MSG_MN_label_1AboutChar),
  417.     End;
  418.  
  419.     MN_label_1Quit = MenuitemObject,
  420.         MUIA_Menuitem_Title, GetMBString(MSG_MN_label_1Quit),
  421.         MUIA_Menuitem_Shortcut, GetMBString(MSG_MN_label_1QuitChar),
  422.     End;
  423.  
  424.     MN_label_1Projekt = MenuObject,
  425.         MUIA_Menu_Title, GetMBString(MSG_MN_label_1Projekt),
  426.         MUIA_Family_Child, MN_label_1About,
  427.         MUIA_Family_Child, MN_label_1Quit,
  428.     End;
  429.  
  430.     Object->MN_label_1 = MenustripObject,
  431.         MUIA_Family_Child, MN_label_1Projekt,
  432.     End;
  433.  
  434.     Object->WIN_Main = WindowObject,
  435.         MUIA_Window_Title, GetMBString(MSG_WIN_Main),
  436.         MUIA_HelpNode, "WIN_Main",
  437.         MUIA_Window_Menustrip, Object->MN_label_1,
  438.         MUIA_Window_ID, MAKE_ID('0', 'W', 'I', 'N'),
  439.         WindowContents, GROUP_ROOT_0,
  440.     End;
  441.  
  442.     Object->TX_label_7 = TextObject,
  443.         MUIA_Background, MUII_HSHINEBACK,
  444.         MUIA_Text_Contents, Object->STR_TX_label_7,
  445.         MUIA_Text_SetMin, TRUE,
  446.     End;
  447.  
  448.     Object->BT_OK = SimpleButton(GetMBString(MSG_BT_OK));
  449.  
  450.     GROUP_ROOT_1 = GroupObject,
  451.         Child, Object->TX_label_7,
  452.         Child, Object->BT_OK,
  453.     End;
  454.  
  455.     Object->WIN_About = WindowObject,
  456.         MUIA_Window_Title, GetMBString(MSG_WIN_About),
  457.         MUIA_Window_ID, MAKE_ID('1', 'W', 'I', 'N'),
  458.         MUIA_Window_SizeGadget, FALSE,
  459.         WindowContents, GROUP_ROOT_1,
  460.     End;
  461.  
  462.     MN_label_0Quit = MenuitemObject,
  463.         MUIA_Menuitem_Title, GetMBString(MSG_MN_label_0Quit),
  464.         MUIA_Menuitem_Shortcut, GetMBString(MSG_MN_label_0QuitChar),
  465.     End;
  466.  
  467.     MN_label_0Projekt = MenuObject,
  468.         MUIA_Menu_Title, GetMBString(MSG_MN_label_0Projekt),
  469.         MUIA_Family_Child, MN_label_0Quit,
  470.     End;
  471.  
  472.     Object->MN_label_0 = MenustripObject,
  473.         MUIA_Family_Child, MN_label_0Projekt,
  474.     End;
  475.  
  476.     Object->App = ApplicationObject,
  477.         MUIA_Application_Author, "Andreas Jung, Klosterstr. 21, D-66125 Saarbrücken, Germany",
  478.         MUIA_Application_Menustrip, Object->MN_label_0,
  479.         MUIA_Application_Base, "MUISPEAK",
  480.         MUIA_Application_Title, "MUI Speak",
  481.         MUIA_Application_Version, "$VER: MuiSpeak 0.03 (06.10.94)",
  482.         MUIA_Application_Copyright, GetMBString(MSG_AppCopyright),
  483.         MUIA_Application_Description, GetMBString(MSG_AppDescription),
  484.         SubWindow, Object->WIN_Main,
  485.         SubWindow, Object->WIN_About,
  486.     End;
  487.  
  488.  
  489.     if (!Object->App)
  490.     {
  491.         FreeVec(Object);
  492.         return(NULL);
  493.     }
  494.  
  495.     DoMethod(MN_label_0Quit,
  496.         MUIM_Notify, MUIA_Menuitem_Trigger, MUIV_EveryTime,
  497.         Object->App,
  498.         2,
  499.         MUIM_Application_ReturnID, MUIV_Application_ReturnID_Quit
  500.         );
  501.  
  502.     DoMethod(MN_label_1About,
  503.         MUIM_Notify, MUIA_Menuitem_Trigger, MUIV_EveryTime,
  504.         Object->WIN_About,
  505.         3,
  506.         MUIM_Set, MUIA_Window_Open, TRUE
  507.         );
  508.  
  509.     DoMethod(MN_label_1Quit,
  510.         MUIM_Notify, MUIA_Menuitem_Trigger, MUIV_EveryTime,
  511.         Object->App,
  512.         2,
  513.         MUIM_Application_ReturnID, MUIV_Application_ReturnID_Quit
  514.         );
  515.  
  516.     DoMethod(Object->WIN_Main,
  517.         MUIM_Notify, MUIA_Window_CloseRequest, TRUE,
  518.         Object->App,
  519.         2,
  520.         MUIM_Application_ReturnID, MUIV_Application_ReturnID_Quit
  521.         );
  522.  
  523.     DoMethod(Object->CY_SEX,
  524.         MUIM_Notify, MUIA_Cycle_Active, MUIV_EveryTime,
  525.         Object->App,
  526.         2,
  527.         MUIM_Application_ReturnID, RET_SEX
  528.         );
  529.  
  530.     DoMethod(Object->CY_KIND,
  531.         MUIM_Notify, MUIA_Cycle_Active, MUIV_EveryTime,
  532.         Object->App,
  533.         2,
  534.         MUIM_Application_ReturnID, RET_KIND
  535.         );
  536.  
  537.     DoMethod(Object->CY_OUTPUT,
  538.         MUIM_Notify, MUIA_Cycle_Active, MUIV_EveryTime,
  539.         Object->App,
  540.         2,
  541.         MUIM_Application_ReturnID, RET_OUTPUT
  542.         );
  543.  
  544.     DoMethod(Object->SL_HEIGHT,
  545.         MUIM_Notify, MUIA_Slider_Level, MUIV_EveryTime,
  546.         Object->App,
  547.         2,
  548.         MUIM_Application_ReturnID, RET_HEIGHT
  549.         );
  550.  
  551.     DoMethod(Object->SL_SPEED,
  552.         MUIM_Notify, MUIA_Slider_Level, MUIV_EveryTime,
  553.         Object->App,
  554.         2,
  555.         MUIM_Application_ReturnID, RET_SPEED
  556.         );
  557.  
  558.     DoMethod(Object->SL_VOLUME,
  559.         MUIM_Notify, MUIA_Slider_Level, MUIV_EveryTime,
  560.         Object->App,
  561.         2,
  562.         MUIM_Application_ReturnID, RET_VOLUME
  563.         );
  564.  
  565.     DoMethod(Object->SL_ENTHUSIASMUS,
  566.         MUIM_Notify, MUIA_Slider_Level, MUIV_EveryTime,
  567.         Object->App,
  568.         2,
  569.         MUIM_Application_ReturnID, RET_ENTHU
  570.         );
  571.  
  572.     DoMethod(Object->SL_PERTUBATION,
  573.         MUIM_Notify, MUIA_Slider_Level, MUIV_EveryTime,
  574.         Object->App,
  575.         2,
  576.         MUIM_Application_ReturnID, RET_PERTUB
  577.         );
  578.  
  579.     DoMethod(Object->SL_F1ADJ,
  580.         MUIM_Notify, MUIA_Slider_Level, MUIV_EveryTime,
  581.         Object->App,
  582.         2,
  583.         MUIM_Application_ReturnID, RET_F1ADJ
  584.         );
  585.  
  586.     DoMethod(Object->SL_F2ADJ,
  587.         MUIM_Notify, MUIA_Slider_Level, MUIV_EveryTime,
  588.         Object->App,
  589.         2,
  590.         MUIM_Application_ReturnID, RET_F2ADJ
  591.         );
  592.  
  593.     DoMethod(Object->SL_F3ADJ,
  594.         MUIM_Notify, MUIA_Slider_Level, MUIV_EveryTime,
  595.         Object->App,
  596.         2,
  597.         MUIM_Application_ReturnID, RET_F3ADJ
  598.         );
  599.  
  600.     DoMethod(Object->SL_A1ADJ,
  601.         MUIM_Notify, MUIA_Slider_Level, MUIV_EveryTime,
  602.         Object->App,
  603.         2,
  604.         MUIM_Application_ReturnID, RET_A1ADJ
  605.         );
  606.  
  607.     DoMethod(Object->SL_A2ADJ,
  608.         MUIM_Notify, MUIA_Slider_Level, MUIV_EveryTime,
  609.         Object->App,
  610.         2,
  611.         MUIM_Application_ReturnID, RET_A2ADJ
  612.         );
  613.  
  614.     DoMethod(Object->SL_A3ADJ,
  615.         MUIM_Notify, MUIA_Slider_Level, MUIV_EveryTime,
  616.         Object->App,
  617.         2,
  618.         MUIM_Application_ReturnID, RET_A3ADJ
  619.         );
  620.  
  621.     DoMethod(Object->SL_ARTIC,
  622.         MUIM_Notify, MUIA_Slider_Level, MUIV_EveryTime,
  623.         Object->App,
  624.         2,
  625.         MUIM_Application_ReturnID, RET_ARTIC
  626.         );
  627.  
  628.     DoMethod(Object->SL_AVBIAS,
  629.         MUIM_Notify, MUIA_Slider_Level, MUIV_EveryTime,
  630.         Object->App,
  631.         2,
  632.         MUIM_Application_ReturnID, RET_AVBIAS
  633.         );
  634.  
  635.     DoMethod(Object->SL_AFBIAS,
  636.         MUIM_Notify, MUIA_Slider_Level, MUIV_EveryTime,
  637.         Object->App,
  638.         2,
  639.         MUIM_Application_ReturnID, RET_AFBIAS
  640.         );
  641.  
  642.     DoMethod(Object->SL_CENT,
  643.         MUIM_Notify, MUIA_Slider_Level, MUIV_EveryTime,
  644.         Object->App,
  645.         2,
  646.         MUIM_Application_ReturnID, RET_CENT
  647.         );
  648.  
  649.     DoMethod(Object->STR_TEXT,
  650.         MUIM_Notify, MUIA_String_Acknowledge, MUIV_EveryTime,
  651.         Object->App,
  652.         2,
  653.         MUIM_Application_ReturnID, RET_TEXT
  654.         );
  655.  
  656.     DoMethod(Object->BT_SPEAK,
  657.         MUIM_Notify, MUIA_Pressed, TRUE,
  658.         Object->App,
  659.         2,
  660.         MUIM_Application_ReturnID, RET_SPEAK
  661.         );
  662.  
  663.     DoMethod(Object->WIN_Main,
  664.         MUIM_Window_SetCycleChain, Object->TX_label_0,
  665.         Object->CY_SEX,
  666.         Object->TX_label_1,
  667.         Object->CY_KIND,
  668.         Object->TX_label_4CC,
  669.         Object->CY_OUTPUT,
  670.         Object->TX_label_2,
  671.         Object->SL_HEIGHT,
  672.         Object->TX_label_3,
  673.         Object->SL_SPEED,
  674.         Object->TX_label_4,
  675.         Object->SL_VOLUME,
  676.         Object->TX_label_5,
  677.         Object->SL_ENTHUSIASMUS,
  678.         Object->TX_label_6,
  679.         Object->SL_PERTUBATION,
  680.         Object->TX_F1ADJ,
  681.         Object->SL_F1ADJ,
  682.         Object->TX_F2ADJ,
  683.         Object->SL_F2ADJ,
  684.         Object->TX_F3ADJ,
  685.         Object->SL_F3ADJ,
  686.         Object->TX_A1ADJ,
  687.         Object->SL_A1ADJ,
  688.         Object->TX_A2ADJ,
  689.         Object->SL_A2ADJ,
  690.         Object->TX_A3ADJ,
  691.         Object->SL_A3ADJ,
  692.         Object->TX_ARTIC,
  693.         Object->SL_ARTIC,
  694.         Object->TX_AVBIAS,
  695.         Object->SL_AVBIAS,
  696.         Object->TX_AFBIAS,
  697.         Object->SL_AFBIAS,
  698.         Object->TX_CENT,
  699.         Object->SL_CENT,
  700.         Object->STR_TEXT,
  701.         Object->TX_PHONEME,
  702.         Object->BT_SPEAK,
  703.         0
  704.         );
  705.  
  706.     DoMethod(Object->WIN_About,
  707.         MUIM_Notify, MUIA_Window_CloseRequest, TRUE,
  708.         Object->WIN_About,
  709.         3,
  710.         MUIM_Set, MUIA_Window_Open, FALSE
  711.         );
  712.  
  713.     DoMethod(Object->BT_OK,
  714.         MUIM_Notify, MUIA_Pressed, TRUE,
  715.         Object->WIN_About,
  716.         3,
  717.         MUIM_Set, MUIA_Window_Open, FALSE
  718.         );
  719.  
  720.     DoMethod(Object->WIN_About,
  721.         MUIM_Window_SetCycleChain, Object->TX_label_7,
  722.         Object->BT_OK,
  723.         0
  724.         );
  725.  
  726.     set(Object->WIN_Main,
  727.         MUIA_Window_Open, TRUE
  728.         );
  729.  
  730.  
  731.     return(Object);
  732. }
  733.  
  734. void DisposeApp(struct ObjApp * Object)
  735. {
  736.     MUI_DisposeObject(Object->App);
  737.     FreeVec(Object);
  738. }
  739.