01: package com.xoetrope.carousel.testpilot;
02:
03: import java.awt.event.KeyEvent;
04:
05: import net.xoetrope.swing.XButton;
06: import net.xoetrope.swing.XLabel;
07: import net.xoetrope.swing.XTextArea;
08: import net.xoetrope.builder.helper.XTableModelHelper;
09: import net.xoetrope.xui.XPage;
10: import net.xoetrope.xui.XPageManager;
11: import net.xoetrope.xui.XProjectManager;
12: import net.xoetrope.xui.data.XBaseModel;
13: import net.xoetrope.xui.data.XModel;
14: import netscape.javascript.JSObject;
15:
16: /**
17: * Support for ???
18: * <p> Copyright (c) Xoetrope Ltd., 2001-2006, This software is licensed under
19: * the GNU Public License (GPL), please see license.txt for more details. If
20: * you make commercial use of this software you must purchase a commercial
21: * license from Xoetrope.</p>
22: * <p> $Revision: 1.2 $</p>
23: */
24: public class Assert extends XPage {
25: XLabel lblCtlName;
26: XButton btnLocate;
27: XTextArea txtValue;
28: String targetFrame;
29:
30: public void pageCreated() {
31: lblCtlName = (XLabel) this .findComponent("lblCtlName");
32: btnLocate = (XButton) this .findComponent("btnLocate");
33: txtValue = (XTextArea) this .findComponent("txtValue");
34: getEventHandler().addHandler(this , btnLocate, "KeyHandler",
35: "catchKey");
36: }
37:
38: public void catchKey() {
39: KeyEvent evt = (KeyEvent) getCurrentEvent();
40: if ((evt.getKeyCode() == 10 || evt.getKeyCode() == 32)
41: && (btnLocate.getText().compareTo("Use") == 0)) {
42: useCtl();
43: }
44: }
45:
46: public void setAssertControl(String name, String value, String frame) {
47: lblCtlName.setText(name);
48: txtValue.setText(value);
49: targetFrame = frame;
50: }
51:
52: private void useCtl() {
53: btnLocate.setText("Locate");
54: // XModel evtModel = (XModel)currentProject.getModel().pull("events/items");
55: XModel evtModel = (XModel) project.getModel().get(
56: "events/items");
57: XBaseModel rowdata = (XBaseModel) XTableModelHelper
58: .addRow(evtModel);
59: XTableModelHelper.addData(rowdata, "event", "assert");
60: XTableModelHelper.addData(rowdata, "Control", lblCtlName
61: .getText());
62: XTableModelHelper.addData(rowdata, "Value", txtValue.getText());
63: XTableModelHelper.addData(rowdata, "cmd", "assert");
64: XTableModelHelper.addData(rowdata, "hash", "");
65: XTableModelHelper.addData(rowdata, "tag", "");
66: XTableModelHelper.addData(rowdata, "frame", targetFrame);
67: JSObject js = JSObject.getWindow(UnitApplet.getApplet());
68: js.eval("moniterAssertControl( false );");
69: }
70:
71: public void locateControl() {
72: if (wasMouseClicked()) {
73: if (btnLocate.getText().compareTo("Locate") == 0) {
74: JSObject js = JSObject
75: .getWindow(UnitApplet.getApplet());
76: js.eval("moniterAssertControl( true );");
77: btnLocate.setText("Use");
78: } else if (btnLocate.getText().compareTo("Use") == 0) {
79: useCtl();
80: }
81: }
82: }
83:
84: public void close() {
85: if (wasMouseClicked())
86: project.getPageManager().showPrevious();
87: }
88: }
|