|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Teamcenter胖客户端开发】teamcenter菜单添加图文教程<1>
3 ^' w9 N$ \& E# K: y* g' ~这部分内容实际上是eclipse的插件开发的功能, 这里做个简单分类,菜单文件的扩展点都是 <extensionpoint="org.eclipse.ui.menus">,添加菜单就是在这里面添加内容。这里只要注意location即可!/ g; j7 Z2 f1 l
(1)在主工具条上添加菜单。) Z# j5 \/ {" a* P
<menuContribution
7 D6 t' @. ^6 f# z. ? locationURI="menu:org.eclipse.ui.main.menu?after=additions">
/ R9 j- l6 n+ y: |2 J1 Q0 |8 P" y <menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">
y# s0 Q/ r% d" B& [$ w <command
! S% J0 r U) k$ d" v& e commandId="com.plmhome.createFolder.commands.sampleCommand"3 ]2 ~+ I# Y; S" I' \
mnemonic="S"" T0 y% D. R+ Y9 c/ b9 W
id="com.plmhome.createFolder.menus.sampleCommand">
z8 L2 N" R2 |! W4 _9 I </command>. c7 p+ @! H( x8 J- A
</menu>1 ~, p$ r/ Z5 J9 `1 Q3 @
</menuContribution>
: ~! e+ ?" s7 H) i0 B1 g
* z0 s( _* |; U% W5 i: o(2)在工具功能的后面添加按钮。 P" ~5 C9 ~' C
<menuContribution
; k3 x5 m! T& t2 v0 {- P* }' K+ X; \ locationURI="menu:tools?after=additions">
& k1 \+ x0 y1 |) J& y3 a* u6 M <command, e& {2 V+ I5 m1 d+ Q- B6 ?9 }: @
commandId="com.plmhome.createFolder.commands.sampleCommand"7 n3 l3 y/ |$ \0 ?) l
mnemonic="S"2 V+ B: B4 d2 Z+ ]# v3 R
id="com.plmhome.createFolder.menus.sampleCommand">
3 R7 t" x( J' Q3 G$ ]* t </command>6 N. d k2 V* ^! d- w8 B2 r
</menuContribution>/ X L6 |6 m) l5 ~6 y8 {
' G9 S1 G/ ?9 T" K1 u, E2 B' }(3)在右键弹出菜单加按钮
9 m- ]5 D/ e, _$ ~ <menuContribution( S8 w' w' [ T+ D$ R N
locationURI="popup:org.eclipse.ui.popup.any?after=additions">6 S) `" i* P- i6 E
<command/ t7 |8 k; \0 L# o0 o4 q- D( \
commandId="com.plmhome.createFolder.commands.sampleCommand"8 T% _& k# O2 Z; z d9 S! u/ S; I
mnemonic="S"
% }, H# P a4 R8 W id="com.plmhome.createFolder.menus.sampleCommand">
* {: l9 N. z6 v6 L0 H </command>' K! m4 ?; J# r6 b! T6 t
</menuContribution>
! G) v6 m; s( w' B# J: p(4)在具体的菜单后面加功能按钮
: I' K. u) n% e& t2 J% ~" H <menuContribution# z' P0 B& A: k2 A! L
locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">6 i3 ^! l- R3 E
<menu- ]$ j6 {- G4 W+ D: Z* n' V2 K
label="PLMHomeToolKits"; l, \( E1 R5 T `& j6 ?
mnemonic="M"3 y/ T" |. l+ i" u
id="com.plmhome.createFolder.menus.sampleMenu">
?# ?- ]" @# n; Z# _& l( N <command
& |. y$ `4 T8 ~) A8 w# E. ] commandId="com.plmhome.createFolder.commands.sampleCommand"# K) s o# H9 l
mnemonic="S"0 Y* x @% q. M" z* K! i% C
id="com.plmhome.createFolder.menus.sampleCommand">
- M! U. P( R" C- [/ T </command>
: ?* S, D: o" G! R3 Q3 b- y* s </menu>
) t; X2 t, {" R </menuContribution>! h2 i( I; k! ?% z* G) ]2 T
9 U/ o4 k5 k, U" |+ X(5)指定位置,直接加按钮$ R7 A" N0 R) r1 a* E. N
<menuContribution- M3 V* ^) p* t1 Y
locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">
Q( Y9 |* R. j$ f! `2 @ <command" E8 w( M8 i1 A1 G8 m( K
commandId="com.plmhome.createFolder.commands.sampleCommand"2 V* l" ]- `6 g# @2 A6 I9 A
icon="icons/sample.gif"
6 S, p3 N7 y6 x tooltip="Say hello world" t0 e$ E3 n$ Z* ^- }. g1 E
id="com.plmhome.createFolder.toolbars.sampleCommand">- M* n4 B' p E( f6 ?
</command>
$ e- ]3 ^) Q8 X5 K </menuContribution>
& _; B9 p& Q8 N8 ?9 _/ o1 u0 C' H
' z k( L$ `! ]- j- p1 W(6)加工具条按钮! w3 Z+ T' l7 @" I) `% Z9 g: J
<menuContribution
( x0 G9 k9 V# P2 D3 U- ^5 ^ locationURI="toolbar:navigator_Toolbar?after=additions">7 I2 m( z" T. O" u2 O
<toolbar
3 {- r/ T1 T- o id="com.plmhome.createFolder.toolbars.sampleToolbar"> [- G$ ~; c3 k& I K* [
<command. M. U- x6 s! h3 w
commandId="com.plmhome.createFolder.commands.sampleCommand"
2 J2 x& V# z/ g7 n0 f5 x icon="icons/sample.gif"- n' T2 l; q+ Q( f$ U# \9 U; g
tooltip="Say hello world"8 y' p) M2 r4 ~1 R
id="com.plmhome.createFolder.toolbars.sampleCommand">
' \; q+ q2 C1 b) g </command>$ [8 \2 q- V! W2 Z
</toolbar>- Y! G& B% W- `. w) j
</menuContribution>9 b2 m6 j5 G* a: D% Q6 [+ h ]
$ W2 O" U+ L3 ?) M/ k
( b, H0 Y# I1 e; ]$ c
完整的例子如下:
6 ~8 F" D* M3 N& b" G c& L2 Q! @& W' L
<?xml version="1.0" encoding="UTF-8"?>
% v& C# H% u0 X<?eclipse version="3.4"?>
; e4 p! A. j2 m# [* Q8 z- u<plUGin>
: e* M. X- C1 u. J9 M
$ s* c! F3 d- H3 M <extension% B* @2 J* s. o& Z1 b# r" M
point="org.eclipse.ui.commands">3 o* M: C7 J0 d- O* C; S6 [
<category
4 X) C5 y$ p% J name="Sample Category"
@" v6 ?( }2 G. k) e9 S, `$ H id="com.plmhome.createFolder.commands.category">' z. \, d T1 M
</category>0 ~5 M: G9 ~" v$ C
5 N: m/ v$ R4 l <command2 w$ A" Z8 j$ N+ C- m2 i: j* Z
name="PLMHome CreateFolder"
5 l! y8 i; i* A' V& J% o: b1 ` categoryId="com.plmhome.createFolder.commands.category"& ]1 Z; I2 [/ v5 R* ?# x- w
id="com.plmhome.createFolder.commands.sampleCommand">% d; S9 {9 F2 S
</command>
! l1 j( d4 j. |9 M; p9 p7 [0 w6 m# A; u: w
</extension>
6 @! r, c: s- V1 Q7 L; Q- K4 q <extension
8 S- `' u; n! u9 I' Y* ] point="org.eclipse.ui.handlers">1 o& a2 T3 Q, w$ D+ ^, {
<handler
7 ^0 Z" c: [6 z- ]" N: K, O commandId="com.plmhome.createFolder.commands.sampleCommand"
1 ]9 b# U. v7 y0 T9 r, W class="com.plmhome.createfolder.handlers.SampleHandler">
( u& P: K F4 N9 N+ @; [; a </handler>
8 ~3 Q! `* Y1 X </extension>2 [1 }6 s; w1 i, _9 K. j: E+ j
<extension6 o8 Y S4 e% p; T1 f
point="org.eclipse.ui.bindings">
. [3 q4 u! b/ r: O4 U <key) B n) M* g- U3 g# F
commandId="com.plmhome.createFolder.commands.sampleCommand"5 m3 A+ g3 V8 f& O0 M
contextId="org.eclipse.ui.contexts.window"
. ?( ^+ m4 O- p' n9 a4 s& q sequence="M1+6"" J9 t" i( {5 H1 K% k( w+ j
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration">% d& i% r+ Y/ ? D0 G R$ w: ^
</key>7 z6 Q# C$ O6 [2 N" a7 m
</extension>3 {; ^: c1 ]+ K! G; J9 [7 M# _
<extension
$ B$ v$ x' I" u' m& j% | point="org.eclipse.ui.menus"> I4 z6 V' g' ~
6 A$ E: R# P V$ p
<menuContribution
; ?# p: n- N& K. |# V$ } locationURI="menu:org.eclipse.ui.main.menu?after=additions">
. Y b, p5 F3 G$ R) Q8 o <menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">( w5 q4 w+ B# X: g8 e$ z
<command
; z/ |- h( v8 ] commandId="com.plmhome.createFolder.commands.sampleCommand"
9 f- I3 V1 [/ C mnemonic="S"
* f P3 z( M; t8 J9 w5 _ id="com.plmhome.createFolder.menus.sampleCommand">3 X7 H6 b. A7 {3 l. h. s9 A
</command>
' p; g& u- U9 d" i/ ^ </menu>
# Y) b7 H7 Z' ]/ [4 q) W s8 N# B$ _ </menuContribution>
- y8 U0 Q0 Y" X% H( W+ y4 G. K, T+ K. Q. |: h6 f
. L C/ |, p5 o0 G0 C, n- p
3 _! n. J( f2 I1 v- @1 ~0 o
<menuContribution
& ^; S0 Z5 I* b" C$ A) o6 I7 p/ j locationURI="menu:tools?after=additions">6 E, F4 Y! N9 y; k. L7 B( Y8 i& ?$ u
<command1 B- P) j* T. z' X8 F/ ?
commandId="com.plmhome.createFolder.commands.sampleCommand"3 q+ F8 W# j- P
mnemonic="S"' `7 U2 ]/ m( s5 Y" H8 g( n! R
id="com.plmhome.createFolder.menus.sampleCommand">
: V- B4 v5 }) s |3 G4 O </command># w! O1 x' j" E; u4 l
</menuContribution>( r3 a, I$ z" {9 b7 {( G
9 f1 R. z8 ] Y* C# ^4 Z4 c
. p6 U1 Q+ G2 z
; l2 G7 s4 |1 z! p7 _7 j3 F <menuContribution! ] G, k4 H, T; r5 L
locationURI="popup:org.eclipse.ui.popup.any?after=additions">$ l9 v7 Z u9 _, f. K9 B% o+ A* e
<command4 c4 J% z! h5 i+ o
commandId="com.plmhome.createFolder.commands.sampleCommand"
, V2 M$ |' N; S mnemonic="S"5 H2 b$ q9 \: L0 ]2 A+ X1 F+ u
id="com.plmhome.createFolder.menus.sampleCommand">
% `- Q* k. [, \; d9 E5 ` </command>* P( H5 j4 R4 n/ ~8 n) A4 T
</menuContribution>
4 K S: u/ U3 L1 _
1 U* |8 Y c% z <menuContribution
5 }, I6 k5 N7 g4 W5 \# ~ locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">
. i) l6 `* K% l6 ~! z <menu. y8 t2 i7 N0 M% C
label="PLMHomeToolKits". w/ U; A- G( o1 a
mnemonic="M"
% Q$ P& Q' K2 S% { id="com.plmhome.createFolder.menus.sampleMenu">
$ J9 k/ j2 ~* z6 D <command$ l' |5 |* e1 T1 H. Y3 K
commandId="com.plmhome.createFolder.commands.sampleCommand"" M! I" a1 [ C5 f1 _+ \
mnemonic="S"
. D& ], s6 ?" B0 ]8 |- Y id="com.plmhome.createFolder.menus.sampleCommand"># Z7 V w& A- u9 K; v/ Z
</command>
( T8 k3 V( S+ S9 Y" p </menu>5 @; t8 y( d4 F: c
</menuContribution>
1 L4 G+ O/ f5 P7 R+ v6 ^6 w/ [) A. h( q9 S5 I% @( O5 y* c
<menuContribution
) g& I0 n5 y" }" P' x, `2 N/ e locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">
/ @$ L+ c' m9 r <command& J8 e" P, h7 N$ j9 A/ J
commandId="com.plmhome.createFolder.commands.sampleCommand"
) ^: ]' Z, y% X! t/ L- B4 j* r5 n2 k icon="icons/sample.gif"
6 e) ? P g! l4 O2 t: s tooltip="Say hello world" y1 X% q2 V0 o5 e
id="com.plmhome.createFolder.menus.sampleCommand">
$ t0 f1 n. d" @! C1 K, ?; R </command>
& I% U6 Q% _) j6 S; Z. F! n </menuContribution>
+ f, n- t$ t* @
: m: Z, |6 r% C+ u' T2 C# q) v* P& o1 z7 H
<menuContribution0 W- Y; K; P1 u' N$ l
locationURI="toolbar:navigator_Toolbar?after=additions">
7 ^9 s' A* o( n0 Q8 A+ ~" F <toolbar2 R' m. A. {* | S
id="com.plmhome.createFolder.toolbars.sampleToolbar">
% U6 n$ `6 A% m4 R W# C4 f <command
) C3 V- B3 O2 @- I$ g commandId="com.plmhome.createFolder.commands.sampleCommand"0 O' J; u( v3 k% V0 R$ E8 M s8 e
icon="icons/sample.gif"$ }; _' f& f9 l. K
tooltip="Say hello world"/ J9 @6 S9 {* Y8 {
id="com.plmhome.createFolder.toolbars.sampleCommand">
+ k/ G3 j0 f4 w' v( y1 F% o' G </command>0 }/ K# G' u3 c
</toolbar>
) R9 ]: [0 a! F1 U$ z. p) r </menuContribution>
5 a; w7 D, c7 e" `: b. {( ?# q4 H/ t( R# L3 Q, ]
- N1 l& j+ R+ I+ _% i* D </extension>
6 N8 u; Q" W1 S* w. J, A$ x
4 {: }7 ^; |# s7 V8 V/ V* O</plugin>% m5 E) [# ?7 _3 ~! [# f
L, l3 G& ^, y* C6 [3 l' @
5 W; ^0 h1 A- o1 ~8 o
, h' K" _( z b, G8 \' O& R |
|