-
public interface IIOParamController
要由可以通过放置GUI以从用户获取值或通过其他方式确定IIOParam
对象的设置的对象来实现的接口。 此接口仅指定调用控制器的通用activate
方法,而不考虑控制器如何获取值( 即 ,控制器是否放置GUI或仅计算一组值与此接口无关)。在
activate
方法中,控制器通过查询IIOParam
对象的get
方法来获取初始值,通过任何方式修改值,然后调用IIOParam
对象的set
方法来修改适当的设置。 通常,这些set
方法将在最终提交时一次被调用,以便取消操作不会干扰现有值。 一般来说,应用程序可能期望当activate
方法返回true
,IIOParam
对象可以在读或写操作中使用。供应商可以选择为其为特定插件定义的
IIOParam
子类提供GUI。 这些可以在对应的IIOParam
子类中设置为默认控制器。应用程序可以覆盖任何默认GUI,并提供自己的控制器嵌入到自己的框架中。 所需要的是,
activate
方法以模态方式运行(直到取消或提交之前才返回),尽管它不需要显式地显示模态对话框。 这种非模态GUI组件将大致如下编码:class MyGUI extends SomeComponent implements IIOParamController { public MyGUI() { // ... setEnabled(false); } public boolean activate(IIOParam param) { // disable other components if desired setEnabled(true); // go to sleep until either cancelled or committed boolean ret = false; if (!cancelled) { // set values on param ret = true; } setEnabled(false); // enable any components disabled above return ret; }
或者,诸如数据库查找或命令行解析的算法过程可以用作控制器,在这种情况下,
activate
方法将简单地查找或计算设置,调用IIOParam.setXXX
方法,并返回true
。
-
-
方法详细信息
-
activate
boolean activate(IIOParam param)
激活控制器。 如果true
返回,在所有设置IIOParam
对象应该是准备在读或写操作使用。 如果false
返回,在没有设置IIOParam
对象会被干扰( 也就是说 ,用户取消了该操作)。- 参数
-
param
- 要修改的IIOParam
对象。 - 结果
-
true
如果IIOParam
已被修改,否则为false
。 - 异常
-
IllegalArgumentException
- ifparam
isnull
or is not an instance of the correct class.
-
-