{hidden}
DO NOT EDIT THE CONTENT OF THIS PAGE DIRECTLY, UNLESS YOU KNOW WHAT YOU'RE DOING.
		THE STRUCTURE OF THE CONTENT IS VITAL IN BEING ABLE TO EXTRACT CHANGES FROM THE PAGE AND MERGE THEM BACK INTO SERVOY SOURCE{hidden}
{sub-section:description|text=}{sub-section}\\ 

{table:id=|class=servoy sReturnTypes}{tr:style=height: 30px;}{th}Return Types{th}{tr}{tr}{td}{span:class=sWordList}[CheckBox]{span}{span:class=sWordList}[Menu]{span}{span:class=sWordList}[MenuBar]{span}{span:class=sWordList}[MenuItem]{span}{span:class=sWordList}[Popup]{span}{span:class=sWordList}[RadioButton]{span}{span:class=sWordList}[ToolBar]{span}{td}{tr}{table}\\ 

{table:id=|class=servoy sSummary}{colgroup}{column:width=80px|padding=0px}{column}{column}{column}{colgroup}{tr:style=height: 30px;}{th:colspan=2}Method Summary{th}{tr}{tbody}{tr}{td}[ToolBar]{td}{td}[#addToolBar]\(window, name)
Creates and returns a toolbar for a specific window.{td}{tr}{tbody}{tbody}{tr}{td}[ToolBar]{td}{td}[#addToolBar]\(window, name, row)
Creates and returns a toolbar for a specific window.{td}{tr}{tbody}{tbody}{tr}{td}[ToolBar]{td}{td}[#addToolBar]\(window, name, displayname)
Creates and returns a toolbar for a specific window.{td}{tr}{tbody}{tbody}{tr}{td}[ToolBar]{td}{td}[#addToolBar]\(window, name, displayname, row)
Creates and returns a toolbar for a specific window.{td}{tr}{tbody}{tbody}{tr}{td}[ToolBar]{td}{td}[#addToolBar]\(name)
Add a toolbar.{td}{tr}{tbody}{tbody}{tr}{td}[ToolBar]{td}{td}[#addToolBar]\(name, row)
Add a toolbar.{td}{tr}{tbody}{tbody}{tr}{td}[ToolBar]{td}{td}[#addToolBar]\(name, displayname)
Add a toolbar.{td}{tr}{tbody}{tbody}{tr}{td}[ToolBar]{td}{td}[#addToolBar]\(name, displayname, row)
Add a toolbar.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#cancelFormPopup]\()
Close the current form popup panel without assigning a value to the configured data provider.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#closeFormPopup]\(retval)
Close the current form popup panel and assign the value to the configured data provider.{td}{tr}{tbody}{tbody}{tr}{td}[Popup]{td}{td}[#createPopupMenu]\()
Creates a new popup menu that can be populated with items and displayed.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#createShortcut]\(shortcut, methodName)
Create a shortcut.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#createShortcut]\(shortcut, methodName, arguments)
Create a shortcut.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#createShortcut]\(shortcut, methodName, contextFilter)
Create a shortcut.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#createShortcut]\(shortcut, methodName, contextFilter, arguments)
Create a shortcut.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#createShortcut]\(shortcut, method)
Create a shortcut.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#createShortcut]\(shortcut, method, arguments)
Create a shortcut.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#createShortcut]\(shortcut, method, contextFilter)
Create a shortcut.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#createShortcut]\(shortcut, method, contextFilter, arguments)
Create a shortcut.{td}{tr}{tbody}{tbody}{tr}{td}[MenuBar]{td}{td}[#getMenuBar]\()
Get the menubar of the main window, or of a named window.{td}{tr}{tbody}{tbody}{tr}{td}[MenuBar]{td}{td}[#getMenuBar]\(windowName)
Get the menubar of the main window, or of a named window.{td}{tr}{tbody}{tbody}{tr}{td}[ToolBar]{td}{td}[#getToolBar]\(window, name)
Get the toolbar of a specific window from the toolbar panel by name.{td}{tr}{tbody}{tbody}{tr}{td}[ToolBar]{td}{td}[#getToolBar]\(name)
Get the toolbar from the toolbar panel by name.{td}{tr}{tbody}{tbody}{tr}{td}[String]\[]{td}{td}[#getToolbarNames]\()
Get all toolbar names from the toolbar panel.{td}{tr}{tbody}{tbody}{tr}{td}[String]\[]{td}{td}[#getToolbarNames]\(window)
Get all toolbar names from the toolbar panel of a specific window.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#maximize]\()
Maximize the current window or the window with the specified name (Smart client only).{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#maximize]\(windowName)
Maximize the current window or the window with the specified name (Smart client only).{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#removeShortcut]\(shortcut)
Remove a shortcut.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#removeShortcut]\(shortcut, contextFilter)
Remove a shortcut.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#removeToolBar]\(window, name)
Remove the toolbar from the toolbar panel of a specific window.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#removeToolBar]\(name)
Remove the toolbar from the toolbar panel.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#setFullScreen]\(full)
Bring the window into/out of fullsceen mode.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#setStatusBarVisible]\(visible)
Show or hide the statusbar.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#setToolBarAreaVisible]\(visible)
Show or hide the toolbar area.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#showFormPopup]\(elementToShowRelatedTo, form, scope, dataproviderID)
Show a form as popup panel, where the closeFormPopup can pass return a value to a dataprovider in the specified scope.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#showFormPopup]\(elementToShowRelatedTo, form, scope, dataproviderID, width, height)
Show a form as popup panel, where the closeFormPopup can pass return a value to a dataprovider in the specified scope.{td}{tr}{tbody}{table}\\ 

{table:id=function|class=servoy sDetail}{colgroup}{column:width=100%|padding=0px}{column}{colgroup}{tr:style=height: 30px;}{th:colspan=1}Method Details{th}{tr}{tbody:id=addToolBar-JSWindow_String|class=node}{tr:id=name}{td}h6.addToolBar{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[ToolBar]{span}{span:id=iets|style=float: left; font-weight: bold;}addToolBar{span}{span:id=iets|style=float: left;}\(window, name){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:addToolBar-JSWindow_String_des|trigger=button|text=}{sub-section}{sub-section:addToolBar-JSWindow_String_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:addToolBar-JSWindow_String_snc|trigger=button|text=}{sub-section}{sub-section:addToolBar-JSWindow_String_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:addToolBar-JSWindow_String_prs|trigger=button|text=}{sub-section}{sub-section:addToolBar-JSWindow_String_prs|trigger=none|class=sIndent}\{[JSWindow]} window
\{[String]} name -- the name by which this toolbar is identified in code. If display name is missing, name will be used as displayName as well.
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:addToolBar-JSWindow_String_ret|trigger=button|text=}{sub-section}{sub-section:addToolBar-JSWindow_String_ret|trigger=none|class=sIndent}[ToolBar]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:addToolBar-JSWindow_String_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-JSWindow_String_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:addToolBar-JSWindow_String_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-JSWindow_String_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:addToolBar-JSWindow_String_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-JSWindow_String_sam|trigger=none}{code:language=javascript}
// Note: method addToolBar only works in the smart client.

// create a window
var win = application.createWindow("myWindow", JSWindow.WINDOW);

// add a toolbar with only a name
var toolbar0 = plugins.window.addToolBar(win,"toolbar_0");
toolbar0.addButton("click me 0", callback_function);

// add a toolbar with a name and the row you want it to show at
// row number starts at 0
var toolbar1 = plugins.window.addToolBar(win,"toolbar_1", 2);
toolbar1.addButton("click me 1", callback_function);

// add a toolbar with a name and display name
var toolbar2 = plugins.window.addToolBar(win,"toolbar_2", "toolbar_2_internal_name");
toolbar2.addButton("click me 2", callback_function);

// add a toolbar with a name, display name and the row you want the
// toolbar to show at. row number starts at 0 
var toolbar3 = plugins.window.addToolBar(win,"toolbar_3", "toolbar_3_internal_name", 3);
toolbar3.addButton("click me 3", callback_function);

win.show(forms.Myform)
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=addToolBar-JSWindow_String_Number|class=node}{tr:id=name}{td}h6.addToolBar{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[ToolBar]{span}{span:id=iets|style=float: left; font-weight: bold;}addToolBar{span}{span:id=iets|style=float: left;}\(window, name, row){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:addToolBar-JSWindow_String_Number_des|trigger=button|text=}{sub-section}{sub-section:addToolBar-JSWindow_String_Number_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:addToolBar-JSWindow_String_Number_snc|trigger=button|text=}{sub-section}{sub-section:addToolBar-JSWindow_String_Number_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:addToolBar-JSWindow_String_Number_prs|trigger=button|text=}{sub-section}{sub-section:addToolBar-JSWindow_String_Number_prs|trigger=none|class=sIndent}\{[JSWindow]} window
\{[String]} name -- the name by which this toolbar is identified in code. If display name is missing, name will be used as displayName as well.
\{[Number]} row -- the row inside the toolbar panel where this toolbar is to be added.
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:addToolBar-JSWindow_String_Number_ret|trigger=button|text=}{sub-section}{sub-section:addToolBar-JSWindow_String_Number_ret|trigger=none|class=sIndent}[ToolBar]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:addToolBar-JSWindow_String_Number_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-JSWindow_String_Number_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:addToolBar-JSWindow_String_Number_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-JSWindow_String_Number_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:addToolBar-JSWindow_String_Number_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-JSWindow_String_Number_sam|trigger=none}{code:language=javascript}
// Note: method addToolBar only works in the smart client.

// create a window
var win = application.createWindow("myWindow", JSWindow.WINDOW);

// add a toolbar with only a name
var toolbar0 = plugins.window.addToolBar(win,"toolbar_0");
toolbar0.addButton("click me 0", callback_function);

// add a toolbar with a name and the row you want it to show at
// row number starts at 0
var toolbar1 = plugins.window.addToolBar(win,"toolbar_1", 2);
toolbar1.addButton("click me 1", callback_function);

// add a toolbar with a name and display name
var toolbar2 = plugins.window.addToolBar(win,"toolbar_2", "toolbar_2_internal_name");
toolbar2.addButton("click me 2", callback_function);

// add a toolbar with a name, display name and the row you want the
// toolbar to show at. row number starts at 0 
var toolbar3 = plugins.window.addToolBar(win,"toolbar_3", "toolbar_3_internal_name", 3);
toolbar3.addButton("click me 3", callback_function);

win.show(forms.Myform)
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=addToolBar-JSWindow_String_String|class=node}{tr:id=name}{td}h6.addToolBar{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[ToolBar]{span}{span:id=iets|style=float: left; font-weight: bold;}addToolBar{span}{span:id=iets|style=float: left;}\(window, name, displayname){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:addToolBar-JSWindow_String_String_des|trigger=button|text=}{sub-section}{sub-section:addToolBar-JSWindow_String_String_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:addToolBar-JSWindow_String_String_snc|trigger=button|text=}{sub-section}{sub-section:addToolBar-JSWindow_String_String_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:addToolBar-JSWindow_String_String_prs|trigger=button|text=}{sub-section}{sub-section:addToolBar-JSWindow_String_String_prs|trigger=none|class=sIndent}\{[JSWindow]} window
\{[String]} name -- the name by which this toolbar is identified in code
\{[String]} displayname -- the name by which this toolbar will be identified in the UI. (for example in the toolbar panel's context menu)
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:addToolBar-JSWindow_String_String_ret|trigger=button|text=}{sub-section}{sub-section:addToolBar-JSWindow_String_String_ret|trigger=none|class=sIndent}[ToolBar]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:addToolBar-JSWindow_String_String_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-JSWindow_String_String_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:addToolBar-JSWindow_String_String_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-JSWindow_String_String_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:addToolBar-JSWindow_String_String_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-JSWindow_String_String_sam|trigger=none}{code:language=javascript}
// Note: method addToolBar only works in the smart client.

// create a window
var win = application.createWindow("myWindow", JSWindow.WINDOW);

// add a toolbar with only a name
var toolbar0 = plugins.window.addToolBar(win,"toolbar_0");
toolbar0.addButton("click me 0", callback_function);

// add a toolbar with a name and the row you want it to show at
// row number starts at 0
var toolbar1 = plugins.window.addToolBar(win,"toolbar_1", 2);
toolbar1.addButton("click me 1", callback_function);

// add a toolbar with a name and display name
var toolbar2 = plugins.window.addToolBar(win,"toolbar_2", "toolbar_2_internal_name");
toolbar2.addButton("click me 2", callback_function);

// add a toolbar with a name, display name and the row you want the
// toolbar to show at. row number starts at 0 
var toolbar3 = plugins.window.addToolBar(win,"toolbar_3", "toolbar_3_internal_name", 3);
toolbar3.addButton("click me 3", callback_function);

win.show(forms.Myform)
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=addToolBar-JSWindow_String_String_Number|class=node}{tr:id=name}{td}h6.addToolBar{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[ToolBar]{span}{span:id=iets|style=float: left; font-weight: bold;}addToolBar{span}{span:id=iets|style=float: left;}\(window, name, displayname, row){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:addToolBar-JSWindow_String_String_Number_des|trigger=button|text=}{sub-section}{sub-section:addToolBar-JSWindow_String_String_Number_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:addToolBar-JSWindow_String_String_Number_snc|trigger=button|text=}{sub-section}{sub-section:addToolBar-JSWindow_String_String_Number_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:addToolBar-JSWindow_String_String_Number_prs|trigger=button|text=}{sub-section}{sub-section:addToolBar-JSWindow_String_String_Number_prs|trigger=none|class=sIndent}\{[JSWindow]} window
\{[String]} name -- the name by which this toolbar is identified in code.
\{[String]} displayname -- the name by which this toolbar will be identified in the UI. (for example in the toolbar panel's context menu)
\{[Number]} row -- the row inside the toolbar panel where this toolbar is to be added.
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:addToolBar-JSWindow_String_String_Number_ret|trigger=button|text=}{sub-section}{sub-section:addToolBar-JSWindow_String_String_Number_ret|trigger=none|class=sIndent}[ToolBar]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:addToolBar-JSWindow_String_String_Number_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-JSWindow_String_String_Number_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:addToolBar-JSWindow_String_String_Number_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-JSWindow_String_String_Number_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:addToolBar-JSWindow_String_String_Number_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-JSWindow_String_String_Number_sam|trigger=none}{code:language=javascript}
// Note: method addToolBar only works in the smart client.

// create a window
var win = application.createWindow("myWindow", JSWindow.WINDOW);

// add a toolbar with only a name
var toolbar0 = plugins.window.addToolBar(win,"toolbar_0");
toolbar0.addButton("click me 0", callback_function);

// add a toolbar with a name and the row you want it to show at
// row number starts at 0
var toolbar1 = plugins.window.addToolBar(win,"toolbar_1", 2);
toolbar1.addButton("click me 1", callback_function);

// add a toolbar with a name and display name
var toolbar2 = plugins.window.addToolBar(win,"toolbar_2", "toolbar_2_internal_name");
toolbar2.addButton("click me 2", callback_function);

// add a toolbar with a name, display name and the row you want the
// toolbar to show at. row number starts at 0 
var toolbar3 = plugins.window.addToolBar(win,"toolbar_3", "toolbar_3_internal_name", 3);
toolbar3.addButton("click me 3", callback_function);

win.show(forms.Myform)
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=addToolBar-String|class=node}{tr:id=name}{td}h6.addToolBar{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[ToolBar]{span}{span:id=iets|style=float: left; font-weight: bold;}addToolBar{span}{span:id=iets|style=float: left;}\(name){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:addToolBar-String_des|trigger=button|text=}{sub-section}{sub-section:addToolBar-String_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:addToolBar-String_snc|trigger=button|text=}{sub-section}{sub-section:addToolBar-String_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:addToolBar-String_prs|trigger=button|text=}{sub-section}{sub-section:addToolBar-String_prs|trigger=none|class=sIndent}\{[String]} name -- the name by which this toolbar is identified in code. If display name is missing, name will be used as displayName as well.
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:addToolBar-String_ret|trigger=button|text=}{sub-section}{sub-section:addToolBar-String_ret|trigger=none|class=sIndent}[ToolBar]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:addToolBar-String_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-String_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:addToolBar-String_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-String_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:addToolBar-String_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-String_sam|trigger=none}{code:language=javascript}
// Note: method addToolBar only works in the smart client.

// add a toolbar with only a name
var toolbar0 = plugins.window.addToolBar("toolbar_0");
toolbar0.addButton("click me 0", feedback_button);

// add a toolbar with a name and the row you want it to show at
// row number starts at 0
var toolbar1 = plugins.window.addToolBar("toolbar_1", 2);
toolbar1.addButton("click me 1", feedback_button);

// add a toolbar with a name and display name
var toolbar2 = plugins.window.addToolBar("toolbar_2", "toolbar_2_internal_name");
toolbar2.addButton("click me 2", feedback_button);

// add a toolbar with a name, display name and the row you want the
// toolbar to show at. row number starts at 0 
var toolbar3 = plugins.window.addToolBar("toolbar_3", "toolbar_3_internal_name", 3);
toolbar3.addButton("click me 3", feedback_button);
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=addToolBar-String_Number|class=node}{tr:id=name}{td}h6.addToolBar{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[ToolBar]{span}{span:id=iets|style=float: left; font-weight: bold;}addToolBar{span}{span:id=iets|style=float: left;}\(name, row){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:addToolBar-String_Number_des|trigger=button|text=}{sub-section}{sub-section:addToolBar-String_Number_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:addToolBar-String_Number_snc|trigger=button|text=}{sub-section}{sub-section:addToolBar-String_Number_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:addToolBar-String_Number_prs|trigger=button|text=}{sub-section}{sub-section:addToolBar-String_Number_prs|trigger=none|class=sIndent}\{[String]} name -- the name by which this toolbar is identified in code. If display name is missing, name will be used as displayName as well.
\{[Number]} row -- the row inside the toolbar panel where this toolbar is to be added.
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:addToolBar-String_Number_ret|trigger=button|text=}{sub-section}{sub-section:addToolBar-String_Number_ret|trigger=none|class=sIndent}[ToolBar]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:addToolBar-String_Number_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-String_Number_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:addToolBar-String_Number_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-String_Number_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:addToolBar-String_Number_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-String_Number_sam|trigger=none}{code:language=javascript}
// Note: method addToolBar only works in the smart client.

// add a toolbar with only a name
var toolbar0 = plugins.window.addToolBar("toolbar_0");
toolbar0.addButton("click me 0", feedback_button);

// add a toolbar with a name and the row you want it to show at
// row number starts at 0
var toolbar1 = plugins.window.addToolBar("toolbar_1", 2);
toolbar1.addButton("click me 1", feedback_button);

// add a toolbar with a name and display name
var toolbar2 = plugins.window.addToolBar("toolbar_2", "toolbar_2_internal_name");
toolbar2.addButton("click me 2", feedback_button);

// add a toolbar with a name, display name and the row you want the
// toolbar to show at. row number starts at 0 
var toolbar3 = plugins.window.addToolBar("toolbar_3", "toolbar_3_internal_name", 3);
toolbar3.addButton("click me 3", feedback_button);
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=addToolBar-String_String|class=node}{tr:id=name}{td}h6.addToolBar{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[ToolBar]{span}{span:id=iets|style=float: left; font-weight: bold;}addToolBar{span}{span:id=iets|style=float: left;}\(name, displayname){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:addToolBar-String_String_des|trigger=button|text=}{sub-section}{sub-section:addToolBar-String_String_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:addToolBar-String_String_snc|trigger=button|text=}{sub-section}{sub-section:addToolBar-String_String_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:addToolBar-String_String_prs|trigger=button|text=}{sub-section}{sub-section:addToolBar-String_String_prs|trigger=none|class=sIndent}\{[String]} name -- the name by which this toolbar is identified in code. If display name is missing, name will be used as displayName as well.
\{[String]} displayname -- the name by which this toolbar will be identified in the UI. (for example in the toolbar panel's context menu)
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:addToolBar-String_String_ret|trigger=button|text=}{sub-section}{sub-section:addToolBar-String_String_ret|trigger=none|class=sIndent}[ToolBar]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:addToolBar-String_String_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-String_String_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:addToolBar-String_String_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-String_String_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:addToolBar-String_String_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-String_String_sam|trigger=none}{code:language=javascript}
// Note: method addToolBar only works in the smart client.

// add a toolbar with only a name
var toolbar0 = plugins.window.addToolBar("toolbar_0");
toolbar0.addButton("click me 0", feedback_button);

// add a toolbar with a name and the row you want it to show at
// row number starts at 0
var toolbar1 = plugins.window.addToolBar("toolbar_1", 2);
toolbar1.addButton("click me 1", feedback_button);

// add a toolbar with a name and display name
var toolbar2 = plugins.window.addToolBar("toolbar_2", "toolbar_2_internal_name");
toolbar2.addButton("click me 2", feedback_button);

// add a toolbar with a name, display name and the row you want the
// toolbar to show at. row number starts at 0 
var toolbar3 = plugins.window.addToolBar("toolbar_3", "toolbar_3_internal_name", 3);
toolbar3.addButton("click me 3", feedback_button);
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=addToolBar-String_String_Number|class=node}{tr:id=name}{td}h6.addToolBar{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[ToolBar]{span}{span:id=iets|style=float: left; font-weight: bold;}addToolBar{span}{span:id=iets|style=float: left;}\(name, displayname, row){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:addToolBar-String_String_Number_des|trigger=button|text=}{sub-section}{sub-section:addToolBar-String_String_Number_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:addToolBar-String_String_Number_snc|trigger=button|text=}{sub-section}{sub-section:addToolBar-String_String_Number_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:addToolBar-String_String_Number_prs|trigger=button|text=}{sub-section}{sub-section:addToolBar-String_String_Number_prs|trigger=none|class=sIndent}\{[String]} name -- the name by which this toolbar is identified in code. If display name is missing, name will be used as displayName as well.
\{[String]} displayname -- the name by which this toolbar will be identified in the UI. (for example in the toolbar panel's context menu)
\{[Number]} row -- the row inside the toolbar panel where this toolbar is to be added.
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:addToolBar-String_String_Number_ret|trigger=button|text=}{sub-section}{sub-section:addToolBar-String_String_Number_ret|trigger=none|class=sIndent}[ToolBar]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:addToolBar-String_String_Number_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-String_String_Number_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:addToolBar-String_String_Number_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-String_String_Number_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:addToolBar-String_String_Number_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:addToolBar-String_String_Number_sam|trigger=none}{code:language=javascript}
// Note: method addToolBar only works in the smart client.

// add a toolbar with only a name
var toolbar0 = plugins.window.addToolBar("toolbar_0");
toolbar0.addButton("click me 0", feedback_button);

// add a toolbar with a name and the row you want it to show at
// row number starts at 0
var toolbar1 = plugins.window.addToolBar("toolbar_1", 2);
toolbar1.addButton("click me 1", feedback_button);

// add a toolbar with a name and display name
var toolbar2 = plugins.window.addToolBar("toolbar_2", "toolbar_2_internal_name");
toolbar2.addButton("click me 2", feedback_button);

// add a toolbar with a name, display name and the row you want the
// toolbar to show at. row number starts at 0 
var toolbar3 = plugins.window.addToolBar("toolbar_3", "toolbar_3_internal_name", 3);
toolbar3.addButton("click me 3", feedback_button);
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=cancelFormPopup|class=node}{tr:id=name}{td}h6.cancelFormPopup{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}void{span}{span:id=iets|style=float: left; font-weight: bold;}cancelFormPopup{span}{span:id=iets|style=float: left;}\(){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:cancelFormPopup_des|trigger=button|text=}{sub-section}{sub-section:cancelFormPopup_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:cancelFormPopup_snc|trigger=button|text=}{sub-section}{sub-section:cancelFormPopup_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=prs}{td}*Parameters*\\{sub-section:cancelFormPopup_prs|trigger=button|text=}{sub-section}{sub-section:cancelFormPopup_prs|trigger=none|class=sIndent}{sub-section}{td}{tr}{builder-show}{tr:id=ret}{td}*Returns*\\{sub-section:cancelFormPopup_ret|trigger=button|text=}{sub-section}{sub-section:cancelFormPopup_ret|trigger=none|class=sIndent}void{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:cancelFormPopup_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:cancelFormPopup_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:cancelFormPopup_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:cancelFormPopup_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:cancelFormPopup_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:cancelFormPopup_sam|trigger=none}{code:language=javascript}
// Show a form as popup panel, where the closeFormPopup can pass return a value to a dataprovider in the specified scope.
plugins.window.showFormPopup(null,forms.orderPicker,foundset.getSelectedRecord(),"order_id");
// do call closeFormPopup(ordervalue) from the orderPicker form
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=closeFormPopup-Object|class=node}{tr:id=name}{td}h6.closeFormPopup{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}void{span}{span:id=iets|style=float: left; font-weight: bold;}closeFormPopup{span}{span:id=iets|style=float: left;}\(retval){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:closeFormPopup-Object_des|trigger=button|text=}{sub-section}{sub-section:closeFormPopup-Object_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:closeFormPopup-Object_snc|trigger=button|text=}{sub-section}{sub-section:closeFormPopup-Object_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:closeFormPopup-Object_prs|trigger=button|text=}{sub-section}{sub-section:closeFormPopup-Object_prs|trigger=none|class=sIndent}\{[Object]} retval -- return value for data provider
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:closeFormPopup-Object_ret|trigger=button|text=}{sub-section}{sub-section:closeFormPopup-Object_ret|trigger=none|class=sIndent}void{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:closeFormPopup-Object_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:closeFormPopup-Object_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:closeFormPopup-Object_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:closeFormPopup-Object_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:closeFormPopup-Object_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:closeFormPopup-Object_sam|trigger=none}{code:language=javascript}
// Show a form as popup panel, where the closeFormPopup can pass return a value to a dataprovider in the specified scope.
plugins.window.showFormPopup(null,forms.orderPicker,foundset.getSelectedRecord(),"order_id");
// do call closeFormPopup(ordervalue) from the orderPicker form
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=createPopupMenu|class=node}{tr:id=name}{td}h6.createPopupMenu{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[Popup]{span}{span:id=iets|style=float: left; font-weight: bold;}createPopupMenu{span}{span:id=iets|style=float: left;}\(){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:createPopupMenu_des|trigger=button|text=}{sub-section}{sub-section:createPopupMenu_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:createPopupMenu_snc|trigger=button|text=}{sub-section}{sub-section:createPopupMenu_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=prs}{td}*Parameters*\\{sub-section:createPopupMenu_prs|trigger=button|text=}{sub-section}{sub-section:createPopupMenu_prs|trigger=none|class=sIndent}{sub-section}{td}{tr}{builder-show}{tr:id=ret}{td}*Returns*\\{sub-section:createPopupMenu_ret|trigger=button|text=}{sub-section}{sub-section:createPopupMenu_ret|trigger=none|class=sIndent}[Popup]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:createPopupMenu_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createPopupMenu_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:createPopupMenu_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createPopupMenu_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:createPopupMenu_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createPopupMenu_sam|trigger=none}{code:language=javascript}
// create a popup menu
var menu = plugins.window.createPopupMenu();
// add a menu item
menu.addMenuItem("an entry", feedback);

if (event.getSource()) {
	// display the popup over the component which is the source of the event
	menu.show(event.getSource());
	// display the popup over the components, at specified coordinates relative to the component
	//menu.show(event.getSource(), 10, 10);
	// display the popup at specified coordinates relative to the main window
	//menu.show(100, 100);
}
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=createShortcut-String_String|class=node}{tr:id=name}{td}h6.createShortcut{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[Boolean]{span}{span:id=iets|style=float: left; font-weight: bold;}createShortcut{span}{span:id=iets|style=float: left;}\(shortcut, methodName){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:createShortcut-String_String_des|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_String_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:createShortcut-String_String_snc|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_String_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:createShortcut-String_String_prs|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_String_prs|trigger=none|class=sIndent}\{[String]} shortcut
\{[String]} methodName -- scopes.scopename.methodname or formname.methodname String to target the method to execute
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:createShortcut-String_String_ret|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_String_ret|trigger=none|class=sIndent}[Boolean]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:createShortcut-String_String_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_String_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:createShortcut-String_String_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_String_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:createShortcut-String_String_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_String_sam|trigger=none}{code:language=javascript}
// this plugin uses the java keystroke parser
// see http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/KeyStroke.html#getKeyStroke(java.lang.String)
// global handler
plugins.window.createShortcut('control shift I', scopes.globals.handleOrdersShortcut);
// global handler with a form context filter
plugins.window.createShortcut('control shift I', scopes.globals.handleOrdersShortcut, 'frm_contacts');
// form method called when shortcut is used
plugins.window.createShortcut('control RIGHT', forms.frm_contacts.handleMyShortcut);
// form method called when shortcut is used and arguments are passed to the method
plugins.window.createShortcut('control RIGHT', forms.frm_contacts.handleMyShortcut, new Array(argument1, argument2));
// Passing the method argument as a string prevents unnecessary form loading
//plugins.window.createShortcut('control RIGHT', 'frm_contacts.handleMyShortcut', new Array(argument1, argument2));
// Passing the method as a name and the contextFilter set so that this shortcut only trigger on the form 'frm_contacts'.
plugins.window.createShortcut('control RIGHT', 'frm_contacts.handleMyShortcut', 'frm_contacts', new Array(argument1, argument2));
// remove global shortcut and form-level shortcut
plugins.window.removeShortcut('menu 1');
plugins.window.removeShortcut('control RIGHT', 'frm_contacts');
// shortcut handlers are called with an JSEvent argument
///* 
// * Handle keyboard shortcut.
// * 
// * @param {JSEvent} event the event that triggered the action
// */
//function handleShortcut(event)
//{
//  application.output(event.getType()) // returns 'menu 1'
//  application.output(event.getFormName()) // returns 'frm_contacts'
//  application.output(event.getElementName()) // returns 'contact_name_field' or null when no element is selected
//}
// NOTE: shortcuts will not override existing operating system or browser shortcuts,
// choose your shortcuts careful to make sure they work in all clients.
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=createShortcut-String_String_ObjectArray|class=node}{tr:id=name}{td}h6.createShortcut{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[Boolean]{span}{span:id=iets|style=float: left; font-weight: bold;}createShortcut{span}{span:id=iets|style=float: left;}\(shortcut, methodName, arguments){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:createShortcut-String_String_ObjectArray_des|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_String_ObjectArray_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:createShortcut-String_String_ObjectArray_snc|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_String_ObjectArray_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:createShortcut-String_String_ObjectArray_prs|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_String_ObjectArray_prs|trigger=none|class=sIndent}\{[String]} shortcut
\{[String]} methodName -- scopes.scopename.methodname or formname.methodname String to target the method to execute
\{[Object]\[]} arguments
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:createShortcut-String_String_ObjectArray_ret|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_String_ObjectArray_ret|trigger=none|class=sIndent}[Boolean]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:createShortcut-String_String_ObjectArray_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_String_ObjectArray_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:createShortcut-String_String_ObjectArray_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_String_ObjectArray_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:createShortcut-String_String_ObjectArray_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_String_ObjectArray_sam|trigger=none}{code:language=javascript}
// this plugin uses the java keystroke parser
// see http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/KeyStroke.html#getKeyStroke(java.lang.String)
// global handler
plugins.window.createShortcut('control shift I', scopes.globals.handleOrdersShortcut);
// global handler with a form context filter
plugins.window.createShortcut('control shift I', scopes.globals.handleOrdersShortcut, 'frm_contacts');
// form method called when shortcut is used
plugins.window.createShortcut('control RIGHT', forms.frm_contacts.handleMyShortcut);
// form method called when shortcut is used and arguments are passed to the method
plugins.window.createShortcut('control RIGHT', forms.frm_contacts.handleMyShortcut, new Array(argument1, argument2));
// Passing the method argument as a string prevents unnecessary form loading
//plugins.window.createShortcut('control RIGHT', 'frm_contacts.handleMyShortcut', new Array(argument1, argument2));
// Passing the method as a name and the contextFilter set so that this shortcut only trigger on the form 'frm_contacts'.
plugins.window.createShortcut('control RIGHT', 'frm_contacts.handleMyShortcut', 'frm_contacts', new Array(argument1, argument2));
// remove global shortcut and form-level shortcut
plugins.window.removeShortcut('menu 1');
plugins.window.removeShortcut('control RIGHT', 'frm_contacts');
// shortcut handlers are called with an JSEvent argument
///* 
// * Handle keyboard shortcut.
// * 
// * @param {JSEvent} event the event that triggered the action
// */
//function handleShortcut(event)
//{
//  application.output(event.getType()) // returns 'menu 1'
//  application.output(event.getFormName()) // returns 'frm_contacts'
//  application.output(event.getElementName()) // returns 'contact_name_field' or null when no element is selected
//}
// NOTE: shortcuts will not override existing operating system or browser shortcuts,
// choose your shortcuts careful to make sure they work in all clients.
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=createShortcut-String_String_String|class=node}{tr:id=name}{td}h6.createShortcut{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[Boolean]{span}{span:id=iets|style=float: left; font-weight: bold;}createShortcut{span}{span:id=iets|style=float: left;}\(shortcut, methodName, contextFilter){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:createShortcut-String_String_String_des|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_String_String_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:createShortcut-String_String_String_snc|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_String_String_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:createShortcut-String_String_String_prs|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_String_String_prs|trigger=none|class=sIndent}\{[String]} shortcut
\{[String]} methodName -- scopes.scopename.methodname or formname.methodname String to target the method to execute
\{[String]} contextFilter -- only triggers the shortcut when on this form
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:createShortcut-String_String_String_ret|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_String_String_ret|trigger=none|class=sIndent}[Boolean]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:createShortcut-String_String_String_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_String_String_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:createShortcut-String_String_String_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_String_String_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:createShortcut-String_String_String_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_String_String_sam|trigger=none}{code:language=javascript}
// this plugin uses the java keystroke parser
// see http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/KeyStroke.html#getKeyStroke(java.lang.String)
// global handler
plugins.window.createShortcut('control shift I', scopes.globals.handleOrdersShortcut);
// global handler with a form context filter
plugins.window.createShortcut('control shift I', scopes.globals.handleOrdersShortcut, 'frm_contacts');
// form method called when shortcut is used
plugins.window.createShortcut('control RIGHT', forms.frm_contacts.handleMyShortcut);
// form method called when shortcut is used and arguments are passed to the method
plugins.window.createShortcut('control RIGHT', forms.frm_contacts.handleMyShortcut, new Array(argument1, argument2));
// Passing the method argument as a string prevents unnecessary form loading
//plugins.window.createShortcut('control RIGHT', 'frm_contacts.handleMyShortcut', new Array(argument1, argument2));
// Passing the method as a name and the contextFilter set so that this shortcut only trigger on the form 'frm_contacts'.
plugins.window.createShortcut('control RIGHT', 'frm_contacts.handleMyShortcut', 'frm_contacts', new Array(argument1, argument2));
// remove global shortcut and form-level shortcut
plugins.window.removeShortcut('menu 1');
plugins.window.removeShortcut('control RIGHT', 'frm_contacts');
// shortcut handlers are called with an JSEvent argument
///* 
// * Handle keyboard shortcut.
// * 
// * @param {JSEvent} event the event that triggered the action
// */
//function handleShortcut(event)
//{
//  application.output(event.getType()) // returns 'menu 1'
//  application.output(event.getFormName()) // returns 'frm_contacts'
//  application.output(event.getElementName()) // returns 'contact_name_field' or null when no element is selected
//}
// NOTE: shortcuts will not override existing operating system or browser shortcuts,
// choose your shortcuts careful to make sure they work in all clients.
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=createShortcut-String_String_String_ObjectArray|class=node}{tr:id=name}{td}h6.createShortcut{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[Boolean]{span}{span:id=iets|style=float: left; font-weight: bold;}createShortcut{span}{span:id=iets|style=float: left;}\(shortcut, methodName, contextFilter, arguments){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:createShortcut-String_String_String_ObjectArray_des|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_String_String_ObjectArray_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:createShortcut-String_String_String_ObjectArray_snc|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_String_String_ObjectArray_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:createShortcut-String_String_String_ObjectArray_prs|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_String_String_ObjectArray_prs|trigger=none|class=sIndent}\{[String]} shortcut
\{[String]} methodName -- scopes.scopename.methodname or formname.methodname String to target the method to execute
\{[String]} contextFilter -- only triggers the shortcut when on this form
\{[Object]\[]} arguments
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:createShortcut-String_String_String_ObjectArray_ret|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_String_String_ObjectArray_ret|trigger=none|class=sIndent}[Boolean]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:createShortcut-String_String_String_ObjectArray_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_String_String_ObjectArray_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:createShortcut-String_String_String_ObjectArray_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_String_String_ObjectArray_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:createShortcut-String_String_String_ObjectArray_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_String_String_ObjectArray_sam|trigger=none}{code:language=javascript}
// this plugin uses the java keystroke parser
// see http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/KeyStroke.html#getKeyStroke(java.lang.String)
// global handler
plugins.window.createShortcut('control shift I', scopes.globals.handleOrdersShortcut);
// global handler with a form context filter
plugins.window.createShortcut('control shift I', scopes.globals.handleOrdersShortcut, 'frm_contacts');
// form method called when shortcut is used
plugins.window.createShortcut('control RIGHT', forms.frm_contacts.handleMyShortcut);
// form method called when shortcut is used and arguments are passed to the method
plugins.window.createShortcut('control RIGHT', forms.frm_contacts.handleMyShortcut, new Array(argument1, argument2));
// Passing the method argument as a string prevents unnecessary form loading
//plugins.window.createShortcut('control RIGHT', 'frm_contacts.handleMyShortcut', new Array(argument1, argument2));
// Passing the method as a name and the contextFilter set so that this shortcut only trigger on the form 'frm_contacts'.
plugins.window.createShortcut('control RIGHT', 'frm_contacts.handleMyShortcut', 'frm_contacts', new Array(argument1, argument2));
// remove global shortcut and form-level shortcut
plugins.window.removeShortcut('menu 1');
plugins.window.removeShortcut('control RIGHT', 'frm_contacts');
// shortcut handlers are called with an JSEvent argument
///* 
// * Handle keyboard shortcut.
// * 
// * @param {JSEvent} event the event that triggered the action
// */
//function handleShortcut(event)
//{
//  application.output(event.getType()) // returns 'menu 1'
//  application.output(event.getFormName()) // returns 'frm_contacts'
//  application.output(event.getElementName()) // returns 'contact_name_field' or null when no element is selected
//}
// NOTE: shortcuts will not override existing operating system or browser shortcuts,
// choose your shortcuts careful to make sure they work in all clients.
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=createShortcut-String_Function|class=node}{tr:id=name}{td}h6.createShortcut{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[Boolean]{span}{span:id=iets|style=float: left; font-weight: bold;}createShortcut{span}{span:id=iets|style=float: left;}\(shortcut, method){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:createShortcut-String_Function_des|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_Function_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:createShortcut-String_Function_snc|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_Function_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:createShortcut-String_Function_prs|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_Function_prs|trigger=none|class=sIndent}\{[String]} shortcut
\{[Function]} method -- the method/function that needs to be called when the shortcut is hit
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:createShortcut-String_Function_ret|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_Function_ret|trigger=none|class=sIndent}[Boolean]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:createShortcut-String_Function_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_Function_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:createShortcut-String_Function_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_Function_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:createShortcut-String_Function_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_Function_sam|trigger=none}{code:language=javascript}
// this plugin uses the java keystroke parser
// see http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/KeyStroke.html#getKeyStroke(java.lang.String)
// global handler
plugins.window.createShortcut('control shift I', scopes.globals.handleOrdersShortcut);
// global handler with a form context filter
plugins.window.createShortcut('control shift I', scopes.globals.handleOrdersShortcut, 'frm_contacts');
// form method called when shortcut is used
plugins.window.createShortcut('control RIGHT', forms.frm_contacts.handleMyShortcut);
// form method called when shortcut is used and arguments are passed to the method
plugins.window.createShortcut('control RIGHT', forms.frm_contacts.handleMyShortcut, new Array(argument1, argument2));
// Passing the method argument as a string prevents unnecessary form loading
//plugins.window.createShortcut('control RIGHT', 'frm_contacts.handleMyShortcut', new Array(argument1, argument2));
// Passing the method as a name and the contextFilter set so that this shortcut only trigger on the form 'frm_contacts'.
plugins.window.createShortcut('control RIGHT', 'frm_contacts.handleMyShortcut', 'frm_contacts', new Array(argument1, argument2));
// remove global shortcut and form-level shortcut
plugins.window.removeShortcut('menu 1');
plugins.window.removeShortcut('control RIGHT', 'frm_contacts');
// shortcut handlers are called with an JSEvent argument
///* 
// * Handle keyboard shortcut.
// * 
// * @param {JSEvent} event the event that triggered the action
// */
//function handleShortcut(event)
//{
//  application.output(event.getType()) // returns 'menu 1'
//  application.output(event.getFormName()) // returns 'frm_contacts'
//  application.output(event.getElementName()) // returns 'contact_name_field' or null when no element is selected
//}
// NOTE: shortcuts will not override existing operating system or browser shortcuts,
// choose your shortcuts careful to make sure they work in all clients.
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=createShortcut-String_Function_ObjectArray|class=node}{tr:id=name}{td}h6.createShortcut{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[Boolean]{span}{span:id=iets|style=float: left; font-weight: bold;}createShortcut{span}{span:id=iets|style=float: left;}\(shortcut, method, arguments){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:createShortcut-String_Function_ObjectArray_des|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_Function_ObjectArray_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:createShortcut-String_Function_ObjectArray_snc|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_Function_ObjectArray_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:createShortcut-String_Function_ObjectArray_prs|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_Function_ObjectArray_prs|trigger=none|class=sIndent}\{[String]} shortcut
\{[Function]} method -- the method/function that needs to be called when the shortcut is hit
\{[Object]\[]} arguments
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:createShortcut-String_Function_ObjectArray_ret|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_Function_ObjectArray_ret|trigger=none|class=sIndent}[Boolean]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:createShortcut-String_Function_ObjectArray_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_Function_ObjectArray_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:createShortcut-String_Function_ObjectArray_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_Function_ObjectArray_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:createShortcut-String_Function_ObjectArray_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_Function_ObjectArray_sam|trigger=none}{code:language=javascript}
// this plugin uses the java keystroke parser
// see http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/KeyStroke.html#getKeyStroke(java.lang.String)
// global handler
plugins.window.createShortcut('control shift I', scopes.globals.handleOrdersShortcut);
// global handler with a form context filter
plugins.window.createShortcut('control shift I', scopes.globals.handleOrdersShortcut, 'frm_contacts');
// form method called when shortcut is used
plugins.window.createShortcut('control RIGHT', forms.frm_contacts.handleMyShortcut);
// form method called when shortcut is used and arguments are passed to the method
plugins.window.createShortcut('control RIGHT', forms.frm_contacts.handleMyShortcut, new Array(argument1, argument2));
// Passing the method argument as a string prevents unnecessary form loading
//plugins.window.createShortcut('control RIGHT', 'frm_contacts.handleMyShortcut', new Array(argument1, argument2));
// Passing the method as a name and the contextFilter set so that this shortcut only trigger on the form 'frm_contacts'.
plugins.window.createShortcut('control RIGHT', 'frm_contacts.handleMyShortcut', 'frm_contacts', new Array(argument1, argument2));
// remove global shortcut and form-level shortcut
plugins.window.removeShortcut('menu 1');
plugins.window.removeShortcut('control RIGHT', 'frm_contacts');
// shortcut handlers are called with an JSEvent argument
///* 
// * Handle keyboard shortcut.
// * 
// * @param {JSEvent} event the event that triggered the action
// */
//function handleShortcut(event)
//{
//  application.output(event.getType()) // returns 'menu 1'
//  application.output(event.getFormName()) // returns 'frm_contacts'
//  application.output(event.getElementName()) // returns 'contact_name_field' or null when no element is selected
//}
// NOTE: shortcuts will not override existing operating system or browser shortcuts,
// choose your shortcuts careful to make sure they work in all clients.
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=createShortcut-String_Function_String|class=node}{tr:id=name}{td}h6.createShortcut{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[Boolean]{span}{span:id=iets|style=float: left; font-weight: bold;}createShortcut{span}{span:id=iets|style=float: left;}\(shortcut, method, contextFilter){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:createShortcut-String_Function_String_des|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_Function_String_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:createShortcut-String_Function_String_snc|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_Function_String_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:createShortcut-String_Function_String_prs|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_Function_String_prs|trigger=none|class=sIndent}\{[String]} shortcut
\{[Function]} method -- the method/function that needs to be called when the shortcut is hit
\{[String]} contextFilter -- only triggers the shortcut when on this form
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:createShortcut-String_Function_String_ret|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_Function_String_ret|trigger=none|class=sIndent}[Boolean]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:createShortcut-String_Function_String_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_Function_String_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:createShortcut-String_Function_String_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_Function_String_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:createShortcut-String_Function_String_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_Function_String_sam|trigger=none}{code:language=javascript}
// this plugin uses the java keystroke parser
// see http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/KeyStroke.html#getKeyStroke(java.lang.String)
// global handler
plugins.window.createShortcut('control shift I', scopes.globals.handleOrdersShortcut);
// global handler with a form context filter
plugins.window.createShortcut('control shift I', scopes.globals.handleOrdersShortcut, 'frm_contacts');
// form method called when shortcut is used
plugins.window.createShortcut('control RIGHT', forms.frm_contacts.handleMyShortcut);
// form method called when shortcut is used and arguments are passed to the method
plugins.window.createShortcut('control RIGHT', forms.frm_contacts.handleMyShortcut, new Array(argument1, argument2));
// Passing the method argument as a string prevents unnecessary form loading
//plugins.window.createShortcut('control RIGHT', 'frm_contacts.handleMyShortcut', new Array(argument1, argument2));
// Passing the method as a name and the contextFilter set so that this shortcut only trigger on the form 'frm_contacts'.
plugins.window.createShortcut('control RIGHT', 'frm_contacts.handleMyShortcut', 'frm_contacts', new Array(argument1, argument2));
// remove global shortcut and form-level shortcut
plugins.window.removeShortcut('menu 1');
plugins.window.removeShortcut('control RIGHT', 'frm_contacts');
// shortcut handlers are called with an JSEvent argument
///* 
// * Handle keyboard shortcut.
// * 
// * @param {JSEvent} event the event that triggered the action
// */
//function handleShortcut(event)
//{
//  application.output(event.getType()) // returns 'menu 1'
//  application.output(event.getFormName()) // returns 'frm_contacts'
//  application.output(event.getElementName()) // returns 'contact_name_field' or null when no element is selected
//}
// NOTE: shortcuts will not override existing operating system or browser shortcuts,
// choose your shortcuts careful to make sure they work in all clients.
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=createShortcut-String_Function_String_ObjectArray|class=node}{tr:id=name}{td}h6.createShortcut{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[Boolean]{span}{span:id=iets|style=float: left; font-weight: bold;}createShortcut{span}{span:id=iets|style=float: left;}\(shortcut, method, contextFilter, arguments){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:createShortcut-String_Function_String_ObjectArray_des|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_Function_String_ObjectArray_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:createShortcut-String_Function_String_ObjectArray_snc|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_Function_String_ObjectArray_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:createShortcut-String_Function_String_ObjectArray_prs|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_Function_String_ObjectArray_prs|trigger=none|class=sIndent}\{[String]} shortcut
\{[Function]} method -- the method/function that needs to be called when the shortcut is hit
\{[String]} contextFilter -- only triggers the shortcut when on this form
\{[Object]\[]} arguments
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:createShortcut-String_Function_String_ObjectArray_ret|trigger=button|text=}{sub-section}{sub-section:createShortcut-String_Function_String_ObjectArray_ret|trigger=none|class=sIndent}[Boolean]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:createShortcut-String_Function_String_ObjectArray_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_Function_String_ObjectArray_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:createShortcut-String_Function_String_ObjectArray_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_Function_String_ObjectArray_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:createShortcut-String_Function_String_ObjectArray_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:createShortcut-String_Function_String_ObjectArray_sam|trigger=none}{code:language=javascript}
// this plugin uses the java keystroke parser
// see http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/KeyStroke.html#getKeyStroke(java.lang.String)
// global handler
plugins.window.createShortcut('control shift I', scopes.globals.handleOrdersShortcut);
// global handler with a form context filter
plugins.window.createShortcut('control shift I', scopes.globals.handleOrdersShortcut, 'frm_contacts');
// form method called when shortcut is used
plugins.window.createShortcut('control RIGHT', forms.frm_contacts.handleMyShortcut);
// form method called when shortcut is used and arguments are passed to the method
plugins.window.createShortcut('control RIGHT', forms.frm_contacts.handleMyShortcut, new Array(argument1, argument2));
// Passing the method argument as a string prevents unnecessary form loading
//plugins.window.createShortcut('control RIGHT', 'frm_contacts.handleMyShortcut', new Array(argument1, argument2));
// Passing the method as a name and the contextFilter set so that this shortcut only trigger on the form 'frm_contacts'.
plugins.window.createShortcut('control RIGHT', 'frm_contacts.handleMyShortcut', 'frm_contacts', new Array(argument1, argument2));
// remove global shortcut and form-level shortcut
plugins.window.removeShortcut('menu 1');
plugins.window.removeShortcut('control RIGHT', 'frm_contacts');
// shortcut handlers are called with an JSEvent argument
///* 
// * Handle keyboard shortcut.
// * 
// * @param {JSEvent} event the event that triggered the action
// */
//function handleShortcut(event)
//{
//  application.output(event.getType()) // returns 'menu 1'
//  application.output(event.getFormName()) // returns 'frm_contacts'
//  application.output(event.getElementName()) // returns 'contact_name_field' or null when no element is selected
//}
// NOTE: shortcuts will not override existing operating system or browser shortcuts,
// choose your shortcuts careful to make sure they work in all clients.
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getMenuBar|class=node}{tr:id=name}{td}h6.getMenuBar{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[MenuBar]{span}{span:id=iets|style=float: left; font-weight: bold;}getMenuBar{span}{span:id=iets|style=float: left;}\(){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:getMenuBar_des|trigger=button|text=}{sub-section}{sub-section:getMenuBar_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:getMenuBar_snc|trigger=button|text=}{sub-section}{sub-section:getMenuBar_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=prs}{td}*Parameters*\\{sub-section:getMenuBar_prs|trigger=button|text=}{sub-section}{sub-section:getMenuBar_prs|trigger=none|class=sIndent}{sub-section}{td}{tr}{builder-show}{tr:id=ret}{td}*Returns*\\{sub-section:getMenuBar_ret|trigger=button|text=}{sub-section}{sub-section:getMenuBar_ret|trigger=none|class=sIndent}[MenuBar]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:getMenuBar_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:getMenuBar_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:getMenuBar_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:getMenuBar_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:getMenuBar_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:getMenuBar_sam|trigger=none}{code:language=javascript}
// create a new window
var win = application.createWindow("windowName", JSWindow.WINDOW);
// show a form in the new window
forms.my_form.controller.show(win);
// retrieve the menubar of the new window
var menubar = plugins.window.getMenuBar("windowName");
// add a new menu to the menubar, with an item in it
var menu = menubar.addMenu();
menu.text = "New Menu";
menu.addMenuItem("an entry", feedback);
// retrieve the menubar of the main window
var mainMenubar = plugins.window.getMenuBar();
// add a new menu to the menubar of the main window
var menuMain = mainMenubar.addMenu();
menuMain.text = "New Menu in Main Menubar";
menuMain.addMenuItem("another entry", feedback);
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getMenuBar-String|class=node}{tr:id=name}{td}h6.getMenuBar{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[MenuBar]{span}{span:id=iets|style=float: left; font-weight: bold;}getMenuBar{span}{span:id=iets|style=float: left;}\(windowName){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:getMenuBar-String_des|trigger=button|text=}{sub-section}{sub-section:getMenuBar-String_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:getMenuBar-String_snc|trigger=button|text=}{sub-section}{sub-section:getMenuBar-String_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:getMenuBar-String_prs|trigger=button|text=}{sub-section}{sub-section:getMenuBar-String_prs|trigger=none|class=sIndent}\{[String]} windowName -- the name of the window
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:getMenuBar-String_ret|trigger=button|text=}{sub-section}{sub-section:getMenuBar-String_ret|trigger=none|class=sIndent}[MenuBar]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:getMenuBar-String_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:getMenuBar-String_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:getMenuBar-String_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:getMenuBar-String_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:getMenuBar-String_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:getMenuBar-String_sam|trigger=none}{code:language=javascript}
// create a new window
var win = application.createWindow("windowName", JSWindow.WINDOW);
// show a form in the new window
forms.my_form.controller.show(win);
// retrieve the menubar of the new window
var menubar = plugins.window.getMenuBar("windowName");
// add a new menu to the menubar, with an item in it
var menu = menubar.addMenu();
menu.text = "New Menu";
menu.addMenuItem("an entry", feedback);
// retrieve the menubar of the main window
var mainMenubar = plugins.window.getMenuBar();
// add a new menu to the menubar of the main window
var menuMain = mainMenubar.addMenu();
menuMain.text = "New Menu in Main Menubar";
menuMain.addMenuItem("another entry", feedback);
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getToolBar-JSWindow_String|class=node}{tr:id=name}{td}h6.getToolBar{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[ToolBar]{span}{span:id=iets|style=float: left; font-weight: bold;}getToolBar{span}{span:id=iets|style=float: left;}\(window, name){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:getToolBar-JSWindow_String_des|trigger=button|text=}{sub-section}{sub-section:getToolBar-JSWindow_String_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:getToolBar-JSWindow_String_snc|trigger=button|text=}{sub-section}{sub-section:getToolBar-JSWindow_String_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:getToolBar-JSWindow_String_prs|trigger=button|text=}{sub-section}{sub-section:getToolBar-JSWindow_String_prs|trigger=none|class=sIndent}\{[JSWindow]} window
\{[String]} name
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:getToolBar-JSWindow_String_ret|trigger=button|text=}{sub-section}{sub-section:getToolBar-JSWindow_String_ret|trigger=none|class=sIndent}[ToolBar]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:getToolBar-JSWindow_String_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:getToolBar-JSWindow_String_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:getToolBar-JSWindow_String_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:getToolBar-JSWindow_String_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:getToolBar-JSWindow_String_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:getToolBar-JSWindow_String_sam|trigger=none}{code:language=javascript}
// Note: method getToolBar only works in the smart client.

// create a window
	var win = application.createWindow("myWindow", JSWindow.WINDOW);
// the toolbar must first be created with a call to addToolbar
plugins.window.addToolBar(win,"toolbar_0");

// show the empty toolbar and wait 4 seconds  
win.show(forms.MyForm)
application.updateUI(4000)

// get the toolbar at the panel by name
var toolbar = plugins.window.getToolBar(win,"toolbar_0");
// add a button to the toolbar
toolbar.addButton("button", callback_function);
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getToolBar-String|class=node}{tr:id=name}{td}h6.getToolBar{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[ToolBar]{span}{span:id=iets|style=float: left; font-weight: bold;}getToolBar{span}{span:id=iets|style=float: left;}\(name){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:getToolBar-String_des|trigger=button|text=}{sub-section}{sub-section:getToolBar-String_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:getToolBar-String_snc|trigger=button|text=}{sub-section}{sub-section:getToolBar-String_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:getToolBar-String_prs|trigger=button|text=}{sub-section}{sub-section:getToolBar-String_prs|trigger=none|class=sIndent}\{[String]} name
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:getToolBar-String_ret|trigger=button|text=}{sub-section}{sub-section:getToolBar-String_ret|trigger=none|class=sIndent}[ToolBar]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:getToolBar-String_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:getToolBar-String_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:getToolBar-String_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:getToolBar-String_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:getToolBar-String_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:getToolBar-String_sam|trigger=none}{code:language=javascript}
// Note: method getToolBar only works in the smart client.

// the toolbar must first be created with a call to addToolbar
plugins.window.addToolBar("toolbar_0");

// get the toolbar at the panel by name
var toolbar = plugins.window.getToolBar("toolbar_0");
// add a button to the toolbar
toolbar.addButton("button", feedback_button);
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getToolbarNames|class=node}{tr:id=name}{td}h6.getToolbarNames{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[String]\[]{span}{span:id=iets|style=float: left; font-weight: bold;}getToolbarNames{span}{span:id=iets|style=float: left;}\(){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:getToolbarNames_des|trigger=button|text=}{sub-section}{sub-section:getToolbarNames_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:getToolbarNames_snc|trigger=button|text=}{sub-section}{sub-section:getToolbarNames_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=prs}{td}*Parameters*\\{sub-section:getToolbarNames_prs|trigger=button|text=}{sub-section}{sub-section:getToolbarNames_prs|trigger=none|class=sIndent}{sub-section}{td}{tr}{builder-show}{tr:id=ret}{td}*Returns*\\{sub-section:getToolbarNames_ret|trigger=button|text=}{sub-section}{sub-section:getToolbarNames_ret|trigger=none|class=sIndent}[String]\[]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:getToolbarNames_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:getToolbarNames_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:getToolbarNames_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:getToolbarNames_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:getToolbarNames_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:getToolbarNames_sam|trigger=none}{code:language=javascript}
// Note: method getToolbarNames only works in the smart client.

// create an array of toolbar names
var names = plugins.window.getToolbarNames();

// create an empty message variable
var message = "";

// loop through the array
for (var i = 0 ; i < names.length ; i++) {
	//add the name(s) to the message
	message += names[i] + "\n";
}

// show the message
plugins.dialogs.showInfoDialog("toolbar names", message);
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getToolbarNames-JSWindow|class=node}{tr:id=name}{td}h6.getToolbarNames{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[String]\[]{span}{span:id=iets|style=float: left; font-weight: bold;}getToolbarNames{span}{span:id=iets|style=float: left;}\(window){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:getToolbarNames-JSWindow_des|trigger=button|text=}{sub-section}{sub-section:getToolbarNames-JSWindow_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:getToolbarNames-JSWindow_snc|trigger=button|text=}{sub-section}{sub-section:getToolbarNames-JSWindow_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:getToolbarNames-JSWindow_prs|trigger=button|text=}{sub-section}{sub-section:getToolbarNames-JSWindow_prs|trigger=none|class=sIndent}\{[JSWindow]} window
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:getToolbarNames-JSWindow_ret|trigger=button|text=}{sub-section}{sub-section:getToolbarNames-JSWindow_ret|trigger=none|class=sIndent}[String]\[]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:getToolbarNames-JSWindow_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:getToolbarNames-JSWindow_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:getToolbarNames-JSWindow_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:getToolbarNames-JSWindow_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:getToolbarNames-JSWindow_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:getToolbarNames-JSWindow_sam|trigger=none}{code:language=javascript}
// Note: method getToolbarNames only works in the smart client.
// create a window 
	var win = application.createWindow("myWindow", JSWindow.WINDOW);
