The venerable Popup function has undergone something of a total rewrite for version 10, mainly in order for it to deal with High DPI displays and the new EditTable interface, but we’ve also added a few things along the way. Here’s a list of what’s new so far:
- The Popup window is now multi-instance
- The Popup window can be resized
- The Popup window is now handled correctly on multi-monitor displays
- Added support for a “custom” button
- Added support for an initialization callback procedure
- Standard keyboard support
Custom button support
it is now possible to specify both the text to appear on a custom button, and the name of a stored procedure to execute when it is clicked.
The stored procedure is expected to be a subroutine and accept a single parameter, which is the fully-qualified name of the Popup EditTable containing the data.
Initialization callback procedure
It is now possible to specify a stored procedure that will be called during the popup loading process at the following points:
- After each page of data is inserted into the popup
- Before the popup is made visible
- After the popup is made visible
The stored procedure is expected to be a subroutine and accept two parameters:
- The fully-qualified name of the Popup EditTable containing the data
- A value indicating the loading stage:
* // Initialization proc constants equ PINITPROC_INSERTROWS$ to 1 ; * // Rows have just been inserted equ PINITPROC_BEFORESHOW$ to 2 ; * // Popup is about to be shown equ PINITPROC_AFTERSHOW$ to 3 ; * // Popup has just become visible
Standard keyboard support
Depending on the options enabled for the popup the following standard keyboard shortcuts will be enabled:
- F9 – Save (for you Arev aficionados)
- Ctrl-P – Print
- Ctrl-A – Select All for multi-select popups
- Ctrl-F – Show the Search dialog
- F3 – Find Next
- Shift-F3 – Find Previous
Improved ‘Empty’ Appearance
The EditTable control within the popup now uses it’s new EMPTYTEXT property to display a “No results” message (This message can also be customized if you wish).
(EDIT: 28 Mar 16 – Added Empty Popup Screenshot)
(Disclaimer: This article is based on preliminary information and may be subject to change in the final release version of OpenInsight 10).
Sweet, custom [Export] button option … 🙂
Have you improved the display of an empty popup?
Could the event “After each page of data is inserted into the popup” be made so that it can provide the next page of data to fill the popup and allow progressive loading??
I don’t believe so at this time. Maybe in a future version…
Multiple instances are a great addition. Combined with the custom button, it makes it possible to make some UIs almost completely programatically!
And the custom button makes the popup similar to MSG, which has long supported customized buttons.
One question – is the purpose of this button to carry out an action on the entire data set in the popup? If so, I have a great use for it already.
Hi there – the custom button is for you to do with as you wish – there are no restrictions as such so if you wish to process the data in the edit table you may do so.