在Eclipse中创建新的重构功能 - 编程入门网
TimeOut = new Text(composite, SWT.SINGLE | SWT.BORDER);
GridData gdTxtTimeOut = new GridData();
gdTxtTimeOut.horizontalAlignment = GridData.END;
gdLabName.grabExcessHorizontalSpace = true;
txtTimeOut.setLayoutData(gdTxtTimeOut);
txtTimeOut.setText("500");
// init status
labName.setEnabled(false);
txtTimeOut.setEnabled(false);
// add listener
defineListener();
// 将composite纳入框架的控制
setControl(composite);
Dialog.applyDialogFont(composite);
}
在Eclipse中创建新的重构功能(9)时间:2010-12-02 IBM 志甘 春郭迎 林刘岳在这里我们要特别注意的一点是在定义完我们的界面元素后,需要将自定义 的Composite纳入框架的控制,就是这行代码:"setControl(composite);" 在我们处理完输入数据检查后进入下一页面之前,我们需要设置页面完成的 状态,以及传递输入数据到领域类Refactoring。我们用以下代码设置好页面完 成的状态后,下个页面ErrorWizardPage就会处理显示逻辑: 清单 15
传递输入数据通过以下代码来处理: 清单 16
其中getRefactoring()方法是继承自RefactoringWizardPage的方法,由于我 们的RefactoringWizard类装载了RefactoringWizardPage和Refactoring类,这 个方法是从RefactoringWizard类中获得的,这里面用到了 Observer设计模式。 至此,我们完成RefactoringWizardPage的扩展。 第二步,扩展 RefactoringWizard:首先我们新建一个类 AnnotationRefactoringWizard,它需要继承 RefactoringWizard类,这个类中 我们只需要加载定义好的AnnotationRefactoringWizardPage类和 AnnotationRefactoring类,当然复杂的处理已经有RefactoringWizard框架处理 好了。下面我们在构造函数中加载 Refactoring类: 清单 17
然后我们加载我们的AnnotationRefactoringWizardPage类,只需重载父类 RefactoringWizard的addUserInputPages()方法就可以: 清单 18
第三步,启动RefactoringWizard。扩展好RefactoringWizard之后,就需要 在用户点击菜单项或是按钮时弹出这个对话框。RefactoringWizard最好使用 RefactoringWizardOpenOperation类来打开(当然也可以用 RefactoringWizardDialog)。RefactoringWizardOpenOperation首先进行重构的 初始检查,通过后才打开RefactoringWinzard对话框,否则就会打开错误对话框 。前面完成创建插件工程时我们提到,弹出RefactoringWizard对话框的代码应 该放到响应菜单操作的类的run函数中。具体到本文工程中,就是把下面的代码 放到AnnotationManageAction的run函数中。这些代码首先依次构造Refactoring 和RefacoringWizard子类AnnotationRefactoring和 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |