📄 view1.java
字号:
package cn.com.chengang;
import org.eclipse.jface.action.IMenuManager;
import org.eclipse.jface.action.MenuManager;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.MouseAdapter;
import org.eclipse.swt.events.MouseEvent;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.events.SelectionListener;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.List;
import org.eclipse.swt.widgets.Menu;
import org.eclipse.swt.widgets.Text;
import org.eclipse.ui.IActionBars;
import org.eclipse.ui.IEditorInput;
import org.eclipse.ui.IEditorPart;
import org.eclipse.ui.IViewPart;
import org.eclipse.ui.IWorkbenchPage;
import org.eclipse.ui.PartInitException;
import org.eclipse.ui.part.ViewPart;
public class View1 extends ViewPart {
private List list;
@Override
public void createPartControl(Composite parent) {
Composite topComp=new Composite(parent, SWT.NONE);
topComp.setLayout(new FillLayout());
list=new List(topComp, SWT.BORDER);
list.add("China");
list.add("USA");
list.add("France");
list.addSelectionListener(new SelectionListener(){
public void widgetDefaultSelected(SelectionEvent e) {
}
public void widgetSelected(SelectionEvent e) {
IWorkbenchPage wbp=getViewSite().getPage();
IViewPart view2=wbp.findView("cn.com.chengang.View2");
System.out.println("view2 is:"+view2);
Text text=((View2)view2).getText();
System.out.println("text is:"+text);
System.out.println("list.getSelection()[0] is:"+list.getSelection()[0]);
text.setText(list.getSelection()[0]);
}
});
list.addMouseListener(new MouseAdapter(){
ChinaEditorInput chinaEditorInput=new ChinaEditorInput();
public void mouseDoubleClick(MouseEvent e){
List list = (List)e.getSource();
String listStr=list.getSelection()[0];
IEditorInput editorInput=null;
String editorID=null;
if (listStr.equals("China")){
editorInput=chinaEditorInput;
editorID="cn.com.chengang.ChinaEditor";
}
if (editorInput == null || editorID ==null)
return;
IWorkbenchPage workbenchPage = getViewSite().getPage();
IEditorPart editor = workbenchPage.findEditor(editorInput);
if (editor != null){
workbenchPage.bringToTop(editor);
}else{
try{
workbenchPage.openEditor(editorInput, editorID);
}catch (PartInitException e2){
e2.printStackTrace();
}
}
}
});
MyActionGroup actionGroup = new MyActionGroup();
fillViewAction(actionGroup);
//fillViewMenu(actionGroup);
fillListMenu(actionGroup);
}
private void fillViewAction(MyActionGroup actionGroup){
IActionBars bars = getViewSite().getActionBars();
actionGroup.fillActionBars(bars);
}
private void fillViewMenu(MyActionGroup actionGroup){
IMenuManager menu = getViewSite().getActionBars().getMenuManager();
actionGroup.fillContextMenu(menu);
}
private void fillListMenu(MyActionGroup actionGroup){
MenuManager menu1 = new MenuManager();
Menu m = menu1.createContextMenu(list);
list.setMenu(m);
actionGroup.fillContextMenu(menu1);
}
@Override
public void setFocus() {
// TODO Auto-generated method stub
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -