package eclipse_system_class;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.MouseAdapter;
import org.eclipse.swt.events.MouseEvent;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.ui.IMemento;
import org.eclipse.ui.IViewSite;
import org.eclipse.ui.PartInitException;
import org.eclipse.ui.help.WorkbenchHelp;
import org.eclipse.ui.part.ViewPart;
import eclipse_system_class.usecase.BusyIndicatorUseCase;
import eclipse_system_class.usecase.DisplayUseCase;
import eclipse_system_class.usecase.FileLocatorUseCase;
import eclipse_system_class.usecase.IDialogSettingsUseCase;
import eclipse_system_class.usecase.MessageDialogWithToggleUseCase;
import eclipse_system_class.usecase.PerferencesUtilUseCase;
import eclipse_system_class.usecase.SafeRunnerUseCase;
import eclipse_system_class.usecase.WorkbenchHelpUseCase;
public class View extends ViewPart {
public static final String ID = "eclipse_system_class.view";
private Composite com = null;
private Button safeRunnerBtn = null;
private Button busyIndicatorBtn = null;
private Button perferencesUtilBtn = null;
private Button iDialogSettingsBtn = null;
private Button fileLocatorBtn = null;
private Button workbenchHelpBtn = null;
private Button messageDialogWithToggleBtn = null;
private Button displayBtn = null;
public void createPartControl(Composite parent) {
com = new Composite(parent, SWT.NONE);
com.setLayout(new GridLayout(1, true));
safeRunnerBtn = new Button(com, SWT.NONE);
safeRunnerBtn.setText("SafeRunner");
safeRunnerBtn.addMouseListener(new MouseAdapter() {
@Override
public void mouseDown(MouseEvent e) {
SafeRunnerUseCase.handleClick();
}
});
busyIndicatorBtn = new Button(com, SWT.NONE);
busyIndicatorBtn.setText("BusyIndicator");
busyIndicatorBtn.addMouseListener(new MouseAdapter() {
@Override
public void mouseDown(MouseEvent e) {
BusyIndicatorUseCase.handleClick(busyIndicatorBtn);
}
});
perferencesUtilBtn = new Button(com, SWT.NONE);
perferencesUtilBtn.setText("PerferencesUtil");
perferencesUtilBtn.addMouseListener(new MouseAdapter() {
@Override
public void mouseDown(MouseEvent e) {
PerferencesUtilUseCase.handleClick();
}
});
iDialogSettingsBtn = new Button(com, SWT.NONE);
iDialogSettingsBtn.setText("IDialogSettings");
iDialogSettingsBtn.addMouseListener(new MouseAdapter() {
@Override
public void mouseDown(MouseEvent e) {
IDialogSettingsUseCase.handleClick();
}
});
fileLocatorBtn = new Button(com, SWT.NONE);
fileLocatorBtn.setText("FileLocator");
fileLocatorBtn.addMouseListener(new MouseAdapter() {
@Override
public void mouseDown(MouseEvent e) {
FileLocatorUseCase.handleClick();
}
});
workbenchHelpBtn = new Button(com, SWT.NONE);
workbenchHelpBtn.setText("WorkbenchHelp");
WorkbenchHelp.setHelp(com, "eclipse_system_class.contexthelp");
workbenchHelpBtn.addMouseListener(new MouseAdapter() {
@Override
public void mouseDown(MouseEvent e) {
WorkbenchHelpUseCase.handleClick(workbenchHelpBtn);
}
});
messageDialogWithToggleBtn = new Button(com, SWT.NONE);
messageDialogWithToggleBtn.setText("MessageDialogWithToggle");
messageDialogWithToggleBtn.addMouseListener(new MouseAdapter() {
@Override
public void mouseDown(MouseEvent e) {
MessageDialogWithToggleUseCase.handleClick();
}
});
displayBtn = new Button(com, SWT.NONE);
displayBtn.setText("Display");
displayBtn.addMouseListener(new MouseAdapter() {
@Override
public void mouseDown(MouseEvent e) {
DisplayUseCase.handleClick(getSite().getShell().getDisplay(), displayBtn);
}
});
}
// init 和 saveState 看文章:http://www.eclipse.org/articles/viewArticle/ViewArticle2.html
public void init(IViewSite site, IMemento memento) throws PartInitException
{
super.init(site, memento);
if (memento != null){
String initData = memento.getString("initdata");
//每一次打开都会获得这个initData.
}
}
public void saveState(IMemento memento) {
//改变状态的话,就在关闭的时候存储到IMemento中
if (memento != null){
memento.putString("initdata", "IMemento init");
}
}
public void setFocus() {
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
为 RCP 提供捷径的实用 Eclipse 系统类
共58个文件
class:30个
java:16个
xml:2个
5星 · 超过95%的资源 需积分: 10 15 下载量 131 浏览量
2011-08-10
07:30:50
上传
评论
收藏 35KB RAR 举报
温馨提示
Eclipse 提供了 RCP 应用开发的内核,本身已经提供了许多有用的类,熟悉并且使用这些类,不仅可以减少代码量的开发,还可以提高代码的健壮性。既然 RCP 运行于 Eclipse 内核之上,就应该尽量多的使用系统自带的类。如 SafeRunner 提供了异常记入日志的功能、BusyIndicator 可以屏蔽鼠标事件,使得当前程序专注于处理一件事,而不使程序出现死的状态,鼠标变为漏斗状。本文尽可能详细的介绍这些类,用示例代码展示它们的用法,相信读者可以从本文掌握它们的使用技巧。 LINK:http://www.ibm.com/developerworks/cn/opensource/os-cn-ecl-rcpclass/
资源推荐
资源详情
资源评论
收起资源包目录
eclipse-system-class.rar (58个子文件)
eclipse-system-class
icons
alt_window_32.gif 1KB
alt_window_16.gif 637B
.project 681B
bin
eclipse_system_class
View$8.class 1KB
View$1.class 802B
Perspective.class 846B
ApplicationActionBarAdvisor.class 2KB
View.class 3KB
View$5.class 803B
ApplicationWorkbenchAdvisor.class 1016B
usecase
IDialogSettingsUseCase.class 2KB
SafeRunnerUseCase$1.class 1KB
DisplayUseCase$2.class 778B
PerferencesUtilUseCase.class 814B
FileLocatorUseCase.class 2KB
BusyIndicatorUseCase$SleepThread.class 697B
BusyIndicatorUseCase.class 982B
DisplayUseCase.class 2KB
DisplayUseCase$1.class 894B
WorkbenchHelpUseCase.class 640B
MessageDialogWithToggleUseCase.class 1KB
DisplayUseCase$3.class 780B
SafeRunnerUseCase.class 784B
View$3.class 807B
Application$1.class 985B
Application.class 2KB
View$6.class 935B
View$4.class 807B
View$2.class 935B
View$7.class 815B
Activator.class 1KB
ApplicationWorkbenchWindowAdvisor.class 1KB
TestPreferenceUtil.class 360B
.settings
org.eclipse.jdt.core.prefs 395B
META-INF
MANIFEST.MF 494B
eclipsesysclass.product 3KB
src
eclipse_system_class
ApplicationWorkbenchAdvisor.java 605B
View.java 4KB
Application.java 1KB
Activator.java 1KB
usecase
BusyIndicatorUseCase.java 604B
MessageDialogWithToggleUseCase.java 823B
DisplayUseCase.java 2KB
SafeRunnerUseCase.java 659B
WorkbenchHelpUseCase.java 298B
PerferencesUtilUseCase.java 401B
IDialogSettingsUseCase.java 1KB
FileLocatorUseCase.java 1KB
ApplicationWorkbenchWindowAdvisor.java 901B
Perspective.java 423B
TestPreferenceUtil.java 173B
ApplicationActionBarAdvisor.java 2KB
context.xml 230B
topic.html 16B
.classpath 376B
plugin.xml 2KB
fileLocator.properties 30B
build.properties 109B
共 58 条
- 1
资源评论
- vic3492139102013-05-10是ibm网站上的一个文章
txplp
- 粉丝: 3
- 资源: 7
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功