ZCS 6.0:Zimlet Developers Guide:Examples:Simple Dialog with Template: Difference between revisions
No edit summary |
No edit summary |
||
(21 intermediate revisions by 6 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:Siample Dialog with Template= | |||
{{KB|{{Unsupported}}|{{ZCS 7.0}}|{{ZCS 6.0}}|}} | |||
{{Archive}} | |||
{{warning|1=You are looking at legacy Zimlet documentation. For Zimbra Modern UI Zimlet development go to: https://wiki.zimbra.com/wiki/DevelopersGuide#Zimlet_Development_Guide.}} | |||
{{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 8: | Line 15: | ||
|style="border-left: 1px solid rgb(153, 153, 170);"|[[Image:zdg-6-menu-icon-gear.png|20px]] | |style="border-left: 1px solid rgb(153, 153, 170);"|[[Image:zdg-6-menu-icon-gear.png|20px]] | ||
|[[ZCS 6.0:Zimlet Developers Guide:Developing Zimlets|Developing Zimlets]] | |[[ZCS 6.0:Zimlet Developers Guide:Developing Zimlets|Developing Zimlets]] | ||
|style="border-left: 1px solid rgb(153, 153, 170);"|[[Image:zdg-6-menu-icon-advanced.jpg|20px]] | |||
|[[ZCS 6.0:Zimlet Developers Guide:Advanced Concepts|Advanced Concepts]] | |||
|style="border-left: 1px solid rgb(153, 153, 170);"|[[Image:zdg-6-menu-icon-library.jpg|20px]] | |style="border-left: 1px solid rgb(153, 153, 170);"|[[Image:zdg-6-menu-icon-library.jpg|20px]] | ||
|[[ZCS 6.0:Zimlet Developers Guide:Zimlet API Specifications|API Specifications]] | |[[ZCS 6.0:Zimlet Developers Guide:Zimlet API Specifications|API Specifications]] | ||
Line 13: | Line 22: | ||
|[[ZCS 6.0:Zimlet Developers Guide:Example Zimlets|Example Zimlets]] | |[[ZCS 6.0:Zimlet Developers Guide:Example Zimlets|Example Zimlets]] | ||
|} | |} | ||
== Description == | == Description == | ||
Line 25: | Line 33: | ||
<pre> | <pre> | ||
<zimlet name=" | <zimlet name="com_zimbra_example_simpledialogtemplate" version="1.0" description="Create a custom dialog using a template."> | ||
<include> | <include>com_zimbra_example_simpledialogtemplate.js</include> | ||
<include>templates/Simple.template.js</include> | |||
<handlerObject> | <handlerObject>com_zimbra_example_simpledialogtemplate_HandlerObject</handlerObject> | ||
<zimletPanelItem label="Simple Dialog Template Example" icon="zimbraIcon"> | <zimletPanelItem label="Simple Dialog Template Example" icon="zimbraIcon"> | ||
<toolTipText>${msg.simpledialog_tooltip}</toolTipText> | <toolTipText>${msg.simpledialog_tooltip}</toolTipText> | ||
</zimletPanelItem> | |||
</zimlet> | </zimlet> | ||
</pre> | </pre> | ||
Line 63: | Line 71: | ||
* | * | ||
*/ | */ | ||
com_zimbra_example_simpledialogtemplate_HandlerObject.prototype._createDialogView = | |||
function() { | function() { | ||
var html = AjxTemplate.expand(" | var html = AjxTemplate.expand("com_zimbra_example_simpledialogtemplate.templates.Simple#Main"); | ||
return html; | return html; | ||
}; | }; | ||
</pre> | </pre> | ||
== Template == | |||
The following is the <code>Simple.template</code> file (before compilation). The HTML code is wrapped in the <code><template></code> tag (with the template id "Main"). | |||
<pre> | |||
<template id="Main"> | |||
<table cellpadding="2" cellspacing="0" border="0" width="100%"> | |||
<tr> | |||
<td colspan="2"> | |||
This is a sample dialog with HTML code... | |||
</td> | |||
</tr> | |||
<tr> | |||
<td colspan="2"> </td> | |||
</tr> | |||
<tr> | |||
<td> | |||
<b>Text Property:</b> | |||
</td> | |||
<td> | |||
<input type="text" name="simpledialog_text_prop" /> | |||
</td> | |||
</tr> | |||
<tr> | |||
<td> | |||
<b>Password Property:</b> | |||
</td> | |||
<td> | |||
<input type="password" name="simpledialog_password_prop" /> | |||
</td> | |||
</tr> | |||
</table> | |||
</template> | |||
</pre> | |||
== Download == | == Download == | ||
{| 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_simpledialogtemplate.zip com_zimbra_example_simpledialogtemplate.zip] | ||
|} | |} | ||
Line 81: | Line 123: | ||
<ul> | <ul> | ||
<li>[[ZCS_6.0:Zimlet_Developers_Guide:Examples:Simple_Dialog|Simple Dialog]]</li> | <li>[[ZCS_6.0:Zimlet_Developers_Guide:Examples:Simple_Dialog|Simple Dialog]]</li> | ||
<li>[[ZCS_6.0:Zimlet_Developers_Guide:Templates|Templates]]</li> | |||
<li>[[ZCS_6.0:Zimlet_Developers_Guide:Templates#Compiling_the_Template|Templates > Compiling the Template]]</li> | |||
</ul> | </ul> | ||
Line 86: | Line 130: | ||
{{Article Footer|Zimbra Collaboration Suite 6.0|12/22/2009}} | {{Article Footer|Zimbra Collaboration Suite 6.0|12/22/2009}} | ||
[[Category:Developers]] | |||
[[Category:Zimlets]] | |||
[[Category:ZCS 6.0]] |
Latest revision as of 06:04, 17 July 2021
ZCS 6.0: Zimlet Developer Guide:Examples:Siample Dialog with Template
You are looking at legacy Zimlet documentation. For Zimbra Modern UI Zimlet development go to: https://wiki.zimbra.com/wiki/DevelopersGuide#Zimlet_Development_Guide. |
Introduction | Getting Started | Dev Environment Setup | Developing Zimlets | Advanced Concepts | API Specifications | Example Zimlets |
Description
This zimlet shows-up as a panel item and will display a simple custom dialog on a single or double-click. This example uses a template to create the HTML mark-up for the dialog. The Zimlet Definition File includes the compiled template file Simple.template.js
using the <include>
element.
Screenshot
Definition File
<zimlet name="com_zimbra_example_simpledialogtemplate" version="1.0" description="Create a custom dialog using a template."> <include>com_zimbra_example_simpledialogtemplate.js</include> <include>templates/Simple.template.js</include> <handlerObject>com_zimbra_example_simpledialogtemplate_HandlerObject</handlerObject> <zimletPanelItem label="Simple Dialog Template Example" icon="zimbraIcon"> <toolTipText>${msg.simpledialog_tooltip}</toolTipText> </zimletPanelItem> </zimlet>
Creating the Dialog
Here is snippet from the Zimlet Handler Object (_displayDialog()
method) where we create and show the dialog:
var sDialogTitle = this.getMessage("simpledialog_dialog_title"); // get i18n resource string var sStatusMsg = this.getMessage("simpledialog_status_launch"); // get i18n resource string this.pView = new DwtComposite(this.getShell()); //creates an empty div as a child of main shell div this.pView.setSize("250", "150"); // set width and height this.pView.getHtmlElement().style.overflow = "auto"; // adds scrollbar this.pView.getHtmlElement().innerHTML = this._createDialogView(); // insert html to the dialogbox // pass the title, view & buttons information to create dialog box this.pbDialog = new ZmDialog({title:sDialogTitle, view:this.pView, parent:this.getShell(), standardButtons:[DwtDialog.DISMISS_BUTTON]}); this.pbDialog.setButtonListener(DwtDialog.DISMISS_BUTTON, new AjxListener(this, this._okBtnListener)); this.pbDialog.popup(); //show the dialog
The _createDialogView()
method creates the HTML mark-up by getting the template:
/** * Creates the dialog view. * */ com_zimbra_example_simpledialogtemplate_HandlerObject.prototype._createDialogView = function() { var html = AjxTemplate.expand("com_zimbra_example_simpledialogtemplate.templates.Simple#Main"); return html; };
Template
The following is the Simple.template
file (before compilation). The HTML code is wrapped in the <template>
tag (with the template id "Main").
<template id="Main"> <table cellpadding="2" cellspacing="0" border="0" width="100%"> <tr> <td colspan="2"> This is a sample dialog with HTML code... </td> </tr> <tr> <td colspan="2"> </td> </tr> <tr> <td> <b>Text Property:</b> </td> <td> <input type="text" name="simpledialog_text_prop" /> </td> </tr> <tr> <td> <b>Password Property:</b> </td> <td> <input type="password" name="simpledialog_password_prop" /> </td> </tr> </table> </template>
Download
Zimlet Package | com_zimbra_example_simpledialogtemplate.zip |
Useful Links