|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Teamcenter胖客户端开发】teamcenter菜单添加图文教程<1>3 E4 x, O9 T7 r: L$ m! h% K7 V, n
这部分内容实际上是eclipse的插件开发的功能, 这里做个简单分类,菜单文件的扩展点都是 <extensionpoint="org.eclipse.ui.menus">,添加菜单就是在这里面添加内容。这里只要注意location即可!; U; g) k9 _: c" R. A
(1)在主工具条上添加菜单。
. G" }& q6 W+ i5 j4 l <menuContribution
- u+ T' e0 x3 x locationURI="menu:org.eclipse.ui.main.menu?after=additions">2 q- b& q0 I( x
<menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">0 s, R1 x C, G5 n( U
<command
3 U: z7 \+ ]9 T" X+ E commandId="com.plmhome.createFolder.commands.sampleCommand"' K0 S" Q" V t* ]% R
mnemonic="S"9 T% H. _, o/ f3 a, \6 ]
id="com.plmhome.createFolder.menus.sampleCommand">0 |0 u ^8 y1 |+ `5 l
</command>1 M. T, c! c/ c2 M, c$ H
</menu>
0 m! C0 o& W: k) K1 I </menuContribution>
j7 V; o& D% g' [' [: B9 z5 E% D7 w2 \( v0 X G
(2)在工具功能的后面添加按钮。0 P/ U8 M+ _7 L+ W$ R( ~
<menuContribution8 ]% \& t& u2 h
locationURI="menu:tools?after=additions">/ [$ _; F% ~/ f/ t
<command
' j8 }8 ^" `8 w commandId="com.plmhome.createFolder.commands.sampleCommand". d" r) U" ?2 _8 X& G& U% d) h8 Y
mnemonic="S", v4 {/ h" V Y2 l8 n/ B) x
id="com.plmhome.createFolder.menus.sampleCommand">) E1 W+ N5 k: G! u3 V
</command>
* F: `! T* M& n* G' Y& ?6 m# z </menuContribution>/ l) U6 l0 ?5 H2 D0 o' \1 q: O
; {: O. \2 _, L* ^6 Q' @
(3)在右键弹出菜单加按钮. F+ f( h. ~( C5 ~, \
<menuContribution
/ O( |' K3 l# b/ {# M! ]. G locationURI="popup:org.eclipse.ui.popup.any?after=additions">
. `$ k1 x, F( @( w8 M0 q3 w( s% P( c, z <command
z9 z7 F. ~) M, [ commandId="com.plmhome.createFolder.commands.sampleCommand", R' R) u1 O i- X
mnemonic="S"
* A, U8 d) y, u, ~$ x5 m1 | id="com.plmhome.createFolder.menus.sampleCommand">; f: j5 m: Y r% q! D
</command>, ~. v/ w% U+ R
</menuContribution>
0 S5 p0 \9 C6 }! }(4)在具体的菜单后面加功能按钮
, R) {, F7 S9 r% h <menuContribution
4 y) e, `9 S' L locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">
0 S: H$ ?# t+ k$ [7 W <menu
& @/ I; ?. V( i0 S0 O label="PLMHomeToolKits"
, ]: ?. F2 g1 O2 _6 K. {9 L mnemonic="M". F T* q0 N% P$ S6 f. J
id="com.plmhome.createFolder.menus.sampleMenu">
- Q5 ^# }+ p" B/ T <command% P: q; G7 N9 C+ o- \
commandId="com.plmhome.createFolder.commands.sampleCommand"9 W' \/ z4 |/ S7 @% G
mnemonic="S"
' |' m9 @+ A3 g2 Q3 } id="com.plmhome.createFolder.menus.sampleCommand">
' X* l- L; [$ z( m C$ J- A </command>
( h$ K; ^& I2 B0 Z. t7 \1 m, Q </menu>
" c( C( k. Q4 p- G9 q: n; H/ a+ d </menuContribution>, U7 d l6 F+ \; h0 M9 F- ?
/ S1 \4 @3 x' {5 |7 ` Y(5)指定位置,直接加按钮
) O$ ]/ i3 T9 V; p3 L# Y <menuContribution
X7 \/ m2 b" U8 U4 z& g7 I locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView"> [) l6 a5 Q; @) {, K1 Y. e8 i7 r
<command
: i9 }' Y p4 R& t2 R B commandId="com.plmhome.createFolder.commands.sampleCommand"9 u* s) O! e2 j: e
icon="icons/sample.gif"
3 w( F' I @+ j+ I tooltip="Say hello world"
+ u# c5 L5 E; B0 \0 J) _: ?7 |2 e& X" v id="com.plmhome.createFolder.toolbars.sampleCommand">
; t7 l' [& g5 P </command>' u8 l- `" ^ @7 B- O& V
</menuContribution>0 ?7 `" c$ X* n, C" A/ ~* C
^$ j+ k' _9 l9 E& ?* E5 v% z
(6)加工具条按钮
; |% |8 E& j/ |% J/ E1 l <menuContribution
, s; n$ q" e. b5 p, J0 H$ V2 S6 Q locationURI="toolbar:navigator_Toolbar?after=additions">
0 m7 q" n9 |9 j% H <toolbar: A9 j+ `4 o& Q! D( a8 H
id="com.plmhome.createFolder.toolbars.sampleToolbar">& N0 v% ?1 G0 {
<command% ?/ Z6 U* _& W2 A
commandId="com.plmhome.createFolder.commands.sampleCommand"
+ ?- g2 ?4 `, Z- Z7 C/ ] icon="icons/sample.gif"
& t+ E7 U+ Y3 t* Q+ K, _ x3 i tooltip="Say hello world"
6 \, b5 E5 f2 ^) ?! z8 s E id="com.plmhome.createFolder.toolbars.sampleCommand">
3 l, v/ U Q/ H- V o! N C </command>2 v' y! f9 C: o% K' R2 I
</toolbar># B% k! G/ I7 ~6 U
</menuContribution>
, p4 x g5 r; f, L5 U
+ B9 U; L/ \8 D; S y
% I$ r5 t+ q$ A l% A. O9 A9 c完整的例子如下:
2 J" X% p6 J0 K: e1 U5 L0 W& q8 {: Z, ~7 p; `3 B, V0 q
<?xml version="1.0" encoding="UTF-8"?>1 E; l( i" [' t" H$ S3 x) K) b3 l
<?eclipse version="3.4"?>2 g; S" Q, I! D K" `3 E! g/ D- x
<plUGin>
/ n, n$ x2 F6 Q* t5 t( t2 W' p# i% e0 U: s+ E3 r
<extension
. e! i- G: E4 I' W; j3 f point="org.eclipse.ui.commands">5 R: u2 M4 {' Z: m8 A) g. Z
<category6 U' ~3 s0 c( o8 C& b' f
name="Sample Category"
; M$ Q. j3 \( |4 R3 Y3 g' S/ x id="com.plmhome.createFolder.commands.category">
4 x7 D; B! ?: Q5 P! R </category>
7 X/ @! e6 k$ E9 x3 q% r7 K0 C' O* \ ?% x& l1 \
<command
1 h( W5 `% [4 U( f+ Y name="PLMHome CreateFolder"
( @% k4 r& ~" }5 q. q categoryId="com.plmhome.createFolder.commands.category"
g5 I( n1 u& n7 ?# ? id="com.plmhome.createFolder.commands.sampleCommand">& }& x% _: t6 Y5 L. p6 Q
</command>
4 W7 l' f5 D; k% t; U! }7 Q7 s" B3 {) h4 s9 a2 D+ j
</extension>! q$ E* ?( l$ N& @2 r) h
<extension% G& ]* h9 }. c; L- H
point="org.eclipse.ui.handlers"># y1 v' o" r, a
<handler. l* n R8 O6 T8 i d
commandId="com.plmhome.createFolder.commands.sampleCommand"1 J Z" l; Q1 ^2 m+ f9 p" w
class="com.plmhome.createfolder.handlers.SampleHandler">
; Q7 S2 B7 S4 B </handler>1 s q- Z3 T0 Y- Z4 |2 }4 e) S
</extension>% ^* W( e9 P$ N
<extension! D' ~% o8 C$ P# O) d! s' {7 \
point="org.eclipse.ui.bindings">
6 Z( l7 x( e* i- ^* o y! f <key9 J1 C# k2 a$ G$ }
commandId="com.plmhome.createFolder.commands.sampleCommand"6 {: T2 x \% k8 G0 d7 ~6 L
contextId="org.eclipse.ui.contexts.window"
5 h8 y9 o9 U' `& Z2 J* j4 ? sequence="M1+6"
0 B; G$ ^( z- ]$ ~# V8 D7 T v schemeId="org.eclipse.ui.defaultAcceleratorConfiguration">" J L: d) V+ H/ b. T% V p: V
</key>
7 b+ \$ r$ P+ c) y </extension>+ ]' j1 @9 b6 {; ] a8 Y
<extension8 O. i2 ]4 L4 N/ _. F7 F- ]/ H
point="org.eclipse.ui.menus">
( f2 u3 i' v0 ^$ |& g) C0 \7 U6 y2 i
<menuContribution% j2 F) ]! @% [( b/ O6 A O4 u
locationURI="menu:org.eclipse.ui.main.menu?after=additions">0 M9 ^# q m6 T
<menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">
1 b4 c1 r w! u. l) S2 V <command# J0 G$ P: c3 Z; o2 k4 y+ I
commandId="com.plmhome.createFolder.commands.sampleCommand"6 p) n, z' x I8 d) k
mnemonic="S"
5 x. e2 G3 P) Z. A- R8 N id="com.plmhome.createFolder.menus.sampleCommand">
1 r. [( h& x0 {/ J5 S9 i$ ~ P </command>5 O, ]! F* `. v1 v( ?
</menu>" R% y' Q _: u1 o% f
</menuContribution>
; p: i: E0 w0 }# a' E( A
9 m+ Z) H4 L& B! _; {- X* N4 f& w0 @: @
9 z& i3 c5 x f) i* v. Y5 D. p9 N/ R- p. f% h% ]* k t% P
<menuContribution) F9 `5 t5 [ X/ R$ c7 y1 o
locationURI="menu:tools?after=additions">! k3 y. c1 J# G5 ^* b, w- ]
<command8 b7 S4 ?( k/ l, r; U# r
commandId="com.plmhome.createFolder.commands.sampleCommand"9 V' l* A$ Y# @
mnemonic="S"
' ^) P' l6 P9 D* ~8 r0 E) { id="com.plmhome.createFolder.menus.sampleCommand">
; ^. u2 Q3 ~8 ~8 b! y* k3 m% b </command>2 i' h$ G4 v5 E, r; X
</menuContribution>' [1 `# ]0 j% _6 i8 n
5 {% W3 T+ K; B+ j
: j; b* x9 U; G/ }+ e" ~
" O3 @$ w! l1 Z1 U! e0 {# t5 c8 Z
<menuContribution
& ^' C' D1 Z8 o& r2 @ locationURI="popup:org.eclipse.ui.popup.any?after=additions">/ ^$ J: j$ O3 \; @+ x; Q* |
<command
% ~! J2 P# ]* h% X" }! Z& ` commandId="com.plmhome.createFolder.commands.sampleCommand" n6 ~2 T( D2 R5 k7 G0 v
mnemonic="S"
0 K3 k7 L9 l' }2 _' z* b. u5 W id="com.plmhome.createFolder.menus.sampleCommand">
& \ f, q8 Q5 z0 B. X5 z </command>
7 C `+ Q p" y) h </menuContribution>
9 w" f2 X) L) ~& }0 O
+ g2 a9 s+ Y0 x" y4 }( k <menuContribution
- Z# l8 {) c4 ]4 m0 ^( K! k6 T! i% } locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">5 F1 h+ X# A+ U* `5 `, a& p; m" ]
<menu. [& D3 H- e2 h+ j+ A7 l
label="PLMHomeToolKits"2 z5 d/ X" B, C- ?0 V/ @
mnemonic="M"7 P3 I1 R+ r5 T4 t( a
id="com.plmhome.createFolder.menus.sampleMenu">8 G; D* f2 j$ p" X( \, u8 L
<command
9 m' G" k* z4 ~: F commandId="com.plmhome.createFolder.commands.sampleCommand"
3 a4 Y7 ^9 J0 o5 ~# U mnemonic="S". P- v# g! \. n
id="com.plmhome.createFolder.menus.sampleCommand">
0 d& ]! [! M' M: [- B$ L9 l% k2 f6 e </command>
' e l( M1 G& f& W0 a* O; S </menu>
0 a% |. O8 K+ d* s </menuContribution>+ Q$ z$ d8 e7 P8 b/ l
% O* O" J7 w6 v
<menuContribution
, v, n# N- _3 D7 L! k5 ^! m locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">% r! y, Z6 E( d }
<command
! P& i/ K5 t* L/ x+ }! T* H8 a commandId="com.plmhome.createFolder.commands.sampleCommand"
/ R3 y# f+ n! s8 [8 b( D( p icon="icons/sample.gif"* u9 c7 S* q( d
tooltip="Say hello world"% V# K# h! Q# a5 ?, e+ ]4 s
id="com.plmhome.createFolder.menus.sampleCommand">
; R G/ Q' C9 z' r7 P5 U </command>* K' a& v* c! }, E! y
</menuContribution>
$ R2 h3 ~0 |. Q. x V8 Z7 S; O* W% R( w/ d* r5 V0 |
( m0 V, ~ J" a7 a/ P1 Z2 r <menuContribution
- o3 Y5 @7 p/ v: Q2 m7 F( W& y locationURI="toolbar:navigator_Toolbar?after=additions">) A& X4 d" z" z
<toolbar
- r8 b/ i1 p- h- x/ c; N' R. z. I id="com.plmhome.createFolder.toolbars.sampleToolbar">
, z5 W5 x+ W4 Y* n: f1 L <command1 r- W1 b( Z/ _. | J
commandId="com.plmhome.createFolder.commands.sampleCommand"3 @! ]/ L- B% ~8 F: I( a" P0 d. O
icon="icons/sample.gif") A1 e2 D4 b! X% X
tooltip="Say hello world"5 a$ U4 p% x0 |9 b5 n
id="com.plmhome.createFolder.toolbars.sampleCommand">
5 h- }% I# I* X; A9 ]* ^ </command>
# _" H% j0 B% h: a8 o: p </toolbar>
b8 W9 @6 w" {8 ? </menuContribution>+ U0 N, ?( u3 T; I. s7 w
4 J& z0 C9 X8 M( A/ T! U5 o5 w
& |" L5 p9 Q+ Z
</extension>9 R8 ?4 S4 g8 l, N, x
! R8 x: W# k7 J7 R9 G0 g. P7 u4 b$ ]
</plugin>
8 R1 `; V5 @" |7 S8 g( f0 Z1 \: |6 z) U0 y! i: V+ e
* r% X, s" L: A3 G
' B& k9 z6 T7 \# p& u/ ?* e3 c
|
|