我的action 类是implements IWorkbenchWindowActionDelegate的
IEditorPart editorPart = window.getActivePage().getActiveEditor();
是否在ActivePage, ActiveEditor ?
如何写? 谢谢
12 个解决方案
#1
getActivePage().addPartListener 可以接听colsed , opened
但saving 或saved 如何接听呢?
但saving 或saved 如何接听呢?
#2
你用到了EditorPart了吧?
public abstract class EditorPart extends WorkbenchPart implements IEditorPart {
public abstract void doSave(IProgressMonitor monitor);
public abstract void doSaveAs();
如果你继承的是GraphicalEditor的话,重写doSave就好。
public abstract class EditorPart extends WorkbenchPart implements IEditorPart {
public abstract void doSave(IProgressMonitor monitor);
public abstract void doSaveAs();
如果你继承的是GraphicalEditor的话,重写doSave就好。
#3
支持
#4
二楼的方法可行
#5
我是这样的
public class MyAction implements IWorkbenchWindowActionDelegate{
}
?
public class MyAction implements IWorkbenchWindowActionDelegate{
}
?
#6
IWorkbenchWindowActionDelegate是在MenuBar/ToolBar中插入按钮,不是对保存/关闭进行监听。
#7
但我想对save 保存进行监听? 因为想在保存之前对文件处理
关闭是可以监听的, getActivePage().addPartListener 可以接听colsed , opened
但不知道怎么对save 监听?
关闭是可以监听的, getActivePage().addPartListener 可以接听colsed , opened
但不知道怎么对save 监听?
#8
你的插件既然有界面,那么应该是用到了GEF/EMF吧。
有界面的话,应该有类继承了 EditorPart或者EditorPart的子类的,EditorPart中有 doSave和doSaveAs的方法,你想啊要监听的话,就在这两个方法中选择合适的添加你要处理的逻辑
有界面的话,应该有类继承了 EditorPart或者EditorPart的子类的,EditorPart中有 doSave和doSaveAs的方法,你想啊要监听的话,就在这两个方法中选择合适的添加你要处理的逻辑
#9
帮顶!!!
二楼正解!!!
二楼正解!!!
#10
to Arthur(亚瑟王)
doSave和doSaveAs是不行的,因为我没有继承,
不知您有没有用过CompilationUnitEditor 的fSavePolicy?
doSave和doSaveAs是不行的,因为我没有继承,
不知您有没有用过CompilationUnitEditor 的fSavePolicy?
#11
顺便请教下,
有没有方法得到
myeclipse 的
com.genuitec.eclipse.javascript.editor.JSMultiPageEditorPart
org.eclipse.wst.xml.ui.internal.tabletree.XMLMultiPageEditorPart
的sourceEditor(ITextEditor) ?
就想myeclipse的jsp WebDesignerMultiPageEditor 它提供了puliic getSourceEditor()
但 com.genuitec.eclipse.javascript.editor.JSMultiPageEditorPart
org.eclipse.wst.xml.ui.internal.tabletree.XMLMultiPageEditorPart
都不是public的
有没有方法得到
myeclipse 的
com.genuitec.eclipse.javascript.editor.JSMultiPageEditorPart
org.eclipse.wst.xml.ui.internal.tabletree.XMLMultiPageEditorPart
的sourceEditor(ITextEditor) ?
就想myeclipse的jsp WebDesignerMultiPageEditor 它提供了puliic getSourceEditor()
但 com.genuitec.eclipse.javascript.editor.JSMultiPageEditorPart
org.eclipse.wst.xml.ui.internal.tabletree.XMLMultiPageEditorPart
都不是public的
#12
也碰到同样问题,想知道答案
#1
getActivePage().addPartListener 可以接听colsed , opened
但saving 或saved 如何接听呢?
但saving 或saved 如何接听呢?
#2
你用到了EditorPart了吧?
public abstract class EditorPart extends WorkbenchPart implements IEditorPart {
public abstract void doSave(IProgressMonitor monitor);
public abstract void doSaveAs();
如果你继承的是GraphicalEditor的话,重写doSave就好。
public abstract class EditorPart extends WorkbenchPart implements IEditorPart {
public abstract void doSave(IProgressMonitor monitor);
public abstract void doSaveAs();
如果你继承的是GraphicalEditor的话,重写doSave就好。
#3
支持
#4
二楼的方法可行
#5
我是这样的
public class MyAction implements IWorkbenchWindowActionDelegate{
}
?
public class MyAction implements IWorkbenchWindowActionDelegate{
}
?
#6
IWorkbenchWindowActionDelegate是在MenuBar/ToolBar中插入按钮,不是对保存/关闭进行监听。
#7
但我想对save 保存进行监听? 因为想在保存之前对文件处理
关闭是可以监听的, getActivePage().addPartListener 可以接听colsed , opened
但不知道怎么对save 监听?
关闭是可以监听的, getActivePage().addPartListener 可以接听colsed , opened
但不知道怎么对save 监听?
#8
你的插件既然有界面,那么应该是用到了GEF/EMF吧。
有界面的话,应该有类继承了 EditorPart或者EditorPart的子类的,EditorPart中有 doSave和doSaveAs的方法,你想啊要监听的话,就在这两个方法中选择合适的添加你要处理的逻辑
有界面的话,应该有类继承了 EditorPart或者EditorPart的子类的,EditorPart中有 doSave和doSaveAs的方法,你想啊要监听的话,就在这两个方法中选择合适的添加你要处理的逻辑
#9
帮顶!!!
二楼正解!!!
二楼正解!!!
#10
to Arthur(亚瑟王)
doSave和doSaveAs是不行的,因为我没有继承,
不知您有没有用过CompilationUnitEditor 的fSavePolicy?
doSave和doSaveAs是不行的,因为我没有继承,
不知您有没有用过CompilationUnitEditor 的fSavePolicy?
#11
顺便请教下,
有没有方法得到
myeclipse 的
com.genuitec.eclipse.javascript.editor.JSMultiPageEditorPart
org.eclipse.wst.xml.ui.internal.tabletree.XMLMultiPageEditorPart
的sourceEditor(ITextEditor) ?
就想myeclipse的jsp WebDesignerMultiPageEditor 它提供了puliic getSourceEditor()
但 com.genuitec.eclipse.javascript.editor.JSMultiPageEditorPart
org.eclipse.wst.xml.ui.internal.tabletree.XMLMultiPageEditorPart
都不是public的
有没有方法得到
myeclipse 的
com.genuitec.eclipse.javascript.editor.JSMultiPageEditorPart
org.eclipse.wst.xml.ui.internal.tabletree.XMLMultiPageEditorPart
的sourceEditor(ITextEditor) ?
就想myeclipse的jsp WebDesignerMultiPageEditor 它提供了puliic getSourceEditor()
但 com.genuitec.eclipse.javascript.editor.JSMultiPageEditorPart
org.eclipse.wst.xml.ui.internal.tabletree.XMLMultiPageEditorPart
都不是public的
#12
也碰到同样问题,想知道答案