|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Teamcenter胖客户端开发】teamcenter菜单添加图文教程<1>
1 k! `0 V" T" J, T& |& @, p" p# ^这部分内容实际上是eclipse的插件开发的功能, 这里做个简单分类,菜单文件的扩展点都是 <extensionpoint="org.eclipse.ui.menus">,添加菜单就是在这里面添加内容。这里只要注意location即可!
3 L( O' |! N' ^& ?; I! e3 @0 m(1)在主工具条上添加菜单。
$ B' O* }* O) p, R <menuContribution+ f8 P* A; c+ |) V3 \8 l
locationURI="menu:org.eclipse.ui.main.menu?after=additions">
- [ ], t! J7 ?& V <menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">, X8 `, |6 n+ J! B
<command8 N: V, l" P; n
commandId="com.plmhome.createFolder.commands.sampleCommand"
) C2 k( ?: A. n. x. j mnemonic="S"
, d n% h4 E0 A5 y f" Z; B) D; p id="com.plmhome.createFolder.menus.sampleCommand">
2 q9 C; ~# X+ _; p1 g5 _% R </command>+ t* ]% S- M) f1 K, a4 o# i
</menu>) ]8 k) x C9 O: |5 \
</menuContribution>
- `4 H/ x8 g( T0 O, n) N# b2 I8 g8 g0 m
(2)在工具功能的后面添加按钮。/ p" o& J0 {- ]4 p
<menuContribution' E; y! P( r" f p+ p9 u+ u0 c8 A
locationURI="menu:tools?after=additions">% O: _" @2 v* V* T5 p. i8 i1 v
<command- Z2 m: C' t6 ^: M. T. p% Y8 z
commandId="com.plmhome.createFolder.commands.sampleCommand"- M' ?4 W4 ^8 N* W4 d
mnemonic="S"2 Q# j5 M& N& Q" ]1 m8 S
id="com.plmhome.createFolder.menus.sampleCommand">
) m0 H( |! o1 O" w </command>1 Y5 G2 N t/ P# p
</menuContribution>
( z; _) j1 o) M5 n2 h# B& u
+ V0 ?4 p: C" ?, Q6 j- J& O k* A(3)在右键弹出菜单加按钮6 N$ y4 ]. k) Z* {& b6 Q
<menuContribution
2 Z' D8 [, M F L" ^8 Z% M locationURI="popup:org.eclipse.ui.popup.any?after=additions">
- t8 s) B1 \/ I' w <command! O- D3 b/ {, X9 T/ e8 o1 u
commandId="com.plmhome.createFolder.commands.sampleCommand"1 s! u4 y% O9 @2 e
mnemonic="S"* {+ d* D, {, s8 b
id="com.plmhome.createFolder.menus.sampleCommand">, C/ Q3 S9 ?4 X9 B
</command>( z: b( C7 C/ t$ i
</menuContribution>0 N' X5 @6 e# ]6 D, l0 i
(4)在具体的菜单后面加功能按钮
" ^! N1 a, ?' ?! N0 I# f& n# Q <menuContribution9 L9 z: T7 e6 l B
locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">; b1 U% p1 o6 F
<menu
1 ~' \$ P" i% G( d+ F+ u label="PLMHomeToolKits"# g, ?6 [6 Y/ X. T# P
mnemonic="M"& p% @$ s) {1 h3 ]* d5 G( u6 h" U
id="com.plmhome.createFolder.menus.sampleMenu">
: d& ~1 b! g$ G+ u <command
8 B: j5 h$ h- x' f: b commandId="com.plmhome.createFolder.commands.sampleCommand"
4 f8 ?/ R- t0 M7 ]# V mnemonic="S"4 _/ Q4 B! A6 Y( v( y
id="com.plmhome.createFolder.menus.sampleCommand">
: W. d. {1 O+ s# R' t/ X0 [ </command>% P$ k# W- `% r4 \9 @9 \- `
</menu>5 J% X7 H! z$ O( B: a
</menuContribution> _0 O( @2 m4 X. B
8 h; T& U$ `8 l# |, H/ {) {(5)指定位置,直接加按钮
# w# O: O% c+ ]0 T. t0 c7 K <menuContribution
5 T ^4 Z# n4 G, s4 A6 Q2 D locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">
& ` p z$ {: W2 I <command
/ e# `& S, h+ l' w3 M+ a2 z1 ? commandId="com.plmhome.createFolder.commands.sampleCommand"
, p3 M4 ?% Y' j+ ?( x" ` icon="icons/sample.gif"# r# N0 X7 w3 [8 B
tooltip="Say hello world"
4 l3 a( y/ A9 p U& a id="com.plmhome.createFolder.toolbars.sampleCommand">6 W5 `3 [( Q) k8 y% X5 }$ P1 S
</command>6 w3 g3 ~4 e: e5 s3 x# P" G
</menuContribution>
# c& j- t4 o8 u% h% G$ B
$ o+ g) B7 _' r* z& ]( L) M(6)加工具条按钮
% G1 M, y; I+ J( n5 U; n) S) v <menuContribution [8 p2 H" z0 S; g0 C; X
locationURI="toolbar:navigator_Toolbar?after=additions">2 O% l, v9 t, k; w# {
<toolbar) ~, H+ k6 v" k
id="com.plmhome.createFolder.toolbars.sampleToolbar">
) [7 _+ j" f/ M$ U% |/ \: _2 y <command P: B# }: J9 ]6 c6 B I& R& H
commandId="com.plmhome.createFolder.commands.sampleCommand"' b' ]- W3 W6 Q
icon="icons/sample.gif"0 V( R a, Y( D% I+ ^' I7 p
tooltip="Say hello world"
9 v, |) S8 y2 I' ~7 p4 N0 ~ id="com.plmhome.createFolder.toolbars.sampleCommand">
) H/ Q% i8 O5 o5 `; ^) b </command>: g& d" O6 P# _$ z# E( P
</toolbar>
4 |8 v1 E, g2 ?+ J0 J0 c: [, }% B& e </menuContribution>
8 |, _4 T% B# E& ^& W" B0 t. D1 R5 q1 v4 B
0 h/ M( x: F( f! z
完整的例子如下:. k, ~# f/ _( g* A! c
4 G7 g: d) z+ T* }
<?xml version="1.0" encoding="UTF-8"?>
5 t- L3 D! W/ K ^$ z2 ?<?eclipse version="3.4"?>
) ^8 w, @+ B) N0 J<plUGin>
4 C/ e F, V2 a# Z' L$ W5 n: m0 H( s& d! a; t
<extension
- h* U, |% K5 o. D' n% t/ R" h$ T point="org.eclipse.ui.commands">
" e% l/ e8 h8 m6 e2 w <category
. m9 P z+ X) P; i0 H. z( H. [( Z name="Sample Category"- V2 |& }) ~: y+ X0 R: Z
id="com.plmhome.createFolder.commands.category">
0 i+ ?- w2 D" C) |7 b1 u3 b) L' i& z </category>
3 r7 U2 _8 W) |) m- L1 {$ X, T) Y7 h* K* n8 s2 _" m
<command
# Z2 B7 X5 i7 R7 l0 F( ^ name="PLMHome CreateFolder"! h% l, t! ?8 w4 W, P1 \8 d" F0 Y
categoryId="com.plmhome.createFolder.commands.category"
, n3 \) W! s1 J. M id="com.plmhome.createFolder.commands.sampleCommand">. f4 J* C, c- a; T/ | J. ~
</command>
+ b* `! v* Y; d- H2 |
% @/ o9 ^) m# x </extension>
7 l, }$ n. [* G8 _; p <extension L4 `1 S# A- L( E, j6 K, r
point="org.eclipse.ui.handlers">
8 i/ s3 E' f+ j7 O. t9 H+ b- N <handler0 G7 Q3 k) X+ y( a0 q3 L
commandId="com.plmhome.createFolder.commands.sampleCommand"9 S |' s. p$ j6 A
class="com.plmhome.createfolder.handlers.SampleHandler">3 K; O/ r& {2 }0 E5 b t2 L
</handler>6 u8 S I9 I, K& J: \! S$ F
</extension>
6 D8 e7 e, M- l1 y4 @, g9 A0 F8 b <extension
3 R9 w( _ A0 T# N, z8 h% h' [5 o point="org.eclipse.ui.bindings">" z, f4 j" y6 ~- B4 o1 ?7 C
<key% X: m. L ~9 H0 ~. W
commandId="com.plmhome.createFolder.commands.sampleCommand"
7 U( [5 @* f! h8 V3 s9 M" C/ m0 n contextId="org.eclipse.ui.contexts.window"
. t: K( z* h9 @6 B0 _ sequence="M1+6"
7 s* j6 e2 Z( n7 y, j2 d6 i9 N8 p schemeId="org.eclipse.ui.defaultAcceleratorConfiguration">
, R# O" _+ V3 A& A6 W4 x/ |* f </key>- d* i8 F2 @* \$ X/ C& M- d
</extension>
1 |5 _' d, u& E3 T% M <extension( \% w% f% P, M3 w/ f) P. G8 s V$ \
point="org.eclipse.ui.menus">' O1 U' |6 F$ Q; Z1 y$ o
9 j5 @* t9 ~" s <menuContribution
9 S; B1 Q3 Z! r4 d. M1 e4 B locationURI="menu:org.eclipse.ui.main.menu?after=additions">5 A$ k# o; V! A* H7 q
<menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">
9 n3 L) I6 M6 A, E# Y$ f) E$ d; ? <command
$ b; ?1 i; \) K0 b r5 `' }( { commandId="com.plmhome.createFolder.commands.sampleCommand"
3 b. b- a. O5 w" Q mnemonic="S"
# \8 q) l, d0 k$ C+ F id="com.plmhome.createFolder.menus.sampleCommand">1 @. T$ e6 a9 w; j$ {) k$ D
</command>
- S: Y( V1 r* m, k' H9 y </menu>7 f$ B; V9 i* y# f# x
</menuContribution># L- F* o8 }1 E3 u& J
1 |# }* B9 z2 i% L( F1 V+ Q5 K+ m3 h; s0 ~
( ^* K0 S# K9 V s0 J) B! i <menuContribution a" S% |; B# T) y' @9 A2 n
locationURI="menu:tools?after=additions">
% |& l4 S" t9 o2 Y <command# p* X# T/ i- }) B2 L
commandId="com.plmhome.createFolder.commands.sampleCommand"
6 V1 [+ p2 s1 z$ v9 M mnemonic="S"
& I& k2 P& W9 Y8 u& i id="com.plmhome.createFolder.menus.sampleCommand">4 f% z. D6 R4 V1 ^* e' [+ L. R3 [! d
</command>9 Y- [0 b- h, B& M
</menuContribution>
+ z) b& U, m+ Z2 T2 g+ W" N- \* b& X, W8 m5 S- l5 Z
8 c1 g; O: s4 \8 L7 f
! v5 F W$ b! e" b! ]2 z <menuContribution2 v; `* x) l- u) v% b' p
locationURI="popup:org.eclipse.ui.popup.any?after=additions">/ z- s2 v2 c2 R
<command
' _, L8 z/ m+ f0 v+ q T commandId="com.plmhome.createFolder.commands.sampleCommand"! W% R( J! Q+ j; o; ?& Z
mnemonic="S"
7 f2 w5 R9 S. P$ X4 y% v/ S id="com.plmhome.createFolder.menus.sampleCommand">
/ l- s# p: h+ k u0 L8 b7 J: \ </command>
4 x, J, A A" Z H$ g0 [ </menuContribution>
; @8 T; H% J/ ^& Z" Y5 \( S
9 K; V$ B! u1 S; z O1 Q <menuContribution' p5 o. d" Q) @# ^' a; L
locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4"># o O$ R% B/ O& J, f
<menu, X' ^. n( u5 D# @
label="PLMHomeToolKits"3 D+ t( m M8 ~+ v" A
mnemonic="M"2 s6 W- \* w; x' f0 ?. |
id="com.plmhome.createFolder.menus.sampleMenu">$ \) ^. A5 k/ ~; c6 S+ O+ B- y
<command
. R8 ]$ T i- Q& d commandId="com.plmhome.createFolder.commands.sampleCommand"
8 R4 M# T/ Z; v& m/ a1 A mnemonic="S" m$ f4 Y1 G( Z
id="com.plmhome.createFolder.menus.sampleCommand">
" }. s0 y o- m% [! ^ </command>8 C8 n& n3 B, C1 L
</menu>* a X' y3 ^ R8 P; P$ b I
</menuContribution>
, N' O5 \4 M1 O6 n$ `' u- `
U$ d3 z8 l6 l: R& l/ T! i <menuContribution- S5 V X; ]+ u$ Y
locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">1 S' L' e& G: l3 m9 i, K5 y4 t+ Z
<command! K9 i! ~2 B0 @1 q7 t
commandId="com.plmhome.createFolder.commands.sampleCommand"& P, l* o# \5 i/ r8 l3 o+ u
icon="icons/sample.gif"9 u* a( i2 O- n5 _
tooltip="Say hello world"5 j+ ?; Q) ^5 g0 D
id="com.plmhome.createFolder.menus.sampleCommand">
4 O9 |- u1 b* C4 T3 q </command>
* c# C) e, U. l! d </menuContribution>3 z+ _, ]* D" ~- C( U
0 g3 ?5 B- b- R! |. ] Q# D' N
" u5 t" `$ d6 X <menuContribution
0 T9 L6 g" S# Y locationURI="toolbar:navigator_Toolbar?after=additions">
8 \( q- h6 F0 k <toolbar- k2 z9 Y$ D1 \2 I0 [
id="com.plmhome.createFolder.toolbars.sampleToolbar">6 g0 B1 E2 L& Z# O6 N3 k3 X
<command& {* z& K5 ]( D
commandId="com.plmhome.createFolder.commands.sampleCommand"
4 R) V# |* L6 v) p. I4 S$ J icon="icons/sample.gif"
. C1 c$ ]. D/ h5 w) S tooltip="Say hello world"- X# y! h! g! i; K& V9 u' w
id="com.plmhome.createFolder.toolbars.sampleCommand">7 s$ J" U0 \7 A- E$ a2 v) x5 o
</command>* [" R1 o' b& e8 q+ I
</toolbar>
# \! m+ s" D& {' n </menuContribution>
/ C/ w2 h& p) Q' ]& E4 y {/ Z: P
5 @6 V$ \4 U: F* m* p* a </extension>6 h+ l( q. ]- |6 a V0 O! g% a% k
# ^8 o0 p, Z& b5 P2 \% W
</plugin>( L. ?- k* A1 Y
2 [& w9 U1 J( }/ ^& J; o$ Q# p9 ~% m7 a* L
2 i+ v+ X' z d* v1 j+ r |
|