|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Teamcenter胖客户端开发】teamcenter菜单添加图文教程<1>3 W5 x) C- I M c; K" Q1 K
这部分内容实际上是eclipse的插件开发的功能, 这里做个简单分类,菜单文件的扩展点都是 <extensionpoint="org.eclipse.ui.menus">,添加菜单就是在这里面添加内容。这里只要注意location即可!
% L/ a- H' P' ]! a& d(1)在主工具条上添加菜单。0 t% H1 R$ S7 o0 ~/ }' q7 `
<menuContribution
9 a1 d+ [5 Z: {4 m- e' e# | locationURI="menu:org.eclipse.ui.main.menu?after=additions"> b. A8 _; }8 R) d' n7 x; ^2 w
<menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">
5 I5 M0 `: K4 W* J, E6 N <command
K* p$ u1 c; a% s commandId="com.plmhome.createFolder.commands.sampleCommand". p0 _% Z9 V( L9 K& Z2 X
mnemonic="S"
6 J# J! c+ ^0 A2 X id="com.plmhome.createFolder.menus.sampleCommand">
% j1 F$ @/ E# R' u. j6 l </command>; j9 ^$ ^# H0 O3 p) J
</menu>! a0 _1 Y6 N: ]) I1 K. G2 c
</menuContribution>
+ @/ L/ q! W8 w* L5 O0 g+ ~* \% Y8 a* |6 L/ O
(2)在工具功能的后面添加按钮。
2 W" f$ Z9 n" r* d <menuContribution
- v- i; `; X% A, q; d' o locationURI="menu:tools?after=additions">7 V& C- _ P$ @- t
<command
6 [ _" r# H8 J. d commandId="com.plmhome.createFolder.commands.sampleCommand"6 x" x% h K/ m) V4 g
mnemonic="S"7 x q) m7 D4 z5 m* l
id="com.plmhome.createFolder.menus.sampleCommand">
( A% @; i+ \& p+ P8 E' E </command>
. C' v% M" \* l$ P+ S q </menuContribution>
8 h6 n( b+ Q7 N* g
2 [2 L$ r2 H/ m: A' W# \& N5 h2 w( m(3)在右键弹出菜单加按钮! t1 j) }4 Y5 c" x
<menuContribution
+ z- H8 ~% z! B* h4 m) p2 b0 [ locationURI="popup:org.eclipse.ui.popup.any?after=additions">1 r0 ~- I0 Z8 W! Z) j$ y
<command% g; w. k+ l5 V z
commandId="com.plmhome.createFolder.commands.sampleCommand"
/ [+ q$ o1 z1 l% H mnemonic="S"
! y1 x' E( V& R& R0 A id="com.plmhome.createFolder.menus.sampleCommand">+ w& J# L0 x) O
</command>
# }. `- L# ? ]; a& j </menuContribution>
! ]" l: ]7 [; h(4)在具体的菜单后面加功能按钮
7 W6 F3 k) G5 \* Z <menuContribution" N: \/ }9 k. U/ ] U9 I" f5 d
locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">. V, Y/ Q! G, O; a
<menu
k4 J# {5 S- {" N# i( J) o/ ^' p label="PLMHomeToolKits"
" b* P; H e4 ~/ i mnemonic="M". w2 \0 E/ Z/ ^4 G1 U
id="com.plmhome.createFolder.menus.sampleMenu">) K: X/ @- Y7 i4 G7 ]- e
<command/ M; v5 @1 i, i' j
commandId="com.plmhome.createFolder.commands.sampleCommand"
5 Z( L8 j8 j# h* T- H mnemonic="S"
@1 F; a& z1 b$ Q id="com.plmhome.createFolder.menus.sampleCommand">
" S8 \- w( }6 U </command>) B! b1 k- R% N; s
</menu>
9 K$ k( K4 F/ ^4 A+ [ </menuContribution>
/ ]# h# n$ p T
. ?: F& Y! E! X4 v# T& g2 K(5)指定位置,直接加按钮
& ]/ k% U( ?: O$ S# M; J <menuContribution' e# B) k* B" _6 H! {
locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">* n$ i# g* o; p- L
<command9 A$ c; E1 G% \$ f, ?
commandId="com.plmhome.createFolder.commands.sampleCommand"6 W! e8 [- M4 ~9 y: N3 I7 B# |" }
icon="icons/sample.gif"+ f) ]- R) [1 S9 n, E/ D5 k
tooltip="Say hello world"
6 y0 g; M% F0 \+ ?& B id="com.plmhome.createFolder.toolbars.sampleCommand">
; M4 K, s1 L5 F) e </command>3 |2 b1 \+ y' Z8 e P0 j( U
</menuContribution>9 [) ]' G( n0 g9 g. r7 @' W9 I
4 g5 U" a7 c2 r(6)加工具条按钮& q e# T* W4 ~. L/ j _% w$ M
<menuContribution [9 c H+ K* ]0 v
locationURI="toolbar:navigator_Toolbar?after=additions">8 ?# Q3 R7 A4 ^5 e8 p& W H' ]7 V
<toolbar
; x- v) D! o& o$ I5 ] I id="com.plmhome.createFolder.toolbars.sampleToolbar">
- p+ u& L. W" ]8 K4 w, @7 l <command
3 Y0 v1 E( C r commandId="com.plmhome.createFolder.commands.sampleCommand"
5 ~4 O' x. j8 L% ?" ? icon="icons/sample.gif"
% e6 \9 r; h/ I$ P/ q tooltip="Say hello world"
/ s1 s- y4 Y$ G id="com.plmhome.createFolder.toolbars.sampleCommand">+ }" `( B/ N) @% }5 H4 i
</command>
6 J) Y8 |# r* y0 p# p b. ~5 h; z </toolbar>1 ]! k3 `, T& Z
</menuContribution>
2 a/ `4 C1 |& y8 A+ b4 G4 `
8 K1 E4 a2 f) X; R! L# `3 L) g+ Q: `6 F( P
完整的例子如下:6 _ X- U; A: e8 \* j9 J
' h4 i v3 m+ I7 w
<?xml version="1.0" encoding="UTF-8"?>- J- A0 B2 @5 g: _# W( q% \
<?eclipse version="3.4"?>+ V, N# _: q" |$ P) Z
<plUGin>3 o9 S; O( G6 n) q5 b3 b* E9 h
' V% V/ g" }; G, {3 k- a4 z <extension5 U2 o. I& y- n
point="org.eclipse.ui.commands">
& U3 F; D8 c2 H <category4 \5 D* U1 q9 g9 k6 L- \
name="Sample Category"
( _, a+ [( o$ {, U id="com.plmhome.createFolder.commands.category">
E% c7 c9 R) w/ W </category>8 K! g8 ?& z' C, ~# E0 O
l1 M* @9 P3 w% Z6 J
<command
* v2 {0 X) f7 l3 _ name="PLMHome CreateFolder"; v$ R' }7 Y6 D* [9 ^& f9 \
categoryId="com.plmhome.createFolder.commands.category"
# O _0 R$ N2 G4 c5 a+ z0 Y7 c id="com.plmhome.createFolder.commands.sampleCommand">( F+ I( g! ^, \0 e
</command>% N& ~9 _8 W1 W) M) x1 o
6 U0 |4 {& D/ {* Y$ ^
</extension>
# w5 v0 ?; r; I <extension
: p* g. [- k( Z, U point="org.eclipse.ui.handlers">
: o) w; G- W/ {, ~) ]) k <handler
) }' b2 S" L9 d- ^9 [+ d+ r commandId="com.plmhome.createFolder.commands.sampleCommand"
0 I( {( |: L5 g0 n/ _% S- b class="com.plmhome.createfolder.handlers.SampleHandler">+ Z! s- V2 @* [" E
</handler>
7 N, k# K- x& J+ o </extension>
- t' |; L9 {/ D- |* b5 f2 u5 s; O <extension
0 e* X* D5 Y: Y0 y% g5 l point="org.eclipse.ui.bindings">
4 H6 r/ \- I# ~) R* R4 C* J <key( n+ o9 j6 K% b# F/ b+ a- V+ {3 a
commandId="com.plmhome.createFolder.commands.sampleCommand"
& M6 P8 L9 k8 b contextId="org.eclipse.ui.contexts.window"9 R! k, F5 S. s, C. z+ P, E
sequence="M1+6"3 _3 o& }6 ^6 E1 O
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"> s8 R* ^# T. o; l$ w/ ^
</key>' Q$ W9 \$ i) J0 L( r
</extension>8 {% i4 n+ k% j
<extension
+ H- I9 g8 {9 n4 v& T" T point="org.eclipse.ui.menus">
, |6 z C! ^& E5 P" o3 {7 b* H% f( }7 }6 w9 c
<menuContribution! V1 K2 ]7 E$ p0 g$ i& u$ g
locationURI="menu:org.eclipse.ui.main.menu?after=additions">; n$ w8 c2 \" H: {7 R. ?" M
<menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">
. s M# a4 y8 g4 Q <command
# r6 c0 b7 w! `* E9 ^+ [8 i- z commandId="com.plmhome.createFolder.commands.sampleCommand"
% T- c6 X% D& r6 i5 a! Y mnemonic="S"
: Q. \9 F5 A( I' V4 T# @ id="com.plmhome.createFolder.menus.sampleCommand">0 J6 n/ U v8 s. X8 Q& P
</command>
1 a' g* l% k: C+ j </menu>
9 ~4 r4 ^% c2 A4 {2 x </menuContribution>
4 X n) H0 N0 J" |( A4 R" s
1 C4 A/ U3 `9 ]% @9 N" E& i
5 N7 l3 B# k X: C
7 ~" V5 N3 F4 s1 S* X6 f- m; ]: @ <menuContribution
1 s9 L8 J0 ?- R- m& B locationURI="menu:tools?after=additions">
$ f i, c2 y! G4 E. \! ^ u <command
, ?/ V; x7 @; G1 _; L0 { commandId="com.plmhome.createFolder.commands.sampleCommand"( k9 f0 w( M9 P9 d- _3 R9 Z Y
mnemonic="S"
, ]0 U5 I# L4 E5 X) ? id="com.plmhome.createFolder.menus.sampleCommand">
K* x' S3 Z6 L; i9 {0 F. W ^6 I- e </command>
. T/ ^2 t2 d J" l% Z" C </menuContribution>
5 x6 G. V, J' \3 ?+ O* c* t0 e' y5 w1 C
}2 U3 _ p- s
9 |- `; g* H6 u; S; X+ ` <menuContribution
* Y; z+ H: {6 `6 P- u locationURI="popup:org.eclipse.ui.popup.any?after=additions">! J$ N7 s7 T! b$ {; `0 i' }. B, s5 ?
<command
' O4 N/ A5 L8 K: x- e! d! v3 ~ commandId="com.plmhome.createFolder.commands.sampleCommand"
: m6 q) G* x# p7 W mnemonic="S"! r& { V/ [' L/ ^
id="com.plmhome.createFolder.menus.sampleCommand">0 N& M9 E6 |& o
</command>
8 D C% ~4 ?# V5 [5 B' ]; s" g& B) R </menuContribution>
0 \4 S; s" W! {8 C# }8 Q: N7 W( A- `! }5 n7 |6 A3 c. o
<menuContribution
0 O+ ~4 T. o* g" {+ P locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">
1 a6 k9 ]& h7 _$ P# m/ _ <menu1 N% N% T* b" M% i3 J
label="PLMHomeToolKits"9 E0 W1 i# y# p
mnemonic="M"
6 E+ u0 [* @& T6 J. {+ J id="com.plmhome.createFolder.menus.sampleMenu">, x. [6 A/ u, P$ N$ G. q8 I
<command
& I( k1 Z5 a j1 }; X/ ]2 F3 u commandId="com.plmhome.createFolder.commands.sampleCommand"$ l' G2 K9 S" v9 c# G( K0 B* g9 q* _
mnemonic="S"' V- D7 X' d9 i5 F. Z7 d
id="com.plmhome.createFolder.menus.sampleCommand">
0 p# b# [" B3 I0 y! n5 y, d" m </command>
/ N% s4 w1 K. s9 g' n </menu>
6 b! ?0 U, }; V$ M! K- @ </menuContribution>
a6 O, Z. |, O: Y, B9 F b, E% I$ k) m; }8 z1 |
<menuContribution* E6 a/ H7 r+ Y5 |0 M
locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">! \4 V0 Q& x! r* Y+ c2 F# m3 N2 s/ i% a
<command k3 n4 K) }8 z$ y, k7 s
commandId="com.plmhome.createFolder.commands.sampleCommand"
9 ]7 A' J: r7 n% \) e icon="icons/sample.gif"
2 Z% G/ {: Q; c: h, O0 H1 y: W tooltip="Say hello world"6 F; @0 y5 p% e* {' o
id="com.plmhome.createFolder.menus.sampleCommand">2 ~) x+ d+ D8 k# h$ x/ \2 H8 E
</command>
5 z I$ G3 R4 Q. Q$ I! X# U. n </menuContribution>
$ z3 D5 T- R% x3 G
$ C6 G3 j8 \$ l6 u$ }* `3 g+ g1 l7 I5 \5 {( W
<menuContribution
9 |& N3 {, _2 t. E" G) m locationURI="toolbar:navigator_Toolbar?after=additions">6 b" h4 q ]7 f8 Y I
<toolbar/ m/ z: b9 e. r; a0 t3 r
id="com.plmhome.createFolder.toolbars.sampleToolbar">3 S# [5 b) ~& \/ L" \; a9 Q: d
<command$ k" m* h f! P' `
commandId="com.plmhome.createFolder.commands.sampleCommand"
$ U: u. ?2 E2 D, B3 U J icon="icons/sample.gif", P2 A3 x2 D+ H* W5 b
tooltip="Say hello world"
* A% H* j0 ?/ @' V! W, S id="com.plmhome.createFolder.toolbars.sampleCommand">
# Y+ c& O5 v5 A. W1 g </command>3 W/ `! z5 @ E
</toolbar>
$ B- F2 G: S. D </menuContribution>
* E7 ^* Y4 K9 o4 O' ~. c
. k8 d5 g. Z Y7 z% C2 p
% E4 L2 w+ O$ ~ </extension>
& d5 d& b' m0 O" r. A' t3 u2 A+ O6 p" I+ u" b( g
</plugin>" W5 ]! [; C2 w. O% b! S- `
* |' k, D/ o$ D) u+ k+ B
# ?& H; C% c5 [+ [& \2 Q
) k& {2 u9 x* r$ ?; v) M( r/ T |
|