|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
×
【Teamcenter胖客户端开发】teamcenter菜单添加图文教程<1>
' |! E% R" w. d+ E x这部分内容实际上是eclipse的插件开发的功能, 这里做个简单分类,菜单文件的扩展点都是 <extensionpoint="org.eclipse.ui.menus">,添加菜单就是在这里面添加内容。这里只要注意location即可!$ d: X2 P& u# ^4 }, e6 y4 E
(1)在主工具条上添加菜单。
2 R# L1 t4 |# n. V0 f. {/ Z <menuContribution
! s) h1 d0 ?6 y! i% ?% X( d locationURI="menu:org.eclipse.ui.main.menu?after=additions">, |, K8 ?4 Q) k$ }
<menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">/ i2 C9 |' G/ S+ h
<command8 t$ F. p5 t4 U* L- o2 K7 J
commandId="com.plmhome.createFolder.commands.sampleCommand"
3 y9 t1 H' r y; M mnemonic="S"
6 N) J! y' | a- I( {' W" i id="com.plmhome.createFolder.menus.sampleCommand">& M2 e: P1 s- u
</command>+ U8 e! i5 g, @( ]" p! j
</menu>
( }/ F3 N7 q1 l. Y </menuContribution>: N: l: @& u. k$ H7 d
/ v1 u& a( N( C9 F- s
(2)在工具功能的后面添加按钮。
5 T4 v5 y9 r9 q( F% m/ q# y3 F8 a8 _ <menuContribution
, c7 J5 R) z1 v locationURI="menu:tools?after=additions">
! x f# p* Q* R+ l <command
+ ?3 Y1 n6 \/ e4 Z# e1 ^1 f8 H8 w commandId="com.plmhome.createFolder.commands.sampleCommand"# Z7 m6 y4 r! W! x5 }
mnemonic="S"6 @9 A: C# w7 X/ l% d
id="com.plmhome.createFolder.menus.sampleCommand">
4 r9 C. r* ?; Y+ ] </command>; l" j7 X7 u5 h! @8 t9 T8 M
</menuContribution>
' O+ ]$ T0 y0 u B* ]8 S; I
o3 V" P3 @0 L7 B6 R5 Y6 a' G(3)在右键弹出菜单加按钮
" F: W& A9 n$ U! ?' _8 L <menuContribution, @4 C% W3 v5 Y& Y: g% u" e
locationURI="popup:org.eclipse.ui.popup.any?after=additions">
1 c1 D$ b8 K* `6 o$ p <command
) y$ E: j& v2 t/ J* T7 Q commandId="com.plmhome.createFolder.commands.sampleCommand": Q9 J4 ~" F, j' @8 U$ M) z
mnemonic="S"
2 {1 j3 Z+ v/ B1 `0 T0 y id="com.plmhome.createFolder.menus.sampleCommand">
" ^) ?% x+ v% f7 G8 w k </command>
- i0 A, E# q0 u) R9 `+ P </menuContribution>8 s/ S4 X6 ], [. ]/ Y5 G" S
(4)在具体的菜单后面加功能按钮7 E/ Q1 B7 ? F3 c8 b
<menuContribution
) I7 n" C& c1 B; a locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">
+ i; r# G) i3 l <menu
$ T, a* E+ Y- o# S) w' y4 X! i: M label="PLMHomeToolKits"
; t% h1 [) J% `0 f g( x mnemonic="M"" K( Z3 D( V1 Q9 k9 l
id="com.plmhome.createFolder.menus.sampleMenu">
9 m) {& L' A6 Y& _, ]& a" n <command" @2 ]* M" F1 f/ G
commandId="com.plmhome.createFolder.commands.sampleCommand"
7 m: z3 W5 Z0 \3 Y" l' O; X mnemonic="S" }0 w6 E" x1 Y$ Z0 L* U+ j
id="com.plmhome.createFolder.menus.sampleCommand">
5 c' {# G! ?9 b" u. c </command>3 X' a1 H; x9 J6 }( `5 Q
</menu>
% p" K. s: W8 }$ ~ </menuContribution>5 [7 Q7 z# @1 ~' E5 H+ w7 Z! a1 Q) i
# l8 H ^/ J& k3 U
(5)指定位置,直接加按钮+ q9 v* _3 p. I7 B; A! D4 S
<menuContribution
& W, K- ^- N( s8 c& ]# z2 ~ locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">6 b0 R8 ^) w' X/ y
<command
) S( m+ k: l& ^6 I1 R/ V: k$ w commandId="com.plmhome.createFolder.commands.sampleCommand"# Q/ }, ]& N! \# H% {# e. |7 u1 g+ m3 |
icon="icons/sample.gif"- T' P C; D. G" [# V
tooltip="Say hello world"6 [8 O7 s* W7 T4 z% q4 P$ `
id="com.plmhome.createFolder.toolbars.sampleCommand">) ~% {8 W/ ^; H
</command>$ |' g$ I: D) X' K+ L# T- q) J( w- D
</menuContribution>
l( F6 [; U) {& m2 L
- Z G& i6 J' m$ X' ~1 G/ E(6)加工具条按钮7 g" v/ h/ ]7 L4 ]% c
<menuContribution# y! D6 K& a, u- c w$ @- Z
locationURI="toolbar:navigator_Toolbar?after=additions">! Q0 a# r$ A! t" k) n! S1 g# ?
<toolbar. \2 _! W; E& }; ^
id="com.plmhome.createFolder.toolbars.sampleToolbar">
, P6 M2 o9 t L- X4 D- X <command
! u1 ~' `: @5 S( D) r) E commandId="com.plmhome.createFolder.commands.sampleCommand"' I% J4 U( v3 \8 f: g: R. l
icon="icons/sample.gif": E$ }: h; w1 ^+ Z( _
tooltip="Say hello world"1 M" ~8 q$ q2 a9 G
id="com.plmhome.createFolder.toolbars.sampleCommand">
1 ?. U# Q9 S& r2 F T. w; ~( x2 b </command>
! K4 m6 s1 c' p$ s </toolbar>
8 h8 v8 [8 l: q) e+ h# k! h </menuContribution>
8 i9 A- j3 M' z+ O; Q/ o, |% ?: _/ ^( E1 s$ o- }
3 @/ o. V- f: G k
完整的例子如下:
5 F; v) E6 a) e% `" ^# H6 q% u
$ V2 l; g. K9 V: z4 H, i/ D1 h<?xml version="1.0" encoding="UTF-8"?>4 X. X( s, X& C. I
<?eclipse version="3.4"?>
( G4 b3 H4 l3 t' r* U4 D( b<plUGin>
8 g' f& p8 C7 C+ |. y( _4 o& L$ Y& E
<extension
V* j3 M# I! D+ [ point="org.eclipse.ui.commands">
2 W8 S9 |# U- |1 B4 c. W0 k <category# _ ]4 s9 p2 X% Y
name="Sample Category"! x4 s, r! U7 o8 V: v" [6 g
id="com.plmhome.createFolder.commands.category">/ M G8 y* _1 s8 m. L' A, }9 F
</category>
* t) G9 A! w; N+ e Y- |) [1 z, U' o2 W6 P; J% y
<command
( K/ k* ^# C' y4 }: R8 G2 n: C name="PLMHome CreateFolder"; U/ s' k' ]% J/ v) N
categoryId="com.plmhome.createFolder.commands.category"
, s# ]% \# F5 T% A% o id="com.plmhome.createFolder.commands.sampleCommand">! o0 }# p6 a m3 `2 c
</command>
' s3 v) F# _1 J# Z2 X' G! X6 B" P% L' u+ f& e/ q, Y
</extension>
7 n# O ]3 N2 P" o N4 } <extension
- H) a) n9 o2 X& F1 d5 } point="org.eclipse.ui.handlers">
; P$ p, [7 ^" {+ B& T F <handler. e( }# @* [' f" L* ]7 |5 }
commandId="com.plmhome.createFolder.commands.sampleCommand"* ^3 V" q ]. W$ T3 `
class="com.plmhome.createfolder.handlers.SampleHandler">) n3 k4 r+ E- M z9 W3 k0 }% V E0 |1 t
</handler>% o8 m2 a; a; o& `8 L7 f! Q& I
</extension>
5 F ^9 Y7 I( ~. B <extension( I) M; M1 U. g X$ D
point="org.eclipse.ui.bindings">" B, j q+ R1 Z, l/ D
<key
, b2 J1 a+ E0 K! x& R commandId="com.plmhome.createFolder.commands.sampleCommand"
% q) M( n9 a5 {) {% K! _ contextId="org.eclipse.ui.contexts.window"
7 }& f2 k) }: H0 f8 J sequence="M1+6"
: y$ S) `! D% q; b8 O schemeId="org.eclipse.ui.defaultAcceleratorConfiguration">
( w* R7 z% j( @$ U) c </key>
) R1 N" L. w. F1 p. y </extension>
+ o% g; s% D3 ?# P7 Q <extension
- n- V# |) b2 y- ^. {6 @6 z3 ^! l point="org.eclipse.ui.menus">3 Q: h4 A* x9 I3 W
F! M8 K& u% T- a
<menuContribution2 S# x% W: t" a( x1 s- f4 ~
locationURI="menu:org.eclipse.ui.main.menu?after=additions">+ h6 m B9 o0 v" \7 x# Q
<menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">$ E) \: I0 i) n0 X
<command7 f# _. `8 b' o; N( P) o
commandId="com.plmhome.createFolder.commands.sampleCommand"
1 k6 V; S! w. m# r% {- q. I mnemonic="S", K. U) W9 v% n0 L
id="com.plmhome.createFolder.menus.sampleCommand">
0 J o3 e' Q( h. L' e1 M5 Z </command>6 g: ^6 w& [* C6 C' T! k8 J* Z
</menu> o U9 y! N h) d1 z
</menuContribution>4 z# K3 }! Z* \9 i% E0 N7 x
0 o& j6 k7 O; p
1 m q" v1 Y0 Y: y! z
' C8 n0 s$ J' m. \) F: F <menuContribution
& l. a' d# _" l/ O locationURI="menu:tools?after=additions">
# l5 q# f6 r7 J <command' D( x, o. _6 w. u" E
commandId="com.plmhome.createFolder.commands.sampleCommand"
& K; L: `+ t3 w7 ?6 ` mnemonic="S"4 }1 @6 b6 H2 ]
id="com.plmhome.createFolder.menus.sampleCommand">9 V' i; X2 B! h" g$ q3 L+ m+ y& p& t1 N
</command> r8 Q0 p, R1 k
</menuContribution>
$ I, A, x2 s# [- i
# Z( j$ U) o* t3 N5 ]5 Q1 U2 ^- V- T+ y( i! O- J
! \# f/ g& K; T+ i4 C <menuContribution* Q2 X8 q; c- V
locationURI="popup:org.eclipse.ui.popup.any?after=additions">) U0 M) y) B# M+ P' @
<command; J1 g1 P" z# j" B
commandId="com.plmhome.createFolder.commands.sampleCommand"
- n; x; s$ j$ @, L4 D& n8 k' m! { mnemonic="S", r4 {& B# A+ _( s$ f
id="com.plmhome.createFolder.menus.sampleCommand">' @6 p, y; @2 W2 g. b. b
</command>2 }; E* C6 z& Q8 b# D0 l5 p
</menuContribution>" V2 e- a. a/ R2 q/ Q, g
* C/ m, X# g& x( a# i5 Z+ m <menuContribution
1 p. y. z# s* O: q" a1 I2 V locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">
4 j. o. J* u9 ] t1 r( N& c <menu
! w( y8 d! K+ K' f2 w+ R( d label="PLMHomeToolKits". H* L( s; n* W- I
mnemonic="M"
7 u& z+ u* T5 o6 {+ K id="com.plmhome.createFolder.menus.sampleMenu">; }. T* W5 y6 F4 v' K) R
<command/ b+ j& Z" u" o* s4 h
commandId="com.plmhome.createFolder.commands.sampleCommand"
0 `3 S% J8 [5 P mnemonic="S"
2 T6 `5 ?9 Y; N6 s1 Q" P id="com.plmhome.createFolder.menus.sampleCommand">
, h v: P4 U) u( Z0 ^1 Z4 D9 \ </command>
; A. l0 u# ?* r </menu>
6 a0 X9 x, `1 ^- p3 ] </menuContribution>
l, U0 @: p( N: n, @
% U$ L" n# I1 K, i& [2 ] ^ <menuContribution0 W& a8 e- t- w% R+ C6 Z8 | H
locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">+ m6 F0 o! C* ]: x5 f# ^: `
<command* r- U$ u4 l+ R- x
commandId="com.plmhome.createFolder.commands.sampleCommand"8 y. I/ P7 \# I4 Z. A
icon="icons/sample.gif"& k2 d9 x1 r' g! i: p0 s! X( _
tooltip="Say hello world"
2 I; n5 g B8 K" z id="com.plmhome.createFolder.menus.sampleCommand">
/ u/ J9 u/ y- `! o </command>
- \- _2 C5 P8 D' J# ^ </menuContribution>
1 G% h- A; B3 Z) f( p( X x" Q! x, ]# H* a! [8 x
( a$ |/ _" X4 l3 @2 ?0 o
<menuContribution/ K, d, R ~# {8 D2 m" S4 O
locationURI="toolbar:navigator_Toolbar?after=additions">' a+ U& \5 G- ~1 r1 V7 v
<toolbar9 Y/ E) I0 z. O3 A
id="com.plmhome.createFolder.toolbars.sampleToolbar">; E& ]3 t m5 s0 ~
<command) Q) z$ T8 a5 L( B) n# P
commandId="com.plmhome.createFolder.commands.sampleCommand"4 q, Z) D q- Q8 F0 C
icon="icons/sample.gif"
$ U; h$ ~6 y# L' F/ `" L9 L tooltip="Say hello world"
' T" P4 C1 |! k, Z5 o# U id="com.plmhome.createFolder.toolbars.sampleCommand">
* J2 [! l u5 m# D. E. L </command>
& E9 r1 d" a9 p2 M </toolbar>
. e ?1 @, D4 [/ x P1 V5 j </menuContribution>1 C( r' Q4 {3 P+ c( v9 B3 m
$ M! b3 I [, w2 H" P* o- A
1 B" g* g1 j j8 z8 ]" T p </extension>4 s9 [! B4 v( J: m {
. g) n( ]2 p9 x+ Z, m# L5 l! c</plugin>! D! H1 d q* } T
0 p: [ ^4 ?6 Q# ~4 W/ q
9 L5 ?7 X3 C5 S2 c/ j* C
! Q6 a. A) r. K' _1 p, f
|
|