DriveWorks 21 introduces a unified web-based Form technology that ensures the behavior and appearance between desktop and web applications is consistent.
This also allows modern web styling to be directly applied to Form Controls using CSS (cascading style sheets).
Previous versions used separate technologies to design on desktop and then emulate for the internet. This led to slight discrepancies between the two formats.
This is completely eliminated with the new Web Form Technology.
Existing Projects, upgraded to DriveWorks 21, may see slight visual and style changes as well as enhancements inherited from adopting this technology.
In the majority of cases there will be little noticeable difference when upgrading your Projects to DriveWorks 21.
Realistically, you may need to do a little tweaking here and there to make things line up perfectly.
There should be no more difference than a pixel or two, so if you designed your forms with some buffer space they should be perfectly fine.
However the Date Picker control has been affected the most by this change. The calendar icon and pop-out are noticeably different. See Date Picker below for more detail.
The section below (Form Control Visual And Style Changes) details exactly what has changed for each control.
We do recommend taking a backup of the DriveWorks data before opening any Group in DriveWorks 21.
With regards to using the Form Design task, nothing has changed.
Moving to this technology has allowed some enhancements to be incorporated into the Form Design task.
If you are satisfied with the look and feel of your Forms, using the default appearance properties, then continue as before.
But if you want to adopt modern browser styling, or match formatting on an existing web site, this can now be done.
Just a few examples of what can be achieved with CSS:
Border Radius | Transforms (e.g. Rotation) | Animation |
---|---|---|
The following lists the changes made to the Form Design task as part of the Web Form Technology implemented in DriveWorks 21.
Change | Reason |
---|---|
Control Grips When multiple overlapping controls are selected, the grips have the same Z order as the selected controls. The resize grips of the top most control will take precedence over any below (which may be inaccessible). | Easier and more logical Control selection. |
Control Boundary The boundary of a control displays an outline on hover when unselected. | Allows instant identification of the control that will be selected before clicking.
Assists with selecting stacked and overlapping controls. |
Right Click (Context) Menu Renaming is disabled when multiple controls are selected. | Only one control can be renamed at a time.
The previous behavior did not respect which control was selected first/last to rename, and renamed the first selected item in the control tree. |
The following are visual and style changes to controls as part of the Web Form Technology implemented in DriveWorks 21.
Colors selected from the System tab (see image below), of the color chooser, may not display exactly as shown in the Form Designer when a form is viewed in a browser.
This applies to any color property, on any control, that displays the color chooser when selected (see Color for a full list of all color properties).
System color mapping occurs server side which means if these colors are used, the server theme colors will be sent down to the client.
System colors defined in CSS2 are very unreliable, and indeed, deprecated in CSS 2.1.
We strongly recommend using hexadecimal values or colors selected from the Web tab of the color chooser for the Web.
To force a web system color on the browser, please see Web Browsers and System Colors.
Property or Element | Change |
---|---|
Enable Animations | Animation Menu displays at all sizes, no longer limited to Height values of 270px+ (see Enable Animations for more information).
Up and down arrows now work within the menu. Note: This might mean that the menu may appear in cases where the menu was not previously visible. |
Property or Element | Change |
---|---|
Check Cell | Size of check cell reduced from 16px x 14px to 14px x 14px by default. This adopts a standard with the input cells of other controls (for example the Option Button) and gives visual consistency. The cell is a true square for easier alignment. |
Property or Element | Change |
---|---|
Outer Padding | Removed outer padding on control (was 3px). Inner elements of the control are now aligned to the bounds of the control. Allows easier alignment with other controls. |
Action buttons |
|
Caption | 2px gap between the Caption and List added. Improved visual layout, less cramped elements. Consistent with gap between other elements inside control (for example the List and Action buttons). |
Property or Element | Change |
---|---|
Caption | Left padding (3px) removed. Aligns to the left edge of the control bounds. Consistent with other controls. |
Input Height
Input Value |
|
Property or Element | Change |
---|---|
Outer Padding | Removed outer padding (3px). Inner elements of the control are now aligned to the bounds of the control. Allows easier alignment with other controls. |
Property or Element | Change |
---|---|
Input Height | Decreased to 16px (from 30px). Visual consistency with other controls. Better alignment vertically and horizontally. |
Caption | Removed left padding (3px). Inner elements of the control are now aligned to the bounds of the control. Easier alignment with other controls. |
Calendar Icon | Switched to monotone SVG rather than a fixed size image. Scales with font-size. The previous icon could not be consistently styled |
Enabled Property | The control now appears faded when set to FALSE (disabled).
Visually consistent with other disabled input type controls. |
Calendar Pop-out | The control now use's the browser’s native UI.
This gives a better user experience across all devices (desktop, tablet and mobile). Creates a familiar experience for every browser and device. |
Hide on Date Selection Property | Deprecated This property is no longer reliable to implement using the native popout, due to lack of developer control. Causes issues on certain browsers. |
Property or Element | Change |
---|---|
No intentional changes have been implemented for this control. |
Property or Element | Change |
---|---|
No intentional changes have been implemented for this control. |
Property or Element | Change |
---|---|
Text | Removed left padding (3px). Aligned to control bounds. Easier alignment with other controls. |
Property or Element | Change |
---|---|
Outer Padding | Removed outer padding on control (was 3px). Inner elements of the control are now aligned to the bounds of the control. Allows easier alignment with other controls. |
Action buttons |
|
Caption | 2px gap between the Caption and List added. Improved visual layout, less cramped elements. Consistent with gap between other elements inside control (for example the List and Action buttons). |
Property or Element | Change |
---|---|
Text | Removed left padding (3px). Aligned to control bounds. Easier alignment with other controls. |
Property or Element | Change |
---|---|
Caption | Removed left padding (3px). Aligned to control bounds. Easier alignment with other controls. |
Property or Element | Change |
---|---|
No intentional changes have been implemented for this control. |
Property or Element | Change |
---|---|
Caption | Removed left padding (3px). Aligned to control bounds. Easier alignment with other controls. |
Input Height | Decreased to 16px (from 21px). Visual consistency with other controls. Better alignment vertically and horizontally. |
Unit Font | Now supports text decoration (underline, strikethrough). |
Property or Element | Change |
---|---|
Caption | Removed left padding (3px). Aligned to control bounds. Easier alignment with other controls. |
Input Height | Increased to 16px (from 15px). Visual consistency with other controls. Better alignment vertically and horizontally. |
Property or Element | Change |
---|---|
Option Cell |
|
Property or Element | Change |
---|---|
Fieldset Border | Now uses a simpler 1px grey border around the fieldset, previously 3px (white|grey|white). Positions border at control bounds. Easier alignment with other controls. |
Show Border Property | When false, all inner padding is removed from the Caption (legend) and fieldset. Aligns Options to edge of control. Easier alignment with other controls. |
Hover/Selected Pictures | Now shows selected state immediately when selected without moving the mouse. |
Caption | When long Captions are used, the overflowed text is aligned to the top, always showing the start of the Caption.
Consistent with the Option Button. |
Override Rule | If there is a Override Rule applied, when another Option is clicked, there will be a visual flicker as the server corrects the visual state of the Options.
The Option Group’s UI is not blocked for responsiveness. The change is made client-side immediately, and then corrected by the server if necessary. |
Property or Element | Change |
---|---|
File Name
Picture (Hover) |
|
Property or Element | Change |
---|---|
Caption |
|
Track | Outer padding calculated to half Thumb width/height, depending on orientation. No longer fixed 5px from control bounds. Logically sized to the draggable area, aligned over center point of the Thumb. |
Thumb | Now shows drag and dragging cursors on interaction.
The previous pointer cursor implied incorrect interaction. |
Property or Element | Change |
---|---|
No intentional changes have been implemented for this control. |
Property or Element | Change |
---|---|
Caption | Removed left padding (3px). Aligned to control bounds. Easier alignment with other controls. |
Input Height | Reduced to 16px (from 20px). Visual consistency with other controls. Better alignment vertically and horizontally. |
Property or Element | Change |
---|---|
Caption | Removed left padding (3px). Aligned to control bounds. Easier alignment with other controls. |
Input Height | Increased to 16px (from 15px). Visual consistency with other controls. Better alignment vertically and horizontally. |
Property or Element | Change |
---|---|
Hover State | Now shows hover state on button (border and background color) in all instances (previously blocked in DriveWorks Live). Consistent with other button type controls. |
Property or Element | Change |
---|---|
General Behavior | No longer loads sites with X-Frame-Options set to SAMEORIGIN. This provides the correct browser security behavior. |
Background Color | Content now supports transparent background colors. To re-implement the old behavior, either:
|
URL | Linking to a .csv file type will load correctly. |
Each Project requires a file named ProjectStyles.css located in the same folder as each Project.
DriveWorks provides an example CSS file that can be modified to suit your requirements.
The ProjectStyles.css file is obtained by:
We recommend creating a New Individual Group to store this Project, away from any Production or Development environment.
Click Next.
Click Next.
Click Finish.
We recommend experimenting on a single Project and then copying the ProjectStyles.css to all other required Projects when satisfied with the results.
The ProjectStyles.css file can be modified 'live', using any text editor (Visual Studio Code, Notepad++, etc.), while in the Form Design task.
Saving the modifications in the text editor will instantly update the Form Designer with the changes.
GroupStyles.css
DriveWorks 22 introduced the ability to style the Forms of all Projects within a Group with a single GroupStyles.css file.
This file is exactly the same as the ProjectStyles.css, but named GroupStyles and located in the Group Content Folder.
Please see Group Level Styling for more information.
An individual control can be targeted to specific code in the CSS file by applying a value to the data-metadata tag (in the CSS) and using that value in the (Metadata) property of the control.
For example the CSS file contains the following:
[data-metadata*="animate"] { transition: all var(--animation-speed) var(--animation-curve); }
Where the Control's (Metadata) property contains the value animate - by partial matching.
For more information on CSS selectors, see: Mozilla - Attribute selectors.
Useful CSS Tutorials
Helpful References