Secure Global Desktop 管理者ガイド
> アプレット
> registerProperty (X エミュレータアプレット)
void registerProperty(window, property)
The registerProperty method registers an interest a particular X property. You'll need to use this method if you want to use getProperty to retrieve a property's value.
window is the name of the X window whose properties you're interested in. (This name is contained in the X window's WM_NAME X property.) Use an empty string ("") to specify the root window.
property is the name of the X property you want to register. For example, the WM_COMMAND X property contains the command used to start the application that the X window is displaying.
If you're using X properties to communicate between an application and the client device, you'll probably need to write code to run on the client which "polls" a particular X property periodically. In this case, your code will call the getProperty method frequently. Thus, it's important that the getProperty method should not be a slow operation.
Registering properties lets Secure Global Desktop cache these properties' value on the client device. These cached values are updated whenever the corresponding X properties change. The getProperty method can now use the cached value rather than querying the application itself -- a much faster operation.
注 If you use the getProperty method to retrieve a property's value without first registering it, getProperty returns null. You don't need to register an X property in order to change its value with the setProperty method.
Once you've finished with a particular X property, you can use the unregisterProperty to tell Secure Global Desktop to stop checking for changes in that particular property. This helps keep performance overheads to a minimum.
<SCRIPT LANGUAGE="JavaScript"> function register() { // Register an interest in the X property WM_COMMAND var XEmulatorApplet = document.applets["Tarantella X Emulator"]; XEmulatorApplet.registerProperty("xterm", "WM_COMMAND"); } function unregister() { // Unregister the X property WM_COMMAND var XEmulatorApplet = document.applets["Tarantella X Emulator"]; XEmulatorApplet.unregisterProperty("xterm", "WM_COMMAND"); } function showProperty() { var XEmulatorApplet = document.applets["Tarantella X Emulator"]; var value = null; // Retrieve the value of the X property WM_COMMAND value = XEmulatorApplet.getProperty("xterm", "WM_COMMAND"); // If WM_COMMAND is set, display it value. Otherwise, display an // error message. if (value != null) { alert("The X property WM_COMMAND has the value " + value); } else { alert("Couldn't access the X property WM_COMMAND"); } } </SCRIPT> <FORM> <INPUT TYPE=button VALUE="Register" onclick="register()"> <INPUT TYPE=button VALUE="Get Property Value" onclick="showProperty()"> <INPUT TYPE=button VALUE="Unregister" onclick="unregister()"> </FORM>
This example adds three buttons beneath the X emulator applet:
WM_COMMAND for the window xterm when a user clicks it.
WM_COMMAND when a user clicks it, if the property is currently registered. Otherwise, it displays an error message.
注 This example assumes the window name is xterm. You will need to change the code if you're using a different window name.
Add the code to the HTML document containing the X emulator applet (xde.html, in the sco/tta/standard webtop theme), after the TTAAPPLET declaration.
Copyright © 1997-2006 Sun Microsystems, Inc. All rights reserved.