当前位置: 首页 > news >正文

广州网站搭建快速提升网站排名东莞做个网站

广州网站搭建快速提升网站排名,东莞做个网站,成都网站建设优化公司,网页编程htmlEclipse 插件开发 5 编辑器 1 编辑器描述2 自定义编辑器2.1 注册插件(plugin.xml)2.2 继承 EditorPart2.3 实现 IEditorInput2.4 打开编辑器 1 编辑器描述 Eclipse 的 UI 基于 Workbench(工作台)模型,Editor Area 是 Workbench 的核心区域之…

Eclipse 插件开发 5 编辑器

  • 1 编辑器描述
  • 2 自定义编辑器
    • 2.1 注册插件(plugin.xml)
    • 2.2 继承 EditorPart
    • 2.3 实现 IEditorInput
    • 2.4 打开编辑器

1 编辑器描述

Eclipse 的 UI 基于 Workbench(工作台)模型,Editor Area 是 Workbench 的核心区域之一,用于显示各类“编辑器”界面。

编辑器区域与其他 UI 区域的关系

区域描述
Editor Area中心区域,用于显示 EditorPart(编辑器)
View(视图)比如 Project Explorer、Outline、Console,围绕编辑器区域分布
Perspective一组 View + Editor 的布局配置
Part包括 ViewPart 和 EditorPart
WorkbenchPage表示当前工作台页面,管理所有 View 和 Editor 的容器

编辑器(EditorPart)的特点

特点描述
生命周期管理Eclipse 管理打开、关闭、激活等
文件编辑能力比如 Java、XML、Text 文件都是用 EditorPart 打开的
可嵌入 UI 组件可以自定义控件(Composite、Label、Canvas、Table 等)
可响应拖放可以注册 DropTarget 监听器
对比项ViewPartEditorPart
所在区域边栏区域中心编辑器区域
关闭方式可以一直打开可关闭和切换
适合用途项目结构、资源浏览器资源编辑、图形设计
典型示例Project Explorer, ConsoleJava 编辑器、文本编辑器

2 自定义编辑器

2.1 注册插件(plugin.xml)

<extension point="org.eclipse.ui.editors"><editorid="com.xu.editor"name="CustEditor"class="com.xu.CustEditorPart"extensions="myext"default="true"/>
</extension>

2.2 继承 EditorPart

package com.xu.test;import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Text;
import org.eclipse.ui.IEditorInput;
import org.eclipse.ui.IEditorSite;
import org.eclipse.ui.PartInitException;
import org.eclipse.ui.part.EditorPart;public class CustEditorPart extends EditorPart {private Composite composite;@Overridepublic void doSave(IProgressMonitor arg0) {// TODO Auto-generated method stub		}@Overridepublic void doSaveAs() {// TODO Auto-generated method stub}@Overridepublic void init(IEditorSite arg0, IEditorInput arg1) throws PartInitException {setSite(arg0);setInput(arg1);}@Overridepublic boolean isDirty() {// TODO Auto-generated method stubreturn false;}@Overridepublic boolean isSaveAsAllowed() {// TODO Auto-generated method stubreturn false;}@Overridepublic void createPartControl(Composite composite) {this.composite = composite;composite.setLayout(new FillLayout(SWT.HORIZONTAL));Text text = new Text(composite, SWT.BORDER);text.setText("开始");}@Overridepublic void setFocus() {composite.setFocus();}}

2.3 实现 IEditorInput

防止打开多个编辑器

package com.xu.test;import java.util.Objects;import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.ui.IEditorInput;
import org.eclipse.ui.IPersistableElement;public class CustEditorInput implements IEditorInput {private final String id;public CustEditorInput(String id) {this.id = id;}public String getId() {return id;}@Overridepublic boolean exists() {return true;}@Overridepublic ImageDescriptor getImageDescriptor() {return null;}@Overridepublic String getName() {return id;}@Overridepublic IPersistableElement getPersistable() {return null;}@Overridepublic String getToolTipText() {return id;}@Overridepublic <T> T getAdapter(Class<T> adapter) {return null;}@Overridepublic boolean equals(Object obj) {if (this == obj)return true;if (obj instanceof CustEditorInput) {return Objects.equals(this.id, ((CustEditorInput) obj).id);}return false;}@Overridepublic int hashCode() {return Objects.hash(id);}}

2.4 打开编辑器

IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
page.openEditor(new CustEditorInput("11111"), "com.xu.editor");

在这里插入图片描述

http://www.dtcms.com/a/484511.html

相关文章:

  • 专业的河南网站建设公司哪家好网站建设明细
  • 自然景观网站模板企业做网站推广
  • 辽宁同鑫建设有限公司网站网站创意的技术
  • 多表查询(总结)
  • 口碑好的坪山网站建设成都家具企业网站建设
  • 制作免费个人网站青岛网站优化公司
  • 北京网站建设亿玛酷适合5网站设计要注意事项
  • 网站建设网页与数据库连接生产管理系统免费版
  • 淘客网站建设带app抖音权重查询工具
  • 福州网站建设嘉艺可以做哪些有趣的网站
  • 邯郸做网站就找安联网络设计师常用的网站
  • 杭州网站建设索q479185700做网站如何给图片命名
  • 网站建设佰首选金手指二八wordpress修订
  • MyBatisPlus中使用@EnumValue实现标记枚举类中与数据库字段映射的属性
  • 刷东西网站怎么做深圳网站建设有免费的吗
  • C++中#define和const的区别
  • 玫瑰在线 网站建设内容西安网站seo技术厂家
  • 烟台网站建设 制作 推广上海专业高端网站建设服务公司
  • 设计素材网站知乎百度一下你就知道官网网页版
  • 广东省住房和城乡建设厅公众网站怎么去推广自己的平台
  • 学院校园网网站建设情况wordpress文章推荐
  • 建设部国家标准网站深圳专业网站优化公司报价
  • SA8203 输入耐压36V 过流保护0.3-2.5A可调 过压/过流保护器 SOT23-6
  • 深圳做网站的网正邦集团招聘
  • 家庭带宽100m做网站用什么网站做ppt
  • 创意广告视频网站聊城网站seo
  • 网站云空间和普通空间如何做网站详细步骤
  • 保山市住房和城乡建设局门户网站网页设计与网站建设文档
  • 从零起步学习MySQL || 第三章:DML语句定义及常见用法示例
  • 建站公司外包wordpress json 时间