|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Teamcenter胖客户端开发】teamcenter菜单添加图文教程<1>
/ H* F& Y: D+ X) R6 ]6 J这部分内容实际上是eclipse的插件开发的功能, 这里做个简单分类,菜单文件的扩展点都是 <extensionpoint="org.eclipse.ui.menus">,添加菜单就是在这里面添加内容。这里只要注意location即可!2 s% D% [1 l3 U+ \' c
(1)在主工具条上添加菜单。# Q9 T# M) ~' _; t, ^- C( r
<menuContribution" V- W$ x: C& F, u7 ?. I
locationURI="menu:org.eclipse.ui.main.menu?after=additions">. r( l+ C# A( S/ o
<menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">$ t( R! b7 G7 J& L9 }4 g
<command: d+ _/ w6 N# {% y
commandId="com.plmhome.createFolder.commands.sampleCommand"
8 {2 @/ y" ^1 h mnemonic="S"8 ^: A9 |9 L" K% ]
id="com.plmhome.createFolder.menus.sampleCommand">/ j, x, S0 o1 S& _/ U3 w
</command>' C s/ h) N B* H
</menu>( @+ D$ n5 ^) t$ [
</menuContribution>7 [# n& n! k+ D1 o
& E9 f9 ?: u* \" T/ k(2)在工具功能的后面添加按钮。
$ R8 p Y9 y$ s <menuContribution
: g9 [. ?; t) `3 x2 d locationURI="menu:tools?after=additions">
2 d) ], i" p: B; m* W7 N, _ <command% l' S: L; o0 q- h, |
commandId="com.plmhome.createFolder.commands.sampleCommand"5 P/ K9 R5 W% K8 U
mnemonic="S"$ {5 O. Q9 g- f. q: V$ F/ _/ B
id="com.plmhome.createFolder.menus.sampleCommand">5 a7 J6 D G$ r, G& } X- V
</command>
X$ W9 q" z6 |3 L1 u' } </menuContribution>+ Z) P) M1 X/ \1 `3 d6 G
; O7 A, D8 `* B d N(3)在右键弹出菜单加按钮- W* V3 }( O* v% d5 c
<menuContribution( z( M# |, {; V* s( p/ ~6 o- p0 E
locationURI="popup:org.eclipse.ui.popup.any?after=additions">
" v. D) p& X% I# Z: n <command
5 u. V6 q! S4 o, D1 G5 P& V! P commandId="com.plmhome.createFolder.commands.sampleCommand"/ }- ]3 Z0 P+ K" Q e$ l% m1 H& c
mnemonic="S"
% F7 M" s4 [1 U% P; \" V id="com.plmhome.createFolder.menus.sampleCommand">4 r5 ]' {# J. r6 W& \
</command>. H+ \, b5 J1 ]& T
</menuContribution>
$ F4 @( M& g. @$ s(4)在具体的菜单后面加功能按钮
* O+ `8 t1 z2 W: O$ j* C: ` <menuContribution, F5 e& x, r3 g" W8 F8 J
locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">! M2 l) }) q' g. W$ [9 T$ \/ ~
<menu- E5 F/ z2 d" s' O2 l( `. k# G
label="PLMHomeToolKits"0 q. m$ E) g: ?& S
mnemonic="M"" O( x( \5 @0 |
id="com.plmhome.createFolder.menus.sampleMenu">
; I# j% [. Q* r1 i& ` <command$ P5 t4 W; a: S, c5 c
commandId="com.plmhome.createFolder.commands.sampleCommand"
6 @' K& D4 s) D3 [8 E1 C& X mnemonic="S"3 _* k) U2 e( m: u, q
id="com.plmhome.createFolder.menus.sampleCommand">
# v; p5 {( C& f% Y/ P( m- U: S </command>
4 {6 v4 R% P/ H' n) B8 Q' g, W </menu>5 X: X8 b6 K, u, N- u% y) x4 c- B
</menuContribution>( z' c! h+ Q( M' H. ?/ r3 G3 r( C9 f
3 j! i2 Y+ v6 D7 O8 ~9 @
(5)指定位置,直接加按钮/ E# ]* p" E9 z
<menuContribution: i7 l0 O# r+ q
locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">
* @8 W* c/ H4 `$ l- ~ <command& ^; E" r: O0 h3 g# ~2 t
commandId="com.plmhome.createFolder.commands.sampleCommand"2 B3 S5 `0 X& M" E( A' h# s
icon="icons/sample.gif"
' D! }1 w+ a4 f- ?$ n" W( V1 V- R! o9 | tooltip="Say hello world"
2 H" M0 |2 S# g5 b* ` id="com.plmhome.createFolder.toolbars.sampleCommand">
. \: i, Y' C" @3 o5 i" P) e </command>
3 g& z4 m; C8 @ </menuContribution>
8 s& Z3 O0 e- j3 s4 z D! P0 H7 ]; @2 s& B- N3 G% y
(6)加工具条按钮
( C1 o; u: Q& `* U1 l5 | <menuContribution3 R' G, t. Z" A3 O& O
locationURI="toolbar:navigator_Toolbar?after=additions">
# L" P: e! N3 `. P <toolbar4 x* M8 n+ g+ h/ `
id="com.plmhome.createFolder.toolbars.sampleToolbar">
+ @ C1 S y& X <command
& K) x2 ^# V' K: p5 J0 B commandId="com.plmhome.createFolder.commands.sampleCommand"4 C. |0 m+ C V8 K- L; b% y
icon="icons/sample.gif"
7 Q, G; V: p& d tooltip="Say hello world"/ N: h* e+ K6 J$ m
id="com.plmhome.createFolder.toolbars.sampleCommand">: M+ g5 G! {2 n& T5 I% z
</command>, w* v3 C' {0 Y% f, ]# l
</toolbar>
* L3 l% d( ^( i: m2 g </menuContribution>
g3 P) ~7 s$ _- M3 C
) x. I& D3 O8 r- c# e
3 i$ a9 {- @5 W3 w" T: q6 H完整的例子如下:
/ |7 x" P+ V' M# K, G6 D; H
, v1 j% K) {. l- e<?xml version="1.0" encoding="UTF-8"?>
/ a9 O6 w2 K% d( y/ y<?eclipse version="3.4"?>
4 Y& s- w8 }) [( o( L<plUGin>7 _' P8 f. u4 ~8 q* s
2 X( V, [% t- F
<extension1 u9 i2 x/ `7 E
point="org.eclipse.ui.commands">" E# E+ O' w' V( I2 x
<category \7 t+ }' O' W7 ~" V. b4 N
name="Sample Category"
; c0 W( O2 k6 F5 ?: T* I- [" h$ _! T id="com.plmhome.createFolder.commands.category">
) Q! v' k0 H9 x( S' ~3 L </category>
% h. V- f% O7 J. d5 v3 Z9 M6 W1 S5 D6 Y0 d! y- J1 `- P- s
<command
. S0 i/ b3 i: B6 l1 f5 k7 F name="PLMHome CreateFolder": i9 J# F% ], `, W9 K
categoryId="com.plmhome.createFolder.commands.category"
" ?( x1 e) d5 m$ ~5 ?/ P* y id="com.plmhome.createFolder.commands.sampleCommand">
4 {% \! W0 Y8 p6 W: q2 {" K </command>
( S# _1 I( a0 [
. i" ~2 t1 R1 @0 ` </extension>
: K' E7 { \0 y7 p. }6 I <extension
; @" J z0 d( l. m* f/ d j3 a point="org.eclipse.ui.handlers">/ |: ]7 z# F- K3 U' u; l1 b7 @
<handler) ~2 m* c2 m2 U7 m4 q$ E* [0 c1 M7 ^. i
commandId="com.plmhome.createFolder.commands.sampleCommand": j1 C4 d& L" H% p
class="com.plmhome.createfolder.handlers.SampleHandler">
# G: U1 m" k$ k" L: E G, ~ </handler>! N/ G0 P0 l9 p* g$ n/ w3 N2 ^; K
</extension>
. b+ B- Y8 p; g+ K" c <extension+ r3 K. u. L+ O' L* I9 J: O
point="org.eclipse.ui.bindings">' E& ^- F& L+ v( U5 O; j& F% { p) y
<key+ ?, x9 _. y z/ u
commandId="com.plmhome.createFolder.commands.sampleCommand"
9 B' Q# {. E0 U% D contextId="org.eclipse.ui.contexts.window"2 [, f% P& i- J/ R/ H
sequence="M1+6"
( O) l$ I$ C; U/ U2 n1 b schemeId="org.eclipse.ui.defaultAcceleratorConfiguration">" C. S2 ]5 U# U8 v7 f
</key>; U7 y; U) I* Y8 r
</extension>
( U, c* S j2 u% y; P5 X5 t <extension
/ s6 ?$ n3 m$ ~0 Y5 K3 J point="org.eclipse.ui.menus">$ e: a( u# z5 K% w- a9 X$ _
( ~% c# N3 w- L" k
<menuContribution2 d( g0 A( R' s9 ~) z
locationURI="menu:org.eclipse.ui.main.menu?after=additions">& p( W1 k; n2 L, j1 Z
<menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">
- u+ S: ^! d. ~3 a' V, Y <command
( e( h0 _, ?5 ]9 h commandId="com.plmhome.createFolder.commands.sampleCommand"8 `6 W2 f; {0 q5 {2 e2 l
mnemonic="S"
/ |$ o# ?) L+ B$ r1 Y id="com.plmhome.createFolder.menus.sampleCommand">
+ X3 l: s p3 d. b& R( B( e' b. F </command>- x0 A5 O5 o- |
</menu>: X4 u( {/ z& c% ^! o! ]1 \
</menuContribution>5 T6 P+ s: h6 X2 v3 L
5 a: z+ _$ o6 e, f
6 n# {4 p1 y' K, c3 d: _$ Q: E
* Y0 k# V$ g( R <menuContribution) O$ d9 L. P7 l' H) Y3 {
locationURI="menu:tools?after=additions">) h1 \4 k4 R" _2 I F
<command
0 L* x. {8 L8 A/ P5 I commandId="com.plmhome.createFolder.commands.sampleCommand"
) w, y' o' G; F9 ^ mnemonic="S"/ w" a" l8 Q! T
id="com.plmhome.createFolder.menus.sampleCommand">! t# M( [$ F, ?/ M
</command>+ Y% L& ^! l+ B; S9 d6 N
</menuContribution>0 b/ p, |0 y. l. k
% l9 }* j: Q+ Z, m/ i: f% z/ m+ J6 z2 P" h( ^5 j# E+ p
) o4 a m# ?) V. Q <menuContribution3 L- `& @% s% K2 E! Q
locationURI="popup:org.eclipse.ui.popup.any?after=additions">" {0 Z0 ]: q: ]+ T L/ |
<command' k" u+ {( X: |5 t5 a# o# P
commandId="com.plmhome.createFolder.commands.sampleCommand". \- o: y( s5 B* l
mnemonic="S"
0 T6 _$ c, c0 f. I2 y3 i id="com.plmhome.createFolder.menus.sampleCommand">
! Y/ I0 w" v, I3 J3 `& m% i: l' i- D </command>
) F5 A8 k$ D5 C, C/ O% {: o. G </menuContribution>
0 g( M0 x" {8 J- _" ~' n6 m1 v( g' u) b- S. H
<menuContribution
h4 W7 j( p2 {8 Q. P9 t; A locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">
3 W( N; V. D! _ <menu7 `, U4 Q6 B2 T) C6 m. f
label="PLMHomeToolKits"/ d" a) J5 W. k3 k- o: Q3 \# n$ Q
mnemonic="M"9 y M2 g& s1 s6 q+ a; ^
id="com.plmhome.createFolder.menus.sampleMenu">8 }/ ^0 |; U% r
<command
( z0 L7 E0 X9 [. o8 ` commandId="com.plmhome.createFolder.commands.sampleCommand"' w6 |4 i2 s" U& O& f2 `
mnemonic="S"
S6 s6 }3 I3 q id="com.plmhome.createFolder.menus.sampleCommand">
7 ]# _7 _& f j- w* P+ v </command>
5 U/ R1 O! m z* C( o) K. y </menu>( P& X/ u8 b, p G. z* J1 E5 Q; u
</menuContribution>
v' K7 ^+ e# G* Q" g( q E) G2 P$ M$ B3 c
<menuContribution
) q0 Q' b j9 J9 w& L+ T% ~" ? locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">
: }& y5 @- Z" X4 D* ~5 e <command7 X+ {' [4 V# Q7 |
commandId="com.plmhome.createFolder.commands.sampleCommand"* k( q4 _1 @7 O7 S+ X$ A
icon="icons/sample.gif"
7 U' Q8 v/ L( v( t5 Y5 r tooltip="Say hello world"( W$ \% {# H3 ]+ T/ L# R8 h6 y
id="com.plmhome.createFolder.menus.sampleCommand">
0 {6 |& Z2 Z) A L5 B+ T# G </command>! Z( \# R- x7 C( g) v: Z2 U# a
</menuContribution>) Z z, Y' v. c/ ]! W% l( D! C) Z
+ h( F5 k+ d, |' E; ~) L4 i
: U! c& y6 q m <menuContribution
/ y; A/ ~# S z! Q; w locationURI="toolbar:navigator_Toolbar?after=additions">, U, a m" W# |3 A R
<toolbar
4 z- s9 z9 u9 ?$ A: H1 q id="com.plmhome.createFolder.toolbars.sampleToolbar">+ e5 J( E2 G* Y, X
<command
v8 z8 Q% D. I& | commandId="com.plmhome.createFolder.commands.sampleCommand"0 Y6 q* [5 L2 m) U* e: b
icon="icons/sample.gif"
4 D' F: n9 u8 f- E5 Q4 \, R7 N# D: E9 N tooltip="Say hello world"
+ N: N( F z4 E. A; t id="com.plmhome.createFolder.toolbars.sampleCommand">$ T" g0 c( H" V, Z1 o
</command>
/ F4 R. ~3 Q0 g# f </toolbar>/ b- n3 s0 K5 ]' B4 C+ `
</menuContribution>+ o: ?! Z I1 G
( e# _9 ^3 Y3 s* i/ R% z7 l, P
0 k& l5 ]0 j8 h; s6 ~* |% a
</extension>
/ ^9 e9 p2 f0 ~' `' w) b# Z2 j6 T: L0 p3 H! k5 {
</plugin>5 H, J& r& a( k# i! N
8 r1 R2 A) V3 y" {, |- J6 p/ U# X
/ A% v/ h% x3 K6 H+ v' Q7 V( Q1 O |
|