// the toolbar must first be created with a call to addToolbar
	 plugins.window.addToolBar(win,"toolbar_0");
  plugins.window.addToolBar(win,"toolbar_1");
// create an array of toolbar names
var names = plugins.window.getToolbarNames(win);

// create an empty message variable
var message = "";

// loop through the array
for (var i = 0 ; i < names.length ; i++) {
	//add the name(s) to the message
	message += names[i] + "\n";
}

// show the message
plugins.dialogs.showInfoDialog("toolbar names", message);
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=maximize|class=node}{tr:id=name}{td}h6.maximize{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}void{span}{span:id=iets|style=float: left; font-weight: bold;}maximize{span}{span:id=iets|style=float: left;}\(){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:maximize_des|trigger=button|text=}{sub-section}{sub-section:maximize_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:maximize_snc|trigger=button|text=}{sub-section}{sub-section:maximize_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=prs}{td}*Parameters*\\{sub-section:maximize_prs|trigger=button|text=}{sub-section}{sub-section:maximize_prs|trigger=none|class=sIndent}{sub-section}{td}{tr}{builder-show}{tr:id=ret}{td}*Returns*\\{sub-section:maximize_ret|trigger=button|text=}{sub-section}{sub-section:maximize_ret|trigger=none|class=sIndent}void{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:maximize_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:maximize_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:maximize_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:maximize_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:maximize_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:maximize_sam|trigger=none}{code:language=javascript}
// maximize the main window:
plugins.window.maximize();

