ZCS 6.0:Zimlet Developers Guide:Examples:Menu Items JS: Difference between revisions
(7 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
{| cellspacing="0" cellpadding="5" style="border: 1px solid rgb(153, 153, 170); margin: 0pt 0.5em 0.5em 0pt; float: none; background-color: rgb(249, 249, 255);" | {{BC|Community Sandbox}} | ||
__FORCETOC__ | |||
<div class="col-md-12 ibox-content"> | |||
=ZCS 6.0: Zimlet Developer Guide:Examples:Menu Items JS= | |||
{{KB|{{Unsupported}}|{{ZCS 7.0}}|{{ZCS 6.0}}|}} | |||
{{WIP}}{| cellspacing="0" cellpadding="5" style="border: 1px solid rgb(153, 153, 170); margin: 0pt 0.5em 0.5em 0pt; float: none; background-color: rgb(249, 249, 255);" | |||
|[[Image:zdg-6-menu-icon-zimbra.jpg|20px]] | |[[Image:zdg-6-menu-icon-zimbra.jpg|20px]] | ||
|[[ZCS 6.0:Zimlet Developers Guide:Introduction|Introduction]] | |[[ZCS 6.0:Zimlet Developers Guide:Introduction|Introduction]] | ||
Line 15: | Line 20: | ||
|[[ZCS 6.0:Zimlet Developers Guide:Example Zimlets|Example Zimlets]] | |[[ZCS 6.0:Zimlet Developers Guide:Example Zimlets|Example Zimlets]] | ||
|} | |} | ||
== Description == | == Description == | ||
Line 32: | Line 36: | ||
<pre> | <pre> | ||
<zimlet name=" | <zimlet name="com_zimbra_example_menuitemsjs" version="1.0" description="Demos menu item with actions in JS"> | ||
<include> | <include>com_zimbra_example_menuitemsjs.js</include> | ||
<handlerObject> | <handlerObject>com_zimbra_example_menuitemsjs_HandlerObject</handlerObject> | ||
<contentObject> | <contentObject> | ||
<matchOn> | |||
<regex attrs="ig">lab|user|remodel</regex> <!-- matches lab or user or remodel --> | |||
</matchOn> | |||
<toolTip>Menu Items Example</toolTip> <!-- the tool tip to display when content matches --> | |||
<contextMenu> | |||
<menuItem label="First Context Menu Item - Go to Yahoo!" icon="Search" id="SOME_MENU_ITEM_ID1" /> | |||
<menuItem label="Second Context Menu Item - Go to Yahoo! Sports" icon="NewContact" id="SOME_MENU_ITEM_ID2" /> | |||
</contextMenu> | |||
</contentObject> | </contentObject> | ||
</zimlet> | </zimlet> | ||
Line 56: | Line 60: | ||
* @param itemId the Id of selected menu item | * @param itemId the Id of selected menu item | ||
*/ | */ | ||
com_zimbra_example_menuitemsjs_HandlerObject.prototype.menuItemSelected = | |||
function(itemId) { | function(itemId) { | ||
switch (itemId) { | |||
case "SOME_MENU_ITEM_ID1": | |||
window.open ("http://www.yahoo.com", | |||
"mywindow","menubar=1,resizable=1,width=800,height=600"); | |||
break; | |||
case "SOME_MENU_ITEM_ID2": | |||
window.open ("http://sports.yahoo.com", | |||
"mywindow","menubar=1,resizable=1,width=800,height=600"); | |||
break; | |||
default: | |||
// do nothing | |||
break; | |||
} | |||
}; | }; | ||
</pre> | </pre> | ||
Line 76: | Line 83: | ||
{| cellspacing="0" cellpadding="5" border="1" | {| cellspacing="0" cellpadding="5" border="1" | ||
|Zimlet Package | |Zimlet Package | ||
|[ | |[https://github.com/Zimbra-Community/zimlets-foss/raw/master/Zimlet/src/zimlet/com_zimbra_example_menuitemsjs.zip com_zimbra_example_menuitemsjs.zip] | ||
|} | |} | ||
{{Article Footer|Zimbra Collaboration | {{Article Footer|Zimbra Collaboration Server 7.0|12/22/2009}} | ||
[[Category:Developers]] | [[Category:Developers]] | ||
[[Category:Zimlets]] | [[Category:Zimlets]] | ||
[[Category:ZCS 7.0]] | |||
[[Category:ZCS 6.0]] | [[Category:ZCS 6.0]] |
Latest revision as of 11:53, 3 November 2020
ZCS 6.0: Zimlet Developer Guide:Examples:Menu Items JS
Introduction | Getting Started | Dev Environment Setup | Developing Zimlets | Advanced Concepts | API Specifications | Example Zimlets |
Description
This zimlet will match the words lab, user or remodel and display a tool tip. On mouse right-click, a menu is presented. Each menu item will launch a website.
The Zimlet ZIP Package contains the Zimlet Definition File and a JavaScript file. The two menu items are defined using <menuItem>
. The a zimlet menuitems.js
JavaScript file is included with <include>menuitems.js</include>
. The zimlet Handler Object is defined with <handlerObject>com_zimbra_menuitemsjsHandlerObject</handlerObject>
.
When a menu item is selected, the zimlet Handler Object menuItemSelected(itemId)
method is called and passes the menu item id, as specified in the definition file (either "SOME_MENU_ITEM_ID1" or "SOME_MENU_ITEM_ID2").
Screen Shot
Definition File
<zimlet name="com_zimbra_example_menuitemsjs" version="1.0" description="Demos menu item with actions in JS"> <include>com_zimbra_example_menuitemsjs.js</include> <handlerObject>com_zimbra_example_menuitemsjs_HandlerObject</handlerObject> <contentObject> <matchOn> <regex attrs="ig">lab|user|remodel</regex> <!-- matches lab or user or remodel --> </matchOn> <toolTip>Menu Items Example</toolTip> <!-- the tool tip to display when content matches --> <contextMenu> <menuItem label="First Context Menu Item - Go to Yahoo!" icon="Search" id="SOME_MENU_ITEM_ID1" /> <menuItem label="Second Context Menu Item - Go to Yahoo! Sports" icon="NewContact" id="SOME_MENU_ITEM_ID2" /> </contextMenu> </contentObject> </zimlet>
JS File
/** * This method gets called by the Zimlet framework when a context menu item is selected. * * @param itemId the Id of selected menu item */ com_zimbra_example_menuitemsjs_HandlerObject.prototype.menuItemSelected = function(itemId) { switch (itemId) { case "SOME_MENU_ITEM_ID1": window.open ("http://www.yahoo.com", "mywindow","menubar=1,resizable=1,width=800,height=600"); break; case "SOME_MENU_ITEM_ID2": window.open ("http://sports.yahoo.com", "mywindow","menubar=1,resizable=1,width=800,height=600"); break; default: // do nothing break; } };
Download
Zimlet Package | com_zimbra_example_menuitemsjs.zip |