|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Teamcenter胖客户端开发】teamcenter菜单添加图文教程<1>0 X( i0 O! X" p* C) x F/ W
这部分内容实际上是eclipse的插件开发的功能, 这里做个简单分类,菜单文件的扩展点都是 <extensionpoint="org.eclipse.ui.menus">,添加菜单就是在这里面添加内容。这里只要注意location即可!# u5 `: Z% M$ P
(1)在主工具条上添加菜单。
! J% _0 I! h; T8 m+ R) S <menuContribution* ?$ [' A5 j/ K+ Z) D4 v
locationURI="menu:org.eclipse.ui.main.menu?after=additions">
7 J& E$ \0 j+ c <menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">5 l! @! `7 \2 h
<command
$ n) V3 O( Y" T: G commandId="com.plmhome.createFolder.commands.sampleCommand"
) G( r m/ n# `) B mnemonic="S"
1 c1 u3 T' e4 b/ y8 B/ }5 C id="com.plmhome.createFolder.menus.sampleCommand">
. t0 }1 t" @( T, k; e. p& H </command>) I" X' E/ P- m' f5 n! r$ a
</menu>
7 y9 G5 x5 N6 L) w! @ </menuContribution>$ p/ g* ?' B0 H
& Z0 g6 O7 o, I5 V7 H5 }
(2)在工具功能的后面添加按钮。
/ ~4 j& t2 Q1 H8 J <menuContribution
9 {: J) J+ X$ T( v locationURI="menu:tools?after=additions">* P; K! G4 d" ^) j: j) W: B6 e
<command$ M$ m1 z' j1 F! f0 t
commandId="com.plmhome.createFolder.commands.sampleCommand"! l' i1 W O% Z. _9 [
mnemonic="S"
u, u9 k3 T! j: d id="com.plmhome.createFolder.menus.sampleCommand">
+ r% D- F' T- `; X. j P' P& H1 q- X </command>: ]2 ] C5 _6 _6 E: O# k7 o" c
</menuContribution>
; y1 w+ L# i( C) }
* F+ ?7 y0 B E' d) N+ v3 E* V(3)在右键弹出菜单加按钮
8 }6 l4 G# Q3 S9 K <menuContribution
, X8 O! A9 I. d8 X' F5 C# o5 e locationURI="popup:org.eclipse.ui.popup.any?after=additions">
9 y- N) y/ u( b# v6 j3 J9 t <command
3 z- v/ r9 B0 k8 W commandId="com.plmhome.createFolder.commands.sampleCommand"
4 J/ r: o: C2 U8 ]' ]/ T: O# b mnemonic="S"
! Y9 Z6 a" f& R% U3 T id="com.plmhome.createFolder.menus.sampleCommand">
% E* c- H9 a/ N1 K+ t0 D B0 J6 c </command>
' W% |2 U& A) u- y </menuContribution>
9 y' [0 s( V6 Q8 t% y* d(4)在具体的菜单后面加功能按钮
; n9 G% I, u" W% U4 b/ I <menuContribution
( `. \8 i& O" r% ~7 J3 J" I9 | locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">9 A P( s: d2 ^3 i
<menu
! s9 l+ N4 N5 x) J" S X9 b0 O label="PLMHomeToolKits"
. b, h- m* t2 W3 r# j. y: [- c% j, ~, h mnemonic="M"+ T# f3 {% ~/ ~9 o1 V4 `
id="com.plmhome.createFolder.menus.sampleMenu"> k5 t, L" f( V5 b- R+ z* Q
<command$ n& C5 d: n" T6 ]- x& [
commandId="com.plmhome.createFolder.commands.sampleCommand"3 G, w+ M8 M. P6 q$ W/ {" P+ y
mnemonic="S"8 G2 {0 H: H0 Q M9 H
id="com.plmhome.createFolder.menus.sampleCommand">
! P2 m9 l7 u$ O& l! ]) x" }& O$ Q </command>9 H$ a+ j7 x: T
</menu>, o' G2 ]& p3 W+ c) P
</menuContribution>
! h- e5 E+ J; A7 D4 @
# P7 R' p2 ~1 Q. U& n' O(5)指定位置,直接加按钮# q% C% C! W3 p( O7 K
<menuContribution
7 D5 o2 Y' @, g7 V5 ^ locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">9 x4 N. V0 _# u0 n% F
<command& y& W$ w& U9 P
commandId="com.plmhome.createFolder.commands.sampleCommand"
9 p0 Y9 D5 m$ I9 I! h8 a icon="icons/sample.gif"
/ U5 A% h; ~) ] tooltip="Say hello world"
2 f N4 j" d& {0 d' Z$ q4 p id="com.plmhome.createFolder.toolbars.sampleCommand">4 c9 Z9 F) o) H1 q8 z e
</command>( `! F0 L: D% `
</menuContribution>3 e6 S9 f( f) P ^7 W( e9 o
0 s( ?0 e; N& B3 l% I$ v
(6)加工具条按钮6 s! n& q Y# o3 U2 @
<menuContribution/ X* o9 h* h4 _$ A6 K" G0 Z- E8 {
locationURI="toolbar:navigator_Toolbar?after=additions">1 K" S9 j* @( f' x/ J
<toolbar
- z, G2 V$ _; B; D# ~3 F id="com.plmhome.createFolder.toolbars.sampleToolbar">
$ A, ] s) a4 T; t) q7 o( `$ z <command
( C9 D2 b( f* h0 t2 H commandId="com.plmhome.createFolder.commands.sampleCommand"4 ~; c% z1 i6 t5 a" S* [3 I4 u& f
icon="icons/sample.gif"& `) i% [* L4 G6 ?, S/ f, I. u
tooltip="Say hello world"
# u+ @. b: P- [0 }! B; R7 C id="com.plmhome.createFolder.toolbars.sampleCommand">& G" i1 E- T4 I/ K% T
</command>
" a. [7 P+ c N% E" p# J; W </toolbar>. L: B d2 {' J) p4 ?
</menuContribution>
) @5 ]# o1 U2 @9 y2 J( F# g" a9 n9 I7 ]/ t! k7 G M$ i
1 B9 ^4 W/ d5 z完整的例子如下:
8 C% T& T1 F) o) ~7 t. l3 A/ Q: ?9 I1 {8 `, G& n
<?xml version="1.0" encoding="UTF-8"?>
" S- E8 X& n/ l9 m3 x, C7 D# B<?eclipse version="3.4"?>$ x t7 j5 r( d( m4 b1 Z
<plUGin>5 [9 ~" \% E: l" \
+ A/ H6 V* |4 r) l
<extension* W& K2 O* A c" p, t# K$ ]
point="org.eclipse.ui.commands">; [$ T0 `& x8 u' k8 d) y
<category* z' ]+ V- C- \# a. _+ Q
name="Sample Category"
6 p! g L) N- H! _) h) R id="com.plmhome.createFolder.commands.category">% U: \! ^6 e% S( f, T$ \4 Z) G9 l
</category>
4 W4 G+ ~% H# f
+ l( n) o9 G9 A Y7 j# x <command6 _9 V5 s ?$ Y) P9 Y2 O
name="PLMHome CreateFolder"1 m+ I; G% m5 p' v
categoryId="com.plmhome.createFolder.commands.category"
) w3 U0 q2 l; Y7 y" ^) N% Y% k id="com.plmhome.createFolder.commands.sampleCommand">
7 K! x" p4 M: a8 _/ f- {# m </command># P1 @9 u( F. n) J7 t% x# I8 K
5 | _: a5 D$ B- c
</extension>: Q+ e! a1 o" Y
<extension! I4 d2 G7 i" ?' R. f
point="org.eclipse.ui.handlers">& T8 l2 [5 n8 T4 _
<handler/ U I; N+ N& j' u, c
commandId="com.plmhome.createFolder.commands.sampleCommand"
$ v" a$ }* J; _! V class="com.plmhome.createfolder.handlers.SampleHandler">9 x6 k! _( A# W3 [$ h/ q
</handler>4 a! C; c! A2 Z' X
</extension>
' n. I( E/ t1 P. ~; \4 y <extension
4 X& j. M4 m* G" V# t8 d point="org.eclipse.ui.bindings">
* c/ ]: e0 g1 Z' c7 V# n <key
, f' j7 G) ?# Z! u commandId="com.plmhome.createFolder.commands.sampleCommand"
0 r) Z' V0 H8 \) a contextId="org.eclipse.ui.contexts.window": K1 v; c1 i* O. l$ W) M
sequence="M1+6"& o: q& U4 i; ^% v
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration">3 s* V% p3 f+ W" f# g7 H
</key>
' `" Q3 i$ u. I$ M; I </extension>
D: J; A" g! ^8 | S3 m <extension
6 M7 _ \* b+ C( ~6 d A point="org.eclipse.ui.menus">% S& X0 a+ k( k/ S7 O( ]8 u2 `
) Z- a% ]. |7 ]: e# j <menuContribution/ I2 D/ _5 @, |0 O$ h
locationURI="menu:org.eclipse.ui.main.menu?after=additions">- g% N( F2 P" {$ l' N
<menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">
4 q+ q y# e, v! ` <command
1 |- `4 t, W0 ?3 x& } commandId="com.plmhome.createFolder.commands.sampleCommand"
& ?6 g3 D: d w mnemonic="S"3 N1 X" @, B5 N3 Q
id="com.plmhome.createFolder.menus.sampleCommand">9 Y$ z* L( S3 X
</command>
' @, g' j7 E$ ]: t </menu>
5 f7 _" B9 S7 P" m- V, n% K! j9 f5 B </menuContribution>
/ ?! s- T( u3 }$ m! t
j: D( O( L; A2 v( Q! K. u$ [5 ~! Z$ p& x' M: D( H
+ P. ~3 F* o+ W$ G$ U! J$ [
<menuContribution: [. _' Y# I, z- d5 \0 X3 T: f
locationURI="menu:tools?after=additions">
, y$ R- q9 t" ]5 I! x <command
/ z; |5 L$ o7 q commandId="com.plmhome.createFolder.commands.sampleCommand"
- X7 {; W4 A0 o/ j% b; {: a mnemonic="S"
7 O# @) ]1 r# U! T id="com.plmhome.createFolder.menus.sampleCommand">) G% p% [6 a3 x) N4 t! o
</command>: a3 \: [7 r$ S1 X
</menuContribution>2 `0 l2 M# D% R- U w" x; H
i8 {+ `: e" a0 I3 C; k- k% w* ?2 b* g3 t5 w$ O/ }
6 O9 C0 b. A+ \ ?+ |: z$ r <menuContribution+ E b0 T% [5 [- Y. b
locationURI="popup:org.eclipse.ui.popup.any?after=additions">
( u* s; v, Z" l" U <command" ~, z9 `/ C4 V# y. Z% [! v
commandId="com.plmhome.createFolder.commands.sampleCommand"# W8 B7 j, |" |' b# L8 r/ j4 X
mnemonic="S"$ e- `+ u4 x- r5 ^2 c& D
id="com.plmhome.createFolder.menus.sampleCommand">9 m3 p/ j3 a' T h, _, B, C
</command>
u# ~& b0 ]( Q' u( P </menuContribution>- R9 I s+ N) _0 U9 i
' @0 W* W" ^8 S) P1 _ <menuContribution4 x* R5 ?6 ], t8 ^' a
locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">& L) `; v& h. o, h+ S
<menu
1 Z& s5 C4 l/ U& J label="PLMHomeToolKits"4 @& o9 ?0 G0 h3 s/ J" }
mnemonic="M"
) `. l$ Y o$ J& W+ ]+ _- q id="com.plmhome.createFolder.menus.sampleMenu">
" E& d" |! P: O+ u" z0 Y, y <command `9 ^; { y6 |8 ?3 r- E' h
commandId="com.plmhome.createFolder.commands.sampleCommand"8 { Q4 F# j% Y U5 X
mnemonic="S"
( U4 |9 F0 I5 Z+ L; p# ?! e u- ~6 Q; O id="com.plmhome.createFolder.menus.sampleCommand">8 ]7 Z0 s) t" S
</command>
- D: I2 i: v+ E5 L+ A6 W </menu>
. i0 j7 Q9 p4 M! @: r# S </menuContribution>
9 a' S- x- g2 f, `% V, C7 [
) ^! x' H% o8 M <menuContribution" R8 t& m; _, X- ?
locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">' D4 B! s" }" p, I* [9 X! m
<command
% F( s% ^0 v9 @. Q commandId="com.plmhome.createFolder.commands.sampleCommand"# K" R$ d5 |3 o# v& i8 S
icon="icons/sample.gif"$ A9 t+ Y/ L9 ?
tooltip="Say hello world"0 q0 g2 Y; _* t; `+ b
id="com.plmhome.createFolder.menus.sampleCommand">( J& Y) I5 {3 p" r# ] p
</command>' ]4 B* I+ D5 H' N! ^9 ?: A! z/ ~. l9 M
</menuContribution>
2 q4 _' [+ r( p$ F
( Q8 ? @! v0 i N4 @' n j4 f5 q9 F' r D
<menuContribution- v8 s4 _% o8 m: L! c( [4 ~
locationURI="toolbar:navigator_Toolbar?after=additions">
" h$ M/ P- A; h <toolbar3 [0 `: L3 n0 X
id="com.plmhome.createFolder.toolbars.sampleToolbar">+ _& H. @, H1 x' j! ~
<command
" s1 A' u9 W+ E. s# w" C commandId="com.plmhome.createFolder.commands.sampleCommand"
5 {4 u; V0 N! p, I; H$ k icon="icons/sample.gif"8 Q% f+ A, ]1 \' l- K X, w
tooltip="Say hello world"
, K' x$ @2 w+ ` id="com.plmhome.createFolder.toolbars.sampleCommand">
4 p1 e8 N+ j, M, X/ h2 J! a </command>2 [3 ^* z' l" F/ m4 m# n
</toolbar>
8 S7 ^, y7 I F+ D1 { </menuContribution>
) Q, S( _5 k7 r9 e2 D- R: R$ q0 r I( e$ v9 ?
9 X1 l7 r' M0 \
</extension>$ n6 `% Z3 l! u+ y2 s
( K* ?2 B8 m7 O2 Z1 C</plugin>+ [* T; e+ \2 h: n/ W( ~" }* O- G
$ _1 \9 Q& g& A A, y! |2 ~
! X/ d8 R2 A9 }0 Q
4 \4 D' k' L' A0 F2 f( P) ? |
|