Brochure of new features: new features of WINDEV Mobile
Benefit from the 180 new features of version 23
WINDEV Mobile 23 includes most of the new common features presented at the beginning of this documentation.
New controls, evolutions on existing controls, new features in the editors, new features of WLanguage and HFSQL: your teams become more efficient.
Reminder: transfer the existing WINDEV applications onto mobile in a few hours
You already work with WINDEV applications?
Even if these applications have been developed years ago, they are compatible with the mobile devices!
Your existing applications can be transferred onto a mobile device in a few hours or in a few days.
Your teams are efficient in WLanguage? Then they have the ability to develop for mobile.
Creating applications for Android, iOS or UWP is child's play.
Your existing applications are compatible: code but also windows (even though they will have to be resized), analyses, queries, data, ...
The HFSQL database (as well as the HyperFileSQL database) is natively compatible with the mobile devices: you can immediately embed the data (and indexes).
You've made the right choice with WINDEV and WINDEV Mobile!
Go of WINDEV Mobile in WINDEV
As you already know, there is no need to exit from the WINDEV environment to go to WINDEV Mobile.
The WINDEV environment enables the features of WINDEV Mobile (you must own a WINDEV license and a WINDEV Mobile license).
In version 23, you even have the ability to use the same internal window in a WINDEV window and in a WINDEV Mobile window.
Furthermore, a WINDEV window and a WINDEV Mobile window can be based on the same template.
HTML control: revolution
In version 23, the HTML control was enhanced.
Forget the old HTML control, a new control is being introduced in version 23!
Power is what you need.
HTML control: back-end edit
The content of an HTML control on mobile can be typed in a WINDEV application via the Word Processing control in "HTML edit" mode or on a WEBDEV page.
This is used to easily fill the content of mobile application.
It is easy to create an ergonomic back office for typing contents for mobile.
HTML control: interaction with WLanguage
From the content of an HTML control, you have the ability to call WLanguage code, to open another window, to perform a calculation in real time...
HTML control: size matters!
In version 23, the height of HTML control can automatically adapt to the text found in the control.
The control is automatically enlarged or reduced according to the text found in it.
The controls found below the HTML control are automatically repositioned via the new Layout control.
You have the ability to define a maximum height for the HTML control. In this case, a scrollbar may appear.
Reminder: the minimum control size corresponds to the size in edit.
HTML control: new WLanguage "End of load" process
The content loaded in an HTML control can even be a page of an Internet site!
Loading this page may take quite a long time (overloaded Web server, ...).
It may be interesting for the application to find out whether the entire page was loaded, to display a comment for example.
To do so, the new "End of load" programming event is available in version 23.
HTML control: new WLanguage "Click on link" process
It may be interesting for the application to find out whether a link of HTML text was clicked by the end user.
To do so, the new "Click on link" programming event is available in version 23.
Displaying formatted texts on mobile: logs, ...
The new HTML control simplifies the use of formatted texts, such as paper articles.
Displaying formatted texts on mobile: typing text
The texts to displayed can be easily typed from a back-office written in WINDEV or WEBDEV...
The texts can also be retrieved from an existing HTML document.
New Layout control: on mobile as well!
The new Layout control found in version 23 is a container that contains controls.
The controls found in the Layout control are automatically reorganized, either horizontally or vertically, according to change of control visibility (a control becomes invisible) or according to change of control size (when the content changes).
The Layout controls can be nested.
Mobile looper: variable row content
Loopers with variable presentation!
This new feature that will delight the developers of mobile applications: the ability to customize appearance of looper rows by programming.
In version 23, a different internal window can be defined for each looper row.
This allows you to display different controls in each row.
This is also used to display different presentations for each row.
Mobile looper: the height of each row adapts to its content
This new feature that will delight the developers of mobile applications: when a control is enlarged in height, the height of looper row can automatically adapt.
All you have to do is specify it in the 7 tabs.
Control: automatic size
In version 23, the height of a static control, edit control, radio button control, check box control (and HTML control) can be variable and defined by its content at run time. The number of control rows is automatically increased at run time.
Multiline static with ellipsis
The content of a multiline Static control can be longer than the control itself.
In this case, you have the ability to display 3 points ... at the end of control to indicate that the text is truncated.
Here, the text is too big for the non-extensible area: three points "..." appear
In version 23, the "composite chart" control is available on mobile.
A Composite Chart control is used to represent several types of different charts in the same control.
Chart with time scale
In version 23, the new feature for displaying temporal X coordinates with intuitive behavior is available on mobile.
The scale of hours, days, months is automatic: no programming is required
The zoom is available on this scale and it changes the scale factor: for example, zooming on a month displays the days.
The control is tricky: zooming on a day displays the hours.
The change of unit is automatically managed by the Chart control: no programming is required.
New native "container" control: to insert controls coming from SDK
The Native Container control is used to manage the controls not created with WINDEV Mobile.
In version 23, you can easily include in a window controls coming from an external module such as SDK.
All you have to do is use the new Native Container control.
The Container control returns the handle (UIView in iOS, View Identifier in Android) expected by the SDK.
Proposing a subscription
It may be interesting to propose a subscription (with fee) in the mobile applications: subscription to a magazine, payment by installment, access to a selected content, access to new features, ...
The version 23 can also be used to manage the recurring payment to subscriptions.
New WLanguage functions
The subscription is directly manage by the stores. A new set of WLanguage functions ans constants is used to manage the subscription: inAppCheckSubscription
What is a beacon used for?
A beacon is a hardware transmitter that can "dialog" on a small perimeter with smartphones or tablets via a Bluetooth connection.
The technology used is the one of BTLE (Bluetooth Low Energy).
The beacon can for example indicate the proximity of an art masterpiece in a museum; the application can display the explanation text, or it can start a video or an audio file.
On the commercial side, a beacon can trigger a message regarding a bargain on a nearby product.
A beacon can also inform a user that he is not far away from a store that sells a product he is looking for.
For more details, see:
Beacon: Operating mode
An application asks the phone to be warned when one or more beacons are found nearby.
This application can be closed immediately, therefore it consumes no battery.
When the phone detects a beacon, it restarts the application and transmits the beacon information.
Furthermore, the phone warns the application when it exits from the emission area of Beacon.
The beacon identifier is called UUID.
For more details, see:
Beacon: how to program in WLanguage
The new family of WLanguage Beacon functions is used to trigger the detection in background and to ask for information to the detected beacons, ...
The functions are used to retrieve the UUID, the distance of beacon, ...
For more details, see:
Telemetry on mobile: type of communication
In version 23, the telemetry is available on Mobile.
In addition to the information already collected by the telemetry (see the online help for more details), the version 23 collects information about the type of communication used by the devices.
These communications can be established by Wifi, Edge, 2G, 3G, 4G, ...
This type of information allows you to modulate the amount of data transmitted in a future version.
Evolutions of layouts: new programming events
The concept of layout allows you to create a single application that will behave differently according to the screen size and orientation.
In version 23, a new programming event is being introduced: the "Changing layout" code.
This event is called when the layout is modified.
This allows you to improve the settings by programming.
Evolutions of layouts: table control modified by layout
When a viewing table is found in a layout, it becomes possible to specify parameters for each column.
This allows you to act on the column width and visibility.
This is useful when changing mode (portrait/landscape) for example, to automatically display more columns in landscape mode.
Evolutions of layouts: height of looper row
In a looper, the row height can be defined by layout.
Pull to Refresh on window
The "Pull to Refresh" feature, that consists in pulling the window to the bottom with the finger, is modernized in the applications created with WINDEV Mobile 23.
There is nothing to modify.
Moving the finger on the window is used to refresh it
Customizing the standard Dialog, YesNo, Info and Error windows
The WLanguage YesNo
functions are often used in programming.
These functions open a standard dialog box.
In version 23, it becomes possible to customize these windows, by applying the skin template of application for example.
You also have the ability to provide a specific window.
Custom Dialog window
Multi-resolutions image editor (multi dpi)
As you already know, the mobile phones propose different screen resolutions.
The image clearness will differ according to the mobile phone.
In version 23, the image editor is used to edit the same image in different resolutions.
The image editor automatically generates the necessary images from the image with best definition.
The images with different resolutions can be stored in a single image file whose format is ".wdpic".
An image control will always be displayed properly via its generated variants
Simulator: presence of keyboard
In version 23, the simulator displays the virtual keyboard when necessary.
This allows you to easily validate the interfaces.
The WLanguage functions for compressing and decompressing data in memory are being introduced in version 23 of WINDEV Mobile.
This is very useful when exchanging data.
The WLanguage dCopyWindowImage
function, that is used to perform a screen shot by programming, is available in version 23.
The function returns an image variable that is used to perform several processes: backup in a file, annotation,...
In version 23, PowerStatus
is used to find out the battery status.
This function is used to find out:
- whether the mobile is operating on battery or on mains,
- the percentage of battery load.
This allows you not to run a process consuming a lot of battery if the battery is low.
Automatic wait window
The new WinWait function is used to display a preset wait window.
The window respects the skin template of application and it displays an infinite progress bar.
Who am I? Which device am I using?
The new WLanguage SysDeviceInfo
function is used to find out the device manufacturer and model: Apple iPhone 8, Samsung, ...
Depending on the device, some features will be started or not: 3D recognition, RFID, ...
Running a process in background
Continuing to run a process when the application is in background is very useful on mobile: appointment reminder (display a notification), turnover calculation in real time, data retrieval, ...
The process must be found in a procedure.
All you have to do is specify the frequency at which this procedure will be run.
Between the calls, the procedure consumes no battery and no CPU.
Several developers will be pleased with this new feature of version 23!
The time-out must be specified in the code editor, in the window for configuring the procedure automation.
New skin templates
The version 23 of WINDEV Mobile proposes 2 new templates that can be freely used and modified for your projects.
And every quarter, find a new template in the LST.
Let's remind you that your existing WINDEV code, your windows, ... are compatible with iPhone and iPad.
Resize your windows, perform some changes, and that's it, in a few hours or in a few days, you get outstanding applications for iPhone and iPad.
Your teams do not have to learn a new language because after constant innovations, WLanguage is a universal language: iOS, Windows, Linux, Android, Web, Mac, Windows 10 Mobile, ...
You made the right choice!
iOS benefits from the common new features of version 23 and from the new features common to the mobile devices: Layout control, display of formatted HTML text (paper articles, ...), subscription InApp purchases, link with SDKs, variable-height looper, multi-DPI images, ...
Support for Apple Watch serie 3
An Apple Watch allows you to run useful applications: Information about the current customer, display of closest stores proposing the requested product, overview of monthly sales, alert on a given number, display of business objective, ...
The version 23 of WINDEV Mobile allows you to create applications for the Apple Watch.
In most cases, the applications for Apple Watch are easier than the usual applications on iPhone.
More than 250 WLanguage functions are already available in this version.
On the series 3 equipped with integrated SIM chip, an application written in WINDEV Mobile 23 can display a number to call. The user will only have to validate.
The new iOS 11 version is supported by WINDEV Mobile 23.
iPhone 8, 8 plus and X
The new iPhone 8, 8 Plus and X are supported by WINDEV Mobile 23.
iPhone X and 3D facial recognition in your applications
The iPhone X includes a scan for 3D facial recognition.
The applications written with WINDEV Mobile 23 can check the user identity via this feature.
OAuth authentication: Facebook, Google, Linkedin, Instagram, Dropbox, ...
In version 23, the automatic authentication via a oAuth protocol, proposed by several applications, is being introduced on iOS.
The WLanguage Proxy
function allows you to specify the proxy that will be used during an Internet communication by HTTP request.
The functions for brightness management are being introduced in version 23 in iOS.
This allows you for example to increase the brightness when displaying a QR Code for scan.
For more details, see:
The WLanguage functions for speech recognition are available for iOS in version 23.
WLanguage ControlCreate function
6 new types for iOS and 48 new constants
The version 23 proposes 6 new types for iOS and 48 new constants.
36 new WLanguage functions supported in iOS
36 new WLanguage functions are being introduced for iOS in version 23:
Developing in Android has never been as powerful as with WINDEV Mobile 23. You benefit from powerful new features that come in addition to existing ones.
Android benefits from the common new features of version 23 and from the new features common to the mobile devices: Layout control, display of formatted HTML text (paper articles, ...), subscription InApp purchases, link with SDKs, variable-height looper, multi-DPI images, ...
This new feature that will please the developers of Android applications: the parallel tasks are available in version 23.
The management of threads by programming becomes easier.
type appears in the language in Android as well as the ParallelTaskXXX functions.
Security: Obfuscation of generated code
The code generated for the Android applications can be obfuscated (made illegible) in order to protect it against decompilation and reverse-engineering operations.
The strings are also encrypted: identifiers...
Keyboard appearance: Automatic window scroll
In version 23, when a keyboard appears on the screen, the window found on the screen is positioned as best as possible to allow the users to perform inputs in the controls that may be positioned underneath the keyboard.
Opacity on system bar
To create modern applications, you now have the ability to define the opacity of system bar.
The system bar is translucent
Sliding menu stacked to the Action Bar
The sliding menu covers the Action Bar
The sliding menus can now appear above the Action Bar instead of below!
Chart: style by series
The charts on Android are enhanced in version 23.
It becomes possible to manage several parameters for each series: opacity, type of line, behavior for the values.
Chart: Crosshair on mobile
The crosshair in the charts appears for Android in version 23.
The end user only has to press on the chart to benefit from this help.
The charts on mobile propose a crosshair that simplifies the reading
Chart: smoothing lines
In version 23, the chart lines can be smoothed without programming.
and it turns: Circular progress bar
The circular progress bars are very popular.
This type of progress bar is proposed in version 23.
The Numeric type is available for Android.
This type of variable is used to perform precise calculations on very big or very small numbers.
When declaring a numeric variable, the developer can specify the number of significant digits found in the integer part and in the decimal part.
A numeric can contain up to 38 significant digits.
Signed integer on 1 and 2 bytes
The Signed 1-byte integer and the Signed 2-byte integer variables are available for Android.
These variables store values included between -128 and 127 for the 1-byte integer and between -32.768 and 32.767 for the 2-byte integer.
The Record variables are available for Android.
This type of variable is used to easily handle several database records.
This allows you to store in different variables the content of several records in order to compare them, copy them ... or compare some items.
Combinations and enumerations
The Enumeration variables are available for Android.
An enumeration is used to easily handle a list of values.
All you have to do is declare the list of values that can be taken by this type of variable.
The compiler triggers a compilation error if the program tries to assign a value that is not found in the list.
The Combination variables are also available for Android.
This type of variable behaves like the Enumeration type but the combination values can be combined between themselves.
Multiple return values of procedure
A procedure can now return several return values in the Android applications.
The following syntax is used to return several values:
RESULT (Order.TotalBT, Order.TotalIOT, Order.OrderDate)
The return values are retrieved via a multiple assignment.
(PriceBT, PriceIOT, OrderDate) = GetOrderInformation()
The WLanguage CheckUserIdentity
function is available for Android.
If the Android device is equipped with a fingerprint reader, you have the ability to use it from a WINDEV Mobile 23 application.
The application can check the user identity before triggering a sensitive process (access to confidential data, bank operation, etc.).
If the device is not equipped with a fingerprint reader or if the user does not want to use it, it is possible to type a confidential code (that can be specific to the application).
Statistical and financial functions
The statistical and financial functions of WINDEV (StatXXX and FinXXX) are now available for the Android applications.
These functions propose the most common operations: sum, mean, variance, standard deviation.
The encoding functions (Encode
) and the WLanguage decoding functions (Decode
) are available for Android.
These functions are used to easily manage several standard encoding formats: UU-Encodage, Base64, Base85, URL encoding.
Light copy of HFSQL context
When starting a parallel task, the developer must define how the HFSQL context will be processed: full and immediate copy of light and delayed copy.
From version 23, a new option is available for the Android applications: the light and immediate copy.
This option allows you to copy the essential elements of HFSQL context (file directories, connections) as soon as the parallel task is created.
Samsung DeX dock
In version 23, the applications developed with WINDEV Mobile operate on the Samsung DeX dock.
The anchors and the layouts are very useful here.
Triggering a custom exe just before the compilation
WINDEV Mobile already allows you to run custom EXEs before or after the application generation.
In version 23, it becomes possible to run one or more custom EXEs just before the Java compilation.
This allows you for example to run an EXE that modifies the build configuration of Gradle.
In version 23, you have the ability to specify the name of attribute that will be used during the JSON or XML serialization.
Translating system messages in Android (WDInt)
An application can display messages of integrated features (AAF) or error messages.
These messages are displayed in French for the French version and in English for the English version.
The optional WDINT module allows you translate these messages in the language of your choice!
86 new WLanguage constants and 5 new WLanguage types for Android
The version 23 proposes 5 new types for Android and 86 new constants.
86 new WLanguage functions for Android
86 new WLanguage functions are being introduced for Android in version 23:
Common new features
Windows Mobile, Windows CE and Windows Embedded are very popular in industrial settings.
WINDEV Mobile 23 for Windows Mobile and Windows Embedded benefits from the common new features of version 23.
12 new WLanguage functions for Windows Mobile and CE
12 new WLanguage functions are being introduced for Windows Mobile and Windows CE in version 23.
Develop for Windows 10 and Windows 10 Mobile (uwp)
WINDEV Mobile 23 allows you to generate UWP applications that operate on PCs, Smartphones and Tablets running Windows 10 or Windows 10 Mobile or Windows 10 IoT.
Compatibility with Android and iOS (and PC, and Linux, and Web)
An application developed with WINDEV Mobile 23 for Windows 10 Mobile or IoT is compatible with Android and iOS: all you have to do is recompile it to get a native Android application and a native iOS application.
Similarly, this application is compatible with all Windows versions, with Linux and it can even be changed into a Web site! (however, the windows will have to be enlarged).
Windows 10 Mobile & IoT controls (UWP)
A new native control is available for Windows 10 Mobile and IoT: the Rating control.
It is added to the list of supported controls: action bar (with hamburger button & sliding menus), multiline zone, map, popup menu, tab, calendar, static, edit control, button, chart, check box, radio button, list box, combo box, image, looper, progress bar, slider, HTML control, internal window.
The applications developed for Windows 10 Mobile can be deployed via the Microsoft store.
Very useful for the "Windows S" that only accept this setup mode!
WLanguage Socket functions
The WLanguage Socket functions are available for Windows 10 Mobile (UWP).
25 new WLanguage functions supported in uwp
25 new functions for Windows 10 Mobile are available in version 23.
This page is also available for…