// create a new window
var win = application.createWindow("windowName", JSWindow.WINDOW);
// show a form in the new window
forms.my_form.controller.show(win);
// maximize the window
plugins.window.maximize("windowName");
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=maximize-String|class=node}{tr:id=name}{td}h6.maximize{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}void{span}{span:id=iets|style=float: left; font-weight: bold;}maximize{span}{span:id=iets|style=float: left;}\(windowName){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:maximize-String_des|trigger=button|text=}{sub-section}{sub-section:maximize-String_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:maximize-String_snc|trigger=button|text=}{sub-section}{sub-section:maximize-String_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:maximize-String_prs|trigger=button|text=}{sub-section}{sub-section:maximize-String_prs|trigger=none|class=sIndent}\{[String]} windowName
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:maximize-String_ret|trigger=button|text=}{sub-section}{sub-section:maximize-String_ret|trigger=none|class=sIndent}void{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:maximize-String_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:maximize-String_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:maximize-String_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:maximize-String_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:maximize-String_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:maximize-String_sam|trigger=none}{code:language=javascript}
// maximize the main window:
plugins.window.maximize();

// create a new window
var win = application.createWindow("windowName", JSWindow.WINDOW);
// show a form in the new window
forms.my_form.controller.show(win);
// maximize the window
plugins.window.maximize("windowName");
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=removeShortcut-String|class=node}{tr:id=name}{td}h6.removeShortcut{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[Boolean]{span}{span:id=iets|style=float: left; font-weight: bold;}removeShortcut{span}{span:id=iets|style=float: left;}\(shortcut){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:removeShortcut-String_des|trigger=button|text=}{sub-section}{sub-section:removeShortcut-String_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:removeShortcut-String_snc|trigger=button|text=}{sub-section}{sub-section:removeShortcut-String_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:removeShortcut-String_prs|trigger=button|text=}{sub-section}{sub-section:removeShortcut-String_prs|trigger=none|class=sIndent}\{[String]} shortcut
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:removeShortcut-String_ret|trigger=button|text=}{sub-section}{sub-section:removeShortcut-String_ret|trigger=none|class=sIndent}[Boolean]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:removeShortcut-String_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:removeShortcut-String_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:removeShortcut-String_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:removeShortcut-String_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:removeShortcut-String_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:removeShortcut-String_sam|trigger=none}{code:language=javascript}
// this plugin uses the java keystroke parser
// see http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/KeyStroke.html#getKeyStroke(java.lang.String)
// global handler
plugins.window.createShortcut('control shift I', scopes.globals.handleOrdersShortcut);
// global handler with a form context filter
plugins.window.createShortcut('control shift I', scopes.globals.handleOrdersShortcut, 'frm_contacts');
// form method called when shortcut is used
plugins.window.createShortcut('control RIGHT', forms.frm_contacts.handleMyShortcut);
// form method called when shortcut is used and arguments are passed to the method
plugins.window.createShortcut('control RIGHT', forms.frm_contacts.handleMyShortcut, new Array(argument1, argument2));
// Passing the method argument as a string prevents unnecessary form loading
//plugins.window.createShortcut('control RIGHT', 'frm_contacts.handleMyShortcut', new Array(argument1, argument2));
// Passing the method as a name and the contextFilter set so that this shortcut only trigger on the form 'frm_contacts'.
plugins.window.createShortcut('control RIGHT', 'frm_contacts.handleMyShortcut', 'frm_contacts', new Array(argument1, argument2));
// remove global shortcut and form-level shortcut
plugins.window.removeShortcut('menu 1');
plugins.window.removeShortcut('control RIGHT', 'frm_contacts');
// shortcut handlers are called with an JSEvent argument
///* 
// * Handle keyboard shortcut.
// * 
// * @param {JSEvent} event the event that triggered the action
// */
//function handleShortcut(event)
//{
//  application.output(event.getType()) // returns 'menu 1'
//  application.output(event.getFormName()) // returns 'frm_contacts'
//  application.output(event.getElementName()) // returns 'contact_name_field' or null when no element is selected
//}
// NOTE: shortcuts will not override existing operating system or browser shortcuts,
// choose your shortcuts careful to make sure they work in all clients.
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=removeShortcut-String_String|class=node}{tr:id=name}{td}h6.removeShortcut{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[Boolean]{span}{span:id=iets|style=float: left; font-weight: bold;}removeShortcut{span}{span:id=iets|style=float: left;}\(shortcut, contextFilter){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:removeShortcut-String_String_des|trigger=button|text=}{sub-section}{sub-section:removeShortcut-String_String_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:removeShortcut-String_String_snc|trigger=button|text=}{sub-section}{sub-section:removeShortcut-String_String_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:removeShortcut-String_String_prs|trigger=button|text=}{sub-section}{sub-section:removeShortcut-String_String_prs|trigger=none|class=sIndent}\{[String]} shortcut
\{[String]} contextFilter -- only triggers the shortcut when on this form
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:removeShortcut-String_String_ret|trigger=button|text=}{sub-section}{sub-section:removeShortcut-String_String_ret|trigger=none|class=sIndent}[Boolean]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:removeShortcut-String_String_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:removeShortcut-String_String_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:removeShortcut-String_String_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:removeShortcut-String_String_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:removeShortcut-String_String_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:removeShortcut-String_String_sam|trigger=none}{code:language=javascript}
// this plugin uses the java keystroke parser
// see http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/KeyStroke.html#getKeyStroke(java.lang.String)
// global handler
plugins.window.createShortcut('control shift I', scopes.globals.handleOrdersShortcut);
// global handler with a form context filter
plugins.window.createShortcut('control shift I', scopes.globals.handleOrdersShortcut, 'frm_contacts');
// form method called when shortcut is used
plugins.window.createShortcut('control RIGHT', forms.frm_contacts.handleMyShortcut);
// form method called when shortcut is used and arguments are passed to the method
plugins.window.createShortcut('control RIGHT', forms.frm_contacts.handleMyShortcut, new Array(argument1, argument2));
// Passing the method argument as a string prevents unnecessary form loading
//plugins.window.createShortcut('control RIGHT', 'frm_contacts.handleMyShortcut', new Array(argument1, argument2));
// Passing the method as a name and the contextFilter set so that this shortcut only trigger on the form 'frm_contacts'.
plugins.window.createShortcut('control RIGHT', 'frm_contacts.handleMyShortcut', 'frm_contacts', new Array(argument1, argument2));
// remove global shortcut and form-level shortcut
plugins.window.removeShortcut('menu 1');
plugins.window.removeShortcut('control RIGHT', 'frm_contacts');
// shortcut handlers are called with an JSEvent argument
///* 
// * Handle keyboard shortcut.
// * 
// * @param {JSEvent} event the event that triggered the action
// */
//function handleShortcut(event)
//{
//  application.output(event.getType()) // returns 'menu 1'
//  application.output(event.getFormName()) // returns 'frm_contacts'
//  application.output(event.getElementName()) // returns 'contact_name_field' or null when no element is selected
//}
// NOTE: shortcuts will not override existing operating system or browser shortcuts,
// choose your shortcuts careful to make sure they work in all clients.
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=removeToolBar-JSWindow_String|class=node}{tr:id=name}{td}h6.removeToolBar{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}void{span}{span:id=iets|style=float: left; font-weight: bold;}removeToolBar{span}{span:id=iets|style=float: left;}\(window, name){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:removeToolBar-JSWindow_String_des|trigger=button|text=}{sub-section}{sub-section:removeToolBar-JSWindow_String_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:removeToolBar-JSWindow_String_snc|trigger=button|text=}{sub-section}{sub-section:removeToolBar-JSWindow_String_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:removeToolBar-JSWindow_String_prs|trigger=button|text=}{sub-section}{sub-section:removeToolBar-JSWindow_String_prs|trigger=none|class=sIndent}\{[JSWindow]} window
\{[String]} name
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:removeToolBar-JSWindow_String_ret|trigger=button|text=}{sub-section}{sub-section:removeToolBar-JSWindow_String_ret|trigger=none|class=sIndent}void{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:removeToolBar-JSWindow_String_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:removeToolBar-JSWindow_String_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:removeToolBar-JSWindow_String_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:removeToolBar-JSWindow_String_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:removeToolBar-JSWindow_String_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:removeToolBar-JSWindow_String_sam|trigger=none}{code:language=javascript}
// Note: method removeToolBar only works in the smart client.
// create a window 
	var win = application.createWindow("myWindow", JSWindow.WINDOW);
// the toolbar must first be created with a call to addToolbar
var toolbar = plugins.window.addToolBar(win,"toolbar_0");

// add a button to the toolbar
toolbar.addButton("button", callcbackMethod);

// show the toolbar with the button and wait 4 seconds, then remove it
win.show(forms.MyForm)
application.updateUI(4000)

// removing a toolbar from the toolbar panel is done by name
// the plugin checks the existence of the toolbar
// when the toolbar does not exist it will not throw an error though.
plugins.window.removeToolBar(win,"toolbar_0");
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=removeToolBar-String|class=node}{tr:id=name}{td}h6.removeToolBar{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}void{span}{span:id=iets|style=float: left; font-weight: bold;}removeToolBar{span}{span:id=iets|style=float: left;}\(name){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:removeToolBar-String_des|trigger=button|text=}{sub-section}{sub-section:removeToolBar-String_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:removeToolBar-String_snc|trigger=button|text=}{sub-section}{sub-section:removeToolBar-String_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:removeToolBar-String_prs|trigger=button|text=}{sub-section}{sub-section:removeToolBar-String_prs|trigger=none|class=sIndent}\{[String]} name
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:removeToolBar-String_ret|trigger=button|text=}{sub-section}{sub-section:removeToolBar-String_ret|trigger=none|class=sIndent}void{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:removeToolBar-String_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:removeToolBar-String_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:removeToolBar-String_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:removeToolBar-String_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:removeToolBar-String_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:removeToolBar-String_sam|trigger=none}{code:language=javascript}
// Note: method removeToolBar only works in the smart client.

