亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? editor.java

?? AJAX_aptana_update 關于AJAX的Eclipse插件。可以在這里下載的
?? JAVA
字號:
/** * Copyright (c) 2005-2006 Aptana, Inc. * * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html. If redistributing this code, * this entire header must remain intact. */package org.eclipse.eclipsemonkey.lang.javascript.doms.editors;import org.eclipse.eclipsemonkey.lang.javascript.events.EventTarget;import org.eclipse.eclipsemonkey.utils.StringUtils;import org.eclipse.jface.text.BadLocationException;import org.eclipse.jface.text.DocumentRewriteSession;import org.eclipse.jface.text.DocumentRewriteSessionType;import org.eclipse.jface.text.IDocument;import org.eclipse.jface.text.IDocumentExtension4;import org.eclipse.jface.text.ITextSelection;import org.eclipse.jface.text.TextSelection;import org.eclipse.swt.widgets.Display;import org.eclipse.ui.IEditorPart;import org.eclipse.ui.IWorkbench;import org.eclipse.ui.PlatformUI;import org.eclipse.ui.texteditor.IDocumentProvider;import org.eclipse.ui.texteditor.ITextEditor;import org.mozilla.javascript.Context;import org.mozilla.javascript.Scriptable;/** * @author Kevin Lindsey, Paul Colton (Aptana, Inc.) */public class Editor extends EventTarget{	/*	 * Fields	 */	private static final long serialVersionUID = 2489151579665730844L;	private IEditorPart _editor;	private DocumentRewriteSession _key;	/*	 * Properties	 */	/**	 * @see org.mozilla.javascript.ScriptableObject#getClassName()	 */	public String getClassName()	{		return "Editor";	}	/**	 * getDocument	 * 	 * @return IDocument	 */	private IDocument getDocument()	{		ITextEditor editor = getTextEditor();		IDocumentProvider dp = editor.getDocumentProvider();		IDocument doc = dp.getDocument(editor.getEditorInput());		return doc;	}	/**	 * Get the editor	 * 	 * @return editor	 */	public ITextEditor getTextEditor()	{		IEditorPart part = this._editor;		ITextEditor result = null;		if (part instanceof ITextEditor)		{			result = (ITextEditor) part;		}		return result;	}		/*	 * Constructors	 */	/**	 * Create a new instance of Editor	 * 	 * @param scope	 * @param editor	 */	public Editor(Scriptable scope, IEditorPart editor)	{		this.setParentScope(scope);		this._editor = editor;		String[] functions = new String[] { 				"applyEdit", 				"beginCompoundChange", 				"close", 				"endCompoundChange",				"getLineAtOffset", 				"getOffsetAtLine", 				"save", 				"selectAndReveal", 				"toString" 				};		this.defineFunctionProperties(functions, Editor.class, READONLY | PERMANENT);		// read-only properties		this.defineProperty("id", Editor.class, READONLY | PERMANENT);		this.defineProperty("lineDelimiter", Editor.class, READONLY | PERMANENT);		this.defineProperty("source", Editor.class, READONLY | PERMANENT);		this.defineProperty("sourceLength", Editor.class, READONLY | PERMANENT);		this.defineProperty("selectionRange", Editor.class, READONLY | PERMANENT);		this.defineProperty("title", Editor.class, READONLY | PERMANENT);		this.defineProperty("textEditor", Editor.class, READONLY | PERMANENT);		// read/write properties		this.defineProperty("currentOffset", Editor.class, PERMANENT);	}	/*	 * Methods	 */	/**	 * save	 */	public void save()	{		if (this._editor != null)		{			this._editor.doSave(null);		}	}	/**	 * @param offset	 * @param length	 */	public void selectAndReveal(final int offset, final int length)	{		final IWorkbench workbench = PlatformUI.getWorkbench();		Display display = workbench.getDisplay();		display.asyncExec(new Runnable()		{			public void run()			{				ITextEditor editor = getTextEditor();				editor.selectAndReveal(offset, length);			}		});	}	/**	 * getCurrentOffset	 * 	 * @return int	 */	public int getCurrentOffset()	{		/**		 * ResultRef		 */		class ResultRef		{			public int result = -1;		}				final IWorkbench workbench = PlatformUI.getWorkbench();		Display display = workbench.getDisplay();		final ResultRef result = new ResultRef();				display.syncExec(new Runnable()		{			public void run()			{				ITextSelection ts = (ITextSelection) getTextEditor().getSelectionProvider().getSelection();								result.result =  ts.getOffset();			}		});				return result.result;	}	/**	 * setCurrentOffset	 * 	 * @param offset	 */	public void setCurrentOffset(int offset)	{		getTextEditor().getSelectionProvider().setSelection(new TextSelection(offset, 0));	}	/**	 * getLineDelimiter	 * 	 * @return String	 */	public String getLineDelimiter()	{		IDocument document = this.getDocument();		String result = "\n";		if (document != null)		{			String[] delims = document.getLegalLineDelimiters();			if (delims.length > 0)			{				result = delims[0];			}		}		return result;	}	/**	 * getId	 * 	 * @return String	 */	public String getId()	{		String result = StringUtils.EMPTY;		if (this._editor != null)		{			result = this._editor.getSite().getId();		}		return result;	}	/**	 * getSelectionRange	 * 	 * @return Object	 */	public Scriptable getSelectionRange()	{		ITextSelection ts = (ITextSelection) getTextEditor().getSelectionProvider().getSelection();				Context cx = Context.getCurrentContext();		Scriptable result = null;		{			result = cx.newObject(this.getParentScope(), "Object", new Object[0]);			result.put("startingOffset", result, new Integer(ts.getOffset()));			result.put("endingOffset", result, new Integer(ts.getOffset() + ts.getLength()));		}		return result;	}	/**	 * getSource	 * 	 * @return Scriptable	 */	public String getSource()	{		return this.getDocument().get();	}	/**	 * getSourceLength	 * 	 * @return Scriptable	 */	public int getSourceLength()	{		return this.getDocument().getLength();	}	/**	 * getTitle	 * 	 * @return String	 */	public String getTitle()	{		ITextEditor uniEditor = this.getTextEditor();		if (uniEditor != null)		{			return ((IEditorPart) uniEditor).getTitle();		}		return null;	}	/**	 * applyEdit	 * 	 * @param offset	 * @param deleteLength	 * @param insertText	 */	public void applyEdit(int offset, int deleteLength, String insertText)	{		IEditorPart part = this._editor;		if (part != null && part instanceof ITextEditor)		{			// get document			IDocument doc = getDocument();			try			{				doc.replace(offset, deleteLength, insertText);			}			catch (BadLocationException e)			{				System.err.println("Error: " + e);			}		}	}	/**	 * beginCompoundChange	 */	public void beginCompoundChange()	{		if (this._key == null)		{			IDocument document = this.getDocument();			if (document != null)			{				IDocumentExtension4 docExt = (IDocumentExtension4) document;				this._key = docExt.startRewriteSession(DocumentRewriteSessionType.SEQUENTIAL);			}		}		else		{			throw new IllegalStateException("A previous begin change was not closed");		}	}	/**	 * close	 * 	 * @param save	 */	public void close(boolean save)	{		ITextEditor editor = this.getTextEditor();		if (editor != null)		{			editor.close(save);		}	}	/**	 * endCompoundChange	 */	public void endCompoundChange()	{		if (this._key != null)		{			IDocument document = this.getDocument();			if (document != null)			{				IDocumentExtension4 docExt = (IDocumentExtension4) document;				docExt.stopRewriteSession(this._key);			}			this._key = null;		}	}	/**	 * getLineAtOffset	 * 	 * @param offset	 * @return int	 */	public int getLineAtOffset(int offset)	{		try {			return getDocument().getLineOfOffset(offset);		} catch (BadLocationException e) {			e.printStackTrace();		}				return -1;	}	/**	 * getOffsetAtLine	 * 	 * @param line	 * @return int	 */	public int getOffsetAtLine(final int line)	{		/**		 * Result		 */		class Result		{			public int result;		}				final Result r = new Result();		r.result = -1;		final IWorkbench workbench = PlatformUI.getWorkbench();		Display display = workbench.getDisplay();		display.syncExec(new Runnable()		{			public void run()			{				try {					r.result = getDocument().getLineOffset(line);				} catch (BadLocationException e) {					e.printStackTrace();				}			}		});		return r.result;	}	/**	 * toString	 * 	 * @return String	 */	public String toString()	{		return "[object Editor]";	}}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩免费一区二区三区| 日韩欧美一区二区视频| 日韩午夜三级在线| 国产精品黄色在线观看| 久久国产综合精品| 欧美综合久久久| 国产精品久久毛片| 久久99精品久久久久婷婷| 欧美在线观看一二区| 中文字幕电影一区| 国产精品456露脸| 日韩美一区二区三区| 亚洲成人动漫精品| 在线视频欧美区| 综合网在线视频| 成人黄色av电影| 久久精品人人做人人综合| 奇米亚洲午夜久久精品| 欧美四级电影网| 一区二区三区在线视频免费 | 狠狠色伊人亚洲综合成人| 欧美性xxxxxx少妇| 亚洲精品欧美激情| 色天使色偷偷av一区二区| 国产欧美日韩久久| 国产成人精品亚洲日本在线桃色| 777亚洲妇女| 日本美女一区二区三区| 欧美一区二区不卡视频| 视频一区欧美精品| 欧美一级日韩免费不卡| 丝袜美腿亚洲色图| 制服视频三区第一页精品| 天天av天天翘天天综合网色鬼国产| 色婷婷av一区二区三区大白胸 | 偷拍自拍另类欧美| 欧美系列亚洲系列| 午夜精品123| 欧美电影一区二区| 免费国产亚洲视频| 精品国产电影一区二区| 国产精品一区在线| 亚洲欧洲日产国码二区| 92国产精品观看| 亚洲成人免费av| 91精品国产一区二区| 美女mm1313爽爽久久久蜜臀| 2024国产精品| 97se亚洲国产综合在线| 亚洲第一av色| 久久嫩草精品久久久精品| 成人一二三区视频| 亚洲综合色网站| 日韩美女视频一区二区在线观看| 国产激情视频一区二区三区欧美| 国产精品久久久久久久久图文区| 色综合久久88色综合天天6| 五月天中文字幕一区二区| 精品久久久久久最新网址| 99久久久精品免费观看国产蜜| 亚洲国产成人av好男人在线观看| 日韩欧美一二三四区| 成人美女视频在线看| 亚洲影视在线观看| 久久综合久久99| 欧美在线视频你懂得| 精品亚洲免费视频| 亚洲另类中文字| 日韩精品在线一区二区| caoporen国产精品视频| 性做久久久久久久免费看| 国产午夜精品一区二区三区嫩草 | 亚洲黄色小视频| 精品sm在线观看| 在线视频国内自拍亚洲视频| 国内精品第一页| 亚洲国产精品一区二区久久恐怖片 | 99久久婷婷国产精品综合| 日本特黄久久久高潮| 国产精品久久久久久福利一牛影视| 在线精品亚洲一区二区不卡| 国产一区在线不卡| 亚洲成精国产精品女| 国产精品第四页| 久久久久九九视频| 欧美一区二区日韩| 欧美美女一区二区| 一本大道av一区二区在线播放| 激情综合色综合久久综合| 亚洲一区在线电影| 亚洲欧美日韩电影| 中文字幕va一区二区三区| 欧美xxxxx裸体时装秀| 欧美乱妇23p| 欧美在线高清视频| 91免费版在线看| 成人性视频免费网站| 国产精品夜夜嗨| 国产在线看一区| 蜜桃av一区二区三区电影| 亚洲第一电影网| 亚洲成人av一区| 亚洲国产乱码最新视频| 一区二区免费在线播放| 亚洲人妖av一区二区| 国产精品久久夜| 欧美激情艳妇裸体舞| 国产亚洲欧美中文| 久久久噜噜噜久久人人看 | 欧美日韩卡一卡二| 色av成人天堂桃色av| 99久久精品国产观看| 成人网页在线观看| av在线不卡网| 色丁香久综合在线久综合在线观看| 成人在线综合网站| av激情成人网| 99国产精品国产精品毛片| 99国产精品久久久久久久久久| 成人美女视频在线观看| av亚洲精华国产精华精| 丁香婷婷综合五月| 91丨九色丨黑人外教| 色国产综合视频| 欧美区在线观看| 日韩一区二区不卡| 国产视频一区二区在线观看| 中文字幕av一区二区三区| 亚洲欧美视频在线观看视频| 亚洲sss视频在线视频| 午夜精品久久久久久久99樱桃| 视频一区免费在线观看| 精品影院一区二区久久久| 国产一区二区三区不卡在线观看 | 成人激情免费网站| 91免费看片在线观看| 欧美另类z0zxhd电影| 久久综合中文字幕| 成人免费视频在线观看| 性久久久久久久久久久久 | 日本欧洲一区二区| 国产精品123| 在线观看国产日韩| 日韩三级视频中文字幕| 国产精品久久一级| 日本亚洲天堂网| a在线播放不卡| 欧美一区二区成人| 亚洲欧美福利一区二区| 蜜臀av一区二区三区| 91蝌蚪porny成人天涯| 日韩一区二区三免费高清| 国产欧美日本一区二区三区| 亚洲永久免费av| 国产成人av福利| 欧美二区乱c少妇| 亚洲欧洲日本在线| 极品美女销魂一区二区三区| 91麻豆国产福利在线观看| 日韩精品自拍偷拍| 亚洲高清视频中文字幕| 国产成人综合在线观看| 欧美疯狂做受xxxx富婆| 亚洲欧洲av在线| 精品亚洲国内自在自线福利| 欧美日韩国产大片| 亚洲色图20p| 国产成人啪免费观看软件| 欧美一区午夜精品| 一区二区在线观看免费| 成人动漫在线一区| 久久亚洲精品小早川怜子| 性做久久久久久久免费看| 97久久精品人人做人人爽50路| 精品福利在线导航| 日韩av成人高清| 欧美少妇一区二区| 亚洲天堂精品视频| 成人av网址在线| 久久蜜桃av一区精品变态类天堂| 水野朝阳av一区二区三区| 日本国产一区二区| 亚洲欧洲另类国产综合| 成人一区在线看| 久久精品无码一区二区三区| 激情图片小说一区| 久久影院午夜论| 蜜臂av日日欢夜夜爽一区| 欧美日韩一区二区三区在线看| 亚洲精品视频一区| 色综合天天综合狠狠| 最新久久zyz资源站| a级精品国产片在线观看| 欧美国产欧美综合| 国产98色在线|日韩| 欧美高清在线视频| 国产福利91精品一区二区三区| 久久精品一区二区三区四区| 国产成人超碰人人澡人人澡| 久久精品亚洲乱码伦伦中文|