Stoc |
---|
...
New function: JSDataSet.getColumnType
New property: JSFoundSet.alldataproviders
New function: JSRecord.hasChangedData
New function: JSRecord.isNew
New function: JSTable.isMetadataTable
New function: QBAggregate.concat
New function: QBColumn.concat
New function: QBFunction.concat
New function: QBFunctions.concat
New function: QBGroupBy.clear
New function: QBResult.clear
New function: QBSelect.clearHaving
New function: QBSorts.clear
New class: QBWhereCondition
New property: QBWhereCondition.conditionnames
New property: QBWhereCondition.parent
New property: QBWhereCondition.root
New function: QBWhereCondition.add-QBCondition
New function: QBWhereCondition.add-String_QBCondition
New function: QBWhereCondition.clear
New function: QBWhereCondition.getCondition
New function: QBWhereCondition.remove
New function: Utils.stringToNumber-String_String
New function: headlessclient.getOrCreateClient
New function: DeleteRequest.executeAsyncRequest-String_String_Function_Function
New function: DeleteRequest.executeAsyncRequest-Function_Function
New function: GetRequest.executeAsyncRequest-String_String_Function_Function
New function: GetRequest.executeAsyncRequest-Function_Function
New function: HeadRequest.executeAsyncRequest-String_String_Function_Function
New function: HeadRequest.executeAsyncRequest-Function_Function
New function: OptionsRequest.executeAsyncRequest-String_String_Function_Function
New function: OptionsRequest.executeAsyncRequest-Function_Function
New function: PostRequest.executeAsyncRequest-String_String_Function_Function
New function: PostRequest.executeAsyncRequest-Function_Function
New function: PutRequest.executeAsyncRequest-String_String_Function_Function
New function: PutRequest.executeAsyncRequest-Function_Function
New function: TraceRequest.executeAsyncRequest-String_String_Function_Function
New function: TraceRequest.executeAsyncRequest-Function_Function
New function: mail.senBulkdMail
New function: mail.sendBulkMail-String_String_String_String
New function: mail.sendBulkMail-String_String_String_String_String
New function: mail.sendBulkMail-String_String_String_String_String_String
New function: mail.sendBulkMail-String_String_String_String_String_String_Attachment
New function: mail.sendBulkMail-String_String_String_String_String_String_Attachment_String
New function: mail.sendBulkMail-String_String_String_String_String_String_Attachment_StringArray
New function: mail.sendBulkMail-String_String_String_String_String_String_AttachmentArray
New function: mail.sendBulkMail-String_String_String_String_String_String_AttachmentArray_String
New function: JSTableObject.isMetadataTable
New function: window.showFormPopup-RuntimeComponent_RuntimeForm _Object_String
New function: window.showFormPopup-RuntimeComponent_RuntimeForm _Object_String_Number_Number
@this
@override
CC for Types include functions Marked as constructor using @constructor (no need to type the entire scope!!)
@enum
<*> and <None>
resolve forward references
Using types over scopes
Lazy scope loading
Client Design improveoment
Solution Explorer
Build System
JSDoc
Editors
Misc.
User Interface Widgets
Styling options
Added
Feature | Description | StyleSeet support | Designtime support | Web Client support | Smart Client support |
---|---|---|---|---|---|
|
|
|
|
|
|
Web Client compatibility
Programming API
Misc.
Behavior Changes
Behavior Changes
Servoy Admin page
Misc.
...
Wiki Markup |
---|
{stoc}
h1. Highlights
{include:newFeatureHighLights}
h1. Servoy Developer
* Added @this annotation in JSDoc to type the 'this' keyword
* Added @override to annotate methods as overriding a method on a super form
* Added functions marked as constructor using the @constructor JSDoc tag as types in CodeCompletion globally. Note that it is not needed to access the type through it's fully qualified path (so scopes.xxxxx.myType). Instead just type the name of the function and when Code Completing, the scopes.xxx part of the path will be automatically inserted
* Added @enum support to mark an object containing a set of values as an enumeration, which can then be used in relations again
* Added the * type to be able to make a distinction between the lowest common denominator in JavaScript, which is Object and non-JavaScript types (for example Servoy's built-in types)
* Improved the build mechanism to see forward references in .js files and thus not generate builder markers
* Improved support for using types in JSDoc cross scopes. When a scope contains a function MyType which is marked as constructor, it can now be references inside the scope within JSDoc as just MyType, without prefixing it with the fully qualified path and outside the scope with the fully path, without the build system raising warnings that MyType \!= scopes.xxxx.MyType
h1. Solution Development
* Added placeholder support on TextFields, TextAreas & PasswordFields support in all clients (See [http://webdesignerwall.com/demo/html5-placeholder-text/|http://webdesignerwall.com/demo/html5-placeholder-text/] for an example what a PlaceHolder is)
* Added mnemonic support on Tabs of a TabPanel and Panes of an AccordionPane
* Added RightClick and DoubleClick event handling support to ClientDesign mode
* Added support to use values from a variable containing an object with values in relations. Example:
With the code below, in a relation the value of one of the status codes can be used, by using STATUS_CODE.ACTIVE
{code}/*\*
\* @enum
*/
var STATUS_CODES = {
ACTIVE: 1,
INACTIVE: 2
}
{code}
* Added databaseManager.getDataModelClonesFrom function to make the functionality available in all clients (similar function was already available in the Maintanance plugin, but the maintenance plugin is to be used only inside Batch Processors)
* Added JSDataSet.getColumnType
* Added JSFoundSet.alldataproviders
* Added databaseManager.getDataSource for convenience
* Added orientation constants to JSTabPanel
* Added JSRelation.FULL_JOIN constant to be used with QBSelect
* Added JSRelation.RIGHT_OUTER_JOIN to be used with QBSelect
* Added JSRelationItem.LITERAL_PREFIX to be used with QBSelect
* Added JSRecord.hasChangedData
* Added JSRecord.isNew
* Added JSTable.isMetaDataTable
* Added JSTableObject.isMetadataTable
* Added plugins.headlessclient.getOrCreateClient to get an existing client for a specified UUID or create and return a new client with the specified ID if it not already exists
* Added executeAsyncRequest to all request types of the HTTP plugin
* Added sendBulkMail to send out emails with the bulk mail Precendence header set to Bulk, to prevent getting replies from auto-reponders
* Added QBWhereCondition to allow modifying the where clause of QBSelect objects
* Added concat method on QBAggregate, QBColumn, QBFunction and QBFunctions
* Added clear method on QBGroupBy, QBResult and QBSorts
* Added QBSelect.clearHaving
* Added support for specifying the size of formPopups when showing the popup through plugins.window.showFormPopup
* Added JSForm.removeMethod
* Added JSForm.removeVariable
* Added Utils.stringToNumber variant with decimal support
* Added databaseManager.addTableFitlerParam variants that take a datasource string as parameter
* Added parameter to databaseManager.createDataSourceByQuery variants that work with a sql string to specify the column types
* Added UICONSTANTS.TABLEVIEW_WC_SCROLLABLE_KEEP_LOADED_ROWS
* Added JSCalculation.hasFlag to retrieve is a calculation is of type UUID (annotated in JSdoc with @type {UUId})
* Added controller.showRecords variants that specify the records using a QBSelect statement
* Made scopes lay loading, to improve performance |