⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 renamecditem.java

📁 CD Manager光盘资料管家婆源代码
💻 JAVA
字号:
package com.galaxyworkstation.view;

import org.eclipse.swt.*;
import org.eclipse.swt.widgets.*;
import org.eclipse.swt.custom.TreeEditor;
import org.eclipse.swt.events.*;

import com.galaxyworkstation.control.CDManager;


public class RenameCDItem implements TheObject{
	private Tree tree; 
	public void setObject(Object object){
		this.tree = (Tree)object;
	}
	public void initial(){
		final TreeEditor treeEditor = new TreeEditor(tree);
		treeEditor.horizontalAlignment = SWT.LEFT;
		treeEditor.grabHorizontal = true;
		Control oldTreeEditor = treeEditor.getEditor();
		if(oldTreeEditor != null) oldTreeEditor.dispose();
		final TreeItem item = (TreeItem)tree.getSelection()[0];
		if(item == null) return;
		if(item == tree.getItem(0)) return;
		final Text newTreeEditor = new Text(tree,SWT.BORDER);
		final String originText = item.getText();  
		newTreeEditor.setText(originText);
		newTreeEditor.selectAll();
		treeEditor.setEditor(newTreeEditor,item);
		newTreeEditor.setFocus();
		newTreeEditor.addModifyListener(new ModifyListener(){
			public void modifyText(ModifyEvent event){
				if(treeEditor.getItem().isDisposed()){
					newTreeEditor.dispose();
					return;
				}
				final Text text = (Text)treeEditor.getEditor();
				treeEditor.getItem().setText(text.getText());
				newTreeEditor.addKeyListener(new KeyAdapter(){
					public void keyPressed(KeyEvent e){
						if(e.keyCode == 13){
							CDManager.action.renameCD(MainGUI.CDMap.get(item), treeEditor.getItem().getText());
							e.widget.dispose();
						}
						if(e.character == SWT.ESC){
							treeEditor.getItem().setText(originText);
							CDManager.action.renameCD(MainGUI.CDMap.get(item), treeEditor.getItem().getText());
							e.widget.dispose();
						}
					}
				});
			}
		});
		newTreeEditor.addFocusListener(new FocusAdapter(){
			public void focusLost(FocusEvent e){
				CDManager.action.renameCD(MainGUI.CDMap.get(item), treeEditor.getItem().getText());
				
				e.widget.dispose();
			}
		});
		newTreeEditor.addKeyListener(new KeyAdapter(){
			public void keyPressed(KeyEvent e){
				if(e.keyCode == 13){
					CDManager.action.renameCD(MainGUI.CDMap.get(item), treeEditor.getItem().getText());
					
					e.widget.dispose();
				}
				if(e.character == SWT.ESC){
					CDManager.action.renameCD(MainGUI.CDMap.get(item), treeEditor.getItem().getText());
					
					e.widget.dispose();
				}
			}
		});
		tree.addMouseListener(new MouseAdapter(){
			public void mouseDown(MouseEvent e){
				if(e.button != 1){
					CDManager.action.renameCD(MainGUI.CDMap.get(item), treeEditor.getItem().getText());
					newTreeEditor.dispose();
				}
			}
		});
	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -