KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > wings > plaf > css > msie > TreeCG


1 /*
2  * $Id: TreeCG.java,v 1.3 2005/06/07 12:55:59 neurolabs Exp $
3  * Copyright 2000,2005 wingS development team.
4  *
5  * This file is part of wingS (http://www.j-wings.org).
6  *
7  * wingS is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU Lesser General Public License
9  * as published by the Free Software Foundation; either version 2.1
10  * of the License, or (at your option) any later version.
11  *
12  * Please see COPYING for the complete licence.
13  */

14 package org.wings.plaf.css.msie;
15
16 import java.io.IOException JavaDoc;
17
18 import org.wings.RequestURL;
19 import org.wings.SComponent;
20 import org.wings.SConstants;
21 import org.wings.SFrame;
22 import org.wings.STree;
23 import org.wings.event.SParentFrameEvent;
24 import org.wings.event.SParentFrameListener;
25 import org.wings.externalizer.ExternalizeManager;
26 import org.wings.header.Script;
27 import org.wings.io.Device;
28 import org.wings.plaf.css.Utils;
29 import org.wings.resource.ClasspathResource;
30 import org.wings.resource.DefaultURLResource;
31 import org.wings.session.SessionManager;
32
33 /**
34  * @author ole
35  *
36  */

37 public class TreeCG extends org.wings.plaf.css.TreeCG implements SParentFrameListener {
38     private static final String JavaDoc FORMS_JS = (String JavaDoc) SessionManager
39     .getSession().getCGManager().getObject("JScripts.form",
40             String JavaDoc.class);
41
42
43     protected void writeButtonStart(STree component, Device device, String JavaDoc value) throws IOException JavaDoc {
44         device.print("<button onclick=\"addHiddenField(this.form,'");
45         device.print(component.getParentFrame().getEventEpoch());
46         device.print(SConstants.UID_DIVIDER);
47         device.print(SConstants.IEFIX_BUTTONACTION);
48         device.print("','");
49         device.print(component.getName());
50         device.print(SConstants.UID_DIVIDER);
51         device.print(value);
52         device.print("')\"");
53     }
54
55     public void installCG(SComponent component) {
56         super.installCG(component);
57         component.addParentFrameListener(this);
58     }
59
60     public void parentFrameAdded(SParentFrameEvent e) {
61         SFrame parentFrame = e.getParentFrame();
62         ClasspathResource res = new ClasspathResource(FORMS_JS, "text/javascript");
63         String JavaDoc jScriptUrl = SessionManager.getSession().getExternalizeManager().externalize(res, ExternalizeManager.GLOBAL);
64         parentFrame.addHeader(new Script("text/javascript", new DefaultURLResource(jScriptUrl)));
65     }
66
67     public void parentFrameRemoved(SParentFrameEvent e) {
68     }
69
70     protected void writeLinkStart(Device device, RequestURL selectionAddr) throws IOException JavaDoc {
71         device.print("<a onclick=\"javascript:location.href='");
72         Utils.write(device, selectionAddr.toString());
73         device.print("';\"");
74     }
75 }
76
Popular Tags