// the toolbar must first be created with a call to addToolbar
var toolbar = plugins.window.addToolBar("toolbar_0");

// add a button to the toolbar
toolbar.addButton("button", feedback_button);

// removing a toolbar from the toolbar panel is done by name
// the plugin checks the existence of the toolbar
// when the toolbar does not exist it will not throw an error though.
plugins.window.removeToolBar("toolbar_0");
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=setFullScreen-Boolean|class=node}{tr:id=name}{td}h6.setFullScreen{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}void{span}{span:id=iets|style=float: left; font-weight: bold;}setFullScreen{span}{span:id=iets|style=float: left;}\(full){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:setFullScreen-Boolean_des|trigger=button|text=}{sub-section}{sub-section:setFullScreen-Boolean_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:setFullScreen-Boolean_snc|trigger=button|text=}{sub-section}{sub-section:setFullScreen-Boolean_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:setFullScreen-Boolean_prs|trigger=button|text=}{sub-section}{sub-section:setFullScreen-Boolean_prs|trigger=none|class=sIndent}\{[Boolean]} full
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:setFullScreen-Boolean_ret|trigger=button|text=}{sub-section}{sub-section:setFullScreen-Boolean_ret|trigger=none|class=sIndent}void{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:setFullScreen-Boolean_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:setFullScreen-Boolean_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:setFullScreen-Boolean_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:setFullScreen-Boolean_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:setFullScreen-Boolean_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:setFullScreen-Boolean_sam|trigger=none}{code:language=javascript}
// active fullscreen mode 
plugins.window.setFullScreen(true);
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=setStatusBarVisible-Boolean|class=node}{tr:id=name}{td}h6.setStatusBarVisible{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}void{span}{span:id=iets|style=float: left; font-weight: bold;}setStatusBarVisible{span}{span:id=iets|style=float: left;}\(visible){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:setStatusBarVisible-Boolean_des|trigger=button|text=}{sub-section}{sub-section:setStatusBarVisible-Boolean_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:setStatusBarVisible-Boolean_snc|trigger=button|text=}{sub-section}{sub-section:setStatusBarVisible-Boolean_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:setStatusBarVisible-Boolean_prs|trigger=button|text=}{sub-section}{sub-section:setStatusBarVisible-Boolean_prs|trigger=none|class=sIndent}\{[Boolean]} visible
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:setStatusBarVisible-Boolean_ret|trigger=button|text=}{sub-section}{sub-section:setStatusBarVisible-Boolean_ret|trigger=none|class=sIndent}void{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:setStatusBarVisible-Boolean_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:setStatusBarVisible-Boolean_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:setStatusBarVisible-Boolean_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:setStatusBarVisible-Boolean_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:setStatusBarVisible-Boolean_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:setStatusBarVisible-Boolean_sam|trigger=none}{code:language=javascript}
// hide the statusbar
plugins.window.setStatusBarVisible(false);
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=setToolBarAreaVisible-Boolean|class=node}{tr:id=name}{td}h6.setToolBarAreaVisible{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}void{span}{span:id=iets|style=float: left; font-weight: bold;}setToolBarAreaVisible{span}{span:id=iets|style=float: left;}\(visible){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:setToolBarAreaVisible-Boolean_des|trigger=button|text=}{sub-section}{sub-section:setToolBarAreaVisible-Boolean_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:setToolBarAreaVisible-Boolean_snc|trigger=button|text=}{sub-section}{sub-section:setToolBarAreaVisible-Boolean_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:setToolBarAreaVisible-Boolean_prs|trigger=button|text=}{sub-section}{sub-section:setToolBarAreaVisible-Boolean_prs|trigger=none|class=sIndent}\{[Boolean]} visible
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:setToolBarAreaVisible-Boolean_ret|trigger=button|text=}{sub-section}{sub-section:setToolBarAreaVisible-Boolean_ret|trigger=none|class=sIndent}void{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:setToolBarAreaVisible-Boolean_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:setToolBarAreaVisible-Boolean_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:setToolBarAreaVisible-Boolean_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:setToolBarAreaVisible-Boolean_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:setToolBarAreaVisible-Boolean_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:setToolBarAreaVisible-Boolean_sam|trigger=none}{code:language=javascript}
// hide the toolbar area
plugins.window.setToolBarAreaVisible(false);
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=showFormPopup-RuntimeComponent_RuntimeForm_Object_String|class=node}{tr:id=name}{td}h6.showFormPopup{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}void{span}{span:id=iets|style=float: left; font-weight: bold;}showFormPopup{span}{span:id=iets|style=float: left;}\(elementToShowRelatedTo, form, scope, dataproviderID){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_des|trigger=button|text=}{sub-section}{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_snc|trigger=button|text=}{sub-section}{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_prs|trigger=button|text=}{sub-section}{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_prs|trigger=none|class=sIndent}\{[RuntimeComponent]} elementToShowRelatedTo -- element to show related to or null to center in screen
\{[RuntimeForm]} form -- the form to show
\{[Object]} scope -- the scope to put retval into
\{[String]} dataproviderID -- the dataprovider of scope to fill
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_ret|trigger=button|text=}{sub-section}{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_ret|trigger=none|class=sIndent}void{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_sam|trigger=none}{code:language=javascript}
// Show a form as popup panel, where the closeFormPopup can pass return a value to a dataprovider in the specified scope.
plugins.window.showFormPopup(null,forms.orderPicker,foundset.getSelectedRecord(),"order_id");
// do call closeFormPopup(ordervalue) from the orderPicker form
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=showFormPopup-RuntimeComponent_RuntimeForm_Object_String_Number_Number|class=node}{tr:id=name}{td}h6.showFormPopup{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}void{span}{span:id=iets|style=float: left; font-weight: bold;}showFormPopup{span}{span:id=iets|style=float: left;}\(elementToShowRelatedTo, form, scope, dataproviderID, width, height){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_Number_Number_des|trigger=button|text=}{sub-section}{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_Number_Number_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_Number_Number_snc|trigger=button|text=}{sub-section}{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_Number_Number_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_Number_Number_prs|trigger=button|text=}{sub-section}{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_Number_Number_prs|trigger=none|class=sIndent}\{[RuntimeComponent]} elementToShowRelatedTo -- element to show related to or null to center in screen
\{[RuntimeForm]} form -- the form to show
\{[Object]} scope -- the scope to put retval into
\{[String]} dataproviderID -- the dataprovider of scope to fill
\{[Number]} width -- popup width
\{[Number]} height -- popup height
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_Number_Number_ret|trigger=button|text=}{sub-section}{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_Number_Number_ret|trigger=none|class=sIndent}void{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_Number_Number_see|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_Number_Number_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_Number_Number_link|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_Number_Number_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_Number_Number_sam|trigger=button|text=}{sub-section}{div:class=sIndent}{sub-section:showFormPopup-RuntimeComponent_RuntimeForm_Object_String_Number_Number_sam|trigger=none}{code:language=javascript}
// Show a form as popup panel, where the closeFormPopup can pass return a value to a dataprovider in the specified scope.
plugins.window.showFormPopup(null,forms.orderPicker,foundset.getSelectedRecord(),"order_id");
// do call closeFormPopup(ordervalue) from the orderPicker form
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{table}