|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Teamcenter胖客户端开发】teamcenter菜单添加图文教程<1>
/ S* h( ]9 ]9 Q这部分内容实际上是eclipse的插件开发的功能, 这里做个简单分类,菜单文件的扩展点都是 <extensionpoint="org.eclipse.ui.menus">,添加菜单就是在这里面添加内容。这里只要注意location即可!% y4 w3 d' n, i3 ]) _
(1)在主工具条上添加菜单。
8 o/ ]* k4 t( `3 ? <menuContribution
4 e7 V q& w' ?! m, d, h) q locationURI="menu:org.eclipse.ui.main.menu?after=additions">6 u+ Q% s$ U; v/ C; R4 r
<menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">
6 f: D& d- ^5 \( D: r5 i <command
A/ k$ v$ B, T- v commandId="com.plmhome.createFolder.commands.sampleCommand"9 f. G- k1 U4 K5 b( X
mnemonic="S"
; N2 w. R7 k( z% j) A% _* O4 L id="com.plmhome.createFolder.menus.sampleCommand">& ?+ Q2 j2 h& C' O0 ~
</command>
) K- q6 R. v, |) Z) q </menu>
6 `) N4 A; r. }: Y8 S5 U </menuContribution>' Q; V; q( h' r$ b& v
* F9 }4 m' ~+ k, U- n(2)在工具功能的后面添加按钮。( d* f) s, _/ l! f
<menuContribution
9 U! L0 t* z) k locationURI="menu:tools?after=additions">* k. ]- K# R0 l& {& _
<command8 F/ }0 @& u" n
commandId="com.plmhome.createFolder.commands.sampleCommand"2 i: Q" K$ @/ C
mnemonic="S"
8 _- ^4 X, F% ?+ E id="com.plmhome.createFolder.menus.sampleCommand">+ J5 I9 i% [ K9 g# p, u. W: t
</command>
0 f' {: M n' m3 ~( p </menuContribution>
3 e* z! h! r7 B+ s: |3 l G
( f' B$ F$ }5 c, M3 |0 [( @2 f(3)在右键弹出菜单加按钮
6 {: I) G/ ?$ {9 t <menuContribution; A" ]1 F5 J; I" ^) M
locationURI="popup:org.eclipse.ui.popup.any?after=additions">1 r- D6 s$ B% z7 ]! S
<command2 |/ E/ a) d( T6 {, T6 x' k4 |) q
commandId="com.plmhome.createFolder.commands.sampleCommand"& c9 { e) {, Y) J2 Q
mnemonic="S"
7 p4 Y) `( A$ S8 W% p4 H id="com.plmhome.createFolder.menus.sampleCommand">: {; l( e8 F: _( `
</command>
2 {% B/ y) R. e- S: ^4 r+ j/ m( L </menuContribution>
& L# o0 F9 ?5 e ^. m& `: h(4)在具体的菜单后面加功能按钮
; q W3 H3 K, v( M K8 N <menuContribution
! ^ l; o' ]3 T5 w6 b z# J locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">
0 [2 C! b- H4 O4 ~0 H |3 P <menu
I) f# ~6 Y4 W" S( s5 ~5 t label="PLMHomeToolKits"7 x7 u5 g# d# b2 n) I
mnemonic="M"" ^2 m4 I! i/ _5 f5 `, z6 g' o+ Z& o
id="com.plmhome.createFolder.menus.sampleMenu">0 r7 i4 _8 P4 I v" r
<command. b2 o$ O* D S' x
commandId="com.plmhome.createFolder.commands.sampleCommand"7 @( q" _ z4 i, Z8 E% g
mnemonic="S", f0 t7 z1 `9 [+ ]& j( Y, q
id="com.plmhome.createFolder.menus.sampleCommand">
+ _7 s' f: s1 z$ [) k </command>
$ ~. `5 E: s. L' w" o </menu>/ H( c1 P9 |6 ~/ p) z9 }9 t
</menuContribution>+ W5 \( I( U+ C: F/ w, ?. o
+ A, {- Y5 g+ I9 J; L" v3 Q9 B(5)指定位置,直接加按钮
$ e6 q3 v, p* Q" h& J5 E. b8 i <menuContribution% T- [& g; S6 J
locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">4 K' D' n3 V t
<command1 B5 D: N+ A3 J
commandId="com.plmhome.createFolder.commands.sampleCommand". M/ @+ @5 I6 J% n9 v/ R: r% O
icon="icons/sample.gif"
+ F" S# `9 |4 N- s! O. d" U tooltip="Say hello world") t0 J2 _/ T; `1 ?' A! l
id="com.plmhome.createFolder.toolbars.sampleCommand">8 d6 G U5 _* i# t6 N
</command>
* c' ^! ^, b& O- u) b* H2 b7 e </menuContribution>2 l4 u& `" Z( S4 |
* m: O7 `4 F2 h
(6)加工具条按钮
, o$ V- I7 Y1 r6 A <menuContribution( V/ }; r9 B3 ], [. t
locationURI="toolbar:navigator_Toolbar?after=additions">$ R( r' e- ]6 ~. w% M+ z
<toolbar3 b4 d) M0 ~) ?+ Z
id="com.plmhome.createFolder.toolbars.sampleToolbar">
) L$ W( b" e4 M, V$ d9 q y$ b <command
9 V! j" z) {: h commandId="com.plmhome.createFolder.commands.sampleCommand"3 ^" E b: M! ~. t2 [6 K B% J
icon="icons/sample.gif". Z2 ^$ H% @/ b3 n5 G7 e9 Q' h
tooltip="Say hello world"
+ W) D: E7 q+ `5 c" G9 C+ J id="com.plmhome.createFolder.toolbars.sampleCommand">
: ?( ~- [- \ o9 c8 F" W6 U: ^. p: u </command>5 b3 c1 r9 E1 @
</toolbar>
F' t2 J9 }0 L3 L6 H8 V4 S2 {$ g3 ` </menuContribution>
/ `5 A4 v; l! b0 I1 D
& `) [5 y. [+ t6 R+ N) {8 c* o9 x8 H: [1 [5 F" P2 ~
完整的例子如下:
9 v/ b! G; p3 o, n4 ]- M- y2 H( g6 z% E- u$ ^
<?xml version="1.0" encoding="UTF-8"?>
" h6 U& u, g4 d<?eclipse version="3.4"?>
! m9 e6 P* [7 ?% H b<plUGin>! t$ H: l# x; G+ f$ L
0 G7 x, v! B/ ]* t. s <extension( v- b( P# |" ~0 H) S8 o8 z: n
point="org.eclipse.ui.commands">; E8 U w+ j4 ?
<category. t1 }0 M; [0 c$ A) P3 P
name="Sample Category"3 j( b: Y( G' B2 d3 A" j
id="com.plmhome.createFolder.commands.category">' I$ n" k4 {3 a* l% c; A' i, S) ^ i
</category>* T1 N- q3 |/ G: @1 Q
( \8 L/ }4 s" [/ q1 W$ a <command3 r; `" o) F) X4 ~* @$ s2 I
name="PLMHome CreateFolder"
# _$ s5 n/ r, r/ M! ^% u8 l categoryId="com.plmhome.createFolder.commands.category"
, ~/ ?) t+ D: e) K s2 v+ F id="com.plmhome.createFolder.commands.sampleCommand">2 o! Q, p- H, n9 L' ?
</command>
* g9 w; l6 y! q! o- r) i+ |2 Q
. X$ d! r* d- \$ t+ N$ ^4 L' a1 F0 x" L </extension>
4 ?4 P9 A; A7 ^. e <extension
0 l$ D1 Z0 i! x1 N4 |" [2 [ point="org.eclipse.ui.handlers">
% d9 l5 \) f, ?9 L2 y) |8 e <handler
. S2 Z1 w( W* p' x* f commandId="com.plmhome.createFolder.commands.sampleCommand"
! ~* l5 U: P4 s- y class="com.plmhome.createfolder.handlers.SampleHandler">
' K( y3 J0 n# T; z </handler>$ R, Q" u5 Z% B2 O: F
</extension>
) |7 E; ?2 w. M* B <extension% ^. B2 Q" h z$ W
point="org.eclipse.ui.bindings">
' A$ |& S) t3 Y: g( B' n/ n <key, \( U2 c# o* J* g& \ q
commandId="com.plmhome.createFolder.commands.sampleCommand"+ k. d2 f5 D: R4 ^; R
contextId="org.eclipse.ui.contexts.window"
9 J8 {9 j' Z9 R8 |' V d, Q' c( c6 l sequence="M1+6"
5 w3 J& ]4 X' T2 Q schemeId="org.eclipse.ui.defaultAcceleratorConfiguration">
# h+ w7 O& V ?8 `5 E6 ?$ @, v </key>
5 x* V8 I$ T! z5 }& b9 {" ` </extension>" Q2 x7 _1 t# H7 j% H' \/ C3 A
<extension; V' _+ v1 P& K5 [ G2 ]
point="org.eclipse.ui.menus">
3 O8 {/ S+ n% D' j6 _) E1 |& S; B& c# i) `; R% M& q1 z; L
<menuContribution; g; X0 I8 C( i5 J: Q
locationURI="menu:org.eclipse.ui.main.menu?after=additions">
" G* H# V: R$ y7 i& C <menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">. X, @4 H" _: W b$ U& t7 i
<command
2 S7 m. x) t( ]3 i ]5 g commandId="com.plmhome.createFolder.commands.sampleCommand"
+ G+ h4 ~# V, W mnemonic="S"% G- F8 o" C6 x/ d4 M7 @! J
id="com.plmhome.createFolder.menus.sampleCommand">5 R9 j4 z( P2 ?, K: s" w
</command>9 h- G6 J. E7 X
</menu>
# R k5 n7 \! H& J& z </menuContribution>0 Q4 n+ y7 T/ A
6 G- m! s" Y; B9 P; I9 l% U# Z" u
* `1 y/ X, c) l! q, A# M
+ D$ _- i6 f9 y) S8 n
<menuContribution& j0 R* y* x, q( j6 [# f' [
locationURI="menu:tools?after=additions">; W, I, J5 d6 j2 w) S
<command% P, j/ k5 K# V
commandId="com.plmhome.createFolder.commands.sampleCommand"1 o* |) n0 K9 i# H: H7 g( d
mnemonic="S"; n. S$ U0 f0 o! a
id="com.plmhome.createFolder.menus.sampleCommand">
! J& N+ ^% Q' i' x1 \8 ~, [$ W L </command>; `- C F" w- I0 \' F* T& f
</menuContribution>: a& L& x9 i' i. N5 O; K
$ \/ z" l( h/ Y$ b0 O }
. @% ~6 W1 H, T3 @+ A( h3 |$ H+ n v- f! y
<menuContribution8 L; ^, m; Z9 U/ T
locationURI="popup:org.eclipse.ui.popup.any?after=additions">7 K9 W/ g; R/ `9 a# X/ v1 X! E
<command2 T( `' e/ ?9 n) R. d
commandId="com.plmhome.createFolder.commands.sampleCommand"2 M- R: g& `2 @. h5 c, O3 t; b y0 s
mnemonic="S"
& f" G% W3 Z6 ?* ]) t& R4 r id="com.plmhome.createFolder.menus.sampleCommand">
7 Z' X( y. o z w </command>
9 ?% B+ S% s Z0 c5 e& \ </menuContribution>
3 P2 ?# Y {9 L
$ ?8 c# y% G+ l2 z9 s' V- ~9 V <menuContribution
7 w( m* X2 V5 P$ f locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">
" ?* p# t- E- P: [! ~0 ` <menu3 i2 U1 q" Q0 Z/ Z9 S
label="PLMHomeToolKits"6 Y! I; B" }; t
mnemonic="M"7 Z: ?8 `$ V& v
id="com.plmhome.createFolder.menus.sampleMenu">
V- ]) ~. I' u <command E# C' G* v" V; j
commandId="com.plmhome.createFolder.commands.sampleCommand"
5 A [0 h$ v) l# K0 f mnemonic="S"
# N* ~, j3 X# S) Z id="com.plmhome.createFolder.menus.sampleCommand">
: R' n- r1 g# S6 y </command>
6 x3 K# `9 N9 o( j. q </menu>4 _2 C( U& }7 }/ O+ D- i- C# f f+ ]
</menuContribution>
* o r# Z+ {, I: c: F$ e3 B) l# |5 ^
<menuContribution
3 i0 K. e$ u6 V locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">
2 _0 U# x7 F9 e& F: h. J <command+ `* b4 K8 j' N- ?
commandId="com.plmhome.createFolder.commands.sampleCommand"8 B# t* D9 X9 b8 [
icon="icons/sample.gif"
+ j% T0 a" t1 B) D' m- G% I( K tooltip="Say hello world" M. b: u. r( |% S9 E
id="com.plmhome.createFolder.menus.sampleCommand">
1 G( M& h; j; n: W7 |& E" s </command>
S% J, o9 _! P' O% y </menuContribution>
" L! b3 c: g3 D% J. o- A; Y6 F9 B# ^
4 Y- _; K8 i; _9 C7 l
<menuContribution
" h$ C u7 r) k6 l! ` locationURI="toolbar:navigator_Toolbar?after=additions">; R- O: F( A& O' _3 E& e; ?- k' i
<toolbar
2 H [+ @: h; Z1 Y; f. K+ r id="com.plmhome.createFolder.toolbars.sampleToolbar">; v$ C( q8 H; X" M& J* X
<command2 H+ T* H. {7 P; F
commandId="com.plmhome.createFolder.commands.sampleCommand"
/ ~7 g3 g, b& q9 ]( ^; Y icon="icons/sample.gif"* }) k6 @, r2 }: B/ f0 c! Z/ K
tooltip="Say hello world"9 ], F; h0 j( a
id="com.plmhome.createFolder.toolbars.sampleCommand">: w# P2 H* W8 ^! M2 M6 I# |% x
</command>* a v3 q6 h o% L6 S3 h$ \4 g
</toolbar>2 L" `0 E5 k9 K
</menuContribution>! A. w" w+ P6 e3 K
8 q3 K# i# T, X. @) ?
, p$ _' D" I& l4 k) x </extension>4 ~6 f, P" Q8 |$ t# N5 t# F4 }' [
# A! H7 |- I3 _7 P! B6 s6 v7 X</plugin>
9 [# h3 |: ~% G
0 \- i0 P# D- t5 e: X: {" F K& I; q6 g9 {. a% \. D
' r) ?. D, y7 H% m2 o4 J+ a6 f
|
|