|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Teamcenter胖客户端开发】teamcenter菜单添加图文教程<1>7 Z# d. w" P; A' T( ?) j
这部分内容实际上是eclipse的插件开发的功能, 这里做个简单分类,菜单文件的扩展点都是 <extensionpoint="org.eclipse.ui.menus">,添加菜单就是在这里面添加内容。这里只要注意location即可!% z. M8 P& F" F
(1)在主工具条上添加菜单。# L) r' W' J& G$ Q- N4 O# A. ^
<menuContribution
7 j3 V V4 z# P0 c8 B1 [; [4 X locationURI="menu:org.eclipse.ui.main.menu?after=additions">
& ?) \1 S9 Y, k <menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">
4 ] L1 ?1 {1 V0 T* T' ^ <command' i$ ~& L" L+ o
commandId="com.plmhome.createFolder.commands.sampleCommand"
A) A' z: q! D mnemonic="S"
) a5 e7 F6 r/ {$ y7 W2 `# |& X id="com.plmhome.createFolder.menus.sampleCommand">, i7 s1 n. i i- c
</command>6 ?0 @( L/ O1 B2 M! M r. }
</menu>% j6 z3 t8 @' t0 |$ e ^7 ^5 h
</menuContribution>
% }4 l. y) A: x8 n
0 P+ \. C$ _8 w8 C1 ](2)在工具功能的后面添加按钮。
" `5 t, l: o9 q& b8 ~, ?: X5 S <menuContribution
' i: s5 @& k" X3 _# G/ g locationURI="menu:tools?after=additions">
) N4 }) T6 i+ |# W <command
' Z" L+ L, _- N' R commandId="com.plmhome.createFolder.commands.sampleCommand"* e5 }+ N$ g$ E7 [
mnemonic="S"! T* d4 R) s9 I* L. ]2 N; H! v
id="com.plmhome.createFolder.menus.sampleCommand">5 N& g4 d& g; r0 X, o+ G4 M* @
</command>7 Q6 {2 h g* L7 }0 a% c
</menuContribution># `* N' G; Q% D" s
) G/ d) A7 B" J2 P' x(3)在右键弹出菜单加按钮; ^8 |1 y: a5 Y" k; b
<menuContribution3 V6 l2 a; T$ `3 r+ ]. G
locationURI="popup:org.eclipse.ui.popup.any?after=additions">
: P+ h2 A& k/ \' S' z j0 D+ G. s <command
/ P9 z5 y X! R9 [. g, n, C commandId="com.plmhome.createFolder.commands.sampleCommand"! O x5 {. H4 b0 U
mnemonic="S"
- y) F% ~2 \, r- K' F id="com.plmhome.createFolder.menus.sampleCommand">
" `3 ]8 ~6 f# C+ I7 M, t% d </command>7 `% d- y0 n+ o7 q9 m1 x. J: A) D
</menuContribution>& U' L' M% F; E7 G5 Z3 P) w' J
(4)在具体的菜单后面加功能按钮
% h& p* V9 E& E& h1 C5 Y <menuContribution9 V4 U/ o) D' D# c* c+ h: C+ B
locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">
- O2 b; e, Z' W1 _ <menu: u- M3 h# |% ^! }" E
label="PLMHomeToolKits"
, b" q+ s/ D1 i1 u mnemonic="M"
O/ c r6 H' d! Y2 E id="com.plmhome.createFolder.menus.sampleMenu">
- P! z: Q d7 ~! F o4 c) i4 Z/ y i0 x <command
# o( p2 h3 C( r- I2 u commandId="com.plmhome.createFolder.commands.sampleCommand"/ d3 f ?8 L& [5 I% h
mnemonic="S"
/ @2 _* D2 W& l id="com.plmhome.createFolder.menus.sampleCommand">. u2 m. L+ _5 _1 C
</command>
& ^" Y! Z+ B1 Q/ A4 L+ k </menu>
" s) z% ^: w; k. h; y2 G </menuContribution>* V A3 q- c# S# H
2 g- i* k; ~4 q1 ~9 y
(5)指定位置,直接加按钮
2 l$ ~ b% d2 ` <menuContribution
j9 _! v% X m7 @) W% O locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">
- X7 ]' L) }5 v/ {8 r <command+ k) |7 v* c# g8 m5 u0 w0 c
commandId="com.plmhome.createFolder.commands.sampleCommand". R1 W7 t3 w+ l- I: R
icon="icons/sample.gif"' M1 m9 ]: e4 u. H0 f* A- `
tooltip="Say hello world"# j- U) C1 w+ @5 ^" i! [7 S" U8 J6 k7 E
id="com.plmhome.createFolder.toolbars.sampleCommand">
+ A* H' w6 ], @ A% c </command>
( ~; O% z3 m2 A* a& n </menuContribution>
* l: _5 p- O3 a" \4 o7 M
4 j+ l3 D0 q0 p7 |$ V- J l8 j(6)加工具条按钮
/ Y. [5 C; k: B: e9 _+ A <menuContribution
2 N( V8 w3 r, h/ \8 Y! D3 M locationURI="toolbar:navigator_Toolbar?after=additions">
- t, {- `2 A* ]2 x1 H Q4 x$ E& c. K <toolbar# ~$ f4 P0 l' k" Y& E& K3 N. o
id="com.plmhome.createFolder.toolbars.sampleToolbar">6 m4 |3 @( O+ p
<command& K- Q! R6 t$ X) B! A
commandId="com.plmhome.createFolder.commands.sampleCommand"
6 C: U5 Y: t: t icon="icons/sample.gif"3 G5 h6 ^# G3 P/ F! E( `9 z
tooltip="Say hello world"4 M; L( b: Y" Z
id="com.plmhome.createFolder.toolbars.sampleCommand">, i8 z; I$ d) n7 C) P
</command>
! g" R8 T6 ~- ?/ ?% k </toolbar>
% K" X# K! I, x9 B8 E </menuContribution>9 o' Q: f2 Q% {2 ]/ |% M
0 V, _1 z8 ?6 z8 s0 p9 r
; W- I4 `$ @) |6 l
完整的例子如下:
s# y n+ D! m% l5 |: Y" D0 |: k( N9 N% h" G) ]
<?xml version="1.0" encoding="UTF-8"?>
0 f/ ]6 w! y* l. i" R) Y<?eclipse version="3.4"?>
3 a" |* k. Q s4 V' ~9 O8 G8 q<plUGin>% i6 l5 A/ f0 \: ^3 L
7 r$ e- B0 X! t9 u <extension
7 \ R0 T) m" P- E" F: D/ t. | point="org.eclipse.ui.commands"># s& _+ f1 W1 w/ X: Y6 c4 g
<category% }3 n9 k b/ \7 k( E' j
name="Sample Category"6 s8 D( B" R+ [' x9 Y/ m* _
id="com.plmhome.createFolder.commands.category">
, Y G/ \4 i' L3 [9 @! l$ B </category>, d$ o l. W+ {( T* Y
; m9 c" A/ f% O u <command
- I- n/ Y8 |4 E, b5 I3 }7 J5 P- R name="PLMHome CreateFolder"! M: A4 B7 }) n* E" y
categoryId="com.plmhome.createFolder.commands.category"
( w. J* B8 Q6 @! U2 e- q& b id="com.plmhome.createFolder.commands.sampleCommand">
2 H7 l. j2 _& u- J& L1 G </command>5 Y4 Z( n, @! h: m1 f: B
3 f' J" M( H/ W" S" x: x7 C
</extension>
, L V! ]4 u M# C! U' c3 ^ U <extension, i% M7 _. C( I/ k6 C5 R# h" G5 Z
point="org.eclipse.ui.handlers">, B6 y, O- @. e5 q$ S5 g+ \
<handler
5 m# k1 p. B3 l! f commandId="com.plmhome.createFolder.commands.sampleCommand"8 f6 M; Z! _: V+ _+ q5 g- U7 g {
class="com.plmhome.createfolder.handlers.SampleHandler">1 X+ W1 v2 }# a/ M F
</handler>& l* v" E4 }6 O: K% t
</extension>
; B+ q2 J: Z8 c <extension) X3 g5 |+ j3 `! s3 o8 w/ b& g4 a
point="org.eclipse.ui.bindings">1 T! [- c, i6 A$ ~
<key2 g) z# m- q' i; m1 B
commandId="com.plmhome.createFolder.commands.sampleCommand"
: f5 L* G' D1 T4 S1 `6 W contextId="org.eclipse.ui.contexts.window"
4 j9 t; j1 Z# O5 _- R) }2 U* O sequence="M1+6"
/ R. F/ k0 ?* v schemeId="org.eclipse.ui.defaultAcceleratorConfiguration">
A+ u( W( i8 B3 t </key> a6 T) y9 ~$ q, G% `7 \
</extension>
8 |/ h$ }% Q) c q, w) B# R <extension2 Q4 h/ ^- v+ g
point="org.eclipse.ui.menus">) W' [6 U7 P% w
. E# v$ o3 g8 N; o6 r8 ^7 h) l5 I
<menuContribution
7 S- v1 d- Z* }- ?8 ?) f9 X locationURI="menu:org.eclipse.ui.main.menu?after=additions">
1 V( s4 n( I- @. x# @. y8 E( l <menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">
: k$ I* e2 o# O) f( m8 g6 L <command
6 h! ?5 v1 e' o) _ commandId="com.plmhome.createFolder.commands.sampleCommand"
3 w3 F. H; ]) ^8 t, v6 z N mnemonic="S"+ ?- B" l" P9 N- [ ^' F
id="com.plmhome.createFolder.menus.sampleCommand">) x* l$ m# S- T A
</command>
, U9 O. t/ C0 ]/ W! p </menu>* q' E0 i+ q* M& m
</menuContribution>
+ j6 a Z+ v1 K+ d5 Z1 G' j+ x! r- E5 d3 l+ Y
/ U! }4 B: A8 v( C$ G; i" x
/ a) J+ n3 {3 c8 z. k <menuContribution; u" R0 F. T2 O8 u/ v3 l1 ~0 U
locationURI="menu:tools?after=additions">
$ O9 o S1 e$ a* w) ] <command
( X8 X8 m% l3 K$ S8 \" |0 c. F commandId="com.plmhome.createFolder.commands.sampleCommand"3 @; ?) f' M9 E) }6 `, j
mnemonic="S"1 A# \8 i9 m+ m: u& h
id="com.plmhome.createFolder.menus.sampleCommand">
; C0 k# M9 r% W! `& h </command>. g$ I1 E5 d9 V
</menuContribution>
6 Y# h. M# J- }4 f# j0 j8 n! j% v" ~- A
5 A* ]" G# g7 m0 M% H' `' w* R
6 U R+ t, X9 X0 U' u+ y
<menuContribution, K+ I3 o. O: ?5 E
locationURI="popup:org.eclipse.ui.popup.any?after=additions">9 g) r% }: N! o ~0 o( F; o/ O
<command
, U0 a# @# ~* a* O commandId="com.plmhome.createFolder.commands.sampleCommand"
' v1 \, i3 _" M% M6 ?8 R mnemonic="S"
4 \' t( o' b. a id="com.plmhome.createFolder.menus.sampleCommand">$ X$ ~, W' n' q+ [$ T* {+ N
</command>/ W/ j( P; W: e) H v
</menuContribution>
2 V1 c2 |/ ?8 R+ V& W5 k# I
# R" a3 j! q. ^+ M <menuContribution* n) g4 P+ t. }3 b8 U; |
locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4"># Q% |: E; b* f, V
<menu- L* `5 L5 U) {% B7 i, V) z, g
label="PLMHomeToolKits"
% j/ l' |4 L* r) E! L+ Q7 k mnemonic="M"! L- }- i' @; ]( J
id="com.plmhome.createFolder.menus.sampleMenu">
2 R9 p! f, |/ W8 g- `" Q <command
8 S0 y5 g; P- Y4 T% M$ }* E+ l/ O commandId="com.plmhome.createFolder.commands.sampleCommand") O; _' t- u) L3 l4 p i
mnemonic="S"/ m b6 _: y4 ^: ~$ c
id="com.plmhome.createFolder.menus.sampleCommand">
/ _) q, v6 w V6 Z </command>2 H- T. L+ V0 J3 g
</menu>
t' t6 m, l; { </menuContribution>; ~! O' [6 n8 O* k8 g. o
) @% ?) J. X& z k" k# M9 ^ <menuContribution
2 B; x2 R2 C7 l6 M X& u7 R locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView"># l, o0 R. R. Q" m
<command
' ~) \3 J! y) s+ t ^7 h commandId="com.plmhome.createFolder.commands.sampleCommand"
" q. w: j8 S* h+ l8 O K icon="icons/sample.gif"8 R: l, T8 R+ @' q; n# D8 P3 Q! N
tooltip="Say hello world"/ V: V2 e, l' C7 U
id="com.plmhome.createFolder.menus.sampleCommand">
" ~7 A- U7 J: z+ M3 h1 C; U </command>
7 l- F5 L( U5 R! w" R9 A6 d </menuContribution>4 L$ d2 x y6 q! V0 S
" ]+ Q4 q, f& @% b- e8 m
$ |8 k* i+ L9 N, S1 p: v1 | <menuContribution
! F) ~% R6 G1 m) o8 u, J f& C; r' c locationURI="toolbar:navigator_Toolbar?after=additions">0 @& c6 D) g) [0 u0 Y
<toolbar
9 G8 D: y$ \3 x0 i) M id="com.plmhome.createFolder.toolbars.sampleToolbar"> p% c3 ?) [8 ^5 x
<command9 i9 D3 v. b: J6 T4 E, l
commandId="com.plmhome.createFolder.commands.sampleCommand"- x8 p3 }4 s( t
icon="icons/sample.gif"- {, X5 C* |6 I
tooltip="Say hello world"3 g3 [/ Y( _) n6 G. J0 }
id="com.plmhome.createFolder.toolbars.sampleCommand">
$ d, \. ^/ G8 v </command>* h/ c9 n' G0 Y2 e# Q
</toolbar>2 i2 `% w+ N& @7 U Q
</menuContribution>
6 U4 }9 N9 X$ M1 g7 o, R7 s9 t! E0 i( g* m# ]
; J' \) b! g h. e! [ </extension>9 w; b! P) f- R+ a9 H
5 r' R6 X. m! Q3 s" Q+ P
</plugin>
, h( k- l; R# E3 B6 e5 b U
$ A4 D8 t1 [+ G% ]+ s3 m1 t* q. o8 f: _
" s; h2 |7 n, a. P* C0 h |
|