ZCS 6.0:Zimlet Developers Guide:Examples:Adding Toolbar Buttons
ZCS 6.0: Zimlet Developer Guide:Examples:Adding Toolbar
- This article is a Work in Progress, and may be unfinished or missing sections.
Introduction | Getting Started | Dev Environment Setup | Developing Zimlets | Advanced Concepts | API Specifications | Example Zimlets |
Description
This zimlet will add a "Toolbar Button" to the mail application conversation list and message view toolbars. The new button is added at the end of the existing toolbars.
Screen Shot
Definition File
<zimlet name="com_zimbra_example_toolbarhook" version="1.0" description="An example zimlet that adds a button to the Mail toolbar."> <include>com_zimbra_example_toolbarhook.js</include> <handlerObject>com_zimbra_example_toolbarhook_HandlerObject</handlerObject> </zimlet>
Handler Object
Below is a snippet from the Handler Object from the zimlet JavaScript file. ZmId
is used to identify the view and ZmOperation
is used to identify the "View" menu button (in order to determine the index for where to insert the new button).
/** * This method gets called by the Zimlet framework when a toolbar is created. * * @param {ZmApp} app * @param {ZmButtonToolBar} toolbar * @param {ZmController} controller * @param {String} viewId * */ com_zimbra_example_toolbarhook_HandlerObject.prototype.initializeToolbar = function(app, toolbar, controller, viewId) { if (viewId == ZmId.VIEW_CONVLIST || viewId == ZmId.VIEW_TRAD) { // get the index of "View" menu so we can display the button after that var buttonIndex = 0; for (var i = 0; i < toolbar.opList.length; i++) { if (toolbar.opList[i] == ZmOperation.VIEW_MENU) { buttonIndex = i + 1; break; } } var buttonParams = { text: "Toolbar Button", tooltip: "This button shows up in Conversation List and Traditional views", index: buttonIndex, image: "zimbraicon" }; // creates the button with an id and params containing the button details var button = toolbar.createOp("HELLOTEST_ZIMLET_TOOLBAR_BUTTON", buttonParams); button.addSelectionListener(new AjxListener(this, this._showSelectedMail, controller)); } };
Download
Zimlet Package | com_zimbra_example_toolbarhook.zip |
Useful Links