透视图扩展 Perspective Extensions

eclipse中的一些元素如图所示:

透视图?

透视图 是一系列Views和Editors等元素的 可视化容器。透视图 定义了  Workbench Page 中 Window action bars(menu and toolbar) 的初始化内容 和  包含的视图(views)与它们的布局方式。

WorkbenchWindow是书本的话,Perspective就是其中的一页,并且同一时刻只显示一页。一个Perspective所包含的Views,Editors等元素不与其它Perspective共享。

透视图与其它元素的关系如下:

扩展eclipse现有的perspective

eclipse包含有多种类型perspective

一个扩展perspective的代码示例:

 1 <extension point="org.eclipse.ui.perspectiveExtensions">
 2         <perspectiveExtension
 3             targetID="org.eclipse.ui.resourcePerspective">
 4             <actionSet id="org.eclipse.jdt.ui.JavaActionSet"/>
 5             <viewShortcut id="org.eclipse.jdt.ui.PackageExplorer"/>
 6             <newWizardShortcut id="org.eclipse.jdt.ui.wizards.NewProjectCreationWizard"/>
 7             <perspectiveShortcut id="org.eclipse.jdt.ui.JavaPerspective"/>
 8             <view id="org.eclipse.jdt.ui.PackageExplorer"
 9                 relative="org.eclipse.ui.views.ResourceNavigator"
10                 relationship="stack"/>
11             <view id="org.eclipse.jdt.ui.TypeHierarchy"
12                 relative="org.eclipse.ui.views.ResourceNavigator"
13                 relationship="left"
14                 ratio="0.50"/>
15         </perspectiveExtension>
16 </extension> 

In the example above, an action set, view shortcut, new wizard shortcut, and perspective shortcut are contributed to the initial contents of the Resource Perspective. In addition, the Package Explorer view is stacked on the Resource Navigator and the Type Hierarchy View is added beside the Resource Navigator.

 自定义一个Perspective

 参考学习:http://www.eclipse.org/articles/using-perspectives/PerspectiveArticle.html

时间: 2024-11-07 12:42:13

透视图扩展 Perspective Extensions的相关文章

Mozilla Firefox扩展(Extensions)开发——XPCOM&amp;XUL(二)

上节我们做了一个hello world,然而并没有什么卵用.这节我们实现一个具有实用功能的扩展吧! 创建我们的扩展开发目录,其结构如下: sessionstore |--content |             |--overlay.js |               | --overlay.xul |                 | --prefs.xul |--defaults |                  |--preferences |                  

scrapy的扩展件extensions

extensions.py文件 # -*- coding: utf-8 -*- # 该扩展会在以下事件时记录一条日志: # spider被打开 # spider被关闭 # 爬取了特定数量的条目(items) import logging from collections import defaultdict from scrapy import signals from scrapy.exceptions import NotConfigured from datetime import dat

Swift 扩展(Extensions)(十四)

可以为类添加新功能 UIViewController extension UIViewController { // 为 UIViewController 添加的新功能写到这里 } Double extension Double { var km: Double { return self * 1_000.0 } var m : Double { return self } var cm: Double { return self / 100.0 } var mm: Double { retur

Mozilla Firefox扩展(Extensions)开发——xulrunner

XULRunner is a Mozilla runtime package that can be used to bootstrap XUL+XPCOM applications that are as rich as Firefox and Thunderbird. It provides mechanisms for installing, upgrading, and uninstalling these applications. XULRunner also provides li

类别(Category)与扩展(Extensions)

一.类别(Category) 类别(Category)是一种可以为现有的类(包括类簇:NSString...,甚至源码无法获得的类)添加新方法的方式无需从现有的类继承子类.类别添加的新方法可以被子类继承. 注:继承(inheritance)无法为一个类簇创建子类.类别不能添加实例变量. 1. 创建类别 1.1 声明类别 类别的声明和类的声明格式相似: @interface ClassName(CategoryName) //method declarations @end//CategoryNa

十九、扩展 Extensions

1. 概述 扩展用于给已经存在的类.枚举.结构体添加新的功能.Swift中的扩展(extensions)与Objective-C中的分类(categories)的类似,但不同点在于,扩展没有名字. 扩展有如下功能: 1)增加 computed属性和静态的computed属性 2)定义实例方法 instance methods 和 类型方法type methods(比如类方法) 3)提供新的构造器 4)定义下标 5)定义和使用新的嵌套类型 6)使某个已存在的类型符合某个协议( 原话:Make an

五 Swift开发之扩展(Extension)

五 Swift开发之扩展(Extensions) //扩展就是向一个已有的类.结构体或枚举类型添加新功能(functionality).这包括在没有权限获取原始源代码的情况下扩展类型的能力(即逆向建模).扩展和 Objective-C 中的分类(categories)类似.(不过与Objective-C不同的是,Swift 的扩展没有名字.) Swift 中的扩展可以: 1.添加计算型属性和计算静态属性 2.定义实例方法和类型方法 3.提供新的构造器 4.定义下标 5.定义和使用新的嵌套类型 6

Chrome 的插件(Plug-in)与扩展(Extension)的区别

"扩展"和"插件",其实都是软件组件的一种形式,Chrome 只不过是把两种类型的组件分别给与了专有名称,一个叫"扩展",另一个叫"插件". 扩展(Extension),指的是通过调用 Chrome 提供的 Chrome API 来扩展浏览器功能的一种组件,工作在浏览器层面,使用 HTML + Javascript 语言开发[*].比如著名的 Adblock plus. 插件(Plug-in),指的是通过调用 Webkit 内

Objective-C,如何在不使用类继承的情况下,扩展已有类的实现

在Objective-C 2.0中,有2种办法可以在不使用类继承的情况下,扩展已有类的实现.一种是分类(Category),另一种是类扩展(Class Extensions). 前者可以在没有已有类的源代码的情况下扩展类的实现.可以定义新的方法,但不能定义实例变量. 后者必须有已有类的源代码才能实现扩展.但是相比分类,类扩展还可以定义实例变量,并且隐藏这些信息.也就是说,类扩展是一种定义私有变量和私有方法的手段. Objective-C,如何在不使用类继承的情况下,扩展已有类的实现