|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Teamcenter胖客户端开发】teamcenter菜单添加图文教程<1>
6 ~+ E! e5 V6 x, z# H& r# g0 t这部分内容实际上是eclipse的插件开发的功能, 这里做个简单分类,菜单文件的扩展点都是 <extensionpoint="org.eclipse.ui.menus">,添加菜单就是在这里面添加内容。这里只要注意location即可!
& q) X6 e& e) v# U2 {. s/ w% \. y$ u(1)在主工具条上添加菜单。! L8 i5 B |# B5 g% K
<menuContribution7 B, ? J- y/ S" U) P: G+ o4 ?
locationURI="menu:org.eclipse.ui.main.menu?after=additions">4 Q( k1 v) J# j) o. n; A
<menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">
) z1 v, F' F. } g- D( q8 H. U <command. j- v1 z+ E: C* o
commandId="com.plmhome.createFolder.commands.sampleCommand"+ T t$ W3 d2 v4 b% A! u
mnemonic="S"
) s5 w1 r" l" D8 {5 W8 h" D id="com.plmhome.createFolder.menus.sampleCommand">
5 d0 W6 B& w4 f$ m1 [# y </command>
' U( {3 Z. ~3 [8 N4 b* L: o </menu> w/ W K; r1 f+ x/ _
</menuContribution>
" U& X& N( r" c" T0 L- |
1 S0 [2 L( p+ n# A5 W" B7 f(2)在工具功能的后面添加按钮。* D1 d- Q( \& K3 k3 R7 _; p2 X. j
<menuContribution1 Z* z, J5 C5 F
locationURI="menu:tools?after=additions">
( G7 N7 L8 X) [ <command0 y, n" I" [; x+ |, y' H
commandId="com.plmhome.createFolder.commands.sampleCommand"
8 v% @$ t* D3 i mnemonic="S"$ ]# c) v" N( e) h
id="com.plmhome.createFolder.menus.sampleCommand">
3 l5 ?& X, p7 @, |: ?" S( t. m </command>6 A: Z; M. g# Y
</menuContribution>: Q# t- H7 M) E( T4 @
+ r3 @! p! A# L' Z, g! k
(3)在右键弹出菜单加按钮3 U3 c% v( w% l: ]# U3 z
<menuContribution0 V; S, X i) ^1 ^9 p2 b6 M6 q
locationURI="popup:org.eclipse.ui.popup.any?after=additions">! ?/ Z o2 l5 k6 w Y: f
<command6 M" B# f7 N! G; z
commandId="com.plmhome.createFolder.commands.sampleCommand"
1 x$ K4 z& y! q mnemonic="S"
7 C9 i* [% j7 ~; s" H id="com.plmhome.createFolder.menus.sampleCommand">
' O/ x" u5 `& O </command>9 }9 }1 w$ Z' B4 c. B) K
</menuContribution>
, E$ d d+ V+ I4 F(4)在具体的菜单后面加功能按钮8 K) K2 R8 t+ w- ?1 [# x
<menuContribution
q5 C0 U3 V' M; M7 A8 v locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">* c- t3 a' j. W9 G; H _
<menu
3 s' U3 S" |$ d0 X. I label="PLMHomeToolKits"
3 H. w4 z- U6 K: l$ C% n mnemonic="M"
- s+ x( y' H$ X8 b( w7 @- S id="com.plmhome.createFolder.menus.sampleMenu">
. {/ T( Y/ C5 ~% ^ <command
$ n$ r' S; \: k" m! s commandId="com.plmhome.createFolder.commands.sampleCommand"+ j* p+ r9 k' L3 o
mnemonic="S"' s1 \+ ^' N' N* z3 G; U
id="com.plmhome.createFolder.menus.sampleCommand">: M( [0 z" O+ k) V. n2 P
</command>
+ N9 ~. J6 D# D1 l </menu>
& X- R0 `) l0 M2 j1 m6 d3 W </menuContribution>/ g; o' T3 Z& S
9 N- w! F( k( }0 d) {. E7 g(5)指定位置,直接加按钮* V+ a) ]; n) E7 `) j
<menuContribution
6 z) W0 c ^! E$ M$ T locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">
7 x( ~8 l' A; P/ N1 R+ }. ~ <command; s: H% ]: Q5 B% y7 `/ y
commandId="com.plmhome.createFolder.commands.sampleCommand". X; @% @% f1 D
icon="icons/sample.gif"' L9 b8 \8 q% \+ T4 C
tooltip="Say hello world"& H% ]$ ]( N+ m* A8 f+ K w
id="com.plmhome.createFolder.toolbars.sampleCommand">! ]0 r) u0 j% Y; z7 ^6 G
</command>1 R# o# z% g8 j# l. q
</menuContribution>3 G- z0 X* O8 ?+ M, g- b5 j
( `' @9 |+ m- A6 M. C u(6)加工具条按钮
}0 c& ^" u4 l% L. m g" v <menuContribution a1 I3 k! W1 R/ _9 _
locationURI="toolbar:navigator_Toolbar?after=additions">
4 y( D! v+ n, ~4 ]9 m$ D% K- M! P <toolbar
, e4 B9 l% i; k8 [+ o id="com.plmhome.createFolder.toolbars.sampleToolbar">
5 ~; T1 E% t- C8 f$ _$ Y" O9 h <command, |1 f5 I' }4 C$ k6 x
commandId="com.plmhome.createFolder.commands.sampleCommand". C, P, S0 i f4 P9 t" ]. l
icon="icons/sample.gif"
* c4 c# M( J* ~- M" S! r6 M5 ] tooltip="Say hello world"7 Q+ Y) X8 c+ @ R2 v1 C
id="com.plmhome.createFolder.toolbars.sampleCommand">* ~& X: t9 W' \( z
</command>
" b0 i0 z! k/ f( j1 ^/ d( Z </toolbar>" ^0 R6 _3 }4 z* m' f
</menuContribution># b* [4 D3 z. w( M, y4 n
6 L( R1 s& k& G+ a. p, e" R* e- O: Q: M- B- J+ n
完整的例子如下:
/ C5 r0 y' u/ e/ a0 v' z ]/ _0 P# t
, n# O& E. p/ s0 y% O2 ]<?xml version="1.0" encoding="UTF-8"?>7 w. Q) q2 s, t1 a% p
<?eclipse version="3.4"?>
$ y! D0 e/ t5 y( P3 c<plUGin>
/ } g/ I; B% q! a2 Q" u* M; o& v$ V9 _' ], \
<extension
! y& o, R: W! g) g point="org.eclipse.ui.commands">. Q$ c! X( A5 ^# j
<category5 N. c5 G$ P4 V! {: y
name="Sample Category"+ R% @" Y$ ]" h, F* F% C6 V* d
id="com.plmhome.createFolder.commands.category">
- x! N, }. c+ W/ X$ u </category>
/ T( v: O% V9 ~& C( x, U4 j% v) a0 q$ }" ]. v! M4 L. O* M
<command
9 g) N9 l( E9 T name="PLMHome CreateFolder"2 Z$ }$ k3 }- I4 N5 z% x4 s% s
categoryId="com.plmhome.createFolder.commands.category"* I b0 j Y) u/ a/ [: q7 L
id="com.plmhome.createFolder.commands.sampleCommand">
# f3 n" _7 {8 y3 R3 Q </command>
8 H1 W5 S& Z, {4 j, h3 i; X5 \) q2 Q0 Z, h0 a3 ?' h( n/ q# F- s
</extension>4 C C& Z$ Z. W4 [
<extension
7 l7 Y0 i6 C# {) a. j5 l, j point="org.eclipse.ui.handlers">7 ^9 R) p" @- V8 A" S. a8 d# l
<handler
+ E$ } G+ I! M4 i4 V; ?/ p commandId="com.plmhome.createFolder.commands.sampleCommand"; X* Y# k, Q* n5 N; G
class="com.plmhome.createfolder.handlers.SampleHandler">4 M5 ]9 A0 K# B$ b5 M" g
</handler>
$ z8 c- [4 m- I4 V </extension>
) A8 D' o" E; z1 W7 Y <extension
- b6 M# O @0 w! h' f$ ?4 i point="org.eclipse.ui.bindings">: Q; \; m3 U7 W' ?8 v( ]
<key
^. L; `, c# ^ commandId="com.plmhome.createFolder.commands.sampleCommand"
( s& b* ], i) g% C4 T5 X( N4 K0 c contextId="org.eclipse.ui.contexts.window"2 H- _6 m9 u$ l, h
sequence="M1+6"
3 N3 _4 }2 e/ p& R schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"> }6 r: h4 @- F8 O1 t9 ^
</key>
& @" Y g) ~6 o/ j0 L% G) h7 n </extension>
$ q* o$ |7 L6 Z5 M4 x <extension4 l" ]; c/ `+ i' I# ], V
point="org.eclipse.ui.menus">
4 T; A! |: V+ Z2 Z8 k, E" w2 F1 o# d3 ~4 Y
<menuContribution6 z' H' _+ S& p$ W4 t& E
locationURI="menu:org.eclipse.ui.main.menu?after=additions">, Y+ n. f% R& M) _
<menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">
: o& I2 c6 T% h5 V9 H( B <command
/ a& @+ I& C7 \* f7 j commandId="com.plmhome.createFolder.commands.sampleCommand"2 i+ W- x/ ?. K) C! e
mnemonic="S"( U) u3 L. r" }
id="com.plmhome.createFolder.menus.sampleCommand">
: w+ O' x6 [+ E3 u* l7 I </command>8 t$ ^) [. a" }7 z
</menu>. F0 K! e& P$ d2 N5 e2 j/ W
</menuContribution>7 o& p- M* o U
# N* D5 Y- @& l# S7 }
. e- s; n5 d0 F6 [* f) M" N( q" r
* K4 x5 O( h9 H4 w- ~ <menuContribution
% i q' O X' e locationURI="menu:tools?after=additions">7 p6 I5 i* ^6 p( p- T
<command& S% T/ h: W y
commandId="com.plmhome.createFolder.commands.sampleCommand". `* {6 m& Y' P [
mnemonic="S"
$ }6 M" L* l# v! Q id="com.plmhome.createFolder.menus.sampleCommand">
/ x! h5 O0 a; B R8 S </command>. R8 v: y) [7 d, c
</menuContribution>
. o; r! n2 E7 O3 P4 S, m% F
c Y Z8 t- f8 r; S! T3 s# c4 ]8 w( S+ i# b
( }) H! b% p) Q& M* X" |6 H <menuContribution
$ [4 a( m* I9 [( c; O* _9 P locationURI="popup:org.eclipse.ui.popup.any?after=additions">
( f3 i* w; O0 t/ s& {: g J7 X <command+ w! [( w! H6 x1 f3 d+ U
commandId="com.plmhome.createFolder.commands.sampleCommand": y* k0 B% v6 y' z
mnemonic="S"0 Z" k$ N, `& j' T6 e2 ?) J
id="com.plmhome.createFolder.menus.sampleCommand">5 }: P. q4 \4 U$ R5 f. T9 a
</command>3 l9 T( f3 d" J! d; C" k
</menuContribution>$ j/ ^% ~) F+ K- k: H" n$ k4 M9 v
' ?; I- w. I$ ^6 B; l <menuContribution5 F) d' c9 A$ Y7 L+ M
locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">
9 A$ b/ ~7 V* ?5 U5 C+ Z9 v* p) k <menu+ m" `2 B; X: U, } i* Y0 Z, n
label="PLMHomeToolKits", e+ A% b' E; ?; C+ [0 e" e
mnemonic="M"1 x# _. k0 G" `% k
id="com.plmhome.createFolder.menus.sampleMenu">
+ ~$ T+ `7 R" r3 O# n5 @4 B <command
3 D) T; P7 t% l7 L+ v commandId="com.plmhome.createFolder.commands.sampleCommand"
p' M' T# ^, Q8 L+ |% V mnemonic="S"
# X/ D2 N6 q. X# D id="com.plmhome.createFolder.menus.sampleCommand">
$ l8 B, ?1 j9 g1 ?/ g" e9 w </command>: v( d' N' }& R; X
</menu>
5 V0 y5 o# a$ f/ W </menuContribution>) O, d8 l& S6 ~( N( D
9 `" L0 E+ s3 Y% N <menuContribution$ r5 O- {1 u, Z- [
locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">
+ K4 _4 U! r( L* B <command3 }/ P, r0 G, t$ r Y
commandId="com.plmhome.createFolder.commands.sampleCommand"
1 w+ d1 k" H: ] i4 G# F1 z icon="icons/sample.gif"- t* { |! r& s$ p1 r. ~
tooltip="Say hello world"7 Y O9 J+ C" T* A6 X
id="com.plmhome.createFolder.menus.sampleCommand">
3 h7 j5 s# C7 a! ^, R2 ~" m- q </command>! y6 M7 W! z" f& @ _
</menuContribution>
8 t' t0 g: _2 v# B$ H$ Y5 Q# `: w
7 l8 B+ I0 Y, i& `9 `
<menuContribution
6 H4 \. `) {0 W4 V3 X. P* O% m/ a locationURI="toolbar:navigator_Toolbar?after=additions">
" q4 \& o- R0 J9 o1 Q" [ <toolbar
, g/ {* P7 H+ F1 R8 P id="com.plmhome.createFolder.toolbars.sampleToolbar">
$ B& I8 h5 |- ]1 g3 ^& _" m) X <command
: e# u6 W6 H# A5 h! ^/ [1 {2 {0 Q commandId="com.plmhome.createFolder.commands.sampleCommand"" S$ ?, G" A# o) Q
icon="icons/sample.gif". {5 v' Z5 y: ~: d3 E8 i3 Q! R
tooltip="Say hello world"
* N! m, U& W8 Q$ V$ R: G id="com.plmhome.createFolder.toolbars.sampleCommand">2 ~/ j9 I5 R" G+ [1 T$ P
</command>
8 R$ N$ a! M# b6 L, }# Y% ]# z: k6 P </toolbar>
) H& z/ }. t5 m) q7 q. U2 M </menuContribution>
. `8 S+ y& ], X1 H6 ?
/ E+ y. P: g$ Z
% [8 |! b0 \ j6 q. Y/ A </extension>6 d% q% y6 Y. M$ L) v* _2 U& A
$ w( G+ v0 t# f# X3 {7 R- F
</plugin>
. c1 y7 F* S8 }0 E$ d# l' J2 o. D7 j1 ~1 f. z, }: h- m- t
" w/ F; F, [, P6 w3 Z& O+ X
" E+ \+ i; U, e K8 k$ M- f+ G6 _
|
|