Project

General

Profile

Radio2.java

Igor Skornyakov, 02/05/2015 03:06 PM

Download (5.63 KB)

 
1
package com.goldencode.testcases.list_widgets;
2

    
3
import com.goldencode.p2j.util.*;
4
import com.goldencode.testcases.ui.list_widgets.*;
5
import com.goldencode.p2j.ui.*;
6

    
7
import static com.goldencode.p2j.util.BlockManager.*;
8
import static com.goldencode.p2j.ui.LogicalTerminal.*;
9
import static com.goldencode.p2j.util.SelfManager.*;
10

    
11
/**
12
 * Business logic (converted to Java from the 4GL source code
13
 * in list_widgets/radio2.p).
14
 */
15
public class Radio2
16
{
17
   public static final String FMT_STR_1 = "x(50)";
18

    
19
   Radio2Fitem fitemFrame = GenericFrame.createFrame(Radio2Fitem.class, "fitem");
20

    
21
   Radio2Z zFrame = GenericFrame.createFrame(Radio2Z.class, "z");
22

    
23
   Radio2Y yFrame = GenericFrame.createFrame(Radio2Y.class, "y");
24

    
25
   Radio2C cFrame = GenericFrame.createFrame(Radio2C.class, "c");
26

    
27
   Radio2B bFrame = GenericFrame.createFrame(Radio2B.class, "b");
28

    
29
   Radio2F fFrame = GenericFrame.createFrame(Radio2F.class, "f");
30

    
31
   character choice = new character("");
32

    
33
   character items = new character("");
34

    
35
   logical rc = new logical(false);
36

    
37
   character aitem = new character("");
38

    
39
   character aval = new character("");
40

    
41
   character fitem = new character("");
42

    
43
   character fval = new character("");
44

    
45
   handle hRs = new handle();
46

    
47
   /**
48
    * External procedure (converted to Java from the 4GL source code
49
    * in list_widgets/radio2.p).
50
    */
51
   public void execute()
52
   {
53
      externalProcedure(new Block()
54
      {
55
         public void body()
56
         {
57
            yFrame.openScope();
58
            zFrame.openScope();
59
            fFrame.openScope();
60
            cFrame.openScope();
61
            fitemFrame.openScope();
62
            ControlFlowOps.invoke("P_Create_RS");
63
            
64
            bFrame.enable();
65
            
66
            FrameElement[] elementList0 = new FrameElement[]
67
            {
68
               new WidgetElement(yFrame.widgetItems())
69
            };
70
            
71
            yFrame.enable(elementList0);
72
            
73
            FrameElement[] elementList1 = new FrameElement[]
74
            {
75
               new WidgetElement(zFrame.widgetAitem()),
76
               new WidgetElement(zFrame.widgetAval())
77
            };
78
            
79
            zFrame.enable(elementList1);
80
            
81
            FrameElement[] elementList2 = new FrameElement[]
82
            {
83
               new WidgetElement(fFrame.widgetFitem()),
84
               new WidgetElement(fFrame.widgetFval())
85
            };
86
            
87
            fFrame.enable(elementList2);
88
            
89
            EventList list0 = new EventList();
90
            list0.addEvent("VALUE-CHANGED", hRs);
91
            registerTrigger(list0, TriggerBlock0.class, Radio2.this);
92
            EventList list1 = new EventList();
93
            list1.addEvent("RETURN", yFrame.widgetItems());
94
            registerTrigger(list1, TriggerBlock1.class, Radio2.this);
95
            EventList list2 = new EventList();
96
            list2.addEvent("RETURN", zFrame.widgetAval());
97
            registerTrigger(list2, TriggerBlock2.class, Radio2.this);
98
            EventList list3 = new EventList();
99
            list3.addEvent("RETURN", fFrame.widgetFval());
100
            registerTrigger(list3, TriggerBlock3.class, Radio2.this);
101
            EventList list4 = new EventList();
102
            list4.addEvent("WINDOW-CLOSE", currentWindow());
103
            LogicalTerminal.waitFor(null, list4);
104
         }
105
      });
106
   }
107

    
108
   public void pCreateRs()
109
   {
110
      internalProcedure(new Block()
111
      {
112
         public void body()
113
         {
114
            DynamicWidgetFactory.createRadioSet(hRs);
115
            hRs.unwrapSizeable().setHeightChars(new integer(1));
116
            hRs.unwrapSizeable().setWidthChars(new decimal(10.0));
117
            hRs.unwrapWidget().setFrameHandle(bFrame.asWidget());
118
            hRs.unwrapWidget().setBgColor(new integer(8));
119
            hRs.unwrapControlEntity().setAutoResize(new logical(true));
120
            hRs.unwrapWidget().addLast("Item 1", "1");
121
            hRs.unwrapWidget().addLast("Item 2", "2");
122
            hRs.unwrapWidget().addLast("Item 3", "3");
123
         }
124
      });
125
   }
126

    
127
   public class TriggerBlock0
128
   extends Trigger
129
   {
130
      public void body()
131
      {
132
         choice.assign(self().unwrapWidget().getScreenValue());
133
         
134
         FrameElement[] elementList3 = new FrameElement[]
135
         {
136
            new Element(choice, cFrame.widgetChoice())
137
         };
138
         
139
         cFrame.display(elementList3);
140
      }
141
   }
142

    
143
   public class TriggerBlock1
144
   extends Trigger
145
   {
146
      public void body()
147
      {
148
         yFrame.assignScreenValue(new Element(items, yFrame.widgetItems()));
149
         messageBox(items, ALERT_INFO, BTN_OK, (String) null);
150
         rc.assign(hRs.unwrapWidget().delete(items));
151
         messageBox(rc, ALERT_INFO, BTN_OK, (String) null);
152
      }
153
   }
154

    
155
   public class TriggerBlock2
156
   extends Trigger
157
   {
158
      public void body()
159
      {
160
         zFrame.assignScreenValue(new Element(aitem, zFrame.widgetAitem()));
161
         zFrame.assignScreenValue(new Element(aval, zFrame.widgetAval()));
162
         messageBox(new Object[]
163
         {
164
            aitem,
165
            aval
166
         }, ALERT_INFO, BTN_OK, (String) null);
167
         rc.assign(hRs.unwrapWidget().addLast(aitem, aval));
168
         messageBox(rc, ALERT_INFO, BTN_OK, (String) null);
169
      }
170
   }
171

    
172
   public class TriggerBlock3
173
   extends Trigger
174
   {
175
      public void body()
176
      {
177
         fFrame.assignScreenValue(new Element(fitem, fFrame.widgetFitem()));
178
         fFrame.assignScreenValue(new Element(fval, fFrame.widgetFval()));
179
         messageBox(new Object[]
180
         {
181
            fitem,
182
            fval
183
         }, ALERT_INFO, BTN_OK, (String) null);
184
         rc.assign(hRs.unwrapWidget().addFirst(fitem, fval));
185
         messageBox(rc, ALERT_INFO, BTN_OK, (String) null);
186
      }
187
   }
188
}