|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Teamcenter胖客户端开发】teamcenter菜单添加图文教程<1>
5 S; M2 U G) j' r这部分内容实际上是eclipse的插件开发的功能, 这里做个简单分类,菜单文件的扩展点都是 <extensionpoint="org.eclipse.ui.menus">,添加菜单就是在这里面添加内容。这里只要注意location即可!
8 W% ^9 M" Y- s/ ^/ p# m0 j(1)在主工具条上添加菜单。
% K8 y/ L9 o3 U/ F0 g0 n <menuContribution) n, |+ V) F( s6 ~1 ~
locationURI="menu:org.eclipse.ui.main.menu?after=additions">, L9 l% n4 S& k8 D
<menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">
k: _8 w Q/ y, q% i& L <command: ~9 s/ S6 H( P/ |' e& Z
commandId="com.plmhome.createFolder.commands.sampleCommand"
. W% {1 f1 v3 _5 E8 y7 ~# j mnemonic="S", u9 r- i( }" k( n
id="com.plmhome.createFolder.menus.sampleCommand">) p6 s I: P W! l% h9 v9 G
</command>
$ t8 g' Z9 i$ y </menu>' v) e3 M! b$ i9 X$ H
</menuContribution>2 b' ?; I; m7 \6 U$ R
1 {" R8 E- r% C" Q(2)在工具功能的后面添加按钮。5 w1 T2 Z# c9 H
<menuContribution
% i) `8 x; h9 ~5 [ E locationURI="menu:tools?after=additions">
4 K% t2 x h/ d9 Z8 n7 v) O <command
3 ^+ r" ?, H _# u; u0 P: z commandId="com.plmhome.createFolder.commands.sampleCommand"' K( B$ K% A$ D% m
mnemonic="S"
* d( `! S* |' e7 f, i5 p* O id="com.plmhome.createFolder.menus.sampleCommand">6 t& H* |) e$ k. M
</command>0 f5 j7 H# ?, Y# [. c7 a, N( w
</menuContribution>3 m% V4 A3 B( V2 B. `, `* L
9 b; ?/ e& h5 \, v5 t0 A& G, k% E/ Z- W(3)在右键弹出菜单加按钮9 H7 J9 D. b/ v4 F, I1 a2 K
<menuContribution
3 V' T2 b- g% {" { B W/ G1 m N locationURI="popup:org.eclipse.ui.popup.any?after=additions">
s( m3 m2 _" ?/ U# W4 f" @3 D1 @ <command
+ z2 s5 V2 u, h7 {( O1 J commandId="com.plmhome.createFolder.commands.sampleCommand"* L6 L' x5 a7 ]9 x. f
mnemonic="S"8 f A/ q! x9 h
id="com.plmhome.createFolder.menus.sampleCommand">) {4 d! G4 N+ {) t& o. ?. g; K
</command>8 |9 m5 c. V& z
</menuContribution>& \/ h* s; I k
(4)在具体的菜单后面加功能按钮
% Z: u' K% e; A& M9 @! M+ ^ <menuContribution& q9 J3 H' M7 j' A$ m# z& }9 Z5 F
locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">2 m% Z6 X- v3 N2 o( F/ v
<menu. }% i* A' ^6 \1 t2 V: l
label="PLMHomeToolKits"
/ x) f6 p B7 G* x9 q mnemonic="M": Y9 _$ z/ e# G, |, p( a4 E5 O
id="com.plmhome.createFolder.menus.sampleMenu">
5 E1 P+ ]+ @: f <command
S% F b3 l4 K: O, H# z* |: F commandId="com.plmhome.createFolder.commands.sampleCommand", z4 P8 L# G3 v. r& n. r
mnemonic="S"6 y" c9 n: G/ @( M
id="com.plmhome.createFolder.menus.sampleCommand"># h0 X! C0 F# X3 n: r+ ^5 e1 j
</command>
8 I/ s7 F$ r& A: S( k </menu>2 {8 j. Z5 g: M. ~! c* C4 J
</menuContribution>
1 W$ B( N, G; e6 f, w; v R
: R; L/ C1 ^& R(5)指定位置,直接加按钮& m& v! ?" G* W# d2 t1 S% `
<menuContribution: F: F: @, T e
locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">
# r+ w5 v$ L( g/ ~5 [ <command8 x, S- G( w+ L- H) t
commandId="com.plmhome.createFolder.commands.sampleCommand"5 c5 Y$ c4 I- Q/ ?3 k2 \' ?
icon="icons/sample.gif"
$ f* m( r$ }2 R& n! \ tooltip="Say hello world"5 u3 H7 J" y# A
id="com.plmhome.createFolder.toolbars.sampleCommand">0 z5 R" a1 P! ~' J, |6 w
</command>/ o( {" q$ y; s L4 R- V; h. D
</menuContribution>+ m# a i2 D6 X- a
& U8 `. k/ e- `8 E. L# ^(6)加工具条按钮) y! U1 V# h' D6 \
<menuContribution, w$ M+ C% V; I7 V' c/ K% K
locationURI="toolbar:navigator_Toolbar?after=additions">
D0 I! {8 Z6 n1 p4 }: }2 [ <toolbar$ d( O) g8 @- E; Y9 G
id="com.plmhome.createFolder.toolbars.sampleToolbar">
0 @5 \# V! a/ t% X) B7 t" g <command- ]$ B7 d# S3 C; y! f$ Y! A) d
commandId="com.plmhome.createFolder.commands.sampleCommand", Q8 I* m0 D s+ O; U7 u1 H2 u
icon="icons/sample.gif"
; B4 P7 m2 e" t1 E; ? tooltip="Say hello world"7 P" E, n% t3 W2 _
id="com.plmhome.createFolder.toolbars.sampleCommand">
7 {+ i. _$ P: |7 i) w </command># e L' t$ `6 T. W8 l6 w
</toolbar>
9 z x: p! n! X% L7 i( k( A </menuContribution>$ f, r4 c, V! w. O* {" J! M
5 U( N# Y, B' ^8 }
9 ?4 b% K2 r2 z5 B) V3 l完整的例子如下:; Q* d; |( [; Y4 ^ e; U2 b
3 h9 b; O! }+ p2 e
<?xml version="1.0" encoding="UTF-8"?>
' s5 I" `' Y2 } ^' d<?eclipse version="3.4"?>
$ {+ p' D! G s: F& R3 I0 t<plUGin>) k8 o) A( K- z
' K0 `3 P+ v/ C7 Y/ J! L% y
<extension
$ R$ j+ s/ ]8 \, j point="org.eclipse.ui.commands">$ {) f y7 H# p2 g* b* x+ X
<category
4 B- y$ ^. X' Z4 m; } name="Sample Category"
+ I3 l4 H, f1 g id="com.plmhome.createFolder.commands.category">
" k* ~+ [. @5 B+ R% z5 O8 } </category>8 F& Y% a- C* a6 h/ f; ?. j: I& D
6 x- c7 n1 H" u% Y0 h$ T <command0 ~, T5 w8 B9 Z
name="PLMHome CreateFolder"
, f5 v# v7 ?) M5 D# d: A4 a categoryId="com.plmhome.createFolder.commands.category"6 M- C/ x3 |; d% }& ^
id="com.plmhome.createFolder.commands.sampleCommand">
" [" e# x8 k1 x1 r; d; d </command>/ _5 a4 D- P' g: W0 l" p! s
2 j( k; S h" T) M, N
</extension>
1 ?3 b6 `0 C6 U$ o \9 D <extension
$ _; z7 n3 t5 J @" D" K) V point="org.eclipse.ui.handlers">
. N: \, B$ j6 l2 c, x: _ f <handler
* A9 c8 ]7 l# F' ~1 H) g commandId="com.plmhome.createFolder.commands.sampleCommand" H! ~4 J3 Y2 s& ~
class="com.plmhome.createfolder.handlers.SampleHandler">
0 [* a5 a- T# R ~2 y& w& a </handler>
8 V" P& }7 ^% Q </extension>+ h' F5 s* {4 \$ X0 v, `1 c7 |
<extension3 f+ y4 ~$ y* T6 n
point="org.eclipse.ui.bindings">+ ~. y! a5 S* N
<key! v2 R4 ?5 d* Q0 C8 }+ n1 v, |
commandId="com.plmhome.createFolder.commands.sampleCommand", m$ |1 A( z2 I9 \' B' n
contextId="org.eclipse.ui.contexts.window"& ~8 O8 q/ k& H" u& `( D; I8 \; a
sequence="M1+6"
( f5 E* Q( Y) z2 X5 h) Q* Y schemeId="org.eclipse.ui.defaultAcceleratorConfiguration">
; y$ p, b9 j9 n7 Q7 S7 e </key>7 R2 @! l- O, z E! I
</extension>( j+ B% W4 o5 D/ E
<extension
1 U( m& V, |% W point="org.eclipse.ui.menus">
4 x+ N% u" Y0 Q" |9 b; V
0 A- X* M% k8 k R' N, | <menuContribution
) N/ q! O% }/ W locationURI="menu:org.eclipse.ui.main.menu?after=additions">
- Z0 J1 Q% J: C( v <menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">; U7 B- `7 U8 V3 p
<command; c J9 q8 l7 c0 {9 ^% S( U
commandId="com.plmhome.createFolder.commands.sampleCommand"
& B- _8 `. s" ^2 @" d mnemonic="S". Z0 k' v" l, G8 z
id="com.plmhome.createFolder.menus.sampleCommand">
" m% s2 s: \1 V* B </command>& j. e: v, G" d
</menu>( ]6 v7 c7 `6 i* _" |3 F, O2 n
</menuContribution>
& R- ?/ D! x B+ A3 ^; B1 f) P, S& t) F* x+ Q0 L% C; E
1 y4 D+ F0 z1 l$ P
( A8 A/ K2 [ E5 y
<menuContribution& W, H# M0 K" S$ {" @+ l( g; f% t
locationURI="menu:tools?after=additions">7 ?7 ], e8 {/ `8 e
<command1 J) C1 C7 M4 X
commandId="com.plmhome.createFolder.commands.sampleCommand"7 G* ]. d) }& p# s/ R7 c" W
mnemonic="S"
- T! ~6 L; D& {& y. f id="com.plmhome.createFolder.menus.sampleCommand">
4 Q6 E1 Y5 H: i/ r6 ^, L& {+ W </command>! N4 s& y9 E* i' i7 y M
</menuContribution>5 r* A. `6 P4 {3 C
+ n- n# m6 `# f, C
( W" s8 j' a5 e4 E1 j
' |' R( _! ^2 n) n% v <menuContribution
) w8 ], v9 G: S. _5 k locationURI="popup:org.eclipse.ui.popup.any?after=additions">9 D. x( ?& f8 m0 k; j& \
<command2 u- ^8 K. J- q9 W3 u9 x
commandId="com.plmhome.createFolder.commands.sampleCommand"
7 e2 ?4 l$ c: ^5 d: C* A mnemonic="S"* a4 I7 n# K% K: U O" v
id="com.plmhome.createFolder.menus.sampleCommand">
0 W6 @+ h; q0 S% i) k q3 y. p+ ~3 Q </command>
9 m; }8 _" V$ c) W' u </menuContribution>: m ?! C! w, ^1 L5 v
0 X% L& P# T4 P
<menuContribution$ b& _0 m0 ~/ d5 ]& y
locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">
! H, H5 I3 _/ f8 [6 \ <menu
1 B; n( T* X _: G label="PLMHomeToolKits"
8 H* [: @0 f1 v0 [) I mnemonic="M"
5 m( O8 a' r; v' ~3 h( b( T7 ]+ Q- { id="com.plmhome.createFolder.menus.sampleMenu">7 c+ [' q7 \+ ~' p# H# e' |
<command
2 [4 {7 o5 S! ^2 N" U. ^* Y) [+ E) N& u commandId="com.plmhome.createFolder.commands.sampleCommand". R3 H( _( A& v$ q8 L
mnemonic="S"( j) Q8 A% T+ b
id="com.plmhome.createFolder.menus.sampleCommand">
+ b$ H6 K$ Z k: | </command>! i0 E; l L8 g6 Z) w
</menu>
) \7 J6 p( v, t2 ~ </menuContribution>
0 X3 r2 J/ q5 x1 f) n1 ? s2 x2 g4 @5 \
<menuContribution6 x7 a& \$ V+ T! P4 f+ q0 L
locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">7 S- \+ r0 i6 {* d9 t- L
<command# C' T1 @9 t4 G8 b e! [1 P0 }
commandId="com.plmhome.createFolder.commands.sampleCommand"
& f& X) K" ~ X* ~ icon="icons/sample.gif"& n7 k, ]' ]- J1 {/ M6 Y
tooltip="Say hello world". ~1 O- R( N$ V, p5 E+ n
id="com.plmhome.createFolder.menus.sampleCommand">
& Z5 w5 f+ Z. n+ A </command>: d' f. u/ o* p& j& P* D% b+ Y( b
</menuContribution>! r' X; h) ^* [& k4 G. X6 f$ X
! f$ }# D0 y6 Z2 S, x0 T
9 @- ?* x, x) N. I. V <menuContribution: ~- S3 ~: d7 g
locationURI="toolbar:navigator_Toolbar?after=additions">: v; P8 J* F h5 P, ]+ n3 h4 R
<toolbar
9 w9 ?$ S7 q1 q6 b u2 v id="com.plmhome.createFolder.toolbars.sampleToolbar">
0 `7 v! d2 S3 n! h* b4 i! t( ]) i: @ <command! w; l; z& {* ^
commandId="com.plmhome.createFolder.commands.sampleCommand"( u3 P, ^& I- h c1 a; E# U/ K
icon="icons/sample.gif"
5 U" l G) x9 j3 m tooltip="Say hello world"
: S4 }) ?2 Z( d* [ id="com.plmhome.createFolder.toolbars.sampleCommand">! O, B: |- [- y( u6 Q9 I* ?7 A
</command>
) ?. a G3 T) \) l! ~ </toolbar># n7 M' Y% m y, C& Z" ]- @
</menuContribution>. R! h1 Z7 ~& i' E( A! N( [2 D
/ Y8 R; M4 {3 G8 {
0 b% g" K2 R. @% k1 g; N; E </extension>7 D$ U/ k! U/ n0 T
, N& O/ X: D7 r7 _</plugin>
) z0 x& N$ A& [) F( |) u3 |& b' j8 G' w/ v5 C$ ?
0 u. J, p8 X2 N, ]
5 M" f4 `- ?( p% V* v |
|