diff --git a/docs/API/ClassClass.md b/docs/API/ClassClass.md index 5fbd27fe7701a7..87ed164dc29c90 100644 --- a/docs/API/ClassClass.md +++ b/docs/API/ClassClass.md @@ -4,7 +4,7 @@ title: Class --- -When a user class is [defined](Concepts/classes.md#class-definition) in the project, it is loaded in the 4D language environment. A class is an object itself, of "Class" class, which has properties and a function. +When a user class is [defined](../Project/code-overview.md#creating-classes) in the project, it is loaded in the 4D language environment. A class is an object itself, of "Class" class, which has properties and a function. diff --git a/docs/API/SessionClass.md b/docs/API/SessionClass.md index 55d3c5f064a98b..04140e68c650c3 100644 --- a/docs/API/SessionClass.md +++ b/docs/API/SessionClass.md @@ -903,7 +903,7 @@ When a `Session` object is created, the `.storage` property is empty. This prope In client/server, the `.storage` object of the remote user session is **not** the same on the server and on the client. -When a remote user session and a web session are [shared using an OTP](../Desktop/sessions.md#sharing-a-desktop-session-for-web-accesses), they also share the same `.storage` object on the server, even if the OTP was [created](#createotp) from the session on the client side. +When a remote user session and a web session are [shared using an OTP](../Desktop/sessions.md#sharing-a-remote-session-for-web-accesses), they also share the same `.storage` object on the server, even if the OTP was [created](#createotp) from the session on the client side. :::tip diff --git a/docs/Concepts/classes.md b/docs/Concepts/classes.md index c3bf9f7d57d8cf..ba337361bf59b2 100644 --- a/docs/Concepts/classes.md +++ b/docs/Concepts/classes.md @@ -71,7 +71,7 @@ Available classes are accessible from their class stores. Two class stores are a -The `cs` command returns the user class store for the current project or component. It returns all user classes [defined](#class-definition) in the opened project or component. By default, only project [ORDA classes](ORDA/ordaClasses.md) are available. +The `cs` command returns the user class store for the current project or component. It returns all user classes [defined](../Project/code-overview.md#creating-classes) in the opened project or component. By default, only project [ORDA classes](ORDA/ordaClasses.md) are available. #### Example @@ -974,7 +974,7 @@ The `server` keyword is useless for [ORDA data model functions](../ORDA/ordaClas `server` function parameters and result must be [**streamable**](./dt_object.md#streaming-support). For example, [4D.Datastore](../API/DataStoreClass.md), [File handle](../API/FileHandleClass.md), or [WebServer](../API/WebServerClass.md) are non-streamable classes but [4D.File](../API/FileClass.md) is streamable. -This feature is particularly useful in the context of [remote user sessions](../Desktop/sessions.md#remote-user-sessions), allowing you to implement the business logic in a [session singleton](#shared-or-session-singleton-functions) to share it accross all the processes of the session, thus extending the functionalities of the [`Session`](../commands/session) command. In this case, you might want the relevant business logic to be executed **on the server** so that all the session information is gathered on the server. +This feature is particularly useful in the context of [remote user sessions](../Desktop/sessions.md#remote-user-sessions), allowing you to implement the business logic in a [session singleton](../Concepts/classes.md#session-singleton) to share it accross all the processes of the session, thus extending the functionalities of the [`Session`](../commands/session) command. In this case, you might want the relevant business logic to be executed **on the server** so that all the session information is gathered on the server. By default, shared or session singleton functions are executed locally. Adding the `server` keyword in the class function definition makes 4D use the singleton instance on the server. Note that this can result of an instantiation of the singleton on the server if no instance exists yet. diff --git a/docs/Concepts/methods.md b/docs/Concepts/methods.md index 8273a1b66f4334..9083e73d5daeeb 100644 --- a/docs/Concepts/methods.md +++ b/docs/Concepts/methods.md @@ -16,11 +16,11 @@ In the 4D Language, there are several categories of methods. The category depend |Type|Calling context|Accepts parameters|Description| |----|-----|-----|----| -|**Project method**|On demand, when the project method name is called (see [Calling project methods](#calling-project-methods))|Yes|Can contain any code to execute any custom actions. Once a project method is created, it becomes part of the language of the project.| +|**Project method**|On demand, when the project method name [is called](../Project/project-method-properties.md)|Yes|Can contain any code to execute any custom actions. Once a project method is created, it becomes part of the language of the project.| |**Object (widget) method**|Automatic, when an event involves the object to which the method is attached|No|Property of a form object (also called widget)| |**Form method**|Automatic, when an event involves the form to which the method is attached|No|Property of a form. You can use a form method to manage data and objects, but it is generally simpler and more efficient to use an object method for these purposes.| |**Trigger** (aka *Table method*)|Automatic, each time that you manipulate the records of a table (Add, Delete and Modify)|No|Property of a table. Triggers are methods that can prevent "illegal" operations with the records of your database.| |**Database method**|Automatic, when a working session event occurs|Yes (predefined)|There are 16 database methods in 4D. | -|**Class**|Automatically called when an object of the class is instantiated or when a function of the class is executed on an object instance in any other methods or in a [database field](../Develop/field-properties.md#class).|yes (class functions)|A **Class** is used to declare and configure the class [constructor](./classes.md#class-constructor), [properties](./classes.md#property*), and [functions](./classes.md#function) of objects. See [**Classes**](classes.md) | +|**Class**|Automatically called when an object of the class is instantiated or when a function of the class is executed on an object instance in any other methods or in a [database field](../Develop/field-properties.md#class).|yes (class functions)|A **Class** is used to declare and configure the class [constructor](./classes.md#class-constructor), [properties](./classes.md#property), and [functions](./classes.md#function) of objects. See [**Classes**](classes.md) | diff --git a/docs/Desktop/clientServer.md b/docs/Desktop/clientServer.md index fd25b4d95b2b80..0e398819487b64 100644 --- a/docs/Desktop/clientServer.md +++ b/docs/Desktop/clientServer.md @@ -147,8 +147,8 @@ The following table summarizes where the code is executed by default and how to |[User class functions](../Concepts/classes.md#function)|local|n/a| |[Shared or session singleton function](../Concepts/classes.md#singleton-classes)|local|use `server` keyword in function definition| |Trigger|server|n/a| -|Project method called from a client|client|check [**Execute on server** option](../Project/project-method-properties.md#execute-on-server). The code is executed in the twin process of the [user session process](./sessions.md#remote-user-sessions-remote-user-sessions)| -|||call [`Execute on server`](../commands/execute-on-server) command. The code is executed in the [Stored procedures session](./sessions.md#stored-procedure-sessions-stored-procedure-sessions) | +|Project method called from a client|client|check [**Execute on server** option](../Project/project-method-properties.md#execute-on-server). The code is executed in the twin process of the [user session process](./sessions.md#remote-user-sessions)| +|||call [`Execute on server`](../commands/execute-on-server) command. The code is executed in the [Stored procedures session](./sessions.md#stored-procedure-sessions) | |Project method called from a stored procedure on the server|server|call [`EXECUTE ON CLIENT`](../commands/execute-on-client) command. The target client must have been [registered](../commands/register-client) | |Object method|local|n/a| |Database methods:|server|n/a| diff --git a/docs/Desktop/sessions.md b/docs/Desktop/sessions.md index bb572fa20be8de..9b06b610141f74 100644 --- a/docs/Desktop/sessions.md +++ b/docs/Desktop/sessions.md @@ -179,7 +179,7 @@ A standalone session is the single-user session running when you work locally wi ### Usage -The standalone session can be used to develop and test your client/server application and its interaction with web sessions and [OTP sharing](#sharing-a-desktop-session-for-web-accesses). You can use the `session` object in your code in standalone session just as the `session` object of the remote sessions. +The standalone session can be used to develop and test your client/server application and its interaction with web sessions and [OTP sharing](#sharing-a-remote-session-for-web-accesses). You can use the `session` object in your code in standalone session just as the `session` object of the remote sessions. ### Availability diff --git a/docs/Extensions/develop-components.md b/docs/Extensions/develop-components.md index f8e876eb01099b..1782b7b8af47c7 100644 --- a/docs/Extensions/develop-components.md +++ b/docs/Extensions/develop-components.md @@ -69,7 +69,7 @@ You can edit a component code as long as the following conditions are met: - the host project is running interpreted, - the component has been [loaded in interpreted mode](../Project/components.md#interpreted-and-compiled-components) and the source code is available, -- the component files are stored locally (i.e. they are not [downloaded from GitHub](../Project/components.md#adding-a-github-dependency)). +- the component files are stored locally (i.e. they are not [downloaded from GitHub](../Project/components.md#adding-a-github-or-gitlab-dependency)). In this context, you can open, edit, and save your component code in the Code editor on the host project from two places: diff --git a/docs/Extensions/overview.md b/docs/Extensions/overview.md index 286c18b636e7dc..76cce22a98b29d 100644 --- a/docs/Extensions/overview.md +++ b/docs/Extensions/overview.md @@ -19,8 +19,7 @@ The 4D [project architecture](../Project/architecture.md) is open and can be ext 4D proposes various components to the 4D community, covering many development needs. All 4D components can be found on the [**4D github repository**](https://github.com/4d). -A subset of these components is listed by default in the Github panel of the [Dependency Manager](../Project/components.md#adding-a-github-dependency), including: - including: +A subset of these components is listed by default in the Github panel of the [Dependency Manager](../Project/components.md#adding-a-github-or-gitlab-dependency), including: |Component|Github repository|Description|Main Features| |---|---|---|---| diff --git a/docs/FormEditor/properties_FormProperties.md b/docs/FormEditor/properties_FormProperties.md index 9e0ff0c8d7b9da..a6b0b1b4d0df13 100644 --- a/docs/FormEditor/properties_FormProperties.md +++ b/docs/FormEditor/properties_FormProperties.md @@ -45,7 +45,7 @@ A CSS file defined at the form level will override default style sheet(s). For m ## Form Class -Name of an existing [user class](../Concepts/classes.md#class-definition) to associate to the form. The user class can belong to the host project or to a [component](../Extensions/develop-components.md#sharing-of-classes), in which case the formal syntax is "[*componentNameSpace*](../settings/general.md#component-namespace-in-the-class-store).className". +Name of an existing [user class](../Project/code-overview.md#user-classes) to associate to the form. The user class can belong to the host project or to a [component](../Extensions/develop-components.md#sharing-of-classes), in which case the formal syntax is "[*componentNameSpace*](../settings/general.md#component-namespace-in-the-class-store).className". Associating a class to the form provides the following benefits: diff --git a/docs/ORDA/ordaClasses.md b/docs/ORDA/ordaClasses.md index b76af78426d75d..e6efa26ad6d232 100644 --- a/docs/ORDA/ordaClasses.md +++ b/docs/ORDA/ordaClasses.md @@ -31,7 +31,7 @@ Thanks to this feature, the entire business logic of your 4D application can be ![](../assets/en/ORDA/api.png) -In addition, 4D [automatically pre-creates](#creating-classes) the classes for each available data model object. +In addition, 4D [automatically pre-creates](../Project/code-overview.md#creating-classes) the classes for each available data model object. ## Architecture @@ -49,7 +49,7 @@ All ORDA data model classes are exposed as properties of the **`cs`** class stor |cs.*DataClassName*Entity|cs.EmployeeEntity|[`dataClass.get()`](API/DataClassClass.md#get), [`dataClass.new()`](API/DataClassClass.md#new), [`entitySelection.first()`](API/EntitySelectionClass.md#first), [`entitySelection.last()`](API/EntitySelectionClass.md#last), [`entity.previous()`](API/EntityClass.md#previous), [`entity.next()`](API/EntityClass.md#next), [`entity.first()`](API/EntityClass.md#first), [`entity.last()`](API/EntityClass.md#last), [`entity.clone()`](API/EntityClass.md#clone)| |cs.*DataClassName*Selection|cs.EmployeeSelection|[`dataClass.query()`](API/DataClassClass.md#query), [`entitySelection.query()`](API/EntitySelectionClass.md#query), [`dataClass.all()`](API/DataClassClass.md#all), [`dataClass.fromCollection()`](API/DataClassClass.md#fromcollection), [`dataClass.newSelection()`](API/DataClassClass.md#newselection), [`entitySelection.drop()`](API/EntitySelectionClass.md#drop), [`entity.getSelection()`](API/EntityClass.md#getselection), [`entitySelection.and()`](API/EntitySelectionClass.md#and), [`entitySelection.minus()`](API/EntitySelectionClass.md#minus), [`entitySelection.or()`](API/EntitySelectionClass.md#or), [`entitySelection.orderBy()`](API/EntitySelectionClass.md#or), [`entitySelection.orderByFormula()`](API/EntitySelectionClass.md#orderbyformula), [`entitySelection.slice()`](API/EntitySelectionClass.md#slice), `Create entity selection`| -> ORDA user classes are stored as regular class files (.4dm) in the Classes subfolder of the project [(see below)](#class-files). +> ORDA user classes are stored as regular class files (.4dm) in the Classes subfolder of the project. Also, object instances from ORDA data model user classes benefit from their parent's properties and functions: @@ -289,7 +289,7 @@ End if When creating or editing data model classes, you must pay attention to the following rules: - Since they are used to define automatic DataClass class names in the **cs** [class store](Concepts/classes.md#class-stores), 4D tables must be named in order to avoid any conflict in the **cs** namespace. In particular: - - Do not give the same name to a 4D table and to a [user class name](../Concepts/classes.md#class-definition). If such a case occurs, the constructor of the user class becomes unusable (a warning is returned by the compiler). + - Do not give the same name to a 4D table and to a [user class name](../Project/code-overview.md#creating-classes). If such a case occurs, the constructor of the user class becomes unusable (a warning is returned by the compiler). - Do not use a reserved name for a 4D table (e.g., "DataClass"). - When defining a class, make sure the [`Class extends`](../Concepts/classes.md#class-extends-classname) statement exactly matches the parent class name (remember that they're case sensitive). For example, `Class extends EntitySelection` for an entity selection class. diff --git a/docs/Project/components.md b/docs/Project/components.md index f72034f57c23f1..81033161b5510b 100644 --- a/docs/Project/components.md +++ b/docs/Project/components.md @@ -53,7 +53,7 @@ This section describes how to work with components in the **4D** and **4D Server To load a component in your 4D project, you can either: - copy the component files in the [**Components** folder of your project](architecture.md#components) (interpreted component package folders must be suffixed with ".4dbase", see above), -- or, declare the component in the **dependencies.json** file of your project; this is done automatically for local files when you [**add a dependency using the Dependency manager interface**](#adding-a-github-dependency). +- or, declare the component in the **dependencies.json** file of your project; this is done automatically for local files when you [**add a dependency using the Dependency manager interface**](#adding-a-github-or-gitlab-dependency). Components declared in the **dependencies.json** file can be stored at different locations: @@ -272,7 +272,7 @@ When a release is created in GitHub or GitLab, it is associated to a **tag** and :::note -If you select the [**Follow 4D Version**](#defining-a-github-dependency-version-range) dependency rule, you need to use a [specific naming convention for the tags](#naming-conventions-for-4d-version-tags). +If you select the [**Follow 4D Version**](#defining-a-dependency-version-range) dependency rule, you need to use a [specific naming convention for the tags](#naming-conventions-for-4d-version-tags). ::: @@ -563,7 +563,7 @@ Once the connection is established, an icon ![dependency-gitlogo](../assets/en/P :::note -If the component is stored on a [private repository](#private-repositories) and your personal token is missing, an error message is displayed and a **Add a personal access token...** button is displayed (see [Providing your access token](#providing-your-access-token)). +If the component is stored on a [private repository](#authentication-and-tokens) and your personal token is missing, an error message is displayed and a **Add a personal access token...** button is displayed (see [Providing your access token](#providing-your-access-token)). ::: @@ -614,7 +614,7 @@ Dependencies are regularly checked for updates on GitHub. This checking is done :::note -If you provide an [access token](#providing-your-github-access-token), checks are performed more frequently, as GitHub then allows a higher frequency of requests to repositories. +If you provide an [access token](#providing-your-access-token), checks are performed more frequently, as GitHub then allows a higher frequency of requests to repositories. ::: diff --git a/docs/ViewPro/getting-started.md b/docs/ViewPro/getting-started.md index d60bf44e2e4c18..ca7fd5ab1b3e35 100644 --- a/docs/ViewPro/getting-started.md +++ b/docs/ViewPro/getting-started.md @@ -29,11 +29,11 @@ The easiest way to install 4D View Pro in an opened project is to use the Depend 1. Open the [Dependency Manager](../Project/components.md) window. 2. Click on the **+** button to add a component. 3. Click on the **GitHub** tab. -4. Select **4d/4D-ViewPro** in the [default list of components](../Extensions/overview.md) and (recommended) **Follow 4D version** as [Dependency rule](../Project/components.md#defining-a-github-dependency-version-range), then click **Add**. +4. Select **4d/4D-ViewPro** in the [default list of components](../Extensions/overview.md) and (recommended) **Follow 4D version** as [Dependency rule](../Project/components.md#defining-a-dependency-version-range), then click **Add**. ![](../assets/en/ViewPro/install.png) -Once you restart the project, the 4D View Pro component is installed as a [Github dependency](../Project/components.md#adding-a-github-dependency). +Once you restart the project, the 4D View Pro component is installed as a [Github dependency](../Project/components.md#adding-a-github-or-gitlab-dependency). 4D View Pro requires a license. You need to activate this license in your application in order to use its features. When using this component without a license, the contents of an object that requires a 4D View Pro feature are not displayed at runtime, an error message is displayed instead: diff --git a/docs/code-editor/write-class-method.md b/docs/code-editor/write-class-method.md index 081001ee44f424..aede1805cb4fbf 100644 --- a/docs/code-editor/write-class-method.md +++ b/docs/code-editor/write-class-method.md @@ -27,7 +27,7 @@ Each Code Editor window has a toolbar that provides instant access to basic func | Element | Icon | Description | |---|---|---| -| **Method execution** | ![execute-method](../assets/en/code-editor/execute-method.png) | When working with methods, each Code Editor window has a button that can be used to run the current method. Using the menu associated with this button, you can choose the type of execution:For more information on method execution, see [Calling Project Methods](../Concepts/methods.md#calling-project-methods). | +| **Method execution** | ![execute-method](../assets/en/code-editor/execute-method.png) | When working with methods, each Code Editor window has a button that can be used to run the current method. Using the menu associated with this button, you can choose the type of execution:For more information on method execution, see [Project Methods](../Project/project-method-properties.md). | | **Find in method** | ![search-icon](../assets/en/code-editor/search.png) | Displays the [*Search* area](#find-and-replace). | | **Macros** | ![macros-button](../assets/en/code-editor/macros.png) | Inserts a macro at the selection. Click the dropdown arrow to display a list of available macros. For more information on how to create and instantiate macros, see [Macros](#macros). | | **Expand all / Collapse all** | ![expand-collapse-button](../assets/en/code-editor/expand-collapse-all.png) | These buttons allow expanding or collapsing all the control flow structures of the code. | diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/FormObjects/dropdownList_Overview.md b/i18n/ja/docusaurus-plugin-content-docs/current/FormObjects/dropdownList_Overview.md index 8b23951c7e4c99..be9bbddb3a0300 100644 --- a/i18n/ja/docusaurus-plugin-content-docs/current/FormObjects/dropdownList_Overview.md +++ b/i18n/ja/docusaurus-plugin-content-docs/current/FormObjects/dropdownList_Overview.md @@ -172,7 +172,3 @@ Form.myDrop.index //3 [On After Edit](../Events/onAfterEdit.md) - [On After Keystroke](../Events/onAfterKeystroke.md) - [On Before Keystroke](../Events/onBeforeKeystroke.md) - [On Begin Drag Over](../Events/onBeginDragOver.md) - [On Clicked](../Events/onClicked.md) - [On Data Change](../Events/onDataChange.md) - [On Drag Over](../Events/onDragOver.md) - [On Drop](../Events/onDrop.md) - [On Header](../Events/onHeader.md) - [On Load](../Events/onLoad.md) - [On Mouse Enter](../Events/onMouseEnter.md) - [On Mouse Leave](../Events/onMouseLeave.md) - [On Mouse Move](../Events/onMouseMove.md) - [On Printing Break](../Events/onPrintingBreak.md) - [On Printing Detail](../Events/onPrintingDetail.md) - [On Printing Footer](../Events/onPrintingFooter.md) - [On Unload](../Events/onUnload.md) - [On Validate](../Events/onValidate.md) -## Supported Events - -[On After Edit](../Events/onAfterEdit.md) - [On After Keystroke](../Events/onAfterKeystroke.md) - [On Before Keystroke](../Events/onBeforeKeystroke.md) - [On Begin Drag Over](../Events/onBeginDragOver.md) - [On Clicked](../Events/onClicked.md) - [On Data Change](../Events/onDataChange.md) - [On Drag Over](../Events/onDragOver.md) - [On Drop](../Events/onDrop.md) - [On Header](../Events/onHeader.md) - [On Load](../Events/onLoad.md) - [On Mouse Enter](../Events/onMouseEnter.md) - [On Mouse Leave](../Events/onMouseLeave.md) - [On Mouse Move](../Events/onMouseMove.md) - [On Printing Break](../Events/onPrintingBreak.md) - [On Printing Detail](../Events/onPrintingDetail.md) - [On Printing Footer](../Events/onPrintingFooter.md) - [On Unload](../Events/onUnload.md) - [On Validate](../Events/onValidate.md) - diff --git a/versioned_docs/version-21/FormEditor/forms.md b/versioned_docs/version-21/FormEditor/forms.md index 1d8c4eb160a7f4..7d6cd1f148587c 100644 --- a/versioned_docs/version-21/FormEditor/forms.md +++ b/versioned_docs/version-21/FormEditor/forms.md @@ -136,4 +136,4 @@ To stop inheriting a form, select `\` in the Property List (or " " in JSON ## Supported Events -[On Activate](../Events/onActivate.md) - [On After Edit](../Events/onAfterEdit.md) - [On After Keystroke](../Events/onAfterKeystroke.md) - [On Before Keystroke](../Events/onBeforeKeystroke.md) - [On Begin Drag Over](../Events/onBeginDragOver.md) - [On Bound Variable Change](../Events/onBoundVariableChange.md) - [On Clicked](../Events/onClicked.md) - [On Close Box](../Events/onCloseBox.md) - [On Close Detail](../Events/onCloseDetail.md) - [On Data Change](../Events/onDataChange.md) - [On Deactivate](../Events/onDeactivate.md) - [On Display Detail](../Events/onDisplayDetail.md) - [On Double Clicked](../Events/onDoubleClicked.md) - [On Drop](../Events/onDrop.md) - [On Header](../Events/onHeader.md) - [On Load](../Events/onLoad.md) - [On Load Record](../Events/onLoadRecord.md) - [On Losing focus](../Events/onLosingFocus.md) - [On Menu Selected](../Events/onMenuSelected.md) - [On Mouse Enter](../Events/onMouseEnter.md) - [On Mouse Leave](../Events/onMouseLeave.md) - [On Mouse Move](../Events/onMouseMove.md) - [On Open Detail](../Events/onOpenDetail.md) - [On Outside Call](../Events/onOutsideCall.md) - [On Page Change](../Events/onPageChange.md) - [On Plug in Area](../Events/onPluginArea.md) - [On Printing Break](../Events/onPrintingBreak.md) - [On Printing Detail](../Events/onPrintingDetail.md) - [On Printing Footer](../Events/onPrintingFooter.md) - [On Resize](../Events/onResize.md) - [On Selection Change](../Events/onSelectionChange.md) - [On Timer](../Events/onTimer.md) - [On Unload](../Events/onUnload.md) - [On Validate](../Events/onValidate.md) \ No newline at end of file +[On Activate](../Events/onActivate.md) - [On After Edit](../Events/onAfterEdit.md) - [On After Keystroke](../Events/onAfterKeystroke.md) - [On Before Keystroke](../Events/onBeforeKeystroke.md) - [On Begin Drag Over](../Events/onBeginDragOver.md) - [On Bound Variable Change](../Events/onBoundVariableChange.md) - [On Clicked](../Events/onClicked.md) - [On Close Box](../Events/onCloseBox.md) - [On Close Detail](../Events/onCloseDetail.md) - [On Data Change](../Events/onDataChange.md) - [On Deactivate](../Events/onDeactivate.md) - [On Display Detail](../Events/onDisplayDetail.md) - [On Double Clicked](../Events/onDoubleClicked.md) - [On Drop](../Events/onDrop.md) - [On Header](../Events/onHeader.md) - [On Load](../Events/onLoad.md) - [On Load Record](../Events/onLoadRecord.md) - [On Losing focus](../Events/onLosingFocus.md) - [On Menu Selected](../Events/onMenuSelected.md) - [On Mouse Enter](../Events/onMouseEnter.md) - [On Mouse Leave](../Events/onMouseLeave.md) - [On Mouse Move](../Events/onMouseMove.md) - [On Open Detail](../Events/onOpenDetail.md) - [On Outside Call](../Events/onOutsideCall.md) - [On Page Change](../Events/onPageChange.md) - [On Plug in Area](../Events/onPlugInArea.md) - [On Printing Break](../Events/onPrintingBreak.md) - [On Printing Detail](../Events/onPrintingDetail.md) - [On Printing Footer](../Events/onPrintingFooter.md) - [On Resize](../Events/onResize.md) - [On Selection Change](../Events/onSelectionChange.md) - [On Timer](../Events/onTimer.md) - [On Unload](../Events/onUnload.md) - [On Validate](../Events/onValidate.md) \ No newline at end of file