`
qq123zhz
  • 浏览: 534334 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

eclipse 插件开发-编辑器脏处理

阅读更多

1、强行添加command使编辑器脏。

getEditor().getCommandStack().execute(new Command() {});

 

2、

//第一步,对editor的构造函数添加EditDomain
	public MyGraphicalEditor() {
		setEditDomain(new DefaultEditDomain(this));
	}

//第二步,对Command堆栈进行监听
	public void init(IEditorSite site, IEditorInput input) throws PartInitException {
		super.init(site, input);
		getCommandStack().addCommandStackListener(this);
	}

//第三步,重载CommandStackListener的CommandStackChanged()方法
	public void commandStackChanged(EventObject event) {
		super.commandStackChanged(event);
		firePropertyChange(IEditorPart.PROP_DIRTY);// 别忘了
	}

//第四步,定义一个boolean类型的变量dirty,并写其set方法。供涉及Command堆栈之外的操作对“脏”状态改的需求
	public void setDirty(boolean dirty){
		if (dirty != this.dirty) {
			this.dirty = dirty;
			firePropertyChange(IEditorPart.PROP_DIRTY);
		}
	}

//第五步,重载editor的isDirty()方法
	public boolean isDirty() {
		return (getCommandStack().isDirty()) | dirty; 
	}

// 最后一步,doSave()方法的处理
	public void doSave(IProgressMonitor arg0) {
		getCommandStack().markSaveLocation();
		dirty = false;
		firePropertyChange(IEditorPart.PROP_DIRTY);
		// Todo others.....
	}

 

分享到:
评论

相关推荐

    eclipse插件开发-编辑器详解

    在深入探讨Eclipse插件开发中编辑器的具体实现之前,我们首先需要明确几个关键概念。Eclipse作为一款强大的集成开发环境(IDE),其内部架构高度模块化,支持丰富的插件扩展机制。在这个过程中,`IWorkbenchPart`...

    QT+eclipse插件qt-eclipse-integration-linux.x86_64-1.6.1 1.6.0等

    QT+eclipse插件qt-eclipse-integration是一个强大的开发工具集成,它允许开发者在Eclipse环境中无缝地进行QT应用程序的开发。这个插件是专为Linux和Windows平台设计的,提供了一个集成的开发环境,使得程序员可以...

    eclipse插件开发---简单例子

    首先,"eclipse插件开发---简单例子"这个标题暗示我们将探讨的是如何构建基本的Eclipse插件。Eclipse插件基于OSGi框架,它允许开发者创建可复用的模块化组件,这些组件可以与其他Eclipse插件交互,以提供定制化的...

    eclipse插件开发-JDT.pdf

    Eclipse 插件开发 - JDT Eclipse 插件开发中的 JDT(Java Development Tools)是用于定义 Java 核心元素和 API 的插件。在开发特定于 Java 的功能部件时,总是应该将此插件列示为先决条件。JDT 核心包使您能够访问 ...

    eclipse插件开发指南.pdf

    ### Eclipse插件开发指南知识点概览 #### 一、Eclipse概述 **1.1 Eclipse简介** - **1.1.1 Eclipse的历史背景** - Eclipse最初由IBM于2001年11月发布,版本号为1.0。 - 随着时间的发展,Eclipse逐渐成为了一个...

    eclipse插件开发-javabean表格编辑器自动生成类

    eclipse插件开发表格编辑器自动生成类小demo,初学者参考。高手勿入、详情见博客。http://blog.csdn.net/wm198966/article/details/9423839。文件类有图有说明有源代码

    Eclipse插件开发--gef开发指南与入门系列宝典

    本指南将深入探讨Eclipse插件开发中的GEF框架,帮助开发者快速入门并掌握相关知识。 首先,让我们理解Eclipse插件开发的基本概念。Eclipse采用插件化架构,每个功能模块都是一个独立的插件,这些插件通过OSGi(Open...

    jd-eclipse-site-1.0.0-RC2.zip

    选择这个选项,jd-eclipse插件就会自动反编译对应的.class文件,并在一个新的编辑器窗口中展示源代码。这种方式不仅节省了开发者在多个工具之间切换的时间,也提高了工作效率。 jd-eclipse-site-1.0.0-RC2插件的...

    axis2-eclipse-codegen-plugin-1.6.2.zip和axis2-eclipse-service-plugin-1.6.2.zip

    标题中的"axis2-eclipse-codegen-plugin-1.6.2.zip"和"axis2-eclipse-service-plugin-1.6.2.zip"是两个与Apache Axis2相关的Eclipse插件,用于简化Web服务的开发过程。Apache Axis2是Java平台上一个成熟的Web服务...

    Eclipse插件开发中编辑器代码的定位及背景色改变高亮

    Eclipse插件开发中编辑器代码的定位、背景色改变、高亮

    eclipse插件开发form编辑器

    ### Eclipse插件开发Form编辑器的关键知识点 #### 一、Eclipse Forms简介 Eclipse Forms是一种用于创建丰富客户端界面的技术,它可以让你的应用程序在不使用Web浏览器的情况下展现出类似Web的效果。这种技术允许...

    eclipse-jee-2023-09-R-win32-x86-64.zip

    Eclipse 是一个开源的集成开发环境(IDE),主要用于Java应用程序的开发,但通过插件也可支持其他编程语言,如C++、Python等。Eclipse-JEE版本是专门为Java企业级开发设计的,它包含了用于Web和企业应用开发的工具集...

    eclipse-java-2022-09-R-win32-x86-64.zip

    解压后的"eclipse"文件夹包含了Eclipse IDE的所有组件,如工作台(Workbench)、编辑器、调试器、构建工具以及项目管理器等。在其中,你可以找到以下关键组件: 1. `eclipse.exe`:这是Eclipse的启动程序,双击即可...

    eclipse-jee-mars-R-win32-x86_64位官方绿色版.zip

    1. **Java开发工具**:Eclipse Mars提供了强大的Java开发工具集,包括代码编辑器、调试器、构建工具等,支持Java 8的新特性,如lambda表达式和默认方法。 2. **Web和Java EE支持**:该版本强化了对Web和Java EE应用...

    eclipse-jee-2020-09-R-win32-x86_64.zip

    - **XML编辑器**:处理XML文件,支持验证和格式化。 - **数据库工具**:连接到数据库,执行SQL查询,管理数据表。 - **Maven和Gradle集成**:通过内置支持,简化构建过程。 - **插件系统**:Eclipse的强大力量之一,...

    eclipse-java-2023-09-R-linux-gtk-x86-64.tar.gz

    它以其强大的代码编辑器、调试工具、项目管理功能和丰富的插件系统而闻名。Eclipse为开发者提供了便捷的工作环境,支持多种编程语言,而"java"标签则明确了这个版本专为Java开发设计。 "linux"标签表明这个Eclipse...

    Eclipse插件内幕-插件开发-如何定制一个向导

    在Eclipse插件开发中,定制向导是创建用户友好且高效的工作流程的关键步骤。向导是一种引导用户逐步完成复杂任务的交互式界面,它能够简化和规范化数据输入过程。在本文中,我们将深入探讨如何在Eclipse环境中开发一...

    eclipse-cpp-2023-06-R-win32-x86-64.zip

    它不仅仅是一个编辑器,还集成了构建工具、调试器、版本控制和项目管理等功能,使得开发者能够在一个统一的环境中进行开发工作。 2. C++支持: Eclipse CDT(C/C++ Development Tools)是Eclipse IDE的一个插件,为...

    Eclipse插件开发(第3版 - 高清).pdf.zip

    Java作为Eclipse插件开发的基础语言,开发者需要掌握Java编程基础,包括类、对象、接口、异常处理、多线程等。在Eclipse中,Java用于编写插件的主要组件,如命令、视图、编辑器等。 3. **SWT(Standard Widget ...

    eclipse-cpp-2023-09-R-win32-x86-64.zip

    2. **开发环境**:Eclipse C++ IDE包含了代码编辑器、构建工具、调试器等必备组件。编辑器支持语法高亮、自动完成、错误检测等功能,帮助开发者编写高质量的代码。同时,内置的CDT(C/C++ Development Tools)提供了...

Global site tag (gtag.js) - Google Analytics